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 );
         }
 

Reply via email to