Package org.hibernate.hql.spi.id.global
Class GlobalTemporaryTableBulkIdStrategy
- java.lang.Object
-
- org.hibernate.hql.spi.id.AbstractMultiTableBulkIdStrategyImpl<org.hibernate.hql.spi.id.global.IdTableInfoImpl,org.hibernate.hql.spi.id.global.PreparationContextImpl>
-
- org.hibernate.hql.spi.id.global.GlobalTemporaryTableBulkIdStrategy
-
- All Implemented Interfaces:
MultiTableBulkIdStrategy
public class GlobalTemporaryTableBulkIdStrategy extends AbstractMultiTableBulkIdStrategyImpl<org.hibernate.hql.spi.id.global.IdTableInfoImpl,org.hibernate.hql.spi.id.global.PreparationContextImpl> implements MultiTableBulkIdStrategy
Strategy based on ANSI SQL's definition of a "global temporary table".
-
-
Nested Class Summary
-
Nested classes/interfaces inherited from class org.hibernate.hql.spi.id.AbstractMultiTableBulkIdStrategyImpl
AbstractMultiTableBulkIdStrategyImpl.PreparationContext
-
Nested classes/interfaces inherited from interface org.hibernate.hql.spi.id.MultiTableBulkIdStrategy
MultiTableBulkIdStrategy.DeleteHandler, MultiTableBulkIdStrategy.UpdateHandler
-
-
Field Summary
Fields Modifier and Type Field Description static java.lang.String
DROP_ID_TABLES
static java.lang.String
SHORT_NAME
-
Constructor Summary
Constructors Constructor Description GlobalTemporaryTableBulkIdStrategy()
GlobalTemporaryTableBulkIdStrategy(IdTableSupport idTableSupport, AfterUseAction afterUseAction)
GlobalTemporaryTableBulkIdStrategy(AfterUseAction afterUseAction)
-
Method Summary
All Methods Instance Methods Concrete Methods Modifier and Type Method Description MultiTableBulkIdStrategy.DeleteHandler
buildDeleteHandler(SessionFactoryImplementor factory, org.hibernate.hql.internal.ast.HqlSqlWalker walker)
Build a handler capable of handling the bulk delete indicated by the given walker.protected org.hibernate.hql.spi.id.global.IdTableInfoImpl
buildIdTableInfo(PersistentClass entityBinding, Table idTable, JdbcServices jdbcServices, MetadataImplementor metadata, org.hibernate.hql.spi.id.global.PreparationContextImpl context)
protected org.hibernate.hql.spi.id.global.PreparationContextImpl
buildPreparationContext()
MultiTableBulkIdStrategy.UpdateHandler
buildUpdateHandler(SessionFactoryImplementor factory, org.hibernate.hql.internal.ast.HqlSqlWalker walker)
Build a handler capable of handling the bulk update indicated by the given walker.protected void
finishPreparation(JdbcServices jdbcServices, JdbcConnectionAccess connectionAccess, MetadataImplementor metadata, org.hibernate.hql.spi.id.global.PreparationContextImpl context)
protected void
initialize(MetadataBuildingOptions buildingOptions, SessionFactoryOptions sessionFactoryOptions)
Configure ourselves.void
release(JdbcServices jdbcServices, JdbcConnectionAccess connectionAccess)
Release the strategy.-
Methods inherited from class org.hibernate.hql.spi.id.AbstractMultiTableBulkIdStrategyImpl
augmentIdTableDefinition, buildIdTableCreateStatement, buildIdTableDropStatement, determineIdTableName, getIdTableInfo, getIdTableInfo, getIdTableSupport, prepare
-
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
prepare
-
-
-
-
Field Detail
-
DROP_ID_TABLES
public static final java.lang.String DROP_ID_TABLES
- See Also:
- Constant Field Values
-
SHORT_NAME
public static final java.lang.String SHORT_NAME
- See Also:
- Constant Field Values
-
-
Constructor Detail
-
GlobalTemporaryTableBulkIdStrategy
public GlobalTemporaryTableBulkIdStrategy()
-
GlobalTemporaryTableBulkIdStrategy
public GlobalTemporaryTableBulkIdStrategy(AfterUseAction afterUseAction)
-
GlobalTemporaryTableBulkIdStrategy
public GlobalTemporaryTableBulkIdStrategy(IdTableSupport idTableSupport, AfterUseAction afterUseAction)
-
-
Method Detail
-
buildPreparationContext
protected org.hibernate.hql.spi.id.global.PreparationContextImpl buildPreparationContext()
- Overrides:
buildPreparationContext
in classAbstractMultiTableBulkIdStrategyImpl<org.hibernate.hql.spi.id.global.IdTableInfoImpl,org.hibernate.hql.spi.id.global.PreparationContextImpl>
-
initialize
protected void initialize(MetadataBuildingOptions buildingOptions, SessionFactoryOptions sessionFactoryOptions)
Description copied from class:AbstractMultiTableBulkIdStrategyImpl
Configure ourselves. By default, nothing to do; here totally for subclass hook-in- Overrides:
initialize
in classAbstractMultiTableBulkIdStrategyImpl<org.hibernate.hql.spi.id.global.IdTableInfoImpl,org.hibernate.hql.spi.id.global.PreparationContextImpl>
- Parameters:
buildingOptions
- Access to user-defined Metadata building options
-
buildIdTableInfo
protected org.hibernate.hql.spi.id.global.IdTableInfoImpl buildIdTableInfo(PersistentClass entityBinding, Table idTable, JdbcServices jdbcServices, MetadataImplementor metadata, org.hibernate.hql.spi.id.global.PreparationContextImpl context)
- Specified by:
buildIdTableInfo
in classAbstractMultiTableBulkIdStrategyImpl<org.hibernate.hql.spi.id.global.IdTableInfoImpl,org.hibernate.hql.spi.id.global.PreparationContextImpl>
-
finishPreparation
protected void finishPreparation(JdbcServices jdbcServices, JdbcConnectionAccess connectionAccess, MetadataImplementor metadata, org.hibernate.hql.spi.id.global.PreparationContextImpl context)
- Overrides:
finishPreparation
in classAbstractMultiTableBulkIdStrategyImpl<org.hibernate.hql.spi.id.global.IdTableInfoImpl,org.hibernate.hql.spi.id.global.PreparationContextImpl>
-
release
public void release(JdbcServices jdbcServices, JdbcConnectionAccess connectionAccess)
Description copied from interface:MultiTableBulkIdStrategy
Release the strategy. Called as the SessionFactory is being shut down.- Specified by:
release
in interfaceMultiTableBulkIdStrategy
- Parameters:
jdbcServices
- The JdbcService objectconnectionAccess
- Access to the JDBC Connection
-
buildUpdateHandler
public MultiTableBulkIdStrategy.UpdateHandler buildUpdateHandler(SessionFactoryImplementor factory, org.hibernate.hql.internal.ast.HqlSqlWalker walker)
Description copied from interface:MultiTableBulkIdStrategy
Build a handler capable of handling the bulk update indicated by the given walker.- Specified by:
buildUpdateHandler
in interfaceMultiTableBulkIdStrategy
- Parameters:
factory
- The SessionFactorywalker
- The AST walker, representing the update query- Returns:
- The handler
-
buildDeleteHandler
public MultiTableBulkIdStrategy.DeleteHandler buildDeleteHandler(SessionFactoryImplementor factory, org.hibernate.hql.internal.ast.HqlSqlWalker walker)
Description copied from interface:MultiTableBulkIdStrategy
Build a handler capable of handling the bulk delete indicated by the given walker.- Specified by:
buildDeleteHandler
in interfaceMultiTableBulkIdStrategy
- Parameters:
factory
- The SessionFactorywalker
- The AST walker, representing the delete query- Returns:
- The handler
-
-