Class CadaverLockRecord
java.lang.Object
com.arjuna.ats.arjuna.StateManager
com.arjuna.ats.arjuna.coordinator.AbstractRecord
com.arjuna.ats.internal.txoj.abstractrecords.LockRecord
com.arjuna.ats.internal.txoj.abstractrecords.CadaverLockRecord
-
Field Summary
Fields inherited from class com.arjuna.ats.internal.txoj.abstractrecords.LockRecord
actionHandle
Fields inherited from class com.arjuna.ats.arjuna.StateManager
modifyingActions, objectModel, objectUid, synchronizationLock, usingActions
-
Constructor Summary
ModifierConstructorDescriptionprotected
CadaverLockRecord
(LockStore store, LockManager lm, BasicAction currAct) -
Method Summary
Modifier and TypeMethodDescriptionint
A rollback of a nested transaction has occurred.int
A commit of a nested transaction has occurred.void
print
(PrintWriter strm) Write information about this specific instance to the specified stream.boolean
Determine if records are discarded on action abort or must be propagated to parents.void
The current record is about to replace the one presented.boolean
Should we replace the record presented with the current record?int
A rollback of a top-level transaction has occurred.int
A commit of a top-level transaction has occurred.type()
Re-implementation of abstract methods inherited from base class.Methods inherited from class com.arjuna.ats.internal.txoj.abstractrecords.LockRecord
alter, isReadOnly, lockType, merge, nestedPrepare, restore_state, save_state, setValue, shouldAdd, shouldAlter, shouldMerge, topLevelPrepare, toString, typeIs, value
Methods inherited from class com.arjuna.ats.arjuna.coordinator.AbstractRecord
clearHeuristicDecision, create, doSave, equals, forgetHeuristic, getNext, getPrevious, getTypeOfObject, greaterThan, isPermittedTopLevelOnePhaseCommit, lessThan, nestedCleanup, nestedOnePhaseCommit, order, propagateOnCommit, setNext, setPrevious, topLevelCleanup, topLevelOnePhaseCommit
Methods inherited from class com.arjuna.ats.arjuna.StateManager
activate, activate, cleanup, createLists, deactivate, deactivate, deactivate, destroy, disable, forgetAction, get_uid, getCreationTimeMillis, getMutex, getObjectModel, getStore, getStoreRoot, loadObjectState, lockMutex, modified, objectType, packHeader, persist, rememberAction, setStatus, setupStore, setupStore, setupStore, status, terminate, tryLockMutex, unlockMutex, unpackHeader
-
Constructor Details
-
CadaverLockRecord
-
CadaverLockRecord
protected CadaverLockRecord()
-
-
Method Details
-
propagateOnAbort
public boolean propagateOnAbort()Description copied from class:AbstractRecord
Determine if records are discarded on action abort or must be propagated to parents.- Overrides:
propagateOnAbort
in classAbstractRecord
- Returns:
true
if the record should be propagated to the parent transaction if the current transaction rolls back,false
otherwise. The default isfalse
.
-
nestedAbort
public int nestedAbort()Description copied from class:AbstractRecord
A rollback of a nested transaction has occurred.- Overrides:
nestedAbort
in classLockRecord
- Returns:
TwoPhaseOutcome
to indicate success/failure.- See Also:
-
nestedCommit
public int nestedCommit()Description copied from class:AbstractRecord
A commit of a nested transaction has occurred.- Overrides:
nestedCommit
in classLockRecord
- Returns:
TwoPhaseOutcome
to indicate success/failure.- See Also:
-
topLevelAbort
public int topLevelAbort()Description copied from class:AbstractRecord
A rollback of a top-level transaction has occurred.- Overrides:
topLevelAbort
in classLockRecord
- Returns:
TwoPhaseOutcome
to indicate success/failure.- See Also:
-
topLevelCommit
public int topLevelCommit()Description copied from class:AbstractRecord
A commit of a top-level transaction has occurred.- Overrides:
topLevelCommit
in classLockRecord
- Returns:
TwoPhaseOutcome
to indicate success/failure.- See Also:
-
print
Description copied from class:AbstractRecord
Write information about this specific instance to the specified stream.- Overrides:
print
in classLockRecord
- Parameters:
strm
- the stream on which to output.
-
type
Description copied from class:AbstractRecord
Re-implementation of abstract methods inherited from base class.- Overrides:
type
in classLockRecord
-
shouldReplace
Description copied from class:AbstractRecord
Should we replace the record presented with the current record?- Overrides:
shouldReplace
in classLockRecord
- Parameters:
ar
- The record to try to replace.- Returns:
true
if the record should be replaced,false
otherwise.
-
replace
Description copied from class:AbstractRecord
The current record is about to replace the one presented. This method is invoked to give the current record a chance to copy information, for example, from the record being replaced.- Overrides:
replace
in classAbstractRecord
- Parameters:
ar
- the record that will replace this instance.
-