Package org.infinispan.context.impl
Interface TxInvocationContext<T extends AbstractCacheTransaction>
-
- All Superinterfaces:
Cloneable,EntryLookup,InvocationContext
- All Known Implementing Classes:
AbstractTxInvocationContext,LocalTxInvocationContext,RemoteTxInvocationContext
public interface TxInvocationContext<T extends AbstractCacheTransaction> extends InvocationContext
Interface defining additional functionality for invocation contexts that propagate within a transaction's scope.- Since:
- 4.0
- Author:
- Mircea.Markus@jboss.com
-
-
Method Summary
All Methods Instance Methods Abstract Methods Modifier and Type Method Description voidaddAffectedKey(Object key)voidaddAllAffectedKeys(Collection<?> keys)Registers a new participant with the transaction.Set<Object>getAffectedKeys()Returns the set of keys that are affected by this transaction.TgetCacheTransaction()GlobalTransactiongetGlobalTransaction()Returns the id of the transaction associated with the current call.List<WriteCommand>getModifications()Returns the modifications performed in the scope of the current transaction.TransactiongetTransaction()Returns the tx associated with the current thread.booleanhasModifications()Checks if there are modifications performed within the tx's scope.booleanisImplicitTransaction()booleanisTransactionValid()-
Methods inherited from interface org.infinispan.context.EntryLookup
forEachEntry, forEachValue, getLookedUpEntries, lookedUpEntriesCount, lookupEntry, putLookedUpEntry, removeLookedUpEntries, removeLookedUpEntry
-
Methods inherited from interface org.infinispan.context.InvocationContext
addLockedKey, addLockedKeys, clearLockedKeys, clone, getLockedKeys, getLockOwner, getOrigin, hasLockedKey, isEntryRemovedInContext, isInTxScope, isOriginLocal, setLockOwner
-
-
-
-
Method Detail
-
hasModifications
boolean hasModifications()
Checks if there are modifications performed within the tx's scope. Any modifications having Flag.CACHE_MODE_LOCAL are ignored.
-
getAffectedKeys
Set<Object> getAffectedKeys()
Returns the set of keys that are affected by this transaction. Used to generate appropriate recipient groups for cluster-wide prepare and commit calls.
-
getGlobalTransaction
GlobalTransaction getGlobalTransaction()
Returns the id of the transaction associated with the current call.
-
getModifications
List<WriteCommand> getModifications()
Returns the modifications performed in the scope of the current transaction. Any modifications having Flag.CACHE_MODE_LOCAL are ignored. The returned list can be null.
-
getTransaction
Transaction getTransaction()
Returns the tx associated with the current thread. This method MUST be guarded with a call toInvocationContext.isOriginLocal(), asTransactionare not propagated from the node where tx was started.- Throws:
IllegalStateException- if the call is performed from aInvocationContext.isOriginLocal()==false context.
-
addAllAffectedKeys
void addAllAffectedKeys(Collection<?> keys)
Registers a new participant with the transaction.
-
addAffectedKey
void addAffectedKey(Object key)
-
isTransactionValid
boolean isTransactionValid()
- Returns:
- true if the current transaction is in a valid state to perform operations on (i.e.,RUNNING or PREPARING) or false otherwise.
-
isImplicitTransaction
boolean isImplicitTransaction()
-
getCacheTransaction
T getCacheTransaction()
-
-