[jboss-svn-commits] JBL Code SVN: r30157 - in labs/jbossrules/trunk/drools-core/src: main/java/org/drools/util and 2 other directories.
jboss-svn-commits at lists.jboss.org
jboss-svn-commits at lists.jboss.org
Sun Nov 15 04:23:43 EST 2009
Author: mark.proctor at jboss.com
Date: 2009-11-15 04:23:43 -0500 (Sun, 15 Nov 2009)
New Revision: 30157
Modified:
labs/jbossrules/trunk/drools-core/src/main/java/org/drools/reteoo/MemoryVisitor.java
labs/jbossrules/trunk/drools-core/src/main/java/org/drools/util/ConcurrentHashTable.java
labs/jbossrules/trunk/drools-core/src/main/java/org/drools/util/ConcurrentRightTupleList.java
labs/jbossrules/trunk/drools-core/src/main/java/org/drools/util/LeftTupleIndexHashTable.java
labs/jbossrules/trunk/drools-core/src/main/java/org/drools/util/LeftTupleList.java
labs/jbossrules/trunk/drools-core/src/main/java/org/drools/util/RightTupleIndexHashTable.java
labs/jbossrules/trunk/drools-core/src/main/java/org/drools/util/RightTupleList.java
labs/jbossrules/trunk/drools-core/src/test/java/org/drools/reteoo/JoinNodeTest.java
labs/jbossrules/trunk/drools-core/src/test/java/org/drools/reteoo/test/ReteDslTestEngine.java
Log:
JBRULES-2339 Rete DSL test harness
-now supports indexing
Modified: labs/jbossrules/trunk/drools-core/src/main/java/org/drools/reteoo/MemoryVisitor.java
===================================================================
--- labs/jbossrules/trunk/drools-core/src/main/java/org/drools/reteoo/MemoryVisitor.java 2009-11-15 09:22:39 UTC (rev 30156)
+++ labs/jbossrules/trunk/drools-core/src/main/java/org/drools/reteoo/MemoryVisitor.java 2009-11-15 09:23:43 UTC (rev 30157)
@@ -201,7 +201,7 @@
private void checkRightTupleList(final RightTupleList memory) {
int count = 0;
- for ( RightTuple rightTuple = memory.getFirst( null ); rightTuple != null; rightTuple = (RightTuple) rightTuple.getNext() ) {
+ for ( RightTuple rightTuple = memory.getFirst( ( RightTuple ) null ); rightTuple != null; rightTuple = (RightTuple) rightTuple.getNext() ) {
count++;
}
Modified: labs/jbossrules/trunk/drools-core/src/main/java/org/drools/util/ConcurrentHashTable.java
===================================================================
--- labs/jbossrules/trunk/drools-core/src/main/java/org/drools/util/ConcurrentHashTable.java 2009-11-15 09:22:39 UTC (rev 30156)
+++ labs/jbossrules/trunk/drools-core/src/main/java/org/drools/util/ConcurrentHashTable.java 2009-11-15 09:23:43 UTC (rev 30157)
@@ -317,7 +317,7 @@
e.remove( rightTuple );
tupleCount--;
- if ( e.getFirst( null ) == null ) {
+ if ( e.getFirst( ( RightTuple ) null ) == null ) {
// list is empty, so remove it
RightTupleList newFirst = (RightTupleList) e.getNext();
for ( RightTupleList p = first; p != e; p = (RightTupleList) p.getNext() ) {
Modified: labs/jbossrules/trunk/drools-core/src/main/java/org/drools/util/ConcurrentRightTupleList.java
===================================================================
--- labs/jbossrules/trunk/drools-core/src/main/java/org/drools/util/ConcurrentRightTupleList.java 2009-11-15 09:22:39 UTC (rev 30156)
+++ labs/jbossrules/trunk/drools-core/src/main/java/org/drools/util/ConcurrentRightTupleList.java 2009-11-15 09:23:43 UTC (rev 30157)
@@ -47,6 +47,10 @@
public RightTuple getFirst(LeftTuple leftTuple) {
return this.first.get();
}
+
+ public RightTuple getFirst(RightTuple rightTuple) {
+ return this.first.get();
+ }
public RightTuple getLast(LeftTuple leftTuple) {
return this.last.get();
Modified: labs/jbossrules/trunk/drools-core/src/main/java/org/drools/util/LeftTupleIndexHashTable.java
===================================================================
--- labs/jbossrules/trunk/drools-core/src/main/java/org/drools/util/LeftTupleIndexHashTable.java 2009-11-15 09:22:39 UTC (rev 30156)
+++ labs/jbossrules/trunk/drools-core/src/main/java/org/drools/util/LeftTupleIndexHashTable.java 2009-11-15 09:23:43 UTC (rev 30157)
@@ -93,11 +93,20 @@
public LeftTuple getFirst(final RightTuple rightTuple) {
LeftTupleList bucket = get( rightTuple );
if ( bucket != null ) {
- return bucket.getFirst( null );
+ return bucket.getFirst( ( LeftTuple ) null );
} else {
return null;
}
}
+
+ public LeftTuple getFirst(final LeftTuple leftTuple) {
+ final LeftTupleList bucket = getOrCreate( leftTuple );
+ if ( bucket != null ) {
+ return bucket.getFirst( ( LeftTuple ) null );
+ } else {
+ return null;
+ }
+ }
public boolean isIndexed() {
return true;
@@ -172,7 +181,7 @@
for ( int i = 0; i < this.table.length; i++ ) {
LeftTupleList bucket = (LeftTupleList) this.table[i];
while ( bucket != null ) {
- LeftTuple entry = (LeftTuple) bucket.getFirst( null );
+ LeftTuple entry = (LeftTuple) bucket.getFirst( ( LeftTuple ) null );
while ( entry != null ) {
result[index++] = entry;
entry = (LeftTuple) entry.getNext();
Modified: labs/jbossrules/trunk/drools-core/src/main/java/org/drools/util/LeftTupleList.java
===================================================================
--- labs/jbossrules/trunk/drools-core/src/main/java/org/drools/util/LeftTupleList.java 2009-11-15 09:22:39 UTC (rev 30156)
+++ labs/jbossrules/trunk/drools-core/src/main/java/org/drools/util/LeftTupleList.java 2009-11-15 09:23:43 UTC (rev 30157)
@@ -43,6 +43,10 @@
return this.first;
}
+ public LeftTuple getFirst(LeftTuple leftTuple) {
+ return this.first;
+ }
+
public LeftTuple getLast(RightTuple lastTuple) {
return this.first;
}
Modified: labs/jbossrules/trunk/drools-core/src/main/java/org/drools/util/RightTupleIndexHashTable.java
===================================================================
--- labs/jbossrules/trunk/drools-core/src/main/java/org/drools/util/RightTupleIndexHashTable.java 2009-11-15 09:22:39 UTC (rev 30156)
+++ labs/jbossrules/trunk/drools-core/src/main/java/org/drools/util/RightTupleIndexHashTable.java 2009-11-15 09:23:43 UTC (rev 30157)
@@ -91,6 +91,15 @@
return null;
}
}
+
+ public RightTuple getFirst(final RightTuple rightTuple) {
+ final RightTupleList bucket = getOrCreate( rightTuple.getFactHandle().getObject() );
+ if ( bucket != null ) {
+ return bucket.getFirst( ( RightTuple ) null );
+ } else {
+ return null;
+ }
+ }
public RightTuple getLast(LeftTuple leftTuple) {
RightTupleList bucket = get( leftTuple );
@@ -345,7 +354,7 @@
for ( Entry entry : this.table ) {
while ( entry != null ) {
RightTupleList bucket = (RightTupleList) entry;
- for ( RightTuple rightTuple = bucket.getFirst( null ); rightTuple != null; rightTuple = (RightTuple) rightTuple.getNext() ) {
+ for ( RightTuple rightTuple = bucket.getFirst( ( RightTuple ) null ); rightTuple != null; rightTuple = (RightTuple) rightTuple.getNext() ) {
builder.append( rightTuple );
}
entry = entry.getNext();
Modified: labs/jbossrules/trunk/drools-core/src/main/java/org/drools/util/RightTupleList.java
===================================================================
--- labs/jbossrules/trunk/drools-core/src/main/java/org/drools/util/RightTupleList.java 2009-11-15 09:22:39 UTC (rev 30156)
+++ labs/jbossrules/trunk/drools-core/src/main/java/org/drools/util/RightTupleList.java 2009-11-15 09:23:43 UTC (rev 30157)
@@ -57,6 +57,10 @@
public RightTuple getFirst(LeftTuple leftTuple) {
return this.first;
}
+
+ public RightTuple getFirst(RightTuple leftTuple) {
+ return this.first;
+ }
public RightTuple getLast(LeftTuple leftTuple) {
return this.last;
Modified: labs/jbossrules/trunk/drools-core/src/test/java/org/drools/reteoo/JoinNodeTest.java
===================================================================
--- labs/jbossrules/trunk/drools-core/src/test/java/org/drools/reteoo/JoinNodeTest.java 2009-11-15 09:22:39 UTC (rev 30156)
+++ labs/jbossrules/trunk/drools-core/src/test/java/org/drools/reteoo/JoinNodeTest.java 2009-11-15 09:23:43 UTC (rev 30157)
@@ -219,7 +219,7 @@
assertEquals( 2,
this.memory.getLeftTupleMemory().size() );
- LeftTuple leftTuple = this.memory.getLeftTupleMemory().getFirst( null );
+ LeftTuple leftTuple = this.memory.getLeftTupleMemory().getFirst( (LeftTuple) null );
assertEquals( tuple0,
leftTuple );
assertEquals( tuple1,
Modified: labs/jbossrules/trunk/drools-core/src/test/java/org/drools/reteoo/test/ReteDslTestEngine.java
===================================================================
--- labs/jbossrules/trunk/drools-core/src/test/java/org/drools/reteoo/test/ReteDslTestEngine.java 2009-11-15 09:22:39 UTC (rev 30156)
+++ labs/jbossrules/trunk/drools-core/src/test/java/org/drools/reteoo/test/ReteDslTestEngine.java 2009-11-15 09:23:43 UTC (rev 30157)
@@ -197,7 +197,7 @@
InternalFactHandle first = ( InternalFactHandle ) expectedFactHandles.get( 0 );
List<RightTuple> actualRightTuples = new ArrayList();
- for ( RightTuple rightTuple = memory.getRightTupleMemory().getFirst( first.getFirstRightTuple() ); rightTuple != null; rightTuple = (RightTuple) rightTuple.getNext() ) {
+ for ( RightTuple rightTuple = memory.getRightTupleMemory().getFirst( first.getRightTuple() ); rightTuple != null; rightTuple = (RightTuple) rightTuple.getNext() ) {
actualRightTuples.add( rightTuple );
}
More information about the jboss-svn-commits
mailing list