Skip to content
Snippets Groups Projects
Commit 1d219cf7 authored by Thomas Müller's avatar Thomas Müller
Browse files

With V2 we should ensure that the status codes are kept in sync

parent 55dc74bb
No related branches found
No related tags found
No related merge requests found
......@@ -354,15 +354,18 @@ class OC_API {
header($name . ': ' . $value);
}
$meta = $result->getMeta();
$data = $result->getData();
if (self::isV2()) {
$statusCode = self::mapStatusCodes($result->getStatusCode());
if (!is_null($statusCode)) {
$meta['statuscode'] = $statusCode;
OC_Response::setStatus($statusCode);
}
}
self::setContentType($format);
$body = self::renderResult($result, $format);
$body = self::renderResult($format, $meta, $data);
echo $body;
}
......@@ -452,15 +455,14 @@ class OC_API {
}
/**
* @param OC_OCS_Result $result
* @param string $format
* @return string
*/
public static function renderResult($result, $format) {
public static function renderResult($format, $meta, $data) {
$response = array(
'ocs' => array(
'meta' => $result->getMeta(),
'data' => $result->getData(),
'meta' => $meta,
'data' => $data,
),
);
if ($format == 'json') {
......
......@@ -93,7 +93,7 @@ class OC_OCS_Result{
*/
public function getMeta() {
$meta = array();
$meta['status'] = ($this->statusCode === 100) ? 'ok' : 'failure';
$meta['status'] = $this->succeeded() ? 'ok' : 'failure';
$meta['statuscode'] = $this->statusCode;
$meta['message'] = $this->message;
if(isset($this->items)) {
......
......@@ -85,7 +85,7 @@ class OCSResponse extends Response {
$r->setTotalItems($this->itemscount);
$r->setItemsPerPage($this->itemsperpage);
return \OC_API::renderResult($r, $this->format);
return \OC_API::renderResult($this->format, $r->getMeta(), $r->getData());
}
......
0% Loading or .
You are about to add 0 people to the discussion. Proceed with caution.
Please register or to comment