summaryrefslogtreecommitdiff
path: root/resources/boot/SC/SetWorkflow.xml
diff options
context:
space:
mode:
authorabranson <abranson@PCUWE01.cern.ch>2012-04-26 00:31:26 +0200
committerabranson <abranson@PCUWE01.cern.ch>2012-04-26 00:31:26 +0200
commiteac30db6329f05cc7cf2a35613497e357b4db3aa (patch)
tree427d12973863e4bc3790b0f6e06f58bb65667651 /resources/boot/SC/SetWorkflow.xml
parent3ffa8ec426702e8cf95df2a6840f80a27fba3b3e (diff)
Update for javax.script
Diffstat (limited to 'resources/boot/SC/SetWorkflow.xml')
-rw-r--r--resources/boot/SC/SetWorkflow.xml56
1 files changed, 22 insertions, 34 deletions
diff --git a/resources/boot/SC/SetWorkflow.xml b/resources/boot/SC/SetWorkflow.xml
index 5dbfa6d..88a061f 100644
--- a/resources/boot/SC/SetWorkflow.xml
+++ b/resources/boot/SC/SetWorkflow.xml
@@ -1,14 +1,9 @@
<?xml version="1.0" encoding="UTF-8"?>
<cristalscript>
<output name="errors" type="com.c2kernel.scripting.ErrorInfo"/>
- <script language="javascript" name=""><![CDATA[
+ <script language="javascript" name="SetWorkflow"><![CDATA[
importClass(Packages.com.c2kernel.lookup.DomainPath);
- var job = bsf.lookupBean("job");
- var item = bsf.lookupBean("item");
- var agent = bsf.lookupBean("agent");
- var errorBuffer = bsf.lookupBean("errors");
-
// Fetch the requested name from the outcome field
var wfDefName = job.getOutcome().getField("WorkflowDefinitionName");
// Look up the description
@@ -17,37 +12,30 @@
try {
var wfPath = root.find(wfDefName);
wfItem = agent.getItem(wfPath);
- } catch (e) { errorBuffer.addError(wfDefName+" is not a valid item"); errorBuffer.setFatal(); }
+ } catch (e) {
+ throw wfDefName+" is not a valid item";
+ }
// Make sure it has the right properties to be a composite activity desc
- if (!errorBuffer.getFatal()) {
- var itemType = wfItem.getProperty("Type");
- var complex = wfItem.getProperty("Complexity");
- if (!itemType.equals("ActivityDesc")) {
- errorBuffer.addError(wfDefName+" is not an activity description");
- errorBuffer.setFatal();
- }
- if (!complex.equals("Composite")) {
- errorBuffer.addError(wfDefName+" is not a composite activity description");
- errorBuffer.setFatal();
- }
- }
+ 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";
- if (!errorBuffer.getFatal()) {
- // 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
- coll.addMember(wfItem.getSystemKey());
- // save it back to the item
- var params = new Array(1);
- params[0] = agent.marshall(coll);
- agent.execute(item, "AddC2KObject", params);
+ // 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());
}
-
- errorBuffer;
+ // add the new member
+ coll.addMember(wfItem.getSystemKey());
+ // save it back to the item
+ var params = new Array(1);
+ params[0] = agent.marshall(coll);
+ agent.execute(item, "AddC2KObject", params);
+
]]></script>
</cristalscript>