+ Node realizedFlowNode = nit.nextNode();
+
+ // set status on realized flow
+ realizedFlowNode.setProperty(SLC_STATUS,
+ ExecutionProcess.RUNNING);
+ realizedFlowNode.getSession().save();
+ try {
+ execute(realizedFlowNode);
+
+ // set status on realized flow
+ realizedFlowNode.setProperty(SLC_STATUS,
+ ExecutionProcess.COMPLETED);
+ realizedFlowNode.getSession().save();
+ } catch (RepositoryException e) {
+ throw e;
+ } catch (InterruptedException e) {
+ // set status on realized flow
+ realizedFlowNode.setProperty(SLC_STATUS,
+ ExecutionProcess.KILLED);
+ realizedFlowNode.getSession().save();
+ throw e;
+ } catch (RuntimeException e) {
+ // set status on realized flow
+ realizedFlowNode.setProperty(SLC_STATUS,
+ ExecutionProcess.ERROR);
+ realizedFlowNode.getSession().save();
+ throw e;
+ }