diff options
| author | Zsolt Kovcs <zs.myth@gmail.com> | 2014-09-26 21:04:09 +0200 |
|---|---|---|
| committer | Zsolt Kovcs <zs.myth@gmail.com> | 2014-09-26 21:04:09 +0200 |
| commit | 0afb759c8fc8fb89b8f1d5eba29b86ced3a4d408 (patch) | |
| tree | 5dcda0f07edbb7bcf94759f66eae17cb024e9085 | |
| parent | bd8d00d0d56761323f5652207770f994580d791b (diff) | |
Update is due to Lookup and ItemProxy API changes
| -rw-r--r-- | src/main/resources/boot/SC/SetWorkflow.xml | 82 |
1 files changed, 41 insertions, 41 deletions
diff --git a/src/main/resources/boot/SC/SetWorkflow.xml b/src/main/resources/boot/SC/SetWorkflow.xml index 704d732..be8fbe6 100644 --- a/src/main/resources/boot/SC/SetWorkflow.xml +++ b/src/main/resources/boot/SC/SetWorkflow.xml @@ -2,49 +2,49 @@ <cristalscript>
<output name="errors" type="com.c2kernel.scripting.ErrorInfo" />
<script language="javascript" name="SetWorkflow"><![CDATA[
-
importClass(Packages.com.c2kernel.lookup.DomainPath); - - // Fetch the requested name from the outcome field
- var wfDefName = job.getOutcome().getField("WorkflowDefinitionName");
- var wfDefVersion = job.getOutcome().getField("WorkflowDefinitionVersion"); - // Look up the description
- var root = new DomainPath("/desc/ActivityDesc"); - var wfItem; - try { - var wfPath = root.find(wfDefName); - wfItem = agent.getItem(wfPath); - } catch (e) {
- throw wfDefName+" is not a valid item";
- } +
// Fetch the requested name from the outcome field
+ var wfDefName = job.getOutcome().getField("WorkflowDefinitionName");
+ var wfDefVersion = job.getOutcome().getField("WorkflowDefinitionVersion");
- // Make sure it has the right properties to be a composite activity desc - var itemType = wfItem.getProperty("Type"); - var complex = wfItem.getProperty("Complexity"); - if (!itemType.equals("ActivityDesc")) - throw wfDefName+" is not an activity description"; - if (!complex.equals("Composite")) - throw wfDefName+" is not a composite activity description";
-
- // Check that the named version exists
- try {
- var view = wfItem.getObject("/ViewPoint/CompositeActivityDef/"+wfDefVersion);
- } catch (e) {
- throw wfDefName + " does not contain a version "+wfDefVersion;
- } + // Look up the description
+ var wfItem;
+ try {
+ wfItem = agent.searchItem(wfDefName);
+ } catch (e) {
+ throw wfDefName+" is not a valid item; Exception - " + e;
+ }
- // Fetch the 'Workflow' collection
- var coll = item.getObject("/Collection/workflow"); - if (coll.size() > 0) { // if there's already a member, remove it - var member = coll.getMembers().list.get(0); - coll.removeMember(member.getID()); - } - // add the new member
- var cm = coll.addMember(wfItem.getSystemKey());
- cm.getProperties().put("Version", wfDefVersion); - // save it back to the item - var params = new Array(1); - params[0] = agent.marshall(coll); - agent.execute(item, "AddC2KObject", params); + // Make sure it has the right properties to be a composite activity desc
+ var itemType = wfItem.getProperty("Type");
+ var complex = wfItem.getProperty("Complexity");
+
+ if (!itemType.equals("ActivityDesc"))
+ throw wfDefName+" is not an activity description";
+ if (!complex.equals("Composite"))
+ throw wfDefName+" is not a composite activity description";
+
+ // Check that the named version exists
+ try {
+ var view = wfItem.getObject("/ViewPoint/CompositeActivityDef/"+wfDefVersion);
+ } catch (e) {
+ throw wfDefName + " does not contain a version "+wfDefVersion + "; Exception - " + e;
+ }
+
+ // Fetch the 'Workflow' collection
+ var coll = item.getObject("/Collection/workflow");
+ if (coll.size() > 0) { // if there's already a member, remove it
+ var member = coll.getMembers().list.get(0);
+ coll.removeMember(member.getID());
+ }
+
+ // add the new member
+ var cm = coll.addMember(wfItem.getPath());
+ cm.getProperties().put("Version", wfDefVersion);
+
+ // save it back to the item
+ var params = new Array(1);
+ params[0] = agent.marshall(coll);
+ agent.execute(item, "AddC2KObject", params);
]]></script>
</cristalscript>
|
