Updated Branches:
  refs/heads/ode-1.3.6.x 56bb4f759 -> 96551b9ba

ODE-973: repeatEvery will wait for the duration to elapse before firing during 
the first iteration


Project: http://git-wip-us.apache.org/repos/asf/ode/repo
Commit: http://git-wip-us.apache.org/repos/asf/ode/commit/96551b9b
Tree: http://git-wip-us.apache.org/repos/asf/ode/tree/96551b9b
Diff: http://git-wip-us.apache.org/repos/asf/ode/diff/96551b9b

Branch: refs/heads/ode-1.3.6.x
Commit: 96551b9ba2ec4b9ce91a4aee3ea51669da0209b4
Parents: 56bb4f7
Author: sathwik <[email protected]>
Authored: Wed Aug 28 01:17:31 2013 +0530
Committer: sathwik <[email protected]>
Committed: Wed Aug 28 01:17:31 2013 +0530

----------------------------------------------------------------------
 .../main/java/org/apache/ode/bpel/runtime/EH_ALARM.java   | 10 ++++++++++
 1 file changed, 10 insertions(+)
----------------------------------------------------------------------


http://git-wip-us.apache.org/repos/asf/ode/blob/96551b9b/bpel-runtime/src/main/java/org/apache/ode/bpel/runtime/EH_ALARM.java
----------------------------------------------------------------------
diff --git 
a/bpel-runtime/src/main/java/org/apache/ode/bpel/runtime/EH_ALARM.java 
b/bpel-runtime/src/main/java/org/apache/ode/bpel/runtime/EH_ALARM.java
index 6bfc49d..edbf9ce 100644
--- a/bpel-runtime/src/main/java/org/apache/ode/bpel/runtime/EH_ALARM.java
+++ b/bpel-runtime/src/main/java/org/apache/ode/bpel/runtime/EH_ALARM.java
@@ -103,6 +103,16 @@ class EH_ALARM extends BpelJacobRunnable {
                 _psc.completed(createFault(e.getQName(),_oalarm.untilExpr), 
_comps);
                 return;
             }
+        else if (_oalarm.repeatExpr != null)
+            try {
+                
getBpelRuntimeContext().getExpLangRuntime().evaluateAsDuration(_oalarm.repeatExpr,
 getEvaluationContext()).addTo(alarm);
+            } catch (EvaluationException e) {
+                throw new InvalidProcessException(e);
+            } catch (FaultException e) {
+                __log.error(e);
+                _psc.completed(createFault(e.getQName(),_oalarm.repeatExpr), 
_comps);
+                return;
+            }
 
         // We reduce to waiting for the alarm to be triggered.
         instance(new WAIT(alarm));

Reply via email to