[jboss-svn-commits] JBL Code SVN: r17165 - in labs/jbossrules/branches/temporal_rete/drools-compiler/src: test/java/org/drools/integrationtests and 1 other directories.

jboss-svn-commits at lists.jboss.org jboss-svn-commits at lists.jboss.org
Mon Dec 10 15:05:17 EST 2007


Author: mgroch
Date: 2007-12-10 15:05:17 -0500 (Mon, 10 Dec 2007)
New Revision: 17165

Modified:
   labs/jbossrules/branches/temporal_rete/drools-compiler/src/main/resources/META-INF/drools.default.packagebuilder.conf
   labs/jbossrules/branches/temporal_rete/drools-compiler/src/test/java/org/drools/integrationtests/CepEspTest.java
   labs/jbossrules/branches/temporal_rete/drools-compiler/src/test/resources/org/drools/integrationtests/test_CEP_TimeRelationalOperators.drl
Log:
support for before, meets, met-by

Modified: labs/jbossrules/branches/temporal_rete/drools-compiler/src/main/resources/META-INF/drools.default.packagebuilder.conf
===================================================================
--- labs/jbossrules/branches/temporal_rete/drools-compiler/src/main/resources/META-INF/drools.default.packagebuilder.conf	2007-12-10 19:51:52 UTC (rev 17164)
+++ labs/jbossrules/branches/temporal_rete/drools-compiler/src/main/resources/META-INF/drools.default.packagebuilder.conf	2007-12-10 20:05:17 UTC (rev 17165)
@@ -11,9 +11,12 @@
 drools.accumulate.function.count = org.drools.base.accumulators.CountAccumulateFunction
 drools.accumulate.function.sum = org.drools.base.accumulators.SumAccumulateFunction
 
+drools.evaluator.before = org.drools.base.evaluators.BeforeEvaluatorDefinition
 drools.evaluator.after = org.drools.base.evaluators.AfterEvaluatorDefinition
+drools.evaluator.meets = org.drools.base.evaluators.MeetsEvaluatorDefinition
+drools.evaluator.met-by = org.drools.base.evaluators.MetByEvaluatorDefinition
 drools.evaluator.equality = org.drools.base.evaluators.EqualityEvaluatorsDefinition
 drools.evaluator.comparable = org.drools.base.evaluators.ComparableEvaluatorsDefinition
 drools.evaluator.set = org.drools.base.evaluators.SetEvaluatorsDefinition
 drools.evaluator.matches = org.drools.base.evaluators.MatchesEvaluatorsDefinition
-drools.evaluator.soundslike = org.drools.base.evaluators.SoundslikeEvaluatorsDefinition
+drools.evaluator.soundslike = org.drools.base.evaluators.SoundslikeEvaluatorsDefinition
\ No newline at end of file

Modified: labs/jbossrules/branches/temporal_rete/drools-compiler/src/test/java/org/drools/integrationtests/CepEspTest.java
===================================================================
--- labs/jbossrules/branches/temporal_rete/drools-compiler/src/test/java/org/drools/integrationtests/CepEspTest.java	2007-12-10 19:51:52 UTC (rev 17164)
+++ labs/jbossrules/branches/temporal_rete/drools-compiler/src/test/java/org/drools/integrationtests/CepEspTest.java	2007-12-10 20:05:17 UTC (rev 17165)
@@ -119,10 +119,19 @@
         final SessionPseudoClock clock = wm.getSessionClock();
 
         clock.setStartupTime( 1000 );
-        final List results = new ArrayList();
+        final List results_before = new ArrayList();
+        final List results_after = new ArrayList();
+        final List results_meets = new ArrayList();
+        final List results_met_by = new ArrayList();
 
-        wm.setGlobal( "results",
-                      results );
+        wm.setGlobal( "results_before",
+                results_before );
+        wm.setGlobal( "results_after",
+                      results_after );
+        wm.setGlobal( "results_meets",
+                results_meets );
+        wm.setGlobal( "results_met_by",
+                      results_met_by );
 
         StockTick tick1 = new StockTick( 1,
                                          "DROO",
@@ -162,9 +171,25 @@
         wm.fireAllRules();
 
         assertEquals( 1,
-                      results.size() );
+                results_before.size() );
+        assertEquals( tick2,
+                results_before.get( 0 ) );
+        
+        assertEquals( 1,
+                      results_after.size() );
         assertEquals( tick3,
-                      results.get( 0 ) );
+                      results_after.get( 0 ) );
+        
+        assertEquals( 1,
+                results_meets.size() );
+        assertEquals( tick3,
+                results_meets.get( 0 ) );
+        
+        assertEquals( 1,
+                      results_met_by.size() );
+        assertEquals( tick2,
+                      results_met_by.get( 0 ) );
+        
 
     }
 

Modified: labs/jbossrules/branches/temporal_rete/drools-compiler/src/test/resources/org/drools/integrationtests/test_CEP_TimeRelationalOperators.drl
===================================================================
--- labs/jbossrules/branches/temporal_rete/drools-compiler/src/test/resources/org/drools/integrationtests/test_CEP_TimeRelationalOperators.drl	2007-12-10 19:51:52 UTC (rev 17164)
+++ labs/jbossrules/branches/temporal_rete/drools-compiler/src/test/resources/org/drools/integrationtests/test_CEP_TimeRelationalOperators.drl	2007-12-10 20:05:17 UTC (rev 17165)
@@ -2,12 +2,39 @@
 
 import event org.drools.StockTick;
 
-global java.util.List results;
+global java.util.List results_after;
+global java.util.List results_before;
+global java.util.List results_meets;
+global java.util.List results_met_by;
 
+rule "before operator"
+when
+    $a : StockTick( company == "DROO" )
+    $b : StockTick( company == "ACME", this ~before[5,10] $a )
+then
+    results_before.add( $b );
+end
+
 rule "after operator"
 when
     $a : StockTick( company == "DROO" )
     $b : StockTick( company == "ACME", this ~after[5,10] $a )
 then
-    results.add( $b );
+    results_after.add( $b );
+end
+
+rule "meets operator"
+when
+    $a : StockTick( company == "DROO" )
+    $b : StockTick( company == "ACME", this ~meets[4] $a )
+then
+    results_meets.add( $b );
+end
+
+rule "met-by operator"
+when
+    $a : StockTick( company == "DROO" )
+    $b : StockTick( company == "ACME", this ~metby[4] $a )
+then
+    results_met_by.add( $b );
 end
\ No newline at end of file




More information about the jboss-svn-commits mailing list