|
|||||||||
PREV CLASS NEXT CLASS | FRAMES NO FRAMES | ||||||||
SUMMARY: NESTED | FIELD | CONSTR | METHOD | DETAIL: FIELD | CONSTR | METHOD |
java.lang.Objectorg.drools.common.AbstractRuleBase
public abstract class AbstractRuleBase
Implementation of RuleBase
.
Field Summary | |
---|---|
protected RuleBaseConfiguration |
config
|
protected FactHandleFactory |
factHandleFactory
The fact handle factory. |
protected java.util.Map |
globals
|
protected CompositePackageClassLoader |
packageClassLoader
|
protected java.util.Map |
pkgs
|
protected static java.lang.Object |
PRESENT
Special value when adding to the underlying map. |
protected java.util.Map |
workingMemories
WeakHashMap to keep references of WorkingMemories but allow them to be garbage collected |
Fields inherited from interface org.drools.RuleBase |
---|
LEAPS, RETEOO |
Constructor Summary | |
---|---|
AbstractRuleBase(RuleBaseConfiguration config,
FactHandleFactory factHandleFactory)
Construct. |
Method Summary | |
---|---|
void |
addPackage(Package newPkg)
Add a Package to the network. |
protected void |
addRule(Rule rule)
|
protected void |
addWorkingMemory(WorkingMemory workingMemory,
boolean keepReference)
|
void |
disposeWorkingMemory(WorkingMemory workingMemory)
|
void |
doReadExternal(java.io.ObjectInput stream,
java.lang.Object[] objects)
Handles the read serialization of the Package. |
void |
doWriteExternal(java.io.ObjectOutput stream,
java.lang.Object[] objects)
Handles the write serialization of the Package. |
RuleBaseConfiguration |
getConfiguration()
|
FactHandleFactory |
getFactHandleFactory()
|
java.util.Map |
getGlobals()
|
Package[] |
getPackages()
|
java.util.Set |
getWorkingMemories()
|
FactHandleFactory |
newFactHandleFactory()
|
WorkingMemory |
newWorkingMemory()
Create a new WorkingMemory session for this
RuleBase . |
abstract WorkingMemory |
newWorkingMemory(boolean keepReference)
Create a new WorkingMemory session for this
RuleBase . |
WorkingMemory |
newWorkingMemory(java.io.InputStream stream)
RuleBases handle the returning of a Serialized WorkingMemory pass as an InputStream. |
WorkingMemory |
newWorkingMemory(java.io.InputStream stream,
boolean keepReference)
RuleBases handle the returning of a Serialized WorkingMemory pass as an InputStream. |
void |
removePackage(java.lang.String packageName)
|
protected abstract void |
removeRule(Rule rule)
|
void |
removeRule(java.lang.String packageName,
java.lang.String ruleName)
|
Methods inherited from class java.lang.Object |
---|
clone, equals, finalize, getClass, hashCode, notify, notifyAll, toString, wait, wait, wait |
Methods inherited from interface org.drools.common.InternalRuleBase |
---|
assertObject, modifyObject, retractObject |
Methods inherited from interface java.io.Externalizable |
---|
readExternal, writeExternal |
Field Detail |
---|
protected RuleBaseConfiguration config
protected java.util.Map pkgs
protected transient CompositePackageClassLoader packageClassLoader
protected FactHandleFactory factHandleFactory
protected java.util.Map globals
protected transient java.util.Map workingMemories
protected static final java.lang.Object PRESENT
Constructor Detail |
---|
public AbstractRuleBase(RuleBaseConfiguration config, FactHandleFactory factHandleFactory)
rete
- The rete network.Method Detail |
---|
public void doWriteExternal(java.io.ObjectOutput stream, java.lang.Object[] objects) throws java.io.IOException
java.io.IOException
public void doReadExternal(java.io.ObjectInput stream, java.lang.Object[] objects) throws java.io.IOException, java.lang.ClassNotFoundException
java.io.IOException
java.lang.ClassNotFoundException
public WorkingMemory newWorkingMemory()
RuleBase
WorkingMemory
session for this
RuleBase
. By default the RuleBase retains a
weak reference to returned WorkingMemory.
The created WorkingMemory
uses the default conflict
resolution strategy.
newWorkingMemory
in interface RuleBase
WorkingMemory
.RuleBase
public abstract WorkingMemory newWorkingMemory(boolean keepReference)
RuleBase
WorkingMemory
session for this
RuleBase
. Optionally the RuleBase retains a
weak reference to returned WorkingMemory.
The created WorkingMemory
uses the default conflict
resolution strategy.
newWorkingMemory
in interface RuleBase
WorkingMemory
.RuleBase
public void disposeWorkingMemory(WorkingMemory workingMemory)
disposeWorkingMemory
in interface InternalRuleBase
public FactHandleFactory getFactHandleFactory()
RuleBase
public FactHandleFactory newFactHandleFactory()
newFactHandleFactory
in interface InternalRuleBase
public Package[] getPackages()
getPackages
in interface RuleBase
public java.util.Map getGlobals()
getGlobals
in interface InternalRuleBase
public void addPackage(Package newPkg) throws PackageIntegrationException
Package
to the network. Iterates through the
Package
adding Each individual Rule
to the
network. Before update network each referenced WorkingMemory
is locked.
addPackage
in interface RuleBase
pkg
- The package to add.
PackageIntegrationException
RuleIntegrationException
- if an error prevents complete construction of the network for
the Rule
.
FactException
InvalidPatternException
protected void addRule(Rule rule) throws InvalidPatternException
InvalidPatternException
public void removePackage(java.lang.String packageName)
removePackage
in interface RuleBase
public void removeRule(java.lang.String packageName, java.lang.String ruleName)
removeRule
in interface RuleBase
protected abstract void removeRule(Rule rule)
protected void addWorkingMemory(WorkingMemory workingMemory, boolean keepReference)
public java.util.Set getWorkingMemories()
getWorkingMemories
in interface RuleBase
public RuleBaseConfiguration getConfiguration()
getConfiguration
in interface InternalRuleBase
public WorkingMemory newWorkingMemory(java.io.InputStream stream) throws java.io.IOException, java.lang.ClassNotFoundException
RuleBase
The created WorkingMemory
uses the default conflict
resolution strategy.
newWorkingMemory
in interface RuleBase
WorkingMemory
.
java.io.IOException
java.lang.ClassNotFoundException
WorkingMemory
,
DefaultConflictResolver
public WorkingMemory newWorkingMemory(java.io.InputStream stream, boolean keepReference) throws java.io.IOException, java.lang.ClassNotFoundException
RuleBase
The created WorkingMemory
uses the default conflict
resolution strategy.
newWorkingMemory
in interface RuleBase
WorkingMemory
.
java.io.IOException
java.lang.ClassNotFoundException
WorkingMemory
,
DefaultConflictResolver
|
|||||||||
PREV CLASS NEXT CLASS | FRAMES NO FRAMES | ||||||||
SUMMARY: NESTED | FIELD | CONSTR | METHOD | DETAIL: FIELD | CONSTR | METHOD |