[jboss-svn-commits] JBL Code SVN: r17680 - in labs/jbossrules/trunk/drools-core/src/main/java/org/drools: rule and 1 other directory.
jboss-svn-commits at lists.jboss.org
jboss-svn-commits at lists.jboss.org
Thu Jan 10 12:21:07 EST 2008
Author: mark.proctor at jboss.com
Date: 2008-01-10 12:21:07 -0500 (Thu, 10 Jan 2008)
New Revision: 17680
Modified:
labs/jbossrules/trunk/drools-core/src/main/java/org/drools/common/BetaConstraints.java
labs/jbossrules/trunk/drools-core/src/main/java/org/drools/common/DefaultBetaConstraints.java
labs/jbossrules/trunk/drools-core/src/main/java/org/drools/common/DoubleBetaConstraints.java
labs/jbossrules/trunk/drools-core/src/main/java/org/drools/common/EmptyBetaConstraints.java
labs/jbossrules/trunk/drools-core/src/main/java/org/drools/common/InstanceEqualsConstraint.java
labs/jbossrules/trunk/drools-core/src/main/java/org/drools/common/InstanceNotEqualsConstraint.java
labs/jbossrules/trunk/drools-core/src/main/java/org/drools/common/QuadroupleBetaConstraints.java
labs/jbossrules/trunk/drools-core/src/main/java/org/drools/common/SingleBetaConstraints.java
labs/jbossrules/trunk/drools-core/src/main/java/org/drools/common/TripleBetaConstraints.java
labs/jbossrules/trunk/drools-core/src/main/java/org/drools/common/TupleStartEqualsConstraint.java
labs/jbossrules/trunk/drools-core/src/main/java/org/drools/rule/AbstractCompositeConstraint.java
labs/jbossrules/trunk/drools-core/src/main/java/org/drools/rule/AbstractCompositeRestriction.java
labs/jbossrules/trunk/drools-core/src/main/java/org/drools/rule/ContextEntry.java
labs/jbossrules/trunk/drools-core/src/main/java/org/drools/rule/LiteralRestriction.java
labs/jbossrules/trunk/drools-core/src/main/java/org/drools/rule/PredicateConstraint.java
labs/jbossrules/trunk/drools-core/src/main/java/org/drools/rule/ReturnValueRestriction.java
labs/jbossrules/trunk/drools-core/src/main/java/org/drools/rule/VariableRestriction.java
Log:
JBRULES-1412 ContextEntries should have cache nulled
-All constraints can now null their caches
-Still need to update the nodes to call those resets
Modified: labs/jbossrules/trunk/drools-core/src/main/java/org/drools/common/BetaConstraints.java
===================================================================
--- labs/jbossrules/trunk/drools-core/src/main/java/org/drools/common/BetaConstraints.java 2008-01-10 16:27:23 UTC (rev 17679)
+++ labs/jbossrules/trunk/drools-core/src/main/java/org/drools/common/BetaConstraints.java 2008-01-10 17:21:07 UTC (rev 17680)
@@ -30,4 +30,8 @@
public boolean isEmpty();
public BetaMemory createBetaMemory(final RuleBaseConfiguration config);
+
+ public void resetTuple();
+
+ public void resetFactHandle();
}
\ No newline at end of file
Modified: labs/jbossrules/trunk/drools-core/src/main/java/org/drools/common/DefaultBetaConstraints.java
===================================================================
--- labs/jbossrules/trunk/drools-core/src/main/java/org/drools/common/DefaultBetaConstraints.java 2008-01-10 16:27:23 UTC (rev 17679)
+++ labs/jbossrules/trunk/drools-core/src/main/java/org/drools/common/DefaultBetaConstraints.java 2008-01-10 17:21:07 UTC (rev 17680)
@@ -149,6 +149,18 @@
handle );
}
}
+
+ public void resetTuple() {
+ for ( ContextEntry context = this.contexts; context != null; context = context.getNext() ) {
+ context.resetTuple();
+ }
+ }
+
+ public void resetFactHandle() {
+ for ( ContextEntry context = this.contexts; context != null; context = context.getNext() ) {
+ context.resetFactHandle();
+ }
+ }
/* (non-Javadoc)
* @see org.drools.common.BetaNodeConstraints#isAllowedCachedLeft(java.lang.Object)
Modified: labs/jbossrules/trunk/drools-core/src/main/java/org/drools/common/DoubleBetaConstraints.java
===================================================================
--- labs/jbossrules/trunk/drools-core/src/main/java/org/drools/common/DoubleBetaConstraints.java 2008-01-10 16:27:23 UTC (rev 17679)
+++ labs/jbossrules/trunk/drools-core/src/main/java/org/drools/common/DoubleBetaConstraints.java 2008-01-10 17:21:07 UTC (rev 17680)
@@ -138,6 +138,16 @@
this.context1.updateFromFactHandle( workingMemory,
handle );
}
+
+ public void resetTuple() {
+ this.context0.resetTuple();
+ this.context1.resetTuple();
+ }
+
+ public void resetFactHandle() {
+ this.context0.resetFactHandle();
+ this.context1.resetFactHandle();
+ }
/* (non-Javadoc)
* @see org.drools.common.BetaNodeConstraints#isAllowedCachedLeft(java.lang.Object)
Modified: labs/jbossrules/trunk/drools-core/src/main/java/org/drools/common/EmptyBetaConstraints.java
===================================================================
--- labs/jbossrules/trunk/drools-core/src/main/java/org/drools/common/EmptyBetaConstraints.java 2008-01-10 16:27:23 UTC (rev 17679)
+++ labs/jbossrules/trunk/drools-core/src/main/java/org/drools/common/EmptyBetaConstraints.java 2008-01-10 17:21:07 UTC (rev 17680)
@@ -60,6 +60,12 @@
final InternalFactHandle handle) {
}
+ public void resetTuple() {
+ }
+
+ public void resetFactHandle() {
+ }
+
/* (non-Javadoc)
* @see org.drools.common.BetaNodeConstraints#isAllowedCachedLeft(java.lang.Object)
*/
Modified: labs/jbossrules/trunk/drools-core/src/main/java/org/drools/common/InstanceEqualsConstraint.java
===================================================================
--- labs/jbossrules/trunk/drools-core/src/main/java/org/drools/common/InstanceEqualsConstraint.java 2008-01-10 16:27:23 UTC (rev 17679)
+++ labs/jbossrules/trunk/drools-core/src/main/java/org/drools/common/InstanceEqualsConstraint.java 2008-01-10 17:21:07 UTC (rev 17680)
@@ -130,5 +130,13 @@
final InternalFactHandle handle) {
this.right = handle.getObject();
}
+
+ public void resetTuple() {
+ this.left = null;
+ }
+
+ public void resetFactHandle() {
+ this.right = null;
+ }
}
}
Modified: labs/jbossrules/trunk/drools-core/src/main/java/org/drools/common/InstanceNotEqualsConstraint.java
===================================================================
--- labs/jbossrules/trunk/drools-core/src/main/java/org/drools/common/InstanceNotEqualsConstraint.java 2008-01-10 16:27:23 UTC (rev 17679)
+++ labs/jbossrules/trunk/drools-core/src/main/java/org/drools/common/InstanceNotEqualsConstraint.java 2008-01-10 17:21:07 UTC (rev 17680)
@@ -123,8 +123,15 @@
public void updateFromFactHandle(final InternalWorkingMemory workingMemory,
final InternalFactHandle handle) {
this.right = handle.getObject();
-
}
+
+ public void resetTuple() {
+ this.left = null;
+ }
+
+ public void resetFactHandle() {
+ this.right = null;
+ }
}
}
\ No newline at end of file
Modified: labs/jbossrules/trunk/drools-core/src/main/java/org/drools/common/QuadroupleBetaConstraints.java
===================================================================
--- labs/jbossrules/trunk/drools-core/src/main/java/org/drools/common/QuadroupleBetaConstraints.java 2008-01-10 16:27:23 UTC (rev 17679)
+++ labs/jbossrules/trunk/drools-core/src/main/java/org/drools/common/QuadroupleBetaConstraints.java 2008-01-10 17:21:07 UTC (rev 17680)
@@ -199,6 +199,20 @@
this.context3.updateFromFactHandle( workingMemory,
handle );
}
+
+ public void resetTuple() {
+ this.context0.resetTuple();
+ this.context1.resetTuple();
+ this.context2.resetTuple();
+ this.context3.resetTuple();
+ }
+
+ public void resetFactHandle() {
+ this.context0.resetFactHandle();
+ this.context1.resetFactHandle();
+ this.context2.resetFactHandle();
+ this.context3.resetFactHandle();
+ }
/* (non-Javadoc)
* @see org.drools.common.BetaNodeConstraints#isAllowedCachedLeft(java.lang.Object)
Modified: labs/jbossrules/trunk/drools-core/src/main/java/org/drools/common/SingleBetaConstraints.java
===================================================================
--- labs/jbossrules/trunk/drools-core/src/main/java/org/drools/common/SingleBetaConstraints.java 2008-01-10 16:27:23 UTC (rev 17679)
+++ labs/jbossrules/trunk/drools-core/src/main/java/org/drools/common/SingleBetaConstraints.java 2008-01-10 17:21:07 UTC (rev 17680)
@@ -109,6 +109,14 @@
this.context.updateFromFactHandle( workingMemory,
handle );
}
+
+ public void resetTuple() {
+ this.context.resetTuple();
+ }
+
+ public void resetFactHandle() {
+ this.context.resetFactHandle();
+ }
/* (non-Javadoc)
* @see org.drools.common.BetaNodeConstraints#isAllowedCachedLeft(java.lang.Object)
Modified: labs/jbossrules/trunk/drools-core/src/main/java/org/drools/common/TripleBetaConstraints.java
===================================================================
--- labs/jbossrules/trunk/drools-core/src/main/java/org/drools/common/TripleBetaConstraints.java 2008-01-10 16:27:23 UTC (rev 17679)
+++ labs/jbossrules/trunk/drools-core/src/main/java/org/drools/common/TripleBetaConstraints.java 2008-01-10 17:21:07 UTC (rev 17680)
@@ -165,6 +165,18 @@
this.context2.updateFromFactHandle( workingMemory,
handle );
}
+
+ public void resetTuple() {
+ this.context0.resetTuple();
+ this.context1.resetTuple();
+ this.context2.resetTuple();
+ }
+
+ public void resetFactHandle() {
+ this.context0.resetFactHandle();
+ this.context1.resetFactHandle();
+ this.context2.resetFactHandle();
+ }
/* (non-Javadoc)
* @see org.drools.common.BetaNodeConstraints#isAllowedCachedLeft(java.lang.Object)
Modified: labs/jbossrules/trunk/drools-core/src/main/java/org/drools/common/TupleStartEqualsConstraint.java
===================================================================
--- labs/jbossrules/trunk/drools-core/src/main/java/org/drools/common/TupleStartEqualsConstraint.java 2008-01-10 16:27:23 UTC (rev 17679)
+++ labs/jbossrules/trunk/drools-core/src/main/java/org/drools/common/TupleStartEqualsConstraint.java 2008-01-10 17:21:07 UTC (rev 17680)
@@ -141,5 +141,13 @@
// it MUST be a rete tuple
this.right = (ReteTuple) handle.getObject();
}
+
+ public void resetTuple() {
+ this.left = null;
+ }
+
+ public void resetFactHandle() {
+ this.right = null;
+ }
}
}
Modified: labs/jbossrules/trunk/drools-core/src/main/java/org/drools/rule/AbstractCompositeConstraint.java
===================================================================
--- labs/jbossrules/trunk/drools-core/src/main/java/org/drools/rule/AbstractCompositeConstraint.java 2008-01-10 16:27:23 UTC (rev 17679)
+++ labs/jbossrules/trunk/drools-core/src/main/java/org/drools/rule/AbstractCompositeConstraint.java 2008-01-10 17:21:07 UTC (rev 17680)
@@ -228,6 +228,18 @@
tuple );
}
}
+
+ public void resetTuple() {
+ for ( int i = 0, length = this.contexts.length; i < length; i++ ) {
+ this.contexts[i].resetTuple();
+ }
+ }
+
+ public void resetFactHandle() {
+ for ( int i = 0, length = this.contexts.length; i < length; i++ ) {
+ this.contexts[i].resetFactHandle();
+ }
+ }
}
Modified: labs/jbossrules/trunk/drools-core/src/main/java/org/drools/rule/AbstractCompositeRestriction.java
===================================================================
--- labs/jbossrules/trunk/drools-core/src/main/java/org/drools/rule/AbstractCompositeRestriction.java 2008-01-10 16:27:23 UTC (rev 17679)
+++ labs/jbossrules/trunk/drools-core/src/main/java/org/drools/rule/AbstractCompositeRestriction.java 2008-01-10 17:21:07 UTC (rev 17680)
@@ -127,6 +127,18 @@
tuple );
}
}
+
+ public void resetTuple() {
+ for ( int i = 0, length = this.contextEntries.length; i < length; i++ ) {
+ this.contextEntries[i].resetTuple();
+ }
+ }
+
+ public void resetFactHandle() {
+ for ( int i = 0, length = this.contextEntries.length; i < length; i++ ) {
+ this.contextEntries[i].resetFactHandle();
+ }
+ }
}
Modified: labs/jbossrules/trunk/drools-core/src/main/java/org/drools/rule/ContextEntry.java
===================================================================
--- labs/jbossrules/trunk/drools-core/src/main/java/org/drools/rule/ContextEntry.java 2008-01-10 16:27:23 UTC (rev 17679)
+++ labs/jbossrules/trunk/drools-core/src/main/java/org/drools/rule/ContextEntry.java 2008-01-10 17:21:07 UTC (rev 17680)
@@ -19,5 +19,9 @@
public void updateFromFactHandle(InternalWorkingMemory workingMemory,
InternalFactHandle handle);
+
+ public void resetTuple();
+
+ public void resetFactHandle();
}
Modified: labs/jbossrules/trunk/drools-core/src/main/java/org/drools/rule/LiteralRestriction.java
===================================================================
--- labs/jbossrules/trunk/drools-core/src/main/java/org/drools/rule/LiteralRestriction.java 2008-01-10 16:27:23 UTC (rev 17679)
+++ labs/jbossrules/trunk/drools-core/src/main/java/org/drools/rule/LiteralRestriction.java 2008-01-10 17:21:07 UTC (rev 17680)
@@ -165,6 +165,13 @@
final ReteTuple tuple) {
// nothing to do
}
+
+ public void resetTuple() {
+ }
+
+ public void resetFactHandle() {
+ this.object = null;
+ }
}
Modified: labs/jbossrules/trunk/drools-core/src/main/java/org/drools/rule/PredicateConstraint.java
===================================================================
--- labs/jbossrules/trunk/drools-core/src/main/java/org/drools/rule/PredicateConstraint.java 2008-01-10 16:27:23 UTC (rev 17679)
+++ labs/jbossrules/trunk/drools-core/src/main/java/org/drools/rule/PredicateConstraint.java 2008-01-10 17:21:07 UTC (rev 17680)
@@ -315,6 +315,14 @@
this.workingMemory = workingMemory;
this.leftTuple = tuple;
}
+
+ public void resetTuple() {
+ this.leftTuple = null;
+ }
+
+ public void resetFactHandle() {
+ this.rightObject = null;
+ }
}
}
\ No newline at end of file
Modified: labs/jbossrules/trunk/drools-core/src/main/java/org/drools/rule/ReturnValueRestriction.java
===================================================================
--- labs/jbossrules/trunk/drools-core/src/main/java/org/drools/rule/ReturnValueRestriction.java 2008-01-10 16:27:23 UTC (rev 17679)
+++ labs/jbossrules/trunk/drools-core/src/main/java/org/drools/rule/ReturnValueRestriction.java 2008-01-10 17:21:07 UTC (rev 17680)
@@ -358,6 +358,14 @@
public InternalWorkingMemory getWorkingMemory() {
return this.workingMemory;
}
+
+ public void resetTuple() {
+ this.leftTuple = null;
+ }
+
+ public void resetFactHandle() {
+ this.handle = null;
+ }
}
}
\ No newline at end of file
Modified: labs/jbossrules/trunk/drools-core/src/main/java/org/drools/rule/VariableRestriction.java
===================================================================
--- labs/jbossrules/trunk/drools-core/src/main/java/org/drools/rule/VariableRestriction.java 2008-01-10 16:27:23 UTC (rev 17679)
+++ labs/jbossrules/trunk/drools-core/src/main/java/org/drools/rule/VariableRestriction.java 2008-01-10 17:21:07 UTC (rev 17680)
@@ -212,6 +212,12 @@
public boolean isRightNull() {
return this.rightNull;
}
+
+ public void resetTuple() {
+ }
+
+ public void resetFactHandle() {
+ }
}
public static class ObjectVariableContextEntry extends VariableContextEntry {
@@ -247,6 +253,14 @@
this.right = this.extractor.getValue( workingMemory,
evaluator.prepareObject( handle ) );
}
+
+ public void resetTuple() {
+ this.left = null;
+ }
+
+ public void resetFactHandle() {
+ this.right = null;
+ }
}
public static class LongVariableContextEntry extends VariableContextEntry {
More information about the jboss-svn-commits
mailing list