org.drools.rule.builder
Class PatternBuilder
java.lang.Object
org.drools.rule.builder.PatternBuilder
- All Implemented Interfaces:
- EngineElementBuilder, RuleConditionBuilder
public class PatternBuilder
- extends Object
- implements RuleConditionBuilder
A builder for patterns
Method Summary |
protected boolean |
addConstraintToPattern(RuleBuildContext context,
Pattern pattern,
RelationalExprDescr relDescr,
String expr,
String value1,
String value2,
boolean isConstant)
|
protected boolean |
addConstraintToPattern(RuleBuildContext context,
Pattern pattern,
RelationalExprDescr relDescr,
String expr,
String value1,
String value2,
boolean isConstant,
InternalReadAccessor extractor)
|
RuleConditionElement |
build(RuleBuildContext context,
BaseDescr descr)
|
RuleConditionElement |
build(RuleBuildContext context,
BaseDescr descr,
Pattern prefixPattern)
Build a pattern for the given descriptor in the current
context and using the given utils object |
protected void |
build(RuleBuildContext context,
PatternDescr patternDescr,
Pattern pattern,
BaseDescr original,
String expr)
|
protected void |
build(RuleBuildContext context,
PatternDescr patternDescr,
Pattern pattern,
ConstraintConnectiveDescr descr,
MVELDumper.MVELDumperContext mvelCtx)
|
static AnalysisResult |
buildAnalysis(RuleBuildContext context,
Pattern pattern,
PredicateDescr predicateDescr,
Map<String,OperatorDescr> aliases)
|
protected void |
buildCcdDescr(RuleBuildContext context,
PatternDescr patternDescr,
Pattern pattern,
BaseDescr d,
ConstraintConnectiveDescr ccd,
MVELDumper.MVELDumperContext mvelCtx)
|
protected void |
buildEval(RuleBuildContext context,
Pattern pattern,
PredicateDescr predicateDescr,
Map<String,OperatorDescr> aliases,
String expr,
boolean isEvalExpression)
|
protected void |
buildExpression(RuleBuildContext context,
Pattern pattern,
BaseDescr d,
String expr,
Map<String,OperatorDescr> aliases)
|
protected LiteralRestrictionDescr |
buildLiteralRestrictionDescr(RuleBuildContext context,
RelationalExprDescr exprDescr,
String rightValue,
String operator,
boolean isRightLiteral)
|
protected static Map<String,EvaluatorWrapper> |
buildOperators(RuleBuildContext context,
Pattern pattern,
PredicateDescr predicateDescr,
Map<String,OperatorDescr> aliases)
|
protected void |
buildRelationalExpression(RuleBuildContext context,
Pattern pattern,
RelationalExprDescr relDescr,
String expr,
Map<String,OperatorDescr> aliases)
|
protected void |
buildRuleBindings(RuleBuildContext context,
PatternDescr patternDescr,
Pattern pattern,
BindingDescr fieldBindingDescr)
|
protected void |
createAndBuildPredicate(RuleBuildContext context,
Pattern pattern,
BaseDescr base,
String expr,
Map<String,OperatorDescr> aliases)
|
protected static Declaration |
createDeclarationObject(RuleBuildContext context,
String identifier,
Pattern pattern)
Creates a declaration object for the field identified by the given identifier
on the give pattern object |
protected static Declaration |
createDeclarationObject(RuleBuildContext context,
String identifier,
String expr,
Pattern pattern)
|
static void |
createImplicitBindings(RuleBuildContext context,
Pattern pattern,
Set<String> unboundIdentifiers,
BoundIdentifiers boundIdentifiers,
List<Declaration> factDeclarations)
|
protected static ConstraintBuilder |
getConstraintBuilder(RuleBuildContext context)
|
static Map<String,Class<?>> |
getDeclarationsMap(BaseDescr baseDescr,
RuleBuildContext context,
boolean reportError)
|
static InternalReadAccessor |
getFieldReadAccessor(RuleBuildContext context,
BaseDescr descr,
ObjectType objectType,
String fieldName,
AcceptsReadAccessor target,
boolean reportError)
|
protected FieldValue |
getFieldValue(RuleBuildContext context,
ValueType vtype,
LiteralRestrictionDescr literalRestrictionDescr)
|
protected List<String> |
getSettableProperties(RuleBuildContext context,
PatternDescr patternDescr,
Pattern pattern)
|
static Declaration[][] |
getUsedDeclarations(RuleBuildContext context,
Pattern pattern,
AnalysisResult analysis)
|
protected boolean |
isSimpleExpr(RelationalExprDescr relDescr)
|
protected ConstraintConnectiveDescr |
parseExpression(RuleBuildContext context,
PatternDescr patternDescr,
BaseDescr original,
String expression)
|
protected void |
processAnnotations(RuleBuildContext context,
PatternDescr patternDescr,
Pattern pattern)
|
protected boolean |
processAtomicExpression(RuleBuildContext context,
Pattern pattern,
BaseDescr d,
String expr,
Map<String,OperatorDescr> aliases)
|
protected void |
processConstraintsAndBinds(RuleBuildContext context,
PatternDescr patternDescr,
Pattern pattern)
Process all constraints and bindings on this pattern |
protected void |
processDuplicateBindings(boolean isUnification,
PatternDescr patternDescr,
Pattern pattern,
BaseDescr original,
String leftExpression,
String rightIdentifier,
RuleBuildContext context)
|
protected void |
processListenedPropertiesAnnotation(RuleBuildContext context,
PatternDescr patternDescr,
Pattern pattern,
Map<String,AnnotationDescr> annotationMap)
|
protected void |
processMetadataAnnotations(Pattern pattern,
Map<String,AnnotationDescr> annotationMap)
|
protected void |
processPositional(RuleBuildContext context,
PatternDescr patternDescr,
Pattern pattern,
ExprConstraintDescr descr)
|
static void |
registerReadAccessor(RuleBuildContext context,
ObjectType objectType,
String fieldName,
AcceptsReadAccessor target)
|
protected void |
setInputs(RuleBuildContext context,
PatternBuilder.ExprBindings descrBranch,
Class<?> thisClass,
String expr)
|
Methods inherited from class java.lang.Object |
clone, equals, finalize, getClass, hashCode, notify, notifyAll, toString, wait, wait, wait |
PatternBuilder
public PatternBuilder()
build
public RuleConditionElement build(RuleBuildContext context,
BaseDescr descr)
- Specified by:
build
in interface RuleConditionBuilder
build
public RuleConditionElement build(RuleBuildContext context,
BaseDescr descr,
Pattern prefixPattern)
- Build a pattern for the given descriptor in the current
context and using the given utils object
- Specified by:
build
in interface RuleConditionBuilder
- Parameters:
context
- descr
- prefixPattern
-
- Returns:
processDuplicateBindings
protected void processDuplicateBindings(boolean isUnification,
PatternDescr patternDescr,
Pattern pattern,
BaseDescr original,
String leftExpression,
String rightIdentifier,
RuleBuildContext context)
processAnnotations
protected void processAnnotations(RuleBuildContext context,
PatternDescr patternDescr,
Pattern pattern)
processMetadataAnnotations
protected void processMetadataAnnotations(Pattern pattern,
Map<String,AnnotationDescr> annotationMap)
processListenedPropertiesAnnotation
protected void processListenedPropertiesAnnotation(RuleBuildContext context,
PatternDescr patternDescr,
Pattern pattern,
Map<String,AnnotationDescr> annotationMap)
getSettableProperties
protected List<String> getSettableProperties(RuleBuildContext context,
PatternDescr patternDescr,
Pattern pattern)
processConstraintsAndBinds
protected void processConstraintsAndBinds(RuleBuildContext context,
PatternDescr patternDescr,
Pattern pattern)
- Process all constraints and bindings on this pattern
- Parameters:
context
- patternDescr
- pattern
-
processPositional
protected void processPositional(RuleBuildContext context,
PatternDescr patternDescr,
Pattern pattern,
ExprConstraintDescr descr)
build
protected void build(RuleBuildContext context,
PatternDescr patternDescr,
Pattern pattern,
BaseDescr original,
String expr)
build
protected void build(RuleBuildContext context,
PatternDescr patternDescr,
Pattern pattern,
ConstraintConnectiveDescr descr,
MVELDumper.MVELDumperContext mvelCtx)
buildCcdDescr
protected void buildCcdDescr(RuleBuildContext context,
PatternDescr patternDescr,
Pattern pattern,
BaseDescr d,
ConstraintConnectiveDescr ccd,
MVELDumper.MVELDumperContext mvelCtx)
buildExpression
protected void buildExpression(RuleBuildContext context,
Pattern pattern,
BaseDescr d,
String expr,
Map<String,OperatorDescr> aliases)
buildRelationalExpression
protected void buildRelationalExpression(RuleBuildContext context,
Pattern pattern,
RelationalExprDescr relDescr,
String expr,
Map<String,OperatorDescr> aliases)
addConstraintToPattern
protected boolean addConstraintToPattern(RuleBuildContext context,
Pattern pattern,
RelationalExprDescr relDescr,
String expr,
String value1,
String value2,
boolean isConstant)
addConstraintToPattern
protected boolean addConstraintToPattern(RuleBuildContext context,
Pattern pattern,
RelationalExprDescr relDescr,
String expr,
String value1,
String value2,
boolean isConstant,
InternalReadAccessor extractor)
buildLiteralRestrictionDescr
protected LiteralRestrictionDescr buildLiteralRestrictionDescr(RuleBuildContext context,
RelationalExprDescr exprDescr,
String rightValue,
String operator,
boolean isRightLiteral)
processAtomicExpression
protected boolean processAtomicExpression(RuleBuildContext context,
Pattern pattern,
BaseDescr d,
String expr,
Map<String,OperatorDescr> aliases)
isSimpleExpr
protected boolean isSimpleExpr(RelationalExprDescr relDescr)
createAndBuildPredicate
protected void createAndBuildPredicate(RuleBuildContext context,
Pattern pattern,
BaseDescr base,
String expr,
Map<String,OperatorDescr> aliases)
setInputs
protected void setInputs(RuleBuildContext context,
PatternBuilder.ExprBindings descrBranch,
Class<?> thisClass,
String expr)
buildRuleBindings
protected void buildRuleBindings(RuleBuildContext context,
PatternDescr patternDescr,
Pattern pattern,
BindingDescr fieldBindingDescr)
buildEval
protected void buildEval(RuleBuildContext context,
Pattern pattern,
PredicateDescr predicateDescr,
Map<String,OperatorDescr> aliases,
String expr,
boolean isEvalExpression)
getUsedDeclarations
public static Declaration[][] getUsedDeclarations(RuleBuildContext context,
Pattern pattern,
AnalysisResult analysis)
buildAnalysis
public static AnalysisResult buildAnalysis(RuleBuildContext context,
Pattern pattern,
PredicateDescr predicateDescr,
Map<String,OperatorDescr> aliases)
buildOperators
protected static Map<String,EvaluatorWrapper> buildOperators(RuleBuildContext context,
Pattern pattern,
PredicateDescr predicateDescr,
Map<String,OperatorDescr> aliases)
getDeclarationsMap
public static Map<String,Class<?>> getDeclarationsMap(BaseDescr baseDescr,
RuleBuildContext context,
boolean reportError)
getConstraintBuilder
protected static ConstraintBuilder getConstraintBuilder(RuleBuildContext context)
createImplicitBindings
public static void createImplicitBindings(RuleBuildContext context,
Pattern pattern,
Set<String> unboundIdentifiers,
BoundIdentifiers boundIdentifiers,
List<Declaration> factDeclarations)
- Parameters:
context
- pattern
- unboundIdentifiers
- factDeclarations
-
createDeclarationObject
protected static Declaration createDeclarationObject(RuleBuildContext context,
String identifier,
Pattern pattern)
- Creates a declaration object for the field identified by the given identifier
on the give pattern object
- Parameters:
context
- identifier
- pattern
-
- Returns:
createDeclarationObject
protected static Declaration createDeclarationObject(RuleBuildContext context,
String identifier,
String expr,
Pattern pattern)
getFieldValue
protected FieldValue getFieldValue(RuleBuildContext context,
ValueType vtype,
LiteralRestrictionDescr literalRestrictionDescr)
registerReadAccessor
public static void registerReadAccessor(RuleBuildContext context,
ObjectType objectType,
String fieldName,
AcceptsReadAccessor target)
getFieldReadAccessor
public static InternalReadAccessor getFieldReadAccessor(RuleBuildContext context,
BaseDescr descr,
ObjectType objectType,
String fieldName,
AcceptsReadAccessor target,
boolean reportError)
parseExpression
protected ConstraintConnectiveDescr parseExpression(RuleBuildContext context,
PatternDescr patternDescr,
BaseDescr original,
String expression)
Copyright © 2001-2014 JBoss by Red Hat. All Rights Reserved.