MyAllocator PMS PHP SDK
  • Namespace
  • Class
  • Tree

Namespaces

  • MyAllocator
    • phpsdk
      • src
        • Api
        • Exception
        • Object
        • Util
  • PHP

Exceptions

  • ApiAuthenticationException
  • ApiConnectionException
  • ApiException
  • InvalidRequestException
  • MaException
 1 <?php
 2 /**
 3  * Copyright (C) 2014 MyAllocator
 4  *
 5  * A copy of the LICENSE can be found in the LICENSE file within
 6  * the root directory of this library.  
 7  *
 8  * Permission is hereby granted, free of charge, to any person obtaining a
 9  * copy of this software and associated documentation files (the "Software"),
10  * to deal in the Software without restriction, including without limitation
11  * the rights to use, copy, modify, merge, publish, distribute, sublicense,
12  * and/or sell copies of the Software, and to permit persons to whom the
13  * Software is furnished to do so, subject to the following conditions:
14  *
15  * The above copyright notice and this permission notice shall be included
16  * in all copies or substantial portions of the Software.
17  *
18  * THE SOFTWARE IS PROVIDED "AS IS", WITHOUT WARRANTY OF ANY KIND, EXPRESS
19  * OR IMPLIED, INCLUDING BUT NOT LIMITED TO THE WARRANTIES OF MERCHANTABILITY,
20  * FITNESS FOR A PARTICULAR PURPOSE AND NONINFRINGEMENT. IN NO EVENT SHALL THE
21  * AUTHORS OR COPYRIGHT HOLDERS BE LIABLE FOR ANY CLAIM, DAMAGES OR OTHER
22  * LIABILITY, WHETHER IN AN ACTION OF CONTRACT, TORT OR OTHERWISE, ARISING
23  * FROM, OUT OF OR IN CONNECTION WITH THE SOFTWARE OR THE USE OR OTHER DEALINGS
24  * IN THE SOFTWARE.
25  */
26 
27 namespace MyAllocator\phpsdk\src\Exception;
28 
29 /**
30  * The MyAllocator base exception class.
31  */
32 class MaException extends \Exception
33 {
34     /**
35      * @var array State data before the exception.
36      */
37     protected $state = null;
38 
39     /**
40      * The constructor may set request/response parameters.
41      *
42      * @param string $msg The exception description.
43      * @param array $args The request/response parameters.
44      */
45     public function __construct($msg, $state = null)
46     {
47         parent::__construct($msg);
48 
49         if (isset($state)) {
50             $this->state = $state;
51         }
52     }
53 
54     /**
55      * Get the state of an exception
56      */
57     public function getState()
58     {
59         return $this->state;
60     }
61 
62     /**
63      * Get the http status code of an exception.
64      */
65     public function getHttpStatus()
66     {
67         if ($this->state && isset($this->state['response']['code'])) {
68             return $this->state['response']['code'];
69         } else {
70             return null;
71         }
72     }
73 
74     /**
75      * Get the http body of an exception.
76      */
77     public function getHttpBody()
78     {
79         if ($this->state && isset($this->state['response']['body'])) {
80             return $this->state['response']['body'];
81         } else {
82             return null;
83         }
84     }
85 
86     /**
87      * Get the http body as json of an exception.
88      */
89     public function getJsonBody()
90     {
91         if ($this->state && isset($this->state['response']['body_raw'])) {
92             return $this->state['response']['body_raw'];
93         } else {
94             return null;
95         }
96     }
97 }
98 
MyAllocator PMS PHP SDK API documentation generated by ApiGen