Interface SecGraph

All Superinterfaces:
Cloneable, GraphContext, GraphManagerContext, GraphObject, ProducingNode, RegistryContext
All Known Implementing Classes:
SecGraphImpl, SecGraphRef

public interface SecGraph extends GraphObject, Cloneable
defines what a graph object stored in the SecGraph explorer should be able to do
  • Field Details

  • Method Details

    • clear

      void clear()
      removes all Nodes except the root
    • apply

      void apply(String name)
      Apply a RGG function on the SecGraph
      Parameters:
      name - : name of the function
    • applyXL

      void applyXL(String query)
      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

      Node getQueryRoot(boolean create)
    • getProductionRoot

      Node getProductionRoot(boolean create)
    • query

      Object query()
    • production

      Object production()
    • includes

      boolean includes(SecGraph sg) throws de.grogra.graph.object.sg.impl.exception.NoQueryGraphException
      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.NoQueryGraphException
      test 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.NoRuleGraphException
      run this SecGraph as a rule on the MainGraph
      Throws:
      de.grogra.graph.object.sg.impl.exception.NoRuleGraphException
    • execute

      void execute(SecGraph sg) throws de.grogra.graph.object.sg.impl.exception.NoRuleGraphException
      run this SecGraph as a rule on the given secGraph
      Parameters:
      sg -
      Throws:
      de.grogra.graph.object.sg.impl.exception.NoRuleGraphException
    • apply

      void apply(SecGraph rule) throws de.grogra.graph.object.sg.impl.exception.NoRuleGraphException
      apply the given SecGraph on this SecGraph
      Parameters:
      rule -
      Throws:
      de.grogra.graph.object.sg.impl.exception.NoRuleGraphException
    • clone

      Throws:
      CloneNotSupportedException
    • add

      void add(GraphContext sg)
    • producer$begin

      SecGraphInitialProducer producer$begin()