org.mule.transport.jdbc
Class JdbcMessageReceiver
java.lang.Object
org.mule.transport.AbstractTransportMessageHandler
org.mule.transport.AbstractMessageReceiver
org.mule.transport.AbstractPollingMessageReceiver
org.mule.transport.TransactedPollingMessageReceiver
org.mule.transport.jdbc.JdbcMessageReceiver
- All Implemented Interfaces:
- Disposable, Initialisable, Lifecycle, LifecycleStateEnabled, Startable, Stoppable, MessageSource, Connectable, MessageReceiver
public class JdbcMessageReceiver
- extends TransactedPollingMessageReceiver
Implements TransactedPollingMessageReceiver
reading data from a database.
Provides a way to acknowledge each read data using a SQL statement.
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, 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, doInitialise, getConnectEventId, getConnector, getLifecycleState, initializeMessageFactory, initializeRetryPolicy, isConnected, isDoThreading, isStarted, isStarting, isStopping, passivate, setEndpoint, start, stop, validate, validateConnection |
Methods inherited from interface org.mule.api.lifecycle.Startable |
start |
Methods inherited from interface org.mule.api.lifecycle.Stoppable |
stop |
RECEIVE_MESSAGE_IN_TRANSCTION
public static final String RECEIVE_MESSAGE_IN_TRANSCTION
- See Also:
- Constant Field Values
RECEIVE_MESSAGES_IN_XA_TRANSCTION
public static final String RECEIVE_MESSAGES_IN_XA_TRANSCTION
- See Also:
- Constant Field Values
connector
protected JdbcConnector connector
readStmt
protected String readStmt
ackStmt
protected String ackStmt
readParams
protected List<?> readParams
ackParams
protected List<?> ackParams
receiveMessagesInXaTransaction
public boolean receiveMessagesInXaTransaction
JdbcMessageReceiver
public JdbcMessageReceiver(Connector connector,
FlowConstruct flowConstruct,
InboundEndpoint endpoint,
String readStmt,
String ackStmt)
throws CreateException
- Throws:
CreateException
parseStatements
protected void parseStatements(String readStmt,
String ackStmt)
- Parses the read and acknowledge SQL statements
doDispose
protected void doDispose()
- Overrides:
doDispose
in class AbstractMessageReceiver
doConnect
protected void doConnect()
throws Exception
- Overrides:
doConnect
in class AbstractTransportMessageHandler
- Throws:
Exception
doDisconnect
protected void doDisconnect()
throws Exception
- Overrides:
doDisconnect
in class AbstractTransportMessageHandler
- Throws:
Exception
processMessage
public void processMessage(Object message)
throws Exception
- Specified by:
processMessage
in class TransactedPollingMessageReceiver
- Throws:
Exception
hasAckStatement
protected boolean hasAckStatement()
createMuleMessages
protected List<MuleMessage> createMuleMessages(List<Object> records)
- Creates a mule message per each data record.
- Parameters:
records
- data records used to created the payload of the new messages.
- Returns:
- the created messages
executeAckStatement
protected int executeAckStatement(Connection con,
MuleMessage muleMessage)
throws Exception
- Executes the acknowledge SQL statement for a given message.
- Parameters:
con
- database connection to execute the statementmuleMessage
- message to been acknowledge
- Returns:
- the number of updated rows by the SQL statement
- Throws:
Exception
executeBatchAckStatement
protected int[] executeBatchAckStatement(Connection con,
List<MuleMessage> messages)
throws Exception
- Executes the acknowledge SQL statement for a list of messages.
- Parameters:
con
- database connection to execute the statementmessages
- messages to be acknowledge
- Returns:
- the number of updated rows by each batched execution
- Throws:
Exception
getMessages
public List getMessages()
throws Exception
- Specified by:
getMessages
in class TransactedPollingMessageReceiver
- Throws:
Exception
executeReadStatement
protected List executeReadStatement(Connection con)
throws Exception
- Executes the read SQL statement to get data from the database.
- Parameters:
con
- database connection to execute the statement
- Returns:
- the list of read records
- Throws:
Exception
Copyright © 2003-2012 MuleSoft, Inc.. All Rights Reserved.