Github user stain commented on a diff in the pull request:

    
https://github.com/apache/incubator-taverna-common-activities/pull/13#discussion_r70513165
  
    --- Diff: 
taverna-cwl-utilities/src/main/java/org/apache/taverna/cwl/utilities/CWLUtil.java
 ---
    @@ -0,0 +1,216 @@
    +package org.apache.taverna.cwl.utilities;
    +
    +import java.util.ArrayList;
    +import java.util.HashMap;
    +import java.util.Iterator;
    +
    +import com.fasterxml.jackson.databind.JsonNode;
    +import com.fasterxml.jackson.databind.node.ArrayNode;
    +import com.fasterxml.jackson.databind.node.ObjectNode;
    +import com.fasterxml.jackson.databind.node.TextNode;
    +
    +public class CWLUtil {
    +
    +   private static final String INPUTS = "inputs";
    +   private static final String OUTPUTS = "outputs";
    +   private static final String ID = "id";
    +   private static final String TYPE = "type";
    +   private static final String ARRAY = "array";
    +   private static final String DESCRIPTION = "description";
    +   private static final int DEPTH_0 = 0;
    +   private static final int DEPTH_1 = 1;
    +   private static final int DEPTH_2 = 2;
    +
    +   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 LABEL = "label";
    +   private static final String FILE = "file";
    +   private static final String FORMAT = "format";
    +   private JsonNode nameSpace;
    +   private JsonNode cwlFile;
    +
    +   public CWLUtil(JsonNode cwlFile) {
    +           this.cwlFile = cwlFile;
    +           processNameSpace();
    +   }
    +
    +   public JsonNode getNameSpace() {
    +           return nameSpace;
    +   }
    +
    +   public void processNameSpace() {
    +
    +           if (cwlFile.has("$namespaces")) {
    +                   nameSpace = cwlFile.path("$namespaces");
    +           }
    +
    +   }
    +
    +   public HashMap<String, Integer> processInputDepths() {
    +           return process(cwlFile.get(INPUTS));
    +   }
    +
    +   public HashMap<String, Integer> processOutputDepths() {
    +           return process(cwlFile.get(OUTPUTS));
    +   }
    +
    +   public HashMap<String, PortDetail> processInputDetails() {
    +           return processdetails(cwlFile.get(INPUTS));
    +   }
    +
    +   public HashMap<String, PortDetail> processOutputDetails() {
    +           return processdetails(cwlFile.get(OUTPUTS));
    +   }
    +
    +   public HashMap<String, Integer> process(JsonNode inputs) {
    --- End diff --
    
    It is unclear what this public `process()` method does or returns... could 
you add a `/**` javadocs explaining inputs and outputs for these methods?
    
    Also as mentioned before, `HashMap` -> `Map` :-)


---
If your project is set up for it, you can reply to this email and have your
reply appear on GitHub as well. If your project does not have this feature
enabled and wishes so, or if the feature is enabled but not working, please
contact infrastructure at infrastruct...@apache.org or file a JIRA ticket
with INFRA.
---

Reply via email to