com.ibm.websphere.rsadapter

Class DB2UniversalDataStoreHelper

  • All Implemented Interfaces:
    DataStoreHelper
    Direct Known Subclasses:
    InformixJccDataStoreHelper


    public class DB2UniversalDataStoreHelper
    extends DB2DataStoreHelper
    DB2UniversalDataStoreHelper is a DataStoreHelper implementation customized for the DB2 Universal JDBC driver. When mapping a SQLException, the SQLException mappings from the DB2UniversalDataStoreHelper are searched first. If no match is found, the SQLException mappings from the DB2DataStoreHelper are searched. If still no match is found, the SQLException mappings from the GenericDataStoreHelper are searched. If you have additional requirements on DB2 you should consider subclassing this implementation.
    Note: This class and its methods can not be called or referenced directly by user applications.

    SQLException mappings specific to the DB2UniversalDataStoreHelper are the following:

    Error CodeSQL StatePortableSQLException subclass
    -4498StaleConnectionException.class
    -4499StaleConnectionException.class
    -1776StaleConnectionException.class
    • Constructor Detail

      • DB2UniversalDataStoreHelper

        public DB2UniversalDataStoreHelper(java.util.Properties props)
        This DB2UniversalDataStoreHelper constructor creates a new DB2UniversalDataStoreHelper 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.
        Parameters:
        props - DataStoreHelper properties.
    • Method Detail

      • getPrintWriter

        public java.io.PrintWriter getPrintWriter()
        This method is used to obtain the log writer to set on the DataSource when database logging is enabled (for example: WAS.database=all=enabled). By default, null is returned and a java.io.PrintWriter instance created by WebSphere is used. You can override this method to return a different java.io.PrintWriter instance instead of the default.
        Specified by:
        getPrintWriter in interface DataStoreHelper
        Overrides:
        getPrintWriter in class DB2DataStoreHelper
        Returns:
        java.io.PrintWriter.
        Since:
        WAS 5.0.1
      • isBatchUpdateSupportedWithAccessIntent

        public boolean isBatchUpdateSupportedWithAccessIntent(AccessIntent accessIntent)
        This method is used to determine if CMP Entity Beans can support batch updates with the given AccessIntent. There are some AccessIntents (for example, WebSphere Optimistic Concurrency Control intent) for which some databases are not always capable of determining the number of updated rows. This prevents CMP Entity Beans from being able to support batch updates. In such cases, this method must return false.

        DB2UniversalDataStoreHelper returns a value of true, indicating batch updates are always supported. If necessary, you may change this value by overriding this method.

        Specified by:
        isBatchUpdateSupportedWithAccessIntent in interface DataStoreHelper
        Overrides:
        isBatchUpdateSupportedWithAccessIntent in class DB2DataStoreHelper
        Parameters:
        accessIntent - AccessIntent
        Returns:
        boolean true if batching is allowed with the given AccessIntent, otherwise false.
        Since:
        WAS 5.0.2
        See Also:
        AccessIntent
      • getDriverType

        public final int getDriverType()
        This method returns the driverType which is defined for the DB2 Universal JDBC driver.
        Returns:
        driverType - possible value : 2 , 4
        Since:
        WAS 5.0.2
      • doStatementCleanup

        public void doStatementCleanup(java.sql.PreparedStatement stmt)
                                throws java.sql.SQLException

        This method cleans up a statement before the statement is returned to the statement cache. This method is called only for statements being cached. It is called when at least one of the following statement properties has changed,

        • cursorName
        • fetchDirection
        • maxFieldSize
        • maxRows
        • queryTimeout

        DB2DataStoreHelper resets all of the statement properties listed above

        The following operations do not need to be included in the statement cleanup since they are automatically performed by WebSphere when caching statements:

        • setFetchSize(0)
        • clearParameters()
        • clearWarnings()

        A helper class implementing this method can choose to do additional cleanup for the statement. However, this must never include closing the statement, since the statement is intended to be cached.

        Specified by:
        doStatementCleanup in interface DataStoreHelper
        Overrides:
        doStatementCleanup in class DB2DataStoreHelper
        Parameters:
        stmt - the PreparedStatement.
        Throws:
        java.sql.SQLException - if an error occurs cleaning up the statement.
IBM WebSphere Application ServerTM
Release 9.0