org.hibernate.id
Class IdentityGenerator.BasicDelegate

java.lang.Object
  extended by org.hibernate.id.insert.AbstractSelectingDelegate
      extended by org.hibernate.id.IdentityGenerator.BasicDelegate
All Implemented Interfaces:
InsertGeneratedIdentifierDelegate
Enclosing class:
IdentityGenerator

public static class IdentityGenerator.BasicDelegate
extends AbstractSelectingDelegate
implements InsertGeneratedIdentifierDelegate

Delegate for dealing with IDENTITY columns where the dialect requires an additional command execution to retrieve the generated IDENTITY value


Constructor Summary
IdentityGenerator.BasicDelegate(PostInsertIdentityPersister persister, Dialect dialect)
           
 
Method Summary
protected  Serializable getResult(SessionImplementor session, ResultSet rs, Object object)
          Extract the generated key value from the given result set.
protected  String getSelectSQL()
          Get the SQL statement to be used to retrieve generated key values.
 IdentifierGeneratingInsert prepareIdentifierGeneratingInsert()
          Build a Insert specific to the delegate's mode of handling generated key values.
 
Methods inherited from class org.hibernate.id.insert.AbstractSelectingDelegate
bindParameters, performInsert
 
Methods inherited from class java.lang.Object
clone, equals, finalize, getClass, hashCode, notify, notifyAll, toString, wait, wait, wait
 
Methods inherited from interface org.hibernate.id.insert.InsertGeneratedIdentifierDelegate
performInsert
 

Constructor Detail

IdentityGenerator.BasicDelegate

public IdentityGenerator.BasicDelegate(PostInsertIdentityPersister persister,
                                       Dialect dialect)
Method Detail

prepareIdentifierGeneratingInsert

public IdentifierGeneratingInsert prepareIdentifierGeneratingInsert()
Description copied from interface: InsertGeneratedIdentifierDelegate
Build a Insert specific to the delegate's mode of handling generated key values.

Specified by:
prepareIdentifierGeneratingInsert in interface InsertGeneratedIdentifierDelegate
Returns:
The insert object.

getSelectSQL

protected String getSelectSQL()
Description copied from class: AbstractSelectingDelegate
Get the SQL statement to be used to retrieve generated key values.

Specified by:
getSelectSQL in class AbstractSelectingDelegate
Returns:
The SQL command string

getResult

protected Serializable getResult(SessionImplementor session,
                                 ResultSet rs,
                                 Object object)
                          throws SQLException
Description copied from class: AbstractSelectingDelegate
Extract the generated key value from the given result set.

Specified by:
getResult in class AbstractSelectingDelegate
Parameters:
session - The session
rs - The result set containing the generated primay key values.
object - The entity being saved.
Returns:
The generated identifier
Throws:
SQLException