wt.pds
Class OraclePds

java.lang.Object
  extended bywt.pds.SQLDatabasePds
      extended bywt.pds.OraclePds
All Implemented Interfaces:
PDSIfc
Direct Known Subclasses:
OraclePds81

public abstract class OraclePds
extends SQLDatabasePds

This concrete class provides standard SQL database persistent data services for Oracle.

Supported API: false

Extendable: false


Field Summary
private static String CLASSNAME
           
private static int DATABASE_CONNECTION_LOST_0
           
private static int DATABASE_CONNECTION_LOST_1
           
private static int DATABASE_CONNECTION_LOST_2
           
private static int DEAD_LOCK_DETECTED
           
private static int NO_DATA_FOUND
           
private static int NO_DATA_TO_READ_FROM_SOCKET
           
private static int PROTOCOL_VIOLATION
           
private static int[] RECOVERABLE_CONNECTION_CODES
           
private static String RESOURCE
           
private static int ROW_LOCKED
           
private static int SOCKET_WRITE_ERROR
           
private static int UNIQUENESS_CONSTRAINT_VIOLATION
           
private static int UNKNOWN_EXCEPTION
           
 
Fields inherited from class wt.pds.SQLDatabasePds
DMLGENERATOR
 
Constructor Summary
OraclePds()
           
 
Method Summary
abstract  DataSource getDataSource()
          

Supported API: false
 String getNextSequence(WTConnection a_connection, String a_sequenceName)
          Return the next value from the SQL database sequence.
 PersistenceException handleSQLException(SQLException a_sqlException, Object a_obj, String a_messageKey)
          Handles an SQL exception specific to the Datastore instance.
protected  boolean isRecoverable(int a_errorCode)
           
 void lock(WTConnection a_connection, Object a_class, boolean a_wait)
          Perform a datastore lock on an Class table.
 Persistable lock(WTConnection a_connection, Persistable a_obj, boolean a_wait)
          Perform a SQL database lock on an Object.
protected  void validateLock(Persistable anObj)
           
 
Methods inherited from class wt.pds.SQLDatabasePds
buildLobMap, closeConnection, containSequenceColumn, execute, executeCall, expand, expand, getAttributeMapInfo, getDefaultTransactionIsolation, getDMLGenerator, getLob, getLobAsByteArray, getLobAsObject, handleException, initializeConnection, insert, insertPageResults, isLob, isLobLocator, isPersistent, processSQLException, query, refresh, refresh, remove, setLob, setLob, setObjectAsLob, update, update, validateExists, validateInsert
 
Methods inherited from class java.lang.Object
clone, equals, finalize, getClass, hashCode, notify, notifyAll, toString, wait, wait, wait
 

Field Detail

RESOURCE

private static final String RESOURCE
See Also:
Constant Field Values

CLASSNAME

private static final String CLASSNAME

UNKNOWN_EXCEPTION

private static final int UNKNOWN_EXCEPTION
See Also:
Constant Field Values

UNIQUENESS_CONSTRAINT_VIOLATION

private static final int UNIQUENESS_CONSTRAINT_VIOLATION
See Also:
Constant Field Values

DATABASE_CONNECTION_LOST_0

private static final int DATABASE_CONNECTION_LOST_0
See Also:
Constant Field Values

DATABASE_CONNECTION_LOST_1

private static final int DATABASE_CONNECTION_LOST_1
See Also:
Constant Field Values

DATABASE_CONNECTION_LOST_2

private static final int DATABASE_CONNECTION_LOST_2
See Also:
Constant Field Values

NO_DATA_TO_READ_FROM_SOCKET

private static final int NO_DATA_TO_READ_FROM_SOCKET
See Also:
Constant Field Values

SOCKET_WRITE_ERROR

private static final int SOCKET_WRITE_ERROR
See Also:
Constant Field Values

PROTOCOL_VIOLATION

private static final int PROTOCOL_VIOLATION
See Also:
Constant Field Values

NO_DATA_FOUND

private static final int NO_DATA_FOUND
See Also:
Constant Field Values

ROW_LOCKED

private static final int ROW_LOCKED
See Also:
Constant Field Values

DEAD_LOCK_DETECTED

private static final int DEAD_LOCK_DETECTED
See Also:
Constant Field Values

RECOVERABLE_CONNECTION_CODES

private static int[] RECOVERABLE_CONNECTION_CODES
Constructor Detail

OraclePds

public OraclePds()
Method Detail

lock

public Persistable lock(WTConnection a_connection,
                        Persistable a_obj,
                        boolean a_wait)
                 throws PersistenceException
Perform a SQL database lock on an Object.

Supported API: false

Specified by:
lock in interface PDSIfc
Specified by:
lock in class SQLDatabasePds
Parameters:
a_connection -
a_obj -
a_wait -
Returns:
Persistable
Throws:
PersistenceException

getNextSequence

public String getNextSequence(WTConnection a_connection,
                              String a_sequenceName)
                       throws PersistenceException
Return the next value from the SQL database sequence.

Supported API: false

Specified by:
getNextSequence in interface PDSIfc
Specified by:
getNextSequence in class SQLDatabasePds
Parameters:
a_connection -
a_sequenceName -
Returns:
String
Throws:
PersistenceException

handleSQLException

public PersistenceException handleSQLException(SQLException a_sqlException,
                                               Object a_obj,
                                               String a_messageKey)
Handles an SQL exception specific to the Datastore instance.

Supported API: false

Overrides:
handleSQLException in class SQLDatabasePds
Parameters:
a_sqlException -
a_obj -
a_messageKey -
Returns:
PersistenceException

getDataSource

public abstract DataSource getDataSource()


Supported API: false

Specified by:
getDataSource in interface PDSIfc
Specified by:
getDataSource in class SQLDatabasePds
Returns:
DataSource

lock

public void lock(WTConnection a_connection,
                 Object a_class,
                 boolean a_wait)
          throws PersistenceException
Perform a datastore lock on an Class table.

Supported API: false

Specified by:
lock in interface PDSIfc
Specified by:
lock in class SQLDatabasePds
Parameters:
a_connection -
a_class -
a_wait -
Throws:
PersistenceException

validateLock

protected void validateLock(Persistable anObj)
                     throws ObjectNotPersistentException
Throws:
ObjectNotPersistentException

isRecoverable

protected boolean isRecoverable(int a_errorCode)