T
- The type of the root entity.public interface EntityGraph<T>
The methods to add subgraphs implicitly create the corresponding attribute nodes as well; such attribute nodes should not be redundantly specified.
AttributeNode
,
Subgraph
,
NamedEntityGraph
Modifier and Type | Method and Description |
---|---|
void |
addAttributeNodes(Attribute<T,?>... attribute)
Add one or more attribute nodes to the entity graph.
|
void |
addAttributeNodes(java.lang.String... attributeName)
Add one or more attribute nodes to the entity graph.
|
<X> Subgraph<X> |
addKeySubgraph(Attribute<T,X> attribute)
Add a node to the graph that corresponds to a map key
that is a managed type.
|
<X> Subgraph<? extends X> |
addKeySubgraph(Attribute<T,X> attribute,
java.lang.Class<? extends X> type)
Add a node to the graph that corresponds to a map key
that is a managed type with inheritance.
|
<X> Subgraph<X> |
addKeySubgraph(java.lang.String attributeName)
Add a node to the graph that corresponds to a map key
that is a managed type.
|
<X> Subgraph<X> |
addKeySubgraph(java.lang.String attributeName,
java.lang.Class<X> type)
Add a node to the graph that corresponds to a map key
that is a managed type with inheritance.
|
<T> Subgraph<? extends T> |
addSubclassSubgraph(java.lang.Class<? extends T> type)
Add additional attributes to this entity graph that
correspond to attributes of subclasses of this EntityGraph's
entity type.
|
<X> Subgraph<X> |
addSubgraph(Attribute<T,X> attribute)
Add a node to the graph that corresponds to a managed
type.
|
<X> Subgraph<? extends X> |
addSubgraph(Attribute<T,X> attribute,
java.lang.Class<? extends X> type)
Add a node to the graph that corresponds to a managed
type with inheritance.
|
<X> Subgraph<X> |
addSubgraph(java.lang.String attributeName)
Add a node to the graph that corresponds to a managed
type.
|
<X> Subgraph<X> |
addSubgraph(java.lang.String attributeName,
java.lang.Class<X> type)
Add a node to the graph that corresponds to a managed
type with inheritance.
|
java.util.List<AttributeNode<?>> |
getAttributeNodes()
Return the attribute nodes of this entity that are included in
the entity graph.
|
java.lang.String |
getName()
Return the name of a named EntityGraph (an entity graph
defined by means of the
NamedEntityGraph
annotation, XML descriptor element, or added by means of the
addNamedEntityGraph method. |
java.lang.String getName()
NamedEntityGraph
annotation, XML descriptor element, or added by means of the
addNamedEntityGraph
method. Returns null if the
EntityGraph is not a named EntityGraph.void addAttributeNodes(java.lang.String... attributeName)
attributeName
- name of the attributejava.lang.IllegalArgumentException
- if the attribute is not an
attribute of this entity.java.lang.IllegalStateException
- if the EntityGraph has been
statically definedvoid addAttributeNodes(Attribute<T,?>... attribute)
attribute
- attributejava.lang.IllegalStateException
- if the EntityGraph has been
statically defined<X> Subgraph<X> addSubgraph(Attribute<T,X> attribute)
attribute
- attributejava.lang.IllegalArgumentException
- if the attribute's target type
is not a managed typejava.lang.IllegalStateException
- if the EntityGraph has been
statically defined<X> Subgraph<? extends X> addSubgraph(Attribute<T,X> attribute, java.lang.Class<? extends X> type)
attribute
- attributetype
- entity subclassjava.lang.IllegalArgumentException
- if the attribute's target
type is not a managed typejava.lang.IllegalStateException
- if the EntityGraph has been
statically defined<X> Subgraph<X> addSubgraph(java.lang.String attributeName)
attributeName
- name of the attributejava.lang.IllegalArgumentException
- if the attribute is not an
attribute of this entity.java.lang.IllegalArgumentException
- if the attribute's target type
is not a managed typejava.lang.IllegalStateException
- if the EntityGraph has been
statically defined<X> Subgraph<X> addSubgraph(java.lang.String attributeName, java.lang.Class<X> type)
attributeName
- name of the attributetype
- entity subclassjava.lang.IllegalArgumentException
- if the attribute is not an
attribute of this managed type.java.lang.IllegalArgumentException
- if the attribute's target type
is not a managed typejava.lang.IllegalStateException
- if this EntityGraph has been
statically defined<X> Subgraph<X> addKeySubgraph(Attribute<T,X> attribute)
attribute
- attributejava.lang.IllegalArgumentException
- if the attribute's target type
is not an entityjava.lang.IllegalStateException
- if this EntityGraph has been
statically defined<X> Subgraph<? extends X> addKeySubgraph(Attribute<T,X> attribute, java.lang.Class<? extends X> type)
attribute
- attributetype
- entity subclassjava.lang.IllegalArgumentException
- if the attribute's target type
is not an entityjava.lang.IllegalStateException
- if this EntityGraph has been
statically defined<X> Subgraph<X> addKeySubgraph(java.lang.String attributeName)
attributeName
- name of the attributejava.lang.IllegalArgumentException
- if the attribute is not an
attribute of this entity.java.lang.IllegalArgumentException
- if the attribute's target type
is not an entityjava.lang.IllegalStateException
- if this EntityGraph has been
statically defined<X> Subgraph<X> addKeySubgraph(java.lang.String attributeName, java.lang.Class<X> type)
attributeName
- name of the attributetype
- entity subclassjava.lang.IllegalArgumentException
- if the attribute is not an
attribute of this entity.java.lang.IllegalArgumentException
- if the attribute's target type
is not a managed typejava.lang.IllegalStateException
- if this EntityGraph has been
statically defined<T> Subgraph<? extends T> addSubclassSubgraph(java.lang.Class<? extends T> type)
type
- entity subclassjava.lang.IllegalArgumentException
- if the type is not an entity typejava.lang.IllegalStateException
- if the EntityGraph has been
statically definedjava.util.List<AttributeNode<?>> getAttributeNodes()