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 endThis 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.