Top Fields Constructors Methods
org.hibernate.metamodel.model.domain.internal

public abstract Class AbstractPluralAttribute<D, C, E>

extends AbstractAttribute<D, C, E>
implements PluralPersistentAttribute<D, C, E>, Serializable
Class Inheritance
All Implemented Interfaces
java.io.Serializable, org.hibernate.metamodel.model.domain.PluralPersistentAttribute, jakarta.persistence.metamodel.PluralAttribute, jakarta.persistence.metamodel.Bindable, jakarta.persistence.metamodel.Attribute, org.hibernate.query.sqm.SqmJoinable, org.hibernate.query.sqm.SqmPathSource, org.hibernate.query.sqm.tree.SqmExpressibleAccessor, org.hibernate.query.sqm.SqmExpressible, org.hibernate.query.BindableType, org.hibernate.metamodel.model.domain.PersistentAttribute
Known Direct Subclasses
org.hibernate.metamodel.model.domain.internal.BagAttributeImpl, org.hibernate.metamodel.model.domain.internal.ListAttributeImpl, org.hibernate.metamodel.model.domain.internal.MapAttributeImpl, org.hibernate.metamodel.model.domain.internal.SetAttributeImpl
Type Parameters
<D>
The (D)eclaring type
<C>
The Collection type
<E>
The type of the Collection's elements
Imports
java.io.Serializable, java.util.Collection, org.hibernate.metamodel.CollectionClassification, org.hibernate.metamodel.internal.MetadataContext, org.hibernate.metamodel.mapping.CollectionPart, org.hibernate.metamodel.model.domain.DomainType, .EntityDomainType, .PluralPersistentAttribute, .SimpleDomainType, org.hibernate.metamodel.model.domain.spi.JpaMetamodelImplementor, org.hibernate.spi.NavigablePath, org.hibernate.query.sqm.SqmPathSource, org.hibernate.query.sqm.internal.SqmMappingModelHelper, org.hibernate.query.sqm.tree.domain.SqmPath, .SqmPluralValuedSimplePath, org.hibernate.type.descriptor.java.JavaType

Authors
Emmanuel Bernard, Steve Ebersole

Field Summary

Modifier and TypeField and Description
private final CollectionClassification
private final SqmPathSource<E>

Constructor Summary

AccessConstructor and Description
protected
AbstractPluralAttribute(PluralAttributeBuilder<D, C, E, ?> builder, MetadataContext metadataContext)

Method Summary

Modifier and TypeMethod and Description
public NavigablePath
public SqmPath<E>
createSqmPath(SqmPath<?> lhs, SqmPathSource<?> intermediatePathSource)

Implements org.hibernate.query.sqm.SqmPathSource.createSqmPath.

Create an SQM path for this source relative to the given left hand side
public SqmPathSource<?>
findSubPathSource(String name)

Implements org.hibernate.query.sqm.SqmPathSource.findSubPathSource.

Find a SqmPathSource by name relative to this source.
public SqmPathSource<?>
findSubPathSource(String name, JpaMetamodelImplementor metamodel)

Overrides default org.hibernate.query.sqm.SqmPathSource.findSubPathSource.

Find a SqmPathSource by name relative to this source.
public Class<E>
public Bindable.BindableType
getBindableType()

Implements jakarta.persistence.metamodel.Bindable.getBindableType.

Return the bindable type of the represented object.
public CollectionClassification
public PluralAttribute.CollectionType
public SqmPathSource<E>
public SimpleDomainType<E>
getElementType()

Implements org.hibernate.metamodel.model.domain.PluralPersistentAttribute.getElementType.

Return the type representing the element type of the collection.
public JavaType<E>
getExpressibleJavaType()

Implements org.hibernate.query.sqm.SqmExpressible.getExpressibleJavaType.

The Java type descriptor for this expressible
public SqmPathSource<?>
getIntermediatePathSource(SqmPathSource<?> pathSource)

Overrides default org.hibernate.query.sqm.SqmPathSource.getIntermediatePathSource.

Returns the intermediate SqmPathSource for a path source previously acquired via findSubPathSource(String).
public Class<C>
public SimpleDomainType<?>
public String
public SimpleDomainType<E>
public boolean
isAssociation()

Implements jakarta.persistence.metamodel.Attribute.isAssociation.

Is the attribute an association.
public boolean
isCollection()

Implements jakarta.persistence.metamodel.Attribute.isCollection.

Is the attribute collection-valued (represents a Collection, Set, List, or Map).
public boolean
isGeneric()

Overrides default org.hibernate.query.sqm.SqmPathSource.isGeneric.

Indicates if this path source is generically typed
Inherited from org.hibernate.metamodel.model.domain.internal.AbstractAttribute:
getAttributeClassificationgetAttributeJavaTypegetDeclaringTypegetJavaMembergetNamegetPersistentAttributeTypegetSqmPathTypetoStringwriteReplace

Field Detail

classificationback to summary
private final CollectionClassification classification
elementPathSourceback to summary
private final SqmPathSource<E> elementPathSource

Constructor Detail

AbstractPluralAttributeback to summary
protected AbstractPluralAttribute(PluralAttributeBuilder<D, C, E, ?> builder, MetadataContext metadataContext)

Method Detail

createNavigablePathback to summary
public NavigablePath createNavigablePath(SqmPath<?> parent, String alias)

Overrides default org.hibernate.query.sqm.SqmJoinable.createNavigablePath.

Annotations
@Override
createSqmPathback to summary
public SqmPath<E> createSqmPath(SqmPath<?> lhs, SqmPathSource<?> intermediatePathSource)

Implements org.hibernate.query.sqm.SqmPathSource.createSqmPath.

Doc from org.hibernate.query.sqm.SqmPathSource.createSqmPath.

Create an SQM path for this source relative to the given left hand side

Annotations
@Override
findSubPathSourceback to summary
public SqmPathSource<?> findSubPathSource(String name)

Implements org.hibernate.query.sqm.SqmPathSource.findSubPathSource.

Doc from org.hibernate.query.sqm.SqmPathSource.findSubPathSource.

Find a SqmPathSource by name relative to this source.

Returns:SqmPathSource<?>

null if the subPathSource is not found

Annotations
@Override
findSubPathSourceback to summary
public SqmPathSource<?> findSubPathSource(String name, JpaMetamodelImplementor metamodel)

Overrides default org.hibernate.query.sqm.SqmPathSource.findSubPathSource.

Doc from org.hibernate.query.sqm.SqmPathSource.findSubPathSource.

Find a SqmPathSource by name relative to this source.

Returns:SqmPathSource<?>

null if the subPathSource is not found

Annotations
@Override
getBindableJavaTypeback to summary
public Class<E> getBindableJavaType()

Implements org.hibernate.query.BindableType.getBindableJavaType, jakarta.persistence.metamodel.Bindable.getBindableJavaType.

Doc from jakarta.persistence.metamodel.Bindable.getBindableJavaType.

Return the Java type of the represented object. If the bindable type of the object is PLURAL_ATTRIBUTE, the Java element type is returned. If the bindable type is SINGULAR_ATTRIBUTE or ENTITY_TYPE, the Java type of the represented entity or attribute is returned.

Returns:Class<E>

Java type

Annotations
@Override
getBindableTypeback to summary
public Bindable.BindableType getBindableType()

Implements jakarta.persistence.metamodel.Bindable.getBindableType.

Doc from jakarta.persistence.metamodel.Bindable.getBindableType.

Return the bindable type of the represented object.

Returns:Bindable.BindableType

bindable type

Annotations
@Override
getCollectionClassificationback to summary
public CollectionClassification getCollectionClassification()

Implements org.hibernate.metamodel.model.domain.PluralPersistentAttribute.getCollectionClassification.

Annotations
@Override
getCollectionTypeback to summary
public PluralAttribute.CollectionType getCollectionType()

Implements jakarta.persistence.metamodel.PluralAttribute.getCollectionType.

Doc from jakarta.persistence.metamodel.PluralAttribute.getCollectionType.

Return the collection type.

Returns:PluralAttribute.CollectionType

collection type

Annotations
@Override
getElementPathSourceback to summary
public SqmPathSource<E> getElementPathSource()

Implements org.hibernate.metamodel.model.domain.PluralPersistentAttribute.getElementPathSource.

Annotations
@Override
getElementTypeback to summary
public SimpleDomainType<E> getElementType()

Implements org.hibernate.metamodel.model.domain.PluralPersistentAttribute.getElementType.

Doc from jakarta.persistence.metamodel.PluralAttribute.getElementType.

Return the type representing the element type of the collection.

Returns:SimpleDomainType<E>

element type

Annotations
@Override
getExpressibleJavaTypeback to summary
public JavaType<E> getExpressibleJavaType()

Implements org.hibernate.query.sqm.SqmExpressible.getExpressibleJavaType.

Doc from org.hibernate.query.sqm.SqmExpressible.getExpressibleJavaType.

The Java type descriptor for this expressible

Annotations
@Override
getIntermediatePathSourceback to summary
public SqmPathSource<?> getIntermediatePathSource(SqmPathSource<?> pathSource)

Overrides default org.hibernate.query.sqm.SqmPathSource.getIntermediatePathSource.

Doc from org.hibernate.query.sqm.SqmPathSource.getIntermediatePathSource.

Returns the intermediate SqmPathSource for a path source previously acquired via findSubPathSource(String).

Annotations
@Override
getJavaTypeback to summary
public Class<C> getJavaType()

Overrides org.hibernate.metamodel.model.domain.internal.AbstractAttribute.getJavaType.

Implements jakarta.persistence.metamodel.Attribute.getJavaType.

Doc from jakarta.persistence.metamodel.Attribute.getJavaType.

Return the Java type of the represented attribute.

Returns:Class<C>

Java type

Annotations
@Override
getKeyGraphTypeback to summary
public SimpleDomainType<?> getKeyGraphType()

Overrides default org.hibernate.metamodel.model.domain.PluralPersistentAttribute.getKeyGraphType.

Implements org.hibernate.metamodel.model.domain.PersistentAttribute.getKeyGraphType.

Annotations
@Override
getPathNameback to summary
public String getPathName()

Implements org.hibernate.query.sqm.SqmPathSource.getPathName.

Doc from org.hibernate.query.sqm.SqmPathSource.getPathName.

The name of this thing.

Annotations
@Override
getValueGraphTypeback to summary
public SimpleDomainType<E> getValueGraphType()

Overrides org.hibernate.metamodel.model.domain.internal.AbstractAttribute.getValueGraphType.

Implements org.hibernate.metamodel.model.domain.PluralPersistentAttribute.getValueGraphType, org.hibernate.metamodel.model.domain.PersistentAttribute.getValueGraphType.

Annotations
@Override
@SuppressWarnings:unchecked
isAssociationback to summary
public boolean isAssociation()

Implements jakarta.persistence.metamodel.Attribute.isAssociation.

Doc from jakarta.persistence.metamodel.Attribute.isAssociation.

Is the attribute an association.

Returns:boolean

boolean indicating whether the attribute corresponds to an association

Annotations
@Override
isCollectionback to summary
public boolean isCollection()

Implements jakarta.persistence.metamodel.Attribute.isCollection.

Doc from jakarta.persistence.metamodel.Attribute.isCollection.

Is the attribute collection-valued (represents a Collection, Set, List, or Map).

Returns:boolean

boolean indicating whether the attribute is collection-valued

Annotations
@Override
isGenericback to summary
public boolean isGeneric()

Overrides default org.hibernate.query.sqm.SqmPathSource.isGeneric.

Doc from org.hibernate.query.sqm.SqmPathSource.isGeneric.

Indicates if this path source is generically typed

Annotations
@Override