Engine WSDL

From Gcube Wiki
Jump to: navigation, search
<definitions name="Engine"
    targetNamespace="http://gcube-system.org/namespaces/vremanagement/executor"
    xmlns:tns="http://gcube-system.org/namespaces/vremanagement/executor"
  	xmlns="http://schemas.xmlsoap.org/wsdl/"
    xmlns:xsd="http://www.w3.org/2001/XMLSchema"
    xmlns:corefaults="http://gcube-system.org/namespaces/common/core/faults"
    xmlns:wsdlpp="http://www.globus.org/namespaces/2004/10/WSDLPreprocessor"
    xmlns:provider="http://gcube-system.org/namespaces/common/core/porttypes/GCUBEProvider"
    xmlns:coretypes="http://gcube-system.org/namespaces/common/core/types"
    xmlns:wsa="http://schemas.xmlsoap.org/ws/2004/03/addressing">
    
    <import namespace="http://gcube-system.org/namespaces/common/core/porttypes/GCUBEProvider" location="../gcube/common/core/providers/GCUBEProvider.wsdl"/>
    <import namespace="http://gcube-system.org/namespaces/common/core/faults" location="../gcube/common/core/faults/GCUBEFaults.wsdl"/>
    
 	<types>
	<xsd:schema targetNamespace="http://gcube-system.org/namespaces/vremanagement/executor">    	
	        
	      <xsd:import namespace="http://gcube-system.org/namespaces/common/core/types" schemaLocation="../gcube/common/core/types/GCUBETypes.xsd"/>
	
	     <xsd:element name="launch" type="tns:launchParameters"/>
	     <xsd:element name="launchResponse" type="wsa:EndpointReferenceType" />			
	     
	     <xsd:complexType name="launchParameters">
    	 	<xsd:sequence>
    	 	 <xsd:element name="name" nillable="false" type="xsd:string" minOccurs="1" maxOccurs="1"/>	
    	 	 <xsd:element name="other" nillable="true" type="tns:anyPair" minOccurs="0" maxOccurs="unbounded"/>	
    	 	</xsd:sequence>
	     </xsd:complexType> 
	     
		<xsd:complexType name="anyPair">
			<xsd:sequence>
				<xsd:element name="name" nillable="false" type="xsd:string" minOccurs="1" maxOccurs="1"/>
				<xsd:element name="value" nillable="false" type="xsd:anyType" minOccurs="1" maxOccurs="1"/>
			</xsd:sequence>
		</xsd:complexType> 
		 	        
		<xsd:complexType name="stringHolder">
			<xsd:sequence>
				<xsd:element name="value" nillable="false" type="xsd:string" minOccurs="1" maxOccurs="1"/>
			</xsd:sequence>
		</xsd:complexType>	 

    	 <xsd:complexType name="TaskDescription">
			<xsd:sequence>
				<xsd:element name="name" nillable="false" type="xsd:string" minOccurs="1" maxOccurs="1"/>
				<xsd:element name="description" nillable="false" type="xsd:string" minOccurs="1" maxOccurs="1"/>
				<xsd:element name="property" nillable="true" type="coretypes:descriptiveProperty" minOccurs="0" maxOccurs="unbound"/>
				<xsd:element name="sampleInput" nillable="true" type="coretypes:descriptiveProperty" minOccurs="0" maxOccurs="unbound"/>
				<xsd:element name="sampleOutput" nillable="true" type="coretypes:descriptiveProperty" minOccurs="0" maxOccurs="unbound"/>
			</xsd:sequence>			
		 </xsd:complexType>
		                     
	</xsd:schema>
	</types>

	<message name="launchInputMessage">
		<part name="request" element="tns:launch"/>
	</message>
	<message name="launchOutputMessage">
		<part name="response" element="tns:launchResponse"/>
	</message>

	<portType name="EnginePortType" wsdlpp:extends="provider:GCUBEProvider">        
	
		<operation name="launch">
			<input message="tns:launchInputMessage"/>
			<output message="tns:launchOutputMessage"/>
			<fault name="fault" message="corefaults:GCUBEFaultMessage"></fault>
		</operation>	
	
	</portType>

</definitions>