public class KnowledgeBuilderImpl extends Object implements org.kie.internal.builder.KnowledgeBuilder
Modifier and Type | Class and Description |
---|---|
static interface |
KnowledgeBuilderImpl.AssetFilter |
static class |
KnowledgeBuilderImpl.MissingPackageNameException |
static class |
KnowledgeBuilderImpl.PackageMergeException |
static class |
KnowledgeBuilderImpl.ResourceRemovalResult |
Modifier and Type | Field and Description |
---|---|
protected static org.slf4j.Logger |
logger |
Constructor and Description |
---|
KnowledgeBuilderImpl()
Use this when package is starting from scratch.
|
KnowledgeBuilderImpl(org.drools.core.impl.InternalKnowledgeBase kBase) |
KnowledgeBuilderImpl(org.drools.core.impl.InternalKnowledgeBase kBase,
KnowledgeBuilderConfigurationImpl configuration) |
KnowledgeBuilderImpl(org.drools.core.definitions.InternalKnowledgePackage pkg)
This will allow you to merge rules into this pre existing package.
|
KnowledgeBuilderImpl(org.drools.core.definitions.InternalKnowledgePackage pkg,
KnowledgeBuilderConfigurationImpl configuration) |
KnowledgeBuilderImpl(KnowledgeBuilderConfigurationImpl configuration)
Pass a specific configuration for the PackageBuilder
PackageBuilderConfiguration is not thread safe and it also contains
state.
|
Modifier and Type | Method and Description |
---|---|
void |
add(org.kie.api.io.Resource resource,
org.kie.api.io.ResourceType type) |
void |
add(org.kie.api.io.Resource resource,
org.kie.api.io.ResourceType type,
org.kie.api.io.ResourceConfiguration configuration) |
void |
addBuilderResult(org.kie.internal.builder.KnowledgeBuilderResult result) |
void |
addDsl(org.kie.api.io.Resource resource) |
void |
addGlobal(String name,
Class<?> type) |
void |
addKnowledgeResource(org.kie.api.io.Resource resource,
org.kie.api.io.ResourceType type,
org.kie.api.io.ResourceConfiguration configuration) |
void |
addPackage(org.drools.core.definitions.InternalKnowledgePackage newPkg) |
void |
addPackage(PackageDescr packageDescr)
This adds a package from a Descr/AST This will also trigger a compile, if
there are any generated classes to compile of course.
|
void |
addPackageFromDecisionTable(org.kie.api.io.Resource resource,
org.kie.api.io.ResourceConfiguration configuration) |
void |
addPackageFromDrl(Reader reader)
Load a rule package from DRL source.
|
void |
addPackageFromDrl(Reader source,
Reader dsl)
Load a rule package from DRL source using the supplied DSL configuration.
|
void |
addPackageFromDrl(Reader reader,
org.kie.api.io.Resource sourceResource)
Load a rule package from DRL source and associate all loaded artifacts
with the given resource.
|
void |
addPackageFromDrl(org.kie.api.io.Resource resource) |
void |
addPackageFromDslr(org.kie.api.io.Resource resource) |
void |
addPackageFromGuidedDecisionTable(org.kie.api.io.Resource resource) |
void |
addPackageFromGuidedScoreCard(org.kie.api.io.Resource resource) |
void |
addPackageFromScoreCard(org.kie.api.io.Resource resource,
org.kie.api.io.ResourceConfiguration configuration) |
void |
addPackageFromTemplate(org.kie.api.io.Resource resource) |
void |
addPackageFromXml(Reader reader)
Load a rule package from XML source.
|
void |
addPackageFromXml(org.kie.api.io.Resource resource) |
void |
addProcessFromXml(Reader processSource) |
void |
addProcessFromXml(org.kie.api.io.Resource resource) |
void |
addRuleFlow(Reader processSource)
Add a ruleflow (.rfm) asset to this package.
|
org.kie.internal.builder.CompositeKnowledgeBuilder |
batch() |
protected void |
buildEntryPoints(Collection<CompositePackageDescr> packages) |
protected void |
buildOtherDeclarations(Collection<CompositePackageDescr> packages) |
void |
buildPackages(Collection<CompositePackageDescr> packages) |
protected void |
buildRules(Collection<CompositePackageDescr> packages) |
protected void |
buildTypeDeclarations(Collection<CompositePackageDescr> packages) |
void |
compileAll() |
protected void |
compileKnowledgePackages(PackageDescr packageDescr,
PackageRegistry pkgRegistry) |
protected void |
compileRete(PackageDescr packageDescr) |
protected static File |
createDumpDrlFile(File dumpDir,
String fileName,
String extension) |
org.drools.core.rule.TypeDeclaration |
getAndRegisterTypeDeclaration(Class<?> cls,
String packageName) |
KnowledgeBuilderConfigurationImpl |
getBuilderConfiguration()
Return the PackageBuilderConfiguration for this PackageBuilder session
|
<T> T |
getCachedOrCreate(String key,
Supplier<T> creator) |
String |
getDefaultDialect() |
DefaultExpander |
getDslExpander()
Returns an expander for DSLs (only if there is a DSL configured for this
package).
|
PackageBuilderErrors |
getErrors() |
Map<String,Class<?>> |
getGlobals() |
org.drools.core.impl.InternalKnowledgeBase |
getKnowledgeBase() |
Collection<org.kie.api.definition.KiePackage> |
getKnowledgePackages() |
PackageRegistry |
getOrCreatePackageRegistry(PackageDescr packageDescr) |
org.drools.core.definitions.InternalKnowledgePackage |
getPackage(String name) |
List<PackageDescr> |
getPackageDescrs(String packageName) |
Collection<String> |
getPackageNames() |
Map<String,PackageRegistry> |
getPackageRegistry() |
PackageRegistry |
getPackageRegistry(String name) |
org.drools.core.definitions.InternalKnowledgePackage[] |
getPackages() |
ProcessBuilder |
getProcessBuilder() |
org.kie.internal.builder.KnowledgeBuilderResults |
getResults(org.kie.internal.builder.ResultSeverity... problemTypes) |
ClassLoader |
getRootClassLoader() |
org.drools.core.rule.TypeDeclaration |
getTypeDeclaration(Class<?> cls) |
List<DroolsWarning> |
getWarnings() |
boolean |
hasErrors()
This will return true if there were errors in the package building and
compiling phase
|
boolean |
hasInfo() |
boolean |
hasResults(org.kie.internal.builder.ResultSeverity... problemTypes) |
boolean |
hasWarnings() |
protected void |
initPackageRegistries(Collection<CompositePackageDescr> packages) |
org.kie.api.KieBase |
newKieBase() |
org.kie.api.KieBase |
newKnowledgeBase(org.kie.api.KieBaseConfiguration conf) |
protected void |
normalizeAnnotations(AnnotatedBaseDescr annotationsContainer,
org.kie.soup.project.datamodel.commons.types.TypeResolver typeResolver,
boolean isStrict) |
protected void |
normalizeRuleAnnotations(Collection<CompositePackageDescr> packages) |
void |
normalizeRuleAnnotations(PackageDescr packageDescr,
org.kie.soup.project.datamodel.commons.types.TypeResolver typeResolver) |
protected void |
normalizeTypeAnnotations(Collection<CompositePackageDescr> packages) |
void |
normalizeTypeDeclarationAnnotations(PackageDescr packageDescr,
org.kie.soup.project.datamodel.commons.types.TypeResolver typeResolver) |
protected void |
processKieBaseTypes() |
void |
registerBuildResource(org.kie.api.io.Resource resource,
org.kie.api.io.ResourceType type) |
void |
registerBuildResources(List<org.kie.api.io.Resource> resources) |
void |
reloadAll() |
KnowledgeBuilderImpl.ResourceRemovalResult |
removeObjectsGeneratedFromResource(org.kie.api.io.Resource resource) |
protected void |
resetErrors()
Reset the error list.
|
protected void |
resetProblems() |
protected void |
resetWarnings() |
void |
rewireAllClassObjectTypes() |
void |
setAssetFilter(KnowledgeBuilderImpl.AssetFilter assetFilter) |
void |
undo() |
void |
updateResults() |
void |
updateResults(List<org.kie.internal.builder.KnowledgeBuilderResult> results) |
protected void |
validateUniqueRuleNames(PackageDescr packageDescr) |
protected void |
wireAllRules() |
public KnowledgeBuilderImpl()
public KnowledgeBuilderImpl(org.drools.core.definitions.InternalKnowledgePackage pkg)
public KnowledgeBuilderImpl(org.drools.core.impl.InternalKnowledgeBase kBase)
public KnowledgeBuilderImpl(KnowledgeBuilderConfigurationImpl configuration)
PackageBuilderConfiguration is not thread safe and it also contains state. Once it is created and used in one or more PackageBuilders it should be considered immutable. Do not modify its properties while it is being used by a PackageBuilder.
public KnowledgeBuilderImpl(org.drools.core.definitions.InternalKnowledgePackage pkg, KnowledgeBuilderConfigurationImpl configuration)
public KnowledgeBuilderImpl(org.drools.core.impl.InternalKnowledgeBase kBase, KnowledgeBuilderConfigurationImpl configuration)
public org.drools.core.impl.InternalKnowledgeBase getKnowledgeBase()
public void addPackageFromDrl(Reader reader) throws DroolsParserException, IOException
DroolsParserException
IOException
public void addPackageFromDrl(Reader reader, org.kie.api.io.Resource sourceResource) throws DroolsParserException, IOException
reader
- sourceResource
- the source resource for the read artifactsDroolsParserException
IOException
public void addPackageFromDecisionTable(org.kie.api.io.Resource resource, org.kie.api.io.ResourceConfiguration configuration) throws DroolsParserException, IOException
DroolsParserException
IOException
public void addPackageFromGuidedDecisionTable(org.kie.api.io.Resource resource) throws DroolsParserException, IOException
DroolsParserException
IOException
protected static File createDumpDrlFile(File dumpDir, String fileName, String extension)
public void addPackageFromScoreCard(org.kie.api.io.Resource resource, org.kie.api.io.ResourceConfiguration configuration) throws DroolsParserException, IOException
DroolsParserException
IOException
public void addPackageFromGuidedScoreCard(org.kie.api.io.Resource resource) throws DroolsParserException, IOException
DroolsParserException
IOException
public void addPackageFromTemplate(org.kie.api.io.Resource resource) throws DroolsParserException, IOException
DroolsParserException
IOException
public void addPackageFromDrl(org.kie.api.io.Resource resource) throws DroolsParserException, IOException
DroolsParserException
IOException
public void addPackageFromXml(Reader reader) throws DroolsParserException, IOException
reader
- DroolsParserException
IOException
public void addPackageFromXml(org.kie.api.io.Resource resource) throws DroolsParserException, IOException
DroolsParserException
IOException
public void addPackageFromDrl(Reader source, Reader dsl) throws DroolsParserException, IOException
source
- The source of the rules.dsl
- The source of the domain specific language configuration.DroolsParserException
IOException
public void addPackageFromDslr(org.kie.api.io.Resource resource) throws DroolsParserException, IOException
DroolsParserException
IOException
public void addDsl(org.kie.api.io.Resource resource) throws IOException
IOException
public void addRuleFlow(Reader processSource)
public void addProcessFromXml(org.kie.api.io.Resource resource)
public ProcessBuilder getProcessBuilder()
public void addProcessFromXml(Reader processSource)
public void addKnowledgeResource(org.kie.api.io.Resource resource, org.kie.api.io.ResourceType type, org.kie.api.io.ResourceConfiguration configuration)
public void addPackage(PackageDescr packageDescr)
protected void compileKnowledgePackages(PackageDescr packageDescr, PackageRegistry pkgRegistry)
protected void wireAllRules()
protected void processKieBaseTypes()
protected void compileRete(PackageDescr packageDescr)
public void addBuilderResult(org.kie.internal.builder.KnowledgeBuilderResult result)
public PackageRegistry getOrCreatePackageRegistry(PackageDescr packageDescr)
public void updateResults()
public void updateResults(List<org.kie.internal.builder.KnowledgeBuilderResult> results)
public void compileAll()
public void reloadAll()
public void addPackage(org.drools.core.definitions.InternalKnowledgePackage newPkg)
protected void validateUniqueRuleNames(PackageDescr packageDescr)
public org.drools.core.rule.TypeDeclaration getAndRegisterTypeDeclaration(Class<?> cls, String packageName)
public org.drools.core.definitions.InternalKnowledgePackage[] getPackages()
public KnowledgeBuilderConfigurationImpl getBuilderConfiguration()
public PackageRegistry getPackageRegistry(String name)
public org.drools.core.definitions.InternalKnowledgePackage getPackage(String name)
public Map<String,PackageRegistry> getPackageRegistry()
public Collection<String> getPackageNames()
public List<PackageDescr> getPackageDescrs(String packageName)
public DefaultExpander getDslExpander()
public boolean hasErrors()
hasErrors
in interface org.kie.internal.builder.KnowledgeBuilder
public org.kie.internal.builder.KnowledgeBuilderResults getResults(org.kie.internal.builder.ResultSeverity... problemTypes)
getResults
in interface org.kie.internal.builder.KnowledgeBuilder
public boolean hasResults(org.kie.internal.builder.ResultSeverity... problemTypes)
hasResults
in interface org.kie.internal.builder.KnowledgeBuilder
public boolean hasWarnings()
public boolean hasInfo()
public List<DroolsWarning> getWarnings()
public PackageBuilderErrors getErrors()
getErrors
in interface org.kie.internal.builder.KnowledgeBuilder
protected void resetErrors()
protected void resetWarnings()
protected void resetProblems()
public String getDefaultDialect()
public ClassLoader getRootClassLoader()
public void registerBuildResource(org.kie.api.io.Resource resource, org.kie.api.io.ResourceType type)
public void registerBuildResources(List<org.kie.api.io.Resource> resources)
public void undo()
undo
in interface org.kie.internal.builder.KnowledgeBuilder
public KnowledgeBuilderImpl.ResourceRemovalResult removeObjectsGeneratedFromResource(org.kie.api.io.Resource resource)
public void rewireAllClassObjectTypes()
public void setAssetFilter(KnowledgeBuilderImpl.AssetFilter assetFilter)
public void add(org.kie.api.io.Resource resource, org.kie.api.io.ResourceType type)
add
in interface org.kie.internal.builder.KnowledgeBuilder
public org.kie.internal.builder.CompositeKnowledgeBuilder batch()
batch
in interface org.kie.internal.builder.KnowledgeBuilder
public void add(org.kie.api.io.Resource resource, org.kie.api.io.ResourceType type, org.kie.api.io.ResourceConfiguration configuration)
add
in interface org.kie.internal.builder.KnowledgeBuilder
public Collection<org.kie.api.definition.KiePackage> getKnowledgePackages()
getKnowledgePackages
in interface org.kie.internal.builder.KnowledgeBuilder
public org.kie.api.KieBase newKieBase()
newKieBase
in interface org.kie.internal.builder.KnowledgeBuilder
public org.kie.api.KieBase newKnowledgeBase(org.kie.api.KieBaseConfiguration conf)
public org.drools.core.rule.TypeDeclaration getTypeDeclaration(Class<?> cls)
public void normalizeTypeDeclarationAnnotations(PackageDescr packageDescr, org.kie.soup.project.datamodel.commons.types.TypeResolver typeResolver)
public void normalizeRuleAnnotations(PackageDescr packageDescr, org.kie.soup.project.datamodel.commons.types.TypeResolver typeResolver)
protected void normalizeAnnotations(AnnotatedBaseDescr annotationsContainer, org.kie.soup.project.datamodel.commons.types.TypeResolver typeResolver, boolean isStrict)
public void buildPackages(Collection<CompositePackageDescr> packages)
protected void initPackageRegistries(Collection<CompositePackageDescr> packages)
protected void normalizeTypeAnnotations(Collection<CompositePackageDescr> packages)
protected void normalizeRuleAnnotations(Collection<CompositePackageDescr> packages)
protected void buildEntryPoints(Collection<CompositePackageDescr> packages)
protected void buildTypeDeclarations(Collection<CompositePackageDescr> packages)
protected void buildOtherDeclarations(Collection<CompositePackageDescr> packages)
protected void buildRules(Collection<CompositePackageDescr> packages)
Copyright © 2001–2019 JBoss by Red Hat. All rights reserved.