Class RecipeTraceInfo
java.lang.Object
tools.refinery.interpreter.rete.traceability.RecipeTraceInfo
- All Implemented Interfaces:
TraceInfo
- Direct Known Subclasses:
ActiveNodeConflictTrace
,CompiledQuery
,ParameterProjectionTrace
,PlanningTrace
,UserRequestTrace
A trace marker that indicates the recipe for which the node was built.
-
Constructor Summary
ConstructorsConstructorDescriptionRecipeTraceInfo
(ReteNodeRecipe recipe, Collection<? extends RecipeTraceInfo> parentRecipeTraces) RecipeTraceInfo
(ReteNodeRecipe recipe, RecipeTraceInfo... parentRecipeTraces) -
Method Summary
Modifier and TypeMethodDescriptionvoid
assignNode
(Node node) getNode()
For cloning in case of recursion cut-off points, usegetParentRecipeTracesForCloning()
instead.Collection
<? extends RecipeTraceInfo> Directly return the underlying collection so that changes to it will be transparent.Get original recipe shadowed by an equivalentboolean
boolean
boolean
boolean
void
shadowWithEquivalentRecipe
(ReteNodeRecipe knownRecipe)
-
Constructor Details
-
RecipeTraceInfo
public RecipeTraceInfo(ReteNodeRecipe recipe, Collection<? extends RecipeTraceInfo> parentRecipeTraces) -
RecipeTraceInfo
-
-
Method Details
-
getRecipe
-
getParentRecipeTraces
For cloning in case of recursion cut-off points, usegetParentRecipeTracesForCloning()
instead.- Returns:
- an unmodifiable view on parent traces, to be constructed before this node (or alongside, in case of recursion)
-
getParentRecipeTracesForCloning
Directly return the underlying collection so that changes to it will be transparent. Use only for recursion-tolerant cloning. -
getNode
-
propagateToIndexerParent
public boolean propagateToIndexerParent()- Specified by:
propagateToIndexerParent
in interfaceTraceInfo
-
propagateFromIndexerToSupplierParent
public boolean propagateFromIndexerToSupplierParent()- Specified by:
propagateFromIndexerToSupplierParent
in interfaceTraceInfo
-
propagateFromStandardNodeToSupplierParent
public boolean propagateFromStandardNodeToSupplierParent()- Specified by:
propagateFromStandardNodeToSupplierParent
in interfaceTraceInfo
-
propagateToProductionNodeParentAlso
public boolean propagateToProductionNodeParentAlso()- Specified by:
propagateToProductionNodeParentAlso
in interfaceTraceInfo
-
assignNode
- Specified by:
assignNode
in interfaceTraceInfo
-
shadowWithEquivalentRecipe
- Parameters:
knownRecipe
- a known recipe that is equivalent to the current recipe
-
getShadowedRecipe
Get original recipe shadowed by an equivalent
-