org.hibernate.id
Class IdentityGenerator.InsertSelectDelegate

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

public static class IdentityGenerator.InsertSelectDelegate
extends AbstractReturningDelegate
implements InsertGeneratedIdentifierDelegate

Delegate for dealing with IDENTITY columns where the dialect supports returning the generated IDENTITY value directly from the insert statement.


Constructor Summary
IdentityGenerator.InsertSelectDelegate(PostInsertIdentityPersister persister, Dialect dialect)
           
 
Method Summary
 Serializable determineGeneratedIdentifier(SessionImplementor session, Object entity)
           
 Serializable executeAndExtract(PreparedStatement insert)
           
protected  PreparedStatement prepare(String insertSQL, SessionImplementor session)
           
 IdentifierGeneratingInsert prepareIdentifierGeneratingInsert()
          Build a Insert specific to the delegate's mode of handling generated key values.
 
Methods inherited from class org.hibernate.id.insert.AbstractReturningDelegate
getPersister, performInsert, releaseStatement
 
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.InsertSelectDelegate

public IdentityGenerator.InsertSelectDelegate(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.

prepare

protected PreparedStatement prepare(String insertSQL,
                                    SessionImplementor session)
                             throws SQLException
Specified by:
prepare in class AbstractReturningDelegate
Throws:
SQLException

executeAndExtract

public Serializable executeAndExtract(PreparedStatement insert)
                               throws SQLException
Specified by:
executeAndExtract in class AbstractReturningDelegate
Throws:
SQLException

determineGeneratedIdentifier

public Serializable determineGeneratedIdentifier(SessionImplementor session,
                                                 Object entity)