org.jgroups.blocks.mux
Class MuxRpcDispatcher

java.lang.Object
  extended by org.jgroups.blocks.MessageDispatcher
      extended by org.jgroups.blocks.RpcDispatcher
          extended by org.jgroups.blocks.mux.MuxRpcDispatcher
All Implemented Interfaces:
RequestHandler, ChannelListener

public class MuxRpcDispatcher
extends RpcDispatcher

A multiplexed message dispatcher. When used in conjunction with a MuxUpHandler, allows multiple dispatchers to use the same channel.
Usage:
Channel c = new JChannel(...);
c.setUpHandler(new MuxUpHandler());

RpcDispatcher d1 = new MuxRpcDispatcher((short) 1, c, ...);
RpcDispatcher d2 = new MuxRpcDispatcher((short) 2, c, ...);

c.connect(...);

Author:
Bela Ban, Paul Ferraro

Nested Class Summary
 
Nested classes/interfaces inherited from class org.jgroups.blocks.RpcDispatcher
RpcDispatcher.Marshaller, RpcDispatcher.Marshaller2, RpcDispatcher.MarshallerAdapter
 
Field Summary
 
Fields inherited from class org.jgroups.blocks.RpcDispatcher
additionalChannelListeners, method_lookup, req_marshaller, rsp_marshaller, server_obj
 
Fields inherited from class org.jgroups.blocks.MessageDispatcher
adapter, channel, corr, handler, hardware_multicast_supported, id, local_addr, log, members, membership_listener, msg_listener, prot_adapter, req_handler, transport_adapter
 
Constructor Summary
MuxRpcDispatcher(short scopeId)
           
MuxRpcDispatcher(short scopeId, Channel channel, MessageListener messageListener, MembershipListener membershipListener, java.lang.Object serverObject)
           
 
Method Summary
protected  GroupRequest cast(java.util.Collection<Address> dests, Message msg, RequestOptions options, boolean blockForResults)
           
protected  RequestCorrelator createRequestCorrelator(java.lang.Object transport, RequestHandler handler, Address localAddr)
           
 void start()
           
 void stop()
           
 
Methods inherited from class org.jgroups.blocks.RpcDispatcher
addChannelListener, callRemoteMethod, callRemoteMethod, callRemoteMethod, callRemoteMethod, callRemoteMethod, callRemoteMethod, callRemoteMethod, callRemoteMethods, callRemoteMethods, callRemoteMethods, callRemoteMethods, callRemoteMethods, callRemoteMethods, callRemoteMethods, callRemoteMethods, callRemoteMethodsWithFuture, callRemoteMethodsWithFuture, callRemoteMethodsWithFuture, callRemoteMethodWithFuture, callRemoteMethodWithFuture, callRemoteMethodWithFuture, channelClosed, channelConnected, channelDisconnected, channelReconnected, channelShunned, correlatorStarted, getMarshaller, getMethodLookup, getName, getRequestMarshaller, getResponseMarshaller, getServerObject, handle, removeChannelListener, setMarshaller, setMethodLookup, setRequestMarshaller, setResponseMarshaller, setServerObject
 
Methods inherited from class org.jgroups.blocks.MessageDispatcher
castMessage, castMessage, castMessage, castMessage, castMessageWithFuture, castMessageWithFuture, done, getChannel, getConcurrentProcessing, getDeadlockDetection, getMembers, getMessageListener, getProtocolAdapter, installUpHandler, send, sendMessage, sendMessage, sendMessageWithFuture, sendMessageWithFuture, setChannel, setConcurrentProcessing, setDeadlockDetection, setMembershipListener, setMessageListener, setRequestHandler
 
Methods inherited from class java.lang.Object
clone, equals, finalize, getClass, hashCode, notify, notifyAll, toString, wait, wait, wait
 

Constructor Detail

MuxRpcDispatcher

public MuxRpcDispatcher(short scopeId)

MuxRpcDispatcher

public MuxRpcDispatcher(short scopeId,
                        Channel channel,
                        MessageListener messageListener,
                        MembershipListener membershipListener,
                        java.lang.Object serverObject)
Method Detail

createRequestCorrelator

protected RequestCorrelator createRequestCorrelator(java.lang.Object transport,
                                                    RequestHandler handler,
                                                    Address localAddr)
Overrides:
createRequestCorrelator in class MessageDispatcher

start

public void start()
Overrides:
start in class MessageDispatcher

stop

public void stop()
Overrides:
stop in class MessageDispatcher

cast

protected GroupRequest cast(java.util.Collection<Address> dests,
                            Message msg,
                            RequestOptions options,
                            boolean blockForResults)
Overrides:
cast in class MessageDispatcher


Copyright © 1998-2009 Bela Ban / Red Hat. All Rights Reserved.