Top Description Fields Constructors Methods
org.hibernate.hql.spi.id.inline

public Class InlineIdsSubSelectValueListBulkIdStrategy

extends Object
implements MultiTableBulkIdStrategy
Class Inheritance
All Implemented Interfaces
org.hibernate.hql.spi.id.MultiTableBulkIdStrategy
Imports
org.hibernate.boot.model.relational.SqlStringGenerationContext, org.hibernate.boot.spi.MetadataImplementor, .SessionFactoryOptions, org.hibernate.engine.jdbc.connections.spi.JdbcConnectionAccess, org.hibernate.engine.jdbc.spi.JdbcServices, org.hibernate.engine.spi.SessionFactoryImplementor, org.hibernate.hql.internal.ast.HqlSqlWalker, org.hibernate.hql.spi.id.MultiTableBulkIdStrategy

This bulk-id strategy inlines identifiers of the rows that need to be updated or deleted in a subselect using a VALUES list:
delete
from
    Person
where
    ( id ) in (
        select
            id
        from (
            values
                ( 1 ),
                ( 2 ),
                ( 3 ),
                ( 4 )
            ) as HT (id)
    )
Author
Vlad Mihalcea

Field Summary

Modifier and TypeField and Description
public static final InlineIdsSubSelectValueListBulkIdStrategy

Constructor Summary

AccessConstructor and Description
public

Method Summary

Modifier and TypeMethod and Description
public MultiTableBulkIdStrategy.DeleteHandler
buildDeleteHandler(SessionFactoryImplementor
The SessionFactory
factory
,
HqlSqlWalker
The AST walker, representing the delete query
walker
)

Implements org.hibernate.hql.spi.id.MultiTableBulkIdStrategy.buildDeleteHandler.

Deprecated as a consequence of SessionFactoryImplementor being deprecated.
Build a handler capable of handling the bulk delete indicated by the given walker.
public MultiTableBulkIdStrategy.UpdateHandler
buildUpdateHandler(SessionFactoryImplementor
The SessionFactory
factory
,
HqlSqlWalker
The AST walker, representing the update query
walker
)

Implements org.hibernate.hql.spi.id.MultiTableBulkIdStrategy.buildUpdateHandler.

Deprecated as a consequence of SessionFactoryImplementor being deprecated.
Build a handler capable of handling the bulk update indicated by the given walker.
public void
prepare(JdbcServices
The JdbcService object
jdbcServices
,
JdbcConnectionAccess
Access to the JDBC Connection
jdbcConnectionAccess
,
MetadataImplementor
Access to the O/RM mapping information
metadataImplementor
,
SessionFactoryOptions sessionFactoryOptions, SqlStringGenerationContext sqlStringGenerationContext)

Overrides default org.hibernate.hql.spi.id.MultiTableBulkIdStrategy.prepare.

Prepare the strategy.
public void
release(JdbcServices
The JdbcService object
jdbcServices
,
JdbcConnectionAccess
Access to the JDBC Connection
connectionAccess
)

Implements org.hibernate.hql.spi.id.MultiTableBulkIdStrategy.release.

Release the strategy.
Inherited from java.lang.Object:
cloneequalsfinalizegetClasshashCodenotifynotifyAlltoStringwaitwaitwait

Field Detail

INSTANCEback to summary
public static final InlineIdsSubSelectValueListBulkIdStrategy INSTANCE

Constructor Detail

InlineIdsSubSelectValueListBulkIdStrategyback to summary
public InlineIdsSubSelectValueListBulkIdStrategy()

Method Detail

buildDeleteHandlerback to summary
public MultiTableBulkIdStrategy.DeleteHandler buildDeleteHandler(SessionFactoryImplementor factory, HqlSqlWalker walker)

Implements org.hibernate.hql.spi.id.MultiTableBulkIdStrategy.buildDeleteHandler.

Doc from org.hibernate.hql.spi.id.MultiTableBulkIdStrategy.buildDeleteHandler.

Deprecated

as a consequence of SessionFactoryImplementor being deprecated. See corresponding docs for further information.

Build a handler capable of handling the bulk delete indicated by the given walker.

Parameters
factory:SessionFactoryImplementor

The SessionFactory

walker:HqlSqlWalker

The AST walker, representing the delete query

Returns:MultiTableBulkIdStrategy.DeleteHandler

The handler

Annotations
@Override
buildUpdateHandlerback to summary
public MultiTableBulkIdStrategy.UpdateHandler buildUpdateHandler(SessionFactoryImplementor factory, HqlSqlWalker walker)

Implements org.hibernate.hql.spi.id.MultiTableBulkIdStrategy.buildUpdateHandler.

Doc from org.hibernate.hql.spi.id.MultiTableBulkIdStrategy.buildUpdateHandler.

Deprecated

as a consequence of SessionFactoryImplementor being deprecated. See corresponding docs for further information.

Build a handler capable of handling the bulk update indicated by the given walker.

Parameters
factory:SessionFactoryImplementor

The SessionFactory

walker:HqlSqlWalker

The AST walker, representing the update query

Returns:MultiTableBulkIdStrategy.UpdateHandler

The handler

Annotations
@Override
prepareback to summary
public void prepare(JdbcServices jdbcServices, JdbcConnectionAccess jdbcConnectionAccess, MetadataImplementor metadataImplementor, SessionFactoryOptions sessionFactoryOptions, SqlStringGenerationContext sqlStringGenerationContext)

Overrides default org.hibernate.hql.spi.id.MultiTableBulkIdStrategy.prepare.

Doc from org.hibernate.hql.spi.id.MultiTableBulkIdStrategy.prepare.

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:JdbcServices

The JdbcService object

jdbcConnectionAccess:JdbcConnectionAccess

Access to the JDBC Connection

metadataImplementor:MetadataImplementor

Access to the O/RM mapping information

Annotations
@Override
releaseback to summary
public void release(JdbcServices jdbcServices, JdbcConnectionAccess connectionAccess)

Implements org.hibernate.hql.spi.id.MultiTableBulkIdStrategy.release.

Doc from org.hibernate.hql.spi.id.MultiTableBulkIdStrategy.release.

Release the strategy. Called as the SessionFactory is being shut down.

Parameters
jdbcServices:JdbcServices

The JdbcService object

connectionAccess:JdbcConnectionAccess

Access to the JDBC Connection

Annotations
@Override