[jboss-svn-commits] JBL Code SVN: r20219 - in labs/jbossrules/trunk/drools-core/src: main/java/org/drools/time and 2 other directories.

jboss-svn-commits at lists.jboss.org jboss-svn-commits at lists.jboss.org
Thu May 29 13:25:38 EDT 2008


Author: tirelli
Date: 2008-05-29 13:25:37 -0400 (Thu, 29 May 2008)
New Revision: 20219

Added:
   labs/jbossrules/trunk/drools-core/src/main/java/org/drools/time/TimerService.java
Removed:
   labs/jbossrules/trunk/drools-core/src/main/java/org/drools/time/TimeServices.java
Modified:
   labs/jbossrules/trunk/drools-core/src/main/java/org/drools/process/instance/timer/TimerManager.java
   labs/jbossrules/trunk/drools-core/src/main/java/org/drools/time/SchedulerFactory.java
   labs/jbossrules/trunk/drools-core/src/main/java/org/drools/time/impl/JDKScheduler.java
   labs/jbossrules/trunk/drools-core/src/test/java/org/drools/scheduler/impl/jdk/JDKSchedulerTest.java
Log:
JBRULES-1625: refactoring scheduler API to unify it with CEP clock API

Modified: labs/jbossrules/trunk/drools-core/src/main/java/org/drools/process/instance/timer/TimerManager.java
===================================================================
--- labs/jbossrules/trunk/drools-core/src/main/java/org/drools/process/instance/timer/TimerManager.java	2008-05-29 17:20:52 UTC (rev 20218)
+++ labs/jbossrules/trunk/drools-core/src/main/java/org/drools/process/instance/timer/TimerManager.java	2008-05-29 17:25:37 UTC (rev 20219)
@@ -8,7 +8,7 @@
 import org.drools.time.Job;
 import org.drools.time.JobContext;
 import org.drools.time.JobHandle;
-import org.drools.time.TimeServices;
+import org.drools.time.TimerService;
 import org.drools.time.SchedulerFactory;
 import org.drools.time.Trigger;
 
@@ -16,7 +16,7 @@
     private long                        timerId    = 0;
 
     private WorkingMemory               workingMemory;
-    private TimeServices                   scheduler;
+    private TimerService                   scheduler;
 
     public TimerManager(WorkingMemory workingMemory) {
         this.workingMemory = workingMemory;

Modified: labs/jbossrules/trunk/drools-core/src/main/java/org/drools/time/SchedulerFactory.java
===================================================================
--- labs/jbossrules/trunk/drools-core/src/main/java/org/drools/time/SchedulerFactory.java	2008-05-29 17:20:52 UTC (rev 20218)
+++ labs/jbossrules/trunk/drools-core/src/main/java/org/drools/time/SchedulerFactory.java	2008-05-29 17:25:37 UTC (rev 20219)
@@ -3,9 +3,9 @@
 import org.drools.time.impl.JDKScheduler;
 
 public class SchedulerFactory {
-    private static TimeServices scheduler = new JDKScheduler();
+    private static TimerService scheduler = new JDKScheduler();
     
-    public static TimeServices getScheduler() {
+    public static TimerService getScheduler() {
         return scheduler;
     }
 }

Deleted: labs/jbossrules/trunk/drools-core/src/main/java/org/drools/time/TimeServices.java
===================================================================
--- labs/jbossrules/trunk/drools-core/src/main/java/org/drools/time/TimeServices.java	2008-05-29 17:20:52 UTC (rev 20218)
+++ labs/jbossrules/trunk/drools-core/src/main/java/org/drools/time/TimeServices.java	2008-05-29 17:25:37 UTC (rev 20219)
@@ -1,54 +0,0 @@
-/*
- * Copyright 2008 Red Hat
- * 
- * Licensed under the Apache License, Version 2.0 (the "License");
- * you may not use this file except in compliance with the License.
- * You may obtain a copy of the License at
- * 
- *      http://www.apache.org/licenses/LICENSE-2.0
- * 
- * Unless required by applicable law or agreed to in writing, software
- * distributed under the License is distributed on an "AS IS" BASIS,
- * WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied.
- * See the License for the specific language governing permissions and
- * limitations under the License.
- *
- */
-package org.drools.time;
-
-/**
- * An interface for all schedulers used in a drools session.
- * 
- */
-public interface TimeServices {
-    
-    /**
-     * Returns the current time from the scheduler clock
-     * 
-     * @return the current timestamp
-     * 
-     */
-    public long getCurrentTime();
-    
-    /**
-     * Schedule a job for later execution
-     * 
-     * @param job
-     * @param ctx
-     * @param trigger
-     * 
-     * @return
-     */
-	public JobHandle scheduleJob(Job job, JobContext ctx, Trigger trigger);
-	
-	/**
-	 * Remove the job identified by the given job handle from the 
-	 * scheduled queue
-	 * 
-	 * @param jobHandle the job identity handle
-	 * 
-	 * @return
-	 */
-	public boolean removeJob(JobHandle jobHandle);
-	
-}

Copied: labs/jbossrules/trunk/drools-core/src/main/java/org/drools/time/TimerService.java (from rev 20215, labs/jbossrules/trunk/drools-core/src/main/java/org/drools/time/TimeServices.java)
===================================================================
--- labs/jbossrules/trunk/drools-core/src/main/java/org/drools/time/TimerService.java	                        (rev 0)
+++ labs/jbossrules/trunk/drools-core/src/main/java/org/drools/time/TimerService.java	2008-05-29 17:25:37 UTC (rev 20219)
@@ -0,0 +1,54 @@
+/*
+ * Copyright 2008 Red Hat
+ * 
+ * Licensed under the Apache License, Version 2.0 (the "License");
+ * you may not use this file except in compliance with the License.
+ * You may obtain a copy of the License at
+ * 
+ *      http://www.apache.org/licenses/LICENSE-2.0
+ * 
+ * Unless required by applicable law or agreed to in writing, software
+ * distributed under the License is distributed on an "AS IS" BASIS,
+ * WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied.
+ * See the License for the specific language governing permissions and
+ * limitations under the License.
+ *
+ */
+package org.drools.time;
+
+/**
+ * An interface for all timer service implementations used in a drools session.
+ * 
+ */
+public interface TimerService {
+    
+    /**
+     * Returns the current time from the scheduler clock
+     * 
+     * @return the current timestamp
+     * 
+     */
+    public long getCurrentTime();
+    
+    /**
+     * Schedule a job for later execution
+     * 
+     * @param job
+     * @param ctx
+     * @param trigger
+     * 
+     * @return
+     */
+	public JobHandle scheduleJob(Job job, JobContext ctx, Trigger trigger);
+	
+	/**
+	 * Remove the job identified by the given job handle from the 
+	 * scheduled queue
+	 * 
+	 * @param jobHandle the job identity handle
+	 * 
+	 * @return
+	 */
+	public boolean removeJob(JobHandle jobHandle);
+	
+}

Modified: labs/jbossrules/trunk/drools-core/src/main/java/org/drools/time/impl/JDKScheduler.java
===================================================================
--- labs/jbossrules/trunk/drools-core/src/main/java/org/drools/time/impl/JDKScheduler.java	2008-05-29 17:20:52 UTC (rev 20218)
+++ labs/jbossrules/trunk/drools-core/src/main/java/org/drools/time/impl/JDKScheduler.java	2008-05-29 17:25:37 UTC (rev 20219)
@@ -25,7 +25,7 @@
 import org.drools.time.Job;
 import org.drools.time.JobContext;
 import org.drools.time.JobHandle;
-import org.drools.time.TimeServices;
+import org.drools.time.TimerService;
 import org.drools.time.Trigger;
 
 /**
@@ -36,7 +36,7 @@
  */
 public class JDKScheduler
     implements
-    TimeServices {
+    TimerService {
     private ScheduledThreadPoolExecutor scheduler;
 
     public JDKScheduler() {

Modified: labs/jbossrules/trunk/drools-core/src/test/java/org/drools/scheduler/impl/jdk/JDKSchedulerTest.java
===================================================================
--- labs/jbossrules/trunk/drools-core/src/test/java/org/drools/scheduler/impl/jdk/JDKSchedulerTest.java	2008-05-29 17:20:52 UTC (rev 20218)
+++ labs/jbossrules/trunk/drools-core/src/test/java/org/drools/scheduler/impl/jdk/JDKSchedulerTest.java	2008-05-29 17:25:37 UTC (rev 20219)
@@ -10,14 +10,14 @@
 import org.drools.time.Job;
 import org.drools.time.JobContext;
 import org.drools.time.JobHandle;
-import org.drools.time.TimeServices;
+import org.drools.time.TimerService;
 import org.drools.time.SchedulerFactory;
 import org.drools.time.Trigger;
 
 public class JDKSchedulerTest extends TestCase {
     
     public void test1() throws Exception {
-        TimeServices scheduler = SchedulerFactory.getScheduler(); 
+        TimerService scheduler = SchedulerFactory.getScheduler(); 
         Trigger trigger = new DelayedTrigger( 100 );
         HelloWorldJobContext ctx = new HelloWorldJobContext( "hello world", scheduler);
         scheduler.scheduleJob( new HelloWorldJob(), ctx,  trigger);        
@@ -26,7 +26,7 @@
     }    
     
     public void test2() throws Exception {
-        TimeServices scheduler = SchedulerFactory.getScheduler(); 
+        TimerService scheduler = SchedulerFactory.getScheduler(); 
         Trigger trigger = new DelayedTrigger(  new long[] { 100, 100, 100} );
         HelloWorldJobContext ctx = new HelloWorldJobContext( "hello world", scheduler);
         scheduler.scheduleJob( new HelloWorldJob(), ctx,  trigger);        
@@ -37,7 +37,7 @@
         
     
 	public void test3() throws Exception {
-        TimeServices scheduler = SchedulerFactory.getScheduler();
+        TimerService scheduler = SchedulerFactory.getScheduler();
 		Trigger trigger = new DelayedTrigger( new long[] { 100, 100, 100, 100, 100 } );
 		HelloWorldJobContext ctx = new HelloWorldJobContext( "hello world", scheduler);
 		ctx.setLimit( 3 );
@@ -60,7 +60,7 @@
 	
 	public static class HelloWorldJobContext implements JobContext {
 	    private String message;
-	    private  TimeServices scheduler;
+	    private  TimerService scheduler;
 	    private JobHandle jobHandle;
 	    
 	    private List list;
@@ -68,7 +68,7 @@
 	    private int counter;	    
 	    private int limit;
 	    
-	    public HelloWorldJobContext(String message, TimeServices scheduler) {
+	    public HelloWorldJobContext(String message, TimerService scheduler) {
 	        this.message = message;
 	        this.scheduler = scheduler;
 	        this.list = new ArrayList();




More information about the jboss-svn-commits mailing list