Interface EntityGraph
- All Known Implementing Classes:
EmptyEntityGraphImpl
,EntityGraphImpl
public interface EntityGraph
Class available to
entity-filtering processors
providing means to add/remove entity-filtering scopes
(e.g. based on annotations) for entity members.
Differences between this class and object graph
:
EntityGraph
can be modified,ObjectGraph
is read-only.EntityGraph
contains information about all entity-filtering scopes found during inspecting an entity class,ObjectGraph
provides information about entity to create a filtering object for a subset of these scopes (which are determined from the current context).
ScopeResolver
.- See Also:
-
Method Summary
Modifier and TypeMethodDescriptionAdd a field into this graph for all existing entity-filtering scopes.Add a field into this graph for given list of entity-filtering scopes.Add a field into this graph for given set of entity-filtering scopes.addFilteringScopes
(Set<String> filteringScopes) Add a set of entity-filtering scopes to this graph.addSubgraph
(String fieldName, Class<?> fieldClass) Add a subgraph into this graph for all existing entity-filtering scopes.addSubgraph
(String fieldName, Class<?> fieldClass, String... filteringScopes) Add a subgraph into this graph for given list of entity-filtering scopes.addSubgraph
(String fieldName, Class<?> fieldClass, Set<String> filteringScopes) Add a subgraph into this graph for given set of entity-filtering scopes.Get all available entity-filtering scopes defined on a class.Class
<?> Get an entity class this graph is created for.Get fields for given entity-filtering scope.Get fields for given entity-filtering scopes.Get fields for given entity-filtering scopes.Get all available entity-filtering scopes.getSubgraphs
(String filteringScope) Get subgraphs for given entity-filtering scope.getSubgraphs
(String... filteringScopes) Get subgraphs for given entity-filtering scopes.getSubgraphs
(Set<String> filteringScopes) Get subgraphs for given entity-filtering scopes.boolean
presentInScope
(String field, String filteringScope) Determines whether a field/subgraph is present in ANY of the given scopes.boolean
presentInScopes
(String field) Determines whether a field/subgraph is present in ANY of the existing scopes.Remove a field/subgraph from the graph (all entity-filtering scopes).
-
Method Details
-
addField
Add a field into this graph for all existing entity-filtering scopes.- Parameters:
fieldName
- name of the field to be added.- Returns:
- an entity-filtering graph instance.
-
addField
Add a field into this graph for given list of entity-filtering scopes.- Parameters:
fieldName
- name of the field to be added.filteringScopes
- entity-filtering scopes for the field.- Returns:
- an entity-filtering graph instance.
-
addField
Add a field into this graph for given set of entity-filtering scopes.- Parameters:
fieldName
- name of the field to be added.filteringScopes
- entity-filtering scopes for the field.- Returns:
- an entity-filtering graph instance.
-
addSubgraph
Add a subgraph into this graph for all existing entity-filtering scopes.- Parameters:
fieldName
- name of the subgraph field to be added.fieldClass
- entity class representing the subgraph.- Returns:
- an entity-filtering graph instance.
-
addSubgraph
Add a subgraph into this graph for given list of entity-filtering scopes.- Parameters:
fieldName
- name of the subgraph field to be added.fieldClass
- entity class representing the subgraph.filteringScopes
- entity-filtering scopes for the subgraph.- Returns:
- an entity-filtering graph instance.
-
addSubgraph
Add a subgraph into this graph for given set of entity-filtering scopes.- Parameters:
fieldName
- name of the subgraph field to be added.fieldClass
- entity class representing the subgraph.filteringScopes
- entity-filtering scopes for the subgraph.- Returns:
- an entity-filtering graph instance.
-
addFilteringScopes
Add a set of entity-filtering scopes to this graph.- Parameters:
filteringScopes
- entity-filtering scopes to be added.- Returns:
- an entity-filtering graph instance.
-
presentInScope
Determines whether a field/subgraph is present in ANY of the given scopes. If no scopes are given the return value determines whether the field is present in any scope.- Parameters:
field
- field to be checked.filteringScope
- entity-filtering scope.- Returns:
true
if field is present in the given scope,false
otherwise.
-
presentInScopes
Determines whether a field/subgraph is present in ANY of the existing scopes.- Parameters:
field
- field to be checked.- Returns:
true
if field is present in ANY of the existing scopes,false
otherwise.
-
getEntityClass
Class<?> getEntityClass()Get an entity class this graph is created for.- Returns:
- an entity class.
-
getFields
Get fields for given entity-filtering scope.- Parameters:
filteringScope
- scope the returned fields have to be in.- Returns:
- set of fields present in given scope.
-
getFields
Get fields for given entity-filtering scopes.- Parameters:
filteringScopes
- scopes the returned fields have to be in.- Returns:
- set of fields present in given scopes.
-
getFields
Get fields for given entity-filtering scopes.- Parameters:
filteringScopes
- scopes the returned fields have to be in.- Returns:
- set of fields present in given scopes.
-
getFilteringScopes
Get all available entity-filtering scopes.- Returns:
- all available entity-filtering scopes.
-
getClassFilteringScopes
Get all available entity-filtering scopes defined on a class.- Returns:
- all available entity-filtering scopes.
-
getSubgraphs
Get subgraphs for given entity-filtering scope.- Parameters:
filteringScope
- scope the returned subgraphs have to be in.- Returns:
- map of subgraphs present in given scope.
-
getSubgraphs
Get subgraphs for given entity-filtering scopes.- Parameters:
filteringScopes
- scopes the returned subgraphs have to be in.- Returns:
- map of subgraphs present in given scopes.
-
getSubgraphs
Get subgraphs for given entity-filtering scopes.- Parameters:
filteringScopes
- scopes the returned subgraphs have to be in.- Returns:
- map of subgraphs present in given scopes.
-
remove
Remove a field/subgraph from the graph (all entity-filtering scopes).- Parameters:
name
- name of the field/subgraph to be removed.- Returns:
- an entity-filtering graph instance.
-