A library for creating arbitrary Messaging Systems using Java
Switch branches/tags
Nothing to show
Clone or download
Fetching latest commit…
Cannot retrieve the latest commit at this time.
Failed to load latest commit information.


CIT Messaging (v. 0.0.1)

CIT Messaging is a library for creating arbitrary Messaging Systems using Java.

This library mainly provides the abstractions upon which you build your Messaging System. This means that you will either have to use an existing extension of it, or build your own, in order to use it. Only a few concrete classes are available for use. But a few extensions already exist, such as CIT Crypto, CIT Logger, CIT Network, CIT Server and CIT Server MINA.

It's part of the Common Infrastructure Tools (CIT) project hosted by Macroing.org.

Supported Features

  • Message - An abstraction for arbitrary messages that can be sent and received.
  • MessageChannel - The API you use for sending and receiving Messages.
  • MessageChannelObserver - An observer of MessageChannels.
  • MessageFilter - A mechanism for filtering the sent and received Messages.
  • MessageHandler - A mechanism for handling the sent and received Messages.
  • MessageTranslator - A mechanism for translating Messages.
  • Messaging - The core of this library.
  • MessagingObserver - An observer of Messagings.


public class MyMessaging {
    public static void main(String[] args) {
        MyMessaging myMessaging = new MyMessaging();
        myMessaging.addMessagingObserver(new MyMessagingObserver());
        myMessaging.getMessageChannel().addMessageChannelObserver(new MyMessageChannelObserver());
        myMessaging.getMessageChannel().addMessageFilter(new MyMessageFilter());
        myMessaging.getMessageChannel().addMessageHandler(new MyMessageHandler());
        myMessaging.getMessageChannel().addMessageTranslator(new MyMessageTranslator());
        myMessaging.getMessageChannel().sendMessage(new MyMessage("Hello, World!"));



This library has not been properly released yet. This means, even though it says it's version 1.0.0 in the build.xml file and all Java source code files, it should not be treated as such. When this library gets released, it will be tagged and available on the "releases" page.