summaryrefslogtreecommitdiff
path: root/resources/boot/SC
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
parent3ffa8ec426702e8cf95df2a6840f80a27fba3b3e (diff)
Update for javax.script
Diffstat (limited to 'resources/boot/SC')
-rw-r--r--resources/boot/SC/CreateNewNumberedVersionFromLast.xml44
-rw-r--r--resources/boot/SC/InstantiateItem.xml11
-rw-r--r--resources/boot/SC/LocalObjectDefCreator.xml59
-rw-r--r--resources/boot/SC/New.xml6
-rw-r--r--resources/boot/SC/SetWorkflow.xml56
5 files changed, 65 insertions, 111 deletions
diff --git a/resources/boot/SC/CreateNewNumberedVersionFromLast.xml b/resources/boot/SC/CreateNewNumberedVersionFromLast.xml
index bb66f4c..321855a 100644
--- a/resources/boot/SC/CreateNewNumberedVersionFromLast.xml
+++ b/resources/boot/SC/CreateNewNumberedVersionFromLast.xml
@@ -3,37 +3,25 @@
<output name="errors" type="com.c2kernel.scripting.ErrorInfo"/>
<script language="javascript" name="CreateNewNumberedVersionFromLast"><![CDATA[
- var job = bsf.lookupBean("job");
- var item = bsf.lookupBean("item");
- var agent = bsf.lookupBean("agent");
- var errorBuffer = bsf.lookupBean("errors");
-
var viewName = job.getActPropString("ViewName");
- if (viewName.equals("")) {
- errorBuffer.addError("ViewName not specified. Cannot create new version.");
- errorBuffer.setFatal();
- }
+ if (viewName.equals(""))
+ throw "ViewName not specified. Cannot create new version.";
- if (!(errorBuffer.getFatal())) {
- var lastView = -1;
- var existingViews = item.getContents("/ViewPoint/"+viewName);
- for (i=0; i<existingViews.length; i++) {
- var thisView = parseInt(existingViews[i]);
- if (thisView!=NaN && lastView < thisView) lastView = thisView;
- }
- lastView++;
- try {
- var existingLast = agent.unmarshall(item.queryData("/ViewPoint/"+viewName+"/last"));
- } catch (e) {
- errorBuffer.addError("No data found. You must submit at least one version before executing this activity.");
- errorBuffer.setFatal();
- }
- if (!(errorBuffer.getFatal())) {
- existingLast.setName(lastView);
- agent.execute(item, "AddC2KObject", existingLast);
- }
+ var lastView = -1;
+ var existingViews = item.getContents("/ViewPoint/"+viewName);
+ for (i=0; i<existingViews.length; i++) {
+ var thisView = parseInt(existingViews[i]);
+ if (thisView!=NaN && lastView < thisView) lastView = thisView;
}
- errorBuffer;
+ lastView++;
+ try {
+ var existingLast = agent.unmarshall(item.queryData("/ViewPoint/"+viewName+"/last"));
+ } catch (e) {
+ throw "No data found. You must submit at least one version before executing this activity.";
+ }
+ existingLast.setName(lastView);
+ agent.execute(item, "AddC2KObject", existingLast);
+
]]></script>
</cristalscript>
diff --git a/resources/boot/SC/InstantiateItem.xml b/resources/boot/SC/InstantiateItem.xml
index 0f16a65..4e80e9d 100644
--- a/resources/boot/SC/InstantiateItem.xml
+++ b/resources/boot/SC/InstantiateItem.xml
@@ -4,12 +4,6 @@
<script language="javascript" name="InstantiateItem"><![CDATA[
importClass(Packages.com.c2kernel.lookup.DomainPath);
- // Load contextual objects
- var job = bsf.lookupBean("job");
- var item = bsf.lookupBean("item");
- var agent = bsf.lookupBean("agent");
- var errorBuffer = bsf.lookupBean("errors");
-
// Get parameters from outcome
var name = job.getOutcome().getField("ObjectName");
var folder = job.getOutcome().getField("SubFolder");
@@ -22,14 +16,13 @@
try {
agent.execute(item, "CreateItemFromDescription", params);
} catch (e) {
- errorBuffer.addError("Could not create "+name+": "+e.message);
- errorBuffer.setFatal();
+ throw "Could not create "+name+": "+e.message;
}
// If this script is running in the Cristal GUI, open the new item.
var tree = Packages.com.c2kernel.gui.MainFrame.treeBrowser;
if (tree != null)
tree.push(new DomainPath(domPath+"/"+name));
- errorBuffer;
+
]]></script>
</cristalscript>
diff --git a/resources/boot/SC/LocalObjectDefCreator.xml b/resources/boot/SC/LocalObjectDefCreator.xml
index 445a517..32b154c 100644
--- a/resources/boot/SC/LocalObjectDefCreator.xml
+++ b/resources/boot/SC/LocalObjectDefCreator.xml
@@ -8,10 +8,6 @@
importClass(Packages.com.c2kernel.lifecycle.CompositeActivityDef);
importClass(Packages.com.c2kernel.lifecycle.ActivityDef);
- var job = bsf.lookupBean("job");
- var item = bsf.lookupBean("item");
- var agent = bsf.lookupBean("agent");
- var errorBuffer = bsf.lookupBean("errors");
var type = job.getActPropString("NewType");
var name = job.getOutcome().getField("ObjectName");
var folder = job.getOutcome().getField("SubFolder");
@@ -24,40 +20,35 @@
params[1] = domPath;
// Create the new item
- if (!(errorBuffer.getFatal())) {
- try {
- agent.execute(item, "CreateItemFromDescription", params);
- } catch (e) {
- errorBuffer.addError("Could not create "+name+": "+e.message);
- errorBuffer.setFatal();
- }
+ try {
+ agent.execute(item, "CreateItemFromDescription", params);
+ } catch (e) {
+ throw "Could not create "+name+": "+e.message;
}
// Store a fresh one in the new item
- if (!(errorBuffer.getFatal())) {
- var newObj;
- // Activities are serialized new instances
- if (type.equals("EA") || type.equals("CA")) {
- var newAct = type.equals("CA")?new CompositeActivityDef(): new ActivityDef();
- newAct.setName(name);
- newObj = CastorXMLUtility.marshall(newAct);
- }
- else {
- // Empty schemas and scripts are stored as outcomes of the factory.
- var fileType = type.equals("OD")?"Schema":"Script";
- newObj = item.getObject("/ViewPoint/"+fileType+"/last").getOutcome().getData();
+
+ var newObj;
+ // Activities are serialized new instances
+ if (type.equals("EA") || type.equals("CA")) {
+ var newAct = type.equals("CA")?new CompositeActivityDef(): new ActivityDef();
+ newAct.setName(name);
+ newObj = CastorXMLUtility.marshall(newAct);
}
- // Store the new object with the 'EditDefinition' activity
- var newPath = new Packages.com.c2kernel.lookup.DomainPath(domPath+"/"+name);
- var newItem = agent.getItem(newPath);
- newItem.requestAction(agent.getSystemKey(), "workflow/domain/EditDefinition", 4, newObj);
-
- // If this script is running in the Cristal GUI, open the new item.
- var tree = Packages.com.c2kernel.gui.MainFrame.treeBrowser;
- if (tree != null) // open new item in the gui
- tree.push(newPath);
-
+ else {
+ // Empty schemas and scripts are stored as outcomes of the factory.
+ var fileType = type.equals("OD")?"Schema":"Script";
+ newObj = item.getObject("/ViewPoint/"+fileType+"/last").getOutcome().getData();
}
- errorBuffer;
+ // Store the new object with the 'EditDefinition' activity
+ var newPath = new Packages.com.c2kernel.lookup.DomainPath(domPath+"/"+name);
+ var newItem = agent.getItem(newPath);
+ newItem.requestAction(agent.getSystemKey(), "workflow/domain/EditDefinition", 4, newObj);
+
+ // If this script is running in the Cristal GUI, open the new item.
+ var tree = Packages.com.c2kernel.gui.MainFrame.treeBrowser;
+ if (tree != null) // open new item in the gui
+ tree.push(newPath);
+
]]></script>
</cristalscript>
diff --git a/resources/boot/SC/New.xml b/resources/boot/SC/New.xml
index a706310..a07a7b9 100644
--- a/resources/boot/SC/New.xml
+++ b/resources/boot/SC/New.xml
@@ -3,11 +3,5 @@
<output name="errors" type="com.c2kernel.scripting.ErrorInfo"/>
<script language="javascript" name=""><![CDATA[
- var job = bsf.lookupBean("job");
- var item = bsf.lookupBean("item");
- var agent = bsf.lookupBean("agent");
- var errorBuffer = bsf.lookupBean("errors");
-
- errorBuffer;
]]></script>
</cristalscript>
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>