You are viewing a plain text version of this content. The canonical link for it is here.
Posted to commits@ode.apache.org by ms...@apache.org on 2007/08/15 19:26:51 UTC
svn commit: r566275 -
/ode/branches/bart/bpel-runtime/src/main/java/org/apache/ode/bpel/engine/BpelProcess.java
Author: mszefler
Date: Wed Aug 15 10:26:50 2007
New Revision: 566275
URL: http://svn.apache.org/viewvc?view=rev&rev=566275
Log:
BART: Fixed broken recoverActivity.
Modified:
ode/branches/bart/bpel-runtime/src/main/java/org/apache/ode/bpel/engine/BpelProcess.java
Modified: ode/branches/bart/bpel-runtime/src/main/java/org/apache/ode/bpel/engine/BpelProcess.java
URL: http://svn.apache.org/viewvc/ode/branches/bart/bpel-runtime/src/main/java/org/apache/ode/bpel/engine/BpelProcess.java?view=diff&rev=566275&r1=566274&r2=566275
==============================================================================
--- ode/branches/bart/bpel-runtime/src/main/java/org/apache/ode/bpel/engine/BpelProcess.java (original)
+++ ode/branches/bart/bpel-runtime/src/main/java/org/apache/ode/bpel/engine/BpelProcess.java Wed Aug 15 10:26:50 2007
@@ -174,13 +174,24 @@
return "BpelProcess[" + _pid + "]";
}
- void recoverActivity(ProcessInstanceDAO instanceDAO, String channel, long activityId, String action, FaultData fault) {
+ void recoverActivity(ProcessInstanceDAO instanceDAO, final String channel, final long activityId, final String action, final FaultData fault) {
if (__log.isDebugEnabled())
__log.debug("Recovering activity in process " + instanceDAO.getInstanceId() + " with action " + action);
markused();
- throw new AssertionError("TODO: fixme");// TODO
- // BpelRuntimeContextImpl processInstance = createRuntimeContext(instanceDAO, null, null);
- // processInstance.recoverActivity(channel, activityId, action, fault);
+ BpelInstanceWorker iworker = _instanceWorkerCache.get(instanceDAO.getInstanceId());
+ final BpelRuntimeContextImpl processInstance = new BpelRuntimeContextImpl(iworker,instanceDAO);
+ try {
+ iworker.execInCurrentThread(new Callable<Void> () {
+
+ public Void call() throws Exception {
+ processInstance.recoverActivity(channel, activityId, action, fault);
+ return null;
+ }
+
+ });
+ } catch (Exception e) {
+ throw new BpelEngineException(e);
+ }
}
/**