Get additional port info from WSP Process

Project: 
http://git-wip-us.apache.org/repos/asf/incubator-taverna-plugin-gis/repo
Commit: 
http://git-wip-us.apache.org/repos/asf/incubator-taverna-plugin-gis/commit/c4077e49
Tree: 
http://git-wip-us.apache.org/repos/asf/incubator-taverna-plugin-gis/tree/c4077e49
Diff: 
http://git-wip-us.apache.org/repos/asf/incubator-taverna-plugin-gis/diff/c4077e49

Branch: refs/heads/taverna2
Commit: c4077e49b368eec481d4a85e885d9574fad774fe
Parents: d1e9eab
Author: edikaradumi <[email protected]>
Authored: Thu Aug 4 05:00:24 2016 +0100
Committer: edikaradumi <[email protected]>
Committed: Thu Aug 4 05:00:24 2016 +0100

----------------------------------------------------------------------
 .../gis/client/impl/GisClientNorthImpl.java     | 41 ++++++++++++++++++++
 .../taverna/gis/client/impl/TypeDescriptor.java | 24 ++++++++++++
 2 files changed, 65 insertions(+)
----------------------------------------------------------------------


http://git-wip-us.apache.org/repos/asf/incubator-taverna-plugin-gis/blob/c4077e49/apache-taverna-plugin-gis-client/src/main/java/org/apache/taverna/gis/client/impl/GisClientNorthImpl.java
----------------------------------------------------------------------
diff --git 
a/apache-taverna-plugin-gis-client/src/main/java/org/apache/taverna/gis/client/impl/GisClientNorthImpl.java
 
b/apache-taverna-plugin-gis-client/src/main/java/org/apache/taverna/gis/client/impl/GisClientNorthImpl.java
index 84c85c3..2ffc9f7 100644
--- 
a/apache-taverna-plugin-gis-client/src/main/java/org/apache/taverna/gis/client/impl/GisClientNorthImpl.java
+++ 
b/apache-taverna-plugin-gis-client/src/main/java/org/apache/taverna/gis/client/impl/GisClientNorthImpl.java
@@ -34,6 +34,8 @@ import org.n52.wps.client.WPSClientSession;
 
 import net.opengis.ows.x11.LanguageStringType;
 import net.opengis.wps.x100.CapabilitiesDocument;
+import net.opengis.wps.x100.ComplexDataCombinationType;
+import net.opengis.wps.x100.ComplexDataCombinationsType;
 import net.opengis.wps.x100.InputDescriptionType;
 import net.opengis.wps.x100.OutputDescriptionType;
 import net.opengis.wps.x100.ProcessBriefType;
@@ -167,6 +169,10 @@ public class GisClientNorthImpl implements IGisClient {
                        myNewInputPort.setAllowLiteralValues(true);
                        myNewInputPort.setHandledReferenceSchemes(null); // is 
not used in Taverna
                        myNewInputPort.setTranslatedElementType(String.class);
+                       
myNewInputPort.setRequired(input.getMinOccurs().compareTo(BigInteger.valueOf(1))>0?true:false);
+                       
myNewInputPort.setSupportedFormats(getPortSupportedFormats(input));
+                       
+                       
                        
                        inputPorts.add(myNewInputPort);
                }
@@ -175,6 +181,41 @@ public class GisClientNorthImpl implements IGisClient {
        }
 
        /**
+        * @param input port
+        * @return List of supported formats
+        */
+       private List<String> getPortSupportedFormats(InputDescriptionType 
inputPort)
+       {
+               List<String> supportedFormats = new ArrayList<String>();
+               
+               if (inputPort.getLiteralData() == null)
+                       return supportedFormats;
+               
+               if (inputPort.getComplexData()==null)
+                       return supportedFormats;
+               else
+               {
+                       
+                       
inputPort.getBoundingBoxData().getSupported().getCRSArray();
+                       inputPort.getBoundingBoxData().getDefault().getCRS();
+                       
+                       
+                       ComplexDataCombinationsType complexDataType = 
inputPort.getComplexData().getSupported();
+                       inputPort.getComplexData().getDefault().getFormat();
+                       complexDataType.getFormatArray(0).getEncoding();
+                       complexDataType.getFormatArray(0).getMimeType();
+                       complexDataType.getFormatArray(0).getSchema();
+                       
+                       
+               }
+               
+               
+                
+               
+               return supportedFormats;
+       }
+       
+       /**
         * @param inputPort
         * @return
         */

http://git-wip-us.apache.org/repos/asf/incubator-taverna-plugin-gis/blob/c4077e49/apache-taverna-plugin-gis-client/src/main/java/org/apache/taverna/gis/client/impl/TypeDescriptor.java
----------------------------------------------------------------------
diff --git 
a/apache-taverna-plugin-gis-client/src/main/java/org/apache/taverna/gis/client/impl/TypeDescriptor.java
 
b/apache-taverna-plugin-gis-client/src/main/java/org/apache/taverna/gis/client/impl/TypeDescriptor.java
index d9fb8f6..bc18d3f 100644
--- 
a/apache-taverna-plugin-gis-client/src/main/java/org/apache/taverna/gis/client/impl/TypeDescriptor.java
+++ 
b/apache-taverna-plugin-gis-client/src/main/java/org/apache/taverna/gis/client/impl/TypeDescriptor.java
@@ -1,11 +1,17 @@
 package org.apache.taverna.gis.client.impl;
 
+import java.util.List;
+
 public class TypeDescriptor {
        private String name;
        private Integer depth;
        private boolean allowLiteralValues;
        private String handledReferenceSchemes;
        private Class<?> translatedElementType;
+       private boolean isRequired;
+       private List<String> supportedFormats;
+       private String defaultFormat;
+       
        public String getName() {
                return name;
        }
@@ -36,5 +42,23 @@ public class TypeDescriptor {
        public void setTranslatedElementType(Class<?> translatedElementType) {
                this.translatedElementType = translatedElementType;
        }
+       public boolean isRequired() {
+               return isRequired;
+       }
+       public void setRequired(boolean isRequired) {
+               this.isRequired = isRequired;
+       }
+       public List<String> getSupportedFormats() {
+               return supportedFormats;
+       }
+       public void setSupportedFormats(List<String> supportedFormats) {
+               this.supportedFormats = supportedFormats;
+       }
+       public String getDefaultFormat() {
+               return defaultFormat;
+       }
+       public void setDefaultFormat(String defaultFormat) {
+               this.defaultFormat = defaultFormat;
+       }
        
 }

Reply via email to