|
|||||||||||
PREV CLASS NEXT CLASS | FRAMES NO FRAMES | ||||||||||
SUMMARY: NESTED | FIELD | CONSTR | METHOD | DETAIL: FIELD | CONSTR | METHOD |
java.lang.Object | +--gumbo.net.msg.MessageRouter
DirectRouters messages to message listeners. Message listeners are registered by message type, with only messages of that class or sub-class being received by the listener.
A given listener can register more than once, each time with a different message type. If a given listener registers for a given message type and its super-type, when a message of the given type is received the listener will be notified twice, once for the type and once for the super-type.
MessageRouterThread
Constructor Summary | |
MessageRouter()
|
Method Summary | |
void |
addMessageHandler(MessageHandler handler)
Adds a message handler to this router's list. |
void |
addMessageListener(java.lang.Class type,
MessageListener listener)
Adds a message listener to this router's list. |
void |
clearMessageListeners()
Removes all message listeners of all types. |
void |
removeMessageHandler(MessageHandler handler)
Removes a message handler from this router's list. |
void |
removeMessageListener(java.lang.Class type,
MessageListener listener)
Removes the specified message listener entry (type-listener pair). |
void |
removeMessageListeners(java.lang.Class type)
Removes all message listener entries (type-listener pairs) containing the specified message type or sub-type. |
void |
removeMessageListeners(MessageListener listener)
Removes all message listener entries (type-listener pairs) containing the specified message listener. |
void |
routeMessage(Message msg,
MessageWriter writer)
Routes a message to all listeners interested in messages of its type or super-type. |
Methods inherited from class java.lang.Object |
clone, equals, finalize, getClass, hashCode, notify, notifyAll, toString, wait, wait, wait |
Constructor Detail |
public MessageRouter()
Method Detail |
public void addMessageHandler(MessageHandler handler)
handler
- The message handler. Never null.public void removeMessageHandler(MessageHandler handler)
handler
- The message handler. Never null.public void addMessageListener(java.lang.Class type, MessageListener listener)
type
- Type of message. Never null.listener
- The message listener. Never null.public void removeMessageListener(java.lang.Class type, MessageListener listener)
type
- Type of message. Never null.listener
- The message listener. Never null.public void removeMessageListeners(java.lang.Class type)
type
- Type of message. Never null.public void removeMessageListeners(MessageListener listener)
listener
- The message listener. Never null.public void clearMessageListeners()
public void routeMessage(Message msg, MessageWriter writer)
msg
- Message to be routed to listeners. Never null.writer
- Message writer to be used by listeners for sending a reply
message (on the router thread). Null if none.
|
|||||||||||
PREV CLASS NEXT CLASS | FRAMES NO FRAMES | ||||||||||
SUMMARY: NESTED | FIELD | CONSTR | METHOD | DETAIL: FIELD | CONSTR | METHOD |