format and [null,int] resolving

Project: 
http://git-wip-us.apache.org/repos/asf/incubator-taverna-common-activities/repo
Commit: 
http://git-wip-us.apache.org/repos/asf/incubator-taverna-common-activities/commit/2d28ba83
Tree: 
http://git-wip-us.apache.org/repos/asf/incubator-taverna-common-activities/tree/2d28ba83
Diff: 
http://git-wip-us.apache.org/repos/asf/incubator-taverna-common-activities/diff/2d28ba83

Branch: refs/heads/cwl-browse
Commit: 2d28ba8300608a86c699691e278ced087e93cb7c
Parents: 7b75067
Author: ThilinaManamgoda <[email protected]>
Authored: Mon Jun 20 03:46:01 2016 +0530
Committer: ThilinaManamgoda <[email protected]>
Committed: Mon Jun 20 03:46:01 2016 +0530

----------------------------------------------------------------------
 .../taverna/cwl/ui/serviceprovider/Testing.java |  6 ++-
 .../taverna/cwl/ui/view/CwlContextualView.java  |  1 +
 .../org/apache/taverna/cwl/CwlDumyActivity.java | 55 +++++++++++++++++++-
 .../java/org/apache/taverna/cwl/PortDetail.java |  7 +++
 4 files changed, 65 insertions(+), 4 deletions(-)
----------------------------------------------------------------------


http://git-wip-us.apache.org/repos/asf/incubator-taverna-common-activities/blob/2d28ba83/taverna-cwl-activity-ui/src/main/java/org/apache/taverna/cwl/ui/serviceprovider/Testing.java
----------------------------------------------------------------------
diff --git 
a/taverna-cwl-activity-ui/src/main/java/org/apache/taverna/cwl/ui/serviceprovider/Testing.java
 
b/taverna-cwl-activity-ui/src/main/java/org/apache/taverna/cwl/ui/serviceprovider/Testing.java
index 50d8063..c509d11 100644
--- 
a/taverna-cwl-activity-ui/src/main/java/org/apache/taverna/cwl/ui/serviceprovider/Testing.java
+++ 
b/taverna-cwl-activity-ui/src/main/java/org/apache/taverna/cwl/ui/serviceprovider/Testing.java
@@ -81,9 +81,11 @@ public static void main(String[] args) {
        for(File file:cwlFiles)
        try {
                Yaml cwlReader = new Yaml();
-               System.out.println(file.getName());
+       //      System.out.println(file.getName());
                Map     cwlFile = (Map) cwlReader.load(new 
FileInputStream(file));
-               processInputs(cwlFile);
+               //processInputs(cwlFile);
+               
if(file.getName().equals("bedtool-genomecov.cwl"))System.out.println(((String)((
 ArrayList<Map>)cwlFile.get(INPUTS)).get(0).get("format")).split(":")[0]);
+               
if(file.getName().equals("bedtool-genomecov.cwl"))System.out.println(((Map)(cwlFile.get("$namespaces"))).get("edam"));
        }catch(Exception e){
                System.out.println(e.getMessage());
        }

http://git-wip-us.apache.org/repos/asf/incubator-taverna-common-activities/blob/2d28ba83/taverna-cwl-activity-ui/src/main/java/org/apache/taverna/cwl/ui/view/CwlContextualView.java
----------------------------------------------------------------------
diff --git 
a/taverna-cwl-activity-ui/src/main/java/org/apache/taverna/cwl/ui/view/CwlContextualView.java
 
b/taverna-cwl-activity-ui/src/main/java/org/apache/taverna/cwl/ui/view/CwlContextualView.java
index ddc5d4d..2a036c7 100644
--- 
a/taverna-cwl-activity-ui/src/main/java/org/apache/taverna/cwl/ui/view/CwlContextualView.java
+++ 
b/taverna-cwl-activity-ui/src/main/java/org/apache/taverna/cwl/ui/view/CwlContextualView.java
@@ -44,6 +44,7 @@ public class CwlContextualView extends 
HTMLBasedActivityContextualView<CwlActivi
        private static final String TABLE_WIDTH = "100%";
        private static final String TABLE_CELL_PADDING = "5%";
 
+       private static final String FORMAT = "format";
        private final CwlActivityConfigurationBean configurationBean;
        private final CwlDumyActivity activity;
 

http://git-wip-us.apache.org/repos/asf/incubator-taverna-common-activities/blob/2d28ba83/taverna-cwl-activity/src/main/java/org/apache/taverna/cwl/CwlDumyActivity.java
----------------------------------------------------------------------
diff --git 
a/taverna-cwl-activity/src/main/java/org/apache/taverna/cwl/CwlDumyActivity.java
 
b/taverna-cwl-activity/src/main/java/org/apache/taverna/cwl/CwlDumyActivity.java
index e8023f1..9b189ac 100644
--- 
a/taverna-cwl-activity/src/main/java/org/apache/taverna/cwl/CwlDumyActivity.java
+++ 
b/taverna-cwl-activity/src/main/java/org/apache/taverna/cwl/CwlDumyActivity.java
@@ -40,8 +40,21 @@ public class CwlDumyActivity extends 
AbstractAsynchronousActivity<CwlActivityCon
        private static final int DEPTH_1 = 1;
        private static final int DEPTH_2 = 2;
        private static final String LABEL = "label";
+
+       private static final String NAMESPACES = "$namespaces";
+       // datatypes
+       private static final String FLOAT = "float";
+       private static final String NULL = "null";
+       private static final String BOOLEAN = "boolean";
+       private static final String INT = "int";
+       private static final String DOUBLE = "double";
+       private static final String STRING = "string";
+       private static final String FILE = "file";
+       private static final String FORMAT = "format";
+
        private HashMap<String, PortDetail> processedInputs;
        private HashMap<String, PortDetail> processedOutputs;
+       private LinkedHashMap nameSpace;
 
        public HashMap<String, PortDetail> getProcessedInputs() {
                return processedInputs;
@@ -59,12 +72,22 @@ public class CwlDumyActivity extends 
AbstractAsynchronousActivity<CwlActivityCon
                this.processedOutputs = processedOutputs;
        }
 
+       public void processNameSpace(Map cwlFile) {
+
+               if (cwlFile.containsKey(NAMESPACES)) {
+                       nameSpace = (LinkedHashMap) cwlFile.get(NAMESPACES);
+               }
+
+       }
+
        @Override
        public void configure(CwlActivityConfigurationBean configurationBean) 
throws ActivityConfigurationException {
                removeInputs();
                removeOutputs();
                Map cwlFile = configurationBean.getCwlConfigurations();
 
+               processNameSpace(cwlFile);
+
                if (cwlFile != null) {
                        processedInputs = processInputs(cwlFile);
 
@@ -97,6 +120,16 @@ public class CwlDumyActivity extends 
AbstractAsynchronousActivity<CwlActivityCon
                return process(cwlFile.get(INPUTS));
        }
 
+       public boolean isValidDataType(ArrayList typeConfigurations) {
+               for (Object type : typeConfigurations) {
+                       if (!(((String) type).equals(FLOAT) || ((String) 
type).equals(NULL)) || (((String) type).equals(BOOLEAN))
+                                       || (((String) type).equals(INT) || 
(((String) type).equals(DOUBLE)))
+                                       || (((String) type).equals(STRING)) || 
(((String) type).equals(FILE)))
+                               return false;
+               }
+               return true;
+       }
+
        private HashMap<String, PortDetail> process(Object inputs) {
 
                HashMap<String, PortDetail> result = new HashMap<>();
@@ -108,18 +141,30 @@ public class CwlDumyActivity extends 
AbstractAsynchronousActivity<CwlActivityCon
 
                                String currentInputId = (String) input.get(ID);
                                Object typeConfigurations;
-                               //get the parameter description
+                               // get the parameter description
                                if (input.containsKey(DESCRIPTION)) {
                                        detail.setDescription((String) 
input.get(DESCRIPTION));
                                } else {
                                        detail.setDescription(null);
                                }
-                               //get the parameter label
+                               // get the parameter label
                                if (input.containsKey(LABEL)) {
                                        detail.setLabel((String) 
input.get(LABEL));
                                } else {
                                        detail.setLabel(null);
                                }
+                               // getting the format info
+                               if (input.containsKey(FORMAT)) {
+                                       
+                                       String format[] = 
input.get(FORMAT).toString().split(":");
+                                       String namespaceKey = format[0];
+                                       String urlAppednd = format[1];
+                                       if (!nameSpace.isEmpty()) {
+                                               
detail.setFormat(nameSpace.get(namespaceKey) + urlAppednd);
+                                       } else {
+                                               detail.setFormat(null);
+                                       }
+                               }
                                try {
 
                                        typeConfigurations = input.get(TYPE);
@@ -135,6 +180,12 @@ public class CwlDumyActivity extends 
AbstractAsynchronousActivity<CwlActivityCon
                                                        
detail.setDepth(DEPTH_1);
                                                        
result.put(currentInputId, detail);
                                                }
+                                       } else if 
(typeConfigurations.getClass() == ArrayList.class) {
+                                               if (isValidDataType((ArrayList) 
typeConfigurations)) {
+                                                       
detail.setDepth(DEPTH_0);
+                                                       
result.put(currentInputId, detail);
+                                               }
+
                                        }
 
                                } catch (ClassCastException e) {

http://git-wip-us.apache.org/repos/asf/incubator-taverna-common-activities/blob/2d28ba83/taverna-cwl-activity/src/main/java/org/apache/taverna/cwl/PortDetail.java
----------------------------------------------------------------------
diff --git 
a/taverna-cwl-activity/src/main/java/org/apache/taverna/cwl/PortDetail.java 
b/taverna-cwl-activity/src/main/java/org/apache/taverna/cwl/PortDetail.java
index 8899344..18ab918 100644
--- a/taverna-cwl-activity/src/main/java/org/apache/taverna/cwl/PortDetail.java
+++ b/taverna-cwl-activity/src/main/java/org/apache/taverna/cwl/PortDetail.java
@@ -23,6 +23,7 @@ public class PortDetail {
        private int depth;
        private String description;
        private String label;
+       private String format;
        public int getDepth() {
                return depth;
        }
@@ -41,6 +42,12 @@ public class PortDetail {
        public void setLabel(String label) {
                this.label = label;
        }
+       public String getFormat() {
+               return format;
+       }
+       public void setFormat(String format) {
+               this.format = format;
+       }
        
        
 }

Reply via email to