Package org.apache.activemq.broker
Class TransactionBroker
- java.lang.Object
-
- org.apache.activemq.broker.BrokerFilter
-
- org.apache.activemq.broker.TransactionBroker
-
public class TransactionBroker extends BrokerFilter
This broker filter handles the transaction related operations in the Broker interface.
-
-
Field Summary
-
Fields inherited from class org.apache.activemq.broker.BrokerFilter
next
-
-
Constructor Summary
Constructors Constructor Description TransactionBroker(Broker next, TransactionStore transactionStore)
-
Method Summary
All Methods Instance Methods Concrete Methods Modifier and Type Method Description voidacknowledge(ConsumerBrokerExchange consumerExchange, MessageAck ack)Used to acknowledge the receipt of a message by a client.voidbeginTransaction(ConnectionContext context, TransactionId xid)Starts a transaction.voidcommitTransaction(ConnectionContext context, TransactionId xid, boolean onePhase)Commits a transaction.voidforgetTransaction(ConnectionContext context, TransactionId xid)Forgets a transaction.TransactionId[]getPreparedTransactions(ConnectionContext context)Gets a list of all the prepared xa transactions.TransactiongetTransaction(ConnectionContext context, TransactionId xid, boolean mightBePrepared)intprepareTransaction(ConnectionContext context, TransactionId xid)Prepares a transaction.voidremoveConnection(ConnectionContext context, ConnectionInfo info, Throwable error)A client is disconnecting from the broker.voidremoveTransaction(XATransactionId xid)voidrollbackTransaction(ConnectionContext context, TransactionId xid)Rollsback a transaction.voidsend(ProducerBrokerExchange producerExchange, Message message)Send a message to the broker to using the specified destination.voidstart()Recovers any prepared transactions.voidstop()-
Methods inherited from class org.apache.activemq.broker.BrokerFilter
addBroker, addConnection, addConsumer, addDestination, addDestinationInfo, addProducer, addSession, brokerServiceStarted, fastProducer, gc, getAdaptor, getAdminConnectionContext, getBrokerId, getBrokerName, getBrokerSequenceId, getBrokerService, getClients, getDestinationMap, getDestinationMap, getDestinations, getDestinations, getDurableDestinations, getExecutor, getNext, getPeerBrokerInfos, getRoot, getScheduler, getTempDataStore, getVmConnectorURI, isExpired, isFaultTolerantConfiguration, isFull, isStopped, messageConsumed, messageDelivered, messageDiscarded, messageExpired, messagePull, networkBridgeStarted, networkBridgeStopped, nowMasterBroker, postProcessDispatch, preProcessDispatch, processConsumerControl, processDispatchNotification, reapplyInterceptor, removeBroker, removeConsumer, removeDestination, removeDestinationInfo, removeProducer, removeSession, removeSubscription, sendToDeadLetterQueue, setAdminConnectionContext, slowConsumer, virtualDestinationAdded, virtualDestinationRemoved
-
-
-
-
Constructor Detail
-
TransactionBroker
public TransactionBroker(Broker next, TransactionStore transactionStore)
-
-
Method Detail
-
start
public void start() throws ExceptionRecovers any prepared transactions.- Specified by:
startin interfaceService- Overrides:
startin classBrokerFilter- Throws:
Exception
-
stop
public void stop() throws Exception- Specified by:
stopin interfaceService- Overrides:
stopin classBrokerFilter- Throws:
Exception
-
getPreparedTransactions
public TransactionId[] getPreparedTransactions(ConnectionContext context) throws Exception
Description copied from interface:BrokerGets a list of all the prepared xa transactions.- Specified by:
getPreparedTransactionsin interfaceBroker- Overrides:
getPreparedTransactionsin classBrokerFilter- Parameters:
context- transaction ids- Returns:
- array of TransactionId values
- Throws:
Exception- TODO
-
beginTransaction
public void beginTransaction(ConnectionContext context, TransactionId xid) throws Exception
Description copied from interface:BrokerStarts a transaction.- Specified by:
beginTransactionin interfaceBroker- Overrides:
beginTransactionin classBrokerFilter- Throws:
Exception- TODO
-
prepareTransaction
public int prepareTransaction(ConnectionContext context, TransactionId xid) throws Exception
Description copied from interface:BrokerPrepares a transaction. Only valid for xa transactions.- Specified by:
prepareTransactionin interfaceBroker- Overrides:
prepareTransactionin classBrokerFilter- Returns:
- id
- Throws:
Exception- TODO
-
commitTransaction
public void commitTransaction(ConnectionContext context, TransactionId xid, boolean onePhase) throws Exception
Description copied from interface:BrokerCommits a transaction.- Specified by:
commitTransactionin interfaceBroker- Overrides:
commitTransactionin classBrokerFilter- Throws:
Exception- TODO
-
rollbackTransaction
public void rollbackTransaction(ConnectionContext context, TransactionId xid) throws Exception
Description copied from interface:BrokerRollsback a transaction.- Specified by:
rollbackTransactionin interfaceBroker- Overrides:
rollbackTransactionin classBrokerFilter- Throws:
Exception- TODO
-
forgetTransaction
public void forgetTransaction(ConnectionContext context, TransactionId xid) throws Exception
Description copied from interface:BrokerForgets a transaction.- Specified by:
forgetTransactionin interfaceBroker- Overrides:
forgetTransactionin classBrokerFilter- Throws:
Exception
-
acknowledge
public void acknowledge(ConsumerBrokerExchange consumerExchange, MessageAck ack) throws Exception
Description copied from interface:RegionUsed to acknowledge the receipt of a message by a client.- Specified by:
acknowledgein interfaceRegion- Overrides:
acknowledgein classBrokerFilter- Parameters:
consumerExchange- the environment the operation is being executed under.- Throws:
Exception- TODO
-
send
public void send(ProducerBrokerExchange producerExchange, Message message) throws Exception
Description copied from interface:RegionSend a message to the broker to using the specified destination. The destination specified in the message does not need to match the destination the message is sent to. This is handy in case the message is being sent to a dead letter destination.- Specified by:
sendin interfaceRegion- Overrides:
sendin classBrokerFilter- Parameters:
producerExchange- the environment the operation is being executed under.- Throws:
Exception- TODO
-
removeConnection
public void removeConnection(ConnectionContext context, ConnectionInfo info, Throwable error) throws Exception
Description copied from interface:BrokerA client is disconnecting from the broker.- Specified by:
removeConnectionin interfaceBroker- Overrides:
removeConnectionin classBrokerFilter- Parameters:
context- the environment the operation is being executed under.error- null if the client requested the disconnect or the error that caused the client to disconnect.- Throws:
Exception- TODO
-
getTransaction
public Transaction getTransaction(ConnectionContext context, TransactionId xid, boolean mightBePrepared) throws JMSException, XAException
- Throws:
JMSExceptionXAException
-
removeTransaction
public void removeTransaction(XATransactionId xid)
-
-