[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