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 and Description
    `NodeProvisioner(ReteContainer reteContainer)` PRE: NodeFactory, ConnectionFactory must exist

  - ### Method Summary

    All Methods Instance Methods Concrete Methods
    Modifier and Type | Method and 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)