AbstractAfterKeyGenerator, AbstractBeforeKeyGenerator, AbstractKeyGenerator, HighLowKeyGenerator, IdentityKeyGenerator, MaxKeyGenerator, NoKeyGenerator, SequenceAfterKeyGenerator, SequenceBeforeKeyGenerator, SequenceDuringKeyGenerator, TableKeyGenerator, UUIDKeyGeneratorpublic interface KeyGenerator
All the key generators belonging to the same database share the same non-transactional connection to the database.
The key generator is configured from the mapping file using Bean-like accessor methods.
| Modifier and Type | Method | Description | 
|---|---|---|
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. 
 | 
java.lang.Object | 
generateKey(java.sql.Connection conn,
           java.lang.String tableName,
           java.lang.String primKeyName) | 
 Generate a new key for the specified table. 
 | 
boolean | 
isInSameConnection() | 
 Is key generated in the same connection as INSERT?
 For DURING_INSERT style this method is never called. 
 | 
java.lang.Object generateKey(java.sql.Connection conn,
                             java.lang.String tableName,
                             java.lang.String primKeyName)
                      throws PersistenceException
conn - An open connection within the given transactiontableName - The table nameprimKeyName - The primary key namePersistenceException - An error occured talking to persistent
  storageboolean isInSameConnection()
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.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.Intalio Inc. (C) 1999-2008. All rights reserved http://www.intalio.com