Package org.hibernate.graph
Class GraphParser
- java.lang.Object
-
- org.hibernate.graph.GraphParser
-
public final class GraphParser extends Object
Parser for string representations of JPAEntityGraph(RootGraph) andSubgraph(SubGraph), using a simple syntax defined by the `graph.g` Antlr grammar. Theparse(java.lang.Class<T>, java.lang.CharSequence, javax.persistence.EntityManager)methods all create a rootEntityGraphbased on the passed entity class and parse the graph string into that root graph. TheparseInto(org.hibernate.graph.Graph<T>, java.lang.CharSequence, javax.persistence.EntityManager)methods parse the graph string into a passed graph, which may be a sub-graph Multiple graphs made for the same entity type can be merged. SeeEntityGraphs.merge(javax.persistence.EntityManager, java.lang.Class<T>, javax.persistence.EntityGraph<T>...).
-
-
Constructor Summary
Constructors Constructor Description GraphParser()
-
Method Summary
All Methods Static Methods Concrete Methods Modifier and Type Method Description static <T> RootGraph<T>parse(Class<T> rootType, CharSequence graphText, EntityManager entityManager)Creates a root graph based on the passed `rootType` and parses `graphText` into the generated root graphstatic <T> voidparseInto(EntityGraph<T> graph, CharSequence graphText, EntityManager entityManager)Parses the textual graph representation into the specified graph.static <T> voidparseInto(EntityGraph<T> graph, CharSequence graphText, EntityManagerFactory entityManagerFactory)Parses the textual graph representation into the specified graph.static <T> voidparseInto(Subgraph<T> graph, CharSequence graphText, EntityManager entityManager)Parses the textual graph representation into the specified graph.static <T> voidparseInto(Subgraph<T> graph, CharSequence graphText, EntityManagerFactory entityManagerFactory)Parses the textual graph representation into the specified graph.static <T> voidparseInto(Graph<T> graph, CharSequence graphText, EntityManager entityManager)Parses the textual graph representation into the specified graph.static <T> voidparseInto(Graph<T> graph, CharSequence graphText, EntityManagerFactory entityManagerFactory)Parses the textual graph representation into the specified graph.
-
-
-
Method Detail
-
parse
public static <T> RootGraph<T> parse(Class<T> rootType, CharSequence graphText, EntityManager entityManager)
Creates a root graph based on the passed `rootType` and parses `graphText` into the generated root graph- Parameters:
rootType- The root entity typegraphText- The textual representation of the graphentityManager- The EntityManager- Throws:
InvalidGraphException- if the textual representation is invalid.- ApiNote:
- The passed EntityManager is expected to be a Hibernate implementation. Attempting to pass another provider's EntityManager implementation will fail
-
parseInto
public static <T> void parseInto(Graph<T> graph, CharSequence graphText, EntityManager entityManager)
Parses the textual graph representation into the specified graph.- Parameters:
graph- The target graph. This is the graph that will be populated by this processgraphText- Textual representation of the graphentityManager- The EntityManager- Throws:
InvalidGraphException- if the textual representation is invalid.
-
parseInto
public static <T> void parseInto(EntityGraph<T> graph, CharSequence graphText, EntityManager entityManager)
Parses the textual graph representation into the specified graph.- Parameters:
graph- The target graph. This is the graph that will be populated by this processgraphText- Textual representation of the graphentityManager- The EntityManager- Throws:
InvalidGraphException- if the textual representation is invalid.
-
parseInto
public static <T> void parseInto(Subgraph<T> graph, CharSequence graphText, EntityManager entityManager)
Parses the textual graph representation into the specified graph.- Parameters:
graph- The target graph. This is the graph that will be populated by this processgraphText- Textual representation of the graphentityManager- The EntityManager- Throws:
InvalidGraphException- if the textual representation is invalid.
-
parseInto
public static <T> void parseInto(Graph<T> graph, CharSequence graphText, EntityManagerFactory entityManagerFactory)
Parses the textual graph representation into the specified graph.- Parameters:
graph- The target graph. This is the graph that will be populated by this processgraphText- Textual representation of the graphentityManagerFactory- The EntityManagerFactory- Throws:
InvalidGraphException- if the textual representation is invalid.
-
parseInto
public static <T> void parseInto(EntityGraph<T> graph, CharSequence graphText, EntityManagerFactory entityManagerFactory)
Parses the textual graph representation into the specified graph.- Parameters:
graph- The target graph. This is the graph that will be populated by this processgraphText- Textual representation of the graphentityManagerFactory- The EntityManagerFactory- Throws:
InvalidGraphException- if the textual representation is invalid.
-
parseInto
public static <T> void parseInto(Subgraph<T> graph, CharSequence graphText, EntityManagerFactory entityManagerFactory)
Parses the textual graph representation into the specified graph.- Parameters:
graph- The target graph. This is the graph that will be populated by this processgraphText- Textual representation of the graphentityManagerFactory- The EntityManagerFactory- Throws:
InvalidGraphException- if the textual representation is invalid.
-
-