- All Implemented Interfaces:
GraphContext,GraphManagerContext,IntegratableWrappedGraphObj,Integrateable,Interpretable,InterpretableWrappedGraphObj,Producable,ProducableWrappedGraphObj,Rewritable,WrappedGraph,WrappedGraphObj,ProducingNode,DisposableField,Manageable,Shareable,RegistryContext,Selectable,Graph
- Direct Known Subclasses:
ThreadedSecGraph
@HasModel(Compiletime.class)
public class SecGraph
extends RewritableWrappedGraph
implements IntegratableWrappedGraphObj, InterpretableWrappedGraphObj, ProducingNode
The SecGraph implementation so WrappedGraph stores and retrieves the content
of the DataGraph from xml files (same structure as the project graph).
A SecGraph can be used as a Variable, Field or Resource. While as a variable
(if its not a field) they are not stored at all, as a Field they are stored
using the functionality of the EmbeddedSharedObjects to store them in (objects/ESOsecgraphs).
If used as a Resource the saving is managed by hook that calls the save command
in SecGraphRef, additionally the resources are reloaded after compilation to make
sure the modules of the DataGraph are up to date with the compiled classes.
(this can be disabled with setAutoRecreate)
-
Nested Class Summary
Nested ClassesNested classes/interfaces inherited from class de.grogra.imp.registry.EmbeddedSharedObject
EmbeddedSharedObject.GetExtFromMimeType -
Field Summary
FieldsFields inherited from class de.grogra.graph.wrapped.SharedWrappedGraph
gm, INIT_GS, querygraph, registry, W_GRAPH -
Constructor Summary
ConstructorsConstructorDescriptionSecGraph()SecGraph(WrappedGraph wg) Due to the nature of the SecGraphImporter it is possible that a SecGraph is initialized with a provided root node (isRoot=true).SecGraph(Context ctx, WrappedGraph wg) -
Method Summary
Modifier and TypeMethodDescriptionget the DataGraph and if necessary (the first time) initialize it.operator$index(String key) Return a new GraphInstance with the WrappedGraph as parameter if the WrappedGraph is added to the production of a RGG rule.voidsetRootNode(Node n) Push the Node n to be the root "MAIN_GRAPH" in the DataGraphMethods inherited from class de.grogra.graph.wrapped.RewritableWrappedGraph
getExtension, getMimeType, getObjectType, getResourceDirectoryName, hasContent, initialize, isAutoRecreate, reload, setAutoRecreate, wasChanged, write, write, writeMethods inherited from class de.grogra.graph.wrapped.SharedWrappedGraph
clearQueryGraph, disposeField, getName, getQueryGraph, getRegistry, resolveMethods inherited from class de.grogra.imp.registry.EmbeddedSharedObject
getProvider, getProvider, initProvider, manageableReadResolve, manageableWriteReplaceMethods inherited from class de.grogra.persistence.ShareableBase
addReference, appendReferencesTo, fieldModified, getStamp, removeReferenceMethods inherited from class java.lang.Object
clone, equals, finalize, getClass, hashCode, notify, notifyAll, toString, wait, wait, waitMethods inherited from interface de.grogra.graph.wrapped.IntegratableWrappedGraphObj
cloneEmbed, getFullTransformation, getOutNodeMethods inherited from interface de.grogra.graph.wrapped.InterpretableWrappedGraphObj
intepreteEmbed, interpreteGraph, InterpreteObjectMethods inherited from interface de.grogra.graph.wrapped.ProducableWrappedGraphObj
getInitalProducer, producer$beginMethods inherited from interface de.grogra.pf.registry.RegistryContext
getRegistryMethods inherited from interface de.grogra.graph.wrapped.WrappedGraph
canEnumerateEdges, canEnumerateNodes, createMatcher, createProducer, createQueryState, enumerateEdges, enumerateNodes, getModel, getName, getQueryGraph, getRoot, reload, setDerivationModeMethods inherited from interface de.grogra.graph.wrapped.WrappedGraphObj
apply, clear, cloneAllNodes, cloneGraph, derive, getCommandDir, getGraph, getRootNode, toInstance, toSelection, view2d, view3d
-
Field Details
-
MIME_TYPE
-
$TYPE
-
-
Constructor Details
-
SecGraph
public SecGraph() -
SecGraph
-
SecGraph
-
SecGraph
- Throws:
CloneNotSupportedException
-
SecGraph
- Throws:
CloneNotSupportedException
-
SecGraph
Due to the nature of the SecGraphImporter it is possible that a SecGraph is initialized with a provided root node (isRoot=true). If the provided root is not considered to be the root the node and the graph below are cloned in the DataGraph.- Parameters:
ctx-node-isRoot-
-
SecGraph
-
-
Method Details
-
getDataGraph
Description copied from class:SharedWrappedGraphget the DataGraph and if necessary (the first time) initialize it.- Specified by:
getDataGraphin interfaceWrappedGraph- Overrides:
getDataGraphin classSharedWrappedGraph
-
setRootNode
Description copied from interface:WrappedGraphObjPush the Node n to be the root "MAIN_GRAPH" in the DataGraph- Specified by:
setRootNodein interfaceWrappedGraph- Specified by:
setRootNodein interfaceWrappedGraphObj
-
produceNode
Return a new GraphInstance with the WrappedGraph as parameter if the WrappedGraph is added to the production of a RGG rule.- Specified by:
produceNodein interfaceProducingNode
-
getSGRoot
-
operator$index
-
getManageableType
- Specified by:
getManageableTypein interfaceManageable- Overrides:
getManageableTypein classRewritableWrappedGraph
-