LogicalFactType - The actual type of the fact in the current rule.GenuineFactType - The original type of the fact, in the original genuine rule.public interface DroolsMetadata<LogicalFactType,GenuineFactType>
rule "Rule with genuine facts"
when
$a: SomeFact()
$b: SomeOtherFact()
then
insertLogical(new LogicalTuple($a, $b));
end
rule "Rule with an inferred fact"
when
LogicalTuple($a: getItem(0), $b: getItem(1))
then
// some consequence
end
This class is an abstraction, allowing code to read variables of both types.| Modifier and Type | Method and Description |
|---|---|
org.drools.model.PatternDSL.PatternDef<LogicalFactType> |
buildPattern()
A pattern is a way of accessing the variable in Drools.
|
GenuineFactType |
extract(LogicalFactType container)
Extract variable value from the rule.
|
org.drools.model.Declaration<LogicalFactType> |
getVariableDeclaration() |
static <A> DroolsGenuineMetadata<A> |
ofGenuine(org.drools.model.Declaration<A> variableDeclaration) |
static <A> DroolsInferredMetadata<A> |
ofInferred(org.drools.model.Declaration<DroolsLogicalTuple> variableDeclaration,
Supplier<org.drools.model.PatternDSL.PatternDef<DroolsLogicalTuple>> patternBuilder) |
static <A> DroolsInferredMetadata<A> |
ofInferred(org.drools.model.Declaration<DroolsLogicalTuple> variableDeclaration,
Supplier<org.drools.model.PatternDSL.PatternDef<DroolsLogicalTuple>> patternBuilder,
int itemId) |
DroolsMetadata<LogicalFactType,GenuineFactType> |
substitute(Supplier<org.drools.model.PatternDSL.PatternDef<LogicalFactType>> patternBuilder)
Create new
DroolsMetadata, where its pattern will be different. |
static <A> DroolsInferredMetadata<A> ofInferred(org.drools.model.Declaration<DroolsLogicalTuple> variableDeclaration, Supplier<org.drools.model.PatternDSL.PatternDef<DroolsLogicalTuple>> patternBuilder)
static <A> DroolsInferredMetadata<A> ofInferred(org.drools.model.Declaration<DroolsLogicalTuple> variableDeclaration, Supplier<org.drools.model.PatternDSL.PatternDef<DroolsLogicalTuple>> patternBuilder, int itemId)
static <A> DroolsGenuineMetadata<A> ofGenuine(org.drools.model.Declaration<A> variableDeclaration)
GenuineFactType extract(LogicalFactType container)
Function.identity().
For inferred variables, this will refer to the DroolsLogicalTuple.getItem(int).container - the variable from Drools on which to operateorg.drools.model.Declaration<LogicalFactType> getVariableDeclaration()
org.drools.model.PatternDSL.PatternDef<LogicalFactType> buildPattern()
DroolsMetadata<LogicalFactType,GenuineFactType> substitute(Supplier<org.drools.model.PatternDSL.PatternDef<LogicalFactType>> patternBuilder)
DroolsMetadata, where its pattern will be different.patternBuilder - the new pattern to be returned by buildPattern(). Typically reuses the parent
pattern with some modifications.DroolsMetadata.Copyright © 2006–2019 JBoss by Red Hat. All rights reserved.