javax.persistence.metamodel.EntityType - JPA interface
javax.persistence.metamodel
Interface EntityType<X>
- Superinterfaces:
- Bindable<X>, IdentifiableType<X>, ManagedType<X>, Type<X>
Instances of the type
EntityType
represent entity types. - Since:
- JPA 2.0
Attribute<?,?> getAttribute(String name)
Return the attribute of the managed type that corresponds to the specified name.
- Parameters:
-
name
- the name of the represented attribute
- Returns:
- attribute with given name
- Throws:
-
IllegalArgumentException
- if attribute of the given name is not present in the managed type
- Since:
- JPA 2.0
Set< Attribute<?,?>> getAttributes()
Return the attributes of the managed type.
- Returns:
- attributes of the managed type
- Since:
- JPA 2.0
Class<T> 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:
- Java type
- Since:
- JPA 2.0
Return the bindable type of the represented object.
- Returns:
- bindable type
- Since:
- JPA 2.0
CollectionAttribute<?,?> getCollection(String name)
Return the Collection-valued attribute of the managed type that corresponds to the specified name.
- Parameters:
-
name
- the name of the represented attribute
- Returns:
- CollectionAttribute of the given name
- Throws:
-
IllegalArgumentException
- if attribute of the given name is not present in the managed type
- Since:
- JPA 2.0
CollectionAttribute<?,E> getCollection(String name, Class<E> elementType)
Return the Collection-valued attribute of the managed type that corresponds to the specified name and Java element type.
- Parameters:
-
name
- the name of the represented attributeelementType
- the element type of the represented attribute
- Returns:
- CollectionAttribute of the given name and element type
- Throws:
-
IllegalArgumentException
- if attribute of the given name and type is not present in the managed type
- Since:
- JPA 2.0
Attribute<X,?> getDeclaredAttribute(String name)
Return the attribute declared by the managed type that corresponds to the specified name.
- Parameters:
-
name
- the name of the represented attribute
- Returns:
- attribute with given name
- Throws:
-
IllegalArgumentException
- if attribute of the given name is not declared in the managed type
- Since:
- JPA 2.0
Set< Attribute<X,?>> getDeclaredAttributes()
Return the attributes declared by the managed type. Returns empty set if the managed type has no declared attributes.
- Returns:
- declared attributes of the managed type
- Since:
- JPA 2.0
CollectionAttribute<X,?> getDeclaredCollection(String name)
Return the Collection-valued attribute declared by the managed type that corresponds to the specified name.
- Parameters:
-
name
- the name of the represented attribute
- Returns:
- declared CollectionAttribute of the given name
- Throws:
-
IllegalArgumentException
- if attribute of the given name is not declared in the managed type
- Since:
- JPA 2.0
CollectionAttribute<X,E> getDeclaredCollection(String name, Class<E> elementType)
Return the Collection-valued attribute declared by the managed type that corresponds to the specified name and Java element type.
- Parameters:
-
name
- the name of the represented attributeelementType
- the element type of the represented attribute
- Returns:
- declared
CollectionAttribute
of the given name and element type
- Throws:
-
IllegalArgumentException
- if attribute of the given name and type is not declared in the managed type
- Since:
- JPA 2.0
SingularAttribute<X,Y> getDeclaredId(Class<Y> type)
Return the attribute that corresponds to the id attribute declared by the entity or mapped superclass.
- Parameters:
-
type
- the type of the represented declared id attribute
- Returns:
- declared id attribute
- Throws:
-
IllegalArgumentException
- if id attribute of the given type is not declared in the identifiable type or if the identifiable type has an id class
- Since:
- JPA 2.0
ListAttribute<X,?> getDeclaredList(String name)
Return the List-valued attribute declared by the managed type that corresponds to the specified name.
- Parameters:
-
name
- the name of the represented attribute
- Returns:
- declared ListAttribute of the given name
- Throws:
-
IllegalArgumentException
- if attribute of the given name is not declared in the managed type
- Since:
- JPA 2.0
ListAttribute<X,E> getDeclaredList(String name, Class<E> elementType)
Return the List-valued attribute declared by the managed type that corresponds to the specified name and Java element type.
- Parameters:
-
name
- the name of the represented attributeelementType
- the element type of the represented attribute
- Returns:
- declared ListAttribute of the given name and element type
- Throws:
-
IllegalArgumentException
- if attribute of the given name and type is not declared in the managed type
- Since:
- JPA 2.0
MapAttribute<X,?,?> getDeclaredMap(String name)
Return the Map-valued attribute declared by the managed type that corresponds to the specified name.
- Parameters:
-
name
- the name of the represented attribute
- Returns:
- declared MapAttribute of the given name
- Throws:
-
IllegalArgumentException
- if attribute of the given name is not declared in the managed type
- Since:
- JPA 2.0
MapAttribute<X,K,V> getDeclaredMap(String name, Class<K> keyType, Class<V> valueType)
Return the Map-valued attribute declared by the managed type that corresponds to the specified name and Java key and value types.
- Parameters:
-
name
- the name of the represented attributekeyType
- the key type of the represented attributevalueType
- the value type of the represented attribute
- Returns:
- declared MapAttribute of the given name and key and value types
- Throws:
-
IllegalArgumentException
- if attribute of the given name and type is not declared in the managed type
- Since:
- JPA 2.0
Return all multi-valued attributes (Collection-, Set-, List-, and Map-valued attributes) declared by the managed type. Returns empty set if the managed type has no declared multi-valued attributes.
- Returns:
- declared Collection-, Set-, List-, and Map-valued attributes
- Since:
- JPA 2.0
SetAttribute<X,?> getDeclaredSet(String name)
Return the Set-valued attribute declared by the managed type that corresponds to the specified name.
- Parameters:
-
name
- the name of the represented attribute
- Returns:
- declared SetAttribute of the given name
- Throws:
-
IllegalArgumentException
- if attribute of the given name is not declared in the managed type
- Since:
- JPA 2.0
SetAttribute<X,E> getDeclaredSet(String name, Class<E> elementType)
Return the Set-valued attribute declared by the managed type that corresponds to the specified name and Java element type.
- Parameters:
-
name
- the name of the represented attributeelementType
- the element type of the represented attribute
- Returns:
- declared SetAttribute of the given name and element type
- Throws:
-
IllegalArgumentException
- if attribute of the given name and type is not declared in the managed type
- Since:
- JPA 2.0
SingularAttribute<X,?> getDeclaredSingularAttribute(String name)
Return the single-valued attribute declared by the managed type that corresponds to the specified name.
- Parameters:
-
name
- the name of the represented attribute
- Returns:
- declared single-valued attribute of the given name
- Throws:
-
IllegalArgumentException
- if attribute of the given name is not declared in the managed type
- Since:
- JPA 2.0
SingularAttribute<X,Y> getDeclaredSingularAttribute(String name, Class<Y> type)
Return the single-valued attribute declared by the managed type that corresponds to the specified name and Java type.
- Parameters:
-
name
- the name of the represented attributetype
- the type of the represented attribute
- Returns:
- declared single-valued attribute of the given name and type
- Throws:
-
IllegalArgumentException
- if attribute of the given name and type is not declared in the managed type
- Since:
- JPA 2.0
Return the single-valued attributes declared by the managed type. Returns empty set if the managed type has no declared single-valued attributes.
- Returns:
- declared single-valued attributes
- Since:
- JPA 2.0
SingularAttribute<X,Y> getDeclaredVersion(Class<Y> type)
Return the attribute that corresponds to the version attribute declared by the entity or mapped superclass.
- Parameters:
-
type
- the type of the represented declared version attribute
- Returns:
- declared version attribute
- Throws:
-
IllegalArgumentException
- if version attribute of the type is not declared in the identifiable type
- Since:
- JPA 2.0
SingularAttribute<?,Y> getId(Class<Y> type)
Return the attribute that corresponds to the id attribute of the entity or mapped superclass.
- Parameters:
-
type
- the type of the represented id attribute
- Returns:
- id attribute
- Throws:
-
IllegalArgumentException
- if id attribute of the given type is not present in the identifiable type or if the identifiable type has an id class
- Since:
- JPA 2.0
Return the attributes corresponding to the id class of the identifiable type.
- Returns:
- id attributes
- Throws:
-
IllegalArgumentException
- if the identifiable type does not have an id class
- Since:
- JPA 2.0
Return the type that represents the type of the id.
- Returns:
- type of id
- Since:
- JPA 2.0
Class<X> getJavaType()
Return the represented Java type.
- Returns:
- Java type
- Since:
- JPA 2.0
ListAttribute<?,?> getList(String name)
Return the List-valued attribute of the managed type that corresponds to the specified name.
- Parameters:
-
name
- the name of the represented attribute
- Returns:
- ListAttribute of the given name
- Throws:
-
IllegalArgumentException
- if attribute of the given name is not present in the managed type
- Since:
- JPA 2.0
ListAttribute<?,E> getList(String name, Class<E> elementType)
Return the List-valued attribute of the managed type that corresponds to the specified name and Java element type.
- Parameters:
-
name
- the name of the represented attributeelementType
- the element type of the represented attribute
- Returns:
- ListAttribute of the given name and element type
- Throws:
-
IllegalArgumentException
- if attribute of the given name and type is not present in the managed type
- Since:
- JPA 2.0
MapAttribute<?,?,?> getMap(String name)
Return the Map-valued attribute of the managed type that corresponds to the specified name.
- Parameters:
-
name
- the name of the represented attribute
- Returns:
- MapAttribute of the given name
- Throws:
-
IllegalArgumentException
- if attribute of the given name is not present in the managed type
- Since:
- JPA 2.0
MapAttribute<?,K,V> getMap(String name, Class<K> keyType, Class<V> valueType)
Return the Map-valued attribute of the managed type that corresponds to the specified name and Java key and value types.
- Parameters:
-
name
- the name of the represented attributekeyType
- the key type of the represented attributevalueType
- the value type of the represented attribute
- Returns:
- MapAttribute of the given name and key and value types
- Throws:
-
IllegalArgumentException
- if attribute of the given name and type is not present in the managed type
- Since:
- JPA 2.0
String getName()
Return the entity name.
- Returns:
- entity name
- Since:
- JPA 2.0
Return the persistence type.
- Returns:
- persistence type
- Since:
- JPA 2.0
Return all multi-valued attributes (Collection-, Set-, List-, and Map-valued attributes) of the managed type. Returns empty set if the managed type has no multi-valued attributes.
- Returns:
- Collection-, Set-, List-, and Map-valued attributes
- Since:
- JPA 2.0
SetAttribute<?,?> getSet(String name)
Return the Set-valued attribute of the managed type that corresponds to the specified name.
- Parameters:
-
name
- the name of the represented attribute
- Returns:
- SetAttribute of the given name
- Throws:
-
IllegalArgumentException
- if attribute of the given name is not present in the managed type
- Since:
- JPA 2.0
SetAttribute<?,E> getSet(String name, Class<E> elementType)
Return the Set-valued attribute of the managed type that corresponds to the specified name and Java element type.
- Parameters:
-
name
- the name of the represented attributeelementType
- the element type of the represented attribute
- Returns:
- SetAttribute of the given name and element type
- Throws:
-
IllegalArgumentException
- if attribute of the given name and type is not present in the managed type
- Since:
- JPA 2.0
SingularAttribute<?,?> getSingularAttribute(String name)
Return the single-valued attribute of the managed type that corresponds to the specified name.
- Parameters:
-
name
- the name of the represented attribute
- Returns:
- single-valued attribute with the given name
- Throws:
-
IllegalArgumentException
- if attribute of the given name is not present in the managed type
- Since:
- JPA 2.0
SingularAttribute<?,Y> getSingularAttribute(String name, Class<Y> type)
Return the single-valued attribute of the managed type that corresponds to the specified name and Java type.
- Parameters:
-
name
- the name of the represented attributetype
- the type of the represented attribute
- Returns:
- single-valued attribute with given name and type
- Throws:
-
IllegalArgumentException
- if attribute of the given name and type is not present in the managed type
- Since:
- JPA 2.0
Return the single-valued attributes of the managed type. Returns empty set if the managed type has no single-valued attributes.
- Returns:
- single-valued attributes
- Since:
- JPA 2.0
Return the identifiable type that corresponds to the most specific mapped superclass or entity extended by the entity or mapped superclass.
- Returns:
- supertype of identifiable type or null if no such supertype
- Since:
- JPA 2.0
SingularAttribute<?,Y> getVersion(Class<Y> type)
Return the attribute that corresponds to the version attribute of the entity or mapped superclass.
- Parameters:
-
type
- the type of the represented version attribute
- Returns:
- version attribute
- Throws:
-
IllegalArgumentException
- if version attribute of the given type is not present in the identifiable type
- Since:
- JPA 2.0
boolean hasSingleIdAttribute()
Whether the identifiable type has a single id attribute. Returns true for a simple id or embedded id; returns false for an idclass.
- Returns:
- boolean indicating whether the identifiable type has a single id attribute
- Since:
- JPA 2.0
boolean hasVersionAttribute()
Whether the identifiable type has a version attribute.
- Returns:
- boolean indicating whether the identifiable type has a version attribute
- Since:
- JPA 2.0