Class PackageModel


  • public class PackageModel
    extends java.lang.Object
    • Field Detail

      • DATE_TIME_FORMATTER_FIELD

        public static final java.lang.String DATE_TIME_FORMATTER_FIELD
        See Also:
        Constant Field Values
      • DOMAIN_CLASSESS_METADATA_FILE_NAME

        public static final java.lang.String DOMAIN_CLASSESS_METADATA_FILE_NAME
        See Also:
        Constant Field Values
      • DOMAIN_CLASS_METADATA_INSTANCE

        public static final java.lang.String DOMAIN_CLASS_METADATA_INSTANCE
        See Also:
        Constant Field Values
    • Constructor Detail

      • PackageModel

        public PackageModel​(java.lang.String gav,
                            java.lang.String name,
                            org.drools.compiler.builder.impl.KnowledgeBuilderConfigurationImpl configuration,
                            org.drools.compiler.compiler.DialectCompiletimeRegistry dialectCompiletimeRegistry,
                            DRLIdGenerator exprIdGenerator)
    • Method Detail

      • createPackageModel

        public static PackageModel createPackageModel​(org.drools.compiler.builder.impl.KnowledgeBuilderConfigurationImpl configuration,
                                                      org.drools.drl.ast.descr.PackageDescr packageDescr,
                                                      org.drools.compiler.compiler.PackageRegistry pkgRegistry,
                                                      java.lang.String pkgName,
                                                      org.kie.api.builder.ReleaseId releaseId,
                                                      DRLIdGenerator exprIdGenerator)
      • initPackageModel

        public static void initPackageModel​(org.drools.compiler.builder.impl.KnowledgeBuilderImpl kbuilder,
                                            org.drools.core.definitions.InternalKnowledgePackage pkg,
                                            org.drools.util.TypeResolver typeResolver,
                                            org.drools.drl.ast.descr.PackageDescr packageDescr,
                                            PackageModel packageModel)
      • initPackageModel

        public static void initPackageModel​(org.drools.compiler.builder.impl.TypeDeclarationContext typeDeclarationContext,
                                            org.drools.compiler.builder.impl.BuildResultCollector results,
                                            org.drools.core.definitions.InternalKnowledgePackage pkg,
                                            org.drools.util.TypeResolver typeResolver,
                                            org.drools.drl.ast.descr.PackageDescr packageDescr,
                                            PackageModel packageModel)
      • getPkgUUID

        public static java.lang.String getPkgUUID​(org.kie.api.builder.ReleaseId releaseId,
                                                  java.lang.String packageName)
        Retrieve a package unique identifier. It uses both releaseId and packageName if the former is not null and not a Snapshot; otherwise a randomly generated one
        Parameters:
        releaseId -
        packageName -
        Returns:
      • getLambdaClasses

        public java.util.Map<java.lang.String,​CreatedClass> getLambdaClasses()
      • isOneClassPerRule

        public boolean isOneClassPerRule()
      • setOneClassPerRule

        public void setOneClassPerRule​(boolean oneClassPerRule)
      • getPackageUUID

        public java.lang.String getPackageUUID()
      • getDomainClassName

        public java.lang.String getDomainClassName​(java.lang.Class<?> clazz)
      • getRulesFileName

        public java.lang.String getRulesFileName()
      • getConfiguration

        public org.drools.compiler.builder.impl.KnowledgeBuilderConfigurationImpl getConfiguration()
      • getName

        public java.lang.String getName()
      • getPathName

        public java.lang.String getPathName()
      • getRulesFileNameWithPackage

        public java.lang.String getRulesFileNameWithPackage()
      • addImports

        public void addImports​(java.util.Collection<java.lang.String> imports)
      • getImports

        public java.util.Collection<java.lang.String> getImports()
      • addStaticImports

        public void addStaticImports​(java.util.Collection<java.lang.String> imports)
      • addEntryPoints

        public void addEntryPoints​(java.util.Collection<org.drools.drl.ast.descr.EntryPointDeclarationDescr> entryPoints)
      • hasEntryPoint

        public boolean hasEntryPoint​(java.lang.String name)
      • hasEntryPointForUnit

        public boolean hasEntryPointForUnit​(java.lang.String name,
                                            java.lang.String unitName)
      • getStaticImports

        public java.util.Collection<java.lang.String> getStaticImports()
      • getStaticMethod

        public java.lang.reflect.Method getStaticMethod​(java.lang.String methodName)
      • addDateField

        public void addDateField​(java.lang.String fieldName,
                                 TypedExpression expression)
      • getStaticMethods

        public java.util.Map<java.lang.String,​java.lang.reflect.Method> getStaticMethods()
      • addRuleUnitVariable

        public void addRuleUnitVariable​(java.lang.String unitName,
                                        org.kie.internal.ruleunit.RuleUnitVariable unitVar)
      • addGlobals

        public void addGlobals​(org.drools.core.definitions.InternalKnowledgePackage pkg)
      • getGlobals

        public java.util.Map<java.lang.String,​java.lang.reflect.Type> getGlobals()
      • getGlobalsForUnit

        public java.util.Map<java.lang.String,​java.lang.reflect.Type> getGlobalsForUnit​(java.lang.String unitName)
      • addTypeMetaDataExpressions

        public void addTypeMetaDataExpressions​(com.github.javaparser.ast.expr.Expression typeMetaDataExpression)
      • putRuleMethod

        public void putRuleMethod​(java.lang.String unitName,
                                  com.github.javaparser.ast.body.MethodDeclaration ruleMethod,
                                  int ruleIndex)
      • putRuleUnit

        public void putRuleUnit​(java.lang.String unitName)
      • putQueryMethod

        public void putQueryMethod​(com.github.javaparser.ast.body.MethodDeclaration queryMethod)
      • registerQueryName

        public void registerQueryName​(java.lang.String queryName)
      • hasQuery

        public boolean hasQuery​(java.lang.String queryName)
      • putQueryVariable

        public void putQueryVariable​(java.lang.String queryName,
                                     QueryParameter qp)
      • queryVariables

        public java.util.List<QueryParameter> queryVariables​(java.lang.String queryName)
      • addAllFunctions

        public void addAllFunctions​(java.util.List<com.github.javaparser.ast.body.MethodDeclaration> functions)
      • addGeneratedPOJO

        public void addGeneratedPOJO​(com.github.javaparser.ast.body.TypeDeclaration pojo)
      • getGeneratedPOJOsSource

        public java.util.List<com.github.javaparser.ast.body.TypeDeclaration> getGeneratedPOJOsSource()
      • addAllWindowReferences

        public void addAllWindowReferences​(java.lang.String methodName,
                                           com.github.javaparser.ast.expr.MethodCallExpr windowMethod)
      • getWindowReferences

        public java.util.Map<java.lang.String,​com.github.javaparser.ast.expr.MethodCallExpr> getWindowReferences()
      • getFunctions

        public java.util.List<com.github.javaparser.ast.body.MethodDeclaration> getFunctions()
      • getAccumulateFunctions

        public java.util.Map<java.lang.String,​org.kie.api.runtime.rule.AccumulateFunction> getAccumulateFunctions()
      • setInternalKnowledgePackage

        public void setInternalKnowledgePackage​(org.drools.core.definitions.InternalKnowledgePackage pkg)
      • getPkg

        public org.drools.core.definitions.InternalKnowledgePackage getPkg()
      • getDialectCompiletimeRegistry

        public org.drools.compiler.compiler.DialectCompiletimeRegistry getDialectCompiletimeRegistry()
      • addRuleUnits

        public void addRuleUnits​(java.util.Collection<org.kie.internal.ruleunit.RuleUnitDescription> ruleUnitDescriptions)
      • getRuleUnits

        public java.util.Collection<org.kie.internal.ruleunit.RuleUnitDescription> getRuleUnits()
      • addQueryInRuleUnit

        public void addQueryInRuleUnit​(org.kie.internal.ruleunit.RuleUnitDescription ruleUnitDescription,
                                       QueryModel query)
      • getQueriesInRuleUnit

        public java.util.Collection<QueryModel> getQueriesInRuleUnit​(org.kie.internal.ruleunit.RuleUnitDescription ruleUnitDescription)
      • getExecutableRulesClasses

        public java.util.Collection<java.lang.String> getExecutableRulesClasses()
      • setAccumulateFunctions

        public void setAccumulateFunctions​(java.util.Map<java.lang.String,​org.kie.api.runtime.rule.AccumulateFunction> accumulateFunctions)
      • registerDomainClass

        public boolean registerDomainClass​(java.lang.Class<?> domainClass)
      • getDomainClassesMetadataSource

        public java.lang.String getDomainClassesMetadataSource()
      • getLambdaReturnTypes

        public java.util.Map<com.github.javaparser.ast.expr.LambdaExpr,​java.lang.reflect.Type> getLambdaReturnTypes()
      • registerLambdaReturnType

        public void registerLambdaReturnType​(com.github.javaparser.ast.expr.LambdaExpr lambdaExpr,
                                             java.lang.reflect.Type type)
      • indexConstraint

        public void indexConstraint​(java.lang.String exprId,
                                    java.lang.String constraint,
                                    java.lang.String ruleName,
                                    java.lang.String ruleFileName)
      • getAllConstraintsMap

        public java.util.Map<java.lang.String,​org.drools.model.functions.PredicateInformation> getAllConstraintsMap()
      • getClassDefinition

        public org.drools.core.factmodel.ClassDefinition getClassDefinition​(java.lang.Class<?> cls)
      • setContext

        public PackageModel setContext​(org.drools.codegen.common.DroolsModelBuildContext context)
      • getContext

        public org.drools.codegen.common.DroolsModelBuildContext getContext()