KeyGenerator
HighLowKeyGenerator
, MaxKeyGenerator
, SequenceBeforeKeyGenerator
, TableKeyGenerator
, UUIDKeyGenerator
public abstract class AbstractBeforeKeyGenerator extends AbstractKeyGenerator
Constructor | Description |
---|---|
AbstractBeforeKeyGenerator(PersistenceFactory factory) |
Constructor.
|
Modifier and Type | Method | Description |
---|---|---|
void |
bindIdentity(Identity internalIdentity,
CastorStatement stmt) |
Binds the identity values.
|
KeyGenerator |
buildStatement(SQLEngine engine) |
Builds the SQL insert statement.
|
java.lang.Object |
executeStatement(Database database,
CastorConnection conn,
Identity identity,
ProposedEntity entity) |
Executes the SQL statement after preparing the PreparedStatement.
|
closeSeparateConnection, getSeparateConnection
generateKey, isInSameConnection
public AbstractBeforeKeyGenerator(PersistenceFactory factory)
factory
- Persistence factory for the database engine the entity is persisted in.
Used to format the SQL statementpublic KeyGenerator buildStatement(SQLEngine engine)
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.public java.lang.Object executeStatement(Database database, CastorConnection conn, Identity identity, ProposedEntity entity) throws PersistenceException
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.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.public void bindIdentity(Identity internalIdentity, CastorStatement stmt) throws java.sql.SQLException, PersistenceException
internalIdentity
- Identity values.stmt
- CastorStatement containing Connection and PersistenceFactory.java.sql.SQLException
- If a database access error occurs.PersistenceException
- If identity size mismatches.Intalio Inc. (C) 1999-2008. All rights reserved http://www.intalio.com