Package org.hibernate.id.insert
Class AbstractReturningDelegate
- java.lang.Object
-
- org.hibernate.id.insert.AbstractReturningDelegate
-
- All Implemented Interfaces:
InsertGeneratedIdentifierDelegate
- Direct Known Subclasses:
GetGeneratedKeysDelegate
,IdentityGenerator.InsertSelectDelegate
,SequenceIdentityGenerator.Delegate
public abstract class AbstractReturningDelegate extends Object implements InsertGeneratedIdentifierDelegate
Abstract InsertGeneratedIdentifierDelegate implementation where the underlying strategy causes the generated identifier to be returned as an effect of performing the insert statement. Thus, there is no need for an additional sql statement to determine the generated identifier.
-
-
Constructor Summary
Constructors Constructor Description AbstractReturningDelegate(PostInsertIdentityPersister persister)
-
Method Summary
All Methods Instance Methods Abstract Methods Concrete Methods Modifier and Type Method Description protected abstract Serializable
executeAndExtract(PreparedStatement insert, SharedSessionContractImplementor session)
protected PostInsertIdentityPersister
getPersister()
Serializable
performInsert(String insertSQL, SharedSessionContractImplementor session, Binder binder)
Perform the indicated insert SQL statement and determine the identifier value generated.protected abstract PreparedStatement
prepare(String insertSQL, SharedSessionContractImplementor session)
protected void
releaseStatement(PreparedStatement insert, SharedSessionContractImplementor session)
-
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
prepareIdentifierGeneratingInsert
-
-
-
-
Constructor Detail
-
AbstractReturningDelegate
public AbstractReturningDelegate(PostInsertIdentityPersister persister)
-
-
Method Detail
-
performInsert
public final Serializable performInsert(String insertSQL, SharedSessionContractImplementor session, Binder binder)
Description copied from interface:InsertGeneratedIdentifierDelegate
Perform the indicated insert SQL statement and determine the identifier value generated.- Specified by:
performInsert
in interfaceInsertGeneratedIdentifierDelegate
- Parameters:
insertSQL
- The INSERT statement stringsession
- The session in which we are operatingbinder
- The param binder- Returns:
- The generated identifier value.
-
getPersister
protected PostInsertIdentityPersister getPersister()
-
prepare
protected abstract PreparedStatement prepare(String insertSQL, SharedSessionContractImplementor session) throws SQLException
- Throws:
SQLException
-
executeAndExtract
protected abstract Serializable executeAndExtract(PreparedStatement insert, SharedSessionContractImplementor session) throws SQLException
- Throws:
SQLException
-
releaseStatement
protected void releaseStatement(PreparedStatement insert, SharedSessionContractImplementor session) throws SQLException
- Throws:
SQLException
-
-