- All Superinterfaces:
Cloneable,Graph,GraphContext,GraphManagerContext,GraphObject,ProducingNode,RegistryContext
- All Known Implementing Classes:
SecGraphImpl,SecGraphM,SecGraphNode,SecGraphRef
defines what a graph object stored in the SecGraph explorer should be able to do
-
Field Summary
Fields -
Method Summary
Modifier and TypeMethodDescriptionvoidadd(GraphContext sg) voidapply the given SecGraph on this SecGraphvoidApply a RGG function on the SecGraphvoidApply an XL Query on the SecGraphvoidclear()removes all Nodes except the rootlongderive()voidexecute()run this SecGraph as a rule on the MainGraphvoidrun this SecGraph as a rule on the given secGraphcreate a new producer to initialize the GraphgetProductionRoot(boolean create) getQueryRoot(boolean create) voidfunction triggered by the saving of the projectbooleantest if this SecGraph incldues the SecGraph SGbooleantest if this SecGraph incldues the given SecGraph or if the query SecGraph of this graph is included in the given SecGraphbooleantest if this graph is included in the ProjectGraphbooleaninProjectGraph(boolean asQuery) test if this graph is included in the ProjectGraph or if the query SecGraph of this graph is included in the Project Graphbooleancheck if the secgraph includes a queryRootbooleancheck if the secgraph includes a QueryRoot and a ProductionRootquery()voidset the project graph to be teh current onevoidsetAutoRecreate(boolean b) defines if the SecGraph is automatically recreated if the model is savedvoidset this graph to be the currently used onecreates a Node holding a instanciation of the SecGraphMethods inherited from interface de.grogra.xl.query.Graph
canEnumerateEdges, canEnumerateNodes, createMatcher, createProducer, createQueryState, enumerateEdges, enumerateNodes, enumerateSpaces, getModel, getRoot, getTypeRoot, sortedTypeGraphMethods inherited from interface de.grogra.graph.object.GraphObject
cloneGraph, describes, getGraph, getName, getNode, getRootNode, reload, resolve, setRootNode, view2d, view3d, writeMethods inherited from interface de.grogra.imp.objects.ProducingNode
produceNodeMethods inherited from interface de.grogra.pf.registry.RegistryContext
getRegistry
-
Field Details
-
QUERY_ROOT
- See Also:
-
PRODUCTION_ROOT
- See Also:
-
-
Method Details
-
clear
void clear()removes all Nodes except the root -
apply
Apply a RGG function on the SecGraph- Parameters:
name- : name of the function
-
applyXL
Apply an XL Query on the SecGraph- Parameters:
query- : the XL query
-
toInstance
Node toInstance()creates a Node holding a instanciation of the SecGraph- Returns:
- the Node
-
handleSaveEvent
void handleSaveEvent()function triggered by the saving of the project -
setAutoRecreate
void setAutoRecreate(boolean b) defines if the SecGraph is automatically recreated if the model is saved- Parameters:
b- sets if recreated or not
-
getInitalProducer
Object getInitalProducer()create a new producer to initialize the Graph- Returns:
-
setCurrent
void setCurrent()set this graph to be the currently used one -
releaseCurrent
void releaseCurrent()set the project graph to be teh current one -
isQueryGraph
boolean isQueryGraph()check if the secgraph includes a queryRoot- Returns:
-
isRuleGraph
boolean isRuleGraph()check if the secgraph includes a QueryRoot and a ProductionRoot- Returns:
-
getQueryRoot
-
getProductionRoot
-
query
Object query() -
production
Object production() -
includes
test if this SecGraph incldues the SecGraph SG- Parameters:
sg-- Returns:
- Throws:
de.grogra.graph.object.sg.impl.exception.NoQueryGraphException
-
includes
boolean includes(SecGraph sg, boolean asQuery) throws de.grogra.graph.object.sg.impl.exception.NoQueryGraphException test if this SecGraph incldues the given SecGraph or if the query SecGraph of this graph is included in the given SecGraph- Parameters:
sg-- Returns:
- Throws:
de.grogra.graph.object.sg.impl.exception.NoQueryGraphException
-
inProjectGraph
boolean inProjectGraph() throws de.grogra.graph.object.sg.impl.exception.NoQueryGraphExceptiontest if this graph is included in the ProjectGraph- Returns:
- Throws:
de.grogra.graph.object.sg.impl.exception.NoQueryGraphException
-
inProjectGraph
boolean inProjectGraph(boolean asQuery) throws de.grogra.graph.object.sg.impl.exception.NoQueryGraphException test if this graph is included in the ProjectGraph or if the query SecGraph of this graph is included in the Project Graph- Parameters:
asQuery-- Returns:
- Throws:
de.grogra.graph.object.sg.impl.exception.NoQueryGraphException
-
execute
void execute() throws de.grogra.graph.object.sg.impl.exception.NoRuleGraphExceptionrun this SecGraph as a rule on the MainGraph- Throws:
de.grogra.graph.object.sg.impl.exception.NoRuleGraphException
-
execute
run this SecGraph as a rule on the given secGraph- Parameters:
sg-- Throws:
de.grogra.graph.object.sg.impl.exception.NoRuleGraphException
-
apply
apply the given SecGraph on this SecGraph- Parameters:
rule-- Throws:
de.grogra.graph.object.sg.impl.exception.NoRuleGraphException
-
add
-
producer$begin
SecGraphInitialProducer producer$begin() -
getRGGGraph
RGGGraph getRGGGraph() -
derive
long derive()
-