org.castor.cpa.persistence.sql.keygen
Class AbstractBeforeKeyGenerator
java.lang.Object
org.castor.cpa.persistence.sql.keygen.AbstractKeyGenerator
org.castor.cpa.persistence.sql.keygen.AbstractBeforeKeyGenerator
- All Implemented Interfaces:
- KeyGenerator
- Direct Known Subclasses:
- HighLowKeyGenerator, MaxKeyGenerator, SequenceBeforeKeyGenerator, TableKeyGenerator, UUIDKeyGenerator
public abstract class AbstractBeforeKeyGenerator
- extends AbstractKeyGenerator
Abstract Class that implements the KeyGenerator Interface for BEFORE_INSERT style. The key
generator is used for producing identities for objects before they are created in the
database.
- Version:
- $Revision: 8994 $ $Date: 2011-08-02 01:40:59 +0200 (Di, 02 Aug 2011) $
- Author:
- Ahmad Hassan, Ralf Joachim
| Methods inherited from class java.lang.Object |
clone, equals, finalize, getClass, hashCode, notify, notifyAll, toString, wait, wait, wait |
AbstractBeforeKeyGenerator
public AbstractBeforeKeyGenerator(PersistenceFactory factory)
- Constructor.
- Parameters:
factory - Persistence factory for the database engine the entity is persisted in.
Used to format the SQL statement
buildStatement
public final void buildStatement(SQLEngine engine)
- Builds the SQL insert statement.
- Parameters:
engine - SQL engine for all persistence operations at entities of the type this
class is responsible for. Holds all required information of the entity type.
executeStatement
public final Object executeStatement(Database database,
CastorConnection conn,
Identity identity,
ProposedEntity entity)
throws PersistenceException
- Executes the SQL statement after preparing the PreparedStatement.
- Parameters:
database - A database instance.conn - CastorConnection holding connection and PersistenceFactory to be used to create
statement.identity - Identity of the object to insert.entity - Entity instance from which field values to be fetached to
bind with sql insert statement.
- Returns:
- Identity
- Throws:
PersistenceException - If failed to insert record into database. This could happen
if a database access error occurs, If identity size mismatches, unable to retrieve
Identity, If provided Identity is null, If Extended engine is null.
Copyright © 2012. All Rights Reserved.