public class MVELConstraintBuilder extends Object implements org.drools.compiler.rule.builder.ConstraintBuilder
| Modifier and Type | Class and Description |
|---|---|
static class |
MVELConstraintBuilder.BooleanConversionHandler |
static class |
MVELConstraintBuilder.Expression |
static class |
MVELConstraintBuilder.StringCoercionCompatibilityEvaluator |
| Modifier and Type | Field and Description |
|---|---|
protected static Set<String> |
MVEL_OPERATORS |
static boolean |
USE_MVEL_EXPRESSION |
| Constructor and Description |
|---|
MVELConstraintBuilder() |
| Modifier and Type | Method and Description |
|---|---|
org.drools.compiler.compiler.AnalysisResult |
analyzeExpression(Class<?> thisClass,
String expr) |
org.drools.core.rule.QueryArgument |
buildExpressionQueryArgument(org.drools.compiler.rule.builder.RuleBuildContext context,
List<org.drools.core.rule.Declaration> declarations,
String expression) |
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) |
org.drools.core.spi.Evaluator |
buildLiteralEvaluator(org.drools.compiler.rule.builder.RuleBuildContext context,
org.drools.core.spi.InternalReadAccessor extractor,
org.drools.compiler.lang.descr.LiteralRestrictionDescr literalRestrictionDescr,
org.drools.core.base.ValueType vtype) |
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) |
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) |
org.drools.core.time.TimerExpression |
buildTimerExpression(String expression,
ClassLoader classLoader,
Map<String,org.drools.core.rule.Declaration> decls) |
org.drools.core.time.TimerExpression |
buildTimerExpression(String expression,
org.drools.compiler.rule.builder.RuleBuildContext context) |
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) |
org.drools.compiler.compiler.DialectConfiguration |
createJavaDialectConfiguration() |
org.drools.compiler.kie.util.BeanCreator |
createMVELBeanCreator(Map<String,Object> parameters) |
org.drools.compiler.compiler.DialectConfiguration |
createMVELDialectConfiguration() |
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) |
org.drools.core.spi.FieldValue |
getMvelFieldValue(org.drools.compiler.rule.builder.RuleBuildContext context,
org.drools.core.base.ValueType vtype,
String value) |
org.drools.core.base.evaluators.EvaluatorDefinition.Target |
getRightTarget(org.drools.core.spi.InternalReadAccessor extractor) |
boolean |
isMvelOperator(String operator) |
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) |
protected static String |
normalizeMVELVariableExpression(String expr,
String leftValue,
String rightValue,
org.drools.compiler.lang.descr.RelationalExprDescr relDescr) |
protected static String |
resolveUnificationAmbiguity(String expr,
org.drools.core.rule.Declaration[] declrations,
String leftValue,
String rightValue) |
void |
setExprInputs(org.drools.compiler.rule.builder.RuleBuildContext context,
org.drools.compiler.rule.builder.PatternBuilder.ExprBindings descrBranch,
Class<?> thisClass,
String expr) |
boolean |
useMvelExpression() |
org.drools.core.base.EvaluatorWrapper |
wrapEvaluator(org.drools.core.spi.Evaluator evaluator,
org.drools.core.rule.Declaration left,
org.drools.core.rule.Declaration right) |
public static final boolean USE_MVEL_EXPRESSION
public org.drools.compiler.compiler.DialectConfiguration createJavaDialectConfiguration()
createJavaDialectConfiguration in interface org.drools.compiler.rule.builder.ConstraintBuilderpublic org.drools.compiler.compiler.DialectConfiguration createMVELDialectConfiguration()
createMVELDialectConfiguration in interface org.drools.compiler.rule.builder.ConstraintBuilderpublic boolean isMvelOperator(String operator)
isMvelOperator in interface org.drools.compiler.rule.builder.ConstraintBuilderpublic boolean useMvelExpression()
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)
buildVariableConstraint in interface org.drools.compiler.rule.builder.ConstraintBuilderpublic 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)
buildMvelConstraint in interface org.drools.compiler.rule.builder.ConstraintBuilderpublic 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)
buildLiteralConstraint in interface org.drools.compiler.rule.builder.ConstraintBuilderprotected static String resolveUnificationAmbiguity(String expr, org.drools.core.rule.Declaration[] declrations, String leftValue, String rightValue)
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)
protected static String normalizeMVELVariableExpression(String expr, String leftValue, String rightValue, org.drools.compiler.lang.descr.RelationalExprDescr relDescr)
public org.drools.core.spi.Evaluator buildLiteralEvaluator(org.drools.compiler.rule.builder.RuleBuildContext context,
org.drools.core.spi.InternalReadAccessor extractor,
org.drools.compiler.lang.descr.LiteralRestrictionDescr literalRestrictionDescr,
org.drools.core.base.ValueType vtype)
buildLiteralEvaluator in interface org.drools.compiler.rule.builder.ConstraintBuilderpublic org.drools.core.base.evaluators.EvaluatorDefinition.Target getRightTarget(org.drools.core.spi.InternalReadAccessor extractor)
getRightTarget in interface org.drools.compiler.rule.builder.ConstraintBuilderpublic 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)
getEvaluator in interface org.drools.compiler.rule.builder.ConstraintBuilderpublic org.drools.core.base.EvaluatorWrapper wrapEvaluator(org.drools.core.spi.Evaluator evaluator,
org.drools.core.rule.Declaration left,
org.drools.core.rule.Declaration right)
wrapEvaluator in interface org.drools.compiler.rule.builder.ConstraintBuilderpublic org.drools.core.time.TimerExpression buildTimerExpression(String expression, org.drools.compiler.rule.builder.RuleBuildContext context)
buildTimerExpression in interface org.drools.compiler.rule.builder.ConstraintBuilderpublic org.drools.core.time.TimerExpression buildTimerExpression(String expression, ClassLoader classLoader, Map<String,org.drools.core.rule.Declaration> decls)
buildTimerExpression in interface org.drools.compiler.rule.builder.ConstraintBuilderpublic org.drools.compiler.compiler.AnalysisResult analyzeExpression(Class<?> thisClass, String expr)
analyzeExpression in interface org.drools.compiler.rule.builder.ConstraintBuilderpublic 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)
buildMvelFieldReadAccessor in interface org.drools.compiler.rule.builder.ConstraintBuilderpublic void setExprInputs(org.drools.compiler.rule.builder.RuleBuildContext context,
org.drools.compiler.rule.builder.PatternBuilder.ExprBindings descrBranch,
Class<?> thisClass,
String expr)
setExprInputs in interface org.drools.compiler.rule.builder.ConstraintBuilderpublic org.drools.core.spi.FieldValue getMvelFieldValue(org.drools.compiler.rule.builder.RuleBuildContext context,
org.drools.core.base.ValueType vtype,
String value)
getMvelFieldValue in interface org.drools.compiler.rule.builder.ConstraintBuilderpublic org.drools.core.rule.QueryArgument buildExpressionQueryArgument(org.drools.compiler.rule.builder.RuleBuildContext context,
List<org.drools.core.rule.Declaration> declarations,
String expression)
buildExpressionQueryArgument in interface org.drools.compiler.rule.builder.ConstraintBuilderCopyright © 2001–2020 JBoss by Red Hat. All rights reserved.