|
IBM WebSphere Application ServerTM Release 7 |
|||||||||
PREV CLASS NEXT CLASS | FRAMES NO FRAMES | |||||||||
SUMMARY: NESTED | FIELD | CONSTR | METHOD | DETAIL: FIELD | CONSTR | METHOD |
public interface Reassociateable
Enables a Connection handle to support handle reassociation.
The process of reassociation involves the following: A handle is be dissociated with its underlying database connection and placed in an inactive state. It may later be reassociated, which returns the handle to an active state. If implicit reactivation is enabled, any operation on an inactive handle will trigger a dynamic request for reassociation with the underlying connection. Otherwise, any operations to the database on an inactive handle are considered an error. Operations that do not involve the database are sometimes allowed on inactive handles even if they do not support implicit reactivation.
Inactive handles can be closed, as usual, after which they are no longer useable.
An isClosed
request on an inactive handle should return false, as the
handle might still be used when it is reassociated.
Because this interface is meant to be implemented by the handle, which is directly
accessible by the application. It might be dangerous to all the application to invoke
certain methods directly (for example, reassociate
). A special key
parameter is added to these methods to keep the application from accessing them.
The handle implementation can choose to restrict access to these
methods using the key
since the key is not available to application code. The
handle implementation is not required to restrict access in this manner, in which case
the key parameter can be ignored.
Field Summary |
---|
Fields inherited from interface com.ibm.websphere.rsadapter.HandleStates |
---|
ACTIVE, CLOSED, INACTIVE, STATE_STRINGS |
Method Summary | |
---|---|
void |
dissociate()
Transitions the Connection handle to the INACTIVE state. |
javax.resource.spi.ConnectionRequestInfo |
getCRI()
Get the ConnectionRequestInfo object associated with this connection. |
javax.resource.spi.ManagedConnection |
getManagedConnection(java.lang.Object key)
Retrieve the ManagedConnection this Connection handle is currently associated with. |
int |
getState()
|
boolean |
isReserved()
|
void |
reassociate(javax.resource.spi.ManagedConnection mc,
java.sql.Connection connImplObject,
java.lang.Object key)
Reassociates this Connection handle with a new ManagedConnection and underlying connection and reestablishes all saved states. |
void |
reserve(java.lang.Object key)
Reserve this Connection handle for reassociation only with its current ManagedConnection. |
boolean |
supportsImplicitReactivation()
Deprecated. this method is no longer used and will be removed in a future release. |
Method Detail |
---|
void dissociate() throws javax.resource.ResourceException
Transitions the Connection handle to the INACTIVE state. Retrieves and stores all information needed for reassociation. This method can close all child objects of the connection instead of saving their states. A reserved handle might be dissociated, in which case the handle must lose its reserved status.
javax.resource.ResourceException
- if the Connection handle is closed or a fatal error occurs on
dissociation.javax.resource.spi.ManagedConnection getManagedConnection(java.lang.Object key) throws javax.resource.ResourceException
key
- a special key that must be provided to invoke this method.
javax.resource.ResourceException
- if an incorrect key is supplied.int getState()
boolean isReserved()
void reassociate(javax.resource.spi.ManagedConnection mc, java.sql.Connection connImplObject, java.lang.Object key) throws javax.resource.ResourceException
Reassociates this Connection handle with a new ManagedConnection and underlying connection and reestablishes all saved states. It is an error to reassociate a handle which is not in the inactive state.
mc
- the new ManagedConnection to associate this handle with.connImplObject
- the new underlying JDBC Connection object to associate this handle
with.key
- a special key that must be provided to invoke this method.
javax.resource.ResourceException
- if an incorrect key is supplied, if the handle is not ready
for reassociation, or if an error occurs during the reassociation.void reserve(java.lang.Object key) throws javax.resource.ResourceException
Reserve this Connection handle for reassociation only with its current ManagedConnection. This optimization allows child objects of the handle that are also associated with the ManagedConnection, or associated with underlying objects of the ManagedConnection, to be left open across reassociations. Use this method only when you are assured that the handle will always be reassociated back to its original ManagedConnection.
Reserved handles must always be placed in the INACTIVE state. The handle loses its reserved status when either of the following occur:
key
- a special key that must be provided to invoke this method.
javax.resource.ResourceException
- if an incorrect key is supplied or if the handle may not be
reserved from its current state.javax.resource.spi.ConnectionRequestInfo getCRI()
Get the ConnectionRequestInfo object associated with this connection. When a managed connection is associated with a Reassociatable, their ConnectionRequestInfo might be different. Therefore, managed connection's ConnectionRequestInfo must be updated with the ConnectionRequestInfo from the Reassociatable. This method is used for managed connection to get the ConnectionRequestInfo from the Reassociatable.
boolean supportsImplicitReactivation()
Indicates whether the handle supports implicit reactivation. Implicit reactivation
means that an inactive connection handle will implicitly request reassociation when
used. For example, if the handle state is inactive and a createStatement
operation is requested, the handle will implicitly reassociate with a new underlying
connection and continue the operation.
|
IBM WebSphere Application ServerTM Release 7 |
|||||||||
PREV CLASS NEXT CLASS | FRAMES NO FRAMES | |||||||||
SUMMARY: NESTED | FIELD | CONSTR | METHOD | DETAIL: FIELD | CONSTR | METHOD |