public class DistributedTransaction extends Object implements ServerTransaction
ServerTransaction.Action, ServerTransaction.EnqueueAction
Constructor and Description |
---|
DistributedTransaction(AMQSessionModel session,
MessageStore store,
VirtualHostImpl vhost) |
Modifier and Type | Method and Description |
---|---|
void |
addPostTransactionAction(ServerTransaction.Action postTransactionAction)
Register an Action for execution after transaction commit or rollback.
|
void |
commit()
Commit the transaction represented by this object.
|
void |
commit(Runnable immediatePostTransactionAction) |
void |
dequeue(Collection<MessageInstance> messages,
ServerTransaction.Action postTransactionAction)
Dequeue a message(s) from queue(s) registering a post transaction action.
|
void |
dequeue(MessageEnqueueRecord record,
ServerTransaction.Action postTransactionAction)
Dequeue a message from a queue registering a post transaction action.
|
void |
end(Xid id,
boolean fail,
boolean suspend) |
void |
enqueue(List<? extends BaseQueue> queues,
EnqueueableMessage message,
ServerTransaction.EnqueueAction postTransactionAction)
Enqueue a message(s) to queue(s) registering a post transaction action.
|
void |
enqueue(TransactionLogResource queue,
EnqueueableMessage message,
ServerTransaction.EnqueueAction postTransactionAction)
Enqueue a message to a queue registering a post transaction action.
|
long |
getTransactionStartTime()
Return the time the current transaction started.
|
long |
getTransactionUpdateTime()
Return the time of the last activity on the current transaction.
|
boolean |
isTransactional() |
void |
rollback()
Rollback the transaction represented by this object.
|
void |
start(Xid id,
boolean join,
boolean resume) |
public DistributedTransaction(AMQSessionModel session, MessageStore store, VirtualHostImpl vhost)
public long getTransactionStartTime()
ServerTransaction
getTransactionStartTime
in interface ServerTransaction
public long getTransactionUpdateTime()
ServerTransaction
getTransactionUpdateTime
in interface ServerTransaction
public void addPostTransactionAction(ServerTransaction.Action postTransactionAction)
ServerTransaction
addPostTransactionAction
in interface ServerTransaction
public void dequeue(MessageEnqueueRecord record, ServerTransaction.Action postTransactionAction)
ServerTransaction
dequeue
in interface ServerTransaction
public void dequeue(Collection<MessageInstance> messages, ServerTransaction.Action postTransactionAction)
ServerTransaction
dequeue
in interface ServerTransaction
public void enqueue(TransactionLogResource queue, EnqueueableMessage message, ServerTransaction.EnqueueAction postTransactionAction)
ServerTransaction
enqueue
in interface ServerTransaction
public void enqueue(List<? extends BaseQueue> queues, EnqueueableMessage message, ServerTransaction.EnqueueAction postTransactionAction)
ServerTransaction
enqueue
in interface ServerTransaction
public void commit()
ServerTransaction
commit
in interface ServerTransaction
public void commit(Runnable immediatePostTransactionAction)
commit
in interface ServerTransaction
public void rollback()
ServerTransaction
rollback
in interface ServerTransaction
public boolean isTransactional()
isTransactional
in interface ServerTransaction
public void start(Xid id, boolean join, boolean resume) throws UnknownDtxBranchException, AlreadyKnownDtxException, JoinAndResumeDtxException
public void end(Xid id, boolean fail, boolean suspend) throws UnknownDtxBranchException, NotAssociatedDtxException, SuspendAndFailDtxException, TimeoutDtxException
Copyright © 2006–2016 The Apache Software Foundation. All rights reserved.