org.enhydra.shark.repositorypersistence.data
Class XPDLDataDO

java.lang.Object
  extended bycom.lutris.appserver.server.sql.CoreDO
      extended bycom.lutris.appserver.server.sql.CloneableDO
          extended bycom.lutris.dods.builder.generator.dataobject.GenericDO
              extended byorg.enhydra.shark.repositorypersistence.data.XPDLDataDO
All Implemented Interfaces:
java.lang.Cloneable, java.io.Serializable, com.lutris.appserver.server.sql.Transaction, XPDLDataDOI

public class XPDLDataDO
extends com.lutris.dods.builder.generator.dataobject.GenericDO
implements XPDLDataDOI, java.io.Serializable

Data core class, used to set and retrieve the XPDLDataDO information.

Since:
DODS Project
Version:
$Revision: 1.47 $
Author:
NN
See Also:
Serialized Form

Field Summary
protected static org.enhydra.dods.cache.DataStructCache cache
           
static com.lutris.dods.builder.generator.query.RDBColumn CNT
          static final RDBColumn CNT for use with QueryBuilder.
static int COLUMN_CNT
          Use for query caching.
static int COLUMN_XPDL
          Use for query caching.
static int COLUMN_XPDLCLASSCONTENT
          Use for query caching.
static int COLUMN_XPDLCONTENT
          Use for query caching.
protected  boolean deleted
           
protected static boolean isFullCacheNeeded
           
protected static boolean notUsingOId
           
static com.lutris.dods.builder.generator.query.RDBColumn PrimaryKey
          static final RDBColumn PrimaryKey for use with QueryBuilder.
protected static org.enhydra.dods.statistics.Statistics statistics
          Represents table and cache (if there is caching) statistics.
static com.lutris.dods.builder.generator.query.RDBTable table
           
static java.lang.String tableName
          Static final data members name the table and columns for this DO.
static com.lutris.dods.builder.generator.query.RDBColumn XPDL
          static final RDBColumn XPDL for use with QueryBuilder.
static com.lutris.dods.builder.generator.query.RDBColumn XPDLClassContent
          static final RDBColumn XPDLClassContent for use with QueryBuilder.
static com.lutris.dods.builder.generator.query.RDBColumn XPDLContent
          static final RDBColumn XPDLContent for use with QueryBuilder.
 
Fields inherited from class com.lutris.dods.builder.generator.dataobject.GenericDO
colChanged, dirty
 
Fields inherited from class com.lutris.appserver.server.sql.CoreDO
originalData, persistent, versioning
 
Constructor Summary
protected XPDLDataDO()
          Protected constructor.
protected XPDLDataDO(boolean is_view)
          Protected constructor.
protected XPDLDataDO(boolean is_view, com.lutris.appserver.server.sql.DBTransaction dbTrans)
          Protected constructor.
protected XPDLDataDO(com.lutris.appserver.server.sql.DBTransaction dbTrans)
          Protected constructor.
protected XPDLDataDO(com.lutris.appserver.server.sql.ObjectId id)
          Protected constructor used by createExisting(ObjectId) above.
protected XPDLDataDO(com.lutris.appserver.server.sql.ObjectId id, com.lutris.appserver.server.sql.DBTransaction dbTrans)
          Protected constructor used by createExisting(ObjectId, DBTransaction) above.
protected XPDLDataDO(java.sql.ResultSet rs)
          Protected constructor.
protected XPDLDataDO(java.sql.ResultSet rs, com.lutris.appserver.server.sql.DBTransaction dbTrans)
          Protected constructor.
 
Method Summary
protected  void _setCNT(java.math.BigDecimal value)
          _setCNT is a protected method that is called by setCNT if CNT is not part of a multicolumn foreign key.
protected  void _setXPDL(XPDLDO value)
          _setXPDL is a protected method that is called by setXPDL if XPDL is not part of a multicolumn foreign key.
protected  void _setXPDLClassContent(byte[] value)
          _setXPDLClassContent is a protected method that is called by setXPDLClassContent if XPDLClassContent is not part of a multicolumn foreign key.
protected  void _setXPDLContent(byte[] value)
          _setXPDLContent is a protected method that is called by setXPDLContent if XPDLContent is not part of a multicolumn foreign key.
 void addToCache()
          Add DO's original data object to cache.
static void addToCache(XPDLDataDataStruct newDS)
          Add DataStruct object to cache.
static XPDLDataDO ceInternal(java.math.BigDecimal bd, com.lutris.appserver.server.sql.DBTransaction dbTrans)
          Method ceInternal is public, only to allow generated classes to instantiate one another.
static XPDLDataDO ceInternal(com.lutris.appserver.server.sql.ObjectId id, com.lutris.appserver.server.sql.DBTransaction dbTrans)
          ceInternal(ObjectId, DBTransaction) Factory method creates a XPDLDataDO object by searching for it in the database using the passed ObjectID value as the primary key.
protected static XPDLDataDO ceInternal(com.lutris.dods.builder.generator.query.RDBColumnValue pk, com.lutris.appserver.server.sql.DBTransaction dbTrans)
          ceInternal( RDBColumnValue, DBTransaction ) Factory method creates a XPDLDataDO object by searching for it in the database using the passed XPDLDataDO.PrimaryKey.
protected static XPDLDataDO ceInternal(com.lutris.dods.builder.generator.query.RDBRow row, com.lutris.appserver.server.sql.DBTransaction dbTrans)
          ceInternal( RDBRow , DBTransaction) Factory method creates a XPDLDataDO object by searching for it in the database using the XPDLDataDO.PrimaryKey value in the passed RDBRow.
protected static XPDLDataDO ceInternal(java.sql.ResultSet rs, com.lutris.appserver.server.sql.DBTransaction dbTrans)
          ceInternal(ResultSet, DBTransaction)
static XPDLDataDO ceInternal(java.lang.String handle, com.lutris.appserver.server.sql.DBTransaction dbTrans)
          Method ceInternal is public, only to allow generated classes to instantiate one another.
protected  void checkLoad()
          Load the actual DO data if necessary.
 java.lang.Object cloneUnique()
          Creates a clone of the object, but ensures that a new and unique object id is created for the object and that the version number is set to zero.
 void commit()
          Deprecated. Use save() instead.
 void commit(com.lutris.appserver.server.sql.DBTransaction dbt)
          Deprecated. Use save() instead.
 boolean compareCond(org.enhydra.dods.cache.Condition cond)
          Compares whether this DO satisfies condition cond.
static XPDLDataDO createCopy(XPDLDataDataStruct data, com.lutris.appserver.server.sql.DBTransaction dbTrans)
          Creates a DO that has no ObjectId but has a copy of an existing DO's data.
static XPDLDataDO createCopy(XPDLDataDO orig)
          Creates a DO that has no ObjectId but has a copy of an existing DO's data.
static XPDLDataDO createCopy(XPDLDataDO orig, com.lutris.appserver.server.sql.DBTransaction dbTrans)
           
static com.lutris.dods.builder.generator.dataobject.GenericDO createDO(com.lutris.appserver.server.sql.ObjectId oid, com.lutris.appserver.server.sql.DBTransaction dbTrans)
          Created DO with specified OID.
static XPDLDataDO createExisting(java.math.BigDecimal bd, com.lutris.appserver.server.sql.DBTransaction dbTrans)
          createExisting(BigDecimal, DBTransaction)
static XPDLDataDO createExisting(java.lang.String handle, com.lutris.appserver.server.sql.DBTransaction dbTrans)
          createExisting(String, DBTransaction) The createExisting method is used to create a XPDLDataDO from a string handle.
static com.lutris.appserver.server.sql.DBQuery createQuery(com.lutris.appserver.server.sql.DBTransaction trans)
          createQuery() creates a new DBQuery.
static com.lutris.appserver.server.sql.DBTransaction createTransaction()
          createTransaction() creates a new DBTransaction.
static XPDLDataDO createVirgin(com.lutris.appserver.server.sql.DBTransaction dbTrans)
          createVirgin(DBTransaction)
 void delete()
          Deletes the DO from its table.
 void delete(com.lutris.appserver.server.sql.DBTransaction dbt)
          Deletes the DO from its table.
 void delete(com.lutris.appserver.server.sql.DBTransaction dbt, boolean rootDO)
          Deletes the DO from its table.
 void deleteFromCache()
          Delete object from cache
static XPDLDataDataStruct deleteFromCache(XPDLDataDataStruct data)
          Delete DataStruct object from cache
static void disableCaching()
          Disable caching.
 void doCheck(boolean value)
          Specifies whether to lock this DO (row) in database just before commit.
 void doLock()
          Locks this DO in database by performing "update set version=OLD_ONE where OID=X and version=OLD_ONE".
 void doTouch()
          Locks this DO in database by performing "update set version=INCREMENTED where OID=X and version=OLD_ONE".
 void dumpData(boolean incrementVersion)
          dumpData action.
static void enableCaching()
          Enable caching.
 boolean equals(java.lang.Object obj)
           
 void evict()
          Remove DataStruct from cache.
static void evict(java.lang.String dbName, java.lang.String[] handles)
          Remove DataStruct objects from cache.
static void evict(XPDLDataDataStruct[] DSs)
          Remove DataStruct objects from cache.
 void executeInsert(com.lutris.appserver.server.sql.DBConnection conn)
          Inserts this object into the database.
 void executeLockingStatement(com.lutris.appserver.server.sql.DBConnection conn)
          Prepares and executes the statement used to lock this object in the database.
 void executeUpdate(com.lutris.appserver.server.sql.DBConnection conn)
           
 void finalizeDelete(boolean success)
          Currently does nothing.
 void finalizeInsert(boolean success)
          If transaction succeeded marks this object as clean.
 void finalizeUpdate(boolean success)
          If transaction succeeded marks this object as clean.
static XPDLDataDataStruct findCachedObjectByHandle(java.lang.String cacheHandle)
          Get DataStruct object with key cacheHandle from the cache.
 XPDLDataDO findTransactionCachedObjectByHandle(java.lang.String cacheHandle)
          Get data object with key cacheHandle from the cache.
 java.lang.String get_CacheHandle()
          Returns cache handle.
 java.lang.Object get_Data()
          Returns DO's data.
 XPDLDataDataStruct get_DataStruct()
          Returns dataStruct.
 java.lang.String get_Handle()
          The methods get_Handle hasMatchingHandle findCachedObjectByHandle are used by Presentation Objects that need to populate HTML select lists with Data Objects as options.
static java.lang.String get_logicalDBName()
          get_logicalDBName retrieves the logical database name set by setLogicalDBName().
 int get_NewVersion()
          get_NewVersion overloaded
 com.lutris.appserver.server.sql.ObjectId get_OId()
          Returns this object's identifier.
 java.lang.String get_OriginDatabase()
          Return the name of the logical database for which DO object was created.
static org.enhydra.dods.statistics.Statistics get_statistics()
          Get table statistics.
 com.lutris.appserver.server.sql.DBTransaction get_transaction()
          Return transaction which DO belongs.
static java.lang.String[] get_UsedLogicalDatabases()
          Get all used logical databases.
 int get_Version()
          get_Version makes the protected method public in CoreDO.
static int getAsynchLoadPriority()
          Returns priority for asynchronous cache initialization.
static java.lang.String getCacheDodsTableName()
          Get name of the table that is cached.
 java.math.BigDecimal getCNT()
          Get CNT of the SHKXPDLData.
static org.enhydra.dods.cache.ConfigurationAdministration getConfigurationAdministration()
          Returns SHKXPDLData table cache.
 XPDLDataDataStruct getDataStruct()
          Deprecated. Use get_DataStruct()
 java.sql.PreparedStatement getDeleteStatement(com.lutris.appserver.server.sql.DBConnection conn)
          Prepares the statement used to delete this object from the database.
 java.sql.PreparedStatement getInsertStatement(com.lutris.appserver.server.sql.DBConnection conn)
          Prepares the statement used to insert this object into the database.
 java.lang.String getTableName()
          Return SHKXPDLData as the name of the table in the database which contains XPDLDataDO objects.
 java.sql.PreparedStatement getUpdateStatement(com.lutris.appserver.server.sql.DBConnection conn)
          Prepares the statement used to update this object in the database.
static java.lang.String[] getUsedLogicalDatabases()
          Deprecated. Use get_UsedLogicalDatabases()
 XPDLDO getXPDL()
          Get XPDL of the SHKXPDLData.
 byte[] getXPDLClassContent()
          Get XPDLClassContent of the SHKXPDLData.
 byte[] getXPDLContent()
          Get XPDLContent of the SHKXPDLData.
 int hashCode()
           
 boolean hasMatchingHandle(java.lang.String handle)
          Compare string version of the id of this DO and handle.
protected static boolean isAllReadOnly()
          Returns value for AllReadOnly.
static boolean isAsynchCacheLoadNeeded()
          Returns information if asynchronous cache initialization is needed or not.
protected  boolean isAutoSave()
          Returns value for AutoSave.
protected  boolean isAutoSaveCreateVirgin()
          Returns value for AutoSaveCreateVirgin.
protected  boolean isDeleteCheckVersion()
          Returns value for DeleteCheckVersion.
 boolean isDeleted()
          Returns the value of delete tag.
 boolean isLoaded()
          isLoaded() Returns information whether object's data is loaded from database.
 boolean isReadOnly()
          Return information whether the data for this object has been marked read-only.
static boolean isSimpleCacheUsed()
          Returns information if simple cache is used or not.
protected  boolean isTransactionCaches()
          Returns value for TransactionCaches.
protected  boolean isTransactionCheck()
          Returns value for TransactionCheck.
 boolean isVirgin()
          Returns information whether the DO is created virgin and hasn't been commited yet.
 void loadData()
          Load the fields for the DO from the database.
protected  void makeIdentical(XPDLDataDO orig)
          Assigns the DataStruct of an existing DO to this DO.
 void makeInvisible()
          Make DO's data from cache Invisible.
 void makeReadOnly()
          Mark the object as read-only.
 void makeReadWrite()
          Mark the object as read-write.
 void makeVisible()
          Make DO's data from cache visible.
protected  void modifyDO(com.lutris.appserver.server.sql.DBTransaction dbt, boolean delete)
          Modifies the DO within its table.
protected  void modifyDO(com.lutris.appserver.server.sql.DBTransaction dbt, boolean delete, boolean references)
          Modifies the DO within its table.
 com.lutris.appserver.server.sql.ObjectId objectId_getXPDL()
          Get BigDecimal value of XPDL of the SHKXPDLData.
 int objectIdentityType()
          Return the type of the identity column(s) of DOs that these objects represents.
 java.math.BigDecimal oid_getXPDL()
          Get BigDecimal value of XPDL of the SHKXPDLData.
 void oid_setXPDL(java.math.BigDecimal value)
          Set XPDL of the SHKXPDLData.
 void oid_setXPDL(com.lutris.appserver.server.sql.ObjectId value)
          Set value for the XPDL of the SHKXPDLData.
 void oid_setXPDL(java.lang.String value)
          Set XPDL of the SHKXPDLData.
protected  void okToCommit()
          A stub method for implementing pre-commit assertions for this XPDLDataDO.
protected  void okToCommitXPDL(XPDLDO member)
          A stub method for implementing pre-commit assertions for the XPDL data member.
protected  void okToDelete()
          A stub method for implementing pre-delete assertions for this XPDLDataDO.
protected  void okToDeleteXPDL(XPDLDO member)
          A stub method for implementing pre-delete assertions for the XPDL data member.
 java.lang.Object originalData_get()
          Returns original DO's data.
 java.math.BigDecimal originalData_getCNT()
          Get original value of CNT from the SHKXPDLData.
 XPDLDO originalData_getXPDL()
          Get original value of XPDL from the SHKXPDLData.
 byte[] originalData_getXPDLClassContent()
          Get original value of XPDLClassContent from the SHKXPDLData.
 byte[] originalData_getXPDLContent()
          Get original value of XPDLContent from the SHKXPDLData.
 com.lutris.appserver.server.sql.ObjectId originalData_objectId_getXPDL()
          Get BigDecimal value of XPDL of the SHKXPDLData.
 java.math.BigDecimal originalData_oid_getXPDL()
          Get BigDecimal value of XPDL of the SHKXPDLData.
 void originalData_set(java.lang.Object value)
          Sets original DO's data.
static void readCacheConfiguration(java.lang.String database)
          Read cache configuration from application configuration file: cache size for org.enhydra.shark.repositorypersistence.data.SHKXPDLData table or default cache size.
 void refresh()
          This method is invoked whenever object needs to be loaded from database.
static void refresh(java.lang.String querySnt)
          Refresh cache by removing from the cache results of the query querySnt
static void refresh(XPDLDataDO[] DOs)
          This method is invoked whenever objects needs to be loaded from database.
static void refreshCache()
          Queries all rows in table, and for each row creates a DO instance in the cache.
static void refreshStatistics()
          Refresh table statistics.
 void reload()
          Causes the DO to refresh itself from the database the next time a set or get method is called.
 void reloadData()
          reloadData discards all changes application made to this object, and goes into database to fetch contents there.
static void removeFromCache(java.lang.String dbName, java.lang.String handle)
          Remove DataStruct object from cache.
static XPDLDataDataStruct removeFromCache(XPDLDataDataStruct data)
          Remove DataStruct from cache.
static XPDLDataDO retrieveFromTxCache(com.lutris.appserver.server.sql.CachedDBTransaction cbt, java.lang.Object handle)
          Return Object with the handle key from reference objects HashMap.
 void save()
          Inserts/Updates the DO into its table.
 void save(boolean references)
          Inserts/Updates the DO into its table.
 void save(com.lutris.appserver.server.sql.DBTransaction dbt)
          Inserts/Updates the DO into its table.
 void save(com.lutris.appserver.server.sql.DBTransaction dbt, boolean references)
          Inserts/Updates the DO into its table.
 void set_Data(java.lang.Object data)
          Sets DO's data.
 void set_NewVersion(int _ver)
          set_NewVersion overloaded.
protected  void set_OId(com.lutris.appserver.server.sql.ObjectId _oId)
          Sets this object's identifier.
 void set_Version(int _ver)
          set_Version overloaded.
 void setCNT(java.math.BigDecimal value)
          Set CNT of the SHKXPDLData.
 void setDeleted(boolean flag)
          Sets the value of delete tag.
static void setLogicalDBName(java.lang.String logicalDbNameInConfFile)
          Deprecated. It is dangeruous to use this method in multiuser environment because, this setings are applied to all users (sets logical database to all users)
protected  boolean setTransaction(com.lutris.appserver.server.sql.DBTransaction trans)
          Set Transaction to current DO.
 void setXPDL(XPDLDO value)
          Set XPDL of the SHKXPDLData.
 void setXPDLClassContent(byte[] value)
          Set XPDLClassContent of the SHKXPDLData.
 void setXPDLContent(byte[] value)
          Set XPDLContent of the SHKXPDLData.
 java.lang.String toString()
           
 java.lang.String toString(int indentCount)
           
 void unDelete()
          UnDeletes the DO and inserts to the table.
 void unDelete(com.lutris.appserver.server.sql.DBTransaction dbt)
          UnDeletes the DO and inserts to the table.
 void undo()
          Undo action.
 void updateCache()
          Update Cache.
static XPDLDataDataStruct updateCache(XPDLDataDataStruct updDS)
          UpdateCache for given DataStruct object.
 void writeXML(java.io.Writer ow)
           
 
Methods inherited from class com.lutris.dods.builder.generator.dataobject.GenericDO
_tr_, addToTransactionCache, copyBigDecimal, copyByteArray, copyDate, copyObjectId, copyString, copyTime, copyTimestamp, createDO, createDO, executeDelete, get_primaryKeyName, getData, getHandle, getOriginDatabase, getPrimaryKeyName, isDirty, isExecutePartially, isNewDataDifferent_BigDecimal, isNewDataDifferent_boolean, isNewDataDifferent_byte, isNewDataDifferent_bytes, isNewDataDifferent_DO, isNewDataDifferent_double, isNewDataDifferent_float, isNewDataDifferent_int, isNewDataDifferent_java_math_BigDecimal, isNewDataDifferent_java_sql_Date, isNewDataDifferent_java_sql_Time, isNewDataDifferent_java_sql_Timestamp, isNewDataDifferent_long, isNewDataDifferent_short, isNewDataDifferent_String, makeIdentical, markClean, markNewValue, markNewValue, markNewValue, markNewValue, markNewValue, markNewValue, markNewValue, markNewValue, markNewValue, markNewValue, markNewValue, markNewValue, markNewValue, markNewValue, markNewValue, markNewValue, markNewValue, markNewValue, markNewValue, printMsg, setData, setExecutePartially, setPrepStmtParam_BigDecimal, setPrepStmtParam_boolean, setPrepStmtParam_byte, setPrepStmtParam_bytes, setPrepStmtParam_DO, setPrepStmtParam_double, setPrepStmtParam_float, setPrepStmtParam_int, setPrepStmtParam_java_math_BigDecimal, setPrepStmtParam_java_sql_Date, setPrepStmtParam_java_sql_Time, setPrepStmtParam_java_sql_Timestamp, setPrepStmtParam_long, setPrepStmtParam_ObjectId, setPrepStmtParam_short, setPrepStmtParam_String
 
Methods inherited from class com.lutris.appserver.server.sql.CloneableDO
clone
 
Methods inherited from class com.lutris.appserver.server.sql.CoreDO
disableVersioning, get_OIdColumnName, get_versionColumnName, getNewVersion, getOId, getOIdColumnName, getOriginalVersion, getVersion, getVersionColumnName, isPersistent, set_OIdColumnName, set_versionColumnName, setNewVersion, setOId, setOIdColumnName, setPersistent, setVersion, setVersionColumnName
 
Methods inherited from class java.lang.Object
finalize, getClass, notify, notifyAll, wait, wait, wait
 

Field Detail

tableName

public static final java.lang.String tableName
Static final data members name the table and columns for this DO. By using these members with an instance of the QueryBuilder class, an application can perform straight SQL queries while retaining compile-time checking of table and column usage. Example: List the Cities containing Persons named Bob: Using straight SQL with QueryBuilder: Pro: code runs faster because you create fewer objects Con: code is less clear Vector fields = new Vector(); fields.addElement( AddressDO.City ); QueryBuilder qb = new QueryBuilder( fields ); qb.addWhere( PersonDO.FirstName, "Bob" ); qb.addWhere( PersonDO.PrimaryKey, AddressDO.Person ); RDBRow row; while ( null != ( row = qb.getNextRow() ) ) { String city = row.get( AddressDO.City ).getString(); } Using Query/DO classes: Pro: code is (often) clearer Con: code runs slower because you create more objects PersonQuery pq = new PersonQuery(); pq.setQueryFirstName( "Bob" ); PersonDO[] bobs = pq.getDOArray(); for ( int i = 0; i < bobs.length; i++ ) { AddressQuery aq = new AddressQuery(); aq.setQueryPerson( bobs[i] ); AddressDO addr = aq.getNextDO(); String city = addr.getCity(); }

See Also:
Constant Field Values

table

public static final com.lutris.dods.builder.generator.query.RDBTable table

PrimaryKey

public static final com.lutris.dods.builder.generator.query.RDBColumn PrimaryKey
static final RDBColumn PrimaryKey for use with QueryBuilder. See example above.


notUsingOId

protected static final boolean notUsingOId
See Also:
Constant Field Values

statistics

protected static org.enhydra.dods.statistics.Statistics statistics
Represents table and cache (if there is caching) statistics.


cache

protected static org.enhydra.dods.cache.DataStructCache cache

isFullCacheNeeded

protected static boolean isFullCacheNeeded

deleted

protected boolean deleted

XPDLContent

public static final com.lutris.dods.builder.generator.query.RDBColumn XPDLContent
static final RDBColumn XPDLContent for use with QueryBuilder. See RDBColumn PrimaryKey at the top of this file for usage example.


COLUMN_XPDLCONTENT

public static final int COLUMN_XPDLCONTENT
Use for query caching.

See Also:
Constant Field Values

XPDLClassContent

public static final com.lutris.dods.builder.generator.query.RDBColumn XPDLClassContent
static final RDBColumn XPDLClassContent for use with QueryBuilder. See RDBColumn PrimaryKey at the top of this file for usage example.


COLUMN_XPDLCLASSCONTENT

public static final int COLUMN_XPDLCLASSCONTENT
Use for query caching.

See Also:
Constant Field Values

XPDL

public static final com.lutris.dods.builder.generator.query.RDBColumn XPDL
static final RDBColumn XPDL for use with QueryBuilder. See RDBColumn PrimaryKey at the top of this file for usage example.


COLUMN_XPDL

public static final int COLUMN_XPDL
Use for query caching.

See Also:
Constant Field Values

CNT

public static final com.lutris.dods.builder.generator.query.RDBColumn CNT
static final RDBColumn CNT for use with QueryBuilder. See RDBColumn PrimaryKey at the top of this file for usage example.


COLUMN_CNT

public static final int COLUMN_CNT
Use for query caching.

See Also:
Constant Field Values
Constructor Detail

XPDLDataDO

protected XPDLDataDO(boolean is_view)
              throws com.lutris.appserver.server.sql.ObjectIdException,
                     com.lutris.appserver.server.sql.DatabaseManagerException
Protected constructor. Only derived classes should call it.

Parameters:
is_view - Is this view or not.
Throws:
com.lutris.appserver.server.sql.DatabaseManagerException - If a connection to the database cannot be established, etc.
com.lutris.appserver.server.sql.ObjectIdException - If an object's id can't be allocated for this object.

XPDLDataDO

protected XPDLDataDO(boolean is_view,
                     com.lutris.appserver.server.sql.DBTransaction dbTrans)
              throws com.lutris.appserver.server.sql.ObjectIdException,
                     com.lutris.appserver.server.sql.DatabaseManagerException
Protected constructor. Only derived classes should call it.

Parameters:
is_view - Is this view or not.
dbTrans - Database transaction.
Throws:
com.lutris.appserver.server.sql.DatabaseManagerException - If a connection to the database cannot be established, etc.
com.lutris.appserver.server.sql.ObjectIdException - If an object's id can't be allocated for this object.

XPDLDataDO

protected XPDLDataDO()
              throws com.lutris.appserver.server.sql.ObjectIdException,
                     com.lutris.appserver.server.sql.DatabaseManagerException
Protected constructor. Only derived classes should call it.

Throws:
com.lutris.appserver.server.sql.DatabaseManagerException - If a connection to the database cannot be established, etc.
com.lutris.appserver.server.sql.ObjectIdException - If an object's id can't be allocated for this object.

XPDLDataDO

protected XPDLDataDO(com.lutris.appserver.server.sql.DBTransaction dbTrans)
              throws com.lutris.appserver.server.sql.ObjectIdException,
                     com.lutris.appserver.server.sql.DatabaseManagerException
Protected constructor. Only derived classes should call it.

Parameters:
dbTrans - The current database transaction.
Throws:
com.lutris.appserver.server.sql.DatabaseManagerException - If a connection to the database cannot be established, etc.
com.lutris.appserver.server.sql.ObjectIdException - If an object's id can't be allocated for this object.

XPDLDataDO

protected XPDLDataDO(com.lutris.appserver.server.sql.ObjectId id)
              throws java.sql.SQLException,
                     com.lutris.appserver.server.sql.ObjectIdException,
                     com.lutris.dods.builder.generator.query.DataObjectException,
                     com.lutris.appserver.server.sql.DatabaseManagerException
Protected constructor used by createExisting(ObjectId) above.

Parameters:
id - The ObjectId for the object.
Throws:
com.lutris.dods.builder.generator.query.DataObjectException - If the object is not found in the database.
com.lutris.appserver.server.sql.ObjectIdException - If an object's id can't be allocated for this object.
com.lutris.appserver.server.sql.DatabaseManagerException - If a connection to the database cannot be established, etc.
java.sql.SQLException - Should never see this exception since GenericDO.ctor(ObjectId) never accesses the database.

XPDLDataDO

protected XPDLDataDO(com.lutris.appserver.server.sql.ObjectId id,
                     com.lutris.appserver.server.sql.DBTransaction dbTrans)
              throws java.sql.SQLException,
                     com.lutris.appserver.server.sql.ObjectIdException,
                     com.lutris.dods.builder.generator.query.DataObjectException,
                     com.lutris.appserver.server.sql.DatabaseManagerException
Protected constructor used by createExisting(ObjectId, DBTransaction) above.

Parameters:
id - The ObjectId for the object.
dbTrans - The current database transaction
Throws:
com.lutris.dods.builder.generator.query.DataObjectException - If the object is not found in the database.
com.lutris.appserver.server.sql.ObjectIdException - If an object's id can't be allocated for this object.
com.lutris.appserver.server.sql.DatabaseManagerException - If a connection to the database cannot be established, etc.
java.sql.SQLException - Should never see this exception since GenericDO.ctor(ObjectId) never accesses the database.

XPDLDataDO

protected XPDLDataDO(java.sql.ResultSet rs)
              throws java.sql.SQLException,
                     com.lutris.appserver.server.sql.ObjectIdException,
                     com.lutris.dods.builder.generator.query.DataObjectException,
                     com.lutris.appserver.server.sql.DatabaseManagerException
Protected constructor.

Parameters:
rs - Result set from which to obtain product data.
Throws:
com.lutris.dods.builder.generator.query.DataObjectException - If the object is not found in the database.
com.lutris.appserver.server.sql.ObjectIdException - If an object's id can't be allocated for this object.
com.lutris.appserver.server.sql.DatabaseManagerException - If a connection to the database cannot be established, etc.
java.sql.SQLException - If the database rejects the SQL generated to retrieve data for this object, or if the table contains a bad foreign key, etc.

XPDLDataDO

protected XPDLDataDO(java.sql.ResultSet rs,
                     com.lutris.appserver.server.sql.DBTransaction dbTrans)
              throws java.sql.SQLException,
                     com.lutris.appserver.server.sql.ObjectIdException,
                     com.lutris.dods.builder.generator.query.DataObjectException,
                     com.lutris.appserver.server.sql.DatabaseManagerException
Protected constructor.

Parameters:
rs - Result set from which to obtain product data.
dbTrans - DBTransaction object.
Throws:
com.lutris.dods.builder.generator.query.DataObjectException - If the object is not found in the database.
com.lutris.appserver.server.sql.ObjectIdException - If an object's id can't be allocated for this object.
com.lutris.appserver.server.sql.DatabaseManagerException - If a connection to the database cannot be established, etc.
java.sql.SQLException - If the database rejects the SQL generated to retrieve data for this object, or if the table contains a bad foreign key, etc.
Method Detail

get_OriginDatabase

public java.lang.String get_OriginDatabase()
Return the name of the logical database for which DO object was created.

Returns:
origin logical database name.

getTableName

public java.lang.String getTableName()
Return SHKXPDLData as the name of the table in the database which contains XPDLDataDO objects. This method overrides CoreDO.getTableName() and is used by CoreDO.executeUpdate() during error handling.

Returns:
The database table name.
See Also:
CoreDO author Jay Gunter

get_transaction

public com.lutris.appserver.server.sql.DBTransaction get_transaction()
Return transaction which DO belongs.

Returns:
DBTransaction or null if not specified.

setTransaction

protected boolean setTransaction(com.lutris.appserver.server.sql.DBTransaction trans)
Set Transaction to current DO.

Parameters:
trans - The transaction.
Returns:
true if the operation was successfully performed, otherwise false.

isReadOnly

public boolean isReadOnly()
Return information whether the data for this object has been marked read-only.

Returns:
True if the data for this object has been marked read-only.

objectIdentityType

public int objectIdentityType()
Return the type of the identity column(s) of DOs that these objects represents. This method should be overridden by derived classes.

Returns:
the identity type of DOs
See Also:
CommonConstants.OBJECT_IDENTITY_TYPE

set_Data

public void set_Data(java.lang.Object data)
Sets DO's data.

Parameters:
data - Data object.

originalData_set

public void originalData_set(java.lang.Object value)
Sets original DO's data.

Parameters:
value - Data object.

get_Data

public java.lang.Object get_Data()
Returns DO's data.

Returns:
DO's data.

getDataStruct

public XPDLDataDataStruct getDataStruct()
Deprecated. Use get_DataStruct()

Returns dataStruct.

Returns:
Data Struct object.

get_DataStruct

public XPDLDataDataStruct get_DataStruct()
Returns dataStruct.

Returns:
Data Struct object.

originalData_get

public java.lang.Object originalData_get()
Returns original DO's data.

Returns:
Original DO's data.

isLoaded

public boolean isLoaded()
isLoaded() Returns information whether object's data is loaded from database.

Returns:
true if the data for this object has been retrieved from the database.

loadData

public void loadData()
              throws java.sql.SQLException,
                     com.lutris.appserver.server.sql.ObjectIdException,
                     com.lutris.dods.builder.generator.query.DataObjectException
Load the fields for the DO from the database.

Throws:
com.lutris.appserver.server.sql.ObjectIdException - If an object's id can't be allocated for this object.
com.lutris.dods.builder.generator.query.DataObjectException - If the object is not found in the database.
java.sql.SQLException - If the database rejects the SQL generated to retrieve data for this object, or if the table contains a bad foreign key, etc.

get_statistics

public static org.enhydra.dods.statistics.Statistics get_statistics()
Get table statistics.

Returns:
Table statistics.

refreshStatistics

public static void refreshStatistics()
Refresh table statistics.


getUsedLogicalDatabases

public static java.lang.String[] getUsedLogicalDatabases()
Deprecated. Use get_UsedLogicalDatabases()

Get all used logical databases.

Returns:
Array that contains names of all used logical databases.

get_UsedLogicalDatabases

public static java.lang.String[] get_UsedLogicalDatabases()
Get all used logical databases.

Returns:
Array that contains names of all used logical databases.

readCacheConfiguration

public static void readCacheConfiguration(java.lang.String database)
                                   throws org.enhydra.dods.exceptions.CacheObjectException
Read cache configuration from application configuration file: cache size for org.enhydra.shark.repositorypersistence.data.SHKXPDLData table or default cache size.

Parameters:
database - DO's database.
Throws:
org.enhydra.dods.exceptions.CacheObjectException

isAsynchCacheLoadNeeded

public static boolean isAsynchCacheLoadNeeded()
Returns information if asynchronous cache initialization is needed or not.

Returns:
true if asynchronous cache initialization is needed, otherwise false.

getAsynchLoadPriority

public static int getAsynchLoadPriority()
Returns priority for asynchronous cache initialization. If asynchronous cache initialization is not needed, method returns value -1.

Returns:
priority for asynchronous cache initialization.

isSimpleCacheUsed

public static boolean isSimpleCacheUsed()
Returns information if simple cache is used or not.

Returns:
true if simple cache is used, otherwise false.

getCacheDodsTableName

public static java.lang.String getCacheDodsTableName()
Get name of the table that is cached.

Returns:
Name of the table that is cached.

getConfigurationAdministration

public static org.enhydra.dods.cache.ConfigurationAdministration getConfigurationAdministration()
Returns SHKXPDLData table cache.

Returns:
SHKXPDLData table cache.

refreshCache

public static void refreshCache()
                         throws java.sql.SQLException,
                                com.lutris.appserver.server.sql.DatabaseManagerException,
                                com.lutris.appserver.server.sql.ObjectIdException,
                                com.lutris.dods.builder.generator.query.DataObjectException
Queries all rows in table, and for each row creates a DO instance in the cache. For these DOs, data.readOnly = true, which causes set methods to throw an exception.

Throws:
com.lutris.dods.builder.generator.query.DataObjectException - If the object is not found in the database.
com.lutris.appserver.server.sql.ObjectIdException - If an object's id can't be allocated for this object.
com.lutris.appserver.server.sql.DatabaseManagerException - If a connection to the database cannot be established, etc.
java.sql.SQLException - If the database rejects the SQL generated to retrieve data for this object, or if the table contains a bad foreign key, etc.

disableCaching

public static void disableCaching()
                           throws java.sql.SQLException,
                                  com.lutris.appserver.server.sql.DatabaseManagerException,
                                  com.lutris.appserver.server.sql.ObjectIdException,
                                  com.lutris.dods.builder.generator.query.DataObjectException
Disable caching.

Throws:
java.sql.SQLException
com.lutris.appserver.server.sql.DatabaseManagerException
com.lutris.appserver.server.sql.ObjectIdException
com.lutris.dods.builder.generator.query.DataObjectException

enableCaching

public static void enableCaching()
                          throws java.sql.SQLException,
                                 com.lutris.appserver.server.sql.DatabaseManagerException,
                                 com.lutris.appserver.server.sql.ObjectIdException,
                                 com.lutris.dods.builder.generator.query.DataObjectException
Enable caching.

Throws:
java.sql.SQLException
com.lutris.appserver.server.sql.DatabaseManagerException
com.lutris.appserver.server.sql.ObjectIdException
com.lutris.dods.builder.generator.query.DataObjectException

addToCache

public static void addToCache(XPDLDataDataStruct newDS)
Add DataStruct object to cache. If there is no caching newDO object is returned.

Parameters:
newDS - DataStruct object that will be added to cache.
Returns:
DataStruct object added to cache.

addToCache

public void addToCache()
Add DO's original data object to cache.


updateCache

public static XPDLDataDataStruct updateCache(XPDLDataDataStruct updDS)
UpdateCache for given DataStruct object.

Parameters:
updDS - DataStruct object
Returns:
Updated or inserted DataStruct object.

updateCache

public void updateCache()
Update Cache.


deleteFromCache

public static XPDLDataDataStruct deleteFromCache(XPDLDataDataStruct data)
Delete DataStruct object from cache

Parameters:
data - DataStruct object for deleting
Returns:
Deleted DataStruct object

removeFromCache

public static void removeFromCache(java.lang.String dbName,
                                   java.lang.String handle)
Remove DataStruct object from cache.

Parameters:
dbName - Logical name of the database from which XPDLDataDataStruct object will be removed.
handle - Handle of DataStruct object which will be re moved.

deleteFromCache

public void deleteFromCache()
Delete object from cache


removeFromCache

public static XPDLDataDataStruct removeFromCache(XPDLDataDataStruct data)
Remove DataStruct from cache.

Parameters:
data - DataStruct object which will be removed.
Returns:
Removed DataStruct object or null if DataStruct object doesn't exist in the cache.

evict

public void evict()
Remove DataStruct from cache.


evict

public static void evict(XPDLDataDataStruct[] DSs)
Remove DataStruct objects from cache.

Parameters:
DSs - Array of DataStruct objects which will be removed from cache.

evict

public static void evict(java.lang.String dbName,
                         java.lang.String[] handles)
Remove DataStruct objects from cache.

Parameters:
dbName - Logical name of the database from which XPDLDataDataStruct object will be removed.
handles - array of DataStruct object handles that will be removed from cache.

refresh

public void refresh()
             throws com.lutris.dods.builder.generator.query.DataObjectException
This method is invoked whenever object needs to be loaded from database.

Throws:
com.lutris.dods.builder.generator.query.DataObjectException - If a data access error occurs.

refresh

public static void refresh(XPDLDataDO[] DOs)
                    throws com.lutris.dods.builder.generator.query.DataObjectException
This method is invoked whenever objects needs to be loaded from database.

Parameters:
DOs - Array of DOs which will be red from database.
Throws:
com.lutris.dods.builder.generator.query.DataObjectException - If a data access error occurs.

refresh

public static void refresh(java.lang.String querySnt)
                    throws com.lutris.dods.builder.generator.query.QueryException
Refresh cache by removing from the cache results of the query querySnt

Parameters:
querySnt - query used in this
Throws:
com.lutris.dods.builder.generator.query.QueryException - If a data access error occurs.

createVirgin

public static XPDLDataDO createVirgin(com.lutris.appserver.server.sql.DBTransaction dbTrans)
                               throws com.lutris.appserver.server.sql.DatabaseManagerException,
                                      com.lutris.appserver.server.sql.ObjectIdException
createVirgin(DBTransaction)

Parameters:
dbTrans - The current database transaction
Returns:
Created data object.
Throws:
com.lutris.appserver.server.sql.ObjectIdException - If an object's id can't be allocated for this object.
com.lutris.appserver.server.sql.DatabaseManagerException - If a connection to the database cannot be established, etc.

ceInternal

public static XPDLDataDO ceInternal(java.math.BigDecimal bd,
                                    com.lutris.appserver.server.sql.DBTransaction dbTrans)
                             throws java.sql.SQLException,
                                    com.lutris.appserver.server.sql.ObjectIdException,
                                    com.lutris.dods.builder.generator.query.DataObjectException,
                                    com.lutris.appserver.server.sql.DatabaseManagerException
Method ceInternal is public, only to allow generated classes to instantiate one another. Public modifier doesn't mean user application could use it - it mustn't.

Parameters:
bd - The BigDecimal representation of the ObjectId for the object.
dbTrans - The current database transaction.
Returns:
instance of XPDLDataDO or null
Throws:
java.sql.SQLException - If the database rejects the SQL generated to retrieve data for this object, or if the table contains a bad foreign key, etc.
com.lutris.appserver.server.sql.ObjectIdException - If an object's id can't be allocated for this object.
com.lutris.dods.builder.generator.query.DataObjectException - If the object is not found in the database.
com.lutris.appserver.server.sql.DatabaseManagerException - If a connection to the database cannot be established, etc.

createExisting

public static XPDLDataDO createExisting(java.math.BigDecimal bd,
                                        com.lutris.appserver.server.sql.DBTransaction dbTrans)
                                 throws java.sql.SQLException,
                                        com.lutris.appserver.server.sql.ObjectIdException,
                                        com.lutris.dods.builder.generator.query.DataObjectException,
                                        com.lutris.appserver.server.sql.DatabaseManagerException
createExisting(BigDecimal, DBTransaction)

Parameters:
bd - The BigDecimal representation of the ObjectId for the object.
dbTrans - The current database transaction.
Returns:
Created XPDLDataDO object.
Throws:
com.lutris.dods.builder.generator.query.DataObjectException - If the object is not found in the database.
com.lutris.appserver.server.sql.ObjectIdException - If an object's id can't be allocated for this object.
com.lutris.appserver.server.sql.DatabaseManagerException - If a connection to the database cannot be established, etc.
java.sql.SQLException - If the database rejects the SQL generated to retrieve data for this object, or if the table contains a bad foreign key, etc.

createExisting

public static XPDLDataDO createExisting(java.lang.String handle,
                                        com.lutris.appserver.server.sql.DBTransaction dbTrans)
createExisting(String, DBTransaction) The createExisting method is used to create a XPDLDataDO from a string handle.

Parameters:
handle - String representation of the ObjectId for the object.
dbTrans - The current database transaction.
Returns:
Created XPDLDataDO object.

ceInternal

public static XPDLDataDO ceInternal(java.lang.String handle,
                                    com.lutris.appserver.server.sql.DBTransaction dbTrans)
Method ceInternal is public, only to allow generated classes to instantiate one another. Public modifier doesn't mean user application could use it - it mustn't.

Parameters:
handle - String representation of the ObjectId for the object.
dbTrans - The current database transaction.
Returns:
instance of XPDLDataDO or null

ceInternal

public static XPDLDataDO ceInternal(com.lutris.appserver.server.sql.ObjectId id,
                                    com.lutris.appserver.server.sql.DBTransaction dbTrans)
                             throws java.sql.SQLException,
                                    com.lutris.appserver.server.sql.ObjectIdException,
                                    com.lutris.dods.builder.generator.query.DataObjectException,
                                    com.lutris.appserver.server.sql.DatabaseManagerException
ceInternal(ObjectId, DBTransaction) Factory method creates a XPDLDataDO object by searching for it in the database using the passed ObjectID value as the primary key.

Parameters:
id - The ObjectId for the object.
dbTrans - The current database transaction.
Returns:
Created XPDLDataDO object.
Throws:
com.lutris.dods.builder.generator.query.DataObjectException - If the object is not found in the database.
com.lutris.appserver.server.sql.ObjectIdException - If an object's id can't be allocated for this object.
com.lutris.appserver.server.sql.DatabaseManagerException - If a connection to the database cannot be established, etc.
java.sql.SQLException - If the database rejects the SQL generated to retrieve data for this object, or if the table contains a bad foreign key, etc.

ceInternal

protected static XPDLDataDO ceInternal(java.sql.ResultSet rs,
                                       com.lutris.appserver.server.sql.DBTransaction dbTrans)
                                throws java.sql.SQLException,
                                       com.lutris.appserver.server.sql.ObjectIdException,
                                       com.lutris.dods.builder.generator.query.DataObjectException,
                                       com.lutris.appserver.server.sql.DatabaseManagerException
ceInternal(ResultSet, DBTransaction)

Parameters:
rs - The ResultSet returned by the Query class for an existing Data Object stored in the database.
dbTrans - The current database transaction
Returns:
Created XPDLDataDO object.
Throws:
com.lutris.dods.builder.generator.query.DataObjectException - If the object is not found in the database.
com.lutris.appserver.server.sql.ObjectIdException - If an object's id can't be allocated for this object.
com.lutris.appserver.server.sql.DatabaseManagerException - If a connection to the database cannot be established, etc.
java.sql.SQLException - If the database rejects the SQL generated to retrieve data for this object, or if the table contains a bad foreign key, etc.

ceInternal

protected static XPDLDataDO ceInternal(com.lutris.dods.builder.generator.query.RDBRow row,
                                       com.lutris.appserver.server.sql.DBTransaction dbTrans)
                                throws java.sql.SQLException,
                                       com.lutris.appserver.server.sql.ObjectIdException,
                                       com.lutris.dods.builder.generator.query.DataObjectException,
                                       com.lutris.appserver.server.sql.DatabaseManagerException
ceInternal( RDBRow , DBTransaction) Factory method creates a XPDLDataDO object by searching for it in the database using the XPDLDataDO.PrimaryKey value in the passed RDBRow.

Parameters:
row - A row returned by QueryBuilder.getNextRow().
dbTrans - The current database transaction.
Returns:
Created XPDLDataDO object.
Throws:
com.lutris.dods.builder.generator.query.DataObjectException - If the RDBRow does not contain a XPDLDataDO.PrimaryKey. If the object is not found in the database.
com.lutris.appserver.server.sql.ObjectIdException - If an object's id can't be allocated for this object.
com.lutris.appserver.server.sql.DatabaseManagerException - If a connection to the database cannot be established, etc.
java.sql.SQLException - If the database rejects the SQL generated to retrieve data for this object, or if the table contains a bad foreign key, etc.

ceInternal

protected static XPDLDataDO ceInternal(com.lutris.dods.builder.generator.query.RDBColumnValue pk,
                                       com.lutris.appserver.server.sql.DBTransaction dbTrans)
                                throws java.sql.SQLException,
                                       com.lutris.appserver.server.sql.ObjectIdException,
                                       com.lutris.dods.builder.generator.query.DataObjectException,
                                       com.lutris.appserver.server.sql.DatabaseManagerException
ceInternal( RDBColumnValue, DBTransaction ) Factory method creates a XPDLDataDO object by searching for it in the database using the passed XPDLDataDO.PrimaryKey.

Parameters:
pk - a PrimaryKey column value from a row that was returned by QueryBuilder.getNextRow().
dbTrans - The current database transaction.
Returns:
Created XPDLDataDO object.
Throws:
com.lutris.dods.builder.generator.query.DataObjectException - If the RDBColumnValue does not contain a XPDLDataDO.PrimaryKey. If the object is not found in the database.
com.lutris.appserver.server.sql.ObjectIdException - If an object's id can't be allocated for this object.
com.lutris.appserver.server.sql.DatabaseManagerException - If a connection to the database cannot be established, etc.
java.sql.SQLException - If the database rejects the SQL generated to retrieve data for this object, or if the table contains a bad foreign key, etc.

createCopy

public static XPDLDataDO createCopy(XPDLDataDataStruct data,
                                    com.lutris.appserver.server.sql.DBTransaction dbTrans)
                             throws com.lutris.appserver.server.sql.DatabaseManagerException,
                                    com.lutris.appserver.server.sql.ObjectIdException
Creates a DO that has no ObjectId but has a copy of an existing DO's data. Such a DO is used to insert a new database entry that is largely similar to an existing entry.

Parameters:
data - The data struct to copy values from.
dbTrans - The current database transaction
Returns:
Created XPDLDataDO object.
Throws:
com.lutris.appserver.server.sql.ObjectIdException - If an object's id can't be allocated for this object.
com.lutris.appserver.server.sql.DatabaseManagerException - If a connection to the database cannot be established, etc.

createCopy

public static XPDLDataDO createCopy(XPDLDataDO orig)
                             throws com.lutris.appserver.server.sql.DatabaseManagerException,
                                    com.lutris.appserver.server.sql.ObjectIdException
Creates a DO that has no ObjectId but has a copy of an existing DO's data. Such a DO is used to insert a new database entry that is largely similar to an existing entry.

Parameters:
orig - The original DO to copy.
Returns:
Created XPDLDataDO object.
Throws:
com.lutris.appserver.server.sql.ObjectIdException - If an object's id can't be allocated for this object.
com.lutris.appserver.server.sql.DatabaseManagerException - If a connection to the database cannot be established, etc.

createCopy

public static XPDLDataDO createCopy(XPDLDataDO orig,
                                    com.lutris.appserver.server.sql.DBTransaction dbTrans)
                             throws com.lutris.appserver.server.sql.DatabaseManagerException,
                                    com.lutris.appserver.server.sql.ObjectIdException
Parameters:
orig - The original DO to copy.
dbTrans - The current database transaction
Returns:
Created XPDLDataDO object.
Throws:
com.lutris.appserver.server.sql.ObjectIdException - If an object's id can't be allocated for this object.
com.lutris.appserver.server.sql.DatabaseManagerException - If a connection to the database cannot be established, etc.

reload

public void reload()
Causes the DO to refresh itself from the database the next time a set or get method is called.


get_Handle

public java.lang.String get_Handle()
                            throws com.lutris.appserver.server.sql.DatabaseManagerException
The methods get_Handle hasMatchingHandle findCachedObjectByHandle are used by Presentation Objects that need to populate HTML select lists with Data Objects as options. The get_Handle() method is used to set the value for each option, and the hasMatchingHandle() methods are used to lookup the Data Object when the selection has been made.

Returns:
id of this DO as a string If an object's id can't be allocated for this object.
Throws:
com.lutris.appserver.server.sql.DatabaseManagerException - If a connection to the database cannot be established, etc.

get_CacheHandle

public java.lang.String get_CacheHandle()
                                 throws com.lutris.appserver.server.sql.DatabaseManagerException
Returns cache handle.

Returns:
cache handle.
Throws:
com.lutris.appserver.server.sql.DatabaseManagerException - If a connection to the database cannot be established, etc.

createDO

public static com.lutris.dods.builder.generator.dataobject.GenericDO createDO(com.lutris.appserver.server.sql.ObjectId oid,
                                                                              com.lutris.appserver.server.sql.DBTransaction dbTrans)
                                                                       throws java.sql.SQLException,
                                                                              com.lutris.appserver.server.sql.ObjectIdException,
                                                                              com.lutris.dods.builder.generator.query.DataObjectException,
                                                                              com.lutris.appserver.server.sql.DatabaseManagerException
Created DO with specified OID.

Parameters:
oid - DO's oid.
dbTrans - The current database transaction.
Returns:
copy of DO (with the same id).
Throws:
java.sql.SQLException
com.lutris.appserver.server.sql.ObjectIdException
com.lutris.dods.builder.generator.query.DataObjectException
com.lutris.appserver.server.sql.DatabaseManagerException - If a connection to the database cannot be established, etc.

hasMatchingHandle

public boolean hasMatchingHandle(java.lang.String handle)
Compare string version of the id of this DO and handle.

Parameters:
handle - String version of DO id.
Returns:
boolean True if the string version of the id of this DO matches passed handle.
See Also:
get_Handle

findTransactionCachedObjectByHandle

public XPDLDataDO findTransactionCachedObjectByHandle(java.lang.String cacheHandle)
Get data object with key cacheHandle from the cache.

Parameters:
cacheHandle - String version of concatenation of: name of the data object's database, followed by '.', followed by data object's id.
Returns:
XPDLDataDO Object if one is found in cache, otherwise null.
See Also:
get_Handle

findCachedObjectByHandle

public static XPDLDataDataStruct findCachedObjectByHandle(java.lang.String cacheHandle)
Get DataStruct object with key cacheHandle from the cache.

Parameters:
cacheHandle - String version of concatenation of: name of the data object's database, followed by '.', followed by data object's id.
Returns:
XPDLDataDataStruct Object if one is found in cache, otherwise null.
See Also:
get_Handle

makeIdentical

protected void makeIdentical(XPDLDataDO orig)
Assigns the DataStruct of an existing DO to this DO. Does not duplicate data. Just assigns the reference.

Parameters:
orig - The original DO.

get_Version

public int get_Version()
get_Version makes the protected method public in CoreDO.

Returns:
Data object's version.

get_NewVersion

public int get_NewVersion()
get_NewVersion overloaded

Returns:
Data object's version.

set_Version

public void set_Version(int _ver)
set_Version overloaded.

Parameters:
_ver - DO's version.

set_NewVersion

public void set_NewVersion(int _ver)
set_NewVersion overloaded.

Parameters:
_ver - Ignored.

makeReadOnly

public void makeReadOnly()
Mark the object as read-only. WebDocWf extension


makeReadWrite

public void makeReadWrite()
Mark the object as read-write. WebDocWf extension


retrieveFromTxCache

public static XPDLDataDO retrieveFromTxCache(com.lutris.appserver.server.sql.CachedDBTransaction cbt,
                                             java.lang.Object handle)
Return Object with the handle key from reference objects HashMap.

Parameters:
handle - DO's handle.
cbt - CachedDBTransaction
Returns:
Object with the handle key from reference objects HashMap.

get_OId

public com.lutris.appserver.server.sql.ObjectId get_OId()
Returns this object's identifier.

Returns:
this object's identifier.

set_OId

protected void set_OId(com.lutris.appserver.server.sql.ObjectId _oId)
Sets this object's identifier.

Parameters:
_oId - this object's identifier.

cloneUnique

public java.lang.Object cloneUnique()
                             throws com.lutris.appserver.server.sql.DatabaseManagerException,
                                    com.lutris.appserver.server.sql.ObjectIdException
Creates a clone of the object, but ensures that a new and unique object id is created for the object and that the version number is set to zero.

Returns:
Cloned object.
Throws:
com.lutris.appserver.server.sql.DatabaseManagerException - if an error occurs while allocation a new object id from the default logical database.
com.lutris.appserver.server.sql.ObjectIdException - if a new object id could not be allocated.

isDeleted

public boolean isDeleted()
Returns the value of delete tag.

Returns:
true if DO has been deleted, but not commited yet

setDeleted

public void setDeleted(boolean flag)
Sets the value of delete tag.

Parameters:
flag - true if DO has been deleted, but not commited yet.

finalizeInsert

public void finalizeInsert(boolean success)
If transaction succeeded marks this object as clean.

Specified by:
finalizeInsert in interface com.lutris.appserver.server.sql.Transaction
Parameters:
success - true if the transaction succeeded and this object was successfully inserted into the database.

finalizeUpdate

public void finalizeUpdate(boolean success)
If transaction succeeded marks this object as clean.

Specified by:
finalizeUpdate in interface com.lutris.appserver.server.sql.Transaction
Parameters:
success - true if the transaction succeeded and this object was successfully updated in the database.

finalizeDelete

public void finalizeDelete(boolean success)
Currently does nothing.

Specified by:
finalizeDelete in interface com.lutris.appserver.server.sql.Transaction
Parameters:
success - true if the transaction succeeded and this object was successfully deleted from the database.

isVirgin

public boolean isVirgin()
Returns information whether the DO is created virgin and hasn't been commited yet.

Returns:
true for DO that's created virgin and hasn't been commited yet.

makeVisible

public void makeVisible()
Make DO's data from cache visible.


makeInvisible

public void makeInvisible()
Make DO's data from cache Invisible.


executeInsert

public void executeInsert(com.lutris.appserver.server.sql.DBConnection conn)
                   throws java.sql.SQLException
Inserts this object into the database.

Specified by:
executeInsert in interface com.lutris.appserver.server.sql.Transaction
Parameters:
conn - the database connection.
Throws:
java.sql.SQLException - if a database access error occurs.
com.lutris.appserver.server.sql.DBRowUpdateException - If a version error occurs.

executeUpdate

public void executeUpdate(com.lutris.appserver.server.sql.DBConnection conn)
                   throws java.sql.SQLException
Specified by:
executeUpdate in interface com.lutris.appserver.server.sql.Transaction
Throws:
java.sql.SQLException

isAutoSave

protected boolean isAutoSave()
Returns value for AutoSave.

Returns:
true if AutoSave is on, otherwise false.

isAutoSaveCreateVirgin

protected boolean isAutoSaveCreateVirgin()
Returns value for AutoSaveCreateVirgin.

Returns:
true if AutoSaveCreateVirgin is on, otherwise false.

isTransactionCheck

protected boolean isTransactionCheck()
Returns value for TransactionCheck.

Returns:
true if TransactionCheck is on, otherwise false.

isTransactionCaches

protected boolean isTransactionCaches()
Returns value for TransactionCaches.

Returns:
true if TransactionCaches are on, otherwise false.

isDeleteCheckVersion

protected boolean isDeleteCheckVersion()
Returns value for DeleteCheckVersion.

Returns:
true if DeleteCheckVersion is on, otherwise false.

isAllReadOnly

protected static boolean isAllReadOnly()
Returns value for AllReadOnly.

Returns:
true if AllReadOnly is on, otherwise false.

checkLoad

protected void checkLoad()
                  throws com.lutris.dods.builder.generator.query.DataObjectException
Load the actual DO data if necessary. Called by get/set methods.

Throws:
com.lutris.dods.builder.generator.query.DataObjectException - If a data access error occurs.

undo

public void undo()
          throws com.lutris.dods.builder.generator.query.DataObjectException
Undo action.

Throws:
com.lutris.dods.builder.generator.query.DataObjectException

dumpData

public void dumpData(boolean incrementVersion)
dumpData action.

Parameters:
incrementVersion - Increment version.

reloadData

public void reloadData()
                throws java.sql.SQLException,
                       com.lutris.appserver.server.sql.ObjectIdException,
                       com.lutris.dods.builder.generator.query.DataObjectException
reloadData discards all changes application made to this object, and goes into database to fetch contents there. Object itself becomes clean as if no changes were made.

Throws:
com.lutris.appserver.server.sql.ObjectIdException - If an object's id can't be allocated for this object.
com.lutris.dods.builder.generator.query.DataObjectException - If the object is not found in the database.
java.sql.SQLException - If the database rejects the SQL generated to retrieve data for this object, or if the table contains a bad foreign key, etc.

hashCode

public int hashCode()

writeXML

public void writeXML(java.io.Writer ow)
              throws com.lutris.dods.builder.generator.query.DataObjectException
Throws:
com.lutris.dods.builder.generator.query.DataObjectException

equals

public boolean equals(java.lang.Object obj)

getXPDLContent

public byte[] getXPDLContent()
                      throws com.lutris.dods.builder.generator.query.DataObjectException
Get XPDLContent of the SHKXPDLData.

Specified by:
getXPDLContent in interface XPDLDataDOI
Returns:
XPDLContent of the SHKXPDLData.
Throws:
com.lutris.dods.builder.generator.query.DataObjectException - If the object is not found in the database.

originalData_getXPDLContent

public byte[] originalData_getXPDLContent()
                                   throws com.lutris.dods.builder.generator.query.DataObjectException
Get original value of XPDLContent from the SHKXPDLData.

Returns:
XPDLContent of the SHKXPDLData.
Throws:
com.lutris.dods.builder.generator.query.DataObjectException - If the object is not found in the database.

setXPDLContent

public void setXPDLContent(byte[] value)
                    throws com.lutris.dods.builder.generator.query.DataObjectException
Set XPDLContent of the SHKXPDLData.

Specified by:
setXPDLContent in interface XPDLDataDOI
Parameters:
value - for the XPDLContent of the SHKXPDLData.
Throws:
com.lutris.dods.builder.generator.query.DataObjectException - If the object is not found in the database.

_setXPDLContent

protected void _setXPDLContent(byte[] value)
                        throws com.lutris.dods.builder.generator.query.DataObjectException
_setXPDLContent is a protected method that is called by setXPDLContent if XPDLContent is not part of a multicolumn foreign key.

Parameters:
value - for the XPDLContent of the SHKXPDLData.
Throws:
com.lutris.dods.builder.generator.query.DataObjectException - If the object is not found in the database.

getXPDLClassContent

public byte[] getXPDLClassContent()
                           throws com.lutris.dods.builder.generator.query.DataObjectException
Get XPDLClassContent of the SHKXPDLData.

Specified by:
getXPDLClassContent in interface XPDLDataDOI
Returns:
XPDLClassContent of the SHKXPDLData.
Throws:
com.lutris.dods.builder.generator.query.DataObjectException - If the object is not found in the database.

originalData_getXPDLClassContent

public byte[] originalData_getXPDLClassContent()
                                        throws com.lutris.dods.builder.generator.query.DataObjectException
Get original value of XPDLClassContent from the SHKXPDLData.

Returns:
XPDLClassContent of the SHKXPDLData.
Throws:
com.lutris.dods.builder.generator.query.DataObjectException - If the object is not found in the database.

setXPDLClassContent

public void setXPDLClassContent(byte[] value)
                         throws com.lutris.dods.builder.generator.query.DataObjectException
Set XPDLClassContent of the SHKXPDLData.

Specified by:
setXPDLClassContent in interface XPDLDataDOI
Parameters:
value - for the XPDLClassContent of the SHKXPDLData.
Throws:
com.lutris.dods.builder.generator.query.DataObjectException - If the object is not found in the database.

_setXPDLClassContent

protected void _setXPDLClassContent(byte[] value)
                             throws com.lutris.dods.builder.generator.query.DataObjectException
_setXPDLClassContent is a protected method that is called by setXPDLClassContent if XPDLClassContent is not part of a multicolumn foreign key.

Parameters:
value - for the XPDLClassContent of the SHKXPDLData.
Throws:
com.lutris.dods.builder.generator.query.DataObjectException - If the object is not found in the database.

getXPDL

public XPDLDO getXPDL()
               throws com.lutris.dods.builder.generator.query.DataObjectException
Get XPDL of the SHKXPDLData.

Specified by:
getXPDL in interface XPDLDataDOI
Returns:
XPDL of the SHKXPDLData.
Throws:
com.lutris.dods.builder.generator.query.DataObjectException - If the object is not found in the database.

objectId_getXPDL

public com.lutris.appserver.server.sql.ObjectId objectId_getXPDL()
                                                          throws com.lutris.dods.builder.generator.query.DataObjectException
Get BigDecimal value of XPDL of the SHKXPDLData.

Returns:
XPDL of the SHKXPDLData.
Throws:
com.lutris.dods.builder.generator.query.DataObjectException - If the object is not found in the database.

oid_getXPDL

public java.math.BigDecimal oid_getXPDL()
                                 throws com.lutris.dods.builder.generator.query.DataObjectException
Get BigDecimal value of XPDL of the SHKXPDLData.

Returns:
XPDL of the SHKXPDLData.
Throws:
com.lutris.dods.builder.generator.query.DataObjectException - If the object is not found in the database.

originalData_getXPDL

public XPDLDO originalData_getXPDL()
                            throws com.lutris.dods.builder.generator.query.DataObjectException
Get original value of XPDL from the SHKXPDLData.

Returns:
XPDL of the SHKXPDLData.
Throws:
com.lutris.dods.builder.generator.query.DataObjectException - If the object is not found in the database.

originalData_objectId_getXPDL

public com.lutris.appserver.server.sql.ObjectId originalData_objectId_getXPDL()
                                                                       throws com.lutris.dods.builder.generator.query.DataObjectException
Get BigDecimal value of XPDL of the SHKXPDLData.

Returns:
XPDL of the SHKXPDLData.
Throws:
com.lutris.dods.builder.generator.query.DataObjectException - If the object is not found in the database.

originalData_oid_getXPDL

public java.math.BigDecimal originalData_oid_getXPDL()
                                              throws com.lutris.dods.builder.generator.query.DataObjectException
Get BigDecimal value of XPDL of the SHKXPDLData.

Returns:
XPDL of the SHKXPDLData.
Throws:
com.lutris.dods.builder.generator.query.DataObjectException - If the object is not found in the database.

setXPDL

public void setXPDL(XPDLDO value)
             throws com.lutris.dods.builder.generator.query.DataObjectException
Set XPDL of the SHKXPDLData.

Specified by:
setXPDL in interface XPDLDataDOI
Parameters:
value - for the XPDL of the SHKXPDLData.
Throws:
com.lutris.dods.builder.generator.query.DataObjectException - If the object is not found in the database.

_setXPDL

protected void _setXPDL(XPDLDO value)
                 throws com.lutris.dods.builder.generator.query.DataObjectException
_setXPDL is a protected method that is called by setXPDL if XPDL is not part of a multicolumn foreign key.

Parameters:
value - for the XPDL of the SHKXPDLData.
Throws:
com.lutris.dods.builder.generator.query.DataObjectException - If the object is not found in the database.

oid_setXPDL

public void oid_setXPDL(com.lutris.appserver.server.sql.ObjectId value)
                 throws com.lutris.dods.builder.generator.query.DataObjectException
Set value for the XPDL of the SHKXPDLData.

Parameters:
value - of XPDL of the SHKXPDLData as a ObjectId value.
Throws:
com.lutris.dods.builder.generator.query.DataObjectException - If the object is not found in the database.

oid_setXPDL

public void oid_setXPDL(java.math.BigDecimal value)
                 throws com.lutris.dods.builder.generator.query.DataObjectException
Set XPDL of the SHKXPDLData.

Parameters:
value - of XPDL of the SHKXPDLData as a BigDecimal value.
Throws:
com.lutris.dods.builder.generator.query.DataObjectException - If the object is not found in the database.

oid_setXPDL

public void oid_setXPDL(java.lang.String value)
                 throws com.lutris.dods.builder.generator.query.DataObjectException
Set XPDL of the SHKXPDLData.

Parameters:
value - of XPDL of the SHKXPDLData as a String value.
Throws:
com.lutris.dods.builder.generator.query.DataObjectException - If the object is not found in the database.

getCNT

public java.math.BigDecimal getCNT()
                            throws com.lutris.dods.builder.generator.query.DataObjectException
Get CNT of the SHKXPDLData.

Specified by:
getCNT in interface XPDLDataDOI
Returns:
CNT of the SHKXPDLData.
Throws:
com.lutris.dods.builder.generator.query.DataObjectException - If the object is not found in the database.

originalData_getCNT

public java.math.BigDecimal originalData_getCNT()
                                         throws com.lutris.dods.builder.generator.query.DataObjectException
Get original value of CNT from the SHKXPDLData.

Returns:
CNT of the SHKXPDLData.
Throws:
com.lutris.dods.builder.generator.query.DataObjectException - If the object is not found in the database.

setCNT

public void setCNT(java.math.BigDecimal value)
            throws com.lutris.dods.builder.generator.query.DataObjectException
Set CNT of the SHKXPDLData.

Specified by:
setCNT in interface XPDLDataDOI
Parameters:
value - for the CNT of the SHKXPDLData.
Throws:
com.lutris.dods.builder.generator.query.DataObjectException - If the object is not found in the database.

_setCNT

protected void _setCNT(java.math.BigDecimal value)
                throws com.lutris.dods.builder.generator.query.DataObjectException
_setCNT is a protected method that is called by setCNT if CNT is not part of a multicolumn foreign key.

Parameters:
value - for the CNT of the SHKXPDLData.
Throws:
com.lutris.dods.builder.generator.query.DataObjectException - If the object is not found in the database.

compareCond

public boolean compareCond(org.enhydra.dods.cache.Condition cond)
Compares whether this DO satisfies condition cond.

Parameters:
cond - condition.
Returns:
true if DO satisfies condition cond, otherwise false.

setLogicalDBName

public static void setLogicalDBName(java.lang.String logicalDbNameInConfFile)
Deprecated. It is dangeruous to use this method in multiuser environment because, this setings are applied to all users (sets logical database to all users)

setLogicalDBName sets the logical database name that will be used to create DBTransaction and DBQuery objects used by XPDLDataDO and the corresponding Query class.

Parameters:
logicalDbNameInConfFile - The logical database specified in the application's .conf file.

get_logicalDBName

public static java.lang.String get_logicalDBName()
get_logicalDBName retrieves the logical database name set by setLogicalDBName().

Returns:
the logical database name that was set by method setLogicalDBName()

createTransaction

public static com.lutris.appserver.server.sql.DBTransaction createTransaction()
                                                                       throws com.lutris.appserver.server.sql.DatabaseManagerException,
                                                                              java.sql.SQLException
createTransaction() creates a new DBTransaction. This method uses the logical database name set by method setLogicalDBName(). If setLogicalDBName() was used to set the logical database name to something other than the value of DatabaseManager.DefaultDatabase in the application's .conf file, then any DBTransaction passed to save(DBTransaction) or delete(DBTransaction) should be created using XPDLDataDO.createTransaction(). The XPDLDataDO save() and delete() methods use this method.

Returns:
A DBTransaction object to use with the XPDLDataDO class.
Throws:
com.lutris.appserver.server.sql.DatabaseManagerException - If a connection to the database cannot be established, etc.
java.sql.SQLException - If the database rejects the SQL generated to retrieve data for this object, or if the table contains a bad foreign key, etc.

createQuery

public static com.lutris.appserver.server.sql.DBQuery createQuery(com.lutris.appserver.server.sql.DBTransaction trans)
                                                           throws com.lutris.appserver.server.sql.DatabaseManagerException,
                                                                  java.sql.SQLException
createQuery() creates a new DBQuery. This method uses the logical database name set by method setLogicalDBName(). If setLogicalDBName() was used to set the logical database name to something other than the value of DatabaseManager.DefaultDatabase in the application's .conf file, then any DBQuery object used to access the 'SHKXPDLData' table should be created using XPDLDataDO.createQuery(). The Query class corresponding to XPDLDataDO uses this method.

Parameters:
trans - DBTransaction
Returns:
A DBQuery object to use in accessing the 'SHKXPDLData' table.
Throws:
com.lutris.appserver.server.sql.DatabaseManagerException - If a connection to the database cannot be established, etc.
java.sql.SQLException - If the database rejects the SQL generated to retrieve data for this object, or if the table contains a bad foreign key, etc.

getInsertStatement

public java.sql.PreparedStatement getInsertStatement(com.lutris.appserver.server.sql.DBConnection conn)
                                              throws java.sql.SQLException
Prepares the statement used to insert this object into the database.

Parameters:
conn - The database connection.
Returns:
The insert statement.
Throws:
java.sql.SQLException - if an error occurs.

doCheck

public void doCheck(boolean value)
Specifies whether to lock this DO (row) in database just before commit. Locking is attempted via "dummy" update: "update set version=OLD_ONE where OID=X and version=OLD_ONE".

Parameters:
value - true for locking, false otherwise

doLock

public void doLock()
            throws java.sql.SQLException
Locks this DO in database by performing "update set version=OLD_ONE where OID=X and version=OLD_ONE".

Throws:
java.sql.SQLException - If the database rejects the SQL generated to retrieve data for this object, or if the table contains a bad foreign key, etc.

doTouch

public void doTouch()
             throws java.sql.SQLException,
                    com.lutris.appserver.server.sql.DatabaseManagerException,
                    com.lutris.appserver.server.sql.ObjectIdException,
                    com.lutris.dods.builder.generator.query.DataObjectException
Locks this DO in database by performing "update set version=INCREMENTED where OID=X and version=OLD_ONE".

Throws:
com.lutris.appserver.server.sql.DatabaseManagerException - If a connection to the database cannot be established, etc.
java.sql.SQLException - If the database rejects the SQL generated to retrieve data for this object, or if the table contains a bad foreign key, etc.
com.lutris.appserver.server.sql.ObjectIdException
com.lutris.dods.builder.generator.query.DataObjectException

executeLockingStatement

public void executeLockingStatement(com.lutris.appserver.server.sql.DBConnection conn)
                             throws java.sql.SQLException
Prepares and executes the statement used to lock this object in the database.

Parameters:
conn - The database connection
Throws:
java.sql.SQLException - if an error occurs.

getUpdateStatement

public java.sql.PreparedStatement getUpdateStatement(com.lutris.appserver.server.sql.DBConnection conn)
                                              throws java.sql.SQLException
Prepares the statement used to update this object in the database.

Parameters:
conn - The database connection
Returns:
The update statement.
Throws:
java.sql.SQLException - if an error occurs.

getDeleteStatement

public java.sql.PreparedStatement getDeleteStatement(com.lutris.appserver.server.sql.DBConnection conn)
                                              throws java.sql.SQLException
Prepares the statement used to delete this object from the database.

Parameters:
conn - The database connection
Returns:
The delete statement.
Throws:
java.sql.SQLException - if an error occurs.

toString

public java.lang.String toString()

toString

public java.lang.String toString(int indentCount)

okToCommit

protected void okToCommit()
                   throws com.lutris.dods.builder.generator.query.RefAssertionException
A stub method for implementing pre-commit assertions for this XPDLDataDO. Implement this stub to throw an RefAssertionException for cases where this object is not valid for writing to the database.

Throws:
com.lutris.dods.builder.generator.query.RefAssertionException

okToDelete

protected void okToDelete()
                   throws com.lutris.dods.builder.generator.query.RefAssertionException
A stub method for implementing pre-delete assertions for this XPDLDataDO. Implement this stub to throw an RefAssertionException for cases where this object is not valid for deletion from the database.

Throws:
com.lutris.dods.builder.generator.query.RefAssertionException

commit

public void commit()
            throws java.sql.SQLException,
                   com.lutris.appserver.server.sql.DatabaseManagerException,
                   com.lutris.dods.builder.generator.query.DataObjectException,
                   com.lutris.dods.builder.generator.query.RefAssertionException,
                   com.lutris.appserver.server.sql.DBRowUpdateException,
                   com.lutris.dods.builder.generator.query.QueryException
Deprecated. Use save() instead.

Inserts/Updates the DO into its table.

Specified by:
commit in interface XPDLDataDOI
Throws:
com.lutris.appserver.server.sql.DatabaseManagerException - If a Transaction can not be created.
com.lutris.dods.builder.generator.query.RefAssertionException - Thrown by okTo method.
java.sql.SQLException - If any SQL errors occur.
com.lutris.dods.builder.generator.query.DataObjectException
com.lutris.appserver.server.sql.DBRowUpdateException
com.lutris.dods.builder.generator.query.QueryException

commit

public void commit(com.lutris.appserver.server.sql.DBTransaction dbt)
            throws java.sql.SQLException,
                   com.lutris.appserver.server.sql.DatabaseManagerException,
                   com.lutris.dods.builder.generator.query.DataObjectException,
                   com.lutris.dods.builder.generator.query.RefAssertionException,
                   com.lutris.appserver.server.sql.DBRowUpdateException,
                   com.lutris.dods.builder.generator.query.QueryException
Deprecated. Use save() instead.

Inserts/Updates the DO into its table. The transaction is likely provided by the commit() method of another DO which references this DO.

Specified by:
commit in interface XPDLDataDOI
Parameters:
dbt - The transaction object used for this operation.
Throws:
com.lutris.appserver.server.sql.DatabaseManagerException - If a Transaction can not be created.
com.lutris.dods.builder.generator.query.RefAssertionException - Thrown by okTo method.
java.sql.SQLException - If any SQL errors occur.
com.lutris.dods.builder.generator.query.DataObjectException
com.lutris.appserver.server.sql.DBRowUpdateException
com.lutris.dods.builder.generator.query.QueryException

save

public void save()
          throws java.sql.SQLException,
                 com.lutris.appserver.server.sql.DatabaseManagerException,
                 com.lutris.dods.builder.generator.query.DataObjectException,
                 com.lutris.dods.builder.generator.query.RefAssertionException,
                 com.lutris.appserver.server.sql.DBRowUpdateException,
                 com.lutris.dods.builder.generator.query.QueryException
Inserts/Updates the DO into its table.

Specified by:
save in interface XPDLDataDOI
Throws:
com.lutris.appserver.server.sql.DatabaseManagerException - If a Transaction can not be created.
com.lutris.dods.builder.generator.query.RefAssertionException - Thrown by okTo method.
java.sql.SQLException - If any SQL errors occur.
com.lutris.dods.builder.generator.query.DataObjectException
com.lutris.appserver.server.sql.DBRowUpdateException
com.lutris.dods.builder.generator.query.QueryException - WebDocWf extension

save

public void save(boolean references)
          throws java.sql.SQLException,
                 com.lutris.appserver.server.sql.DatabaseManagerException,
                 com.lutris.dods.builder.generator.query.DataObjectException,
                 com.lutris.dods.builder.generator.query.RefAssertionException,
                 com.lutris.appserver.server.sql.DBRowUpdateException,
                 com.lutris.dods.builder.generator.query.QueryException
Inserts/Updates the DO into its table.

Parameters:
references - True if references should be saved with this DO.
Throws:
com.lutris.appserver.server.sql.DatabaseManagerException - If a Transaction can not be created.
com.lutris.dods.builder.generator.query.RefAssertionException - Thrown by okTo method.
java.sql.SQLException - If any SQL errors occur.
com.lutris.dods.builder.generator.query.DataObjectException
com.lutris.appserver.server.sql.DBRowUpdateException
com.lutris.dods.builder.generator.query.QueryException - WebDocWf extension

save

public void save(com.lutris.appserver.server.sql.DBTransaction dbt)
          throws java.sql.SQLException,
                 com.lutris.appserver.server.sql.DatabaseManagerException,
                 com.lutris.dods.builder.generator.query.DataObjectException,
                 com.lutris.dods.builder.generator.query.RefAssertionException,
                 com.lutris.appserver.server.sql.DBRowUpdateException,
                 com.lutris.dods.builder.generator.query.QueryException
Inserts/Updates the DO into its table. The transaction is likely provided by the commit() method of another DO which references this DO.

Specified by:
save in interface XPDLDataDOI
Parameters:
dbt - The transaction object used for this operation.
Throws:
com.lutris.appserver.server.sql.DatabaseManagerException - If a Transaction can not be created.
com.lutris.dods.builder.generator.query.RefAssertionException - Thrown by okTo method.
java.sql.SQLException - If any SQL errors occur.
com.lutris.dods.builder.generator.query.DataObjectException
com.lutris.appserver.server.sql.DBRowUpdateException
com.lutris.dods.builder.generator.query.QueryException - WebDocWf extension

save

public void save(com.lutris.appserver.server.sql.DBTransaction dbt,
                 boolean references)
          throws java.sql.SQLException,
                 com.lutris.appserver.server.sql.DatabaseManagerException,
                 com.lutris.dods.builder.generator.query.DataObjectException,
                 com.lutris.dods.builder.generator.query.RefAssertionException,
                 com.lutris.appserver.server.sql.DBRowUpdateException,
                 com.lutris.dods.builder.generator.query.QueryException
Inserts/Updates the DO into its table. The transaction is likely provided by the commit() method of another DO which references this DO.

Parameters:
dbt - The transaction object used for this operation.
references - True if references of this DO should be saved.
Throws:
com.lutris.appserver.server.sql.DatabaseManagerException - If a Transaction can not be created.
com.lutris.dods.builder.generator.query.RefAssertionException - Thrown by okTo method.
java.sql.SQLException - If any SQL errors occur.
com.lutris.dods.builder.generator.query.DataObjectException
com.lutris.appserver.server.sql.DBRowUpdateException
com.lutris.dods.builder.generator.query.QueryException - WebDocWf extension

delete

public void delete()
            throws java.sql.SQLException,
                   com.lutris.appserver.server.sql.DatabaseManagerException,
                   com.lutris.dods.builder.generator.query.DataObjectException,
                   com.lutris.dods.builder.generator.query.RefAssertionException,
                   com.lutris.appserver.server.sql.DBRowUpdateException,
                   com.lutris.dods.builder.generator.query.QueryException
Deletes the DO from its table.

Specified by:
delete in interface XPDLDataDOI
Throws:
com.lutris.appserver.server.sql.DatabaseManagerException - If a Transaction can not be created.
com.lutris.dods.builder.generator.query.RefAssertionException - Thrown by okTo method.
java.sql.SQLException - If any SQL errors occur.
com.lutris.dods.builder.generator.query.DataObjectException
com.lutris.appserver.server.sql.DBRowUpdateException
com.lutris.dods.builder.generator.query.QueryException

delete

public void delete(com.lutris.appserver.server.sql.DBTransaction dbt)
            throws java.sql.SQLException,
                   com.lutris.appserver.server.sql.DatabaseManagerException,
                   com.lutris.dods.builder.generator.query.DataObjectException,
                   com.lutris.dods.builder.generator.query.RefAssertionException,
                   com.lutris.appserver.server.sql.DBRowUpdateException,
                   com.lutris.dods.builder.generator.query.QueryException
Deletes the DO from its table.

Specified by:
delete in interface XPDLDataDOI
Parameters:
dbt - The transaction object used for this operation.
Throws:
com.lutris.appserver.server.sql.DatabaseManagerException - If a Transaction can not be created.
com.lutris.dods.builder.generator.query.RefAssertionException - Thrown by okTo method.
java.sql.SQLException - If any SQL errors occur.
com.lutris.dods.builder.generator.query.DataObjectException
com.lutris.appserver.server.sql.DBRowUpdateException
com.lutris.dods.builder.generator.query.QueryException

unDelete

public void unDelete()
              throws java.sql.SQLException,
                     com.lutris.appserver.server.sql.DatabaseManagerException,
                     com.lutris.dods.builder.generator.query.DataObjectException,
                     com.lutris.dods.builder.generator.query.RefAssertionException,
                     com.lutris.appserver.server.sql.DBRowUpdateException,
                     com.lutris.dods.builder.generator.query.QueryException
UnDeletes the DO and inserts to the table.

Throws:
com.lutris.appserver.server.sql.DatabaseManagerException - If a Transaction can not be created.
com.lutris.dods.builder.generator.query.RefAssertionException - Thrown by okTo method.
java.sql.SQLException - If any SQL errors occur.
com.lutris.dods.builder.generator.query.DataObjectException
com.lutris.appserver.server.sql.DBRowUpdateException
com.lutris.dods.builder.generator.query.QueryException

delete

public void delete(com.lutris.appserver.server.sql.DBTransaction dbt,
                   boolean rootDO)
            throws java.sql.SQLException,
                   com.lutris.appserver.server.sql.DatabaseManagerException,
                   com.lutris.dods.builder.generator.query.DataObjectException,
                   com.lutris.dods.builder.generator.query.RefAssertionException,
                   com.lutris.appserver.server.sql.DBRowUpdateException,
                   com.lutris.dods.builder.generator.query.QueryException
Deletes the DO from its table. The transaction is likely provided by the delete() method of another DO which references this DO. NOTE : This method is only for DODS internal usage.

Parameters:
dbt - The transaction object used for this operation.
rootDO - Is DO root in DELETE CASCADE sekvence
Throws:
com.lutris.appserver.server.sql.DatabaseManagerException - If a Transaction can not be created.
com.lutris.dods.builder.generator.query.RefAssertionException - Thrown by okTo method.
java.sql.SQLException - If any SQL errors occur.
com.lutris.dods.builder.generator.query.DataObjectException
com.lutris.appserver.server.sql.DBRowUpdateException
com.lutris.dods.builder.generator.query.QueryException

unDelete

public void unDelete(com.lutris.appserver.server.sql.DBTransaction dbt)
              throws java.sql.SQLException,
                     com.lutris.appserver.server.sql.DatabaseManagerException,
                     com.lutris.dods.builder.generator.query.DataObjectException,
                     com.lutris.dods.builder.generator.query.RefAssertionException,
                     com.lutris.appserver.server.sql.DBRowUpdateException,
                     com.lutris.dods.builder.generator.query.QueryException
UnDeletes the DO and inserts to the table.

Parameters:
dbt - The transaction object used for this operation.
Throws:
com.lutris.appserver.server.sql.DatabaseManagerException - If a Transaction can not be created.
com.lutris.dods.builder.generator.query.RefAssertionException - Thrown by okTo method.
java.sql.SQLException - If any SQL errors occur.
com.lutris.dods.builder.generator.query.DataObjectException
com.lutris.appserver.server.sql.DBRowUpdateException
com.lutris.dods.builder.generator.query.QueryException

okToCommitXPDL

protected void okToCommitXPDL(XPDLDO member)
                       throws com.lutris.dods.builder.generator.query.RefAssertionException
A stub method for implementing pre-commit assertions for the XPDL data member. Implement this stub to throw an RefAssertionException for cases where XPDL is not valid for writing to the database.

Parameters:
member - XPDL data member.
Throws:
com.lutris.dods.builder.generator.query.RefAssertionException

okToDeleteXPDL

protected void okToDeleteXPDL(XPDLDO member)
                       throws com.lutris.dods.builder.generator.query.RefAssertionException
A stub method for implementing pre-delete assertions for the XPDL data member. Implement this stub to throw an RefAssertionException for cases where XPDL is not valid for deletion from the database.

Parameters:
member - XPDL data member
Throws:
com.lutris.dods.builder.generator.query.RefAssertionException

modifyDO

protected void modifyDO(com.lutris.appserver.server.sql.DBTransaction dbt,
                        boolean delete)
                 throws java.sql.SQLException,
                        com.lutris.appserver.server.sql.DatabaseManagerException,
                        com.lutris.dods.builder.generator.query.DataObjectException,
                        com.lutris.dods.builder.generator.query.RefAssertionException,
                        com.lutris.appserver.server.sql.DBRowUpdateException,
                        com.lutris.dods.builder.generator.query.QueryException
Modifies the DO within its table. Performs recursive commit/delete on referenced DOs; all operations occur within a single transaction to allow rollback in the event of error. Only the creator of the transaction releases it.

Parameters:
dbt - The transaction object used for this operation.
delete - True if doing a delete, otherwise false (for insert/update).
Throws:
com.lutris.appserver.server.sql.DatabaseManagerException - If a Transaction can not be created.
com.lutris.dods.builder.generator.query.RefAssertionException - Thrown by okTo method.
java.sql.SQLException - If any SQL errors occur.
com.lutris.dods.builder.generator.query.DataObjectException
com.lutris.appserver.server.sql.DBRowUpdateException
com.lutris.dods.builder.generator.query.QueryException - WebDocWf extension

modifyDO

protected void modifyDO(com.lutris.appserver.server.sql.DBTransaction dbt,
                        boolean delete,
                        boolean references)
                 throws java.sql.SQLException,
                        com.lutris.appserver.server.sql.DatabaseManagerException,
                        com.lutris.dods.builder.generator.query.DataObjectException,
                        com.lutris.dods.builder.generator.query.RefAssertionException,
                        com.lutris.appserver.server.sql.DBRowUpdateException,
                        com.lutris.dods.builder.generator.query.QueryException
Modifies the DO within its table. Performs recursive commit/delete on referenced DOs; all operations occur within a single transaction to allow rollback in the event of error. Only the creator of the transaction releases it.

Parameters:
dbt - The transaction object used for this operation.
delete - True if doing a delete, otherwise false (for insert/update).
references - True if references should be saved
Throws:
com.lutris.appserver.server.sql.DatabaseManagerException - If a Transaction can not be created.
com.lutris.dods.builder.generator.query.RefAssertionException - Thrown by okTo method.
java.sql.SQLException - If any SQL errors occur.
com.lutris.dods.builder.generator.query.DataObjectException
com.lutris.appserver.server.sql.DBRowUpdateException
com.lutris.dods.builder.generator.query.QueryException - WebDocWf extension