diff options
| author | Andrew Branson <andrew.branson@cern.ch> | 2014-03-06 16:40:35 +0100 |
|---|---|---|
| committer | Andrew Branson <andrew.branson@cern.ch> | 2014-03-06 16:40:35 +0100 |
| commit | 458169a9729b9bd4b509285ce79e8517b3853c9b (patch) | |
| tree | 076e5345abd525c939f0fea477aefe09b8ffb177 /src/main/java/com/c2kernel/gui/lifecycle/desc/ElemActDefOutcomeHandler.java | |
| parent | 7381a549557ff474469b7b805f2506eba8220420 (diff) | |
Added space to schema column in HistoryPane
Fixed NullPointer on workflow export
Prevent CompositeActivityDefs in error from being submitted
Diffstat (limited to 'src/main/java/com/c2kernel/gui/lifecycle/desc/ElemActDefOutcomeHandler.java')
| -rw-r--r-- | src/main/java/com/c2kernel/gui/lifecycle/desc/ElemActDefOutcomeHandler.java | 31 |
1 files changed, 22 insertions, 9 deletions
diff --git a/src/main/java/com/c2kernel/gui/lifecycle/desc/ElemActDefOutcomeHandler.java b/src/main/java/com/c2kernel/gui/lifecycle/desc/ElemActDefOutcomeHandler.java index 08cbf4c..1e11f1f 100644 --- a/src/main/java/com/c2kernel/gui/lifecycle/desc/ElemActDefOutcomeHandler.java +++ b/src/main/java/com/c2kernel/gui/lifecycle/desc/ElemActDefOutcomeHandler.java @@ -118,18 +118,18 @@ public class ElemActDefOutcomeHandler extends VertexPropertyPanel implements Out public static void exportAct(File dir, BufferedWriter imports, ActivityDef actDef) throws Exception {
// Export associated schema
- exportSchema((String)actDef.getProperties().get("SchemaType"), Integer.parseInt(actDef.getProperties().get("SchemaVersion").toString()), imports, new File(dir, "OD"));
+ exportSchema((String)actDef.getProperties().get("SchemaType"), actDef.getProperties().get("SchemaVersion"), imports, new File(dir, "OD"));
// Export associated script
- exportScript((String)actDef.getProperties().get("ScriptName"), Integer.parseInt(actDef.getProperties().get("ScriptVersion").toString()), imports, new File(dir, "SC"));
+ exportScript((String)actDef.getProperties().get("ScriptName"), actDef.getProperties().get("ScriptVersion"), imports, new File(dir, "SC"));
//Export child act if composite
if (actDef instanceof CompositeActivityDef) {
CompositeActivityDef compActDef = (CompositeActivityDef)actDef;
for (int i=0; i<compActDef.getChildren().length; i++) { // export slot defined scripts and schemas
GraphableVertex vert = compActDef.getChildren()[i];
- exportScript((String)vert.getProperties().get("ScriptName"), Integer.parseInt(actDef.getProperties().get("ScriptVersion").toString()), imports, new File(dir, "SC"));
- exportScript((String)vert.getProperties().get("RoutingScriptName"), Integer.parseInt(actDef.getProperties().get("RoutingScriptVersion").toString()), imports, new File(dir, "SC"));
- exportSchema((String)vert.getProperties().get("SchemaType"), Integer.parseInt(actDef.getProperties().get("SchemaVersion").toString()), imports, new File(dir, "OD"));
+ exportScript((String)vert.getProperties().get("ScriptName"), actDef.getProperties().get("ScriptVersion"), imports, new File(dir, "SC"));
+ exportScript((String)vert.getProperties().get("RoutingScriptName"), actDef.getProperties().get("RoutingScriptVersion"), imports, new File(dir, "SC"));
+ exportSchema((String)vert.getProperties().get("SchemaType"), actDef.getProperties().get("SchemaVersion"), imports, new File(dir, "OD"));
}
GraphableVertex[] childDefs = compActDef.getLayoutableChildren();
for (GraphableVertex childDef : childDefs) {
@@ -148,24 +148,37 @@ public class ElemActDefOutcomeHandler extends VertexPropertyPanel implements Out }
}
- public static void exportScript(String name, Integer version, BufferedWriter imports, File dir) {
+ public static void exportScript(String name, Object version, BufferedWriter imports, File dir) {
if (name == null || name.length()==0 || name.contains(":")) return;
try {
+ int intVersion;
+ if (version instanceof String) intVersion = Integer.parseInt((String)version);
+ else if (version instanceof Integer) intVersion = ((Integer)version).intValue();
+ else return;
+
FileStringUtility.string2File(new File(dir, name+".xml"),
- LocalObjectLoader.getScript(name, version));
+ LocalObjectLoader.getScript(name, intVersion));
if (imports!=null) imports.write("<Resource name=\""+name+"\" "+(version==null?"":"version=\""+version+"\" ")+"type=\"SC\">boot/SC/"+name+".xml</Resource>\n");
+ } catch (NumberFormatException ex) {
+ JOptionPane.showMessageDialog(null, "Invalid version number in script version:"+version);
} catch (Exception ex) {
Logger.error(ex);
JOptionPane.showMessageDialog(null, "Could not export script "+name+"_"+version, "Error", JOptionPane.ERROR_MESSAGE);
}
}
- public static void exportSchema(String name, Integer version, BufferedWriter imports, File dir) {
+ public static void exportSchema(String name, Object version, BufferedWriter imports, File dir) {
if (name == null || name.length()==0) return;
try {
+ int intVersion;
+ if (version instanceof String) intVersion = Integer.parseInt((String)version);
+ else if (version instanceof Integer) intVersion = ((Integer)version).intValue();
+ else return;
FileStringUtility.string2File(new File(dir, name+".xsd"),
- LocalObjectLoader.getSchema(name, version).schema);
+ LocalObjectLoader.getSchema(name, intVersion).schema);
if (imports!=null) imports.write("<Resource name=\""+name+"\" "+(version==null?"":"version=\""+version+"\" ")+"type=\"OD\">boot/OD/"+name+".xsd</Resource>\n");
+ } catch (NumberFormatException ex) {
+ JOptionPane.showMessageDialog(null, "Invalid version number in script version:"+version);
} catch (Exception ex) {
Logger.error(ex);
JOptionPane.showMessageDialog(null, "Could not export schema "+name+"_"+version, "Error", JOptionPane.ERROR_MESSAGE);
|
