Package oracle.jdbc.replay

## Class OracleDataSourceImpl

- java.lang.Object
- - oracle.jdbc.datasource.impl.OracleDataSource
  - - oracle.jdbc.replay.OracleDataSourceImpl

All Implemented Interfaces:
  `java.io.Serializable`, `java.sql.Wrapper`, `javax.naming.Referenceable`, `javax.sql.CommonDataSource`, `javax.sql.DataSource`, `OracleCommonDataSource`, `OracleDataSource`, `oracle.jdbc.diagnostics.Diagnosable`, `oracle.jdbc.diagnostics.PropertyChangeListener`, `oracle.jdbc.internal.Monitor`, `oracle.jdbc.replay.internal.OracleDataSource`, `OracleDataSource`

    public class OracleDataSourceImpl
    extends OracleDataSource

JDBC Data Source that supports transparent JDBC operation replay upon a failover.

For data source creation using Oracle JDBC driver 21c and higher versions, we strongly recommend that your code use `oracle.jdbc.datasource.impl.OracleDataSource`, instead of this class, which has become a thin wrapper of the former class and will be gradually phased out.

For data source creation using Oracle JDBC driver 19c and earlier versions, you can still use this class.

The following example illustrates the use of this data source to create a JDBC connection:

        oracle.jdbc.datasource.OracleDataSource ods =
          new oracle.jdbc.datasource.impl.OracleDataSource();
        ods.setURL("jdbc:oracle:thin:@//dbhost:dbport/dbservice");
        ods.setUser("User");
        ods.setPassword("Passwd");
        ods.setConnectionProperty("connProp1", "value1");
        ods.setConnectionProperty("connProp2", "value2");

        Connection conn = ods.getConnection();

The following example illustrates the use of a connection obtained from this data source for Application Continuity protection:

        oracle.jdbc.OracleConnection conn =
          (oracle.jdbc.OracleConnection) ods.getConnection();
        conn.beginRequest();
        ...... // JDBC calls protected by AC
        conn.endRequest();

See Also:
  `OracleDataSource`, `oracle.jdbc.datasource.impl`, 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 inherited from class oracle.jdbc.datasource.impl.OracleDataSource

`CHECKSUM_PROPERTY, clientChecksum11203x, clientChecksum12x, connectionProperties, databaseName, dataSourceName, DEFAULT_SERVICE_NAME, description, DMS_DEFAULT_DATASOURCE_NAME, DMS_ROOT_NAME, doneDumpOnMemoryPressure, driver, driverType, ENABLE_AC_SUPPORT_PROPERTY, ENABLE_SSS_CURSOR_SUPPORT_PROPERTY, explicitCachingEnabled, explicitCachingEnabledSet, FAILOVER_RESTORE_AUTO, FAILOVER_RESTORE_LEVEL1, FAILOVER_RESTORE_LEVEL2, FAILOVER_RESTORE_NONE, FAILOVER_RESTORE_PROPERTY, FAILOVER_TYPE_AUTO, FAILOVER_TYPE_ON_REMOTE, FAILOVER_TYPE_PROPERTY, FAILOVER_TYPE_TRANSACTION, IGNORE_AC_CONTEXT_PROPERTY, implicitCachingEnabled, implicitCachingEnabledSet, INITIATION_TIMEOUT_PROPERTY, isAutoACEnabled, isFirstConnection, isHybrid, isOracleDataSource, isReplayInDynamicMode, isSSSCursorEnabled, isStateRestorationAuto, isTransactionReplayEnabled, loginTimeout, logWriter, maxStatements, maxStatementsSet, networkProtocol, password, portNumber, RECONNECT_DELAY_PROPERTY, RECONNECT_RETRIES_PROPERTY, reconnectDelay, reconnectRetries, replayInitiationTimeout, REQUEST_SIZE_LIMIT_PROPERTY, serverName, serviceName, SESSION_STATE_CONSISTENCY_HYBRID, SESSION_STATE_CONSISTENCY_STATIC, SESSION_STATE_PROPERTY, stateRestorationType, tnsEntry, TRACE, trackerInitialized, unnamedInstanceCount, url, user`

### Fields inherited from interface oracle.jdbc.replay.OracleDataSource

`CONNECTION_PROPERTIES, DATA_SOURCE_NAME, DATABASE_NAME, DESCRIPTION, EXPLICIT_CACHING_ENABLED, IMPLICIT_CACHING_ENABLED, MAX_STATEMENTS, NETWORK_PROTOCOL, PASSWORD, PORT_NUMBER, ROLE_NAME, SERVER_NAME, URL, USER`

### Constructor Summary

Constructors
`OracleDataSourceImpl()`

### Method Summary

### Methods inherited from class oracle.jdbc.datasource.impl.OracleDataSource

`addRefProperties, cleanup, clearDoneDumpOnMemoryPressure, clearReplayStatistics, createConnectionBuilder, dms_data_source_type, enableACAndProxifyIfNecessary, finalize, getConnection, getConnection, getConnection, getConnection, getConnectionDuringExceptionHandling, getConnectionInitializationCallback, getConnectionNoProxy, getConnectionProperties, getConnectionProperty, getDatabaseName, getDataSourceName, getDescription, getDiagnosable, getDriverType, getExplicitCachingEnabled, getImplicitCachingEnabled, getLoginTimeout, getLogWriter, getMaxStatements, getMonitorLock, getNetworkProtocol, getParentLogger, getPassword, getPhysicalConnection, getPortNumber, getProxyFactory, getReference, getReplayStatistics, getReplayStatisticsString, getRequestSizeLimit, getRoleName, getServerName, getServiceName, getSSSCursorProperty, getSystemProperty, getTNSEntryName, getURL, getUser, isWrapperFor, makeURL, registerConnectionInitializationCallback, registerMBean, removeReplayStatistics, setConnectionProperties, setConnectionProperty, setDatabaseName, setDataSourceName, setDescription, setDriverType, setExplicitCachingEnabled, setHostnameResolver, setImplicitCachingEnabled, setLoginTimeout, setLogWriter, setMaxStatements, setNetworkProtocol, setPassword, setPortNumber, setRoleName, setServerName, setServiceName, setSingleShardTransactionSupport, setSSLContext, setTNSEntryName, setTokenSupplier, setupACSpecificProperties, setURL, setUser, unregisterConnectionInitializationCallback, unregisterMBean, unwrap, updateReplayStatistics`

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

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

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

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

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

`acquireCloseableLock, acquireLock, assertLockHeldByCurrentThread, isReentrantLock, releaseLock`

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

`createShardingKeyBuilder`

### Constructor Detail

#### OracleDataSourceImpl

    public OracleDataSourceImpl()
                         throws java.sql.SQLException

Throws:
  `java.sql.SQLException`