|
ePOST API | |||||||||
PREV CLASS NEXT CLASS | FRAMES NO FRAMES | |||||||||
SUMMARY: NESTED | FIELD | CONSTR | METHOD | DETAIL: FIELD | CONSTR | METHOD |
java.lang.Object rice.pastry.messaging.MessageDispatch
public class MessageDispatch
An object which remembers the mapping from names to MessageReceivers and dispatches messages by request. For consistent routing, modified to only deliver messages to applications if the PastryNode.isReady(). It will still deliver messages to any non-PastryAppl because these "services" may be needed to boot the node into the ring. Any messages to a PastryAppl will be buffered until the node goes ready. TODO: We need to make it explicit which apps can receive messages before PastryNode.isReady().
Field Summary | |
---|---|
static java.lang.String |
BUFFER_IF_NOT_READY_PARAM
|
static java.lang.String |
BUFFER_SIZE_PARAM
|
protected PastryNode |
localNode
|
protected Logger |
logger
|
Constructor Summary | |
---|---|
MessageDispatch(PastryNode pn)
Constructor. |
Method Summary | |
---|---|
void |
deliverAllBufferedMessages()
Called when PastryNode.isReady() becomes true. |
protected void |
deliverBuffered(Address address)
Deliveres all buffered messages for the address. |
void |
destroy()
|
boolean |
dispatchMessage(Message msg)
Dispatches a message to the appropriate receiver. |
MessageReceiver |
getDestination(Message msg)
|
MessageReceiver |
getDestinationByAddress(Address addr)
|
void |
registerReceiver(Address address,
MessageReceiver receiver)
Registers a receiver with the mail service. |
Methods inherited from class java.lang.Object |
---|
clone, equals, finalize, getClass, hashCode, notify, notifyAll, toString, wait, wait, wait |
Field Detail |
---|
protected PastryNode localNode
public static final java.lang.String BUFFER_IF_NOT_READY_PARAM
public static final java.lang.String BUFFER_SIZE_PARAM
protected Logger logger
Constructor Detail |
---|
public MessageDispatch(PastryNode pn)
Method Detail |
---|
public void registerReceiver(Address address, MessageReceiver receiver)
name
- a name for a receiver.receiver
- the receiver.public MessageReceiver getDestination(Message msg)
public MessageReceiver getDestinationByAddress(Address addr)
public boolean dispatchMessage(Message msg)
msg
- the message.
protected void deliverBuffered(Address address)
address
- public void deliverAllBufferedMessages()
public void destroy()
|
ePOST API | |||||||||
PREV CLASS NEXT CLASS | FRAMES NO FRAMES | |||||||||
SUMMARY: NESTED | FIELD | CONSTR | METHOD | DETAIL: FIELD | CONSTR | METHOD |