Top Inners Fields Constructors Methods
org.hibernate.query.sqm.mutation.internal.temptable

public Class TableBasedDeleteHandler

extends AbstractMutationHandler
implements DeleteHandler
Class Inheritance
All Implemented Interfaces
org.hibernate.query.sqm.mutation.internal.DeleteHandler, org.hibernate.query.sqm.mutation.internal.Handler
Imports
java.util.function.Function, org.hibernate.dialect.temptable.TemporaryTable, org.hibernate.engine.spi.SessionFactoryImplementor, .SharedSessionContractImplementor, org.hibernate.query.spi.DomainQueryExecutionContext, org.hibernate.query.sqm.internal.DomainParameterXref, org.hibernate.query.sqm.mutation.internal.DeleteHandler, org.hibernate.query.sqm.mutation.spi.AbstractMutationHandler, org.hibernate.query.sqm.tree.delete.SqmDeleteStatement, org.jboss.logging.Logger

Author
Steve Ebersole

Nested and Inner Type Summary

Modifier and TypeClass and Description
public static interface

Field Summary

Modifier and TypeField and Description
private final AfterUseAction
private final DomainParameterXref
private final TemporaryTable
private static final Logger
private final Function<SharedSessionContractImplementor, String>

Constructor Summary

AccessConstructor and Description
public
TableBasedDeleteHandler(SqmDeleteStatement<?> sqmDeleteStatement, DomainParameterXref domainParameterXref, TemporaryTable idTable, AfterUseAction afterUseAction, Function<SharedSessionContractImplementor, String> sessionUidAccess, SessionFactoryImplementor sessionFactory)

Deprecated as a consequence of SessionFactoryImplementor being deprecated.

Method Summary

Modifier and TypeMethod and Description
public int
execute(DomainQueryExecutionContext
Contextual information needed for execution
executionContext
)

Implements org.hibernate.query.sqm.mutation.internal.Handler.execute.

Execute the multi-table update or delete indicated by the SQM AST passed in when this Handler was created.
protected AfterUseAction
protected DomainParameterXref
protected TemporaryTable
protected Function<SharedSessionContractImplementor, String>
public SqmDeleteStatement<?>
protected TableBasedDeleteHandler.ExecutionDelegate
Inherited from org.hibernate.query.sqm.mutation.spi.AbstractMutationHandler:
getEntityDescriptorgetSessionFactory

Field Detail

afterUseActionback to summary
private final AfterUseAction afterUseAction
domainParameterXrefback to summary
private final DomainParameterXref domainParameterXref
idTableback to summary
private final TemporaryTable idTable
logback to summary
private static final Logger log
sessionUidAccessback to summary
private final Function<SharedSessionContractImplementor, String> sessionUidAccess

Constructor Detail

TableBasedDeleteHandlerback to summary
public TableBasedDeleteHandler(SqmDeleteStatement<?> sqmDeleteStatement, DomainParameterXref domainParameterXref, TemporaryTable idTable, AfterUseAction afterUseAction, Function<SharedSessionContractImplementor, String> sessionUidAccess, SessionFactoryImplementor sessionFactory)

Deprecated

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

Method Detail

executeback to summary
public int execute(DomainQueryExecutionContext executionContext)

Implements org.hibernate.query.sqm.mutation.internal.Handler.execute.

Doc from org.hibernate.query.sqm.mutation.internal.Handler.execute.

Execute the multi-table update or delete indicated by the SQM AST passed in when this Handler was created.

Parameters
executionContext:DomainQueryExecutionContext

Contextual information needed for execution

Returns:int

The "number of rows affected" count

Annotations
@Override
getAfterUseActionback to summary
protected AfterUseAction getAfterUseAction()
getDomainParameterXrefback to summary
protected DomainParameterXref getDomainParameterXref()
getIdTableback to summary
protected TemporaryTable getIdTable()
getSessionUidAccessback to summary
protected Function<SharedSessionContractImplementor, String> getSessionUidAccess()
getSqmDeleteOrUpdateStatementback to summary
public SqmDeleteStatement<?> getSqmDeleteOrUpdateStatement()

Overrides org.hibernate.query.sqm.mutation.spi.AbstractMutationHandler.getSqmDeleteOrUpdateStatement.

Annotations
@Override
resolveDelegateback to summary
protected TableBasedDeleteHandler.ExecutionDelegate resolveDelegate(DomainQueryExecutionContext executionContext)
org.hibernate.query.sqm.mutation.internal.temptable back to summary

public Interface TableBasedDeleteHandler.ExecutionDelegate

Known Direct Implementers
org.hibernate.query.sqm.mutation.internal.temptable.AbstractDeleteExecutionDelegate

Method Summary

Modifier and TypeMethod and Description
public int

Method Detail

executeback to summary
public int execute(DomainQueryExecutionContext executionContext)