Class MutationExecutorPostInsert
- java.lang.Object
-
- org.hibernate.engine.jdbc.mutation.internal.MutationExecutorPostInsert
-
- All Implemented Interfaces:
JdbcValueBindingsImpl.JdbcValueDescriptorAccess
,MutationExecutor
public class MutationExecutorPostInsert extends Object implements MutationExecutor, JdbcValueBindingsImpl.JdbcValueDescriptorAccess
Specialized executor for the case of more than one table operation, with the root table defining a post-insert id-generation strategy.
-
-
Field Summary
Fields Modifier and Type Field Description protected PreparedStatementDetails
identityInsertStatementDetails
protected MutationOperationGroup
mutationOperationGroup
protected EntityMutationTarget
mutationTarget
protected PreparedStatementGroup
secondaryTablesStatementGroup
Any non-batched JDBC statementsprotected JdbcValueBindingsImpl
valueBindings
-
Constructor Summary
Constructors Constructor Description MutationExecutorPostInsert(EntityMutationOperationGroup mutationOperationGroup, SharedSessionContractImplementor session)
-
Method Summary
All Methods Instance Methods Concrete Methods Modifier and Type Method Description Object
execute(Object modelReference, ValuesAnalysis valuesAnalysis, TableInclusionChecker inclusionChecker, OperationResultChecker resultChecker, SharedSessionContractImplementor session)
Perform the execution, returning any generated value.JdbcValueBindings
getJdbcValueBindings()
Get the delegate to be used to coordinate JDBC parameter binding.PreparedStatementDetails
getPreparedStatementDetails(String tableName)
Details about thePreparedStatement
for mutating the given table.void
release()
JdbcValueDescriptor
resolveValueDescriptor(String tableName, String columnName, ParameterUsage usage)
String
toString()
-
Methods inherited from class java.lang.Object
clone, equals, finalize, getClass, hashCode, notify, notifyAll, wait, wait, wait
-
Methods inherited from interface org.hibernate.engine.jdbc.mutation.internal.JdbcValueBindingsImpl.JdbcValueDescriptorAccess
resolvePhysicalTableName
-
-
-
-
Field Detail
-
mutationTarget
protected final EntityMutationTarget mutationTarget
-
mutationOperationGroup
protected final MutationOperationGroup mutationOperationGroup
-
identityInsertStatementDetails
protected final PreparedStatementDetails identityInsertStatementDetails
-
secondaryTablesStatementGroup
protected final PreparedStatementGroup secondaryTablesStatementGroup
Any non-batched JDBC statements
-
valueBindings
protected final JdbcValueBindingsImpl valueBindings
-
-
Constructor Detail
-
MutationExecutorPostInsert
public MutationExecutorPostInsert(EntityMutationOperationGroup mutationOperationGroup, SharedSessionContractImplementor session)
-
-
Method Detail
-
getJdbcValueBindings
public JdbcValueBindings getJdbcValueBindings()
Description copied from interface:MutationExecutor
Get the delegate to be used to coordinate JDBC parameter binding.- Specified by:
getJdbcValueBindings
in interfaceMutationExecutor
-
resolveValueDescriptor
public JdbcValueDescriptor resolveValueDescriptor(String tableName, String columnName, ParameterUsage usage)
- Specified by:
resolveValueDescriptor
in interfaceJdbcValueBindingsImpl.JdbcValueDescriptorAccess
-
getPreparedStatementDetails
public PreparedStatementDetails getPreparedStatementDetails(String tableName)
Description copied from interface:MutationExecutor
Details about thePreparedStatement
for mutating the given table.- Specified by:
getPreparedStatementDetails
in interfaceMutationExecutor
-
execute
public Object execute(Object modelReference, ValuesAnalysis valuesAnalysis, TableInclusionChecker inclusionChecker, OperationResultChecker resultChecker, SharedSessionContractImplementor session)
Description copied from interface:MutationExecutor
Perform the execution, returning any generated value.- Specified by:
execute
in interfaceMutationExecutor
inclusionChecker
- The ability to skip the execution for a specific table; passingnull
indicates no filteringresultChecker
- Custom result checking; passnull
to perform the standard check using the statement's expectation
-
release
public void release()
- Specified by:
release
in interfaceMutationExecutor
-
-