Package org.drools.core.reteoo
Class ReteooBuilder
- java.lang.Object
-
- org.drools.core.reteoo.ReteooBuilder
-
- All Implemented Interfaces:
java.io.Externalizable,java.io.Serializable
public class ReteooBuilder extends java.lang.Object implements java.io.ExternalizableBuilds the Rete-OO network for aPackage.- See Also:
- Serialized Form
-
-
Nested Class Summary
Nested Classes Modifier and Type Class Description static classReteooBuilder.IdGenerator
-
Constructor Summary
Constructors Constructor Description ReteooBuilder()ReteooBuilder(InternalRuleBase kBase)Construct aBuilderagainst an existingRetenetwork.
-
Method Summary
All Methods Instance Methods Concrete Methods Modifier and Type Method Description voidaddEntryPoint(java.lang.String id, java.util.Collection<InternalWorkingMemory> workingMemories)voidaddNamedWindow(org.drools.base.rule.WindowDeclaration window, java.util.Collection<InternalWorkingMemory> workingMemories)java.util.List<TerminalNode>addRule(org.drools.base.definitions.rule.impl.RuleImpl rule, java.util.Collection<InternalWorkingMemory> workingMemories)Add aRuleto the network.ReteooBuilder.IdGeneratorgetMemoryIdsGenerator()ReteooBuilder.IdGeneratorgetNodeIdsGenerator()java.util.Map<java.lang.String,TerminalNode[]>getTerminalNodes()TerminalNode[]getTerminalNodes(java.lang.String ruleName)QueryTerminalNode[]getTerminalNodesForQuery(java.lang.String ruleName)WindowNodegetWindowNode(java.lang.String name)voidreadExternal(java.io.ObjectInput in)voidreleaseId(org.drools.base.common.NetworkNode node)voidremoveRules(java.util.Collection<? extends org.kie.api.definition.rule.Rule> rulesToBeRemoved, java.util.Collection<InternalWorkingMemory> workingMemories)voidremoveTerminalNode(RuleRemovalContext context, TerminalNode tn, java.util.Collection<InternalWorkingMemory> workingMemories)voidsetRuleBase(InternalRuleBase kBase)voidwriteExternal(java.io.ObjectOutput out)
-
-
-
Constructor Detail
-
ReteooBuilder
public ReteooBuilder()
-
ReteooBuilder
public ReteooBuilder(InternalRuleBase kBase)
Construct aBuilderagainst an existingRetenetwork.
-
-
Method Detail
-
addRule
public java.util.List<TerminalNode> addRule(org.drools.base.definitions.rule.impl.RuleImpl rule, java.util.Collection<InternalWorkingMemory> workingMemories)
Add aRuleto the network.- Parameters:
rule- The rule to add.- Throws:
org.drools.base.rule.InvalidPatternException
-
addEntryPoint
public void addEntryPoint(java.lang.String id, java.util.Collection<InternalWorkingMemory> workingMemories)
-
addNamedWindow
public void addNamedWindow(org.drools.base.rule.WindowDeclaration window, java.util.Collection<InternalWorkingMemory> workingMemories)
-
getWindowNode
public WindowNode getWindowNode(java.lang.String name)
-
releaseId
public void releaseId(org.drools.base.common.NetworkNode node)
-
getNodeIdsGenerator
public ReteooBuilder.IdGenerator getNodeIdsGenerator()
-
getMemoryIdsGenerator
public ReteooBuilder.IdGenerator getMemoryIdsGenerator()
-
getTerminalNodes
public TerminalNode[] getTerminalNodes(java.lang.String ruleName)
-
getTerminalNodesForQuery
public QueryTerminalNode[] getTerminalNodesForQuery(java.lang.String ruleName)
-
getTerminalNodes
public java.util.Map<java.lang.String,TerminalNode[]> getTerminalNodes()
-
removeRules
public void removeRules(java.util.Collection<? extends org.kie.api.definition.rule.Rule> rulesToBeRemoved, java.util.Collection<InternalWorkingMemory> workingMemories)
-
removeTerminalNode
public void removeTerminalNode(RuleRemovalContext context, TerminalNode tn, java.util.Collection<InternalWorkingMemory> workingMemories)
-
writeExternal
public void writeExternal(java.io.ObjectOutput out) throws java.io.IOException- Specified by:
writeExternalin interfacejava.io.Externalizable- Throws:
java.io.IOException
-
readExternal
public void readExternal(java.io.ObjectInput in) throws java.io.IOException, java.lang.ClassNotFoundException- Specified by:
readExternalin interfacejava.io.Externalizable- Throws:
java.io.IOExceptionjava.lang.ClassNotFoundException
-
setRuleBase
public void setRuleBase(InternalRuleBase kBase)
-
-