Class XARecoveryModule
java.lang.Object
com.arjuna.ats.internal.jta.recovery.arjunacore.XARecoveryModule
- All Implemented Interfaces:
ExtendedRecoveryModule
,RecoveryModule
- Direct Known Subclasses:
XARecoveryModule
Designed to be able to recover any XAResource.
-
Constructor Summary
ConstructorsModifierConstructorDescriptionprotected
XARecoveryModule
(XARecoveryResourceManager recoveryClass, String logName) -
Method Summary
Modifier and TypeMethodDescriptionvoid
addSerializableXAResourceDeserializer
(SerializableXAResourceDeserializer serializableXAResourceDeserializer) void
addXAResourceOrphanFilter
(XAResourceOrphanFilter xaResourceOrphanFilter) void
addXAResourceRecoveryHelper
(XAResourceRecoveryHelper xaResourceRecoveryHelper) getNewXAResource
(XAResourceRecord xaResourceRecord) static XARecoveryModule
boolean
Called by the RecoveryManager after the completion of the second pass.id()
boolean
Report whether or not the last recovery pass was successful.void
Called by the RecoveryManager at start up, and then PERIODIC_RECOVERY_PERIOD seconds after the completion, for all RecoveryModules, of the second passvoid
Called by the RecoveryManager RECOVERY_BACKOFF_PERIOD seconds after the completion of the first passvoid
removeXAResourceOrphanFilter
(XAResourceOrphanFilter xaResourceOrphanFilter) void
removeXAResourceRecoveryHelper
(XAResourceRecoveryHelper xaResourceRecoveryHelper)
-
Constructor Details
-
XARecoveryModule
public XARecoveryModule() -
XARecoveryModule
-
-
Method Details
-
getContactedJndiNames
-
isPeriodicWorkSuccessful
public boolean isPeriodicWorkSuccessful()Description copied from interface:ExtendedRecoveryModule
Report whether or not the last recovery pass was successful. A successful recovery pass means that no warnings or errors were logged. This means that any failure conditions are guaranteed to be obtainable by inspecting the logs.- Specified by:
isPeriodicWorkSuccessful
in interfaceExtendedRecoveryModule
- Returns:
- false if any RecoveryModule logged a warning or error on the previous recovery pass.
-
addXAResourceRecoveryHelper
-
removeXAResourceRecoveryHelper
-
addXAResourceOrphanFilter
-
removeXAResourceOrphanFilter
-
addSerializableXAResourceDeserializer
public void addSerializableXAResourceDeserializer(SerializableXAResourceDeserializer serializableXAResourceDeserializer) -
getSeriablizableXAResourceDeserializers
-
periodicWorkFirstPass
public void periodicWorkFirstPass()Description copied from interface:RecoveryModule
Called by the RecoveryManager at start up, and then PERIODIC_RECOVERY_PERIOD seconds after the completion, for all RecoveryModules, of the second pass- Specified by:
periodicWorkFirstPass
in interfaceRecoveryModule
-
periodicWorkSecondPass
public void periodicWorkSecondPass()Description copied from interface:RecoveryModule
Called by the RecoveryManager RECOVERY_BACKOFF_PERIOD seconds after the completion of the first pass- Specified by:
periodicWorkSecondPass
in interfaceRecoveryModule
-
getRegisteredXARecoveryModule
-
getNewXAResource
- Parameters:
xaResourceRecord
- The record to reassociate.- Returns:
- the XAResource than can be used to commit/rollback the specified record.
-
id
-
hasWorkLeftToDo
public boolean hasWorkLeftToDo()Description copied from interface:RecoveryModule
Called by the RecoveryManager after the completion of the second pass.- Specified by:
hasWorkLeftToDo
in interfaceRecoveryModule
- Returns:
- true if there is work left to do, false otherwise
-