Class SqmPolymorphicRootDescriptor<T>
java.lang.Object
org.hibernate.query.sqm.tree.domain.SqmPolymorphicRootDescriptor<T>
- All Implemented Interfaces:
Bindable<T>
,EntityType<T>
,IdentifiableType<T>
,ManagedType<T>
,Type<T>
,DomainType<T>
,EntityDomainType<T>
,IdentifiableDomainType<T>
,ManagedDomainType<T>
,PathSource<T>
,TreatableDomainType<T>
,SqmBindableType<T>
,SqmExpressible<T>
,SqmPathSource<T>
,SqmDomainType<T>
,SqmEntityDomainType<T>
,SqmManagedDomainType<T>
,SqmTreatableDomainType<T>
,SqmExpressibleAccessor<T>
,BindableType<T>
Acts as the
EntityDomainType
for a "polymorphic query" grouping.-
Nested Class Summary
Nested classes/interfaces inherited from interface jakarta.persistence.metamodel.Bindable
Bindable.BindableType
Nested classes/interfaces inherited from interface jakarta.persistence.metamodel.Type
Type.PersistenceType
-
Constructor Summary
ConstructorsConstructorDescriptionSqmPolymorphicRootDescriptor
(JavaType<T> polymorphicJavaType, Set<EntityDomainType<? extends T>> implementors, JpaMetamodel jpaMetamodel) -
Method Summary
Modifier and TypeMethodDescriptionvoid
addSubType
(ManagedDomainType<? extends T> subType) createSqmPath
(SqmPath<?> lhs, SqmPathSource<?> intermediatePathSource) Create an SQM path for this source relative to the given left hand sideSqmPersistentAttribute<? super T,
?> findAttribute
(String name) SqmPersistentAttribute<? super T,
?> findDeclaredAttribute
(String name) SingularPersistentAttribute<? super T,
?> List<? extends SingularPersistentAttribute<? super T,
?>> SqmPluralPersistentAttribute<? super T,
?, ?> findPluralAttribute
(String name) SqmSingularPersistentAttribute<? super T,
?> findSingularAttribute
(String name) findSubPathSource
(String name) Find aPathSource
by name relative to this source.findSubTypesAttribute
(String name) SingularPersistentAttribute<? super T,
?> SqmPersistentAttribute<? super T,
?> getAttribute
(String name) CollectionAttribute<? super T,
?> getCollection
(String name) <E> CollectionAttribute<? super T,
E> getCollection
(String name, Class<E> elementType) getDeclaredAttribute
(String name) getDeclaredCollection
(String name) <E> CollectionAttribute<T,
E> getDeclaredCollection
(String name, Class<E> elementType) <Y> SingularPersistentAttribute<T,
Y> getDeclaredId
(Class<Y> type) ListAttribute<T,
?> getDeclaredList
(String name) <E> ListAttribute<T,
E> getDeclaredList
(String name, Class<E> elementType) MapAttribute<T,
?, ?> getDeclaredMap
(String name) <K,
V> MapAttribute<T, K, V> getDeclaredMap
(String name, Class<K> keyType, Class<V> valueType) Set<PluralAttribute<T,
?, ?>> SetAttribute<T,
?> getDeclaredSet
(String name) <E> SetAttribute<T,
E> getDeclaredSet
(String name, Class<E> elementType) <Y> SingularAttribute<T,
Y> getDeclaredSingularAttribute
(String name, Class<Y> type) Set<SingularAttribute<T,
?>> <Y> SingularPersistentAttribute<T,
Y> getDeclaredVersion
(Class<Y> type) TheJavaType
representing this domain type.<Y> SingularPersistentAttribute<? super T,
Y> Set<SingularAttribute<? super T,
?>> Set<EntityDomainType<? extends T>>
The Java class of the entity type.ListAttribute<? super T,
?> <E> ListAttribute<? super T,
E> MapAttribute<? super T,
?, ?> <K,
V> MapAttribute<? super T, K, V> The parent metamodel.getName()
The name of this thing.The type of path this source creates.Set<PluralAttribute<? super T,
?, ?>> The representation mode.SetAttribute<? super T,
?> <E> SetAttribute<? super T,
E> SingularAttribute<? super T,
?> getSingularAttribute
(String name) <Y> SingularAttribute<? super T,
Y> getSingularAttribute
(String name, Class<Y> type) Set<SingularAttribute<? super T,
?>> Collection<? extends EntityDomainType<? extends T>>
The descriptors of all known managed subtypes of this type.IdentifiableDomainType<? super T>
ManagedDomainType<? super T>
The descriptor of the supertype of this type.The name of the managed type.<Y> SingularPersistentAttribute<? super T,
Y> getVersion
(Class<Y> type) boolean
boolean
boolean
void
visitAttributes
(Consumer<? super PersistentAttribute<? super T, ?>> action) void
visitDeclaredAttributes
(Consumer<? super PersistentAttribute<T, ?>> action) void
visitIdClassAttributes
(Consumer<SingularPersistentAttribute<? super T, ?>> action) Methods inherited from class java.lang.Object
clone, equals, finalize, getClass, hashCode, notify, notifyAll, toString, wait, wait, wait
Methods inherited from interface org.hibernate.query.sqm.SqmBindableType
resolveExpressible
Methods inherited from interface org.hibernate.query.sqm.tree.domain.SqmDomainType
getTupleLength
Methods inherited from interface org.hibernate.query.sqm.tree.domain.SqmEntityDomainType
getSqmType
Methods inherited from interface org.hibernate.query.sqm.SqmExpressible
getRelationalJavaType
Methods inherited from interface org.hibernate.query.sqm.tree.SqmExpressibleAccessor
getNodeJavaType
Methods inherited from interface org.hibernate.query.sqm.tree.domain.SqmManagedDomainType
findAttributeInSuperTypes
Methods inherited from interface org.hibernate.query.sqm.SqmPathSource
findSubPathSource, getExpressible, getIntermediatePathSource, getSubPathSource, getSubPathSource, isGeneric
-
Constructor Details
-
SqmPolymorphicRootDescriptor
public SqmPolymorphicRootDescriptor(JavaType<T> polymorphicJavaType, Set<EntityDomainType<? extends T>> implementors, JpaMetamodel jpaMetamodel)
-
-
Method Details
-
getMetamodel
Description copied from interface:ManagedDomainType
The parent metamodel.- Specified by:
getMetamodel
in interfaceManagedDomainType<T>
-
getImplementors
-
getBindableJavaType
- Specified by:
getBindableJavaType
in interfaceBindable<T>
-
getName
- Specified by:
getName
in interfaceEntityType<T>
-
getHibernateEntityName
- Specified by:
getHibernateEntityName
in interfaceEntityDomainType<T>
-
getTypeName
Description copied from interface:ManagedDomainType
The name of the managed type.- Specified by:
getTypeName
in interfaceDomainType<T>
- Specified by:
getTypeName
in interfaceManagedDomainType<T>
- Specified by:
getTypeName
in interfaceSqmDomainType<T>
- Specified by:
getTypeName
in interfaceSqmExpressible<T>
- Specified by:
getTypeName
in interfaceSqmManagedDomainType<T>
- Specified by:
getTypeName
in interfaceSqmTreatableDomainType<T>
- See Also:
-
getPathName
Description copied from interface:PathSource
The name of this thing.- Specified by:
getPathName
in interfacePathSource<T>
-
getPathType
Description copied from interface:PathSource
The type of path this source creates.- Specified by:
getPathType
in interfacePathSource<T>
- Specified by:
getPathType
in interfaceSqmPathSource<T>
-
getBindableType
- Specified by:
getBindableType
in interfaceBindable<T>
-
getJavaType
Description copied from interface:ManagedDomainType
The Java class of the entity type.- Specified by:
getJavaType
in interfaceDomainType<T>
- Specified by:
getJavaType
in interfaceManagedDomainType<T>
- Specified by:
getJavaType
in interfaceSqmManagedDomainType<T>
- Specified by:
getJavaType
in interfaceType<T>
- See Also:
-
getPersistenceType
- Specified by:
getPersistenceType
in interfaceType<T>
-
getExpressibleJavaType
Description copied from interface:DomainType
TheJavaType
representing this domain type.- Specified by:
getExpressibleJavaType
in interfaceDomainType<T>
- Specified by:
getExpressibleJavaType
in interfaceSqmExpressible<T>
-
findAttribute
- Specified by:
findAttribute
in interfaceManagedDomainType<T>
- Specified by:
findAttribute
in interfaceSqmManagedDomainType<T>
-
findSubTypesAttribute
- Specified by:
findSubTypesAttribute
in interfaceManagedDomainType<T>
- Specified by:
findSubTypesAttribute
in interfaceSqmManagedDomainType<T>
-
visitAttributes
- Specified by:
visitAttributes
in interfaceManagedDomainType<T>
-
visitDeclaredAttributes
- Specified by:
visitDeclaredAttributes
in interfaceManagedDomainType<T>
-
getAttribute
- Specified by:
getAttribute
in interfaceManagedDomainType<T>
- Specified by:
getAttribute
in interfaceManagedType<T>
-
getDeclaredAttribute
- Specified by:
getDeclaredAttribute
in interfaceManagedDomainType<T>
- Specified by:
getDeclaredAttribute
in interfaceManagedType<T>
-
findSingularAttribute
- Specified by:
findSingularAttribute
in interfaceManagedDomainType<T>
- Specified by:
findSingularAttribute
in interfaceSqmManagedDomainType<T>
-
findPluralAttribute
- Specified by:
findPluralAttribute
in interfaceManagedDomainType<T>
- Specified by:
findPluralAttribute
in interfaceSqmManagedDomainType<T>
-
findConcreteGenericAttribute
- Specified by:
findConcreteGenericAttribute
in interfaceManagedDomainType<T>
- Specified by:
findConcreteGenericAttribute
in interfaceSqmManagedDomainType<T>
-
findDeclaredAttribute
- Specified by:
findDeclaredAttribute
in interfaceManagedDomainType<T>
- Specified by:
findDeclaredAttribute
in interfaceSqmManagedDomainType<T>
-
findDeclaredSingularAttribute
- Specified by:
findDeclaredSingularAttribute
in interfaceManagedDomainType<T>
- Specified by:
findDeclaredSingularAttribute
in interfaceSqmManagedDomainType<T>
-
findDeclaredPluralAttribute
- Specified by:
findDeclaredPluralAttribute
in interfaceManagedDomainType<T>
- Specified by:
findDeclaredPluralAttribute
in interfaceSqmManagedDomainType<T>
-
findDeclaredConcreteGenericAttribute
- Specified by:
findDeclaredConcreteGenericAttribute
in interfaceManagedDomainType<T>
- Specified by:
findDeclaredConcreteGenericAttribute
in interfaceSqmManagedDomainType<T>
-
getAttributes
- Specified by:
getAttributes
in interfaceManagedType<T>
-
getDeclaredAttributes
- Specified by:
getDeclaredAttributes
in interfaceManagedType<T>
-
getSingularAttribute
- Specified by:
getSingularAttribute
in interfaceManagedType<T>
-
getDeclaredSingularAttribute
- Specified by:
getDeclaredSingularAttribute
in interfaceManagedType<T>
-
getSingularAttributes
- Specified by:
getSingularAttributes
in interfaceManagedType<T>
-
getDeclaredSingularAttributes
- Specified by:
getDeclaredSingularAttributes
in interfaceManagedType<T>
-
getCollection
- Specified by:
getCollection
in interfaceManagedType<T>
-
getDeclaredCollection
- Specified by:
getDeclaredCollection
in interfaceManagedType<T>
-
getSet
- Specified by:
getSet
in interfaceManagedType<T>
-
getDeclaredSet
- Specified by:
getDeclaredSet
in interfaceManagedType<T>
-
getList
- Specified by:
getList
in interfaceManagedType<T>
-
getDeclaredList
- Specified by:
getDeclaredList
in interfaceManagedType<T>
-
getMap
- Specified by:
getMap
in interfaceManagedType<T>
-
getDeclaredMap
- Specified by:
getDeclaredMap
in interfaceManagedType<T>
-
getPluralAttributes
- Specified by:
getPluralAttributes
in interfaceManagedType<T>
-
getDeclaredPluralAttributes
- Specified by:
getDeclaredPluralAttributes
in interfaceManagedType<T>
-
getSingularAttribute
- Specified by:
getSingularAttribute
in interfaceManagedType<T>
-
getDeclaredSingularAttribute
- Specified by:
getDeclaredSingularAttribute
in interfaceManagedType<T>
-
getCollection
- Specified by:
getCollection
in interfaceManagedType<T>
-
getDeclaredCollection
- Specified by:
getDeclaredCollection
in interfaceManagedType<T>
-
getSet
- Specified by:
getSet
in interfaceManagedType<T>
-
getDeclaredSet
- Specified by:
getDeclaredSet
in interfaceManagedType<T>
-
getList
- Specified by:
getList
in interfaceManagedType<T>
-
getDeclaredList
- Specified by:
getDeclaredList
in interfaceManagedType<T>
-
getMap
- Specified by:
getMap
in interfaceManagedType<T>
-
getDeclaredMap
- Specified by:
getDeclaredMap
in interfaceManagedType<T>
-
findSubPathSource
Description copied from interface:PathSource
Find aPathSource
by name relative to this source.- Specified by:
findSubPathSource
in interfacePathSource<T>
- Specified by:
findSubPathSource
in interfaceSqmPathSource<T>
- Parameters:
name
- the name of the path source to find- Returns:
- null if the subPathSource is not found
-
createSqmPath
Description copied from interface:SqmPathSource
Create an SQM path for this source relative to the given left hand side- Specified by:
createSqmPath
in interfaceSqmPathSource<T>
-
getRepresentationMode
Description copied from interface:ManagedDomainType
The representation mode.- Specified by:
getRepresentationMode
in interfaceManagedDomainType<T>
- Returns:
POJO
for Java class entities, orMAP
for dynamic entities.
-
getIdentifierDescriptor
- Specified by:
getIdentifierDescriptor
in interfaceIdentifiableDomainType<T>
-
getId
- Specified by:
getId
in interfaceIdentifiableDomainType<T>
- Specified by:
getId
in interfaceIdentifiableType<T>
-
getDeclaredId
- Specified by:
getDeclaredId
in interfaceIdentifiableDomainType<T>
- Specified by:
getDeclaredId
in interfaceIdentifiableType<T>
-
getVersion
- Specified by:
getVersion
in interfaceIdentifiableDomainType<T>
- Specified by:
getVersion
in interfaceIdentifiableType<T>
-
getDeclaredVersion
- Specified by:
getDeclaredVersion
in interfaceIdentifiableDomainType<T>
- Specified by:
getDeclaredVersion
in interfaceIdentifiableType<T>
-
getIdClassAttributes
- Specified by:
getIdClassAttributes
in interfaceIdentifiableDomainType<T>
- Specified by:
getIdClassAttributes
in interfaceIdentifiableType<T>
-
getIdType
- Specified by:
getIdType
in interfaceIdentifiableDomainType<T>
- Specified by:
getIdType
in interfaceIdentifiableType<T>
-
getSupertype
- Specified by:
getSupertype
in interfaceIdentifiableDomainType<T>
- Specified by:
getSupertype
in interfaceIdentifiableType<T>
-
hasIdClass
public boolean hasIdClass()- Specified by:
hasIdClass
in interfaceIdentifiableDomainType<T>
-
findIdAttribute
- Specified by:
findIdAttribute
in interfaceIdentifiableDomainType<T>
-
visitIdClassAttributes
- Specified by:
visitIdClassAttributes
in interfaceIdentifiableDomainType<T>
-
findVersionAttribute
- Specified by:
findVersionAttribute
in interfaceIdentifiableDomainType<T>
-
findNaturalIdAttributes
- Specified by:
findNaturalIdAttributes
in interfaceIdentifiableDomainType<T>
-
hasSingleIdAttribute
public boolean hasSingleIdAttribute()- Specified by:
hasSingleIdAttribute
in interfaceIdentifiableType<T>
-
hasVersionAttribute
public boolean hasVersionAttribute()- Specified by:
hasVersionAttribute
in interfaceIdentifiableType<T>
-
getSuperType
Description copied from interface:ManagedDomainType
The descriptor of the supertype of this type.- Specified by:
getSuperType
in interfaceManagedDomainType<T>
-
getSubTypes
Description copied from interface:ManagedDomainType
The descriptors of all known managed subtypes of this type.- Specified by:
getSubTypes
in interfaceEntityDomainType<T>
- Specified by:
getSubTypes
in interfaceManagedDomainType<T>
-
addSubType
- Specified by:
addSubType
in interfaceManagedDomainType<T>
-