Package org.eclipse.viatra.query.runtime.rete.network

## Class NodeProvisioner

- java.lang.Object
- - org.eclipse.viatra.query.runtime.rete.network.NodeProvisioner

-     public class NodeProvisioner
      extends java.lang.Object

  Stores the internal parts of a rete network. Nodes are stored according to type and parameters.

- - ### Constructor Summary

    Constructors
    Constructor | Description
    --- | ---
    `NodeProvisioner​(ReteContainer reteContainer)` | PRE: NodeFactory, ConnectionFactory must exist

  - ### Method Summary

    All Methods Instance Methods Concrete Methods
    Modifier and Type | Method | Description
    --- | --- | ---
    `ProjectionIndexer` | `accessProjectionIndexer​(RecipeTraceInfo productionTrace, TupleMask mask)` |
    `ProjectionIndexer` | `accessProjectionIndexerOnetime​(RecipeTraceInfo supplierTrace, TupleMask mask)` |
    `Supplier` | `asSupplier​(Address<? extends Supplier> address)` | The powerful method for accessing any (supplier) Address as a local supplier.
    `Address<? extends Node>` | `getOrCreateNodeByRecipe​(RecipeTraceInfo recipeTrace)` |
    `ProjectionIndexer` | `peekProjectionIndexer​(RecipeTraceInfo supplierTrace, TupleMask mask)` |

    - ### Methods inherited from class java.lang.Object

      `clone, equals, finalize, getClass, hashCode, notify, notifyAll, toString, wait, wait, wait`

- - ### Constructor Detail

    - #### NodeProvisioner

          public NodeProvisioner​(ReteContainer reteContainer)

      PRE: NodeFactory, ConnectionFactory must exist
      Parameters:
        `reteContainer` - the ReteNet whose interior is to be mapped.

  - ### Method Detail

    - #### getOrCreateNodeByRecipe

          public Address<? extends Node> getOrCreateNodeByRecipe​(RecipeTraceInfo recipeTrace)

    - #### asSupplier

          public Supplier asSupplier​(Address<? extends Supplier> address)

      The powerful method for accessing any (supplier) Address as a local supplier.

    - #### accessProjectionIndexer

          public ProjectionIndexer accessProjectionIndexer​(RecipeTraceInfo productionTrace,
                                                           TupleMask mask)

    - #### accessProjectionIndexerOnetime

          public ProjectionIndexer accessProjectionIndexerOnetime​(RecipeTraceInfo supplierTrace,
                                                                  TupleMask mask)

    - #### peekProjectionIndexer

          public ProjectionIndexer peekProjectionIndexer​(RecipeTraceInfo supplierTrace,
                                                         TupleMask mask)