|
|||||||||
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.SybaseDataStoreHelper
This is a helper class customized for the Sybase database. It allows us to plug in data store specific functions. When trying to map an exception, the Sybase errormap will be searched first then the generic one will be searched.
If you have any special Sybase requirements, you might want to look into extending this class and overwriting the methods you wish to change.
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 | |
---|---|
SybaseDataStoreHelper(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 |
doConnectionSetup(java.sql.Connection conn)
Check warnings from the connection to figure out whether the database provided really exists. |
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. |
java.io.PrintWriter |
getPrintWriter()
This method is used to return a java.io.PrintWriter instance to be passed on to setLogWriter method called on the datasource, during the managedConnectionFactory initialization. |
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 Sybase. |
Methods inherited from class com.ibm.websphere.rsadapter.GenericDataStoreHelper |
---|
calcPartitionNumber, doConnectionCleanup, getLockType, getMetaData, getResultSetConcurrency, 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 |
Constructor Detail |
public SybaseDataStoreHelper(java.util.Properties props)
props
- not used 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 int getIsolationLevel(com.ibm.websphere.appprofile.accessintent.AccessIntent aIntent) throws javax.resource.ResourceException
AccessType: Optimistic --> map to RC; PessimisticRead --> map to RR
PessimisticUpdate: Update Hint Value order is:
greedy | nocollision | Exclusive |
0/1 | 0/1 | 0/1 |
when adding up the combo as an integer, for example:
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 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 Sybase: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 classpublic java.io.PrintWriter getPrintWriter()
getPrintWriter
in class GenericDataStoreHelper
public void doConnectionSetup(java.sql.Connection conn) throws java.sql.SQLException
doConnectionSetup
in class GenericDataStoreHelper
conn
- The Sybase JDBC connectionDataStoreHelper.doConnectionSetup(Connection)
|
|||||||||
PREV CLASS NEXT CLASS | FRAMES NO FRAMES | ||||||||
SUMMARY: INNER | FIELD | CONSTR | METHOD | DETAIL: FIELD | CONSTR | METHOD |