Package oracle.jdbc.xa.client

## Class OracleXAConnection

- java.lang.Object
- - oracle.jdbc.pool.OraclePooledConnection
  - - oracle.jdbc.xa.OracleXAConnection
    - - oracle.jdbc.xa.client.OracleXAConnection

All Implemented Interfaces:
  `java.beans.PropertyChangeListener`, `java.io.Serializable`, `java.util.EventListener`, `javax.sql.PooledConnection`, `javax.sql.XAConnection`, `OraclePooledConnection`, `OracleXAConnection`, `oracle.jdbc.diagnostics.Diagnosable`, `oracle.jdbc.internal.Monitor`

Direct Known Subclasses:
  `OracleXAHeteroConnection`

    public class OracleXAConnection
    extends OracleXAConnection

An XAConnection object provides support for distributed transactions. An XAConnection may be enlisted in a distributed transaction by means of an XAResource object.

For Optimization purposes, we decided to have 2 versions one for client and one for server when used in Java Stored Procedures and in EJB. This one is the implementation of OracleXADataSource for client side usage.

See Also:
  Serialized Form

### Nested Class Summary

### Nested classes/interfaces inherited from interface oracle.jdbc.internal.Monitor

`oracle.jdbc.internal.Monitor.CloseableLock, oracle.jdbc.internal.Monitor.WaitableMonitor`

### Field Summary

Fields
`protected boolean` `isXAResourceTransLoose`

### Fields inherited from class oracle.jdbc.xa.OracleXAConnection

`xaResource`

### Fields inherited from class oracle.jdbc.pool.OraclePooledConnection

`autoCommit, close_callback_string, closeOption, connect_auto_commit_string, connection_properties_string, event_listener_string, explicit_caching_enabled, ExplicitStatementCachingEnabled, implicit_caching_enabled, ImplicitStatementCachingEnabled, isClearMetaData, logicalHandle, LoginTimeout, NO_IMPLICIT_BEGIN_REQUEST_PROPERTY, object_type_map, oracleDriver, physicalConn, pool_auto_commit_string, private_data, replayConn, sql_exception_string, statement_cache_size, transaction_isolation, url_string`

### Constructor Summary

Constructors
`OracleXAConnection()` Create an OracleXAConnection object.
`OracleXAConnection​(java.sql.Connection pc)` Create an OracleXAConnection object.

### Method Summary

All Methods Instance Methods Concrete Methods
`javax.transaction.xa.XAResource` `getXAResource()` Return an XA resource to the caller.

### Methods inherited from class oracle.jdbc.xa.OracleXAConnection

`getConnection`

### Methods inherited from class oracle.jdbc.pool.OraclePooledConnection

`addConnectionEventListener, addStatementEventListener, close, getCallWithKey, getConnectionDuringExceptionHandling, getDiagnosable, getExplicitCachingEnabled, getImplicitCachingEnabled, getLastAccessedTime, getLogicalHandle, getMonitorLock, getPhysicalHandle, getStatementCacheSize, getStatementWithKey, getStmtCacheSize, isStatementCacheInitialized, purgeExplicitCache, purgeImplicitCache, registerImplicitCacheConnectionEventListener, removeConnectionEventListener, removeStatementEventListener, setConnection, setExplicitCachingEnabled, setImplicitCachingEnabled, setLastAccessedTime, setProperties, setShardingKey, setShardingKeyIfValid, setStatementCacheSize, setStmtCacheSize, setStmtCacheSize`

### Methods inherited from class java.lang.Object

`clone, equals, finalize, getClass, hashCode, notify, notifyAll, toString, wait, wait, wait`

### Methods inherited from interface oracle.jdbc.diagnostics.Diagnosable

`begin, begin, beginCurrentSql, debug, debug, debug, debug, debug, debug, debug, debug, debug, debug, debugp, end, end, endCurrentSql, format, isDebugEnabled, isDiagnoseFirstFailureEnabled, isLoggable, isSensitiveEnabled, onClose, propertyChange, resumeLogging, secure, suspendLogging, trace, tracep`

### Methods inherited from interface oracle.jdbc.internal.Monitor

`acquireCloseableLock, acquireLock, releaseLock`

### Methods inherited from interface oracle.jdbc.datasource.OraclePooledConnection

`getCallWithKey, getExplicitCachingEnabled, getImplicitCachingEnabled, getLastAccessedTime, getLogicalHandle, getStatementCacheSize, getStatementWithKey, purgeExplicitCache, purgeImplicitCache, registerCloseCallback, registerImplicitCacheConnectionEventListener, setExplicitCachingEnabled, setImplicitCachingEnabled, setLastAccessedTime, setShardingKey, setShardingKeyIfValid, setStatementCacheSize`

### Methods inherited from interface javax.sql.PooledConnection

`addConnectionEventListener, addStatementEventListener, close, removeConnectionEventListener, removeStatementEventListener`

### Field Detail

#### isXAResourceTransLoose

    protected boolean isXAResourceTransLoose

### Constructor Detail

#### OracleXAConnection

    public OracleXAConnection()
                       throws javax.transaction.xa.XAException

Create an OracleXAConnection object.

Throws:
  `javax.transaction.xa.XAException`

#### OracleXAConnection

    public OracleXAConnection​(java.sql.Connection pc)
                       throws javax.transaction.xa.XAException

Create an OracleXAConnection object.

Parameters:
  `pc` - A physical connection object.
Throws:
  `javax.transaction.xa.XAException`

### Method Detail

#### getXAResource

    public javax.transaction.xa.XAResource getXAResource()
                                                  throws java.sql.SQLException

Return an XA resource to the caller.

Specified by:
  `getXAResource` in interface `OraclePooledConnection`
Specified by:
  `getXAResource` in interface `javax.sql.XAConnection`
Specified by:
  `getXAResource` in class `OracleXAConnection`
Returns:
  the XAResource
Throws:
  `java.sql.SQLException` - if a database-access error occurs