From f7df981d031e360b379b86d9aefdde15b918b21f Mon Sep 17 00:00:00 2001 From: Andrew Branson Date: Mon, 25 Aug 2014 13:53:33 +0200 Subject: Require integers for all resource versions --- .../lifecycle/instance/predefined/CreateItemFromDescription.java | 7 +++++-- .../lifecycle/instance/predefined/entitycreation/NewItem.java | 2 +- 2 files changed, 6 insertions(+), 3 deletions(-) (limited to 'src/main/java/com/c2kernel/lifecycle/instance') diff --git a/src/main/java/com/c2kernel/lifecycle/instance/predefined/CreateItemFromDescription.java b/src/main/java/com/c2kernel/lifecycle/instance/predefined/CreateItemFromDescription.java index 77a3aa5..b80b3cd 100644 --- a/src/main/java/com/c2kernel/lifecycle/instance/predefined/CreateItemFromDescription.java +++ b/src/main/java/com/c2kernel/lifecycle/instance/predefined/CreateItemFromDescription.java @@ -63,6 +63,7 @@ public class CreateItemFromDescription extends PredefinedStep CompositeActivityDef wfDef; String wfDefName = null; String wfDefVer = null; + if (input.length > 2) // override wf wfDefName = input[2]; @@ -108,11 +109,13 @@ public class CreateItemFromDescription extends PredefinedStep throw new InvalidDataException("No workflow def version given",""); try { - wfDef = (CompositeActivityDef)LocalObjectLoader.getActDef(wfDefName, wfDefVer); + wfDef = (CompositeActivityDef)LocalObjectLoader.getActDef(wfDefName, Integer.valueOf(wfDefVer)); } catch (ObjectNotFoundException ex) { - throw new InvalidDataException("Workflow def '"+wfDefName+"' v"+wfDefVer+" item not found", ""); + throw new InvalidDataException("Workflow def '"+wfDefName+"' v"+wfDefVer+" not found", ""); } catch (ClassCastException ex) { throw new InvalidDataException("Activity def '"+wfDefName+"' v"+wfDefVer+" was not Composite", ""); + } catch (NumberFormatException ex) { + throw new InvalidDataException("Workflow def version '"+wfDefVer+"' given for def '"+wfDefName+"' was not an integer", ""); } diff --git a/src/main/java/com/c2kernel/lifecycle/instance/predefined/entitycreation/NewItem.java b/src/main/java/com/c2kernel/lifecycle/instance/predefined/entitycreation/NewItem.java index 0856580..6c3abf1 100644 --- a/src/main/java/com/c2kernel/lifecycle/instance/predefined/entitycreation/NewItem.java +++ b/src/main/java/com/c2kernel/lifecycle/instance/predefined/entitycreation/NewItem.java @@ -87,7 +87,7 @@ public class NewItem extends ModuleImport { try { // find workflow def - CompositeActivityDef compact = (CompositeActivityDef)LocalObjectLoader.getActDef(workflow, "0"); + CompositeActivityDef compact = (CompositeActivityDef)LocalObjectLoader.getActDef(workflow, 0); newItem.initialise( agentId, Gateway.getMarshaller().marshall(new PropertyArrayList(properties)), -- cgit v1.2.3