org.mule.providers.rmi
Class RmiMessageDispatcher

java.lang.Object
  extended byorg.mule.providers.AbstractMessageDispatcher
      extended byorg.mule.providers.rmi.RmiMessageDispatcher
All Implemented Interfaces:
Disposable, ExceptionListener, UMOConnectable, UMOMessageDispatcher
Direct Known Subclasses:
EjbMessageDispatcher

public class RmiMessageDispatcher
extends AbstractMessageDispatcher

RmiMessageDispatcher will send transformed mule events over RMI-JRMP.


Field Summary
protected  Method invokedMethod
           
protected static Log logger
           
protected  Remote remoteObject
           
 
Fields inherited from class org.mule.providers.AbstractMessageDispatcher
connected, connectionStrategy, disposed, doThreading, endpoint, workManager
 
Fields inherited from interface org.mule.umo.provider.UMOMessageDispatcher
RECEIVE_NO_WAIT, RECEIVE_WAIT_INDEFINITELY
 
Constructor Summary
RmiMessageDispatcher(UMOImmutableEndpoint endpoint)
           
 
Method Summary
protected  void doConnect(UMOImmutableEndpoint endpoint)
           
protected  void doDisconnect()
           
protected  void doDispatch(UMOEvent event)
           
protected  void doDispose()
           
protected  UMOMessage doReceive(UMOImmutableEndpoint endpoint, long timeout)
          Make a specific request to the underlying transport
 UMOMessage doSend(UMOEvent event)
           
 UMOConnector getConnector()
          Gets the connector for this dispatcher
 Object getDelegateSession()
          There is no associated session for a RMI connector
 
Methods inherited from class org.mule.providers.AbstractMessageDispatcher
connect, disconnect, dispatch, dispose, exceptionThrown, getConnectEventId, getConnectionDescription, getOutputStream, isConnected, isDisposed, isTransactionRollback, receive, receive, reconnect, send, useRemoteSync
 
Methods inherited from class java.lang.Object
clone, equals, finalize, getClass, hashCode, notify, notifyAll, toString, wait, wait, wait
 

Field Detail

logger

protected static Log logger

remoteObject

protected volatile Remote remoteObject

invokedMethod

protected volatile Method invokedMethod
Constructor Detail

RmiMessageDispatcher

public RmiMessageDispatcher(UMOImmutableEndpoint endpoint)
Method Detail

doConnect

protected void doConnect(UMOImmutableEndpoint endpoint)
                  throws Exception
Specified by:
doConnect in class AbstractMessageDispatcher
Throws:
Exception

doDisconnect

protected void doDisconnect()
                     throws Exception
Specified by:
doDisconnect in class AbstractMessageDispatcher
Throws:
Exception

doDispatch

protected void doDispatch(UMOEvent event)
                   throws Exception
Specified by:
doDispatch in class AbstractMessageDispatcher
Throws:
Exception

doSend

public UMOMessage doSend(UMOEvent event)
                  throws Exception
Specified by:
doSend in class AbstractMessageDispatcher
Throws:
Exception

doReceive

protected UMOMessage doReceive(UMOImmutableEndpoint endpoint,
                               long timeout)
                        throws Exception
Make a specific request to the underlying transport

Specified by:
doReceive in class AbstractMessageDispatcher
Parameters:
endpoint - the endpoint to use when connecting to the resource
timeout - the maximum time the operation should block before returning. The call should return immediately if there is data available. If no data becomes available before the timeout elapses, null will be returned
Returns:
the result of the request wrapped in a UMOMessage object. Null will be returned if no data was avaialable
Throws:
Exception - if the call to the underlying protocal cuases an exception

getDelegateSession

public Object getDelegateSession()
                          throws UMOException
There is no associated session for a RMI connector

Returns:
Throws:
UMOException

getConnector

public UMOConnector getConnector()
Description copied from interface: UMOMessageDispatcher
Gets the connector for this dispatcher

Specified by:
getConnector in interface UMOMessageDispatcher
Overrides:
getConnector in class AbstractMessageDispatcher

doDispose

protected void doDispose()
Specified by:
doDispose in class AbstractMessageDispatcher


Copyright © 2003-2006 MuleSource Inc.. All Rights Reserved.