Class AbstractNaturalIdLoader<T>
java.lang.Object
org.hibernate.loader.ast.internal.AbstractNaturalIdLoader<T>
- All Implemented Interfaces:
EntityLoader,Loader,MultiKeyLoader,NaturalIdLoader<T>
- Direct Known Subclasses:
CompoundNaturalIdLoader,SimpleNaturalIdLoader
Base support for
NaturalIdLoader implementations-
Constructor Summary
ConstructorsConstructorDescriptionAbstractNaturalIdLoader(NaturalIdMapping naturalIdMapping, EntityMappingType entityDescriptor) -
Method Summary
Modifier and TypeMethodDescriptionprotected abstract voidapplyNaturalIdRestriction(Object bindValue, TableGroup rootTableGroup, Consumer<Predicate> predicateConsumer, BiConsumer<JdbcParameter, JdbcParameterBinding> jdbcParameterConsumer, LoaderSqlAstCreationState sqlAstCreationState, SharedSessionContractImplementor session) Apply restriction necessary to match the given natural-id value.protected EntityMappingTypeThe value-mapping loaded by this loaderload(Object naturalIdValue, NaturalIdLoadOptions options, SharedSessionContractImplementor session) Perform the load of the entity by its natural-idprotected NaturalIdMappingprotected ExpressionresolveColumnReference(TableGroup rootTableGroup, SelectableMapping selectableMapping, SqlExpressionResolver sqlExpressionResolver, SessionFactoryImplementor sessionFactory) Helper to resolve ColumnReferencesresolveIdToNaturalId(Object id, SharedSessionContractImplementor session) Resolve the natural-id value(s) from an idresolveNaturalIdToId(Object naturalIdValue, SharedSessionContractImplementor session) Resolve the id from natural-id valueprotected <L> LselectByNaturalId(Object bindValue, NaturalIdLoadOptions options, BiFunction<TableGroup, LoaderSqlAstCreationState, DomainResult<?>> domainResultProducer, LoaderSqlAstCreationState.FetchProcessor fetchProcessor, Function<Boolean, Long> statementStartHandler, BiConsumer<Object, Long> statementCompletionHandler, SharedSessionContractImplementor session) Perform a select, restricted by natural-id, based on `domainResultProducer` and `fetchProcessor`
-
Constructor Details
-
AbstractNaturalIdLoader
public AbstractNaturalIdLoader(NaturalIdMapping naturalIdMapping, EntityMappingType entityDescriptor)
-
-
Method Details
-
entityDescriptor
-
naturalIdMapping
-
getLoadable
Description copied from interface:LoaderThe value-mapping loaded by this loader- Specified by:
getLoadablein interfaceEntityLoader- Specified by:
getLoadablein interfaceLoader
-
resolveColumnReference
protected Expression resolveColumnReference(TableGroup rootTableGroup, SelectableMapping selectableMapping, SqlExpressionResolver sqlExpressionResolver, SessionFactoryImplementor sessionFactory) Helper to resolve ColumnReferences
-