Viewing file: ResponseItem.php (2.62 KB) -rwxr-xr-x Select action/file-type: (+) | (+) | (+) | Code (+) | Session (+) | (+) | SDB (+) | (+) | (+) | (+) | (+) | (+) |
<?php /** * Licensed to the Apache Software Foundation (ASF) under one * or more contributor license agreements. See the NOTICE file * distributed with this work for additional information * regarding copyright ownership. The ASF licenses this file * to you under the Apache License, Version 2.0 (the * "License"); you may not use this file except in compliance * with the License. You may obtain a copy of the License at * * http://www.apache.org/licenses/LICENSE-2.0 * * Unless required by applicable law or agreed to in writing, * software distributed under the License is distributed on an * "AS IS" BASIS, WITHOUT WARRANTIES OR CONDITIONS OF ANY * KIND, either express or implied. See the License for the * specific language governing permissions and limitations * under the License. */
/** * Represents the response items that get handed back as json within the * DataResponse */ class ResponseItem { public $error; public $errorMessage; public $response;
public function __construct($error = null, $errorMessage = null, $response = null) { $this->error = $error; $this->errorMessage = $errorMessage; $this->response = $this->trimResponse($response); if ($this->error === null && $this->errorMessage === null) { // trim null values of self too unset($this->error); unset($this->errorMessage); } }
/** * the json_encode function does not trim null values, * so we do this manually * * @param mixed $object */ private function trimResponse(&$object) { if (is_array($object)) { foreach ($object as $key => $val) { // binary compare, otherwise false == 0 == null too if ($val === null) { unset($object[$key]); } elseif (is_array($val) || is_object($val)) { $object[$key] = $this->trimResponse($val); } } } elseif (is_object($object)) { $vars = get_object_vars($object); foreach ($vars as $key => $val) { if ($val === null) { unset($object->$key); } elseif (is_array($val) || is_object($val)) { $object->$key = $this->trimResponse($val); } } } return $object; }
public function getError() { return isset($this->error) ? $this->error : null; }
public function setError($error) { $this->error = $error; }
public function getErrorMessage() { return $this->errorMessage; }
public function setErrorMessage($errorMessage) { $this->errorMessage = $errorMessage; }
public function getResponse() { return $this->response; }
public function setResponse($response) { $this->response = $response; } }
|