IBM WebSphere Application ServerTM
Release 7

com.ibm.websphere.rsadapter
Class Oracle10gDataStoreHelper

java.lang.Object
  extended by com.ibm.websphere.rsadapter.GenericDataStoreHelper
      extended by com.ibm.websphere.rsadapter.OracleDataStoreHelper
          extended by com.ibm.websphere.rsadapter.Oracle10gDataStoreHelper
All Implemented Interfaces:
DataStoreHelper
Direct Known Subclasses:
Oracle11gDataStoreHelper

public class Oracle10gDataStoreHelper
extends OracleDataStoreHelper

Oracle10gDataStoreHelper is a DataStoreHelper implementation customized for the Oracle 10g database, it extends OracleDataStoreHelper. If you have additional requirements on Oracle10g you should consider subclassing this implementation.
Note: This class and its methods can not be called or referenced directly by user applications.


Field Summary
 
Fields inherited from class com.ibm.websphere.rsadapter.GenericDataStoreHelper
customDefinedWasDefaultIsoLevel, defaultQueryTimeout, EOLN, genErrorMap, resBundle, tranErrorList
 
Fields inherited from interface com.ibm.websphere.rsadapter.DataStoreHelper
CLOUDSCAPE_HELPER, CLOUDSCAPE_NETWORK_SERVER_HELPER, CONNECTJDBC_HELPER, CUSTOM_HELPER, DATADIRECT_HELPER, DB2_390_HELPER, DB2_390_LOCAL_HELPER, DB2_400_HELPER, DB2_HELPER, DB2_UNIVERSAL_HELPER, DERBY_HELPER, DERBY_NETWORK_SERVER_HELPER, FIRST_TIME_CALLED, GENERIC_HELPER, INFORMIX_HELPER, INFORMIX_JCC_HELPER, MSSQL_HELPER, ORACLE_10G_HELPER, ORACLE_11G_HELPER, ORACLE_HELPER, POTENTIAL_DEADLOCK, POTENTIAL_LOST_UPDATE, PROXY_DS_HELPER, SEQUELINK_HELPER, SYBASE_HELPER, SYBASE11_HELPER, TX_REPEATABLE_READ_FORUPDATE, TX_SERIALIZABLE_FORUPDATE, UNDEFINED_HELPER, UNDEFINED_ISOLATOIN_LEVEL, UPDATE_ON_READONLY
 
Constructor Summary
Oracle10gDataStoreHelper(java.util.Properties props)
          This Oracle10gDataStoreHelper constructor creates a new Oracle10gDataStoreHelper based on the DataStoreHelper properties provided.
 
Method Summary
 int getIsolationLevel(AccessIntent aIntent)
          This method determines the transaction isolation level based on the specified AccessIntent.
 int getResultSetConcurrency(AccessIntent intent)
          This method determines the result set concurrency based on the specified AccessIntent.
 
Methods inherited from class com.ibm.websphere.rsadapter.OracleDataStoreHelper
doConnectionCleanup, doStatementCleanup, findMappingClass, getLockType, getXAExceptionContents, hasLostUpdateOrDeadLockOccurred, isBatchUpdateSupportedWithAccessIntent, modifyXAFlag, showLockInfo
 
Methods inherited from class com.ibm.websphere.rsadapter.GenericDataStoreHelper
calcPartitionNumber, doConnectionCleanupPerCloseConnection, doConnectionSetup, doConnectionSetupPerGetConnection, doConnectionSetupPerTransaction, getMetaData, getPasswordForUseWithTrustedContextWithAuthentication, getPrintWriter, getResultSetType, isConnectionError, isDuplicateKey, isTransientConnectionError, mapException, setUserDefinedMap
 
Methods inherited from class java.lang.Object
clone, equals, finalize, getClass, hashCode, notify, notifyAll, toString, wait, wait, wait
 

Constructor Detail

Oracle10gDataStoreHelper

public Oracle10gDataStoreHelper(java.util.Properties props)

This Oracle10gDataStoreHelper constructor creates a new Oracle10gDataStoreHelper based on the DataStoreHelper properties provided. All implementations inheriting from a data store helper must supply this same list of properties to their super class by invoking the constructor of their super class with the list of properties.

The DataStoreHelper properties for Oracle10gDataStoreHelper include a property, dataSourceClass, set to the Oracle JDBC driver's DataSource implementation class name.

Parameters:
props - DataStoreHelper properties.
Method Detail

getResultSetConcurrency

public int getResultSetConcurrency(AccessIntent intent)
                            throws javax.resource.ResourceException
This method determines the result set concurrency based on the specified AccessIntent. Oracle10gDataStoreHelper returns java.sql.ResultSet.CONCUR_UPDATABLE if the access type of the AccessIntent is AccessIntent.ACCESS_TYPE_UPDATE, and otherwise java.sql.ResultSet.CONCUR_READ_ONLY. Note, however, that for performance reasons, this method will always return java.sql.ResultSet.CONCUR_READ_ONLY

Specified by:
getResultSetConcurrency in interface DataStoreHelper
Overrides:
getResultSetConcurrency in class OracleDataStoreHelper
Parameters:
intent - An AccessIntent.
Returns:
A result set concurrency constant defined on java.sql.ResultSet.
Throws:
javax.resource.ResourceException - If a result set concurrency cannot be determined from the AccessIntent.
See Also:
AccessIntent, ResultSet

getIsolationLevel

public int getIsolationLevel(AccessIntent aIntent)
                      throws javax.resource.ResourceException
This method determines the transaction isolation level based on the specified AccessIntent. If the AccessIntent parameter is null, a default value is returned that is appropriate for the database backend. The default transaction isolation level for OracleDataStoreHelper is Connection.TRANSACTION_READ_COMMITTED.

In the case where an AccessIntent is specified, OracleDataStoreHelper computes the transation isolation level from the following table based on the pessimistic update lock hint.

pessimistic update lock hint transaction isolation level
AccessIntent.PESSIMISTIC_UPDATE_LOCK_HINT_NONE
AccessIntent.PESSIMISTIC_UPDATE_LOCK_HINT_WEAKEST_LOCK_AT_LOAD
AccessIntent.PESSIMISTIC_UPDATE_LOCK_HINT_NOCOLLISION
Connection.TRANSACTION_READ_COMMITTED
AccessIntent.PESSIMISTIC_UPDATE_LOCK_HINT_EXCLUSIVE Connection.TRANSACTION_SERIALIZABLE

Specified by:
getIsolationLevel in interface DataStoreHelper
Overrides:
getIsolationLevel in class OracleDataStoreHelper
Parameters:
intent - An AccessIntent
Returns:
A transaction isolation level appropriate for the specified AccessIntent.
Throws:
javax.resource.ResourceException - If a transaction isolation level cannot be determined from the AccessIntent.
See Also:
AccessIntent, Connection

IBM WebSphere Application ServerTM
Release 7