diff --git a/php/classes/WSClientInterface.php b/php/classes/WSClientInterface.php index 93a82f5..ba01852 100644 --- a/php/classes/WSClientInterface.php +++ b/php/classes/WSClientInterface.php @@ -29,7 +29,7 @@ abstract class WSOrbitUnit abstract class WSSpacecraft { - const CASSINI = "Cassini_Public"; + const CASSINI = "Cassini"; const GALILEO = "Galileo"; const VOYAGER1 = "Voyager_1"; const VOYAGER2 = "Voyager_2"; @@ -117,7 +117,9 @@ Interface WSClientInterface public function getParameter($startTime, $stopTime, $parameterID, $sampling = 0, $userID = "", $password = "", $outputFormat = WSOutputFileFormat::NETCDF, $timeFormat = WSOutputTimeFormat::ISO, $gzip = 0); - + + public function getStatus($processID); + public function getDataset($startTime, $stopTime, $datasetID, $sampling = 0, $userID = "", $password = "", $outputFormat = WSOutputFileFormat::NETCDF, $timeFormat = WSOutputTimeFormat::ISO, $gzip = 0); diff --git a/php/classes/WSClientSOAP.php b/php/classes/WSClientSOAP.php index f88c6ad..b0e8fcc 100644 --- a/php/classes/WSClientSOAP.php +++ b/php/classes/WSClientSOAP.php @@ -83,7 +83,16 @@ class WSClientSOAP implements WSClientInterface return $this->call(__FUNCTION__, $params); } - + + public function getStatus($processID) + { + $params = array('parameters' => array( + "id" => $processID + )); + + return $this->call(__FUNCTION__, $params); + } + public function getDataset($startTime, $stopTime, $datasetID, $sampling = 0, $userID = "", $password = "", $outputFormat = WSOutputFileFormat::NETCDF, $timeFormat = WSOutputTimeFormat::ISO, $gzip = 0) { diff --git a/php/classes/WebServer.php b/php/classes/WebServer.php index 8eb7cab..8f0239d 100644 --- a/php/classes/WebServer.php +++ b/php/classes/WebServer.php @@ -417,18 +417,21 @@ class WebServer return array('success' => false); } - public function getStatus($id) + public function getStatus($data) { + $result = $this->init($data); + $this->userID = 'impex'; - + + $id = $result['vars']['id']; + if (!isset($this->requestManager)) $this->requestManager = new RequestManagerClass(); try { $res = $this->requestManager->runWSRequest($this->userID, 'unknown', FunctionTypeEnumClass::PROCESSGETINFO, null, $id); } catch (Exception $e) { - return array("error" => $e->getMessage()); - // $this->throwError("serverError", "Exeption detected : ".$e->getMessage()); + $this->throwError("getStatusError", "Exeption detected : ".$e->getMessage()); } if (!$res['success']) { diff --git a/public/wsdl/Methods_AMDA.wsdl b/public/wsdl/Methods_AMDA.wsdl index b092325..4127ccd 100644 --- a/public/wsdl/Methods_AMDA.wsdl +++ b/public/wsdl/Methods_AMDA.wsdl @@ -30,13 +30,13 @@ <xs:element name="getParameter" type="tns:getParameter"/> <xs:element name="getParameterResponse" type="tns:getParameterResponse"/> - <xs:element name="getDataset" type="tns:getDataset"/> + <xs:element name="getDataset" type="tns:getDataset"/> <xs:element name="getDatasetResponse" type="tns:getDatasetResponse"/> - <xs:element name="getPlot" type="tns:getPlot"/> + <xs:element name="getPlot" type="tns:getPlot"/> <xs:element name="getPlotResponse" type="tns:getPlotResponse"/> - <xs:element name="getResultPlot" type="tns:getResultPlot"/> + <xs:element name="getResultPlot" type="tns:getResultPlot"/> <xs:element name="getResultPlotResponse" type="tns:getResultPlotResponse"/> <xs:element name="getOrbites" type="tns:getOrbites"/> @@ -44,13 +44,16 @@ <xs:element name="getObsDataTreeResponse" type="tns:getObsDataTreeResponse"/> + <xs:element name="getStatus" type="tns:getStatus"/> + <xs:element name="getStatusResponse" type="tns:getStatusResponse"/> + <xs:element name="alive" type="xs:boolean"/> <xs:complexType name="getObsDataTreeResponse"> <xs:sequence> <xs:element name="success" minOccurs="0" maxOccurs="1" type="xs:boolean"> <xs:annotation> - <xs:documentation>If methode is OK success = true, else success = false</xs:documentation> + <xs:documentation>If method is OK success = true, else success = false</xs:documentation> </xs:annotation> </xs:element> <xs:element name="WorkSpace" type="tns:WorkSpace" minOccurs="1" maxOccurs="1"> @@ -728,16 +731,68 @@ of a set of typically orthogonal axes. ID's.</xs:documentation> </xs:annotation> </xs:element> - <xs:element maxOccurs="unbounded" minOccurs="0" name="dataFileURLs" - type="xs:anyURI"> + <xs:element maxOccurs="unbounded" minOccurs="0" name="dataFileURLs" type="xs:anyURI"> <xs:annotation> - <xs:documentation>URLs of results data files. If not URLs - not data for + <xs:documentation>URLs of results data files. If no URLs - no data for required parameters</xs:documentation> </xs:annotation> </xs:element> + <xs:element maxOccurs="1" minOccurs="0" name="status"> + <xs:annotation> + <xs:documentation></xs:documentation> + </xs:annotation> + <xs:simpleType> + <xs:restriction base="xs:string"> + <xs:enumeration value="in progress"/> + <xs:enumeration value="error"/> + </xs:restriction> + </xs:simpleType> + </xs:element> + <xs:element maxOccurs="1" minOccurs="0" name="id" type="xs:string"> + <xs:annotation> + <xs:documentation>process ID</xs:documentation> + </xs:annotation> + </xs:element> </xs:sequence> </xs:complexType> - + + <xs:complexType name="getStatus"> + <xs:sequence> + <xs:element minOccurs="1" maxOccurs="1" name="id" type="xs:string"> + <xs:annotation> + <xs:documentation>process ID</xs:documentation> + </xs:annotation> + </xs:element> + </xs:sequence> + </xs:complexType> + + <xs:complexType name="getStatusResponse"> + <xs:sequence> + <xs:element name="success" minOccurs="0" maxOccurs="1" type="xs:boolean"> + <xs:annotation> + <xs:documentation></xs:documentation> + </xs:annotation> + </xs:element> + <xs:element maxOccurs="unbounded" minOccurs="0" name="dataFileURLs" type="xs:anyURI"> + <xs:annotation> + <xs:documentation>URLs of results data files. If no URLs - no data for + required parameters</xs:documentation> + </xs:annotation> + </xs:element> + <xs:element maxOccurs="1" minOccurs="0" name="status"> + <xs:annotation> + <xs:documentation></xs:documentation> + </xs:annotation> + <xs:simpleType> + <xs:restriction base="xs:string"> + <xs:enumeration value="in progress"/> + <xs:enumeration value="error"/> + </xs:restriction> + </xs:simpleType> + </xs:element> + </xs:sequence> + </xs:complexType> + <xs:complexType name="getDataset"> <xs:sequence> <xs:element name="startTime" type="xs:string" minOccurs="1" maxOccurs="1"> @@ -814,8 +869,7 @@ of a set of typically orthogonal axes. <xs:sequence> <xs:element name="success" minOccurs="0" maxOccurs="1" type="xs:boolean"> <xs:annotation> - <xs:documentation>Url of TimeTables storage file with TimeTables - ID's.</xs:documentation> + <xs:documentation></xs:documentation> </xs:annotation> </xs:element> <xs:element maxOccurs="unbounded" minOccurs="0" name="dataFileURLs" @@ -999,8 +1053,7 @@ of a set of typically orthogonal axes. <xs:sequence> <xs:element name="success" minOccurs="0" maxOccurs="1" type="xs:boolean"> <xs:annotation> - <xs:documentation>Url of TimeTables storage file with TimeTables - ID's.</xs:documentation> + <xs:documentation></xs:documentation> </xs:annotation> </xs:element> <xs:element maxOccurs="unbounded" minOccurs="0" name="dataFileURLs" @@ -1040,8 +1093,7 @@ of a set of typically orthogonal axes. <xs:sequence> <xs:element name="success" minOccurs="0" maxOccurs="1" type="xs:boolean"> <xs:annotation> - <xs:documentation>Url of TimeTables storage file with TimeTables - ID's.</xs:documentation> + <xs:documentation></xs:documentation> </xs:annotation> </xs:element> <xs:element name="ttFileURL" type="xs:anyURI" minOccurs="1" maxOccurs="1"> @@ -1071,7 +1123,7 @@ of a set of typically orthogonal axes. </wsdl:message> <wsdl:message name="getObsDataTree"> - <wsdl:part name="parameters" element="tns:emptyElement"> </wsdl:part> + <wsdl:part name="parameters" element="tns:emptyElement"></wsdl:part> </wsdl:message> <wsdl:message name="getObsDataTreeResponse"> @@ -1103,7 +1155,7 @@ of a set of typically orthogonal axes. </wsdl:message> <wsdl:message name="getDataset"> - <wsdl:part name="parameters" element="tns:getDataset"> </wsdl:part> + <wsdl:part name="parameters" element="tns:getDataset"></wsdl:part> </wsdl:message> <wsdl:message name="getDatasetResponse"> @@ -1123,10 +1175,17 @@ of a set of typically orthogonal axes. </wsdl:message> <wsdl:message name="getResultPlotResponse"> - <wsdl:part name="parameters" element="tns:getResultPlotResponse"> </wsdl:part> + <wsdl:part name="parameters" element="tns:getResultPlotResponse"></wsdl:part> </wsdl:message> + <wsdl:message name="getStatus"> + <wsdl:part name="parameters" element="tns:getStatus"></wsdl:part> + </wsdl:message> + <wsdl:message name="getStatusResponse"> + <wsdl:part name="parameters" element="tns:getStatusResponse"> </wsdl:part> + </wsdl:message> + <wsdl:message name="getOrbites"> <wsdl:part name="parameters" element="tns:getOrbites"> </wsdl:part> </wsdl:message> @@ -1171,7 +1230,12 @@ of a set of typically orthogonal axes. <wsdl:input message="tns:getParameter"> </wsdl:input> <wsdl:output message="tns:getParameterResponse"> </wsdl:output> </wsdl:operation> - + + <wsdl:operation name="getStatus"> + <wsdl:input message="tns:getStatus"> </wsdl:input> + <wsdl:output message="tns:getStatusResponse"> </wsdl:output> + </wsdl:operation> + <wsdl:operation name="getDataset"> <wsdl:input message="tns:getDataset"> </wsdl:input> <wsdl:output message="tns:getDatasetResponse"> </wsdl:output> @@ -1253,7 +1317,17 @@ of a set of typically orthogonal axes. <soap:body use="literal"/> </wsdl:output> </wsdl:operation> - + + <wsdl:operation name="getStatus"> + <soap:operation soapAction="" style="document"/> + <wsdl:input> + <soap:body use="literal"/> + </wsdl:input> + <wsdl:output> + <soap:body use="literal"/> + </wsdl:output> + </wsdl:operation> + <wsdl:operation name="getDataset"> <soap:operation soapAction="" style="document"/> <wsdl:input> @@ -1309,7 +1383,7 @@ of a set of typically orthogonal axes. <wsdl:service name="Methods_AMDA"> <wsdl:port name="Methods_AMDAPort" binding="tns:Methods_AMDASoapBinding"> - <soap:address location="http://apus.cesr.fr/AMDA-TEST/php/AMDA_METHODS_WSDL.php"/> + <soap:address location="http://apus.irap.omp.eu/NEWAMDA/php/AMDA_METHODS_WSDL.php"/> </wsdl:port> </wsdl:service> </wsdl:definitions> -- libgit2 0.21.2