Source of file Error.php
Size: 3,347 Bytes - Last Modified: 2014-03-12T23:21:18+01:00
/home/theseer/Downloads/ZendFramework-2.3.0/library/Zend/Json/Server/Error.php
123456789101112131415161718192021222324252627282930313233343536373839404142434445464748495051525354555657585960616263646566676869707172737475767778798081828384858687888990919293949596979899100101102103104105106107108109110111112113114115116117118119120121122123124125126127128129130131132133134135136137138139140141142143144145146147148149150151152153154155156157158159160161162163164165166167168169170171172173174 | <?php /** * Zend Framework (http://framework.zend.com/) * * @link http://github.com/zendframework/zf2 for the canonical source repository * @copyright Copyright (c) 2005-2014 Zend Technologies USA Inc. (http://www.zend.com) * @license http://framework.zend.com/license/new-bsd New BSD License */ namespace Zend\Json\Server; class Error { const ERROR_PARSE = -32700; const ERROR_INVALID_REQUEST = -32600; const ERROR_INVALID_METHOD = -32601; const ERROR_INVALID_PARAMS = -32602; const ERROR_INTERNAL = -32603; const ERROR_OTHER = -32000; /** * Current code * @var int */ protected $code = self::ERROR_OTHER; /** * Error data * @var mixed */ protected $data; /** * Error message * @var string */ protected $message; /** * Constructor * * @param string $message * @param int $code * @param mixed $data */ public function __construct($message = null, $code = self::ERROR_OTHER, $data = null) { $this->setMessage($message) ->setCode($code) ->setData($data); } /** * Set error code. * * If the error code is 0, it will be set to -32000 (ERROR_OTHER). * * @param int $code * @return \Zend\Json\Server\Error */ public function setCode($code) { if (!is_scalar($code) || is_bool($code) || is_float($code)) { return $this; } if (is_string($code) && !is_numeric($code)) { return $this; } $code = (int) $code; if (0 === $code) { $this->code = self::ERROR_OTHER; } else { $this->code = $code; } return $this; } /** * Get error code * * @return int|null */ public function getCode() { return $this->code; } /** * Set error message * * @param string $message * @return \Zend\Json\Server\Error */ public function setMessage($message) { if (!is_scalar($message)) { return $this; } $this->message = (string) $message; return $this; } /** * Get error message * * @return string */ public function getMessage() { return $this->message; } /** * Set error data * * @param mixed $data * @return \Zend\Json\Server\Error */ public function setData($data) { $this->data = $data; return $this; } /** * Get error data * * @return mixed */ public function getData() { return $this->data; } /** * Cast error to array * * @return array */ public function toArray() { return array( 'code' => $this->getCode(), 'message' => $this->getMessage(), 'data' => $this->getData(), ); } /** * Cast error to JSON * * @return string */ public function toJson() { return \Zend\Json\Json::encode($this->toArray()); } /** * Cast to string (JSON) * * @return string */ public function __toString() { return $this->toJson(); } } |