Package org.drools.mvel
Class MVELConstraintBuilder
- java.lang.Object
-
- org.drools.mvel.MVELConstraintBuilder
-
- All Implemented Interfaces:
org.drools.compiler.rule.builder.ConstraintBuilder
public class MVELConstraintBuilder extends 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 Set<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(Class<?> thisClass, String expr)org.drools.core.rule.QueryArgumentbuildExpressionQueryArgument(org.drools.compiler.rule.builder.RuleBuildContext context, List<org.drools.core.rule.Declaration> declarations, String expression)org.drools.core.spi.ConstraintbuildLiteralConstraint(org.drools.compiler.rule.builder.RuleBuildContext context, org.drools.core.rule.Pattern pattern, org.drools.core.base.ValueType vtype, org.drools.core.spi.FieldValue field, String expression, String leftValue, String operator, boolean negated, String rightValue, org.drools.core.spi.InternalReadAccessor extractor, org.drools.compiler.lang.descr.LiteralRestrictionDescr restrictionDescr, Map<String,org.drools.compiler.lang.descr.OperatorDescr> aliases)org.drools.core.spi.ConstraintbuildMvelConstraint(String packageName, String expression, org.drools.core.rule.Declaration[] declarations, org.drools.core.base.EvaluatorWrapper[] operators, org.drools.compiler.rule.builder.RuleBuildContext context, org.drools.core.rule.Declaration[] previousDeclarations, org.drools.core.rule.Declaration[] localDeclarations, org.drools.compiler.lang.descr.PredicateDescr predicateDescr, org.drools.compiler.compiler.AnalysisResult analysis, boolean isDynamic)org.drools.core.spi.InternalReadAccessorbuildMvelFieldReadAccessor(org.drools.compiler.rule.builder.RuleBuildContext context, org.drools.compiler.lang.descr.BaseDescr descr, org.drools.core.rule.Pattern pattern, org.drools.core.spi.ObjectType objectType, String fieldName, boolean reportError)org.drools.core.time.TimerExpressionbuildTimerExpression(String expression, org.drools.compiler.rule.builder.RuleBuildContext context)org.drools.core.spi.ConstraintbuildVariableConstraint(org.drools.compiler.rule.builder.RuleBuildContext context, org.drools.core.rule.Pattern pattern, String expression, org.drools.core.rule.Declaration[] declarations, String leftValue, org.drools.compiler.lang.descr.OperatorDescr operatorDescr, String rightValue, org.drools.core.spi.InternalReadAccessor extractor, org.drools.core.rule.Declaration requiredDeclaration, org.drools.compiler.lang.descr.RelationalExprDescr relDescr, Map<String,org.drools.compiler.lang.descr.OperatorDescr> aliases)org.drools.compiler.compiler.DialectConfigurationcreateJavaDialectConfiguration()org.drools.compiler.kie.util.BeanCreatorcreateMVELBeanCreator(Map<String,Object> parameters)org.drools.compiler.compiler.DialectConfigurationcreateMVELDialectConfiguration()org.drools.core.spi.EvaluatorgetEvaluator(org.drools.compiler.rule.builder.RuleBuildContext context, org.drools.compiler.lang.descr.BaseDescr descr, org.drools.core.base.ValueType valueType, String evaluatorString, boolean isNegated, String parameters, org.drools.core.base.evaluators.EvaluatorDefinition.Target left, org.drools.core.base.evaluators.EvaluatorDefinition.Target right)org.drools.core.spi.FieldValuegetMvelFieldValue(org.drools.compiler.rule.builder.RuleBuildContext context, org.drools.core.base.ValueType vtype, String value)booleanisMvelOperator(String operator)protected static StringnormalizeMVELLiteralExpression(org.drools.core.base.ValueType vtype, org.drools.core.spi.FieldValue field, String expr, String leftValue, String operator, String rightValue, boolean negated, org.drools.compiler.lang.descr.LiteralRestrictionDescr restrictionDescr)protected static StringnormalizeMVELVariableExpression(String expr, String leftValue, String rightValue, org.drools.compiler.lang.descr.RelationalExprDescr relDescr)protected static StringresolveUnificationAmbiguity(String expr, org.drools.core.rule.Declaration[] declrations, String leftValue, String rightValue)voidsetExprInputs(org.drools.compiler.rule.builder.RuleBuildContext context, org.drools.compiler.rule.builder.PatternBuilder.ExprBindings descrBranch, Class<?> thisClass, String expr)booleanuseMvelExpression()org.drools.core.base.EvaluatorWrapperwrapEvaluator(org.drools.core.spi.Evaluator evaluator, org.drools.core.rule.Declaration left, org.drools.core.rule.Declaration right)
-
-
-
Field Detail
-
USE_MVEL_EXPRESSION
public static final boolean USE_MVEL_EXPRESSION
- See Also:
- Constant Field Values
-
-
Method Detail
-
createJavaDialectConfiguration
public org.drools.compiler.compiler.DialectConfiguration createJavaDialectConfiguration()
- Specified by:
createJavaDialectConfigurationin interfaceorg.drools.compiler.rule.builder.ConstraintBuilder
-
createMVELDialectConfiguration
public org.drools.compiler.compiler.DialectConfiguration createMVELDialectConfiguration()
- Specified by:
createMVELDialectConfigurationin interfaceorg.drools.compiler.rule.builder.ConstraintBuilder
-
isMvelOperator
public boolean isMvelOperator(String operator)
- Specified by:
isMvelOperatorin interfaceorg.drools.compiler.rule.builder.ConstraintBuilder
-
useMvelExpression
public boolean useMvelExpression()
-
buildVariableConstraint
public org.drools.core.spi.Constraint buildVariableConstraint(org.drools.compiler.rule.builder.RuleBuildContext context, org.drools.core.rule.Pattern pattern, String expression, org.drools.core.rule.Declaration[] declarations, String leftValue, org.drools.compiler.lang.descr.OperatorDescr operatorDescr, String rightValue, org.drools.core.spi.InternalReadAccessor extractor, org.drools.core.rule.Declaration requiredDeclaration, org.drools.compiler.lang.descr.RelationalExprDescr relDescr, Map<String,org.drools.compiler.lang.descr.OperatorDescr> aliases)- Specified by:
buildVariableConstraintin interfaceorg.drools.compiler.rule.builder.ConstraintBuilder
-
buildMvelConstraint
public org.drools.core.spi.Constraint buildMvelConstraint(String packageName, String expression, org.drools.core.rule.Declaration[] declarations, org.drools.core.base.EvaluatorWrapper[] operators, org.drools.compiler.rule.builder.RuleBuildContext context, org.drools.core.rule.Declaration[] previousDeclarations, org.drools.core.rule.Declaration[] localDeclarations, org.drools.compiler.lang.descr.PredicateDescr predicateDescr, org.drools.compiler.compiler.AnalysisResult analysis, boolean isDynamic)
- Specified by:
buildMvelConstraintin interfaceorg.drools.compiler.rule.builder.ConstraintBuilder
-
buildLiteralConstraint
public org.drools.core.spi.Constraint buildLiteralConstraint(org.drools.compiler.rule.builder.RuleBuildContext context, org.drools.core.rule.Pattern pattern, org.drools.core.base.ValueType vtype, org.drools.core.spi.FieldValue field, String expression, String leftValue, String operator, boolean negated, String rightValue, org.drools.core.spi.InternalReadAccessor extractor, org.drools.compiler.lang.descr.LiteralRestrictionDescr restrictionDescr, Map<String,org.drools.compiler.lang.descr.OperatorDescr> aliases)- Specified by:
buildLiteralConstraintin interfaceorg.drools.compiler.rule.builder.ConstraintBuilder
-
resolveUnificationAmbiguity
protected static String resolveUnificationAmbiguity(String expr, org.drools.core.rule.Declaration[] declrations, String leftValue, String rightValue)
-
normalizeMVELLiteralExpression
protected static String normalizeMVELLiteralExpression(org.drools.core.base.ValueType vtype, org.drools.core.spi.FieldValue field, String expr, String leftValue, String operator, String rightValue, boolean negated, org.drools.compiler.lang.descr.LiteralRestrictionDescr restrictionDescr)
-
normalizeMVELVariableExpression
protected static String normalizeMVELVariableExpression(String expr, String leftValue, String rightValue, org.drools.compiler.lang.descr.RelationalExprDescr relDescr)
-
getEvaluator
public org.drools.core.spi.Evaluator getEvaluator(org.drools.compiler.rule.builder.RuleBuildContext context, org.drools.compiler.lang.descr.BaseDescr descr, org.drools.core.base.ValueType valueType, String evaluatorString, boolean isNegated, String parameters, org.drools.core.base.evaluators.EvaluatorDefinition.Target left, org.drools.core.base.evaluators.EvaluatorDefinition.Target right)- Specified by:
getEvaluatorin interfaceorg.drools.compiler.rule.builder.ConstraintBuilder
-
wrapEvaluator
public org.drools.core.base.EvaluatorWrapper wrapEvaluator(org.drools.core.spi.Evaluator evaluator, org.drools.core.rule.Declaration left, org.drools.core.rule.Declaration right)- Specified by:
wrapEvaluatorin interfaceorg.drools.compiler.rule.builder.ConstraintBuilder
-
buildTimerExpression
public org.drools.core.time.TimerExpression buildTimerExpression(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(Class<?> thisClass, String expr)
- Specified by:
analyzeExpressionin interfaceorg.drools.compiler.rule.builder.ConstraintBuilder
-
buildMvelFieldReadAccessor
public org.drools.core.spi.InternalReadAccessor buildMvelFieldReadAccessor(org.drools.compiler.rule.builder.RuleBuildContext context, org.drools.compiler.lang.descr.BaseDescr descr, org.drools.core.rule.Pattern pattern, org.drools.core.spi.ObjectType objectType, 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, Class<?> thisClass, String expr)- Specified by:
setExprInputsin interfaceorg.drools.compiler.rule.builder.ConstraintBuilder
-
getMvelFieldValue
public org.drools.core.spi.FieldValue getMvelFieldValue(org.drools.compiler.rule.builder.RuleBuildContext context, org.drools.core.base.ValueType vtype, String value)- Specified by:
getMvelFieldValuein interfaceorg.drools.compiler.rule.builder.ConstraintBuilder
-
buildExpressionQueryArgument
public org.drools.core.rule.QueryArgument buildExpressionQueryArgument(org.drools.compiler.rule.builder.RuleBuildContext context, List<org.drools.core.rule.Declaration> declarations, String expression)- Specified by:
buildExpressionQueryArgumentin interfaceorg.drools.compiler.rule.builder.ConstraintBuilder
-
-