Repository: airavata Updated Branches: refs/heads/master 5a1b225fd -> bfaac64d8
http://git-wip-us.apache.org/repos/asf/airavata/blob/63a561c3/modules/workflow-model/workflow-model-core/src/main/java/org/apache/airavata/workflow/model/component/ws/WSComponent.java ---------------------------------------------------------------------- diff --git a/modules/workflow-model/workflow-model-core/src/main/java/org/apache/airavata/workflow/model/component/ws/WSComponent.java b/modules/workflow-model/workflow-model-core/src/main/java/org/apache/airavata/workflow/model/component/ws/WSComponent.java index bedfaac..bf37ea9 100644 --- a/modules/workflow-model/workflow-model-core/src/main/java/org/apache/airavata/workflow/model/component/ws/WSComponent.java +++ b/modules/workflow-model/workflow-model-core/src/main/java/org/apache/airavata/workflow/model/component/ws/WSComponent.java @@ -26,7 +26,6 @@ import java.util.List; import javax.xml.namespace.QName; -import com.google.gson.JsonElement; import com.google.gson.JsonObject; import org.apache.airavata.workflow.model.component.Component; import org.apache.airavata.workflow.model.component.ComponentControlPort; @@ -92,6 +91,8 @@ public class WSComponent extends Component { WSComponentPort port = new WSComponentPort(inputDataObjectType.getName(),inputDataObjectType.getType() , this); port.setDescription(inputDataObjectType.getDescription()); port.setDefaultValue(inputDataObjectType.getDefaultValue()); + port.setApplicationArgument(inputDataObjectType.getApplicationArgument()); + port.setInputOrder(inputDataObjectType.getInputOrder()); inputs.add(port); } http://git-wip-us.apache.org/repos/asf/airavata/blob/63a561c3/modules/workflow-model/workflow-model-core/src/main/java/org/apache/airavata/workflow/model/component/ws/WSComponentApplication.java ---------------------------------------------------------------------- diff --git a/modules/workflow-model/workflow-model-core/src/main/java/org/apache/airavata/workflow/model/component/ws/WSComponentApplication.java b/modules/workflow-model/workflow-model-core/src/main/java/org/apache/airavata/workflow/model/component/ws/WSComponentApplication.java index 5bf9daa..ac4c5cb 100644 --- a/modules/workflow-model/workflow-model-core/src/main/java/org/apache/airavata/workflow/model/component/ws/WSComponentApplication.java +++ b/modules/workflow-model/workflow-model-core/src/main/java/org/apache/airavata/workflow/model/component/ws/WSComponentApplication.java @@ -36,8 +36,6 @@ import javax.xml.bind.annotation.XmlRootElement; import javax.xml.bind.annotation.XmlType; import javax.xml.namespace.QName; -import com.google.gson.Gson; -import com.google.gson.GsonBuilder; import com.google.gson.JsonArray; import com.google.gson.JsonElement; import com.google.gson.JsonObject; @@ -46,10 +44,9 @@ import org.apache.airavata.common.utils.XMLUtil; import org.apache.airavata.model.appcatalog.appinterface.ApplicationInterfaceDescription; import org.apache.airavata.model.appcatalog.appinterface.InputDataObjectType; import org.apache.airavata.model.appcatalog.appinterface.OutputDataObjectType; -import org.apache.airavata.workflow.model.graph.GraphSchema; +import org.apache.airavata.workflow.model.utils.WorkflowConstants; import org.xmlpull.infoset.XmlNamespace; -import xsul.dsig.apache.axis.uti.XMLUtils; import xsul5.XmlConstants; @XmlRootElement(name="Application") @@ -70,7 +67,7 @@ public class WSComponentApplication { app.setApplicationId("dsfds"); app.setName("dfd"); app.setDescription("sdfdsfds"); - app.addInputParameter(new WSComponentApplicationParameter("asas", new QName("sdf"), null, "sdfds")); + app.addInputParameter(new WSComponentApplicationParameter("asas", new QName("sdf"), null, "sdfds", 1)); app.addOutputParameter(new WSComponentApplicationParameter("9842", new QName("sdv99304"), null, null)); app.addOutputParameter(new WSComponentApplicationParameter("AAAAA", new QName("sdfd"), "sdfsdf", "243bs sd fsd fs f dfd")); ByteArrayOutputStream byteArrayOutputStream = new ByteArrayOutputStream(); @@ -112,38 +109,42 @@ public class WSComponentApplication { public static WSComponentApplication parse(JsonObject applicationObject) { WSComponentApplication wsComponentApplication = new WSComponentApplication(); - wsComponentApplication.description = applicationObject.getAsJsonPrimitive("description").getAsString(); - wsComponentApplication.name = applicationObject.getAsJsonPrimitive("name").getAsString(); - wsComponentApplication.applicationId = applicationObject.getAsJsonPrimitive("application").getAsString(); + wsComponentApplication.description = applicationObject.getAsJsonPrimitive(WorkflowConstants.APPLICATION_COMPONENT_DESCRIPTION).getAsString(); + wsComponentApplication.name = applicationObject.getAsJsonPrimitive(WorkflowConstants.APPLICATION_COMPONENT_NAME).getAsString(); + wsComponentApplication.applicationId = applicationObject.getAsJsonPrimitive(WorkflowConstants.APPLICATION_COMPONENT_APPLICATION).getAsString(); - if (applicationObject.get("Input") != null) { - JsonArray inputArray = applicationObject.getAsJsonArray("Input"); - WSComponentApplicationParameter inputParameter; - JsonObject inputObject; - for (JsonElement jsonElement : inputArray) { - if (jsonElement instanceof JsonObject) { - inputObject = (JsonObject) jsonElement; - inputParameter = new WSComponentApplicationParameter(); - inputParameter.setDefaultValue(inputObject.getAsJsonPrimitive("text").getAsString()); - inputParameter.setDescription(inputObject.getAsJsonPrimitive("description").getAsString()); - inputParameter.setName(inputObject.getAsJsonPrimitive("name").getAsString()); - inputParameter.setType(QName.valueOf(inputObject.getAsJsonPrimitive("dataType").getAsString())); - wsComponentApplication.addInputParameter(inputParameter); - } - } - } + if (applicationObject.get(WorkflowConstants.APPLICATION_INPUT) != null) { + JsonArray inputArray = applicationObject.getAsJsonArray(WorkflowConstants.APPLICATION_INPUT); + WSComponentApplicationParameter inputParameter; + JsonObject inputObject; + for (JsonElement jsonElement : inputArray) { + if (jsonElement instanceof JsonObject) { + inputObject = (JsonObject) jsonElement; + inputParameter = new WSComponentApplicationParameter(); + inputParameter.setDefaultValue(inputObject.getAsJsonPrimitive(WorkflowConstants.APPLICATION_DATA_DEFAULT_VALUE).getAsString()); + inputParameter.setDescription(inputObject.getAsJsonPrimitive(WorkflowConstants.APPLICATION_DATA_DESCRIPTION).getAsString()); + inputParameter.setName(inputObject.getAsJsonPrimitive(WorkflowConstants.APPLICATION_DATA_NAME).getAsString()); + inputParameter.setType(QName.valueOf(inputObject.getAsJsonPrimitive(WorkflowConstants.APPLICATION_DATA_DATA_TYPE).getAsString())); + inputParameter.setInputOrder(inputObject.getAsJsonPrimitive(WorkflowConstants.APPLICATION_DATA_INPUT_ORDER).getAsInt()); + if (inputObject.getAsJsonPrimitive(WorkflowConstants.APPLICATION_DATA_APP_ARGUMENT) != null) { + inputParameter.setApplicationArgument(inputObject.getAsJsonPrimitive(WorkflowConstants.APPLICATION_DATA_APP_ARGUMENT).getAsString()); + } + wsComponentApplication.addInputParameter(inputParameter); + } + } + } - if (applicationObject.get("Output") != null) { - JsonArray outputArray = applicationObject.getAsJsonArray("Output"); + if (applicationObject.get(WorkflowConstants.APPLICATION_OUTPUT) != null) { + JsonArray outputArray = applicationObject.getAsJsonArray(WorkflowConstants.APPLICATION_OUTPUT); WSComponentApplicationParameter outputParameter; JsonObject outputObject; for (JsonElement jsonElement : outputArray) { if (jsonElement instanceof JsonObject) { outputObject = (JsonObject) jsonElement; outputParameter = new WSComponentApplicationParameter(); - outputParameter.setDescription(outputObject.getAsJsonPrimitive("description").getAsString()); - outputParameter.setName(outputObject.getAsJsonPrimitive("name").getAsString()); - outputParameter.setType(QName.valueOf(outputObject.getAsJsonPrimitive("dataType").getAsString())); + outputParameter.setDescription(outputObject.getAsJsonPrimitive(WorkflowConstants.APPLICATION_DATA_DESCRIPTION).getAsString()); + outputParameter.setName(outputObject.getAsJsonPrimitive(WorkflowConstants.APPLICATION_DATA_NAME).getAsString()); + outputParameter.setType(QName.valueOf(outputObject.getAsJsonPrimitive(WorkflowConstants.APPLICATION_DATA_DATA_TYPE).getAsString())); wsComponentApplication.addOutputParameter(outputParameter); } } @@ -170,31 +171,35 @@ public class WSComponentApplication { public JsonObject toJSON() { JsonObject componentObject = new JsonObject(); - componentObject.addProperty("description", this.description); - componentObject.addProperty("name", this.name); - componentObject.addProperty("application", this.applicationId); + componentObject.addProperty(WorkflowConstants.APPLICATION_COMPONENT_DESCRIPTION, this.description); + componentObject.addProperty(WorkflowConstants.APPLICATION_COMPONENT_NAME, this.name); + componentObject.addProperty(WorkflowConstants.APPLICATION_COMPONENT_APPLICATION, this.applicationId); JsonArray inputArray = new JsonArray(); JsonObject inputObject; for (WSComponentApplicationParameter inputParameter : this.inputParameters) { inputObject = new JsonObject(); - inputObject.addProperty("description", inputParameter.getDescription()); - inputObject.addProperty("name", inputParameter.getName()); - inputObject.addProperty("text", inputParameter.getDefaultValue()); - inputObject.addProperty("dataType", inputParameter.getType().toString()); - inputArray.add(inputObject); + inputObject.addProperty(WorkflowConstants.APPLICATION_DATA_DESCRIPTION, inputParameter.getDescription()); + inputObject.addProperty(WorkflowConstants.APPLICATION_DATA_NAME, inputParameter.getName()); + inputObject.addProperty(WorkflowConstants.APPLICATION_DATA_DEFAULT_VALUE, inputParameter.getDefaultValue()); + inputObject.addProperty(WorkflowConstants.APPLICATION_DATA_DATA_TYPE, inputParameter.getType().toString()); + inputObject.addProperty(WorkflowConstants.APPLICATION_DATA_INPUT_ORDER, inputParameter.getInputOrder()); + if (inputParameter.getApplicationArgument() != null) { + inputObject.addProperty(WorkflowConstants.APPLICATION_DATA_APP_ARGUMENT, inputParameter.getApplicationArgument()); + } + inputArray.add(inputObject); } - componentObject.add("Input", inputArray); + componentObject.add(WorkflowConstants.APPLICATION_INPUT, inputArray); JsonArray outputArray = new JsonArray(); JsonObject outputObject; for (WSComponentApplicationParameter outputParameter : this.outputParameters) { outputObject = new JsonObject(); - outputObject.addProperty("description", outputParameter.getDescription()); - outputObject.addProperty("name", outputParameter.getName()); - outputObject.addProperty("dataType" , outputParameter.getType().toString()); - outputArray.add(outputObject); + outputObject.addProperty(WorkflowConstants.APPLICATION_DATA_DESCRIPTION, outputParameter.getDescription()); + outputObject.addProperty(WorkflowConstants.APPLICATION_DATA_NAME, outputParameter.getName()); + outputObject.addProperty(WorkflowConstants.APPLICATION_DATA_DATA_TYPE, outputParameter.getType().toString()); + outputArray.add(outputObject); } - componentObject.add("Output", outputArray); + componentObject.add(WorkflowConstants.APPLICATION_OUTPUT, outputArray); return componentObject; } @@ -211,8 +216,10 @@ public class WSComponentApplication { namespace = XmlConstants.BUILDER.newNamespace("xsd", WSConstants.XSD_NS_URI); String prefix = "xsd"; QName type = new QName(namespace.getName(), typeName, prefix); - - addInputParameter(new WSComponentApplicationParameter(inputDataObjectType.getName(),type ,inputDataObjectType.getUserFriendlyDescription(), inputDataObjectType.getValue())); + + addInputParameter(new WSComponentApplicationParameter(inputDataObjectType.getName(), type, + inputDataObjectType.getUserFriendlyDescription(), inputDataObjectType.getValue(), + inputDataObjectType.getApplicationArgument(), inputDataObjectType.getInputOrder())); } List<OutputDataObjectType> applicationOutputs = application.getApplicationOutputs(); http://git-wip-us.apache.org/repos/asf/airavata/blob/63a561c3/modules/workflow-model/workflow-model-core/src/main/java/org/apache/airavata/workflow/model/component/ws/WSComponentApplicationParameter.java ---------------------------------------------------------------------- diff --git a/modules/workflow-model/workflow-model-core/src/main/java/org/apache/airavata/workflow/model/component/ws/WSComponentApplicationParameter.java b/modules/workflow-model/workflow-model-core/src/main/java/org/apache/airavata/workflow/model/component/ws/WSComponentApplicationParameter.java index 92f6e56..d472991 100644 --- a/modules/workflow-model/workflow-model-core/src/main/java/org/apache/airavata/workflow/model/component/ws/WSComponentApplicationParameter.java +++ b/modules/workflow-model/workflow-model-core/src/main/java/org/apache/airavata/workflow/model/component/ws/WSComponentApplicationParameter.java @@ -28,22 +28,34 @@ import javax.xml.bind.annotation.XmlValue; import javax.xml.namespace.QName; @XmlRootElement(name="Parameter") -@XmlType(propOrder = {"name", "type", "description", "defaultValue"}) +@XmlType(propOrder = {"name", "type", "description", "defaultValue", "applicationArgument", "inputOrder"}) public class WSComponentApplicationParameter { private String name; private QName type; private String description; private String defaultValue; - + private String applicationArgument; + private int inputOrder; + public WSComponentApplicationParameter() { } - + + public WSComponentApplicationParameter(String name, QName type, String description, String defaultValue) { + this(name, type, description, defaultValue, "", -1); + } + + public WSComponentApplicationParameter(String name, QName type, String description, String defaultValue, int inputOrder) { + this(name, type, description, defaultValue, "", inputOrder); + } + public WSComponentApplicationParameter(String name, QName type, - String description, String defaultValue) { + String description, String defaultValue, String applicationArgument, int inputOrder) { this.name = name; this.type = type; this.description = description; this.defaultValue = defaultValue; + this.applicationArgument = applicationArgument; + this.inputOrder = inputOrder; } @XmlAttribute (required = true) @@ -77,5 +89,22 @@ public class WSComponentApplicationParameter { public void setDefaultValue(String defaultValue) { this.defaultValue = defaultValue; } - + + @XmlAttribute + public String getApplicationArgument() { + return applicationArgument; + } + + public void setApplicationArgument(String applicationArgument) { + this.applicationArgument = applicationArgument; + } + + @XmlAttribute + public int getInputOrder() { + return inputOrder; + } + + public void setInputOrder(int inputOrder) { + this.inputOrder = inputOrder; + } } http://git-wip-us.apache.org/repos/asf/airavata/blob/63a561c3/modules/workflow-model/workflow-model-core/src/main/java/org/apache/airavata/workflow/model/component/ws/WSComponentPort.java ---------------------------------------------------------------------- diff --git a/modules/workflow-model/workflow-model-core/src/main/java/org/apache/airavata/workflow/model/component/ws/WSComponentPort.java b/modules/workflow-model/workflow-model-core/src/main/java/org/apache/airavata/workflow/model/component/ws/WSComponentPort.java index 259744e..49dbd26 100644 --- a/modules/workflow-model/workflow-model-core/src/main/java/org/apache/airavata/workflow/model/component/ws/WSComponentPort.java +++ b/modules/workflow-model/workflow-model-core/src/main/java/org/apache/airavata/workflow/model/component/ws/WSComponentPort.java @@ -29,9 +29,6 @@ import org.apache.airavata.workflow.model.component.ComponentDataPort; import org.apache.airavata.workflow.model.component.ComponentException; import org.apache.airavata.workflow.model.graph.ws.WSPort; import org.xmlpull.infoset.XmlElement; -import org.xmlpull.infoset.XmlNamespace; - -import xsul5.XmlConstants; public class WSComponentPort extends ComponentDataPort { @@ -58,6 +55,10 @@ public class WSComponentPort extends ComponentDataPort { private boolean optional; + private String applicationArgument; + + private int inputOrder; + /** * Creates WSComponentPort * @@ -152,6 +153,22 @@ public class WSComponentPort extends ComponentDataPort { this.value = value; } + public String getApplicationArgument() { + return applicationArgument; + } + + public void setApplicationArgument(String applicationArgument) { + this.applicationArgument = applicationArgument; + } + + public int getInputOrder() { + return inputOrder; + } + + public void setInputOrder(int inputOrder) { + this.inputOrder = inputOrder; + } + /** * @return The appinfo element. */ http://git-wip-us.apache.org/repos/asf/airavata/blob/63a561c3/modules/workflow-model/workflow-model-core/src/main/java/org/apache/airavata/workflow/model/gpel/script/BPELScript.java ---------------------------------------------------------------------- diff --git a/modules/workflow-model/workflow-model-core/src/main/java/org/apache/airavata/workflow/model/gpel/script/BPELScript.java b/modules/workflow-model/workflow-model-core/src/main/java/org/apache/airavata/workflow/model/gpel/script/BPELScript.java index abfc9b6..2b8ef85 100644 --- a/modules/workflow-model/workflow-model-core/src/main/java/org/apache/airavata/workflow/model/gpel/script/BPELScript.java +++ b/modules/workflow-model/workflow-model-core/src/main/java/org/apache/airavata/workflow/model/gpel/script/BPELScript.java @@ -366,7 +366,7 @@ public class BPELScript { private void addComment() { XmlComment comment = this.process.xml().newComment( - "\nThis document is automatically generated by " + WorkflowConstants.APPLICATION_NAME + " " + "\nThis document is automatically generated by " + WorkflowConstants.APPLICATION_NAME_ + " " + ApplicationVersion.VERSION + ".\n"); this.process.xml().insertChild(0, "\n"); this.process.xml().insertChild(0, comment); http://git-wip-us.apache.org/repos/asf/airavata/blob/63a561c3/modules/workflow-model/workflow-model-core/src/main/java/org/apache/airavata/workflow/model/gpel/script/WorkflowWSDL.java ---------------------------------------------------------------------- diff --git a/modules/workflow-model/workflow-model-core/src/main/java/org/apache/airavata/workflow/model/gpel/script/WorkflowWSDL.java b/modules/workflow-model/workflow-model-core/src/main/java/org/apache/airavata/workflow/model/gpel/script/WorkflowWSDL.java index 2a9db54..1ad3a0d 100644 --- a/modules/workflow-model/workflow-model-core/src/main/java/org/apache/airavata/workflow/model/gpel/script/WorkflowWSDL.java +++ b/modules/workflow-model/workflow-model-core/src/main/java/org/apache/airavata/workflow/model/gpel/script/WorkflowWSDL.java @@ -37,7 +37,6 @@ import org.apache.airavata.workflow.model.graph.DataPort; import org.apache.airavata.workflow.model.graph.GraphException; import org.apache.airavata.workflow.model.graph.Node; import org.apache.airavata.workflow.model.graph.system.InputNode; -import org.apache.airavata.workflow.model.graph.system.OutputNode; import org.apache.airavata.workflow.model.graph.system.ParameterNode; import org.apache.airavata.workflow.model.graph.system.ReceiveNode; import org.apache.airavata.workflow.model.graph.system.SystemDataPort; @@ -267,7 +266,7 @@ public class WorkflowWSDL { private void addComment() { XmlComment comment = this.definitions.xml().newComment( - "\nThis document is automatically generated by " + WorkflowConstants.APPLICATION_NAME + " " + "\nThis document is automatically generated by " + WorkflowConstants.APPLICATION_NAME_ + " " + ApplicationVersion.VERSION + ".\n"); this.definitions.xml().insertChild(0, "\n"); this.definitions.xml().insertChild(0, comment); http://git-wip-us.apache.org/repos/asf/airavata/blob/63a561c3/modules/workflow-model/workflow-model-core/src/main/java/org/apache/airavata/workflow/model/graph/GraphSchema.java ---------------------------------------------------------------------- diff --git a/modules/workflow-model/workflow-model-core/src/main/java/org/apache/airavata/workflow/model/graph/GraphSchema.java b/modules/workflow-model/workflow-model-core/src/main/java/org/apache/airavata/workflow/model/graph/GraphSchema.java index 9ae3353..3c9a94a 100644 --- a/modules/workflow-model/workflow-model-core/src/main/java/org/apache/airavata/workflow/model/graph/GraphSchema.java +++ b/modules/workflow-model/workflow-model-core/src/main/java/org/apache/airavata/workflow/model/graph/GraphSchema.java @@ -386,4 +386,5 @@ public class GraphSchema { public static final String NODE_TYPE_DIFFERED_INPUT = "Differed Input"; + public static final String PORT_INPUT_ORDER = "inputOrder"; } \ No newline at end of file http://git-wip-us.apache.org/repos/asf/airavata/blob/63a561c3/modules/workflow-model/workflow-model-core/src/main/java/org/apache/airavata/workflow/model/graph/system/InputNode.java ---------------------------------------------------------------------- diff --git a/modules/workflow-model/workflow-model-core/src/main/java/org/apache/airavata/workflow/model/graph/system/InputNode.java b/modules/workflow-model/workflow-model-core/src/main/java/org/apache/airavata/workflow/model/graph/system/InputNode.java index c0bbf55..745ad28 100644 --- a/modules/workflow-model/workflow-model-core/src/main/java/org/apache/airavata/workflow/model/graph/system/InputNode.java +++ b/modules/workflow-model/workflow-model-core/src/main/java/org/apache/airavata/workflow/model/graph/system/InputNode.java @@ -27,7 +27,6 @@ import javax.xml.namespace.QName; import com.google.gson.JsonElement; import com.google.gson.JsonObject; -import com.google.gson.JsonPrimitive; import org.apache.airavata.common.utils.WSConstants; import org.apache.airavata.workflow.model.component.Component; import org.apache.airavata.workflow.model.component.system.InputComponent; @@ -57,6 +56,10 @@ public class InputNode extends ParameterNode { private boolean visibility; + private String applicationArgument; + + private int inputOrder; + /** * Creates an InputNode. * @@ -90,6 +93,22 @@ public class InputNode extends ParameterNode { this.visibility = visibility; } + public String getApplicationArgument() { + return applicationArgument; + } + + public void setApplicationArgument(String applicationArgument) { + this.applicationArgument = applicationArgument; + } + + public int getInputOrder() { + return inputOrder; + } + + public void setInputOrder(int inputOrder) { + this.inputOrder = inputOrder; + } + /** * @see org.apache.airavata.workflow.model.graph.impl.NodeImpl#getComponent() */ @@ -365,6 +384,8 @@ public class InputNode extends ParameterNode { setDescription(componentPort.getDescription()); setDefaultValue(componentPort.getDefaultValue()); setMetadata(componentPort.getAppinfo()); + setApplicationArgument(componentPort.getApplicationArgument()); + setInputOrder(componentPort.getInputOrder()); } } \ No newline at end of file http://git-wip-us.apache.org/repos/asf/airavata/blob/63a561c3/modules/workflow-model/workflow-model-core/src/main/java/org/apache/airavata/workflow/model/utils/WorkflowConstants.java ---------------------------------------------------------------------- diff --git a/modules/workflow-model/workflow-model-core/src/main/java/org/apache/airavata/workflow/model/utils/WorkflowConstants.java b/modules/workflow-model/workflow-model-core/src/main/java/org/apache/airavata/workflow/model/utils/WorkflowConstants.java index 1b70528..ffba116 100644 --- a/modules/workflow-model/workflow-model-core/src/main/java/org/apache/airavata/workflow/model/utils/WorkflowConstants.java +++ b/modules/workflow-model/workflow-model-core/src/main/java/org/apache/airavata/workflow/model/utils/WorkflowConstants.java @@ -27,7 +27,7 @@ public class WorkflowConstants { /** * The name of the application */ - public static final String APPLICATION_NAME = "XBaya Dashboard"; + public static final String APPLICATION_NAME_ = "XBaya Dashboard"; /** * Namespace URI @@ -49,4 +49,18 @@ public class WorkflowConstants { */ public static final String LEAD_NS = "http://extreme.indiana.edu/lead/workflow"; + + public static final String APPLICATION_COMPONENT_DESCRIPTION = "description"; + public static final String APPLICATION_COMPONENT_NAME = "name"; + public static final String APPLICATION_COMPONENT_APPLICATION = "application"; + + public static final String APPLICATION_DATA_DESCRIPTION = "description"; + public static final String APPLICATION_DATA_NAME = "name"; + public static final String APPLICATION_DATA_DEFAULT_VALUE = "defaultValue"; + public static final String APPLICATION_DATA_DATA_TYPE = "dataType"; + public static final String APPLICATION_DATA_INPUT_ORDER = "inputOrder"; + public static final String APPLICATION_DATA_APP_ARGUMENT = "appArgument"; + public static final String APPLICATION_INPUT = "Input"; + public static final String APPLICATION_OUTPUT = "Output"; + } \ No newline at end of file http://git-wip-us.apache.org/repos/asf/airavata/blob/63a561c3/modules/xbaya-gui/src/main/java/org/apache/airavata/xbaya/component/registry/ComponentRegistryLoader.java ---------------------------------------------------------------------- diff --git a/modules/xbaya-gui/src/main/java/org/apache/airavata/xbaya/component/registry/ComponentRegistryLoader.java b/modules/xbaya-gui/src/main/java/org/apache/airavata/xbaya/component/registry/ComponentRegistryLoader.java index b367dd6..8ed3972 100644 --- a/modules/xbaya-gui/src/main/java/org/apache/airavata/xbaya/component/registry/ComponentRegistryLoader.java +++ b/modules/xbaya-gui/src/main/java/org/apache/airavata/xbaya/component/registry/ComponentRegistryLoader.java @@ -77,6 +77,7 @@ public class ComponentRegistryLoader implements Cancelable, Observer { public void cancel() { this.canceled = true; this.loadThread.interrupt(); + this.loadingDialog.hide(); } /** @@ -95,11 +96,11 @@ public class ComponentRegistryLoader implements Cancelable, Observer { } }; this.loadThread.start(); - if (!getComponentTreeNodesMap().containsKey(registry.getName())) { - // This has to be the last because it blocks when the dialog is modal. - this.loadingDialog.show(); - } + // This has to be the last because it blocks when the dialog is modal. + this.loadingDialog.show(); + } + } /** http://git-wip-us.apache.org/repos/asf/airavata/blob/63a561c3/modules/xbaya-gui/src/main/java/org/apache/airavata/xbaya/ui/dialogs/graph/system/InputConfigurationDialog.java ---------------------------------------------------------------------- diff --git a/modules/xbaya-gui/src/main/java/org/apache/airavata/xbaya/ui/dialogs/graph/system/InputConfigurationDialog.java b/modules/xbaya-gui/src/main/java/org/apache/airavata/xbaya/ui/dialogs/graph/system/InputConfigurationDialog.java index 03130be..84249a9 100644 --- a/modules/xbaya-gui/src/main/java/org/apache/airavata/xbaya/ui/dialogs/graph/system/InputConfigurationDialog.java +++ b/modules/xbaya-gui/src/main/java/org/apache/airavata/xbaya/ui/dialogs/graph/system/InputConfigurationDialog.java @@ -28,7 +28,6 @@ import javax.swing.JButton; import javax.swing.JPanel; import javax.xml.namespace.QName; -import org.apache.airavata.common.utils.WSConstants; import org.apache.airavata.common.utils.XMLUtil; import org.apache.airavata.workflow.model.graph.system.InputNode; import org.apache.airavata.xbaya.lead.LEADTypes; @@ -69,7 +68,7 @@ public class InputConfigurationDialog { * Constructs an InputConfigurationWindow. * * @param node - * @param engine + * @param xbayaGUI */ public InputConfigurationDialog(InputNode node, XBayaGUI xbayaGUI) { this.xbayaGUI=xbayaGUI; @@ -86,26 +85,26 @@ public class InputConfigurationDialog { boolean knownType = LEADTypes.isKnownType(type); if (knownType) { textComponent = this.valueTextField; - this.valueLabel.setText("Default value"); + this.valueLabel.setText("Value"); } else { textComponent = this.valueTextArea; - this.valueLabel.setText("Default value (in XML)"); + this.valueLabel.setText("Value (in XML)"); } this.valueLabel.setLabelFor(textComponent); - final int index = 7; + final int index = 3; this.gridPanel.remove(index); this.gridPanel.add(textComponent, index); if (knownType) { - this.gridPanel.layout(new double[] { 0, 1.0 / 2,0, 0, 1.0 / 2 }, new double[] { 0, 1 }); + this.gridPanel.layout(new double[] { 0,0, 1.0 / 2}, new double[] { 0, 1 }); } else { - this.gridPanel.layout(new double[] { 0, 1.0 / 3,0, 1.0 / 3, 1.0 / 3 }, new double[] { 0, 1 }); + this.gridPanel.layout(new double[] { 0, 1.0 / 3,0, 1.0 / 3}, new double[] { 0, 1 }); } String name = this.node.getID(); // Show ID. this.nameTextField.setText(name); - String visibility = Boolean.toString(this.node.isVisibility()); - this.visibilityTextField.setText(visibility); +// String visibility = Boolean.toString(this.node.isVisibility()); +// this.visibilityTextField.setText(visibility); this.descriptionTextArea.setText(this.node.getDescription()); Object value = this.node.getDefaultValue(); @@ -123,14 +122,14 @@ public class InputConfigurationDialog { this.valueTextArea.setText(valueString); } textComponent.setText(valueString); - XmlElement metadata = this.node.getMetadata(); - String metadataText; - if (metadata == null) { - metadataText = WSConstants.EMPTY_APPINFO; - } else { - metadataText = XMLUtil.xmlElementToString(metadata); - } - this.metadataTextArea.setText(metadataText); +// XmlElement metadata = this.node.getMetadata(); +// String metadataText; +// if (metadata == null) { +// metadataText = WSConstants.EMPTY_APPINFO; +// } else { +// metadataText = XMLUtil.xmlElementToString(metadata); +// } +// this.metadataTextArea.setText(metadataText); this.dialog.show(); } @@ -154,8 +153,8 @@ public class InputConfigurationDialog { String name = this.nameTextField.getText(); String description = this.descriptionTextArea.getText(); String valueString = textComponent.getText(); - String metadataText = this.metadataTextArea.getText(); - String visibilityText = this.visibilityTextField.getText(); +// String metadataText = this.metadataTextArea.getText(); +// String visibilityText = this.visibilityTextField.getText(); if (name.length() == 0) { String warning = "The name cannot be empty."; @@ -179,25 +178,25 @@ public class InputConfigurationDialog { } } } - XmlElement metadata; - if (metadataText.length() == 0) { - metadata = null; - } else { - try { - metadata = XMLUtil.stringToXmlElement(metadataText); - } catch (RuntimeException e) { - String warning = "The metadata is ill-formed."; - this.xbayaGUI.getErrorWindow().error(warning, e); - return; - } - } +// XmlElement metadata; +// if (metadataText.length() == 0) { +// metadata = null; +// } else { +// try { +// metadata = XMLUtil.stringToXmlElement(metadataText); +// } catch (RuntimeException e) { +// String warning = "The metadata is ill-formed."; +// this.xbayaGUI.getErrorWindow().error(warning, e); +// return; +// } +// } this.node.setConfigured(true); this.node.setConfiguredName(name); this.node.setDescription(description); this.node.setDefaultValue(value); - this.node.setMetadata(metadata); - this.node.setVisibility(Boolean.parseBoolean(visibilityText)); +// this.node.setMetadata(metadata); +// this.node.setVisibility(Boolean.parseBoolean(visibilityText)); hide(); this.xbayaGUI.getGraphCanvas().repaint(); } @@ -216,25 +215,25 @@ public class InputConfigurationDialog { this.valueTextArea = new XBayaTextArea(); // for XML // temporaly set text field. this.valueLabel = new XBayaLabel("", this.valueTextField); - - this.metadataTextArea = new XBayaTextArea(); - XBayaLabel metadataLabel = new XBayaLabel("Metadata", this.metadataTextArea); - - this.visibilityTextField = new XBayaTextField(); - XBayaLabel visibilityLabel = new XBayaLabel("Visibility", this.visibilityTextField); +// +// this.metadataTextArea = new XBayaTextArea(); +// XBayaLabel metadataLabel = new XBayaLabel("Metadata", this.metadataTextArea); +// +// this.visibilityTextField = new XBayaTextField(); +// XBayaLabel visibilityLabel = new XBayaLabel("Visibility", this.visibilityTextField); this.gridPanel = new GridPanel(); this.gridPanel.add(nameLabel); this.gridPanel.add(this.nameTextField); - this.gridPanel.add(visibilityLabel); - this.gridPanel.add(this.visibilityTextField); - this.gridPanel.add(descriptionLabel); - this.gridPanel.add(this.descriptionTextArea); +// this.gridPanel.add(visibilityLabel); +// this.gridPanel.add(this.visibilityTextField); this.gridPanel.add(this.valueLabel); this.gridPanel.add(this.valueTextField); - this.gridPanel.add(metadataLabel); - this.gridPanel.add(this.metadataTextArea); - this.gridPanel.layout(5, 2, 3, 1); + this.gridPanel.add(descriptionLabel); + this.gridPanel.add(this.descriptionTextArea); +// this.gridPanel.add(metadataLabel); +// this.gridPanel.add(this.metadataTextArea); + this.gridPanel.layout(3, 2, 3, 1); JButton okButton = new JButton("OK"); okButton.addActionListener(new AbstractAction() { http://git-wip-us.apache.org/repos/asf/airavata/blob/63a561c3/modules/xbaya-gui/src/main/java/org/apache/airavata/xbaya/ui/experiment/WorkflowInterpreterLaunchWindow.java ---------------------------------------------------------------------- diff --git a/modules/xbaya-gui/src/main/java/org/apache/airavata/xbaya/ui/experiment/WorkflowInterpreterLaunchWindow.java b/modules/xbaya-gui/src/main/java/org/apache/airavata/xbaya/ui/experiment/WorkflowInterpreterLaunchWindow.java index 6b9ba7c..8f49623 100644 --- a/modules/xbaya-gui/src/main/java/org/apache/airavata/xbaya/ui/experiment/WorkflowInterpreterLaunchWindow.java +++ b/modules/xbaya-gui/src/main/java/org/apache/airavata/xbaya/ui/experiment/WorkflowInterpreterLaunchWindow.java @@ -308,6 +308,9 @@ public class WorkflowInterpreterLaunchWindow { elem.setName(inputNode.getID()); elem.setType(DataType.STRING); elem.setValue(value); + elem.setApplicationArgument(inputNode.getApplicationArgument()); + elem.setInputOrder(inputNode.getInputOrder()); + experiment.addToExperimentInputs(elem ); }
