Class AbstractPluralAttribute<D,C,E>
- java.lang.Object
-
- org.hibernate.metamodel.model.domain.internal.AbstractAttribute<D,C,E>
-
- org.hibernate.metamodel.model.domain.internal.AbstractPluralAttribute<D,C,E>
-
- Type Parameters:
D- The (D)eclaring typeC- TheCollectiontypeE- The type of the Collection's elements
- All Implemented Interfaces:
jakarta.persistence.metamodel.Attribute<D,C>,jakarta.persistence.metamodel.Bindable<E>,jakarta.persistence.metamodel.PluralAttribute<D,C,E>,Serializable,PersistentAttribute<D,C>,PluralPersistentAttribute<D,C,E>,BindableType<E>,SqmExpressible<E>,SqmJoinable<D,E>,SqmPathSource<E>,SqmExpressibleAccessor<E>
- Direct Known Subclasses:
SetAttributeImpl
public abstract class AbstractPluralAttribute<D,C,E> extends AbstractAttribute<D,C,E> implements PluralPersistentAttribute<D,C,E>, Serializable
- See Also:
- Serialized Form
-
-
Nested Class Summary
-
Nested classes/interfaces inherited from interface jakarta.persistence.metamodel.Attribute
jakarta.persistence.metamodel.Attribute.PersistentAttributeType
-
-
Constructor Summary
Constructors Modifier Constructor Description protectedAbstractPluralAttribute(PluralAttributeBuilder<D,C,E,?> builder, MetadataContext metadataContext)
-
Method Summary
All Methods Instance Methods Concrete Methods Modifier and Type Method Description SqmPath<E>createSqmPath(SqmPath<?> lhs, SqmPathSource<?> intermediatePathSource)Create an SQM path for this source relative to the given left-hand sideSqmPathSource<?>findSubPathSource(String name)Find a SqmPathSource by name relative to this source.Class<E>getBindableJavaType()The expected Java typejakarta.persistence.metamodel.Bindable.BindableTypegetBindableType()CollectionClassificationgetCollectionClassification()jakarta.persistence.metamodel.PluralAttribute.CollectionTypegetCollectionType()SqmPathSource<E>getElementPathSource()SimpleDomainType<E>getElementType()JavaType<E>getExpressibleJavaType()The Java type descriptor for this expressibleSqmPathSource<?>getIntermediatePathSource(SqmPathSource<?> pathSource)Returns the intermediate SqmPathSource for a path source previously acquired viaSqmPathSource.findSubPathSource(String).Class<C>getJavaType()SimpleDomainType<?>getKeyGraphType()StringgetPathName()The name of this thing.SimpleDomainType<E>getValueGraphType()booleanisAssociation()booleanisCollection()-
Methods inherited from class org.hibernate.metamodel.model.domain.internal.AbstractAttribute
getAttributeClassification, getAttributeJavaType, getDeclaringType, getJavaMember, getName, getPersistentAttributeType, getSqmPathType, toString, writeReplace
-
Methods inherited from class java.lang.Object
clone, equals, finalize, getClass, hashCode, notify, notifyAll, wait, wait, wait
-
Methods inherited from interface jakarta.persistence.metamodel.Attribute
getJavaMember, getName, getPersistentAttributeType
-
Methods inherited from interface org.hibernate.metamodel.model.domain.PersistentAttribute
getAttributeClassification, getAttributeJavaType
-
Methods inherited from interface org.hibernate.metamodel.model.domain.PluralPersistentAttribute
getDeclaringType, getIndexPathSource
-
Methods inherited from interface org.hibernate.query.sqm.SqmExpressible
isInstance, resolveExpressible
-
Methods inherited from interface org.hibernate.query.sqm.tree.SqmExpressibleAccessor
getNodeJavaType
-
Methods inherited from interface org.hibernate.query.sqm.SqmJoinable
createSqmJoin, getName
-
Methods inherited from interface org.hibernate.query.sqm.SqmPathSource
getExpressible, getSqmPathType, getSubPathSource
-
-
-
-
Constructor Detail
-
AbstractPluralAttribute
protected AbstractPluralAttribute(PluralAttributeBuilder<D,C,E,?> builder, MetadataContext metadataContext)
-
-
Method Detail
-
getPathName
public String getPathName()
Description copied from interface:SqmPathSourceThe name of this thing. Mainly used in logging and when creating aNavigablePath- Specified by:
getPathNamein interfaceSqmPathSource<D>
-
getCollectionClassification
public CollectionClassification getCollectionClassification()
- Specified by:
getCollectionClassificationin interfacePluralPersistentAttribute<D,C,E>
-
getElementPathSource
public SqmPathSource<E> getElementPathSource()
- Specified by:
getElementPathSourcein interfacePluralPersistentAttribute<D,C,E>
-
findSubPathSource
public SqmPathSource<?> findSubPathSource(String name)
Description copied from interface:SqmPathSourceFind a SqmPathSource by name relative to this source. returns null if the subPathSource is not found- Specified by:
findSubPathSourcein interfaceSqmPathSource<D>
-
getIntermediatePathSource
public SqmPathSource<?> getIntermediatePathSource(SqmPathSource<?> pathSource)
Description copied from interface:SqmPathSourceReturns the intermediate SqmPathSource for a path source previously acquired viaSqmPathSource.findSubPathSource(String).- Specified by:
getIntermediatePathSourcein interfaceSqmPathSource<D>
-
getCollectionType
public jakarta.persistence.metamodel.PluralAttribute.CollectionType getCollectionType()
-
getExpressibleJavaType
public JavaType<E> getExpressibleJavaType()
Description copied from interface:SqmExpressibleThe Java type descriptor for this expressible- Specified by:
getExpressibleJavaTypein interfaceSqmExpressible<D>
-
getElementType
public SimpleDomainType<E> getElementType()
- Specified by:
getElementTypein interfacejakarta.persistence.metamodel.PluralAttribute<D,C,E>- Specified by:
getElementTypein interfacePluralPersistentAttribute<D,C,E>
-
getJavaType
public Class<C> getJavaType()
- Specified by:
getJavaTypein interfacejakarta.persistence.metamodel.Attribute<D,C>- Overrides:
getJavaTypein classAbstractAttribute<D,C,E>
-
getValueGraphType
public SimpleDomainType<E> getValueGraphType()
- Specified by:
getValueGraphTypein interfacePersistentAttribute<D,C>- Specified by:
getValueGraphTypein interfacePluralPersistentAttribute<D,C,E>- Overrides:
getValueGraphTypein classAbstractAttribute<D,C,E>
-
getKeyGraphType
public SimpleDomainType<?> getKeyGraphType()
- Specified by:
getKeyGraphTypein interfacePersistentAttribute<D,C>- Specified by:
getKeyGraphTypein interfacePluralPersistentAttribute<D,C,E>
-
isAssociation
public boolean isAssociation()
-
isCollection
public boolean isCollection()
-
getBindableType
public jakarta.persistence.metamodel.Bindable.BindableType getBindableType()
- Specified by:
getBindableTypein interfacejakarta.persistence.metamodel.Bindable<D>
-
getBindableJavaType
public Class<E> getBindableJavaType()
Description copied from interface:BindableTypeThe expected Java type- Specified by:
getBindableJavaTypein interfacejakarta.persistence.metamodel.Bindable<D>- Specified by:
getBindableJavaTypein interfaceBindableType<D>
-
createSqmPath
public SqmPath<E> createSqmPath(SqmPath<?> lhs, SqmPathSource<?> intermediatePathSource)
Description copied from interface:SqmPathSourceCreate an SQM path for this source relative to the given left-hand side- Specified by:
createSqmPathin interfaceSqmPathSource<D>
-
-