Class ProtonTransactionRefsOperation
- java.lang.Object
-
- org.apache.activemq.artemis.core.transaction.TransactionOperationAbstract
-
- org.apache.activemq.artemis.core.server.impl.RefsOperation
-
- org.apache.activemq.artemis.protocol.amqp.proton.transaction.ProtonTransactionRefsOperation
-
- All Implemented Interfaces:
org.apache.activemq.artemis.core.transaction.TransactionOperation
public class ProtonTransactionRefsOperation extends org.apache.activemq.artemis.core.server.impl.RefsOperationAMQP Protocol has different TX Rollback behaviour for Acks depending on whether an AMQP delivery has been settled or not. This class extends the Core RefsOperation used for normal acks. In the case where deliveries have been settled, normal Ack rollback is applied. For cases where deliveries are unsettled and rolled back, we increment the delivery count and return to the consumer.
-
-
Constructor Summary
Constructors Constructor Description ProtonTransactionRefsOperation(org.apache.activemq.artemis.core.server.Queue queue, org.apache.activemq.artemis.core.server.impl.AckReason reason, org.apache.activemq.artemis.core.persistence.StorageManager storageManager)
-
Method Summary
All Methods Instance Methods Concrete Methods Modifier and Type Method Description voidrollbackRedelivery(org.apache.activemq.artemis.core.transaction.Transaction txn, org.apache.activemq.artemis.core.server.MessageReference ref, long timeBase, java.util.Map<org.apache.activemq.artemis.core.server.impl.QueueImpl,java.util.LinkedList<org.apache.activemq.artemis.core.server.MessageReference>> queueMap)-
Methods inherited from class org.apache.activemq.artemis.core.server.impl.RefsOperation
afterCommit, afterRollback, getLingerMessages, getListOnConsumer, getReferencesToAcknowledge, getRelatedMessageReferences, isDelivering, setDelivering, setIgnoreRedeliveryCheck, setLingerSession
-
-
-
-
Method Detail
-
rollbackRedelivery
public void rollbackRedelivery(org.apache.activemq.artemis.core.transaction.Transaction txn, org.apache.activemq.artemis.core.server.MessageReference ref, long timeBase, java.util.Map<org.apache.activemq.artemis.core.server.impl.QueueImpl,java.util.LinkedList<org.apache.activemq.artemis.core.server.MessageReference>> queueMap) throws java.lang.Exception- Overrides:
rollbackRedeliveryin classorg.apache.activemq.artemis.core.server.impl.RefsOperation- Throws:
java.lang.Exception
-
-