org.mule.providers
Class TransactedPollingMessageReceiver

java.lang.Object
  extended byorg.mule.providers.AbstractMessageReceiver
      extended byorg.mule.providers.PollingMessageReceiver
          extended byorg.mule.providers.TransactedPollingMessageReceiver
All Implemented Interfaces:
Disposable, Lifecycle, Startable, Stoppable, UMOConnectable, UMOMessageReceiver
Direct Known Subclasses:
JdbcMessageReceiver, TransactedJmsMessageReceiver, TransactedSpaceMessageReceiver, VMMessageReceiver

public abstract class TransactedPollingMessageReceiver
extends PollingMessageReceiver

The TransactedPollingMessageReceiver is an abstract receiver that handles polling and transaction management. Derived implementations of these class must be thread safe as several threads can be started at once for an improveded throuput.

Version:
$Revision: 3798 $
Author:
Guillaume Nodet, Ross Mason

Nested Class Summary
protected  class TransactedPollingMessageReceiver.MessageProcessorWorker
           
 
Field Summary
protected  boolean receiveMessagesInTransaction
          determines whether messages will be received in a transaction template
protected  boolean useMultipleReceivers
          determines whether Multiple receivers are created to improve throughput
 
Fields inherited from class org.mule.providers.PollingMessageReceiver
DEFAULT_POLL_FREQUENCY, frequency, STARTUP_DELAY
 
Fields inherited from class org.mule.providers.AbstractMessageReceiver
component, connected, connectionStrategy, connector, disposing, endpoint, logger, stopped
 
Constructor Summary
TransactedPollingMessageReceiver(UMOConnector connector, UMOComponent component, UMOEndpoint endpoint, Long frequency)
           
 
Method Summary
 void doStart()
           
protected abstract  List getMessages()
           
 void poll()
           
protected abstract  void processMessage(Object message)
           
 
Methods inherited from class org.mule.providers.PollingMessageReceiver
getFrequency, release, run, setFrequency
 
Methods inherited from class org.mule.providers.AbstractMessageReceiver
applyResponseTransformer, connect, disconnect, dispose, doConnect, doDisconnect, doDispose, doStop, getComponent, getConnectEventId, getConnectionDescription, getConnector, getEndpoint, getEndpointURI, getListener, getWorkManager, handleException, handleUnacceptedFilter, isConnected, routeMessage, routeMessage, routeMessage, routeMessage, routeMessage, routeMessage, setComponent, setConnector, setEndpoint, setExceptionDetails, setListener, setWorkManager, start, stop
 
Methods inherited from class java.lang.Object
clone, equals, finalize, getClass, hashCode, notify, notifyAll, toString, wait, wait, wait
 

Field Detail

receiveMessagesInTransaction

protected boolean receiveMessagesInTransaction
determines whether messages will be received in a transaction template


useMultipleReceivers

protected boolean useMultipleReceivers
determines whether Multiple receivers are created to improve throughput

Constructor Detail

TransactedPollingMessageReceiver

public TransactedPollingMessageReceiver(UMOConnector connector,
                                        UMOComponent component,
                                        UMOEndpoint endpoint,
                                        Long frequency)
                                 throws InitialisationException
Method Detail

doStart

public void doStart()
             throws UMOException
Overrides:
doStart in class PollingMessageReceiver
Throws:
UMOException

poll

public void poll()
          throws Exception
Specified by:
poll in class PollingMessageReceiver
Throws:
Exception

getMessages

protected abstract List getMessages()
                             throws Exception
Throws:
Exception

processMessage

protected abstract void processMessage(Object message)
                                throws Exception
Throws:
Exception


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