Package org.infinispan.commons.tx
Class TransactionImpl
- java.lang.Object
-
- org.infinispan.commons.tx.TransactionImpl
-
- All Implemented Interfaces:
javax.transaction.Transaction
- Direct Known Subclasses:
EmbeddedTransaction
public class TransactionImpl extends java.lang.Object implements javax.transaction.TransactionA basicTransactionimplementation.- Since:
- 9.1
- Author:
- Bela Ban, Pedro Ruivo
-
-
Constructor Summary
Constructors Modifier Constructor Description protectedTransactionImpl()
-
Method Summary
All Methods Instance Methods Concrete Methods Modifier and Type Method Description voidcommit()Attempt to commit this transaction.booleandelistResource(javax.transaction.xa.XAResource xaRes, int flag)De-list an XA resource from this transaction.booleanenlistResource(javax.transaction.xa.XAResource resource)Enlist an XA resource with this transaction.booleanequals(java.lang.Object obj)java.util.Collection<javax.transaction.xa.XAResource>getEnlistedResources()java.util.Collection<javax.transaction.Synchronization>getEnlistedSynchronization()intgetStatus()Get the status of the transaction.javax.transaction.xa.XidgetXid()inthashCode()Must be defined for increased performancevoidregisterSynchronization(javax.transaction.Synchronization sync)Register aSynchronizationcallback with this transaction.voidrollback()Rolls back this transaction.voidrunCommit(boolean forceRollback)Runs the second phase of two-phase-commit protocol.booleanrunPrepare()voidsetRollbackOnly()Mark the transaction so that the only possible outcome is a rollback.voidsetXid(javax.transaction.xa.Xid xid)java.lang.StringtoString()
-
-
-
Method Detail
-
commit
public void commit() throws javax.transaction.RollbackException, javax.transaction.HeuristicMixedException, javax.transaction.HeuristicRollbackException, java.lang.SecurityException, javax.transaction.SystemExceptionAttempt to commit this transaction.- Specified by:
commitin interfacejavax.transaction.Transaction- Throws:
javax.transaction.RollbackException- If the transaction was marked for rollback only, the transaction is rolled back and this exception is thrown.javax.transaction.SystemException- If the transaction service fails in an unexpected way.javax.transaction.HeuristicMixedException- If a heuristic decision was made and some some parts of the transaction have been committed while other parts have been rolled back.javax.transaction.HeuristicRollbackException- If a heuristic decision to roll back the transaction was made.java.lang.SecurityException- If the caller is not allowed to commit this transaction.
-
rollback
public void rollback() throws java.lang.IllegalStateException, javax.transaction.SystemExceptionRolls back this transaction.- Specified by:
rollbackin interfacejavax.transaction.Transaction- Throws:
java.lang.IllegalStateException- If the transaction is in a state where it cannot be rolled back. This could be because the transaction is no longer active, or because it is in theprepared state.javax.transaction.SystemException- If the transaction service fails in an unexpected way.
-
setRollbackOnly
public void setRollbackOnly() throws java.lang.IllegalStateException, javax.transaction.SystemExceptionMark the transaction so that the only possible outcome is a rollback.- Specified by:
setRollbackOnlyin interfacejavax.transaction.Transaction- Throws:
java.lang.IllegalStateException- If the transaction is not in an active state.javax.transaction.SystemException- If the transaction service fails in an unexpected way.
-
getStatus
public int getStatus() throws javax.transaction.SystemExceptionGet the status of the transaction.- Specified by:
getStatusin interfacejavax.transaction.Transaction- Returns:
- The status of the transaction. This is one of the
Statusconstants. - Throws:
javax.transaction.SystemException- If the transaction service fails in an unexpected way.
-
enlistResource
public boolean enlistResource(javax.transaction.xa.XAResource resource) throws javax.transaction.RollbackException, java.lang.IllegalStateException, javax.transaction.SystemExceptionEnlist an XA resource with this transaction.- Specified by:
enlistResourcein interfacejavax.transaction.Transaction- Returns:
trueif the resource could be enlisted with this transaction, otherwisefalse.- Throws:
javax.transaction.RollbackException- If the transaction is marked for rollback only.java.lang.IllegalStateException- If the transaction is in a state where resources cannot be enlisted. This could be because the transaction is no longer active, or because it is in theprepared state.javax.transaction.SystemException- If the transaction service fails in an unexpected way.
-
delistResource
public boolean delistResource(javax.transaction.xa.XAResource xaRes, int flag) throws java.lang.IllegalStateException, javax.transaction.SystemExceptionDe-list an XA resource from this transaction.- Specified by:
delistResourcein interfacejavax.transaction.Transaction- Returns:
trueif the resource could be de-listed from this transaction, otherwisefalse.- Throws:
java.lang.IllegalStateException- If the transaction is in a state where resources cannot be de-listed. This could be because the transaction is no longer active.javax.transaction.SystemException- If the transaction service fails in an unexpected way.
-
registerSynchronization
public void registerSynchronization(javax.transaction.Synchronization sync) throws javax.transaction.RollbackException, java.lang.IllegalStateException, javax.transaction.SystemExceptionRegister aSynchronizationcallback with this transaction.- Specified by:
registerSynchronizationin interfacejavax.transaction.Transaction- Throws:
javax.transaction.RollbackException- If the transaction is marked for rollback only.java.lang.IllegalStateException- If the transaction is in a state whereSynchronizationcallbacks cannot be registered. This could be because the transaction is no longer active, or because it is in theprepared state.javax.transaction.SystemException- If the transaction service fails in an unexpected way.
-
getEnlistedResources
public java.util.Collection<javax.transaction.xa.XAResource> getEnlistedResources()
-
runPrepare
public boolean runPrepare()
-
runCommit
public void runCommit(boolean forceRollback) throws javax.transaction.HeuristicMixedException, javax.transaction.HeuristicRollbackException, javax.transaction.RollbackExceptionRuns the second phase of two-phase-commit protocol.If
forceRollbackistrue, then aRollbackExceptionis thrown with the messageFORCE_ROLLBACK_MESSAGE.- Parameters:
forceRollback- force the transaction to rollback.- Throws:
javax.transaction.HeuristicMixedExceptionjavax.transaction.HeuristicRollbackExceptionjavax.transaction.RollbackException
-
toString
public java.lang.String toString()
- Overrides:
toStringin classjava.lang.Object
-
getXid
public javax.transaction.xa.Xid getXid()
-
setXid
public void setXid(javax.transaction.xa.Xid xid)
-
getEnlistedSynchronization
public java.util.Collection<javax.transaction.Synchronization> getEnlistedSynchronization()
-
hashCode
public final int hashCode()
Must be defined for increased performance- Overrides:
hashCodein classjava.lang.Object
-
equals
public final boolean equals(java.lang.Object obj)
- Overrides:
equalsin classjava.lang.Object
-
-