org.mule.transport
Class TransactedPollingMessageReceiver

java.lang.Object
  extended by org.mule.transport.AbstractTransportMessageHandler
      extended by org.mule.transport.AbstractMessageReceiver
          extended by org.mule.transport.AbstractPollingMessageReceiver
              extended by org.mule.transport.TransactedPollingMessageReceiver
All Implemented Interfaces:
Disposable, Initialisable, Lifecycle, LifecycleStateEnabled, Startable, Stoppable, MessageSource, Connectable, MessageReceiver
Direct Known Subclasses:
JdbcMessageReceiver, VMMessageReceiver, XaTransactedJmsMessageReceiver

public abstract class TransactedPollingMessageReceiver
extends AbstractPollingMessageReceiver

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 improved throughput.


Nested Class Summary
protected  class 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
defaultInboundTransformers, defaultResponseTransformers, flowConstruct, listener, receiverKey, replyToHandler
 
Fields inherited from class org.mule.transport.AbstractTransportMessageHandler
connected, connector, endpoint, lifecycleManager, logger, muleMessageFactory, retryTemplate
 
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
TransactedPollingMessageReceiver(Connector connector, FlowConstruct flowConstruct, InboundEndpoint endpoint)
           
TransactedPollingMessageReceiver(Connector connector, FlowConstruct flowConstruct, InboundEndpoint endpoint, long frequency)
          Deprecated. please use TransactedPollingMessageReceiver(Connector, FlowConstruct, InboundEndpoint) instead
 
Method Summary
 void doStart()
           
protected abstract  List<MuleMessage> getMessages()
           
protected  boolean hasNoMessages()
          Return true if it can be determined that there are currently no messages to process
 boolean isReceiveMessagesInTransaction()
           
 boolean isUseMultipleTransactedReceivers()
           
 void poll()
           
protected abstract  void processMessage(Object message)
           
 void setReceiveMessagesInTransaction(boolean useTx)
           
 void setUseMultipleTransactedReceivers(boolean useMultiple)
           
 
Methods inherited from class org.mule.transport.AbstractPollingMessageReceiver
createWork, disableNativeScheduling, doStop, getBatchSize, getFrequency, getTimeUnit, performPoll, pollOnPrimaryInstanceOnly, schedule, setFrequency, setTimeUnit, unschedule
 
Methods inherited from class org.mule.transport.AbstractMessageReceiver
applyInboundTransformers, applyResponseTransformers, createExecutionTemplate, createLifecycleManager, createMuleEvent, doDispose, getConnectEventId, getConnectionDescription, getEndpoint, getEndpointURI, getFlowConstruct, getReceiverKey, getReplyToHandler, getWorkManager, handleUnacceptedFilter, initialise, propagateRootMessageIdProperty, routeMessage, routeMessage, routeMessage, routeMessage, routeMessage, setEndpoint, setListener, setReceiverKey, toString, warnIfMuleClientSendUsed
 
Methods inherited from class org.mule.transport.AbstractTransportMessageHandler
activate, connect, createMuleMessage, createMuleMessage, createMuleMessage, createMuleMessageFactory, createNullMuleMessage, disconnect, dispose, disposeAndLogException, doConnect, doDisconnect, doInitialise, getConnectEventId, getConnector, getLifecycleState, initializeMessageFactory, initializeRetryPolicy, isConnected, isDoThreading, isStarted, isStarting, isStopping, passivate, setEndpoint, start, stop, validate, validateConnection
 
Methods inherited from class java.lang.Object
clone, equals, finalize, getClass, hashCode, notify, notifyAll, wait, wait, wait
 
Methods inherited from interface org.mule.api.transport.MessageReceiver
createMuleMessage, createMuleMessage
 
Methods inherited from interface org.mule.api.transport.Connectable
connect, disconnect, isConnected, validateConnection
 
Methods inherited from interface org.mule.api.lifecycle.Startable
start
 
Methods inherited from interface org.mule.api.lifecycle.Stoppable
stop
 
Methods inherited from interface org.mule.api.lifecycle.Disposable
dispose
 

Constructor Detail

TransactedPollingMessageReceiver

public TransactedPollingMessageReceiver(Connector connector,
                                        FlowConstruct flowConstruct,
                                        InboundEndpoint endpoint)
                                 throws CreateException
Throws:
CreateException

TransactedPollingMessageReceiver

@Deprecated
public TransactedPollingMessageReceiver(Connector connector,
                                                   FlowConstruct flowConstruct,
                                                   InboundEndpoint endpoint,
                                                   long frequency)
                                 throws CreateException
Deprecated. please use TransactedPollingMessageReceiver(Connector, FlowConstruct, InboundEndpoint) instead

Throws:
CreateException
Method Detail

isReceiveMessagesInTransaction

public boolean isReceiveMessagesInTransaction()

setReceiveMessagesInTransaction

public void setReceiveMessagesInTransaction(boolean useTx)

isUseMultipleTransactedReceivers

public boolean isUseMultipleTransactedReceivers()

setUseMultipleTransactedReceivers

public void setUseMultipleTransactedReceivers(boolean useMultiple)

doStart

public void doStart()
             throws MuleException
Overrides:
doStart in class AbstractPollingMessageReceiver
Throws:
MuleException

poll

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

hasNoMessages

protected boolean hasNoMessages()
Return true if it can be determined that there are currently no messages to process


getMessages

protected abstract List<MuleMessage> getMessages()
                                          throws Exception
Throws:
Exception

processMessage

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


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