Interface Subgraph

  • 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

      All Methods Instance Methods Abstract Methods 
      Modifier and Type Method Description
      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 type of this sub-graph if it was used to extend a superclass sub-graph definition.
    • 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 type of this sub-graph if it was used to extend a superclass sub-graph definition.