Package org.drools.mvel
Class MVELConstraintBuilder
- java.lang.Object
-
- org.drools.mvel.MVELConstraintBuilder
-
- All Implemented Interfaces:
java.lang.Comparable<org.kie.api.internal.utils.KieService>,org.drools.compiler.rule.builder.ConstraintBuilder,org.kie.api.internal.utils.KieService
public class MVELConstraintBuilder extends java.lang.Object implements org.drools.compiler.rule.builder.ConstraintBuilder
-
-
Nested Class Summary
Nested Classes Modifier and Type Class Description static classMVELConstraintBuilder.BooleanConversionHandlerstatic classMVELConstraintBuilder.Expressionstatic classMVELConstraintBuilder.StringCoercionCompatibilityEvaluator
-
Field Summary
Fields Modifier and Type Field Description protected static java.util.Set<java.lang.String>MVEL_OPERATORSstatic booleanUSE_MVEL_EXPRESSION
-
Constructor Summary
Constructors Constructor Description MVELConstraintBuilder()
-
Method Summary
All Methods Static Methods Instance Methods Concrete Methods Modifier and Type Method Description org.drools.compiler.compiler.AnalysisResultanalyzeExpression(java.lang.Class<?> thisClass, java.lang.String expr)org.drools.base.rule.QueryArgumentbuildExpressionQueryArgument(org.drools.compiler.rule.builder.RuleBuildContext context, java.util.List<org.drools.base.rule.Declaration> declarations, java.lang.String expression)org.drools.base.rule.constraint.ConstraintbuildLiteralConstraint(org.drools.compiler.rule.builder.RuleBuildContext context, org.drools.base.rule.Pattern pattern, org.drools.base.base.ValueType vtype, org.drools.base.rule.accessor.FieldValue field, java.lang.String expression, java.lang.String leftValue, java.lang.String operator, boolean negated, java.lang.String rightValue, org.drools.base.rule.accessor.ReadAccessor extractor, org.drools.drl.ast.descr.LiteralRestrictionDescr restrictionDescr, java.util.Map<java.lang.String,org.drools.drl.ast.descr.OperatorDescr> aliases)org.drools.base.rule.constraint.ConstraintbuildMvelConstraint(java.lang.String packageName, java.lang.String expression, org.drools.base.rule.Declaration[] declarations, org.drools.compiler.rule.builder.EvaluatorWrapper[] operators, org.drools.compiler.rule.builder.RuleBuildContext context, org.drools.base.rule.Declaration[] previousDeclarations, org.drools.base.rule.Declaration[] localDeclarations, org.drools.drl.ast.descr.PredicateDescr predicateDescr, org.drools.compiler.compiler.AnalysisResult analysis, boolean isDynamic)org.drools.base.rule.accessor.ReadAccessorbuildMvelFieldReadAccessor(org.drools.compiler.rule.builder.RuleBuildContext context, org.drools.drl.ast.descr.BaseDescr descr, org.drools.base.rule.Pattern pattern, org.drools.base.base.ObjectType objectType, java.lang.String fieldName, boolean reportError)org.drools.core.time.TimerExpressionbuildTimerExpression(java.lang.String expression, org.drools.compiler.rule.builder.RuleBuildContext context)org.drools.base.rule.constraint.ConstraintbuildVariableConstraint(org.drools.compiler.rule.builder.RuleBuildContext context, org.drools.base.rule.Pattern pattern, java.lang.String expression, org.drools.base.rule.Declaration[] declarations, java.lang.String leftValue, org.drools.drl.ast.descr.OperatorDescr operatorDescr, java.lang.String rightValue, org.drools.base.rule.accessor.ReadAccessor extractor, org.drools.base.rule.Declaration requiredDeclaration, org.drools.drl.ast.descr.RelationalExprDescr relDescr, java.util.Map<java.lang.String,org.drools.drl.ast.descr.OperatorDescr> aliases)org.drools.compiler.compiler.DialectConfigurationcreateJavaDialectConfiguration(org.drools.compiler.builder.impl.KnowledgeBuilderConfigurationImpl conf)org.drools.compiler.kie.util.BeanCreatorcreateMVELBeanCreator(java.util.Map<java.lang.String,java.lang.Object> parameters)org.drools.compiler.compiler.DialectConfigurationcreateMVELDialectConfiguration(org.drools.compiler.builder.impl.KnowledgeBuilderConfigurationImpl conf)org.drools.base.rule.accessor.EvaluatorgetEvaluator(org.drools.compiler.rule.builder.RuleBuildContext context, org.drools.drl.ast.descr.BaseDescr descr, org.drools.base.base.ValueType valueType, java.lang.String evaluatorString, boolean isNegated, java.lang.String parameters, org.drools.compiler.rule.builder.EvaluatorDefinition.Target left, org.drools.compiler.rule.builder.EvaluatorDefinition.Target right)java.util.List<org.drools.compiler.rule.builder.EvaluatorDefinition>getEvaluatorDefinitions()org.drools.base.rule.accessor.FieldValuegetMvelFieldValue(org.drools.compiler.rule.builder.RuleBuildContext context, org.drools.base.base.ValueType vtype, java.lang.String value)booleanisMvelOperator(java.lang.String operator)protected static java.lang.StringnormalizeMVELLiteralExpression(org.drools.base.base.ValueType vtype, org.drools.base.rule.accessor.FieldValue field, java.lang.String expr, java.lang.String leftValue, java.lang.String operator, java.lang.String rightValue, boolean negated, org.drools.drl.ast.descr.LiteralRestrictionDescr restrictionDescr)protected static java.lang.StringnormalizeMVELVariableExpression(java.lang.String expr, java.lang.String leftValue, java.lang.String rightValue, org.drools.drl.ast.descr.RelationalExprDescr relDescr)voidsetExprInputs(org.drools.compiler.rule.builder.RuleBuildContext context, org.drools.compiler.rule.builder.PatternBuilder.ExprBindings descrBranch, java.lang.Class<?> thisClass, java.lang.String expr)booleanuseMvelExpression()org.drools.compiler.rule.builder.EvaluatorWrapperwrapEvaluator(org.drools.base.rule.accessor.Evaluator evaluator, org.drools.base.rule.Declaration left, org.drools.base.rule.Declaration right)
-
-
-
Field Detail
-
USE_MVEL_EXPRESSION
public static final boolean USE_MVEL_EXPRESSION
- See Also:
- Constant Field Values
-
MVEL_OPERATORS
protected static final java.util.Set<java.lang.String> MVEL_OPERATORS
-
-
Method Detail
-
createJavaDialectConfiguration
public org.drools.compiler.compiler.DialectConfiguration createJavaDialectConfiguration(org.drools.compiler.builder.impl.KnowledgeBuilderConfigurationImpl conf)
- Specified by:
createJavaDialectConfigurationin interfaceorg.drools.compiler.rule.builder.ConstraintBuilder
-
createMVELDialectConfiguration
public org.drools.compiler.compiler.DialectConfiguration createMVELDialectConfiguration(org.drools.compiler.builder.impl.KnowledgeBuilderConfigurationImpl conf)
- Specified by:
createMVELDialectConfigurationin interfaceorg.drools.compiler.rule.builder.ConstraintBuilder
-
isMvelOperator
public boolean isMvelOperator(java.lang.String operator)
- Specified by:
isMvelOperatorin interfaceorg.drools.compiler.rule.builder.ConstraintBuilder
-
useMvelExpression
public boolean useMvelExpression()
-
buildVariableConstraint
public org.drools.base.rule.constraint.Constraint buildVariableConstraint(org.drools.compiler.rule.builder.RuleBuildContext context, org.drools.base.rule.Pattern pattern, java.lang.String expression, org.drools.base.rule.Declaration[] declarations, java.lang.String leftValue, org.drools.drl.ast.descr.OperatorDescr operatorDescr, java.lang.String rightValue, org.drools.base.rule.accessor.ReadAccessor extractor, org.drools.base.rule.Declaration requiredDeclaration, org.drools.drl.ast.descr.RelationalExprDescr relDescr, java.util.Map<java.lang.String,org.drools.drl.ast.descr.OperatorDescr> aliases)- Specified by:
buildVariableConstraintin interfaceorg.drools.compiler.rule.builder.ConstraintBuilder
-
buildMvelConstraint
public org.drools.base.rule.constraint.Constraint buildMvelConstraint(java.lang.String packageName, java.lang.String expression, org.drools.base.rule.Declaration[] declarations, org.drools.compiler.rule.builder.EvaluatorWrapper[] operators, org.drools.compiler.rule.builder.RuleBuildContext context, org.drools.base.rule.Declaration[] previousDeclarations, org.drools.base.rule.Declaration[] localDeclarations, org.drools.drl.ast.descr.PredicateDescr predicateDescr, org.drools.compiler.compiler.AnalysisResult analysis, boolean isDynamic)- Specified by:
buildMvelConstraintin interfaceorg.drools.compiler.rule.builder.ConstraintBuilder
-
buildLiteralConstraint
public org.drools.base.rule.constraint.Constraint buildLiteralConstraint(org.drools.compiler.rule.builder.RuleBuildContext context, org.drools.base.rule.Pattern pattern, org.drools.base.base.ValueType vtype, org.drools.base.rule.accessor.FieldValue field, java.lang.String expression, java.lang.String leftValue, java.lang.String operator, boolean negated, java.lang.String rightValue, org.drools.base.rule.accessor.ReadAccessor extractor, org.drools.drl.ast.descr.LiteralRestrictionDescr restrictionDescr, java.util.Map<java.lang.String,org.drools.drl.ast.descr.OperatorDescr> aliases)- Specified by:
buildLiteralConstraintin interfaceorg.drools.compiler.rule.builder.ConstraintBuilder
-
normalizeMVELLiteralExpression
protected static java.lang.String normalizeMVELLiteralExpression(org.drools.base.base.ValueType vtype, org.drools.base.rule.accessor.FieldValue field, java.lang.String expr, java.lang.String leftValue, java.lang.String operator, java.lang.String rightValue, boolean negated, org.drools.drl.ast.descr.LiteralRestrictionDescr restrictionDescr)
-
normalizeMVELVariableExpression
protected static java.lang.String normalizeMVELVariableExpression(java.lang.String expr, java.lang.String leftValue, java.lang.String rightValue, org.drools.drl.ast.descr.RelationalExprDescr relDescr)
-
getEvaluator
public org.drools.base.rule.accessor.Evaluator getEvaluator(org.drools.compiler.rule.builder.RuleBuildContext context, org.drools.drl.ast.descr.BaseDescr descr, org.drools.base.base.ValueType valueType, java.lang.String evaluatorString, boolean isNegated, java.lang.String parameters, org.drools.compiler.rule.builder.EvaluatorDefinition.Target left, org.drools.compiler.rule.builder.EvaluatorDefinition.Target right)- Specified by:
getEvaluatorin interfaceorg.drools.compiler.rule.builder.ConstraintBuilder
-
wrapEvaluator
public org.drools.compiler.rule.builder.EvaluatorWrapper wrapEvaluator(org.drools.base.rule.accessor.Evaluator evaluator, org.drools.base.rule.Declaration left, org.drools.base.rule.Declaration right)- Specified by:
wrapEvaluatorin interfaceorg.drools.compiler.rule.builder.ConstraintBuilder
-
buildTimerExpression
public org.drools.core.time.TimerExpression buildTimerExpression(java.lang.String expression, org.drools.compiler.rule.builder.RuleBuildContext context)- Specified by:
buildTimerExpressionin interfaceorg.drools.compiler.rule.builder.ConstraintBuilder
-
analyzeExpression
public org.drools.compiler.compiler.AnalysisResult analyzeExpression(java.lang.Class<?> thisClass, java.lang.String expr)- Specified by:
analyzeExpressionin interfaceorg.drools.compiler.rule.builder.ConstraintBuilder
-
buildMvelFieldReadAccessor
public org.drools.base.rule.accessor.ReadAccessor buildMvelFieldReadAccessor(org.drools.compiler.rule.builder.RuleBuildContext context, org.drools.drl.ast.descr.BaseDescr descr, org.drools.base.rule.Pattern pattern, org.drools.base.base.ObjectType objectType, java.lang.String fieldName, boolean reportError)- Specified by:
buildMvelFieldReadAccessorin interfaceorg.drools.compiler.rule.builder.ConstraintBuilder
-
setExprInputs
public void setExprInputs(org.drools.compiler.rule.builder.RuleBuildContext context, org.drools.compiler.rule.builder.PatternBuilder.ExprBindings descrBranch, java.lang.Class<?> thisClass, java.lang.String expr)- Specified by:
setExprInputsin interfaceorg.drools.compiler.rule.builder.ConstraintBuilder
-
getMvelFieldValue
public org.drools.base.rule.accessor.FieldValue getMvelFieldValue(org.drools.compiler.rule.builder.RuleBuildContext context, org.drools.base.base.ValueType vtype, java.lang.String value)- Specified by:
getMvelFieldValuein interfaceorg.drools.compiler.rule.builder.ConstraintBuilder
-
buildExpressionQueryArgument
public org.drools.base.rule.QueryArgument buildExpressionQueryArgument(org.drools.compiler.rule.builder.RuleBuildContext context, java.util.List<org.drools.base.rule.Declaration> declarations, java.lang.String expression)- Specified by:
buildExpressionQueryArgumentin interfaceorg.drools.compiler.rule.builder.ConstraintBuilder
-
createMVELBeanCreator
public org.drools.compiler.kie.util.BeanCreator createMVELBeanCreator(java.util.Map<java.lang.String,java.lang.Object> parameters)
- Specified by:
createMVELBeanCreatorin interfaceorg.drools.compiler.rule.builder.ConstraintBuilder
-
getEvaluatorDefinitions
public java.util.List<org.drools.compiler.rule.builder.EvaluatorDefinition> getEvaluatorDefinitions()
- Specified by:
getEvaluatorDefinitionsin interfaceorg.drools.compiler.rule.builder.ConstraintBuilder
-
-