Package cz.encircled.joiner.query.join
Class DefaultJoinGraphRegistry
java.lang.Object
cz.encircled.joiner.query.join.DefaultJoinGraphRegistry
- All Implemented Interfaces:
JoinGraphRegistry
ConcurrentHashMap-based implementation of
JoinGraphRegistry- Author:
- Vlad on 15-Aug-16.
-
Constructor Summary
Constructors -
Method Summary
Modifier and TypeMethodDescriptiongetAllJoinGraphs(Class<?> clazz) getJoinGraph(Class<?> clazz, Object name) voidregisterJoinGraph(Object graphName, Collection<JoinDescription> joins, Class<?>... rootClasses) Adds new join graph to the registry.voidregisterOrReplaceJoinGraph(Object graphName, Collection<JoinDescription> joins, Class<?>... rootClasses) Adds new join graph to the registry or replace an existing one.voidreplaceJoinGraph(Object graphName, Collection<JoinDescription> joins, Class<?>... rootClasses) Replace an existing join graph with a new one
-
Constructor Details
-
DefaultJoinGraphRegistry
public DefaultJoinGraphRegistry()
-
-
Method Details
-
registerJoinGraph
public void registerJoinGraph(Object graphName, Collection<JoinDescription> joins, Class<?>... rootClasses) Description copied from interface:JoinGraphRegistryAdds new join graph to the registry.- Specified by:
registerJoinGraphin interfaceJoinGraphRegistry- Parameters:
graphName- graph unique name. Generally, any object may be used as a name, it should have correct hashCode method. String or enum is recommended.joins- associated joinsrootClasses- target class for a new join graph
-
replaceJoinGraph
public void replaceJoinGraph(Object graphName, Collection<JoinDescription> joins, Class<?>... rootClasses) Description copied from interface:JoinGraphRegistryReplace an existing join graph with a new one- Specified by:
replaceJoinGraphin interfaceJoinGraphRegistry- Parameters:
graphName- graph unique name. Generally, any object may be used as a name, it should have correct hashCode method. String or enum is recommended.joins- associated joinsrootClasses- target class for a new join graph
-
registerOrReplaceJoinGraph
public void registerOrReplaceJoinGraph(Object graphName, Collection<JoinDescription> joins, Class<?>... rootClasses) Description copied from interface:JoinGraphRegistryAdds new join graph to the registry or replace an existing one.- Specified by:
registerOrReplaceJoinGraphin interfaceJoinGraphRegistry- Parameters:
graphName- graph unique name. Generally, any object may be used as a name, it should have correct hashCode method. String or enum is recommended.joins- associated joinsrootClasses- target class for a new join graph
-
getJoinGraph
- Specified by:
getJoinGraphin interfaceJoinGraphRegistry- Parameters:
clazz- target classname- join graph name- Returns:
- collection of registered join graphs
-
getAllJoinGraphs
- Specified by:
getAllJoinGraphsin interfaceJoinGraphRegistry- Parameters:
clazz- target class- Returns:
- map of all registered join graphs
-