[jboss-svn-commits] JBL Code SVN: r6662 - in labs/jbossrules/trunk/drools-core/src: main/java/org/drools/reteoo main/java/org/drools/util test/java/org/drools/examples/manners

jboss-svn-commits at lists.jboss.org jboss-svn-commits at lists.jboss.org
Fri Oct 6 13:38:59 EDT 2006


Author: tirelli
Date: 2006-10-06 13:38:39 -0400 (Fri, 06 Oct 2006)
New Revision: 6662

Modified:
   labs/jbossrules/trunk/drools-core/src/main/java/org/drools/reteoo/JoinNode.java
   labs/jbossrules/trunk/drools-core/src/main/java/org/drools/util/FieldIndexHashTable.java
   labs/jbossrules/trunk/drools-core/src/test/java/org/drools/examples/manners/BaseMannersTest.java
   labs/jbossrules/trunk/drools-core/src/test/java/org/drools/examples/manners/Chosen.java
   labs/jbossrules/trunk/drools-core/src/test/java/org/drools/examples/manners/Context.java
   labs/jbossrules/trunk/drools-core/src/test/java/org/drools/examples/manners/Count.java
   labs/jbossrules/trunk/drools-core/src/test/java/org/drools/examples/manners/Guest.java
   labs/jbossrules/trunk/drools-core/src/test/java/org/drools/examples/manners/Hobby.java
   labs/jbossrules/trunk/drools-core/src/test/java/org/drools/examples/manners/LastSeat.java
   labs/jbossrules/trunk/drools-core/src/test/java/org/drools/examples/manners/Path.java
   labs/jbossrules/trunk/drools-core/src/test/java/org/drools/examples/manners/Seating.java
   labs/jbossrules/trunk/drools-core/src/test/java/org/drools/examples/manners/Sex.java
Log:
JBRULES-44:

   * Integrating shadow proxies into manners test



Modified: labs/jbossrules/trunk/drools-core/src/main/java/org/drools/reteoo/JoinNode.java
===================================================================
--- labs/jbossrules/trunk/drools-core/src/main/java/org/drools/reteoo/JoinNode.java	2006-10-06 17:25:48 UTC (rev 6661)
+++ labs/jbossrules/trunk/drools-core/src/main/java/org/drools/reteoo/JoinNode.java	2006-10-06 17:38:39 UTC (rev 6662)
@@ -16,20 +16,12 @@
  * limitations under the License.
  */
 
-import java.util.ArrayList;
-import java.util.HashMap;
-import java.util.List;
-import java.util.Map;
-
 import org.drools.common.BetaNodeConstraints;
 import org.drools.common.InternalFactHandle;
 import org.drools.common.InternalWorkingMemory;
 import org.drools.spi.PropagationContext;
-import org.drools.util.FactHashTable;
-import org.drools.util.FieldIndexHashTable;
 import org.drools.util.Iterator;
 import org.drools.util.AbstractHashTable.FactEntry;
-import org.drools.util.FieldIndexHashTable.FieldIndexEntry;
 
 /**
  * <code>JoinNode</code> extends <code>BetaNode</code> to perform

Modified: labs/jbossrules/trunk/drools-core/src/main/java/org/drools/util/FieldIndexHashTable.java
===================================================================
--- labs/jbossrules/trunk/drools-core/src/main/java/org/drools/util/FieldIndexHashTable.java	2006-10-06 17:25:48 UTC (rev 6661)
+++ labs/jbossrules/trunk/drools-core/src/main/java/org/drools/util/FieldIndexHashTable.java	2006-10-06 17:38:39 UTC (rev 6662)
@@ -8,7 +8,6 @@
 import org.drools.reteoo.ReteTuple;
 import org.drools.rule.Declaration;
 import org.drools.spi.FieldExtractor;
-import org.drools.spi.Tuple;
 
 public class FieldIndexHashTable extends AbstractHashTable
     implements
@@ -59,7 +58,7 @@
             this.tupleValueIterator = new FieldIndexHashTableIterator();
         }
         this.tupleValueIterator.reset( get( tuple ) );
-        return this.iterator();
+        return this.tupleValueIterator;
     }
 
     public Iterator iterator(int hashCode) {

Modified: labs/jbossrules/trunk/drools-core/src/test/java/org/drools/examples/manners/BaseMannersTest.java
===================================================================
--- labs/jbossrules/trunk/drools-core/src/test/java/org/drools/examples/manners/BaseMannersTest.java	2006-10-06 17:25:48 UTC (rev 6661)
+++ labs/jbossrules/trunk/drools-core/src/test/java/org/drools/examples/manners/BaseMannersTest.java	2006-10-06 17:38:39 UTC (rev 6662)
@@ -35,6 +35,7 @@
 import org.drools.WorkingMemory;
 import org.drools.base.ClassFieldExtractor;
 import org.drools.base.ClassObjectType;
+import org.drools.base.ShadowProxyFactory;
 import org.drools.base.ValueType;
 import org.drools.base.evaluators.Operator;
 import org.drools.rule.Column;
@@ -85,14 +86,27 @@
     private Evaluator       booleanNotEqualEvaluator;
 
     protected void setUp() throws Exception {
-        this.contextType = new ClassObjectType( Context.class );
-        this.guestType = new ClassObjectType( Guest.class );
-        this.seatingType = new ClassObjectType( Seating.class );
-        this.lastSeatType = new ClassObjectType( LastSeat.class );
-        this.countType = new ClassObjectType( Count.class );
-        this.pathType = new ClassObjectType( Path.class );
-        this.chosenType = new ClassObjectType( Chosen.class );
+        Class shadow = ShadowProxyFactory.getProxy( Context.class );
+        this.contextType = new ClassObjectType( Context.class, shadow );
 
+        shadow = ShadowProxyFactory.getProxy( Guest.class );
+        this.guestType = new ClassObjectType( Guest.class, shadow );
+        
+        shadow = ShadowProxyFactory.getProxy( Seating.class );
+        this.seatingType = new ClassObjectType( Seating.class, shadow  );
+
+        shadow = ShadowProxyFactory.getProxy( LastSeat.class );
+        this.lastSeatType = new ClassObjectType( LastSeat.class, shadow  );
+
+        shadow = ShadowProxyFactory.getProxy( Count.class );
+        this.countType = new ClassObjectType( Count.class, shadow  );
+
+        shadow = ShadowProxyFactory.getProxy( Path.class );
+        this.pathType = new ClassObjectType( Path.class, shadow  );
+
+        shadow = ShadowProxyFactory.getProxy( Chosen.class );
+        this.chosenType = new ClassObjectType( Chosen.class, shadow  );
+
         this.integerEqualEvaluator = ValueType.INTEGER_TYPE.getEvaluator( Operator.EQUAL );
         this.integerNotEqualEvaluator = ValueType.INTEGER_TYPE.getEvaluator( Operator.NOT_EQUAL );
         this.objectEqualEvaluator = ValueType.OBJECT_TYPE.getEvaluator( Operator.EQUAL );
@@ -362,15 +376,16 @@
                              "name",
                              "leftGuestName" );
 
+        leftGuestColumn.addConstraint( getBoundVariableConstraint( rightGuestColumn,
+                                                                   "hobby",
+                                                                   rightGuestHobbyDeclaration,
+                                                                   this.objectEqualEvaluator ) );
+
         leftGuestColumn.addConstraint( getBoundVariableConstraint( leftGuestColumn,
                                                                    "sex",
                                                                    rightGuestSexDeclaration,
                                                                    this.objectNotEqualEvaluator ) );
 
-        leftGuestColumn.addConstraint( getBoundVariableConstraint( rightGuestColumn,
-                                                                   "hobby",
-                                                                   rightGuestHobbyDeclaration,
-                                                                   this.objectEqualEvaluator ) );
         rule.addPattern( leftGuestColumn );
         final Declaration leftGuestNameDeclaration = rule.getDeclaration( "leftGuestName" );
 
@@ -725,9 +740,9 @@
 
                     seating.setPathDone( true );
 
-                    if ( seating.getId() == 6 ) {
-                        System.out.println( "pause" );
-                    }
+//                    if ( seating.getId() == 6 ) {
+//                        System.out.println( "pause" );
+//                    }
                     drools.modifyObject( tuple.get( seatingDeclaration ),
                                          seating );
 

Modified: labs/jbossrules/trunk/drools-core/src/test/java/org/drools/examples/manners/Chosen.java
===================================================================
--- labs/jbossrules/trunk/drools-core/src/test/java/org/drools/examples/manners/Chosen.java	2006-10-06 17:25:48 UTC (rev 6661)
+++ labs/jbossrules/trunk/drools-core/src/test/java/org/drools/examples/manners/Chosen.java	2006-10-06 17:38:39 UTC (rev 6662)
@@ -17,7 +17,7 @@
 
 import java.io.Serializable;
 
-public final class Chosen
+public class Chosen
     implements
     Serializable {
 
@@ -26,12 +26,16 @@
      */
     private static final long serialVersionUID = -169447202790860427L;
 
-    private final int         id;
+    private int         id;
 
-    private final String      guestName;
+    private String      guestName;
 
-    private final Hobby       hobby;
+    private Hobby       hobby;
 
+    public Chosen() {
+        
+    }
+    
     public Chosen(final int id,
                   final String guestName,
                   final Hobby hobby) {
@@ -40,19 +44,19 @@
         this.hobby = hobby;
     }
 
-    public final int getId() {
+    public int getId() {
         return this.id;
     }
 
-    public final String getGuestName() {
+    public String getGuestName() {
         return this.guestName;
     }
 
-    public final Hobby getHobby() {
+    public Hobby getHobby() {
         return this.hobby;
     }
 
-    public final String toString() {
+    public String toString() {
         return "{Chosen id=" + this.id + ", name=" + this.guestName + ", hobbies=" + this.hobby + "}";
     }
 }
\ No newline at end of file

Modified: labs/jbossrules/trunk/drools-core/src/test/java/org/drools/examples/manners/Context.java
===================================================================
--- labs/jbossrules/trunk/drools-core/src/test/java/org/drools/examples/manners/Context.java	2006-10-06 17:25:48 UTC (rev 6661)
+++ labs/jbossrules/trunk/drools-core/src/test/java/org/drools/examples/manners/Context.java	2006-10-06 17:38:39 UTC (rev 6662)
@@ -17,7 +17,7 @@
 
 import java.io.Serializable;
 
-public final class Context
+public class Context
     implements
     Serializable {
 
@@ -34,6 +34,9 @@
     public static final String[] stateStrings     = {"START_UP", "ASSIGN_SEATS", "MAKE_PATH", "CHECK_DONE", "PRINT_RESULTS"};
 
     private int                  state;
+    
+    public Context() {
+    }
 
     public Context(final String state) {
         if ( "start".equals( state ) ) {
@@ -47,23 +50,23 @@
         this.state = state;
     }
 
-    public final void setState(final int state) {
+    public void setState(final int state) {
         this.state = state;
     }
 
-    public final boolean isState(final int state) {
+    public boolean isState(final int state) {
         return this.state == state;
     }
 
-    public final int getState() {
+    public int getState() {
         return this.state;
     }
 
-    public final String getStringValue() {
+    public String getStringValue() {
         return Context.stateStrings[this.state];
     }
 
-    public final String toString() {
+    public String toString() {
         return "[Context state=" + getStringValue() + "]";
     }
 }
\ No newline at end of file

Modified: labs/jbossrules/trunk/drools-core/src/test/java/org/drools/examples/manners/Count.java
===================================================================
--- labs/jbossrules/trunk/drools-core/src/test/java/org/drools/examples/manners/Count.java	2006-10-06 17:25:48 UTC (rev 6661)
+++ labs/jbossrules/trunk/drools-core/src/test/java/org/drools/examples/manners/Count.java	2006-10-06 17:38:39 UTC (rev 6662)
@@ -15,27 +15,30 @@
  */
 package org.drools.examples.manners;
 
-public final class Count {
+public class Count {
     private int value;
+    
+    public Count() {
+    }
 
     public Count(final int value) {
         super();
         this.value = value;
     }
 
-    public final int getValue() {
+    public int getValue() {
         return this.value;
     }
 
-    public final void setValue(final int value) {
+    public void setValue(final int value) {
         this.value = value;
     }
 
-    public final String toString() {
+    public String toString() {
         return "[Count value=" + this.value + "]";
     }
 
-    public final boolean equals(final Object object) {
+    public boolean equals(final Object object) {
         if ( object == this ) {
             return true;
         }
@@ -47,7 +50,7 @@
         return this.value == ((Count) object).value;
     }
 
-    public final int hashCode() {
+    public int hashCode() {
         return this.value;
     }
 

Modified: labs/jbossrules/trunk/drools-core/src/test/java/org/drools/examples/manners/Guest.java
===================================================================
--- labs/jbossrules/trunk/drools-core/src/test/java/org/drools/examples/manners/Guest.java	2006-10-06 17:25:48 UTC (rev 6661)
+++ labs/jbossrules/trunk/drools-core/src/test/java/org/drools/examples/manners/Guest.java	2006-10-06 17:38:39 UTC (rev 6662)
@@ -17,7 +17,7 @@
 
 import java.io.Serializable;
 
-public final class Guest
+public class Guest
     implements
     Serializable {
     /**
@@ -25,11 +25,14 @@
      */
     private static final long serialVersionUID = 7806377320634586221L;
 
-    private final String      name;
+    private String      name;
 
-    private final Sex         sex;
+    private Sex         sex;
 
-    private final Hobby       hobby;
+    private Hobby       hobby;
+    
+    public Guest() {
+    }
 
     public Guest(final String name,
                  final Sex sex,
@@ -39,19 +42,19 @@
         this.hobby = hobby;
     }
 
-    public final String getName() {
+    public String getName() {
         return this.name;
     }
 
-    public final Hobby getHobby() {
+    public Hobby getHobby() {
         return this.hobby;
     }
 
-    public final Sex getSex() {
+    public Sex getSex() {
         return this.sex;
     }
 
-    public final String toString() {
+    public String toString() {
         return "[Guest name=" + this.name + ", sex=" + this.sex + ", hobbies=" + this.hobby + "]";
     }
 }
\ No newline at end of file

Modified: labs/jbossrules/trunk/drools-core/src/test/java/org/drools/examples/manners/Hobby.java
===================================================================
--- labs/jbossrules/trunk/drools-core/src/test/java/org/drools/examples/manners/Hobby.java	2006-10-06 17:25:48 UTC (rev 6661)
+++ labs/jbossrules/trunk/drools-core/src/test/java/org/drools/examples/manners/Hobby.java	2006-10-06 17:38:39 UTC (rev 6662)
@@ -30,15 +30,18 @@
     public static final Hobby    H4           = new Hobby( 4 );
     public static final Hobby    H5           = new Hobby( 5 );
 
-    private final String         hobbyStr;
-    private final int            hobbyIndex;
+    private String         hobbyStr;
+    private int            hobbyIndex;
+    
+    public Hobby() {
+    }
 
     private Hobby(final int hobby) {
         this.hobbyIndex = hobby - 1;
         this.hobbyStr = Hobby.hobbyStrings[this.hobbyIndex];
     }
 
-    public final String getHobby() {
+    public String getHobby() {
         return this.hobbyStr;
     }
 
@@ -58,15 +61,15 @@
         }
     }
 
-    public final String toString() {
+    public String toString() {
         return getHobby();
     }
 
-    public final boolean equals(final Object object) {
+    public boolean equals(final Object object) {
         return (this == object);
     }
 
-    public final int hashCode() {
+    public int hashCode() {
         return this.hobbyIndex;
     }
 

Modified: labs/jbossrules/trunk/drools-core/src/test/java/org/drools/examples/manners/LastSeat.java
===================================================================
--- labs/jbossrules/trunk/drools-core/src/test/java/org/drools/examples/manners/LastSeat.java	2006-10-06 17:25:48 UTC (rev 6661)
+++ labs/jbossrules/trunk/drools-core/src/test/java/org/drools/examples/manners/LastSeat.java	2006-10-06 17:38:39 UTC (rev 6662)
@@ -17,24 +17,27 @@
 
 import java.io.Serializable;
 
-public final class LastSeat
+public class LastSeat
     implements
     Serializable {
     /**
      * 
      */
     private static final long serialVersionUID = -3331801742327121724L;
-    private final int         seat;
+    private int         seat;
 
+    public LastSeat() {
+    }
+    
     public LastSeat(final int seat) {
         this.seat = seat;
     }
 
-    public final int getSeat() {
+    public int getSeat() {
         return this.seat;
     }
 
-    public final String toString() {
+    public String toString() {
         return "[LastSeat seat=" + this.seat + "]";
     }
 }
\ No newline at end of file

Modified: labs/jbossrules/trunk/drools-core/src/test/java/org/drools/examples/manners/Path.java
===================================================================
--- labs/jbossrules/trunk/drools-core/src/test/java/org/drools/examples/manners/Path.java	2006-10-06 17:25:48 UTC (rev 6661)
+++ labs/jbossrules/trunk/drools-core/src/test/java/org/drools/examples/manners/Path.java	2006-10-06 17:38:39 UTC (rev 6662)
@@ -15,11 +15,14 @@
  */
 package org.drools.examples.manners;
 
-public final class Path {
-    private final int    id;
-    private final String guestName;
-    private final int    seat;
+public class Path {
+    private int    id;
+    private String guestName;
+    private int    seat;
 
+    public Path() {
+    }
+    
     public Path(final int id,
                 final int seat,
                 final String guestName) {
@@ -28,19 +31,19 @@
         this.guestName = guestName;
     }
 
-    public final int getSeat() {
+    public int getSeat() {
         return this.seat;
     }
 
-    public final String getGuestName() {
+    public String getGuestName() {
         return this.guestName;
     }
 
-    public final int getId() {
+    public int getId() {
         return this.id;
     }
 
-    public final String toString() {
+    public String toString() {
         return "[Path id=" + this.id + ", seat=" + this.seat + ", guest=" + this.guestName + "]";
     }
 

Modified: labs/jbossrules/trunk/drools-core/src/test/java/org/drools/examples/manners/Seating.java
===================================================================
--- labs/jbossrules/trunk/drools-core/src/test/java/org/drools/examples/manners/Seating.java	2006-10-06 17:25:48 UTC (rev 6661)
+++ labs/jbossrules/trunk/drools-core/src/test/java/org/drools/examples/manners/Seating.java	2006-10-06 17:38:39 UTC (rev 6662)
@@ -17,7 +17,7 @@
 
 import java.io.Serializable;
 
-public final class Seating
+public class Seating
     implements
     Serializable {
     /**
@@ -25,14 +25,17 @@
      */
     private static final long serialVersionUID = -21267542036195318L;
 
-    private final int         id, pid;
+    private int         id, pid;
 
-    private final int         leftSeat, rightSeat;
+    private int         leftSeat, rightSeat;
 
-    private final String      leftGuestName, rightGuestName;
+    private String      leftGuestName, rightGuestName;
 
     private boolean           pathDone;
 
+    public Seating() {
+    }
+    
     public Seating(final int id,
                    final int pid,
                    final boolean pathDone,
@@ -50,39 +53,39 @@
         this.rightGuestName = rightGuestName;
     }
 
-    public final boolean isPathDone() {
+    public boolean isPathDone() {
         return this.pathDone;
     }
 
-    public final void setPathDone(final boolean pathDone) {
+    public void setPathDone(final boolean pathDone) {
         this.pathDone = pathDone;
     }
 
-    public final int getId() {
+    public int getId() {
         return this.id;
     }
 
-    public final String getLeftGuestName() {
+    public String getLeftGuestName() {
         return this.leftGuestName;
     }
 
-    public final int getLeftSeat() {
+    public int getLeftSeat() {
         return this.leftSeat;
     }
 
-    public final int getPid() {
+    public int getPid() {
         return this.pid;
     }
 
-    public final String getRightGuestName() {
+    public String getRightGuestName() {
         return this.rightGuestName;
     }
 
-    public final int getRightSeat() {
+    public int getRightSeat() {
         return this.rightSeat;
     }
 
-    public final String toString() {
+    public String toString() {
         return "[Seating id=" + this.id + " , pid=" + this.pid + " , pathDone=" + this.pathDone + " , leftSeat=" + this.leftSeat + ", leftGuestName=" + this.leftGuestName + ", rightSeat=" + this.rightSeat + ", rightGuestName=" + this.rightGuestName
                + "]";
     }

Modified: labs/jbossrules/trunk/drools-core/src/test/java/org/drools/examples/manners/Sex.java
===================================================================
--- labs/jbossrules/trunk/drools-core/src/test/java/org/drools/examples/manners/Sex.java	2006-10-06 17:25:48 UTC (rev 6661)
+++ labs/jbossrules/trunk/drools-core/src/test/java/org/drools/examples/manners/Sex.java	2006-10-06 17:38:39 UTC (rev 6662)
@@ -15,7 +15,7 @@
  */
 package org.drools.examples.manners;
 
-public final class Sex {
+public class Sex {
     public static final Sex      M       = new Sex( 0 );
     public static final Sex      F       = new Sex( 1 );
 
@@ -23,13 +23,16 @@
     public static final String   stringF = "f";
     public static final String[] sexList = new String[]{Sex.stringM, Sex.stringF};
 
-    private final int            sex;
+    private int            sex;
+    
+    public Sex() {
+    }
 
     private Sex(final int sex) {
         this.sex = sex;
     }
 
-    public final String getSex() {
+    public String getSex() {
         return Sex.sexList[this.sex];
     }
 
@@ -43,15 +46,15 @@
         }
     }
 
-    public final String toString() {
+    public String toString() {
         return getSex();
     }
 
-    public final boolean equals(final Object object) {
+    public boolean equals(final Object object) {
         return this == object;
     }
 
-    public final int hashCode() {
+    public int hashCode() {
         return this.sex;
     }
 




More information about the jboss-svn-commits mailing list