[jboss-svn-commits] JBL Code SVN: r19370 - in labs/jbossrules/trunk: drools-core/src/main/java/org/drools/reteoo and 1 other directory.

jboss-svn-commits at lists.jboss.org jboss-svn-commits at lists.jboss.org
Tue Apr 1 18:59:21 EDT 2008


Author: tirelli
Date: 2008-04-01 18:59:21 -0400 (Tue, 01 Apr 2008)
New Revision: 19370

Modified:
   labs/jbossrules/trunk/drools-compiler/src/test/java/org/drools/integrationtests/MiscTest.java
   labs/jbossrules/trunk/drools-core/src/main/java/org/drools/reteoo/LeftInputAdapterNode.java
Log:
JBRULES-1520: fixing LIAN serialization

Modified: labs/jbossrules/trunk/drools-compiler/src/test/java/org/drools/integrationtests/MiscTest.java
===================================================================
--- labs/jbossrules/trunk/drools-compiler/src/test/java/org/drools/integrationtests/MiscTest.java	2008-04-01 20:58:08 UTC (rev 19369)
+++ labs/jbossrules/trunk/drools-compiler/src/test/java/org/drools/integrationtests/MiscTest.java	2008-04-01 22:59:21 UTC (rev 19370)
@@ -2113,32 +2113,34 @@
         ruleBase.addPackage( pkg1 );
         ruleBase    = SerializationHelper.serializeObject(ruleBase);
         final WorkingMemory workingMemory = ruleBase.newStatefulSession();
+        WorkingMemoryFileLogger logger = new WorkingMemoryFileLogger( workingMemory );
+        logger.setFileName( "log_20080401" );
 
-        final List orderedFacts = new ArrayList();
-        final List errors = new ArrayList();
-
-        workingMemory.setGlobal( "orderedNumbers",
-                                 orderedFacts );
-        workingMemory.setGlobal( "errors",
-                                 errors );
-
-        final int MAX = 5;
-        for ( int i = 1; i <= MAX; i++ ) {
-            final IndexedNumber n = new IndexedNumber( i,
-                                                       MAX - i + 1 );
-            workingMemory.insert( n );
+        try {
+            final List orderedFacts = new ArrayList();
+            final List errors = new ArrayList();
+            workingMemory.setGlobal( "orderedNumbers",
+                                     orderedFacts );
+            workingMemory.setGlobal( "errors",
+                                     errors );
+            final int MAX = 2;
+            for ( int i = 1; i <= MAX; i++ ) {
+                final IndexedNumber n = new IndexedNumber( i,
+                                                           MAX - i + 1 );
+                workingMemory.insert( n );
+            }
+            workingMemory.fireAllRules();
+            Assert.assertTrue( "Processing generated errors: " + errors.toString(),
+                               errors.isEmpty() );
+            for ( int i = 1; i <= MAX; i++ ) {
+                final IndexedNumber n = (IndexedNumber) orderedFacts.get( i - 1 );
+                Assert.assertEquals( "Fact is out of order",
+                                     i,
+                                     n.getIndex() );
+            }
+        } finally {
+            logger.writeToDisk();
         }
-        workingMemory.fireAllRules();
-
-        Assert.assertTrue( "Processing generated errors: " + errors.toString(),
-                           errors.isEmpty() );
-
-        for ( int i = 1; i <= MAX; i++ ) {
-            final IndexedNumber n = (IndexedNumber) orderedFacts.get( i - 1 );
-            Assert.assertEquals( "Fact is out of order",
-                                 i,
-                                 n.getIndex() );
-        }
     }
 
     public void testQuery2() throws Exception {

Modified: labs/jbossrules/trunk/drools-core/src/main/java/org/drools/reteoo/LeftInputAdapterNode.java
===================================================================
--- labs/jbossrules/trunk/drools-core/src/main/java/org/drools/reteoo/LeftInputAdapterNode.java	2008-04-01 20:58:08 UTC (rev 19369)
+++ labs/jbossrules/trunk/drools-core/src/main/java/org/drools/reteoo/LeftInputAdapterNode.java	2008-04-01 22:59:21 UTC (rev 19370)
@@ -88,6 +88,7 @@
         objectSource = (ObjectSource) in.readObject();
         previousRightTupleSinkNode = (ObjectTupleSinkNode) in.readObject();
         nextRightTupleSinkNode = (ObjectTupleSinkNode) in.readObject();
+        leftTupleMemoryEnabled = in.readBoolean();
     }
 
     public void writeExternal(ObjectOutput out) throws IOException {
@@ -95,6 +96,7 @@
         out.writeObject( objectSource );
         out.writeObject( previousRightTupleSinkNode );
         out.writeObject( nextRightTupleSinkNode );
+        out.writeBoolean( leftTupleMemoryEnabled );
     }
 
     /* (non-Javadoc)




More information about the jboss-svn-commits mailing list