public interface BootstrapContext
This provides a mechanism to pass a bootstrap context to a resource adapter
instance when it is bootstrapped. That is, when
(
start(BootstrapContext)
) method on the
ResourceAdapter
class is invoked. The bootstrap
context contains references to useful facilities that could be used by the
resource adapter instance.-
Method Summary
Modifier and TypeMethodDescriptionCreates a newjava.util.Timer
instance.Provides a handle to aTransactionSynchronization
instance.Provides a handle to aWorkManager
instance.Provides a handle to aXATerminator
instance.boolean
isContextSupported
(Class<? extends WorkContext> workContextClass) A resource adapter can check an application server's support for a particular WorkContext type through this method.
-
Method Details
-
getWorkManager
WorkManager getWorkManager()Provides a handle to aWorkManager
instance. TheWorkManager
instance could be used by a resource adapter to do its work by submittingWork
instances for execution.- Returns:
- a
WorkManager
instance.
-
getXATerminator
XATerminator getXATerminator()Provides a handle to aXATerminator
instance. TheXATerminator
instance could be used by a resource adapter to flow-in transaction completion and crash recovery calls from an EIS.- Returns:
- a
XATerminator
instance.
-
createTimer
Creates a newjava.util.Timer
instance. TheTimer
instance could be used to perform periodicWork
executions or other tasks.- Returns:
- a new
Timer
instance. - Throws:
UnavailableException
- indicates that aTimer
instance is not available. The request may be retried later.
-
isContextSupported
A resource adapter can check an application server's support for a particular WorkContext type through this method. This mechanism enables a resource adapter developer to dynamically change the WorkContexts submitted with a Work instance based on the support provided by the application server. The application server must employ an exact type equality check (that isjava.lang.Class.equals(java.lang.Class)
check) in this method, to check if it supports the WorkContext type provided by the resource adapter. This method must be idempotent, that is all calls to this method by a resource adapter for a particularWorkContext
type must return the same boolean value throughout the lifecycle of that resource adapter instance.- Parameters:
workContextClass
- The WorkContext type that is tested for support by the application server.- Returns:
- true if the
workContextClass
is supported by the application server. false if theworkContextClass
is unsupported or unknown to the application server. - Since:
- 1.6
-
getTransactionSynchronizationRegistry
TransactionSynchronizationRegistry getTransactionSynchronizationRegistry()Provides a handle to aTransactionSynchronization
instance. TheTransactionSynchronizationRegistry
instance could be used by a resource adapter to register synchronization objects, get transaction state and status etc. This interface is implemented by the application server by a stateless service object. The same object can be used by any number of resource adapter objects with thread safety.- Returns:
- a
TransactionSynchronizationRegistry
instance. - Since:
- 1.6
-