|
||||||||||||
| PREV CLASS NEXT CLASS | FRAMES NO FRAMES | |||||||||||
| SUMMARY: NESTED | FIELD | CONSTR | METHOD | DETAIL: FIELD | CONSTR | METHOD | |||||||||||
java.lang.Object | +--org.javagroups.blocks.MessageListenerAdapter
This class provides multiplexing possibilities for MessageListener
instances. Usually, we have more than one instance willing to listen to
incoming messages, but only one that can produce state for group.
PullPushAdapter allows only one instance of MessageListener
to be registered for message notification. With help of this class you
can overcome this limitation.
| Field Summary | |
|---|---|
protected java.util.HashSet |
messageListeners
|
protected MessageListener[] |
messageListenersCache
|
protected MessageListener |
stateListener
|
| Constructor Summary | |
|---|---|
MessageListenerAdapter()
Create default instance of this class. |
|
MessageListenerAdapter(MessageListener mainListener)
Create instance of this class. |
|
| Method Summary | |
|---|---|
void |
addMessageListener(MessageListener listener)
Add message listener to this adapter. |
byte[] |
getState()
Get state from state listener if present. |
void |
receive(Message msg)
Receive message from group. |
void |
removeMessageListener(MessageListener listener)
Remove message listener from this adapter. |
void |
setState(byte[] state)
Set state of ths group. |
void |
setStateListener(MessageListener listener)
Register listener for state notification events. |
| Methods inherited from class java.lang.Object |
|---|
clone, equals, finalize, getClass, hashCode, notify, notifyAll, toString, wait, wait, wait |
| Field Detail |
protected MessageListener stateListener
protected java.util.HashSet messageListeners
protected MessageListener[] messageListenersCache
| Constructor Detail |
public MessageListenerAdapter()
addMessageListener(MessageListener) or
removeMessageListener(MessageListener) to add or remove message
listeners, and setStateListener(MessageListener) to set listener
that will participate in state transfer.
public MessageListenerAdapter(MessageListener mainListener)
mainListener is a main
listener instance that received message notifications and can get and
set group state.
mainListener - instance of MessageListener that will
provide state messages.| Method Detail |
public byte[] getState()
getState in interface MessageListenernull if no state
listeners were registered.public void receive(Message msg)
receive in interface MessageListenermsg - message to distribute within message listeners.public void setState(byte[] state)
setState in interface MessageListenerpublic void addMessageListener(MessageListener listener)
listener for message notification.
Note, state notification will not be used.
public void removeMessageListener(MessageListener listener)
listener from message notification.
public void setStateListener(MessageListener listener)
listener for state notification events. There can
be only one state listener per adapter.
|
||||||||||||
| PREV CLASS NEXT CLASS | FRAMES NO FRAMES | |||||||||||
| SUMMARY: NESTED | FIELD | CONSTR | METHOD | DETAIL: FIELD | CONSTR | METHOD | |||||||||||