summaryrefslogtreecommitdiff
path: root/src/main/java/com/c2kernel/lifecycle/instance/predefined/Import.java
diff options
context:
space:
mode:
authorAndrew Branson <andrew.branson@cern.ch>2013-09-20 13:39:01 +0200
committerAndrew Branson <andrew.branson@cern.ch>2013-09-20 13:39:01 +0200
commit28b878fe7ff77be9441d3d8843ed355fbd7629ea (patch)
tree9cf28587dfcc527920d35ece5ea9ab2c2813f466 /src/main/java/com/c2kernel/lifecycle/instance/predefined/Import.java
parentdac66d0b5aac974af565b1924c472866b4956bf4 (diff)
Keep a History object in the Workflow to avoid recreating it on repeated
executions.
Diffstat (limited to 'src/main/java/com/c2kernel/lifecycle/instance/predefined/Import.java')
-rw-r--r--src/main/java/com/c2kernel/lifecycle/instance/predefined/Import.java14
1 files changed, 7 insertions, 7 deletions
diff --git a/src/main/java/com/c2kernel/lifecycle/instance/predefined/Import.java b/src/main/java/com/c2kernel/lifecycle/instance/predefined/Import.java
index 8bcaa45..cbdc33b 100644
--- a/src/main/java/com/c2kernel/lifecycle/instance/predefined/Import.java
+++ b/src/main/java/com/c2kernel/lifecycle/instance/predefined/Import.java
@@ -77,20 +77,20 @@ public class Import extends PredefinedStep
// write event, outcome and viewpoints to storage
int syskey = getItemEntityPath().getSysKey();
TransactionManager storage = Gateway.getStorage();
-
- History hist = new History(syskey, this);
+ Object locker = getWf();
+ History hist = getWf().getHistory();
Event event = hist.addEvent(agent.getAgentName(), getCurrentAgentRole(), transitionID, getName(), getPath(), getType(), schemaName, schemaVersion, viewpoint, getCurrentState(), timestamp);
try {
- storage.put(syskey, new Outcome(event.getID(), requestData, schemaName, schemaVersion), this);
- storage.put(syskey, new Viewpoint(syskey, schemaName, viewpoint, schemaVersion, event.getID()), this);
+ storage.put(syskey, new Outcome(event.getID(), requestData, schemaName, schemaVersion), locker);
+ storage.put(syskey, new Viewpoint(syskey, schemaName, viewpoint, schemaVersion, event.getID()), locker);
if (!"last".equals(viewpoint))
- storage.put(syskey, new Viewpoint(syskey, schemaName, "last", schemaVersion, event.getID()), this);
+ storage.put(syskey, new Viewpoint(syskey, schemaName, "last", schemaVersion, event.getID()), locker);
} catch (ClusterStorageException e) {
Logger.error(e);
- storage.abort(this);
+ storage.abort(locker);
throw new InvalidDataException("Could not store imported outcome. Rolled back.");
}
- storage.commit(this);
+ storage.commit(locker);
}
}