[jboss-svn-commits] JBL Code SVN: r20217 - in labs/jbossrules/trunk/drools-core/src/main/java/org/drools: common and 5 other directories.
jboss-svn-commits at lists.jboss.org
jboss-svn-commits at lists.jboss.org
Thu May 29 11:39:11 EDT 2008
Author: tirelli
Date: 2008-05-29 11:39:11 -0400 (Thu, 29 May 2008)
New Revision: 20217
Added:
labs/jbossrules/trunk/drools-core/src/main/java/org/drools/time/SessionClock.java
Removed:
labs/jbossrules/trunk/drools-core/src/main/java/org/drools/temporal/SessionClock.java
Modified:
labs/jbossrules/trunk/drools-core/src/main/java/org/drools/ClockType.java
labs/jbossrules/trunk/drools-core/src/main/java/org/drools/RuleBaseConfiguration.java
labs/jbossrules/trunk/drools-core/src/main/java/org/drools/TemporalSession.java
labs/jbossrules/trunk/drools-core/src/main/java/org/drools/common/SharedTemporalWorkingMemoryContext.java
labs/jbossrules/trunk/drools-core/src/main/java/org/drools/common/SharedWorkingMemoryContext.java
labs/jbossrules/trunk/drools-core/src/main/java/org/drools/reteoo/ReteooRuleBase.java
labs/jbossrules/trunk/drools-core/src/main/java/org/drools/reteoo/ReteooTemporalSession.java
labs/jbossrules/trunk/drools-core/src/main/java/org/drools/rule/SlidingTimeWindow.java
labs/jbossrules/trunk/drools-core/src/main/java/org/drools/time/impl/SessionPseudoClock.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/ClockType.java
===================================================================
--- labs/jbossrules/trunk/drools-core/src/main/java/org/drools/ClockType.java 2008-05-29 15:24:58 UTC (rev 20216)
+++ labs/jbossrules/trunk/drools-core/src/main/java/org/drools/ClockType.java 2008-05-29 15:39:11 UTC (rev 20217)
@@ -17,7 +17,7 @@
*/
package org.drools;
-import org.drools.temporal.SessionClock;
+import org.drools.time.SessionClock;
import org.drools.time.impl.SessionPseudoClock;
/**
Modified: labs/jbossrules/trunk/drools-core/src/main/java/org/drools/RuleBaseConfiguration.java
===================================================================
--- labs/jbossrules/trunk/drools-core/src/main/java/org/drools/RuleBaseConfiguration.java 2008-05-29 15:24:58 UTC (rev 20216)
+++ labs/jbossrules/trunk/drools-core/src/main/java/org/drools/RuleBaseConfiguration.java 2008-05-29 15:39:11 UTC (rev 20217)
@@ -44,7 +44,7 @@
import org.drools.process.instance.impl.ContextInstanceFactoryRegistry;
import org.drools.spi.ConflictResolver;
import org.drools.spi.ConsequenceExceptionHandler;
-import org.drools.temporal.SessionClock;
+import org.drools.time.SessionClock;
import org.drools.time.impl.SessionPseudoClock;
import org.drools.util.ChainedProperties;
import org.drools.util.ClassUtils;
Modified: labs/jbossrules/trunk/drools-core/src/main/java/org/drools/TemporalSession.java
===================================================================
--- labs/jbossrules/trunk/drools-core/src/main/java/org/drools/TemporalSession.java 2008-05-29 15:24:58 UTC (rev 20216)
+++ labs/jbossrules/trunk/drools-core/src/main/java/org/drools/TemporalSession.java 2008-05-29 15:39:11 UTC (rev 20217)
@@ -17,7 +17,7 @@
*/
package org.drools;
-import org.drools.temporal.SessionClock;
+import org.drools.time.SessionClock;
/**
* A StatefulTemporalSession is a stateful session with
Modified: labs/jbossrules/trunk/drools-core/src/main/java/org/drools/common/SharedTemporalWorkingMemoryContext.java
===================================================================
--- labs/jbossrules/trunk/drools-core/src/main/java/org/drools/common/SharedTemporalWorkingMemoryContext.java 2008-05-29 15:24:58 UTC (rev 20216)
+++ labs/jbossrules/trunk/drools-core/src/main/java/org/drools/common/SharedTemporalWorkingMemoryContext.java 2008-05-29 15:39:11 UTC (rev 20217)
@@ -14,7 +14,7 @@
import org.drools.rule.TimeMachine;
import org.drools.spi.FactHandleFactory;
import org.drools.spi.GlobalResolver;
-import org.drools.temporal.SessionClock;
+import org.drools.time.SessionClock;
public class SharedTemporalWorkingMemoryContext<T extends SessionClock> extends SharedWorkingMemoryContext {
protected T sessionClock;
Modified: labs/jbossrules/trunk/drools-core/src/main/java/org/drools/common/SharedWorkingMemoryContext.java
===================================================================
--- labs/jbossrules/trunk/drools-core/src/main/java/org/drools/common/SharedWorkingMemoryContext.java 2008-05-29 15:24:58 UTC (rev 20216)
+++ labs/jbossrules/trunk/drools-core/src/main/java/org/drools/common/SharedWorkingMemoryContext.java 2008-05-29 15:39:11 UTC (rev 20217)
@@ -14,7 +14,7 @@
import org.drools.rule.TimeMachine;
import org.drools.spi.FactHandleFactory;
import org.drools.spi.GlobalResolver;
-import org.drools.temporal.SessionClock;
+import org.drools.time.SessionClock;
public class SharedWorkingMemoryContext {
protected InternalRuleBase ruleBase;
Modified: labs/jbossrules/trunk/drools-core/src/main/java/org/drools/reteoo/ReteooRuleBase.java
===================================================================
--- labs/jbossrules/trunk/drools-core/src/main/java/org/drools/reteoo/ReteooRuleBase.java 2008-05-29 15:24:58 UTC (rev 20216)
+++ labs/jbossrules/trunk/drools-core/src/main/java/org/drools/reteoo/ReteooRuleBase.java 2008-05-29 15:39:11 UTC (rev 20217)
@@ -58,7 +58,7 @@
import org.drools.spi.ExecutorServiceFactory;
import org.drools.spi.FactHandleFactory;
import org.drools.spi.PropagationContext;
-import org.drools.temporal.SessionClock;
+import org.drools.time.SessionClock;
/**
* Implementation of <code>RuleBase</code>.
Modified: labs/jbossrules/trunk/drools-core/src/main/java/org/drools/reteoo/ReteooTemporalSession.java
===================================================================
--- labs/jbossrules/trunk/drools-core/src/main/java/org/drools/reteoo/ReteooTemporalSession.java 2008-05-29 15:24:58 UTC (rev 20216)
+++ labs/jbossrules/trunk/drools-core/src/main/java/org/drools/reteoo/ReteooTemporalSession.java 2008-05-29 15:39:11 UTC (rev 20217)
@@ -26,7 +26,7 @@
import org.drools.concurrent.ExecutorService;
import org.drools.marshalling.MarshallerReaderContext;
import org.drools.marshalling.MarshallerWriteContext;
-import org.drools.temporal.SessionClock;
+import org.drools.time.SessionClock;
/**
* ReteooStatefulTemporalSession implements a temporal enabled session
Modified: labs/jbossrules/trunk/drools-core/src/main/java/org/drools/rule/SlidingTimeWindow.java
===================================================================
--- labs/jbossrules/trunk/drools-core/src/main/java/org/drools/rule/SlidingTimeWindow.java 2008-05-29 15:24:58 UTC (rev 20216)
+++ labs/jbossrules/trunk/drools-core/src/main/java/org/drools/rule/SlidingTimeWindow.java 2008-05-29 15:39:11 UTC (rev 20217)
@@ -31,7 +31,7 @@
import org.drools.reteoo.ReteooTemporalSession;
import org.drools.reteoo.RightTuple;
import org.drools.spi.PropagationContext;
-import org.drools.temporal.SessionClock;
+import org.drools.time.SessionClock;
/**
* @author etirelli
Deleted: labs/jbossrules/trunk/drools-core/src/main/java/org/drools/temporal/SessionClock.java
===================================================================
--- labs/jbossrules/trunk/drools-core/src/main/java/org/drools/temporal/SessionClock.java 2008-05-29 15:24:58 UTC (rev 20216)
+++ labs/jbossrules/trunk/drools-core/src/main/java/org/drools/temporal/SessionClock.java 2008-05-29 15:39:11 UTC (rev 20217)
@@ -1,75 +0,0 @@
-/*
- * Copyright 2007 JBoss Inc
- *
- * 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.
- *
- * Created on Oct 17, 2007
- */
-package org.drools.temporal;
-
-import java.io.Externalizable;
-
-import org.drools.TemporalSession;
-import org.drools.rule.Behavior;
-
-/**
- * A clock interface that all engine clocks must implement
- *
- * @author etirelli
- */
-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
- * implementation. For isntance, for a real clock it may be
- * milliseconds.
- *
- * @return The current time. The unit of the time, depends on
- * the actual clock implementation.
- *
- */
- public long getCurrentTime();
-
- /**
- * Schedule a call back to the given behavior at the given
- * timestamp. If a callback was already registered for the
- * given behavior, update the existing record to the new
- * timestamp.
- *
- * @param behavior
- * @param timestamp
- */
- public void schedule(Behavior behavior,
- Object behaviorContext,
- long timestamp);
-
- /**
- * Unschedule any existing call back for the given behavior
- *
- * @param behavior
- */
- public void unschedule(Behavior behavior);
-
- /**
- * Sets the temporal session associated with this clock
- *
- * @param session the session to set
- */
- public void setSession(TemporalSession<? extends SessionClock> session);
-
-
-
-}
Copied: labs/jbossrules/trunk/drools-core/src/main/java/org/drools/time/SessionClock.java (from rev 20208, labs/jbossrules/trunk/drools-core/src/main/java/org/drools/temporal/SessionClock.java)
===================================================================
--- labs/jbossrules/trunk/drools-core/src/main/java/org/drools/time/SessionClock.java (rev 0)
+++ labs/jbossrules/trunk/drools-core/src/main/java/org/drools/time/SessionClock.java 2008-05-29 15:39:11 UTC (rev 20217)
@@ -0,0 +1,75 @@
+/*
+ * Copyright 2007 JBoss Inc
+ *
+ * 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.
+ *
+ * Created on Oct 17, 2007
+ */
+package org.drools.time;
+
+import java.io.Externalizable;
+
+import org.drools.TemporalSession;
+import org.drools.rule.Behavior;
+
+/**
+ * A clock interface that all engine clocks must implement
+ *
+ * @author etirelli
+ */
+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
+ * implementation. For isntance, for a real clock it may be
+ * milliseconds.
+ *
+ * @return The current time. The unit of the time, depends on
+ * the actual clock implementation.
+ *
+ */
+ public long getCurrentTime();
+
+ /**
+ * Schedule a call back to the given behavior at the given
+ * timestamp. If a callback was already registered for the
+ * given behavior, update the existing record to the new
+ * timestamp.
+ *
+ * @param behavior
+ * @param timestamp
+ */
+ public void schedule(Behavior behavior,
+ Object behaviorContext,
+ long timestamp);
+
+ /**
+ * Unschedule any existing call back for the given behavior
+ *
+ * @param behavior
+ */
+ public void unschedule(Behavior behavior);
+
+ /**
+ * Sets the temporal session associated with this clock
+ *
+ * @param session the session to set
+ */
+ public void setSession(TemporalSession<? extends SessionClock> session);
+
+
+
+}
Modified: labs/jbossrules/trunk/drools-core/src/main/java/org/drools/time/impl/SessionPseudoClock.java
===================================================================
--- labs/jbossrules/trunk/drools-core/src/main/java/org/drools/time/impl/SessionPseudoClock.java 2008-05-29 15:24:58 UTC (rev 20216)
+++ labs/jbossrules/trunk/drools-core/src/main/java/org/drools/time/impl/SessionPseudoClock.java 2008-05-29 15:39:11 UTC (rev 20217)
@@ -31,7 +31,7 @@
import org.drools.marshalling.MarshallerWriteContext;
import org.drools.reteoo.ReteooTemporalSession;
import org.drools.rule.Behavior;
-import org.drools.temporal.SessionClock;
+import org.drools.time.SessionClock;
/**
* A SessionPseudoClock is a clock that allows the user to explicitly
More information about the jboss-svn-commits
mailing list