1: <?php
 2: 
 3: /**
 4:  * Get a list of the SysPay ip addresses
 5:  * @see  https://app.syspay.com/bundles/emiuser/doc/merchant_api.html#get-system-ip-addresses
 6:  */
 7: class Syspay_Merchant_IpAddressesRequest extends Syspay_Merchant_Request
 8: {
 9:     const METHOD = 'GET';
10:     const PATH   = '/api/v1/merchant/system-ip';
11: 
12:     /**
13:      * {@inheritDoc}
14:      */
15:     public function getMethod()
16:     {
17:         return self::METHOD;
18:     }
19: 
20:     /**
21:      * {@inheritDoc}
22:      */
23:     public function getPath()
24:     {
25:         return self::PATH;
26:     }
27: 
28:     public function buildResponse(stdClass $response)
29:     {
30:         if (!isset($response->ip_addresses) || !is_array($response->ip_addresses)) {
31:             throw new Syspay_Merchant_UnexpectedResponseException(
32:                 'Unable to retrieve "ip_addresses" data from response',
33:                 $response
34:             );
35:         }
36: 
37:         return $response->ip_addresses;
38:     }
39: }
40: