[jboss-svn-commits] JBL Code SVN: r19254 - in labs/jbossrules/trunk/drools-core/src: test/java/org/drools/reteoo and 1 other directories.
jboss-svn-commits at lists.jboss.org
jboss-svn-commits at lists.jboss.org
Wed Mar 26 14:47:11 EDT 2008
Author: mark.proctor at jboss.com
Date: 2008-03-26 14:47:10 -0400 (Wed, 26 Mar 2008)
New Revision: 19254
Removed:
labs/jbossrules/trunk/drools-core/src/test/java/org/drools/reteoo/InstrumentedReteTuple.java
Modified:
labs/jbossrules/trunk/drools-core/src/main/java/org/drools/reteoo/NotNode.java
labs/jbossrules/trunk/drools-core/src/test/java/org/drools/rule/FieldConstraintTest.java
Log:
JBRULES-1520 RightTuple merge for asymmetrical Rete propagations
-Removed InstrumentedReteTuple, no longer needed
Modified: labs/jbossrules/trunk/drools-core/src/main/java/org/drools/reteoo/NotNode.java
===================================================================
--- labs/jbossrules/trunk/drools-core/src/main/java/org/drools/reteoo/NotNode.java 2008-03-26 18:36:31 UTC (rev 19253)
+++ labs/jbossrules/trunk/drools-core/src/main/java/org/drools/reteoo/NotNode.java 2008-03-26 18:47:10 UTC (rev 19254)
@@ -91,7 +91,7 @@
final PropagationContext context,
final InternalWorkingMemory workingMemory) {
final BetaMemory memory = (BetaMemory) workingMemory.getNodeMemory( this );
-
+
this.constraints.updateFromTuple( memory.getContext(),
workingMemory,
leftTuple );
@@ -116,7 +116,7 @@
this.constraints.resetTuple( memory.getContext() );
if ( leftTuple.getBlocker() == null ) {
- // only add it to node memory if still need Objects to attempt to match
+ // tuple is not blocked, so add to memory so other fact handles can attempt to match
if ( this.tupleMemoryEnabled ) {
memory.getLeftTupleMemory().add( leftTuple );
}
@@ -175,11 +175,9 @@
// this is now blocked so remove from memory
memory.getLeftTupleMemory().remove( leftTuple );
- if ( leftTuple.getBetaChildren() != null ) {
- this.sink.propagateRetractLeftTuple( leftTuple,
- context,
- workingMemory );
- }
+ this.sink.propagateRetractLeftTuple( leftTuple,
+ context,
+ workingMemory );
}
leftTuple = temp;
Deleted: labs/jbossrules/trunk/drools-core/src/test/java/org/drools/reteoo/InstrumentedReteTuple.java
===================================================================
--- labs/jbossrules/trunk/drools-core/src/test/java/org/drools/reteoo/InstrumentedReteTuple.java 2008-03-26 18:36:31 UTC (rev 19253)
+++ labs/jbossrules/trunk/drools-core/src/test/java/org/drools/reteoo/InstrumentedReteTuple.java 2008-03-26 18:47:10 UTC (rev 19254)
@@ -1,38 +0,0 @@
-package org.drools.reteoo;
-
-/*
- * Copyright 2005 JBoss Inc
- *
- * Licensed under the Apache License, Version 2.0 (the "License");
- * you may not use this file except in compliance with the License.
- * You may obtain a copy of the License at
- *
- * http://www.apache.org/licenses/LICENSE-2.0
- *
- * Unless required by applicable law or agreed to in writing, software
- * distributed under the License is distributed on an "AS IS" BASIS,
- * WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied.
- * See the License for the specific language governing permissions and
- * limitations under the License.
- */
-
-import org.drools.FactHandle;
-import org.drools.common.DefaultFactHandle;
-import org.drools.common.InternalFactHandle;
-
-public class InstrumentedReteTuple extends LeftTuple {
- /**
- *
- */
- private static final long serialVersionUID = 400L;
-
- public InstrumentedReteTuple(final LeftTuple left,
- final FactHandle handle) {
- super( left,
- (InternalFactHandle) handle );
- }
-
- public InstrumentedReteTuple(final FactHandle handle) {
- super( (DefaultFactHandle) handle );
- }
-}
\ No newline at end of file
Modified: labs/jbossrules/trunk/drools-core/src/test/java/org/drools/rule/FieldConstraintTest.java
===================================================================
--- labs/jbossrules/trunk/drools-core/src/test/java/org/drools/rule/FieldConstraintTest.java 2008-03-26 18:36:31 UTC (rev 19253)
+++ labs/jbossrules/trunk/drools-core/src/test/java/org/drools/rule/FieldConstraintTest.java 2008-03-26 18:47:10 UTC (rev 19254)
@@ -38,8 +38,9 @@
import org.drools.base.evaluators.Operator;
import org.drools.common.InternalFactHandle;
import org.drools.common.InternalWorkingMemory;
-import org.drools.reteoo.InstrumentedReteTuple;
+import org.drools.reteoo.LeftTuple;
import org.drools.reteoo.ReteooRuleBase;
+import org.drools.reteoo.RightTuple;
import org.drools.rule.PredicateConstraint.PredicateContextEntry;
import org.drools.rule.ReturnValueRestriction.ReturnValueContextEntry;
import org.drools.spi.Evaluator;
@@ -51,8 +52,8 @@
public class FieldConstraintTest extends TestCase {
- ClassFieldExtractorCache cache = ClassFieldExtractorCache.getInstance();
- EqualityEvaluatorsDefinition equals = new EqualityEvaluatorsDefinition();
+ ClassFieldExtractorCache cache = ClassFieldExtractorCache.getInstance();
+ EqualityEvaluatorsDefinition equals = new EqualityEvaluatorsDefinition();
ComparableEvaluatorsDefinition comparables = new ComparableEvaluatorsDefinition();
public FieldConstraintTest() {
@@ -83,7 +84,8 @@
final FieldValue field = FieldFactory.getFieldValue( "cheddar" );
- final Evaluator evaluator = equals.getEvaluator( ValueType.STRING_TYPE, Operator.EQUAL );
+ final Evaluator evaluator = equals.getEvaluator( ValueType.STRING_TYPE,
+ Operator.EQUAL );
final LiteralConstraint constraint = new LiteralConstraint( extractor,
evaluator,
@@ -132,7 +134,8 @@
final FieldValue field = FieldFactory.getFieldValue( 5 );
- final Evaluator evaluator = equals.getEvaluator( ValueType.PINTEGER_TYPE, Operator.EQUAL );
+ final Evaluator evaluator = equals.getEvaluator( ValueType.PINTEGER_TYPE,
+ Operator.EQUAL );
final LiteralConstraint constraint = new LiteralConstraint( extractor,
evaluator,
@@ -210,7 +213,7 @@
Declaration[] previousDeclarations,
Declaration[] localDeclarations,
WorkingMemory workingMemory,
- Object context ) {
+ Object context) {
int price1 = previousDeclarations[0].getIntValue( (InternalWorkingMemory) workingMemory,
workingMemory.getObject( tuple.get( previousDeclarations[0] ) ) );
int price2 = localDeclarations[0].getIntValue( (InternalWorkingMemory) workingMemory,
@@ -224,7 +227,8 @@
return null;
}
- public void readExternal(ObjectInput in) throws IOException, ClassNotFoundException {
+ public void readExternal(ObjectInput in) throws IOException,
+ ClassNotFoundException {
}
public void writeExternal(ObjectOutput out) throws IOException {
@@ -238,15 +242,18 @@
final Cheese cheddar0 = new Cheese( "cheddar",
5 );
- final FactHandle f0 = workingMemory.insert( cheddar0 );
- InstrumentedReteTuple tuple = new InstrumentedReteTuple( f0 );
+ final InternalFactHandle f0 = (InternalFactHandle) workingMemory.insert( cheddar0 );
+ LeftTuple tuple = new LeftTuple( f0,
+ null );
final Cheese cheddar1 = new Cheese( "cheddar",
10 );
final InternalFactHandle f1 = (InternalFactHandle) workingMemory.insert( cheddar1 );
- tuple = new InstrumentedReteTuple( tuple,
- f1 );
+ tuple = new LeftTuple( tuple,
+ new RightTuple( f1,
+ null ),
+ null );
final PredicateContextEntry context = (PredicateContextEntry) constraint1.createContextEntry();
context.updateFromTuple( workingMemory,
@@ -296,7 +303,7 @@
Declaration[] previousDeclarations,
Declaration[] localDeclarations,
WorkingMemory workingMemory,
- Object context ) {
+ Object context) {
int price = ((Number) previousDeclarations[0].getValue( (InternalWorkingMemory) workingMemory,
workingMemory.getObject( tuple.get( previousDeclarations[0] ) ) )).intValue();
return FieldFactory.getFieldValue( 2 * price );
@@ -306,8 +313,10 @@
public Object createContext() {
return null;
}
- public void readExternal(ObjectInput in) throws IOException, ClassNotFoundException {
+ public void readExternal(ObjectInput in) throws IOException,
+ ClassNotFoundException {
+
}
public void writeExternal(ObjectOutput out) throws IOException {
@@ -320,7 +329,8 @@
new Declaration[]{priceDeclaration},
new Declaration[0],
new String[0],
- equals.getEvaluator( ValueType.INTEGER_TYPE, Operator.EQUAL ) );
+ equals.getEvaluator( ValueType.INTEGER_TYPE,
+ Operator.EQUAL ) );
final ReturnValueConstraint constraint1 = new ReturnValueConstraint( priceExtractor,
restriction1 );
@@ -330,22 +340,26 @@
new Declaration[]{priceDeclaration},
new Declaration[0],
new String[0],
- comparables.getEvaluator( ValueType.INTEGER_TYPE, Operator.GREATER ) );
+ comparables.getEvaluator( ValueType.INTEGER_TYPE,
+ Operator.GREATER ) );
final ReturnValueConstraint constraint2 = new ReturnValueConstraint( priceExtractor,
restriction2 );
final Cheese cheddar0 = new Cheese( "cheddar",
5 );
- final FactHandle f0 = workingMemory.insert( cheddar0 );
+ final InternalFactHandle f0 = (InternalFactHandle) workingMemory.insert( cheddar0 );
- InstrumentedReteTuple tuple = new InstrumentedReteTuple( f0 );
+ LeftTuple tuple = new LeftTuple( f0,
+ null );
final Cheese cheddar1 = new Cheese( "cheddar",
10 );
final InternalFactHandle f1 = (InternalFactHandle) workingMemory.insert( cheddar1 );
- tuple = new InstrumentedReteTuple( tuple,
- f1 );
+ tuple = new LeftTuple( tuple,
+ new RightTuple( f1,
+ null ),
+ null );
final ReturnValueContextEntry context1 = (ReturnValueContextEntry) constraint1.createContextEntry();
context1.updateFromTuple( workingMemory,
@@ -392,7 +406,8 @@
final FieldValue field = FieldFactory.getFieldValue( "cheddar" );
- final Evaluator evaluator = equals.getEvaluator( ValueType.STRING_TYPE, Operator.EQUAL );
+ final Evaluator evaluator = equals.getEvaluator( ValueType.STRING_TYPE,
+ Operator.EQUAL );
final LiteralConstraint constraint1 = new LiteralConstraint( extractor,
evaluator,
@@ -404,7 +419,8 @@
final FieldValue priceField = FieldFactory.getFieldValue( 10 );
- final Evaluator priceEvaluator = comparables.getEvaluator( ValueType.INTEGER_TYPE, Operator.GREATER );
+ final Evaluator priceEvaluator = comparables.getEvaluator( ValueType.INTEGER_TYPE,
+ Operator.GREATER );
final LiteralConstraint constraint2 = new LiteralConstraint( priceExtractor,
priceEvaluator,
@@ -468,7 +484,8 @@
final FieldValue field = FieldFactory.getFieldValue( "cheddar" );
- final Evaluator evaluator = equals.getEvaluator( ValueType.STRING_TYPE, Operator.EQUAL );
+ final Evaluator evaluator = equals.getEvaluator( ValueType.STRING_TYPE,
+ Operator.EQUAL );
final LiteralConstraint constraint1 = new LiteralConstraint( extractor,
evaluator,
@@ -480,7 +497,8 @@
final FieldValue priceField = FieldFactory.getFieldValue( 10 );
- final Evaluator priceEvaluator = comparables.getEvaluator( ValueType.INTEGER_TYPE, Operator.GREATER );
+ final Evaluator priceEvaluator = comparables.getEvaluator( ValueType.INTEGER_TYPE,
+ Operator.GREATER );
final LiteralConstraint constraint2 = new LiteralConstraint( priceExtractor,
priceEvaluator,
@@ -543,7 +561,8 @@
final FieldValue cheddarField = FieldFactory.getFieldValue( "cheddar" );
- final Evaluator stringEqual = equals.getEvaluator( ValueType.STRING_TYPE, Operator.EQUAL );
+ final Evaluator stringEqual = equals.getEvaluator( ValueType.STRING_TYPE,
+ Operator.EQUAL );
// type == 'cheddar'
final LiteralConstraint constraint1 = new LiteralConstraint( typeExtractor,
@@ -556,7 +575,8 @@
final FieldValue field10 = FieldFactory.getFieldValue( 10 );
- final Evaluator integerGreater = comparables.getEvaluator( ValueType.INTEGER_TYPE, Operator.GREATER );
+ final Evaluator integerGreater = comparables.getEvaluator( ValueType.INTEGER_TYPE,
+ Operator.GREATER );
// price > 10
final LiteralConstraint constraint2 = new LiteralConstraint( priceExtractor,
@@ -574,7 +594,8 @@
stringEqual,
stiltonField );
- final Evaluator integerLess = comparables.getEvaluator( ValueType.INTEGER_TYPE, Operator.LESS );
+ final Evaluator integerLess = comparables.getEvaluator( ValueType.INTEGER_TYPE,
+ Operator.LESS );
// price < 10
final LiteralConstraint constraint4 = new LiteralConstraint( priceExtractor,
More information about the jboss-svn-commits
mailing list