From 37bb1907aca2a3246a7b5d759df79b7fd97c276f Mon Sep 17 00:00:00 2001 From: Andrew Branson Date: Thu, 5 Dec 2013 12:57:16 +0100 Subject: Add itemSysKey as a variable of the workflow during initialization. Use this for creating the shared History map. Lock event writing on the Workflow rather than the Activity to keep the History in the transaction. --- .../java/com/c2kernel/lifecycle/instance/predefined/Import.java | 8 ++++---- 1 file changed, 4 insertions(+), 4 deletions(-) (limited to 'src/main/java/com/c2kernel/lifecycle/instance/predefined') 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 9b25546..29d4c54 100644 --- a/src/main/java/com/c2kernel/lifecycle/instance/predefined/Import.java +++ b/src/main/java/com/c2kernel/lifecycle/instance/predefined/Import.java @@ -76,16 +76,16 @@ public class Import extends PredefinedStep Event event = hist.addEvent(agent.getAgentName(), getCurrentAgentRole(), getName(), getPath(), getType(), schemaName, schemaVersion, getStateMachine().getName(), getStateMachine().getVersion(), getStateMachine().getTransition(transitionID), viewpoint, timestamp); try { - storage.put(itemSysKey, new Outcome(event.getID(), requestData, schemaName, schemaVersion), this); - storage.put(itemSysKey, new Viewpoint(itemSysKey, schemaName, viewpoint, schemaVersion, event.getID()), this); + storage.put(itemSysKey, new Outcome(event.getID(), requestData, schemaName, schemaVersion), locker); + storage.put(itemSysKey, new Viewpoint(itemSysKey, schemaName, viewpoint, schemaVersion, event.getID()), locker); if (!"last".equals(viewpoint)) - storage.put(itemSysKey, new Viewpoint(itemSysKey, schemaName, "last", schemaVersion, event.getID()), this); + storage.put(itemSysKey, new Viewpoint(itemSysKey, schemaName, "last", schemaVersion, event.getID()), locker); } catch (ClusterStorageException e) { Logger.error(e); storage.abort(locker); throw new InvalidDataException("Could not store imported outcome. Rolled back."); } - storage.commit(this); + storage.commit(locker); return requestData; } } -- cgit v1.2.3