EclipseLink 2.5.0, build 'v20130507-3faac2b' API Reference

org.eclipse.persistence.jaxb
Interface Subgraph

Type Parameters:
T - the Class type of the AttributeNode.
All Superinterfaces:
AttributeNode

public interface Subgraph
extends AttributeNode

This type represents a AttributeNode of an EntityGraph that corresponds to a Managed Type. Using this class an entity graph can be embedded within an EntityGraph.


Method Summary
 void addAttributeNodes(java.lang.String... attributeName)
          Add an AttributeNode attribute to the entity graph.
 Subgraph addSubgraph(java.lang.String attribute)
          Used to add a node of the graph that corresponds to a managed type.
 Subgraph addSubgraph(java.lang.String attribute, java.lang.Class type)
          Used to add a node of the graph that corresponds to a managed type with inheritance.
 java.util.List<AttributeNode> getAttributeNodes()
          returns the attributes of this managed type that are included in the sub-graph
 java.lang.Class getClassType()
          returns the attribute that references this sub-graph
 
Methods inherited from interface org.eclipse.persistence.jaxb.AttributeNode
getAttributeName
 

Method Detail

addAttributeNodes

void addAttributeNodes(java.lang.String... attributeName)
Add an AttributeNode attribute to the entity graph.

Throws:
java.lang.IllegalArgumentException - if the attribute is not an attribute of this managed type.
java.lang.IllegalStateException - if this EntityGraph has been statically defined

addSubgraph

Subgraph addSubgraph(java.lang.String attribute)
Used to add a node of the graph that corresponds to a managed type. This allows for construction of multi-node Entity graphs that include related managed types.

Throws:
java.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 type
java.lang.IllegalStateException - if this EntityGraph has been statically defined

addSubgraph

Subgraph addSubgraph(java.lang.String attribute,
                     java.lang.Class type)
Used to add a node of the graph that corresponds to a managed type with inheritance. This allows for multiple subclass sub-graphs to be defined for this node of the entity graph. Subclass sub-graphs will include the specified attributes of superclass sub-graphs

Throws:
java.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 type
java.lang.IllegalStateException - if this EntityGraph has been statically defined

getAttributeNodes

java.util.List<AttributeNode> getAttributeNodes()
returns the attributes of this managed type that are included in the sub-graph


getClassType

java.lang.Class getClassType()
returns the attribute that references this sub-graph. / public Attribute getReferencingAttribute(); /** returns the type of this sub-graph if it was used to extend a superclass sub-graph definition.


EclipseLink 2.5.0, build 'v20130507-3faac2b' API Reference