GiSHEO Processing Component v0.2

ABOUT

GiSHEO Processing is in charge with the entire execution process. It is subdivided into:

  • GiSHEO Processing Web Service (WS) Interface
  • GiSHEO Processing TOOLS
  • GiSHEO Processing Condor Wrappers

GiSHEO Processing WS Interface

GiSHEO Processing WS (GiSHEO-PROC-WS) is in charge with the preparation and submission of the execution requests to the WMS (Workload Management System). Supported WMS:

GiSHEO-PROC-WS is built using Axis2 Web Service Engine. It is divided into two modules:

  • GiSHEO Registration WS
  • GiSHEO Query WS

GiSHEO Registration WS

A GISHEO-PROC-WS module in charge with tasks registration. It is accessible using the following URI:

and it has the following WSDL:

It exposes the following methods:

  • submitTask()
submitTask()
  • is used for describing a task for execution;
  • example:
    • request format:
      <ns1:submitTask xmlns:ns1="http://gisheo.info.uvt.ro/gisheo/proc/ws/services/RegistrationWS">
      <WfID value="''UUID()''">
        <TID value="int" isLast="boolean">
          <param>
            <name>string</name>
            <value>string</value>
          </param>
          ...
          <param>
            <name>string</name>
            <value>string</value>
          </param>
          <procName>string</procName>
          <datagroup>''UUID()''</datagroup>
          <dataset>''UUID()''</dataset>
        </TID>
      </WfID>
      </ns1:submitTask>
      
      • <WfID>
        • value : UUID of the current workflow
      • <TID>
        • value : ID of the task within the current workflow;
        • isLast : [true|false] : if it is the last task in the current workflow;
      • <param>
        • <name> : name of the parameter (is must be exactly as it appears in services.xml description; See GiSHEO Query WS :: getAllServices());
        • <value> : value of the parameter name;
      • <procName> : name of the EO processing (is must be exactly as it appears in services.xml description; See GiSHEO Query WS :: getAllServices());
      • <datagroup> : UUID of the datagroup received from GiSHEO GDIS Catalog;
        • is 0 if task is not last (isLast == false)
      • <dataset> : UUID of the dataset received from GiSHEO GDIS Catalog;
        • is 0 if task is not last (isLast == false)
    • response format:
      <ns1:submitTaskResponse xmlns:ns1="http://gisheo.info.uvt.ro/gisheo/proc/ws/services/RegistrationWS"> 
        <message>
          <msgCode>int</msgCode>
          <msgDesc>string</msgDesc>
        </message>
      </ns1:submitTaskResponse>
      
      • <message>
        • <msgCode> : an integer representing the exit code;
        • <msgDesc> : a string represeting the exit code explanation;

GiSHEO Query WS

A GiSHEO-PROC-WS Module in charge with queries for getting different information. It is accessible using the following URI:

and it has the following WSDL:

It exposes the following methods:

  • getAllServices()
  • getServiceURI()
getAllServices()
  • it is used for extracting the list with all the EO processing tools registered into GiSHEO;
  • request format:
    <getAllServices xmlns="http://gisheo.info.uvt.ro/gisheo/proc/ws/services/QueryWS" />
    
    • it doesn't need any tag definition: it expects an empty request;
  • response format:
    <getAllServicesResponse xmlns="http://gisheo.info.uvt.ro/gisheo/proc/ws/services/QueryWS">
    <gisheo>
      <service>
        <name>string</name>
        <binary>string</binary>
        <display>string</display>
        <description>string</description>
        <in_data>
          <input_file type="string">string()</input_file>
        </in_data>
        <input>
          <arg1 type="int" min="int()" max="int()" description="string">int()</arg1>
          <arg2 type="int" min="int()" max="int()" description="string">int()</arg2>
          ...
          <argN type="double" min="double()" max="double()" description="string">double()</argN>
        </input>
        <out_data>
          <output_file type="string">string()</output_file>
        </out_data>
        <groups>
          <group>string</group>
          ...
          <group>string</group>
        </groups>
        <uri>string</uri>
      </service>
      ...
    </gisheo>
    <getAllServicesResponse>
    
    • <name> : name of the processing
    • <binary> : name of the binary to be executed; usually is value is <name>.bin
    • <display> : display name for UI
    • <description> : description of the processing
    • <in_data> : input data arguments
      • <input_file> : TYPE of the input files (JPEG, TIFF etc.); usually is equal to "type" attribute
        • type : TYPE of the input files (JPEG, TIFF etc.)
    • <input> : input processing arguments
      • <argN> : default value of the argN
        • type : datatype of the argument value
        • min : minimum value of the argument
        • max : maximum value of the argument
        • description : description of the argument
    • <out_data> : output data arguments
      • <output_file> : TYPE of the input files (JPEG, TIFF etc.); usually is equal to "type" attribute
        • type : TYPE of the input files (JPEG, TIFF etc.)
    • <groups> : group members
      • <group> : group name; if there are more than one entries then the first one is the root of the groups hierarchy;
getServiceURI()
  • it is used for getting discovering services;
  • it will return an URI of the searched service; it supports only search query after input:processing_name, input:type and output:type;
  • request format:
    <ns1:getServiceURI xmlns:ns1="http://gisheo.info.uvt.ro/gisheo/proc/ws/services/QueryWS">
      <input>
        <procName>string</procName>
        <inputType>string</inputType>
        </input>
      <output>
       <outputType>string</outputType>
      </output>
    </ns1:getServiceURI>
    
    • <input>
      • <procName> : name of the processing
      • <inputType> : datatype for the input
    • <output>
      • <outputType> : datatupe for the output
  • response format:
    <ns1:getServiceURIResponse xmlns:ns1="http://gisheo.info.uvt.ro/gisheo/proc/ws/services/QueryWS">
      <uri>string</uri>
    </ns1:getServiceURIResponse>
    
    • <uri> : URI of the service that matched your search query

GiSHEO Processing TOOLS

Aknowledgement

The team who worked (and still does :-) ) at this component:

  • Adrian Dinis (adrian@…)
    • GiSHEO Processing TOOLS
  • Silviu Panica (silviu@…)
    • GiSHEO Processing WS interface
    • GiSHEO Condor Wrappers