+ public TreeMap<String, LinkedHashMap<String, Object>> createPorts(TreeMap<String, LinkedHashMap<String, Object>> inps) {
+ TreeMap<String, LinkedHashMap<String, Object>> retInputs = inps;
+ LinkedHashMap<String, Object> portType = new LinkedHashMap();
+ portType.put("type", "string");
+
+ ArrayList<Object> ports = new ArrayList();
+ String external = "";
+ boolean foundPort = false;
+ for(Object o: this.getPorts()) {
+ String internal = "";
+ String p = o.toString();
+ for(int i = 0; i < p.length(); i++) {
+ if(p.charAt(i) == ':') {
+ internal = '"' + internal + '"';
+ internal = "concat:['" + internal + "', {get_input: external_port}]";
+ ports.add(internal);
+ }
+ if(p.charAt(i) == ':' && !foundPort) {
+ external = p.substring(i);
+ portType.put("default", external);
+ retInputs.put("external_port", portType);
+
+ }
+ internal = internal + p.charAt(i);
+
+ }
+ }
+
+ this.setPorts(ports);
+ return retInputs;
+ }
+}
\ No newline at end of file