Package org.hibernate.hql.spi.id
Class AbstractMultiTableBulkIdStrategyImpl<TT extends IdTableInfo,CT extends AbstractMultiTableBulkIdStrategyImpl.PreparationContext>
- java.lang.Object
-
- org.hibernate.hql.spi.id.AbstractMultiTableBulkIdStrategyImpl<TT,CT>
-
- All Implemented Interfaces:
MultiTableBulkIdStrategy
- Direct Known Subclasses:
GlobalTemporaryTableBulkIdStrategy
,LocalTemporaryTableBulkIdStrategy
,PersistentTableBulkIdStrategy
public abstract class AbstractMultiTableBulkIdStrategyImpl<TT extends IdTableInfo,CT extends AbstractMultiTableBulkIdStrategyImpl.PreparationContext> extends Object implements MultiTableBulkIdStrategy
Convenience base class for MultiTableBulkIdStrategy implementations.
-
-
Nested Class Summary
Nested Classes Modifier and Type Class Description static interface
AbstractMultiTableBulkIdStrategyImpl.PreparationContext
-
Nested classes/interfaces inherited from interface org.hibernate.hql.spi.id.MultiTableBulkIdStrategy
MultiTableBulkIdStrategy.DeleteHandler, MultiTableBulkIdStrategy.UpdateHandler
-
-
Constructor Summary
Constructors Constructor Description AbstractMultiTableBulkIdStrategyImpl(IdTableSupport idTableSupport)
-
Method Summary
-
Methods inherited from class java.lang.Object
clone, equals, finalize, getClass, hashCode, notify, notifyAll, toString, wait, wait, wait
-
Methods inherited from interface org.hibernate.hql.spi.id.MultiTableBulkIdStrategy
buildDeleteHandler, buildUpdateHandler, release
-
-
-
-
Constructor Detail
-
AbstractMultiTableBulkIdStrategyImpl
public AbstractMultiTableBulkIdStrategyImpl(IdTableSupport idTableSupport)
-
-
Method Detail
-
getIdTableSupport
public IdTableSupport getIdTableSupport()
-
prepare
public final void prepare(JdbcServices jdbcServices, JdbcConnectionAccess connectionAccess, MetadataImplementor metadata, SessionFactoryOptions sessionFactoryOptions)
Description copied from interface:MultiTableBulkIdStrategy
Prepare the strategy. Called as the SessionFactory is being built. Intended patterns here include:- Adding tables to the passed Mappings, to be picked by by "schema management tools"
- Manually creating the tables immediately through the passed JDBC Connection access
- Specified by:
prepare
in interfaceMultiTableBulkIdStrategy
- Parameters:
jdbcServices
- The JdbcService objectconnectionAccess
- Access to the JDBC Connectionmetadata
- Access to the O/RM mapping information
-
buildPreparationContext
protected CT buildPreparationContext()
-
initialize
protected void initialize(MetadataBuildingOptions buildingOptions, SessionFactoryOptions sessionFactoryOptions)
Configure ourselves. By default, nothing to do; here totally for subclass hook-in- Parameters:
buildingOptions
- Access to user-defined Metadata building optionssessionFactoryOptions
-
-
determineIdTableName
protected QualifiedTableName determineIdTableName(JdbcEnvironment jdbcEnvironment, PersistentClass entityBinding)
-
augmentIdTableDefinition
protected void augmentIdTableDefinition(Table idTable)
-
buildIdTableInfo
protected abstract TT buildIdTableInfo(PersistentClass entityBinding, Table idTable, JdbcServices jdbcServices, MetadataImplementor metadata, CT context)
-
buildIdTableCreateStatement
protected String buildIdTableCreateStatement(Table idTable, JdbcServices jdbcServices, MetadataImplementor metadata)
-
buildIdTableDropStatement
protected String buildIdTableDropStatement(Table idTable, JdbcServices jdbcServices)
-
finishPreparation
protected void finishPreparation(JdbcServices jdbcServices, JdbcConnectionAccess connectionAccess, MetadataImplementor metadata, CT context)
-
-