/* * Hibernate, Relational Persistence for Idiomatic Java * * License: GNU Lesser General Public License (LGPL), version 2.1 or later * See the lgpl.txt file in the root directory or http://www.gnu.org/licenses/lgpl-2.1.html */ package org.hibernate.query.sqm.domain; import javax.persistence.metamodel.PluralAttribute; import org.hibernate.persister.collection.spi.CollectionElement; import org.hibernate.persister.collection.spi.CollectionIndex; /** * Models references to plural attributes (persistent collections) * * @author Steve Ebersole * * @deprecated {@link org.hibernate.persister.common.spi.PluralPersistentAttribute} */ @Deprecated public interface SqmPluralAttribute<J> extends SqmAttribute<J>, SqmDomainTypeExporter<J>, SqmNavigableSource<J> { /** * Classifications of the plurality */ enum CollectionClassification { SET( PluralAttribute.CollectionType.SET ), LIST( PluralAttribute.CollectionType.LIST ), MAP( PluralAttribute.CollectionType.MAP ), BAG( PluralAttribute.CollectionType.COLLECTION ); private final PluralAttribute.CollectionType jpaClassification; CollectionClassification(PluralAttribute.CollectionType jpaClassification) { this.jpaClassification = jpaClassification; } public PluralAttribute.CollectionType toJpaClassification() { return jpaClassification; } } CollectionClassification getCollectionClassification(); CollectionElement getElementDescriptor(); CollectionIndex getIndexDescriptor(); String getRole(); }