org.drools.compiler
Class PackageBuilderConfiguration

java.lang.Object
  extended by org.drools.compiler.PackageBuilderConfiguration
All Implemented Interfaces:
org.drools.builder.conf.KnowledgeBuilderOptionsConfiguration, org.drools.builder.KnowledgeBuilderConfiguration, org.drools.PropertiesConfiguration

public class PackageBuilderConfiguration
extends Object
implements org.drools.builder.KnowledgeBuilderConfiguration

This class configures the package compiler. Dialects and their DialectConfigurations are handled by the DialectRegistry Normally you will not need to look at this class, unless you want to override the defaults. This class 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. drools.dialect.default = drools.accumulate.function. = drools.evaluator. = drools.dump.dir = drools.classLoaderCacheEnabled = true|false default dialect is java. Available preconfigured Accumulate functions are: drools.accumulate.function.average = org.drools.base.accumulators.AverageAccumulateFunction drools.accumulate.function.max = org.drools.base.accumulators.MaxAccumulateFunction drools.accumulate.function.min = org.drools.base.accumulators.MinAccumulateFunction drools.accumulate.function.count = org.drools.base.accumulators.CountAccumulateFunction drools.accumulate.function.sum = org.drools.base.accumulators.SumAccumulateFunction drools.parser.processStringEscapes = true|false


Constructor Summary
PackageBuilderConfiguration()
           
PackageBuilderConfiguration(ClassLoader... classLoaders)
          Constructor that sets the parent class loader for the package being built/compiled
PackageBuilderConfiguration(Properties properties)
          Programmatic properties file, added with lease precedence
PackageBuilderConfiguration(Properties properties, ClassLoader... classLoaders)
          Programmatic properties file, added with lease precedence
 
Method Summary
 void addAccumulateFunction(String identifier, Class<? extends org.drools.runtime.rule.AccumulateFunction> clazz)
           
 void addAccumulateFunction(String identifier, String className)
           
 void addDialect(String dialectName, DialectConfiguration dialectConf)
           
 void addDialect(String dialectName, String dialectClass)
           
 void addEvaluatorDefinition(EvaluatorDefinition def)
          Adds an evaluator definition class to the registry.
 void addEvaluatorDefinition(String className)
          Adds an evaluator definition class to the registry using the evaluator class name.
 void addSemanticModule(SemanticModule module)
           
 DialectCompiletimeRegistry buildDialectRegistry(PackageBuilder packageBuilder, PackageRegistry pkgRegistry, Package pkg)
           
 org.drools.runtime.rule.AccumulateFunction getAccumulateFunction(String identifier)
           
 Map<String,String> getAccumulateFunctionsMap()
          Deprecated.  
 org.drools.util.ChainedProperties getChainedProperties()
           
 org.drools.util.CompositeClassLoader getClassLoader()
           
 String getDefaultDialect()
           
 String getDefaultPackageName()
           
 DialectConfiguration getDialectConfiguration(String name)
           
 File getDumpDir()
           
 EvaluatorRegistry getEvaluatorRegistry()
          Returns the evaluator registry for this package builder configuration
<T extends org.drools.builder.conf.SingleValueKnowledgeBuilderOption>
T
getOption(Class<T> option)
           
<T extends org.drools.builder.conf.MultiValueKnowledgeBuilderOption>
T
getOption(Class<T> option, String key)
           
<T extends org.drools.builder.conf.MultiValueKnowledgeBuilderOption>
Set<String>
getOptionKeys(Class<T> option)
           
 String getProperty(String name)
           
 SemanticModules getSemanticModules()
           
 void initSemanticModules()
           
 boolean isAllowMultipleNamespaces()
           
 boolean isClassLoaderCacheEnabled()
           
 boolean isProcessStringEscapes()
           
 void loadSemanticModule(Properties properties)
           
 void loadSemanticModule(String moduleLocation)
           
 void setAllowMultipleNamespaces(boolean allowMultipleNamespaces)
          By default multiple namespaces are allowed.
 void setClassLoaderCacheEnabled(boolean classLoaderCacheEnabled)
           
 void setDefaultDialect(String defaultDialect)
           
 void setDefaultPackageName(String defaultPackageName)
           
 void setDialectConfiguration(String name, DialectConfiguration configuration)
           
 void setDumpDir(File dumpDir)
           
<T extends org.drools.builder.conf.KnowledgeBuilderOption>
void
setOption(T option)
           
 void setProcessStringEscapes(boolean processStringEscapes)
           
 void setProperty(String name, String value)
           
 
Methods inherited from class java.lang.Object
clone, equals, finalize, getClass, hashCode, notify, notifyAll, toString, wait, wait, wait
 

Constructor Detail

PackageBuilderConfiguration

public PackageBuilderConfiguration(ClassLoader... classLoaders)
Constructor that sets the parent class loader for the package being built/compiled

Parameters:
classLoader -

PackageBuilderConfiguration

public PackageBuilderConfiguration(Properties properties)
Programmatic properties file, added with lease precedence

Parameters:
properties -

PackageBuilderConfiguration

public PackageBuilderConfiguration(Properties properties,
                                   ClassLoader... classLoaders)
Programmatic properties file, added with lease precedence

Parameters:
classLoader -
properties -

PackageBuilderConfiguration

public PackageBuilderConfiguration()
Method Detail

isAllowMultipleNamespaces

public boolean isAllowMultipleNamespaces()

setAllowMultipleNamespaces

public void setAllowMultipleNamespaces(boolean allowMultipleNamespaces)
By default multiple namespaces are allowed. If you set this to "false" it will make it all happen in the "default" namespace (the first namespace you define).


setProperty

public void setProperty(String name,
                        String value)
Specified by:
setProperty in interface org.drools.PropertiesConfiguration

getProperty

public String getProperty(String name)
Specified by:
getProperty in interface org.drools.PropertiesConfiguration

getChainedProperties

public org.drools.util.ChainedProperties getChainedProperties()

addDialect

public void addDialect(String dialectName,
                       String dialectClass)

addDialect

public void addDialect(String dialectName,
                       DialectConfiguration dialectConf)

buildDialectRegistry

public DialectCompiletimeRegistry buildDialectRegistry(PackageBuilder packageBuilder,
                                                       PackageRegistry pkgRegistry,
                                                       Package pkg)

getDefaultDialect

public String getDefaultDialect()

setDefaultDialect

public void setDefaultDialect(String defaultDialect)

getDialectConfiguration

public DialectConfiguration getDialectConfiguration(String name)

setDialectConfiguration

public void setDialectConfiguration(String name,
                                    DialectConfiguration configuration)

getClassLoader

public org.drools.util.CompositeClassLoader getClassLoader()

addSemanticModule

public void addSemanticModule(SemanticModule module)

getSemanticModules

public SemanticModules getSemanticModules()

initSemanticModules

public void initSemanticModules()

loadSemanticModule

public void loadSemanticModule(String moduleLocation)

loadSemanticModule

public void loadSemanticModule(Properties properties)

getAccumulateFunctionsMap

public Map<String,String> getAccumulateFunctionsMap()
Deprecated. 

This method is deprecated and will be removed

Returns:

addAccumulateFunction

public void addAccumulateFunction(String identifier,
                                  String className)

addAccumulateFunction

public void addAccumulateFunction(String identifier,
                                  Class<? extends org.drools.runtime.rule.AccumulateFunction> clazz)

getAccumulateFunction

public org.drools.runtime.rule.AccumulateFunction getAccumulateFunction(String identifier)

getEvaluatorRegistry

public EvaluatorRegistry getEvaluatorRegistry()
Returns the evaluator registry for this package builder configuration

Returns:

addEvaluatorDefinition

public void addEvaluatorDefinition(String className)
Adds an evaluator definition class to the registry using the evaluator class name. The class will be loaded and the corresponting evaluator ID will be added to the registry. In case there exists an implementation for that ID already, the new implementation will replace the previous one.

Parameters:
className - the name of the class for the implementation definition. The class must implement the EvaluatorDefinition interface.

addEvaluatorDefinition

public void addEvaluatorDefinition(EvaluatorDefinition def)
Adds an evaluator definition class to the registry. In case there exists an implementation for that evaluator ID already, the new implementation will replace the previous one.

Parameters:
def - the evaluator definition to be added.

getDumpDir

public File getDumpDir()

setDumpDir

public void setDumpDir(File dumpDir)

isProcessStringEscapes

public boolean isProcessStringEscapes()

setProcessStringEscapes

public void setProcessStringEscapes(boolean processStringEscapes)

isClassLoaderCacheEnabled

public boolean isClassLoaderCacheEnabled()

setClassLoaderCacheEnabled

public void setClassLoaderCacheEnabled(boolean classLoaderCacheEnabled)

getDefaultPackageName

public String getDefaultPackageName()

setDefaultPackageName

public void setDefaultPackageName(String defaultPackageName)

getOption

public <T extends org.drools.builder.conf.SingleValueKnowledgeBuilderOption> T getOption(Class<T> option)
Specified by:
getOption in interface org.drools.builder.conf.KnowledgeBuilderOptionsConfiguration

getOption

public <T extends org.drools.builder.conf.MultiValueKnowledgeBuilderOption> T getOption(Class<T> option,
                                                                                        String key)
Specified by:
getOption in interface org.drools.builder.conf.KnowledgeBuilderOptionsConfiguration

getOptionKeys

public <T extends org.drools.builder.conf.MultiValueKnowledgeBuilderOption> Set<String> getOptionKeys(Class<T> option)
Specified by:
getOptionKeys in interface org.drools.builder.conf.KnowledgeBuilderOptionsConfiguration

setOption

public <T extends org.drools.builder.conf.KnowledgeBuilderOption> void setOption(T option)
Specified by:
setOption in interface org.drools.builder.conf.KnowledgeBuilderOptionsConfiguration


Copyright © 2001-2013 JBoss Inc.. All Rights Reserved.