[jboss-svn-commits] JBL Code SVN: r18930 - in labs/jbossrules/branches/ming-serialization: drools-compiler/src/test/java/org/drools/integrationtests and 5 other directories.

jboss-svn-commits at lists.jboss.org jboss-svn-commits at lists.jboss.org
Thu Mar 13 13:24:14 EDT 2008


Author: mingjin
Date: 2008-03-13 13:24:13 -0400 (Thu, 13 Mar 2008)
New Revision: 18930

Modified:
   labs/jbossrules/branches/ming-serialization/drools-compiler/src/test/java/org/drools/StockTick.java
   labs/jbossrules/branches/ming-serialization/drools-compiler/src/test/java/org/drools/integrationtests/CepEspTest.java
   labs/jbossrules/branches/ming-serialization/drools-core/src/main/java/org/drools/base/BaseEvaluator.java
   labs/jbossrules/branches/ming-serialization/drools-core/src/main/java/org/drools/base/accumulators/AverageAccumulateFunction.java
   labs/jbossrules/branches/ming-serialization/drools-core/src/main/java/org/drools/base/accumulators/CountAccumulateFunction.java
   labs/jbossrules/branches/ming-serialization/drools-core/src/main/java/org/drools/base/accumulators/SumAccumulateFunction.java
   labs/jbossrules/branches/ming-serialization/drools-core/src/main/java/org/drools/base/evaluators/AfterEvaluatorDefinition.java
   labs/jbossrules/branches/ming-serialization/drools-core/src/main/java/org/drools/base/evaluators/BeforeEvaluatorDefinition.java
   labs/jbossrules/branches/ming-serialization/drools-core/src/main/java/org/drools/base/evaluators/CoincidesEvaluatorDefinition.java
   labs/jbossrules/branches/ming-serialization/drools-core/src/main/java/org/drools/base/evaluators/DuringEvaluatorDefinition.java
   labs/jbossrules/branches/ming-serialization/drools-core/src/main/java/org/drools/base/evaluators/FinishedByEvaluatorDefinition.java
   labs/jbossrules/branches/ming-serialization/drools-core/src/main/java/org/drools/base/evaluators/FinishesEvaluatorDefinition.java
   labs/jbossrules/branches/ming-serialization/drools-core/src/main/java/org/drools/base/evaluators/IncludesEvaluatorDefinition.java
   labs/jbossrules/branches/ming-serialization/drools-core/src/main/java/org/drools/base/evaluators/MeetsEvaluatorDefinition.java
   labs/jbossrules/branches/ming-serialization/drools-core/src/main/java/org/drools/base/evaluators/MetByEvaluatorDefinition.java
   labs/jbossrules/branches/ming-serialization/drools-core/src/main/java/org/drools/base/evaluators/OverlappedByEvaluatorDefinition.java
   labs/jbossrules/branches/ming-serialization/drools-core/src/main/java/org/drools/base/evaluators/OverlapsEvaluatorDefinition.java
   labs/jbossrules/branches/ming-serialization/drools-core/src/main/java/org/drools/base/evaluators/StartedByEvaluatorDefinition.java
   labs/jbossrules/branches/ming-serialization/drools-core/src/main/java/org/drools/base/evaluators/StartsEvaluatorDefinition.java
   labs/jbossrules/branches/ming-serialization/drools-core/src/main/java/org/drools/reteoo/AccumulateNode.java
   labs/jbossrules/branches/ming-serialization/drools-core/src/main/java/org/drools/temporal/SessionClock.java
   labs/jbossrules/branches/ming-serialization/drools-core/src/main/java/org/drools/temporal/SessionPseudoClock.java
Log:
Updated CepEspTest with serialized rulebase

Modified: labs/jbossrules/branches/ming-serialization/drools-compiler/src/test/java/org/drools/StockTick.java
===================================================================
--- labs/jbossrules/branches/ming-serialization/drools-compiler/src/test/java/org/drools/StockTick.java	2008-03-13 16:36:57 UTC (rev 18929)
+++ labs/jbossrules/branches/ming-serialization/drools-compiler/src/test/java/org/drools/StockTick.java	2008-03-13 17:24:13 UTC (rev 18930)
@@ -1,11 +1,13 @@
 package org.drools;
 
-public class StockTick {
+import java.io.Serializable;
+
+public class StockTick implements Serializable {
     private long seq;
     private String company;
     private double price;
     private long time;
-    
+
     public StockTick() {
     }
 
@@ -44,7 +46,7 @@
     public void setTime(long time) {
         this.time = time;
     }
-    
+
     public String toString() {
         return "StockTick( "+this.seq+" : " +this.company +" : "+ this.price +" )";
     }

Modified: labs/jbossrules/branches/ming-serialization/drools-compiler/src/test/java/org/drools/integrationtests/CepEspTest.java
===================================================================
--- labs/jbossrules/branches/ming-serialization/drools-compiler/src/test/java/org/drools/integrationtests/CepEspTest.java	2008-03-13 16:36:57 UTC (rev 18929)
+++ labs/jbossrules/branches/ming-serialization/drools-compiler/src/test/java/org/drools/integrationtests/CepEspTest.java	2008-03-13 17:24:13 UTC (rev 18930)
@@ -54,18 +54,19 @@
         final Package pkg = builder.getPackage();
 
         // add the package to a rulebase
-        final RuleBase ruleBase = getRuleBase();
+        RuleBase ruleBase = getRuleBase();
         ruleBase.addPackage( pkg );
         // load up the rulebase
+        ruleBase    = SerializationHelper.serializeObject(ruleBase);
         return ruleBase;
     }
 
     public void testEventAssertion() throws Exception {
         // read in the source
         final Reader reader = new InputStreamReader( getClass().getResourceAsStream( "test_CEP_SimpleEventAssertion.drl" ) );
-        final RuleBase ruleBase = loadRuleBase( reader );
+        RuleBase ruleBase = loadRuleBase( reader );
 
-        final WorkingMemory wm = ruleBase.newTemporalSession( ClockType.PSEUDO_CLOCK );
+        WorkingMemory wm = ruleBase.newTemporalSession( ClockType.PSEUDO_CLOCK );
         final List results = new ArrayList();
 
         wm.setGlobal( "results",
@@ -103,6 +104,7 @@
         assertTrue( handle3.isEvent() );
         assertTrue( handle4.isEvent() );
 
+//        wm  = SerializationHelper.serializeObject(wm);
         wm.fireAllRules();
 
         assertEquals( 2,
@@ -115,7 +117,7 @@
         final Reader reader = new InputStreamReader( getClass().getResourceAsStream( "test_CEP_TimeRelationalOperators.drl" ) );
         final RuleBase ruleBase = loadRuleBase( reader );
 
-        final TemporalSession<SessionPseudoClock> wm = ruleBase.newTemporalSession( ClockType.PSEUDO_CLOCK );
+        TemporalSession<SessionPseudoClock> wm = ruleBase.newTemporalSession( ClockType.PSEUDO_CLOCK );
         final SessionPseudoClock clock = wm.getSessionClock();
 
         clock.setStartupTime( 1000 );
@@ -224,6 +226,7 @@
         assertTrue( handle7.isEvent() );
         assertTrue( handle8.isEvent() );
 
+//        wm  = SerializationHelper.serializeObject(wm);
         wm.fireAllRules();
 
         assertEquals( 1,
@@ -303,7 +306,7 @@
         final Reader reader = new InputStreamReader( getClass().getResourceAsStream( "test_CEP_SimpleTimeWindow.drl" ) );
         final RuleBase ruleBase = loadRuleBase( reader );
 
-        final TemporalSession<SessionPseudoClock> wm = ruleBase.newTemporalSession( ClockType.PSEUDO_CLOCK );
+        TemporalSession<SessionPseudoClock> wm = ruleBase.newTemporalSession( ClockType.PSEUDO_CLOCK );
         final List results = new ArrayList();
 
         wm.setGlobal( "results",
@@ -322,6 +325,7 @@
         assertEquals( 0,
                       handle1.getDuration() );
 
+//        wm  = SerializationHelper.serializeObject(wm);
         wm.fireAllRules();
 
         clock.advanceTime( 10000 ); // 10 seconds
@@ -366,6 +370,7 @@
         assertEquals( 0,
                       handle5.getDuration() );
 
+//        wm  = SerializationHelper.serializeObject(wm);
         wm.fireAllRules();
 
         clock.advanceTime( 10000 ); // 10 seconds
@@ -377,6 +382,7 @@
         assertEquals( 0,
                       handle6.getDuration() );
 
+        wm  = SerializationHelper.serializeObject(wm);
         wm.fireAllRules();
 
     }

Modified: labs/jbossrules/branches/ming-serialization/drools-core/src/main/java/org/drools/base/BaseEvaluator.java
===================================================================
--- labs/jbossrules/branches/ming-serialization/drools-core/src/main/java/org/drools/base/BaseEvaluator.java	2008-03-13 16:36:57 UTC (rev 18929)
+++ labs/jbossrules/branches/ming-serialization/drools-core/src/main/java/org/drools/base/BaseEvaluator.java	2008-03-13 17:24:13 UTC (rev 18930)
@@ -39,6 +39,9 @@
 
     private ValueType type;
 
+    public BaseEvaluator() {
+    }
+
     public BaseEvaluator(final ValueType type,
                          final Operator operator) {
         this.type = type;

Modified: labs/jbossrules/branches/ming-serialization/drools-core/src/main/java/org/drools/base/accumulators/AverageAccumulateFunction.java
===================================================================
--- labs/jbossrules/branches/ming-serialization/drools-core/src/main/java/org/drools/base/accumulators/AverageAccumulateFunction.java	2008-03-13 16:36:57 UTC (rev 18929)
+++ labs/jbossrules/branches/ming-serialization/drools-core/src/main/java/org/drools/base/accumulators/AverageAccumulateFunction.java	2008-03-13 17:24:13 UTC (rev 18930)
@@ -20,6 +20,7 @@
 import java.io.ObjectOutput;
 import java.io.ObjectInput;
 import java.io.IOException;
+import java.io.Externalizable;
 
 /**
  * An implementation of an accumulator capable of calculating average values
@@ -37,9 +38,20 @@
 
     }
 
-    protected static class AverageData {
+    public static class AverageData implements Externalizable {
         public int    count = 0;
         public double total = 0;
+
+        public void readExternal(ObjectInput in) throws IOException, ClassNotFoundException {
+            count   = in.readInt();
+            total   = in.readDouble();
+        }
+
+        public void writeExternal(ObjectOutput out) throws IOException {
+            out.writeInt(count);
+            out.writeDouble(total);
+        }
+
     }
 
     /* (non-Javadoc)

Modified: labs/jbossrules/branches/ming-serialization/drools-core/src/main/java/org/drools/base/accumulators/CountAccumulateFunction.java
===================================================================
--- labs/jbossrules/branches/ming-serialization/drools-core/src/main/java/org/drools/base/accumulators/CountAccumulateFunction.java	2008-03-13 16:36:57 UTC (rev 18929)
+++ labs/jbossrules/branches/ming-serialization/drools-core/src/main/java/org/drools/base/accumulators/CountAccumulateFunction.java	2008-03-13 17:24:13 UTC (rev 18930)
@@ -20,6 +20,7 @@
 import java.io.ObjectOutput;
 import java.io.ObjectInput;
 import java.io.IOException;
+import java.io.Externalizable;
 
 /**
  * An implementation of an accumulator capable of counting occurences
@@ -37,8 +38,17 @@
 
     }
 
-    protected static class CountData {
+    protected static class CountData implements Externalizable {
         public long   count = 0;
+
+        public void readExternal(ObjectInput in) throws IOException, ClassNotFoundException {
+            count   = in.readLong();
+        }
+
+        public void writeExternal(ObjectOutput out) throws IOException {
+            out.writeLong(count);
+        }
+
     }
 
     /* (non-Javadoc)

Modified: labs/jbossrules/branches/ming-serialization/drools-core/src/main/java/org/drools/base/accumulators/SumAccumulateFunction.java
===================================================================
--- labs/jbossrules/branches/ming-serialization/drools-core/src/main/java/org/drools/base/accumulators/SumAccumulateFunction.java	2008-03-13 16:36:57 UTC (rev 18929)
+++ labs/jbossrules/branches/ming-serialization/drools-core/src/main/java/org/drools/base/accumulators/SumAccumulateFunction.java	2008-03-13 17:24:13 UTC (rev 18930)
@@ -20,6 +20,7 @@
 import java.io.ObjectOutput;
 import java.io.IOException;
 import java.io.ObjectInput;
+import java.io.Externalizable;
 
 /**
  * An implementation of an accumulator capable of calculating sum of values
@@ -37,8 +38,17 @@
 
     }
 
-    protected static class SumData {
+    protected static class SumData implements Externalizable {
         public double total = 0;
+
+        public void readExternal(ObjectInput in) throws IOException, ClassNotFoundException {
+            total   = in.readDouble();
+        }
+
+        public void writeExternal(ObjectOutput out) throws IOException {
+            out.writeDouble(total);
+        }
+
     }
 
     /* (non-Javadoc)

Modified: labs/jbossrules/branches/ming-serialization/drools-core/src/main/java/org/drools/base/evaluators/AfterEvaluatorDefinition.java
===================================================================
--- labs/jbossrules/branches/ming-serialization/drools-core/src/main/java/org/drools/base/evaluators/AfterEvaluatorDefinition.java	2008-03-13 16:36:57 UTC (rev 18929)
+++ labs/jbossrules/branches/ming-serialization/drools-core/src/main/java/org/drools/base/evaluators/AfterEvaluatorDefinition.java	2008-03-13 17:24:13 UTC (rev 18930)
@@ -146,6 +146,9 @@
         private long              initRange;
         private long              finalRange;
 
+        public AfterEvaluator() {
+        }
+
         public AfterEvaluator(final ValueType type,
                               final boolean isNegated,
                               final String parameters) {
@@ -154,6 +157,18 @@
             this.parseParameters( parameters );
         }
 
+        public void readExternal(ObjectInput in) throws IOException, ClassNotFoundException {
+            super.readExternal(in);
+            initRange = in.readLong();
+            finalRange = in.readLong();
+        }
+
+        public void writeExternal(ObjectOutput out) throws IOException {
+            super.writeExternal(out);
+            out.writeLong(initRange);
+            out.writeLong(finalRange);
+        }
+
         @Override
         public Object prepareObject(InternalFactHandle handle) {
             return handle;

Modified: labs/jbossrules/branches/ming-serialization/drools-core/src/main/java/org/drools/base/evaluators/BeforeEvaluatorDefinition.java
===================================================================
--- labs/jbossrules/branches/ming-serialization/drools-core/src/main/java/org/drools/base/evaluators/BeforeEvaluatorDefinition.java	2008-03-13 16:36:57 UTC (rev 18929)
+++ labs/jbossrules/branches/ming-serialization/drools-core/src/main/java/org/drools/base/evaluators/BeforeEvaluatorDefinition.java	2008-03-13 17:24:13 UTC (rev 18930)
@@ -146,6 +146,9 @@
 		private long                  initRange;
         private long                  finalRange;
 
+        public BeforeEvaluator() {
+        }
+
         public BeforeEvaluator(final ValueType type,
                               final boolean isNegated,
                               final String parameters) {
@@ -154,6 +157,18 @@
             this.parseParameters( parameters );
         }
 
+        public void readExternal(ObjectInput in) throws IOException, ClassNotFoundException {
+            super.readExternal(in);
+            initRange    = in.readLong();
+            finalRange   = in.readLong();
+        }
+
+        public void writeExternal(ObjectOutput out) throws IOException {
+            super.writeExternal(out);
+            out.writeLong(initRange);
+            out.writeLong(finalRange);
+        }
+
         @Override
         public Object prepareObject(InternalFactHandle handle) {
             return handle;

Modified: labs/jbossrules/branches/ming-serialization/drools-core/src/main/java/org/drools/base/evaluators/CoincidesEvaluatorDefinition.java
===================================================================
--- labs/jbossrules/branches/ming-serialization/drools-core/src/main/java/org/drools/base/evaluators/CoincidesEvaluatorDefinition.java	2008-03-13 16:36:57 UTC (rev 18929)
+++ labs/jbossrules/branches/ming-serialization/drools-core/src/main/java/org/drools/base/evaluators/CoincidesEvaluatorDefinition.java	2008-03-13 17:24:13 UTC (rev 18930)
@@ -146,6 +146,9 @@
 		private long                  startDev;
         private long                  endDev;
 
+        public CoincidesEvaluator() {
+        }
+
         public CoincidesEvaluator(final ValueType type,
                               final boolean isNegated,
                               final String parameters) {
@@ -154,6 +157,18 @@
             this.parseParameters( parameters );
         }
 
+        public void readExternal(ObjectInput in) throws IOException, ClassNotFoundException {
+            super.readExternal(in);
+            startDev = in.readLong();
+            endDev = in.readLong();
+        }
+
+        public void writeExternal(ObjectOutput out) throws IOException {
+            super.writeExternal(out);
+            out.writeLong(startDev);
+            out.writeLong(endDev);
+        }
+
         @Override
         public Object prepareObject(InternalFactHandle handle) {
             return handle;

Modified: labs/jbossrules/branches/ming-serialization/drools-core/src/main/java/org/drools/base/evaluators/DuringEvaluatorDefinition.java
===================================================================
--- labs/jbossrules/branches/ming-serialization/drools-core/src/main/java/org/drools/base/evaluators/DuringEvaluatorDefinition.java	2008-03-13 16:36:57 UTC (rev 18929)
+++ labs/jbossrules/branches/ming-serialization/drools-core/src/main/java/org/drools/base/evaluators/DuringEvaluatorDefinition.java	2008-03-13 17:24:13 UTC (rev 18930)
@@ -146,6 +146,9 @@
 		private long                  startMinDev, startMaxDev;
         private long                  endMinDev, endMaxDev;
 
+        public DuringEvaluator() {
+        }
+
         public DuringEvaluator(final ValueType type,
                               final boolean isNegated,
                               final String parameters) {
@@ -154,6 +157,22 @@
             this.parseParameters( parameters );
         }
 
+        public void readExternal(ObjectInput in) throws IOException, ClassNotFoundException {
+            super.readExternal(in);
+            startMinDev = in.readLong();
+            startMaxDev = in.readLong();
+            endMinDev   = in.readLong();
+            endMaxDev   = in.readLong();
+        }
+
+        public void writeExternal(ObjectOutput out) throws IOException {
+            super.writeExternal(out);
+            out.writeLong(startMinDev);
+            out.writeLong(startMaxDev);
+            out.writeLong(endMinDev);
+            out.writeLong(endMaxDev);
+        }
+
         @Override
         public Object prepareObject(InternalFactHandle handle) {
             return handle;

Modified: labs/jbossrules/branches/ming-serialization/drools-core/src/main/java/org/drools/base/evaluators/FinishedByEvaluatorDefinition.java
===================================================================
--- labs/jbossrules/branches/ming-serialization/drools-core/src/main/java/org/drools/base/evaluators/FinishedByEvaluatorDefinition.java	2008-03-13 16:36:57 UTC (rev 18929)
+++ labs/jbossrules/branches/ming-serialization/drools-core/src/main/java/org/drools/base/evaluators/FinishedByEvaluatorDefinition.java	2008-03-13 17:24:13 UTC (rev 18930)
@@ -146,6 +146,9 @@
 		private long                  startMinDev, startMaxDev;
         private long                  endDev;
 
+        public FinishedByEvaluator() {
+        }
+
         public FinishedByEvaluator(final ValueType type,
                               final boolean isNegated,
                               final String parameters) {
@@ -154,6 +157,20 @@
             this.parseParameters( parameters );
         }
 
+        public void readExternal(ObjectInput in) throws IOException, ClassNotFoundException {
+            super.readExternal(in);
+            startMinDev = in.readLong();
+            startMaxDev = in.readLong();
+            endDev   = in.readLong();
+        }
+
+        public void writeExternal(ObjectOutput out) throws IOException {
+            super.writeExternal(out);
+            out.writeLong(startMinDev);
+            out.writeLong(startMaxDev);
+            out.writeLong(endDev);
+        }
+
         @Override
         public Object prepareObject(InternalFactHandle handle) {
             return handle;

Modified: labs/jbossrules/branches/ming-serialization/drools-core/src/main/java/org/drools/base/evaluators/FinishesEvaluatorDefinition.java
===================================================================
--- labs/jbossrules/branches/ming-serialization/drools-core/src/main/java/org/drools/base/evaluators/FinishesEvaluatorDefinition.java	2008-03-13 16:36:57 UTC (rev 18929)
+++ labs/jbossrules/branches/ming-serialization/drools-core/src/main/java/org/drools/base/evaluators/FinishesEvaluatorDefinition.java	2008-03-13 17:24:13 UTC (rev 18930)
@@ -146,6 +146,9 @@
 		private long                  startMinDev, startMaxDev;
         private long                  endDev;
 
+        public FinishesEvaluator() {
+        }
+
         public FinishesEvaluator(final ValueType type,
                               final boolean isNegated,
                               final String parameters) {
@@ -154,6 +157,22 @@
             this.parseParameters( parameters );
         }
 
+        public void readExternal(ObjectInput in) throws IOException, ClassNotFoundException {
+            super.readExternal(in);
+            startMinDev = in.readLong();
+            startMaxDev   = in.readLong();
+            endDev   = in.readLong();
+        }
+
+        public void writeExternal(ObjectOutput out) throws IOException {
+            super.writeExternal(out);
+            out.writeLong(startMinDev);
+            out.writeLong(startMaxDev);
+            out.writeLong(endDev);
+        }
+
+
+
         @Override
         public Object prepareObject(InternalFactHandle handle) {
             return handle;

Modified: labs/jbossrules/branches/ming-serialization/drools-core/src/main/java/org/drools/base/evaluators/IncludesEvaluatorDefinition.java
===================================================================
--- labs/jbossrules/branches/ming-serialization/drools-core/src/main/java/org/drools/base/evaluators/IncludesEvaluatorDefinition.java	2008-03-13 16:36:57 UTC (rev 18929)
+++ labs/jbossrules/branches/ming-serialization/drools-core/src/main/java/org/drools/base/evaluators/IncludesEvaluatorDefinition.java	2008-03-13 17:24:13 UTC (rev 18930)
@@ -146,6 +146,9 @@
 		private long                  startMinDev, startMaxDev;
         private long                  endMinDev, endMaxDev;
 
+        public IncludesEvaluator() {
+        }
+
         public IncludesEvaluator(final ValueType type,
                               final boolean isNegated,
                               final String parameters) {
@@ -154,6 +157,22 @@
             this.parseParameters( parameters );
         }
 
+        public void readExternal(ObjectInput in) throws IOException, ClassNotFoundException {
+            super.readExternal(in);
+            startMinDev = in.readLong();
+            startMaxDev = in.readLong();
+            endMinDev   = in.readLong();
+            endMaxDev   = in.readLong();
+        }
+
+        public void writeExternal(ObjectOutput out) throws IOException {
+            super.writeExternal(out);
+            out.writeLong(startMinDev);
+            out.writeLong(startMaxDev);
+            out.writeLong(endMinDev);
+            out.writeLong(endMaxDev);
+        }
+
         @Override
         public Object prepareObject(InternalFactHandle handle) {
             return handle;

Modified: labs/jbossrules/branches/ming-serialization/drools-core/src/main/java/org/drools/base/evaluators/MeetsEvaluatorDefinition.java
===================================================================
--- labs/jbossrules/branches/ming-serialization/drools-core/src/main/java/org/drools/base/evaluators/MeetsEvaluatorDefinition.java	2008-03-13 16:36:57 UTC (rev 18929)
+++ labs/jbossrules/branches/ming-serialization/drools-core/src/main/java/org/drools/base/evaluators/MeetsEvaluatorDefinition.java	2008-03-13 17:24:13 UTC (rev 18930)
@@ -145,6 +145,9 @@
 
 		private long                  finalRange;
 
+        public MeetsEvaluator(){
+        }
+
         public MeetsEvaluator(final ValueType type,
                               final boolean isNegated,
                               final String parameters) {
@@ -153,6 +156,16 @@
             this.parseParameters( parameters );
         }
 
+        public void readExternal(ObjectInput in) throws IOException, ClassNotFoundException {
+            super.readExternal(in);
+            finalRange   = in.readLong();
+        }
+
+        public void writeExternal(ObjectOutput out) throws IOException {
+            super.writeExternal(out);
+            out.writeLong(finalRange);
+        }
+
         @Override
         public Object prepareObject(InternalFactHandle handle) {
             return handle;

Modified: labs/jbossrules/branches/ming-serialization/drools-core/src/main/java/org/drools/base/evaluators/MetByEvaluatorDefinition.java
===================================================================
--- labs/jbossrules/branches/ming-serialization/drools-core/src/main/java/org/drools/base/evaluators/MetByEvaluatorDefinition.java	2008-03-13 16:36:57 UTC (rev 18929)
+++ labs/jbossrules/branches/ming-serialization/drools-core/src/main/java/org/drools/base/evaluators/MetByEvaluatorDefinition.java	2008-03-13 17:24:13 UTC (rev 18930)
@@ -145,6 +145,9 @@
 
 		private long                  finalRange;
 
+        public MetByEvaluator() {
+        }
+
         public MetByEvaluator(final ValueType type,
                               final boolean isNegated,
                               final String parameters) {
@@ -153,6 +156,16 @@
             this.parseParameters( parameters );
         }
 
+        public void readExternal(ObjectInput in) throws IOException, ClassNotFoundException {
+            super.readExternal(in);
+            finalRange = in.readLong();
+        }
+
+        public void writeExternal(ObjectOutput out) throws IOException {
+            super.writeExternal(out);
+            out.writeLong(finalRange);
+        }
+
         @Override
         public Object prepareObject(InternalFactHandle handle) {
             return handle;

Modified: labs/jbossrules/branches/ming-serialization/drools-core/src/main/java/org/drools/base/evaluators/OverlappedByEvaluatorDefinition.java
===================================================================
--- labs/jbossrules/branches/ming-serialization/drools-core/src/main/java/org/drools/base/evaluators/OverlappedByEvaluatorDefinition.java	2008-03-13 16:36:57 UTC (rev 18929)
+++ labs/jbossrules/branches/ming-serialization/drools-core/src/main/java/org/drools/base/evaluators/OverlappedByEvaluatorDefinition.java	2008-03-13 17:24:13 UTC (rev 18930)
@@ -146,6 +146,9 @@
 		private long                  startMinDev, startMaxDev;
         private long                  endMinDev, endMaxDev;
 
+        public OverlappedByEvaluator() {
+        }
+
         public OverlappedByEvaluator(final ValueType type,
                               final boolean isNegated,
                               final String parameters) {
@@ -154,6 +157,22 @@
             this.parseParameters( parameters );
         }
 
+        public void readExternal(ObjectInput in) throws IOException, ClassNotFoundException {
+            super.readExternal(in);
+            startMinDev = in.readLong();
+            startMaxDev = in.readLong();
+            endMinDev   = in.readLong();
+            endMaxDev   = in.readLong();
+        }
+
+        public void writeExternal(ObjectOutput out) throws IOException {
+            super.writeExternal(out);
+            out.writeLong(startMinDev);
+            out.writeLong(startMaxDev);
+            out.writeLong(endMinDev);
+            out.writeLong(endMaxDev);
+        }
+
         @Override
         public Object prepareObject(InternalFactHandle handle) {
             return handle;

Modified: labs/jbossrules/branches/ming-serialization/drools-core/src/main/java/org/drools/base/evaluators/OverlapsEvaluatorDefinition.java
===================================================================
--- labs/jbossrules/branches/ming-serialization/drools-core/src/main/java/org/drools/base/evaluators/OverlapsEvaluatorDefinition.java	2008-03-13 16:36:57 UTC (rev 18929)
+++ labs/jbossrules/branches/ming-serialization/drools-core/src/main/java/org/drools/base/evaluators/OverlapsEvaluatorDefinition.java	2008-03-13 17:24:13 UTC (rev 18930)
@@ -146,6 +146,9 @@
 		private long                  startMinDev, startMaxDev;
         private long                  endMinDev, endMaxDev;
 
+        public OverlapsEvaluator() {
+        }
+
         public OverlapsEvaluator(final ValueType type,
                               final boolean isNegated,
                               final String parameters) {
@@ -154,6 +157,22 @@
             this.parseParameters( parameters );
         }
 
+        public void readExternal(ObjectInput in) throws IOException, ClassNotFoundException {
+            super.readExternal(in);
+            startMinDev    = in.readLong();
+            startMaxDev   = in.readLong();
+            endMinDev   = in.readLong();
+            endMaxDev   = in.readLong();
+        }
+
+        public void writeExternal(ObjectOutput out) throws IOException {
+            super.writeExternal(out);
+            out.writeLong(startMinDev);
+            out.writeLong(startMaxDev);
+            out.writeLong(endMinDev);
+            out.writeLong(endMaxDev);
+        }
+
         @Override
         public Object prepareObject(InternalFactHandle handle) {
             return handle;

Modified: labs/jbossrules/branches/ming-serialization/drools-core/src/main/java/org/drools/base/evaluators/StartedByEvaluatorDefinition.java
===================================================================
--- labs/jbossrules/branches/ming-serialization/drools-core/src/main/java/org/drools/base/evaluators/StartedByEvaluatorDefinition.java	2008-03-13 16:36:57 UTC (rev 18929)
+++ labs/jbossrules/branches/ming-serialization/drools-core/src/main/java/org/drools/base/evaluators/StartedByEvaluatorDefinition.java	2008-03-13 17:24:13 UTC (rev 18930)
@@ -146,6 +146,9 @@
 		private long                  startDev;
         private long                  endMinDev, endMaxDev;
 
+        public StartedByEvaluator() {
+        }
+
         public StartedByEvaluator(final ValueType type,
                               final boolean isNegated,
                               final String parameters) {
@@ -154,6 +157,20 @@
             this.parseParameters( parameters );
         }
 
+        public void readExternal(ObjectInput in) throws IOException, ClassNotFoundException {
+            super.readExternal(in);
+            startDev = in.readLong();
+            endMinDev   = in.readLong();
+            endMaxDev   = in.readLong();
+        }
+
+        public void writeExternal(ObjectOutput out) throws IOException {
+            super.writeExternal(out);
+            out.writeLong(startDev);
+            out.writeLong(endMinDev);
+            out.writeLong(endMaxDev);
+        }
+
         @Override
         public Object prepareObject(InternalFactHandle handle) {
             return handle;

Modified: labs/jbossrules/branches/ming-serialization/drools-core/src/main/java/org/drools/base/evaluators/StartsEvaluatorDefinition.java
===================================================================
--- labs/jbossrules/branches/ming-serialization/drools-core/src/main/java/org/drools/base/evaluators/StartsEvaluatorDefinition.java	2008-03-13 16:36:57 UTC (rev 18929)
+++ labs/jbossrules/branches/ming-serialization/drools-core/src/main/java/org/drools/base/evaluators/StartsEvaluatorDefinition.java	2008-03-13 17:24:13 UTC (rev 18930)
@@ -154,6 +154,23 @@
             this.parseParameters( parameters );
         }
 
+        public StartsEvaluator() {
+        }
+
+        public void readExternal(ObjectInput in) throws IOException, ClassNotFoundException {
+            super.readExternal(in);
+            startDev = in.readLong();
+            endMinDev   = in.readLong();
+            endMaxDev   = in.readLong();
+        }
+
+        public void writeExternal(ObjectOutput out) throws IOException {
+            super.writeExternal(out);
+            out.writeLong(startDev);
+            out.writeLong(endMinDev);
+            out.writeLong(endMaxDev);
+        }
+
         @Override
         public Object prepareObject(InternalFactHandle handle) {
             return handle;

Modified: labs/jbossrules/branches/ming-serialization/drools-core/src/main/java/org/drools/reteoo/AccumulateNode.java
===================================================================
--- labs/jbossrules/branches/ming-serialization/drools-core/src/main/java/org/drools/reteoo/AccumulateNode.java	2008-03-13 16:36:57 UTC (rev 18929)
+++ labs/jbossrules/branches/ming-serialization/drools-core/src/main/java/org/drools/reteoo/AccumulateNode.java	2008-03-13 17:24:13 UTC (rev 18930)
@@ -20,6 +20,7 @@
 import java.io.IOException;
 import java.io.ObjectInput;
 import java.io.ObjectOutput;
+import java.io.Externalizable;
 
 import org.drools.RuleBaseConfiguration;
 import org.drools.RuntimeDroolsException;
@@ -510,18 +511,44 @@
         return memory;
     }
 
-    public static class AccumulateMemory {
+    public static class AccumulateMemory implements Externalizable {
         private static final long serialVersionUID = 400L;
 
         public Object workingMemoryContext;
         public BetaMemory betaMemory;
         public ContextEntry[] resultsContext;
         public ContextEntry[] alphaContexts;
+
+        public void readExternal(ObjectInput in) throws IOException, ClassNotFoundException {
+            workingMemoryContext   = in.readObject();
+            betaMemory      = (BetaMemory)in.readObject();
+            resultsContext  = (ContextEntry[])in.readObject();
+            alphaContexts   = (ContextEntry[])in.readObject();
+        }
+
+        public void writeExternal(ObjectOutput out) throws IOException {
+            out.writeObject(workingMemoryContext);
+            out.writeObject(betaMemory);
+            out.writeObject(resultsContext);
+            out.writeObject(alphaContexts);
+        }
+
     }
 
-    private static class AccumulateResult {
+    public static class AccumulateResult implements Externalizable {
         // keeping attributes public just for performance
         public InternalFactHandle handle;
         public Object             context;
+
+        public void readExternal(ObjectInput in) throws IOException, ClassNotFoundException {
+            handle   = (InternalFactHandle)in.readObject();
+            context   = in.readObject();
+        }
+
+        public void writeExternal(ObjectOutput out) throws IOException {
+            out.writeObject(handle);
+            out.writeObject(context);
+        }
+
     }
 }

Modified: labs/jbossrules/branches/ming-serialization/drools-core/src/main/java/org/drools/temporal/SessionClock.java
===================================================================
--- labs/jbossrules/branches/ming-serialization/drools-core/src/main/java/org/drools/temporal/SessionClock.java	2008-03-13 16:36:57 UTC (rev 18929)
+++ labs/jbossrules/branches/ming-serialization/drools-core/src/main/java/org/drools/temporal/SessionClock.java	2008-03-13 17:24:13 UTC (rev 18930)
@@ -17,13 +17,15 @@
  */
 package org.drools.temporal;
 
+import java.io.Externalizable;
+
 /**
  * A clock interface that all engine clocks must implement
  * 
  * @author etirelli
  */
-public interface SessionClock {
-    
+public interface SessionClock extends Externalizable {
+
     /**
      * Returns the current time. There is no semantics attached
      * to the long return value, so it will depend on the actual
@@ -35,5 +37,5 @@
      * 
      */
     public long getCurrentTime();
-    
+
 }

Modified: labs/jbossrules/branches/ming-serialization/drools-core/src/main/java/org/drools/temporal/SessionPseudoClock.java
===================================================================
--- labs/jbossrules/branches/ming-serialization/drools-core/src/main/java/org/drools/temporal/SessionPseudoClock.java	2008-03-13 16:36:57 UTC (rev 18929)
+++ labs/jbossrules/branches/ming-serialization/drools-core/src/main/java/org/drools/temporal/SessionPseudoClock.java	2008-03-13 17:24:13 UTC (rev 18930)
@@ -17,6 +17,10 @@
  */
 package org.drools.temporal;
 
+import java.io.ObjectInput;
+import java.io.IOException;
+import java.io.ObjectOutput;
+
 /**
  * A SessionPseudoClock is a clock that allows the user to explicitly 
  * control current time.
@@ -27,20 +31,28 @@
 public class SessionPseudoClock
     implements
     SessionClock {
-    
+
     private long timer;
 
     public SessionPseudoClock() {
         this.timer = 0;
     }
-    
+
+    public void readExternal(ObjectInput in) throws IOException, ClassNotFoundException {
+        timer   = in.readLong();
+    }
+
+    public void writeExternal(ObjectOutput out) throws IOException {
+        out.writeLong(timer);
+    }
+
     /* (non-Javadoc)
-     * @see org.drools.temporal.SessionClock#getCurrentTime()
-     */
+    * @see org.drools.temporal.SessionClock#getCurrentTime()
+    */
     public long getCurrentTime() {
         return this.timer;
     }
-    
+
     public long advanceTime( long millisecs ) {
         this.timer += millisecs;
         return this.timer;




More information about the jboss-svn-commits mailing list