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:
- org.mule.api.lifecycle.Disposable, org.mule.api.lifecycle.Initialisable, org.mule.api.lifecycle.Lifecycle, org.mule.api.lifecycle.LifecycleStateEnabled, org.mule.api.lifecycle.Startable, org.mule.api.lifecycle.Stoppable, org.mule.api.source.MessageSource, org.mule.api.transport.Connectable, org.mule.api.transport.MessageReceiver
public class JdbcMessageReceiver
- extends org.mule.transport.TransactedPollingMessageReceiver
Implements TransactedPollingMessageReceiver reading data from a database.
Provides a way to acknowledge each read data using a SQL statement.
| Nested classes/interfaces inherited from class org.mule.transport.TransactedPollingMessageReceiver |
org.mule.transport.TransactedPollingMessageReceiver.MessageProcessorWorker |
| 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, 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 |
JdbcMessageReceiver(org.mule.api.transport.Connector connector,
org.mule.api.construct.FlowConstruct flowConstruct,
org.mule.api.endpoint.InboundEndpoint endpoint,
String readStmt,
String ackStmt)
|
| Methods inherited from class org.mule.transport.TransactedPollingMessageReceiver |
doStart, hasNoMessages, isReceiveMessagesInTransaction, isUseMultipleTransactedReceivers, poll, setReceiveMessagesInTransaction, setUseMultipleTransactedReceivers |
| 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, connectHandler, createExecutionTemplate, createLifecycleManager, createMuleEvent, doStartHandler, getConnectEventId, getConnectionDescription, getEndpoint, getEndpointURI, getFlowConstruct, getReceiverKey, getReplyToHandler, getWorkManager, handleUnacceptedFilter, initialise, processMessage, propagateRootMessageIdProperty, routeEvent, routeMessage, routeMessage, routeMessage, routeMessage, routeMessage, setEndpoint, setListener, setReceiverKey, shouldConsumeInEveryNode, 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, isStopped, isStopping, passivate, setEndpoint, start, stop, validate, validateConnection |
| 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 |
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<String> readParams
ackParams
protected List<String> ackParams
receiveMessagesInXaTransaction
public boolean receiveMessagesInXaTransaction
JdbcMessageReceiver
public JdbcMessageReceiver(org.mule.api.transport.Connector connector,
org.mule.api.construct.FlowConstruct flowConstruct,
org.mule.api.endpoint.InboundEndpoint endpoint,
String readStmt,
String ackStmt)
throws org.mule.api.lifecycle.CreateException
- Throws:
org.mule.api.lifecycle.CreateException
parseStatements
protected void parseStatements(String readStmt,
String ackStmt)
- Parses the read and acknowledge SQL statements
doDispose
protected void doDispose()
- Overrides:
doDispose in class org.mule.transport.AbstractMessageReceiver
doConnect
protected void doConnect()
throws Exception
- Overrides:
doConnect in class org.mule.transport.AbstractTransportMessageHandler
- Throws:
Exception
doDisconnect
protected void doDisconnect()
throws Exception
- Overrides:
doDisconnect in class org.mule.transport.AbstractTransportMessageHandler
- Throws:
Exception
processMessage
public void processMessage(Object message)
throws Exception
- Specified by:
processMessage in class org.mule.transport.TransactedPollingMessageReceiver
- Throws:
Exception
hasAckStatement
protected boolean hasAckStatement()
createMuleMessages
protected List<org.mule.api.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,
org.mule.api.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<org.mule.api.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 org.mule.transport.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–2014 MuleSoft, Inc.. All rights reserved.