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.BindableTypeNested 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 TypeMethodDescriptionvoidaddSubType(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 aPathSourceby 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) TheJavaTyperepresenting 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) booleanbooleanbooleanvoidvisitAttributes(Consumer<? super PersistentAttribute<? super T, ?>> action) voidvisitDeclaredAttributes(Consumer<? super PersistentAttribute<T, ?>> action) voidvisitIdClassAttributes(Consumer<SingularPersistentAttribute<? super T, ?>> action) Methods inherited from class java.lang.Object
clone, equals, finalize, getClass, hashCode, notify, notifyAll, toString, wait, wait, waitMethods inherited from interface org.hibernate.query.sqm.SqmBindableType
resolveExpressibleMethods inherited from interface org.hibernate.query.sqm.tree.domain.SqmDomainType
getTupleLengthMethods inherited from interface org.hibernate.query.sqm.tree.domain.SqmEntityDomainType
getSqmTypeMethods inherited from interface org.hibernate.query.sqm.SqmExpressible
getRelationalJavaTypeMethods inherited from interface org.hibernate.query.sqm.tree.SqmExpressibleAccessor
getNodeJavaTypeMethods inherited from interface org.hibernate.query.sqm.tree.domain.SqmManagedDomainType
findAttributeInSuperTypesMethods 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:ManagedDomainTypeThe parent metamodel.- Specified by:
getMetamodelin interfaceManagedDomainType<T>
-
getImplementors
-
getBindableJavaType
- Specified by:
getBindableJavaTypein interfaceBindable<T>
-
getName
- Specified by:
getNamein interfaceEntityType<T>
-
getHibernateEntityName
- Specified by:
getHibernateEntityNamein interfaceEntityDomainType<T>
-
getTypeName
Description copied from interface:ManagedDomainTypeThe name of the managed type.- Specified by:
getTypeNamein interfaceDomainType<T>- Specified by:
getTypeNamein interfaceManagedDomainType<T>- Specified by:
getTypeNamein interfaceSqmDomainType<T>- Specified by:
getTypeNamein interfaceSqmExpressible<T>- Specified by:
getTypeNamein interfaceSqmManagedDomainType<T>- Specified by:
getTypeNamein interfaceSqmTreatableDomainType<T>- See Also:
-
getPathName
Description copied from interface:PathSourceThe name of this thing.- Specified by:
getPathNamein interfacePathSource<T>
-
getPathType
Description copied from interface:PathSourceThe type of path this source creates.- Specified by:
getPathTypein interfacePathSource<T>- Specified by:
getPathTypein interfaceSqmPathSource<T>
-
getBindableType
- Specified by:
getBindableTypein interfaceBindable<T>
-
getJavaType
Description copied from interface:ManagedDomainTypeThe Java class of the entity type.- Specified by:
getJavaTypein interfaceDomainType<T>- Specified by:
getJavaTypein interfaceManagedDomainType<T>- Specified by:
getJavaTypein interfaceSqmManagedDomainType<T>- Specified by:
getJavaTypein interfaceType<T>- See Also:
-
getPersistenceType
- Specified by:
getPersistenceTypein interfaceType<T>
-
getExpressibleJavaType
Description copied from interface:DomainTypeTheJavaTyperepresenting this domain type.- Specified by:
getExpressibleJavaTypein interfaceDomainType<T>- Specified by:
getExpressibleJavaTypein interfaceSqmExpressible<T>
-
findAttribute
- Specified by:
findAttributein interfaceManagedDomainType<T>- Specified by:
findAttributein interfaceSqmManagedDomainType<T>
-
findSubTypesAttribute
- Specified by:
findSubTypesAttributein interfaceManagedDomainType<T>- Specified by:
findSubTypesAttributein interfaceSqmManagedDomainType<T>
-
visitAttributes
- Specified by:
visitAttributesin interfaceManagedDomainType<T>
-
visitDeclaredAttributes
- Specified by:
visitDeclaredAttributesin interfaceManagedDomainType<T>
-
getAttribute
- Specified by:
getAttributein interfaceManagedDomainType<T>- Specified by:
getAttributein interfaceManagedType<T>
-
getDeclaredAttribute
- Specified by:
getDeclaredAttributein interfaceManagedDomainType<T>- Specified by:
getDeclaredAttributein interfaceManagedType<T>
-
findSingularAttribute
- Specified by:
findSingularAttributein interfaceManagedDomainType<T>- Specified by:
findSingularAttributein interfaceSqmManagedDomainType<T>
-
findPluralAttribute
- Specified by:
findPluralAttributein interfaceManagedDomainType<T>- Specified by:
findPluralAttributein interfaceSqmManagedDomainType<T>
-
findConcreteGenericAttribute
- Specified by:
findConcreteGenericAttributein interfaceManagedDomainType<T>- Specified by:
findConcreteGenericAttributein interfaceSqmManagedDomainType<T>
-
findDeclaredAttribute
- Specified by:
findDeclaredAttributein interfaceManagedDomainType<T>- Specified by:
findDeclaredAttributein interfaceSqmManagedDomainType<T>
-
findDeclaredSingularAttribute
- Specified by:
findDeclaredSingularAttributein interfaceManagedDomainType<T>- Specified by:
findDeclaredSingularAttributein interfaceSqmManagedDomainType<T>
-
findDeclaredPluralAttribute
- Specified by:
findDeclaredPluralAttributein interfaceManagedDomainType<T>- Specified by:
findDeclaredPluralAttributein interfaceSqmManagedDomainType<T>
-
findDeclaredConcreteGenericAttribute
- Specified by:
findDeclaredConcreteGenericAttributein interfaceManagedDomainType<T>- Specified by:
findDeclaredConcreteGenericAttributein interfaceSqmManagedDomainType<T>
-
getAttributes
- Specified by:
getAttributesin interfaceManagedType<T>
-
getDeclaredAttributes
- Specified by:
getDeclaredAttributesin interfaceManagedType<T>
-
getSingularAttribute
- Specified by:
getSingularAttributein interfaceManagedType<T>
-
getDeclaredSingularAttribute
- Specified by:
getDeclaredSingularAttributein interfaceManagedType<T>
-
getSingularAttributes
- Specified by:
getSingularAttributesin interfaceManagedType<T>
-
getDeclaredSingularAttributes
- Specified by:
getDeclaredSingularAttributesin interfaceManagedType<T>
-
getCollection
- Specified by:
getCollectionin interfaceManagedType<T>
-
getDeclaredCollection
- Specified by:
getDeclaredCollectionin interfaceManagedType<T>
-
getSet
- Specified by:
getSetin interfaceManagedType<T>
-
getDeclaredSet
- Specified by:
getDeclaredSetin interfaceManagedType<T>
-
getList
- Specified by:
getListin interfaceManagedType<T>
-
getDeclaredList
- Specified by:
getDeclaredListin interfaceManagedType<T>
-
getMap
- Specified by:
getMapin interfaceManagedType<T>
-
getDeclaredMap
- Specified by:
getDeclaredMapin interfaceManagedType<T>
-
getPluralAttributes
- Specified by:
getPluralAttributesin interfaceManagedType<T>
-
getDeclaredPluralAttributes
- Specified by:
getDeclaredPluralAttributesin interfaceManagedType<T>
-
getSingularAttribute
- Specified by:
getSingularAttributein interfaceManagedType<T>
-
getDeclaredSingularAttribute
- Specified by:
getDeclaredSingularAttributein interfaceManagedType<T>
-
getCollection
- Specified by:
getCollectionin interfaceManagedType<T>
-
getDeclaredCollection
- Specified by:
getDeclaredCollectionin interfaceManagedType<T>
-
getSet
- Specified by:
getSetin interfaceManagedType<T>
-
getDeclaredSet
- Specified by:
getDeclaredSetin interfaceManagedType<T>
-
getList
- Specified by:
getListin interfaceManagedType<T>
-
getDeclaredList
- Specified by:
getDeclaredListin interfaceManagedType<T>
-
getMap
- Specified by:
getMapin interfaceManagedType<T>
-
getDeclaredMap
- Specified by:
getDeclaredMapin interfaceManagedType<T>
-
findSubPathSource
Description copied from interface:PathSourceFind aPathSourceby name relative to this source.- Specified by:
findSubPathSourcein interfacePathSource<T>- Specified by:
findSubPathSourcein 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:SqmPathSourceCreate an SQM path for this source relative to the given left hand side- Specified by:
createSqmPathin interfaceSqmPathSource<T>
-
getRepresentationMode
Description copied from interface:ManagedDomainTypeThe representation mode.- Specified by:
getRepresentationModein interfaceManagedDomainType<T>- Returns:
POJOfor Java class entities, orMAPfor dynamic entities.
-
getIdentifierDescriptor
- Specified by:
getIdentifierDescriptorin interfaceIdentifiableDomainType<T>
-
getId
- Specified by:
getIdin interfaceIdentifiableDomainType<T>- Specified by:
getIdin interfaceIdentifiableType<T>
-
getDeclaredId
- Specified by:
getDeclaredIdin interfaceIdentifiableDomainType<T>- Specified by:
getDeclaredIdin interfaceIdentifiableType<T>
-
getVersion
- Specified by:
getVersionin interfaceIdentifiableDomainType<T>- Specified by:
getVersionin interfaceIdentifiableType<T>
-
getDeclaredVersion
- Specified by:
getDeclaredVersionin interfaceIdentifiableDomainType<T>- Specified by:
getDeclaredVersionin interfaceIdentifiableType<T>
-
getIdClassAttributes
- Specified by:
getIdClassAttributesin interfaceIdentifiableDomainType<T>- Specified by:
getIdClassAttributesin interfaceIdentifiableType<T>
-
getIdType
- Specified by:
getIdTypein interfaceIdentifiableDomainType<T>- Specified by:
getIdTypein interfaceIdentifiableType<T>
-
getSupertype
- Specified by:
getSupertypein interfaceIdentifiableDomainType<T>- Specified by:
getSupertypein interfaceIdentifiableType<T>
-
hasIdClass
public boolean hasIdClass()- Specified by:
hasIdClassin interfaceIdentifiableDomainType<T>
-
findIdAttribute
- Specified by:
findIdAttributein interfaceIdentifiableDomainType<T>
-
visitIdClassAttributes
- Specified by:
visitIdClassAttributesin interfaceIdentifiableDomainType<T>
-
findVersionAttribute
- Specified by:
findVersionAttributein interfaceIdentifiableDomainType<T>
-
findNaturalIdAttributes
- Specified by:
findNaturalIdAttributesin interfaceIdentifiableDomainType<T>
-
hasSingleIdAttribute
public boolean hasSingleIdAttribute()- Specified by:
hasSingleIdAttributein interfaceIdentifiableType<T>
-
hasVersionAttribute
public boolean hasVersionAttribute()- Specified by:
hasVersionAttributein interfaceIdentifiableType<T>
-
getSuperType
Description copied from interface:ManagedDomainTypeThe descriptor of the supertype of this type.- Specified by:
getSuperTypein interfaceManagedDomainType<T>
-
getSubTypes
Description copied from interface:ManagedDomainTypeThe descriptors of all known managed subtypes of this type.- Specified by:
getSubTypesin interfaceEntityDomainType<T>- Specified by:
getSubTypesin interfaceManagedDomainType<T>
-
addSubType
- Specified by:
addSubTypein interfaceManagedDomainType<T>
-