Class MessageDispatcher

java.lang.Object
org.jgroups.blocks.MessageDispatcher
All Implemented Interfaces:
RequestHandler
Direct Known Subclasses:
MuxMessageDispatcher, RpcDispatcher

public class MessageDispatcher extends Object implements RequestHandler
Provides synchronous and asynchronous message sending with request-response correlation; i.e., matching responses with the original request. It also offers push-style message reception (by internally using the PullPushAdapter).

Channels are simple patterns to asynchronously send a receive messages. However, a significant number of communication patterns in group communication require synchronous communication. For example, a sender would like to send a message to the group and wait for all responses. Or another application would like to send a message to the group and wait only until the majority of the receivers have sent a response, or until a timeout occurred. MessageDispatcher offers a combination of the above pattern with other patterns.

Used on top of channel to implement group requests. Client's handle() method is called when request is received. Is the equivalent of RpcProtocol on the application instead of protocol level.

Author:
Bela Ban