Class PatternBuilder

    • Constructor Detail

      • PatternBuilder

        public PatternBuilder()
    • Method Detail

      • build

        public org.drools.core.rule.RuleConditionElement build​(RuleBuildContext context,
                                                               org.drools.drl.ast.descr.PatternDescr descr)
        Specified by:
        build in interface RuleConditionBuilder<org.drools.drl.ast.descr.PatternDescr>
      • build

        public org.drools.core.rule.RuleConditionElement build​(RuleBuildContext context,
                                                               org.drools.drl.ast.descr.PatternDescr patternDescr,
                                                               org.drools.core.rule.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<org.drools.drl.ast.descr.PatternDescr>
      • isInternalFact

        public boolean isInternalFact​(org.drools.drl.ast.descr.PatternDescr patternDescr,
                                      RuleBuildContext context)
      • processAnnotations

        protected void processAnnotations​(RuleBuildContext context,
                                          org.drools.drl.ast.descr.PatternDescr patternDescr,
                                          org.drools.core.rule.Pattern pattern)
      • processMetadataAnnotations

        protected void processMetadataAnnotations​(org.drools.drl.ast.descr.PatternDescr patternDescr,
                                                  org.drools.core.rule.Pattern pattern,
                                                  org.drools.util.TypeResolver typeResolver)
      • processListenedPropertiesAnnotation

        protected void processListenedPropertiesAnnotation​(RuleBuildContext context,
                                                           org.drools.drl.ast.descr.PatternDescr patternDescr,
                                                           org.drools.core.rule.Pattern pattern)
      • getSettableProperties

        protected Collection<String> getSettableProperties​(RuleBuildContext context,
                                                           org.drools.drl.ast.descr.PatternDescr patternDescr,
                                                           org.drools.core.rule.Pattern pattern)
      • lookAheadFieldsOfIdentifier

        public static Collection<String> lookAheadFieldsOfIdentifier​(org.drools.drl.ast.descr.RuleDescr ruleDescr,
                                                                     org.drools.drl.ast.descr.PatternDescr patternDescr)
      • buildRelationalExpression

        protected org.drools.core.spi.Constraint buildRelationalExpression​(RuleBuildContext context,
                                                                           org.drools.core.rule.Pattern pattern,
                                                                           org.drools.drl.ast.descr.RelationalExprDescr relDescr,
                                                                           String expr,
                                                                           Map<String,​org.drools.drl.ast.descr.OperatorDescr> aliases)
      • buildConstraintForPattern

        protected org.drools.core.spi.Constraint buildConstraintForPattern​(RuleBuildContext context,
                                                                           org.drools.core.rule.Pattern pattern,
                                                                           org.drools.drl.ast.descr.RelationalExprDescr relDescr,
                                                                           String expr,
                                                                           String value1,
                                                                           String value2,
                                                                           boolean isConstant,
                                                                           Map<String,​org.drools.drl.ast.descr.OperatorDescr> aliases)
      • buildLiteralRestrictionDescr

        protected org.drools.drl.ast.descr.LiteralRestrictionDescr buildLiteralRestrictionDescr​(RuleBuildContext context,
                                                                                                org.drools.drl.ast.descr.RelationalExprDescr exprDescr,
                                                                                                String rightValue,
                                                                                                boolean isRightLiteral)
      • processAtomicExpression

        protected org.drools.core.spi.Constraint processAtomicExpression​(RuleBuildContext context,
                                                                         org.drools.core.rule.Pattern pattern,
                                                                         org.drools.drl.ast.descr.BaseDescr d,
                                                                         String expr,
                                                                         Map<String,​org.drools.drl.ast.descr.OperatorDescr> aliases)
      • isSimpleExpr

        protected boolean isSimpleExpr​(org.drools.drl.ast.descr.RelationalExprDescr relDescr)
      • createAndBuildPredicate

        protected org.drools.core.spi.Constraint createAndBuildPredicate​(RuleBuildContext context,
                                                                         org.drools.core.rule.Pattern pattern,
                                                                         org.drools.drl.ast.descr.BaseDescr base,
                                                                         String expr,
                                                                         Map<String,​org.drools.drl.ast.descr.OperatorDescr> aliases)
      • buildRuleBindings

        protected void buildRuleBindings​(RuleBuildContext context,
                                         org.drools.drl.ast.descr.PatternDescr patternDescr,
                                         org.drools.core.rule.Declaration xpathStartDeclaration,
                                         org.drools.core.rule.Pattern pattern,
                                         org.drools.drl.ast.descr.BindingDescr fieldBindingDescr)
      • buildRuleBindings

        protected void buildRuleBindings​(RuleBuildContext context,
                                         org.drools.drl.ast.descr.PatternDescr patternDescr,
                                         org.drools.core.rule.Declaration xpathStartDeclaration,
                                         org.drools.core.rule.Pattern pattern,
                                         org.drools.drl.ast.descr.BindingDescr fieldBindingDescr,
                                         org.drools.core.rule.TypeDeclaration typeDeclaration)
      • buildEval

        protected org.drools.core.spi.Constraint buildEval​(RuleBuildContext context,
                                                           org.drools.core.rule.Pattern pattern,
                                                           org.drools.drl.ast.descr.PredicateDescr predicateDescr,
                                                           Map<String,​org.drools.drl.ast.descr.OperatorDescr> aliases,
                                                           String expr,
                                                           boolean isEvalExpression)
      • getUsedDeclarations

        public static org.drools.core.rule.Declaration[][] getUsedDeclarations​(RuleBuildContext context,
                                                                               org.drools.core.rule.Pattern pattern,
                                                                               AnalysisResult analysis)
      • buildAnalysis

        public static AnalysisResult buildAnalysis​(RuleBuildContext context,
                                                   org.drools.core.rule.Pattern pattern,
                                                   org.drools.drl.ast.descr.PredicateDescr predicateDescr,
                                                   Map<String,​org.drools.drl.ast.descr.OperatorDescr> aliases)
      • buildOperators

        public static Map<String,​EvaluatorWrapper> buildOperators​(RuleBuildContext context,
                                                                        org.drools.core.rule.Pattern pattern,
                                                                        org.drools.drl.ast.descr.BaseDescr predicateDescr,
                                                                        Map<String,​org.drools.drl.ast.descr.OperatorDescr> aliases)
      • createImplicitBindings

        public static void createImplicitBindings​(RuleBuildContext context,
                                                  org.drools.core.rule.Pattern pattern,
                                                  Set<String> unboundIdentifiers,
                                                  BoundIdentifiers boundIdentifiers,
                                                  List<org.drools.core.rule.Declaration> factDeclarations)
      • createDeclarationObject

        protected static org.drools.core.rule.Declaration createDeclarationObject​(RuleBuildContext context,
                                                                                  String identifier,
                                                                                  org.drools.core.rule.Pattern pattern)
        Creates a declaration object for the field identified by the given identifier on the give pattern object
      • createDeclarationObject

        protected static org.drools.core.rule.Declaration createDeclarationObject​(RuleBuildContext context,
                                                                                  String identifier,
                                                                                  String expr,
                                                                                  org.drools.core.rule.Pattern pattern)
      • registerReadAccessor

        public static void registerReadAccessor​(RuleBuildContext context,
                                                org.drools.core.spi.ObjectType objectType,
                                                String fieldName,
                                                org.drools.core.spi.AcceptsReadAccessor target)
      • getFieldReadAccessor

        public static org.drools.core.spi.InternalReadAccessor getFieldReadAccessor​(RuleBuildContext context,
                                                                                    org.drools.drl.ast.descr.BaseDescr descr,
                                                                                    org.drools.core.rule.Pattern pattern,
                                                                                    String fieldName,
                                                                                    org.drools.core.spi.AcceptsReadAccessor target,
                                                                                    boolean reportError)
      • getFieldReadAccessor

        public static org.drools.core.spi.InternalReadAccessor getFieldReadAccessor​(RuleBuildContext context,
                                                                                    org.drools.drl.ast.descr.BaseDescr descr,
                                                                                    org.drools.core.rule.Pattern pattern,
                                                                                    org.drools.core.spi.ObjectType objectType,
                                                                                    String fieldName,
                                                                                    org.drools.core.spi.AcceptsReadAccessor target,
                                                                                    boolean reportError)
      • parseExpression

        protected org.drools.drl.ast.descr.ConstraintConnectiveDescr parseExpression​(RuleBuildContext context,
                                                                                     org.drools.drl.ast.descr.PatternDescr patternDescr,
                                                                                     org.drools.drl.ast.descr.BaseDescr original,
                                                                                     String expression)
      • registerDescrBuildError

        public static void registerDescrBuildError​(RuleBuildContext context,
                                                   org.drools.drl.ast.descr.BaseDescr patternDescr,
                                                   String error)
      • registerDescrBuildError

        public static void registerDescrBuildError​(RuleBuildContext context,
                                                   org.drools.drl.ast.descr.BaseDescr patternDescr,
                                                   Object object,
                                                   String error)