|
|||||||||
PREV CLASS NEXT CLASS | FRAMES NO FRAMES | ||||||||
SUMMARY: INNER | FIELD | CONSTR | METHOD | DETAIL: FIELD | CONSTR | METHOD |
java.lang.Object | +--com.ibm.websphere.rsadapter.GenericDataStoreHelper | +--com.ibm.websphere.rsadapter.CloudscapeDataStoreHelper
This is a helper class customized for the Cloudscape database. It allows us to plug in data store specific functions. When trying to map an exception, the Cloudscape errormap will be searched first then the generic one will be searched.
If you have any special Cloudscape requirements, you might want to look into extending this class and overwriting the methods you wish to change.
Field Summary | |
---|---|
protected java.util.HashMap |
db2jErrorMap
|
protected static com.ibm.ejs.ras.TraceComponent |
db2jTc
|
Fields inherited from class com.ibm.websphere.rsadapter.GenericDataStoreHelper |
---|
EOLN, genErrorMap, resBundle |
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, GENERIC_HELPER, INFORMIX_HELPER, MSSQL_HELPER, ORACLE_HELPER, POTENTIAL_DEADLOCK, POTENTIAL_LOST_UPDATE, SEQUELINK_HELPER, SYBASE_HELPER, SYBASE11_HELPER, TX_REPEATABLE_READ_FORUPDATE, TX_SERIALIZABLE_FORUPDATE, UPDATE_ON_READONLY, WSCONNECTJDBC_HELPER |
Constructor Summary | |
---|---|
CloudscapeDataStoreHelper(java.util.Properties props)
Constructor, the property is passed in case some info is needed in the future, for now this parameter is not used. |
Method Summary | |
---|---|
void |
doStatementCleanup(java.sql.PreparedStatement stmt)
Clean up a statement before it is placed in the cache. |
java.lang.Class |
findMappingClass(java.sql.SQLException e)
This method returns mapping for a given exception if one is found. |
int |
getIsolationLevel(com.ibm.websphere.appprofile.accessintent.AccessIntent aIntent)
This method returns the isolation level given the Intent object. |
int |
getResultSetConcurrency(com.ibm.websphere.appprofile.accessintent.AccessIntent intent)
This method returns the resultSet concurrency given the Intent Object. |
void |
setUserDefinedMap(java.util.Map newmap)
This method is used to add user defined error maps. |
java.lang.String |
showLockInfo(java.util.Properties props)
This method returns lock information for Cloudscape. |
Methods inherited from class com.ibm.websphere.rsadapter.GenericDataStoreHelper |
---|
calcPartitionNumber, doConnectionCleanup, doConnectionSetup, getLockType, getMetaData, getPrintWriter, getResultSetType, getXAExceptionContents, hasLostUpdateOrDeadLockOccurred, isBatchUpdateSupportedWithAccessIntent, isConnectionError, mapException, mapException, modifyXAFlag, processGenericCredentials |
Methods inherited from class java.lang.Object |
---|
clone, equals, finalize, getClass, hashCode, notify, notifyAll, toString, wait, wait, wait |
Field Detail |
protected static final com.ibm.ejs.ras.TraceComponent db2jTc
protected java.util.HashMap db2jErrorMap
Constructor Detail |
public CloudscapeDataStoreHelper(java.util.Properties props)
props
- not needed here, entry will be ignoredMethod Detail |
public void doStatementCleanup(java.sql.PreparedStatement stmt) throws java.sql.SQLException
doStatementCleanup
in class GenericDataStoreHelper
stmt
- the PreparedStatement.java.sql.SQLException
- if an error occurs cleaning up the statement.public final java.lang.Class findMappingClass(java.sql.SQLException e)
If a user wants to override the mapping of a specific Exception, they can override this method and either return the same exception class or return null. In the mapexception() which calls this method if the map found is null then the original exception is returned. A user can also cancel the mapping by returning null for that exception map.
findMappingClass
in class GenericDataStoreHelper
e
- The SQLException we need to find a mapping class forpublic final int getIsolationLevel(com.ibm.websphere.appprofile.accessintent.AccessIntent aIntent) throws javax.resource.ResourceException
For Access Type: Optimistic --> map to RC; PessimisticRead -> map to RR
Pessimistic Update:
Note:
We don't allow pessimistic_update_random, therefore, this assumption
is made when calculation is done
getIsolationLevel
in class GenericDataStoreHelper
aIntent
- AccessIntentjavax.resource.ResourceException
- Intent
public int getResultSetConcurrency(com.ibm.websphere.appprofile.accessintent.AccessIntent intent) throws javax.resource.ResourceException
getResultSetConcurrency
in class GenericDataStoreHelper
intent
- AccessIntentjavax.resource.ResourceException
- AccessIntent
public final java.lang.String showLockInfo(java.util.Properties props) throws java.lang.Exception
showLockInfo
in class GenericDataStoreHelper
props
- Props should have the following data to establish a connection with Cloudscape:java.lang.Exception
- Could range from java.io exceptions to javax.sql exceptions since we are running operations
against the OSpublic final void setUserDefinedMap(java.util.Map newmap)
setUserDefinedMap
in class GenericDataStoreHelper
newmap
- a list of SQL error codes / states and the Exception class
|
|||||||||
PREV CLASS NEXT CLASS | FRAMES NO FRAMES | ||||||||
SUMMARY: INNER | FIELD | CONSTR | METHOD | DETAIL: FIELD | CONSTR | METHOD |