Class GenericRecoveryCreator
java.lang.Object
com.arjuna.ats.internal.jts.recovery.RecoveryCreator
com.arjuna.ats.internal.jts.recovery.recoverycoordinators.GenericRecoveryCreator
Implementation of
RecoveryCreator
.
Orb-specific aspects, especially the specific construction of the
RecoveryCoordinator IOR are delegated to an implementation of RcvCoManager
.
The RCs may be created locally (depends on the orb-specific mechanisms) but
will be recreated in the RecoveryManager if called there (possibly following
a crash of this process).-
Method Summary
Modifier and TypeMethodDescriptionCreate a new RecoveryCoordinator for Resource res.void
The RC instance is not longer needed by the application.void
destroyAll
(Object[] params) Destroy all RC instances for the transactions identified in params.static String
Get the service name.static void
register
(RcvCoManager theManager) Create an instance of this class, which will delegate the orb-specific aspects to the supplied RcvCoManager instance and register it with the transaction service.Methods inherited from class com.arjuna.ats.internal.jts.recovery.RecoveryCreator
createRecoveryCoordinator, destroyAllRecoveryCoordinators, destroyRecoveryCoordinator, getCreator, setCreator
-
Method Details
-
register
Create an instance of this class, which will delegate the orb-specific aspects to the supplied RcvCoManager instance and register it with the transaction service. -
create
public RecoveryCoordinator create(Resource res, Object[] params) throws org.omg.CORBA.SystemException Create a new RecoveryCoordinator for Resource res. The params array is used to pass additional data. Currently params[0] is the ArjunaTransactionImple ref. When create returns additional data is passed back using params. Currently returned params[0] is the RecoveryCoordinator Uid.- Specified by:
create
in classRecoveryCreator
- Throws:
org.omg.CORBA.SystemException
-
destroy
The RC instance is not longer needed by the application. This is a null-op for orb environments that do not actually create RC objects in the original process.- Specified by:
destroy
in classRecoveryCreator
- Throws:
org.omg.CORBA.SystemException
-
destroyAll
Destroy all RC instances for the transactions identified in params. This is a null-op for orb environments that do not actually create RC objects in the original process.- Specified by:
destroyAll
in classRecoveryCreator
- Throws:
org.omg.CORBA.SystemException
-
getRecCoordServiceName
Get the service name. This ties the recoverycoordinators whose IOR's are created here with the RecoveryManager that will recreate them in recovery.
-