org.mule.transport.vm
Class VMMessageReceiver

java.lang.Object
  extended by org.mule.transport.AbstractMessageReceiver
      extended by org.mule.transport.AbstractPollingMessageReceiver
          extended by org.mule.transport.TransactedPollingMessageReceiver
              extended by org.mule.transport.vm.VMMessageReceiver
All Implemented Interfaces:
Disposable, Initialisable, Lifecycle, Startable, Stoppable, Connectable, MessageReceiver

public class VMMessageReceiver
extends TransactedPollingMessageReceiver

VMMessageReceiver is a listener for events from a Mule service which then simply passes the events on to the target service.


Nested Class Summary
protected static class VMMessageReceiver.VMReceiverWorker
           
 
Nested classes/interfaces inherited from class org.mule.transport.TransactedPollingMessageReceiver
TransactedPollingMessageReceiver.MessageProcessorWorker
 
Field Summary
 
Fields inherited from class org.mule.transport.AbstractPollingMessageReceiver
DEFAULT_POLL_FREQUENCY, DEFAULT_POLL_TIMEUNIT, DEFAULT_STARTUP_DELAY, schedules
 
Fields inherited from class org.mule.transport.AbstractMessageReceiver
connected, connecting, connectionStrategy, disposing, endpoint, logger, receiverKey, responseEndpoint, service, stopped
 
Fields inherited from interface org.mule.api.lifecycle.Initialisable
PHASE_NAME
 
Fields inherited from interface org.mule.api.lifecycle.Startable
PHASE_NAME
 
Fields inherited from interface org.mule.api.lifecycle.Stoppable
PHASE_NAME
 
Fields inherited from interface org.mule.api.lifecycle.Disposable
PHASE_NAME
 
Constructor Summary
VMMessageReceiver(Connector connector, Service service, InboundEndpoint endpoint)
           
 
Method Summary
protected  PollingReceiverWorker createWork()
           
protected  void doConnect()
           
protected  void doDisconnect()
           
protected  void doDispose()
           
protected  MuleMessage getFirstMessage()
           
protected  List getFirstMessages()
           
protected  List getMessages()
          It's impossible to process all messages in the receive transaction
 Object onCall(MuleMessage message, boolean synchronous)
           
 void onMessage(MuleMessage message)
           
protected  void processMessage(Object msg)
           
protected  void schedule()
          This method registers this receiver for periodic polling ticks with the connectors scheduler.
 
Methods inherited from class org.mule.transport.TransactedPollingMessageReceiver
doStart, isReceiveMessagesInTransaction, isUseMultipleTransactedReceivers, poll, setReceiveMessagesInTransaction, setUseMultipleTransactedReceivers
 
Methods inherited from class org.mule.transport.AbstractPollingMessageReceiver
doStop, getFrequency, getTimeUnit, setFrequency, setTimeUnit, unschedule
 
Methods inherited from class org.mule.transport.AbstractMessageReceiver
connect, disconnect, dispose, doInitialise, getConnectEventId, getConnectionDescription, getConnector, getEndpoint, getEndpointURI, getListener, getReceiverKey, getService, getWorkManager, handleException, handleUnacceptedFilter, initialise, isConnected, routeMessage, routeMessage, routeMessage, routeMessage, routeMessage, routeMessage, setConnector, setEndpoint, setExceptionDetails, setListener, setReceiverKey, setService, setWorkManager, start, stop, toString
 
Methods inherited from class java.lang.Object
clone, equals, finalize, getClass, hashCode, notify, notifyAll, wait, wait, wait
 

Constructor Detail

VMMessageReceiver

public VMMessageReceiver(Connector connector,
                         Service service,
                         InboundEndpoint endpoint)
                  throws CreateException
Throws:
CreateException
Method Detail

schedule

protected void schedule()
                 throws edu.emory.mathcs.backport.java.util.concurrent.RejectedExecutionException,
                        NullPointerException,
                        IllegalArgumentException
Description copied from class: AbstractPollingMessageReceiver
This method registers this receiver for periodic polling ticks with the connectors scheduler. Subclasses can override this in case they want to handle their polling differently.

Overrides:
schedule in class AbstractPollingMessageReceiver
Throws:
edu.emory.mathcs.backport.java.util.concurrent.RejectedExecutionException
NullPointerException
IllegalArgumentException
See Also:
ScheduledExecutorService#scheduleWithFixedDelay(Runnable, long, long, TimeUnit)}

doDispose

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

doConnect

protected void doConnect()
                  throws Exception
Specified by:
doConnect in class AbstractMessageReceiver
Throws:
Exception

doDisconnect

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

onMessage

public void onMessage(MuleMessage message)
               throws MuleException
Throws:
MuleException

onCall

public Object onCall(MuleMessage message,
                     boolean synchronous)
              throws MuleException
Throws:
MuleException

getMessages

protected List getMessages()
                    throws Exception
It's impossible to process all messages in the receive transaction

Specified by:
getMessages in class TransactedPollingMessageReceiver
Throws:
Exception

getFirstMessages

protected List getFirstMessages()
                         throws Exception
Throws:
Exception

getFirstMessage

protected MuleMessage getFirstMessage()
                               throws Exception
Throws:
Exception

processMessage

protected void processMessage(Object msg)
                       throws Exception
Specified by:
processMessage in class TransactedPollingMessageReceiver
Throws:
Exception

createWork

protected PollingReceiverWorker createWork()
Overrides:
createWork in class AbstractPollingMessageReceiver


Copyright © 2003-2008 MuleSource, Inc.. All Rights Reserved.