Package org.hibernate.hql.spi.id
Interface MultiTableBulkIdStrategy
-
- All Known Implementing Classes:
AbstractMultiTableBulkIdStrategyImpl,CteValuesListBulkIdStrategy,GlobalTemporaryTableBulkIdStrategy,InlineIdsInClauseBulkIdStrategy,InlineIdsOrClauseBulkIdStrategy,InlineIdsSubSelectValueListBulkIdStrategy,LocalTemporaryTableBulkIdStrategy,PersistentTableBulkIdStrategy
public interface MultiTableBulkIdStrategyGeneralized strategy contract for handling multi-table bulk HQL operations.
-
-
Nested Class Summary
Nested Classes Modifier and Type Interface Description static interfaceMultiTableBulkIdStrategy.DeleteHandlerHandler for dealing with multi-table HQL bulk delete statements.static interfaceMultiTableBulkIdStrategy.UpdateHandlerHandler for dealing with multi-table HQL bulk update statements.
-
Method Summary
All Methods Instance Methods Abstract Methods Modifier and Type Method Description MultiTableBulkIdStrategy.DeleteHandlerbuildDeleteHandler(SessionFactoryImplementor factory, org.hibernate.hql.internal.ast.HqlSqlWalker walker)Build a handler capable of handling the bulk delete indicated by the given walker.MultiTableBulkIdStrategy.UpdateHandlerbuildUpdateHandler(SessionFactoryImplementor factory, org.hibernate.hql.internal.ast.HqlSqlWalker walker)Build a handler capable of handling the bulk update indicated by the given walker.voidprepare(JdbcServices jdbcServices, JdbcConnectionAccess connectionAccess, MetadataImplementor metadata, SessionFactoryOptions sessionFactoryOptions)Prepare the strategy.voidrelease(JdbcServices jdbcServices, JdbcConnectionAccess connectionAccess)Release the strategy.
-
-
-
Method Detail
-
prepare
void prepare(JdbcServices jdbcServices, JdbcConnectionAccess connectionAccess, MetadataImplementor metadata, SessionFactoryOptions sessionFactoryOptions)
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
- Parameters:
jdbcServices- The JdbcService objectconnectionAccess- Access to the JDBC Connectionmetadata- Access to the O/RM mapping informationsessionFactoryOptions-
-
release
void release(JdbcServices jdbcServices, JdbcConnectionAccess connectionAccess)
Release the strategy. Called as the SessionFactory is being shut down.- Parameters:
jdbcServices- The JdbcService objectconnectionAccess- Access to the JDBC Connection
-
buildUpdateHandler
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.- Parameters:
factory- The SessionFactorywalker- The AST walker, representing the update query- Returns:
- The handler
-
buildDeleteHandler
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.- Parameters:
factory- The SessionFactorywalker- The AST walker, representing the delete query- Returns:
- The handler
-
-