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