org.mule.module.client.remoting
Class RemoteDispatcherComponent

java.lang.Object
  extended by org.mule.module.client.remoting.RemoteDispatcherComponent
All Implemented Interfaces:
Callable, EventListener, Initialisable

public class RemoteDispatcherComponent
extends Object
implements Callable, Initialisable

RemoteDispatcherComponent is a MuleManager interal server component responsible for receiving remote requests and dispatching them locally. This allows developer to tunnel requests through http ssl to a Mule instance behind a firewall


Field Summary
protected  String encoding
           
protected  InboundEndpoint inboundEndpoint
           
protected static Log logger
          logger used by this class
static String MANAGER_COMPONENT_NAME
           
protected  MuleContext muleContext
           
protected  int synchronousEventTimeout
           
protected  WireFormat wireFormat
          Use Serialization by default
 
Fields inherited from interface org.mule.api.lifecycle.Initialisable
PHASE_NAME
 
Constructor Summary
RemoteDispatcherComponent(InboundEndpoint inboundEndpoint, WireFormat wireFormat, String encoding, int synchronousEventTimeout)
           
 
Method Summary
protected  ServerHandshake doHandshake(MuleEventContext context)
           
 String getEncoding()
           
static Service getSerivce(InboundEndpoint endpoint, WireFormat wireFormat, String encoding, int eventTimeout, MuleContext muleContext)
           
 int getSynchronousEventTimeout()
           
 WireFormat getWireFormat()
           
protected  Object handleException(MuleMessage result, Throwable e)
          Wraps an exception into a MuleMessage with an Exception payload and returns the Xml representation of it
 void initialise()
          Method used to perform any initialisation work.
protected  Object invokeAction(RemoteDispatcherNotification action, MuleEventContext context)
           
 Object onCall(MuleEventContext context)
          Passes the event to the listener
protected  Object receiveAction(RemoteDispatcherNotification action, MuleEventContext context)
           
protected  Object sendAction(RemoteDispatcherNotification action, MuleEventContext context)
           
 void setEncoding(String encoding)
           
 void setSynchronousEventTimeout(int synchronousEventTimeout)
           
 void setWireFormat(WireFormat wireFormat)
           
 
Methods inherited from class java.lang.Object
clone, equals, finalize, getClass, hashCode, notify, notifyAll, toString, wait, wait, wait
 

Field Detail

logger

protected static final Log logger
logger used by this class


MANAGER_COMPONENT_NAME

public static final String MANAGER_COMPONENT_NAME
See Also:
Constant Field Values

wireFormat

protected WireFormat wireFormat
Use Serialization by default


encoding

protected String encoding

synchronousEventTimeout

protected int synchronousEventTimeout

inboundEndpoint

protected InboundEndpoint inboundEndpoint

muleContext

protected MuleContext muleContext
Constructor Detail

RemoteDispatcherComponent

public RemoteDispatcherComponent(InboundEndpoint inboundEndpoint,
                                 WireFormat wireFormat,
                                 String encoding,
                                 int synchronousEventTimeout)
Method Detail

initialise

public void initialise()
                throws InitialisationException
Description copied from interface: Initialisable
Method used to perform any initialisation work. If a fatal error occurs during initialisation an InitialisationException should be thrown, causing the Mule instance to shutdown. If the error is recoverable, say by retrying to connect, a RecoverableException should be thrown. There is no guarantee that by throwing a Recoverable exception that the Mule instance will not shut down.

Specified by:
initialise in interface Initialisable
Throws:
InitialisationException - if a fatal error occurs causing the Mule instance to shutdown
RecoverableException - if an error occurs that can be recovered from

onCall

public Object onCall(MuleEventContext context)
              throws Exception
Description copied from interface: Callable
Passes the event to the listener

Specified by:
onCall in interface Callable
Parameters:
context - the context of the current event being process
Returns:
Object this object can be anything. When the LifecycleAdapter for the service receives this object it will first see if the Object is an MuleMessage if not and the Object is not null a new message will be created using the returned object as the payload. This new event will then get published via the configured outbound router if-
  1. One has been configured for the component.
  2. the setStopFurtherProcessing(true) wasn't called on the event context event.
Throws:
Exception - if the event fails to process properly. If exceptions aren't handled by the implementation they will be handled by the exceptionListener associated with the service

doHandshake

protected ServerHandshake doHandshake(MuleEventContext context)
                               throws TransformerException
Throws:
TransformerException

invokeAction

protected Object invokeAction(RemoteDispatcherNotification action,
                              MuleEventContext context)
                       throws MuleException
Throws:
MuleException

sendAction

protected Object sendAction(RemoteDispatcherNotification action,
                            MuleEventContext context)
                     throws MuleException
Throws:
MuleException

receiveAction

protected Object receiveAction(RemoteDispatcherNotification action,
                               MuleEventContext context)
                        throws MuleException
Throws:
MuleException

getSerivce

public static Service getSerivce(InboundEndpoint endpoint,
                                 WireFormat wireFormat,
                                 String encoding,
                                 int eventTimeout,
                                 MuleContext muleContext)
                          throws MuleException
Throws:
MuleException

handleException

protected Object handleException(MuleMessage result,
                                 Throwable e)
Wraps an exception into a MuleMessage with an Exception payload and returns the Xml representation of it

Parameters:
result - the result of the invocation or null if the exception occurred before or during the invocation
e - the Exception thrown
Returns:
an Xml String message result

getWireFormat

public WireFormat getWireFormat()

setWireFormat

public void setWireFormat(WireFormat wireFormat)

getEncoding

public String getEncoding()

setEncoding

public void setEncoding(String encoding)

getSynchronousEventTimeout

public int getSynchronousEventTimeout()

setSynchronousEventTimeout

public void setSynchronousEventTimeout(int synchronousEventTimeout)


Copyright © 2003-2012 MuleSoft, Inc.. All Rights Reserved.