protected function getXML() { if ($this->response->getStatusCode() == 200) { $content = SmintXML::simpleXMLElement(); $track_added = $content->addChild("track_to_be_deleted"); $track_added->addAttribute("id", $this->guid); $track_added->addAttribute("collection", $this->collection); return $content->asXML(); } else { if (!isset($this->errorMessage)) { $this->errorMessage = "No additional Information on error available."; } return SmintErrorXML::error($this->response->getStatusCode(), $this->errorMessage); } }
protected function getXML() { $major = 1; $minor = 3; //$svn_revision = explode(' ',''); //$revision = $svn_revision[1]; $revision = 999; // currently NA $content = SmintXML::simpleXMLElement(); $version = $content->addChild("version"); $version->addAttribute("major", $major); $version->addAttribute("minor", $minor); $version->addAttribute("revision", $revision); $this->response->setStatus(200); return $content->asXML(); }
protected function getXML() { if ($this->response->getStatusCode() == 200) { $content = SmintXML::simpleXMLElement(); $track_added = $content->addChild("track_added"); $track_added->addAttribute("smint_track_id", $this->uniqueid); $track_added->addAttribute("url", $this->fileURL); $track_added->addAttribute("file", $this->localFile); if (!is_null($this->external_key)) { $track_added->addAttribute("external_key", $this->external_key); } return $content->asXML(); } else { if (!isset($this->errorMessage)) { $this->errorMessage = "No additional Information on error available."; } return SmintErrorXML::error($this->response->getStatusCode(), $this->errorMessage); } }
protected function getXML() { $result = $this->queryBySmintFileId(); if (is_null($result)) { // if there was an error the result will be null // assume that the detailed error message was set where the query failed $this->response->setStatus(403); return SmintErrorXML::error($this->response->getStatusCode(), $this->errorMessage); } else { if (count($result) > 0) { $this->response->setStatus(200); $content = SmintXML::simpleXMLElement(); $querytrack = $content->addChild("query"); $querytrack->addAttribute("id", $this->queryFileGUID); if ($this->external_keys) { if (!isset($this->queryFileExternal_Key)) { $this->queryFileExternal_Key = $this->getExternalKeyfromGUID($this->queryFileGUID); } $querytrack->addAttribute("external_key", $this->queryFileExternal_Key); } if ($this->collection) { $querytrack->addAttribute("collection", $this->collection); } foreach ($result as $trackKey => $trackValue) { $resultnode = $querytrack->addChild("result"); $resultnode->addAttribute("id", $trackValue["guid"]); if ($this->external_keys) { $resultnode->addAttribute("external_key", $trackValue["external_key"]); } if ($this->distance_values) { $resultnode->addAttribute("value", $trackValue["value"]); } } return $content->asXML(); } else { # check if jobs are already added $job_result = $this->queryJobsBySmintFileId(); if (is_null($job_result)) { // if there was an error the result will be null // assume that the detailed error message was set where the query failed $this->response->setStatus(403); return SmintErrorXML::error($this->response->getStatusCode(), $this->errorMessage); } if (count($job_result) > 0) { $this->response->setStatus(200); $content = SmintXML::simpleXMLElement(); $querytrack = $content->addChild("query"); $querytrack->addAttribute("id", $this->queryFileGUID); if ($this->external_keys) { if (!isset($this->queryFileExternal_Key)) { $this->queryFileExternal_Key = $this->getExternalKeyfromGUID($this->queryFileGUID); } $querytrack->addAttribute("external_key", $this->queryFileExternal_Key); } if ($this->collection) { $querytrack->addAttribute("collection", $this->collection); } if ($job_result[0]["status"] == null) { $status_message = "waiting for processing."; $status_code = 1; } else { if ($job_result[0]["status"] == "FAILED") { $status_message = "job could not be processed: " . $job_result[0]["log"]; $status_code = -1; } else { if ($job_result[0]["status"] == "OK") { // check if distjobs are open: $featurevectortype_id = $this->apiConfig["query"]["defaultFVTypeid"]; $distancetype_id = $this->apiConfig["query"]["defaultDSTypeid"]; if ($this->openDistanceJobs($job_result[0]["id"], $featurevectortype_id, $distancetype_id)) { $status_message = "processing done. indexing. this might take some time."; $status_code = 3; } else { $status_message = "job processed. if there is no result, there might be no related track in the database. "; $status_code = 0; } } else { if (strlen($job_result[0]["status"]) > 0) { // assume that the string is the ID of the daemon performing the current job $status_message = "job is processed by process: " . $job_result[0]["status"]; $status_code = 2; } } } } // currently not directly covered by add_job table -> use separate query to check if distance jobs are open // else if ( $job_result[0]["status"] == "DIST" ) { // $status_message = "processing done. indexing might still take some time."; // $status_code = 3; // } $result = $querytrack->addChild("status", $status_message); $result->addAttribute("status_code", $status_code); return $content->asXML(); } else { $this->response->setStatus(404); $this->errorMessage = "Track with the guid: \"{$this->queryFileGUID}\""; if ($this->external_keys) { $this->errorMessage = $this->errorMessage . " / external_key: \"{$this->queryFileExternal_Key}\""; } if ($this->collection) { $this->errorMessage = $this->errorMessage . " / collection: \"{$this->collection}\""; } $this->errorMessage = $this->errorMessage . " could not be found in our database. {$this->debug}"; return SmintErrorXML::error($this->response->getStatusCode(), $this->errorMessage); } } } }
protected function getXML() { if ($this->response->getStatusCode() == 200) { $content = SmintXML::simpleXMLElement(); foreach ($this->nns as $nn) { $nn_node = $content->addChild("match", $nn[3]); //$nn_node->addAttribute("track_id", $nn[0]); //$nn_node->addAttribute("segment_id", $nn[1]); $nn_node->addAttribute("confidence", number_format($nn[2], 3)); //$nn_node->addAttribute("", $nn[1]); } return $content->asXML(); } else { if (!isset($this->errorMessage)) { $this->errorMessage = "No additional Information on error available."; } return SmintErrorXML::error($this->response->getStatusCode(), $this->errorMessage); } }