org.drools
Class RuleBaseConfiguration

java.lang.Object
  extended by org.drools.RuleBaseConfiguration
All Implemented Interfaces:
java.io.Serializable

public class RuleBaseConfiguration
extends java.lang.Object
implements java.io.Serializable

drools.maintainTms = drools.shadowproxy = // sequentail=true always overrides setting this to false drools.shadowproxy.exclude = org.domainy.* org.domainx.ClassZ drools.sequential = drools.sequential.agenda = drools.removeIdentities = drools.shareAlphaNodes = drools.shareBetaNodes = drools.alphaMemory drools.alphaNodeHashingThreshold = <1...n> drools.compositeKeyDepth =<1..3> drools.indexLeftBetaMemory = drools.indexRightBetaMemory = drools.assertBehaviour = drools.logicalOverride = drools.executorService = drools.conflictResolver = drools.consequenceExceptionHandler = drools.ruleBaseUpdateHandler = drools.useStaticObjenesis =

See Also:
Serialized Form

Nested Class Summary
static class RuleBaseConfiguration.AssertBehaviour
           
static class RuleBaseConfiguration.LogicalOverride
           
static class RuleBaseConfiguration.SequentialAgenda
           
 
Constructor Summary
RuleBaseConfiguration()
          Creates a new rulebase with a default parent class loader set according to the following algorithm: If a Thread.currentThread().getContextClassLoader() returns a non-null class loader, it will be used as the parent class loader for this rulebase class loaders, otherwise, the RuleBaseConfiguration.class.getClassLoader() class loader will be used.
RuleBaseConfiguration(java.lang.ClassLoader classLoader)
          A constructor that sets the parent classloader to be used while dealing with this rule base
RuleBaseConfiguration(java.lang.ClassLoader classLoader, java.util.Properties properties)
          A constructor that sets the classloader to be used as the parent classloader of this rule base classloaders, and the properties to be used as base configuration options
RuleBaseConfiguration(java.util.Properties properties)
          Creates a new rulebase configuration using the provided properties as configuration options.
 
Method Summary
 AgendaGroupFactory getAgendaGroupFactory()
           
 int getAlphaNodeHashingThreshold()
           
 RuleBaseConfiguration.AssertBehaviour getAssertBehaviour()
           
 java.lang.ClassLoader getClassLoader()
           
 int getCompositeKeyDepth()
           
 ConflictResolver getConflictResolver()
           
 ConsequenceExceptionHandler getConsequenceExceptionHandler()
           
 java.lang.String getExecutorService()
           
 RuleBaseConfiguration.LogicalOverride getLogicalOverride()
           
 java.lang.String getRuleBaseUpdateHandler()
           
 RuleBaseConfiguration.SequentialAgenda getSequentialAgenda()
           
 boolean isAlphaMemory()
           
 boolean isImmutable()
          Returns true if this configuration object is immutable or false otherwise.
 boolean isIndexLeftBetaMemory()
           
 boolean isIndexRightBetaMemory()
           
 boolean isMaintainTms()
           
 boolean isRemoveIdentities()
           
 boolean isSequential()
           
 boolean isShadowed(java.lang.String className)
           
 boolean isShadowProxy()
           
 boolean isShareAlphaNodes()
           
 boolean isShareBetaNodes()
           
 boolean isUseStaticObjenesis()
           
 void makeImmutable()
          Makes the configuration object immutable.
 void setAlphaMemory(boolean alphaMemory)
           
 void setAlphaNodeHashingThreshold(int alphaNodeHashingThreshold)
           
 void setAssertBehaviour(RuleBaseConfiguration.AssertBehaviour assertBehaviour)
           
 void setClassLoader(java.lang.ClassLoader classLoader)
           
 void setCompositeKeyDepth(int compositeKeyDepth)
           
 void setConflictResolver(ConflictResolver conflictResolver)
           
 void setConsequenceExceptionHandler(ConsequenceExceptionHandler consequenceExceptionHandler)
           
 void setExecutorService(java.lang.String executorService)
           
 void setIndexLeftBetaMemory(boolean indexLeftBetaMemory)
           
 void setIndexRightBetaMemory(boolean indexRightBetaMemory)
           
 void setLogicalOverride(RuleBaseConfiguration.LogicalOverride logicalOverride)
           
 void setMaintainTms(boolean maintainTms)
           
 void setRemoveIdentities(boolean removeIdentities)
           
 void setRuleBaseUpdateHandler(java.lang.String ruleBaseUpdateHandler)
           
 void setSequential(boolean sequential)
           
 void setSequentialAgenda(RuleBaseConfiguration.SequentialAgenda sequentialAgenda)
           
 void setShadowProxy(boolean shadowProxy)
           
 void setShadowProxyExcludes(java.lang.String excludes)
           
 void setShareAlphaNodes(boolean shareAlphaNodes)
           
 void setShareBetaNodes(boolean shareBetaNodes)
           
 void setUseStaticObjenesis(boolean useStaticObjenesis)
           
 
Methods inherited from class java.lang.Object
clone, equals, finalize, getClass, hashCode, notify, notifyAll, toString, wait, wait, wait
 

Constructor Detail

RuleBaseConfiguration

public RuleBaseConfiguration(java.util.Properties properties)
Creates a new rulebase configuration using the provided properties as configuration options. Also, if a Thread.currentThread().getContextClassLoader() returns a non-null class loader, it will be used as the parent classloader for this rulebase class loaders, otherwise, the RuleBaseConfiguration.class.getClassLoader() class loader will be used.

Parameters:
properties -

RuleBaseConfiguration

public RuleBaseConfiguration()
Creates a new rulebase with a default parent class loader set according to the following algorithm: If a Thread.currentThread().getContextClassLoader() returns a non-null class loader, it will be used as the parent class loader for this rulebase class loaders, otherwise, the RuleBaseConfiguration.class.getClassLoader() class loader will be used.

Parameters:
properties -

RuleBaseConfiguration

public RuleBaseConfiguration(java.lang.ClassLoader classLoader)
A constructor that sets the parent classloader to be used while dealing with this rule base

Parameters:
classLoader -

RuleBaseConfiguration

public RuleBaseConfiguration(java.lang.ClassLoader classLoader,
                             java.util.Properties properties)
A constructor that sets the classloader to be used as the parent classloader of this rule base classloaders, and the properties to be used as base configuration options

Parameters:
classLoder -
properties -
Method Detail

makeImmutable

public void makeImmutable()
Makes the configuration object immutable. Once it becomes immutable, there is no way to make it mutable again. This is done to keep consistency.


isImmutable

public boolean isImmutable()
Returns true if this configuration object is immutable or false otherwise.

Returns:

setSequential

public void setSequential(boolean sequential)

isSequential

public boolean isSequential()

isMaintainTms

public boolean isMaintainTms()

setMaintainTms

public void setMaintainTms(boolean maintainTms)

isRemoveIdentities

public boolean isRemoveIdentities()

setRemoveIdentities

public void setRemoveIdentities(boolean removeIdentities)

isAlphaMemory

public boolean isAlphaMemory()

setAlphaMemory

public void setAlphaMemory(boolean alphaMemory)

isShareAlphaNodes

public boolean isShareAlphaNodes()

setShareAlphaNodes

public void setShareAlphaNodes(boolean shareAlphaNodes)

isShareBetaNodes

public boolean isShareBetaNodes()

setShareBetaNodes

public void setShareBetaNodes(boolean shareBetaNodes)

getAlphaNodeHashingThreshold

public int getAlphaNodeHashingThreshold()

setAlphaNodeHashingThreshold

public void setAlphaNodeHashingThreshold(int alphaNodeHashingThreshold)

getAssertBehaviour

public RuleBaseConfiguration.AssertBehaviour getAssertBehaviour()

setAssertBehaviour

public void setAssertBehaviour(RuleBaseConfiguration.AssertBehaviour assertBehaviour)

getCompositeKeyDepth

public int getCompositeKeyDepth()

setCompositeKeyDepth

public void setCompositeKeyDepth(int compositeKeyDepth)

isIndexLeftBetaMemory

public boolean isIndexLeftBetaMemory()

setIndexLeftBetaMemory

public void setIndexLeftBetaMemory(boolean indexLeftBetaMemory)

isIndexRightBetaMemory

public boolean isIndexRightBetaMemory()

setIndexRightBetaMemory

public void setIndexRightBetaMemory(boolean indexRightBetaMemory)

getLogicalOverride

public RuleBaseConfiguration.LogicalOverride getLogicalOverride()

setLogicalOverride

public void setLogicalOverride(RuleBaseConfiguration.LogicalOverride logicalOverride)

getExecutorService

public java.lang.String getExecutorService()

setExecutorService

public void setExecutorService(java.lang.String executorService)

getConsequenceExceptionHandler

public ConsequenceExceptionHandler getConsequenceExceptionHandler()

setConsequenceExceptionHandler

public void setConsequenceExceptionHandler(ConsequenceExceptionHandler consequenceExceptionHandler)

getRuleBaseUpdateHandler

public java.lang.String getRuleBaseUpdateHandler()

setRuleBaseUpdateHandler

public void setRuleBaseUpdateHandler(java.lang.String ruleBaseUpdateHandler)

getAgendaGroupFactory

public AgendaGroupFactory getAgendaGroupFactory()

getSequentialAgenda

public RuleBaseConfiguration.SequentialAgenda getSequentialAgenda()

setSequentialAgenda

public void setSequentialAgenda(RuleBaseConfiguration.SequentialAgenda sequentialAgenda)

setConflictResolver

public void setConflictResolver(ConflictResolver conflictResolver)

getConflictResolver

public ConflictResolver getConflictResolver()

setShadowProxy

public void setShadowProxy(boolean shadowProxy)

isShadowProxy

public boolean isShadowProxy()

isUseStaticObjenesis

public boolean isUseStaticObjenesis()

setUseStaticObjenesis

public void setUseStaticObjenesis(boolean useStaticObjenesis)

getClassLoader

public java.lang.ClassLoader getClassLoader()

setClassLoader

public void setClassLoader(java.lang.ClassLoader classLoader)

setShadowProxyExcludes

public void setShadowProxyExcludes(java.lang.String excludes)

isShadowed

public boolean isShadowed(java.lang.String className)