1 <?php
2
3 namespace MaxMind\MinFraud\Model;
4
5 /**
6 * Abstract model for a postal address.
7 *
8 * @property-read integer|null $distanceToIpLocation The distance in kilometers from
9 * the address to the IP location.
10 * @property-read boolean|null $isInIpCountry This property is true if the address
11 * is in the IP country. The property is false when the address is not in the
12 * IP country. If the address could not be parsed or was not provided or if
13 * the IP address could not be geolocated, the property will be null.
14 * @property-read boolean|null $isPostalInCity This property is true if the postal
15 * code provided with the address is in the city for the address. The property
16 * is false when the postal code is not in the city. If the address could not
17 * be parsed or was not provided, the property will be null.
18 * @property-read float|null $latitude The latitude associated with the address.
19 * @property-read float|null $longitude The longitude associated with the address.
20 *
21 */
22 abstract class Address extends AbstractModel
23 {
24 /**
25 * @internal
26 */
27 protected $isPostalInCity;
28
29 /**
30 * @internal
31 */
32 protected $latitude;
33
34 /**
35 * @internal
36 */
37 protected $longitude;
38
39 /**
40 * @internal
41 */
42 protected $distanceToIpLocation;
43
44 /**
45 * @internal
46 */
47 protected $isInIpCountry;
48
49 public function __construct($response, $locales = ['en'])
50 {
51 parent::__construct($response, $locales);
52
53 $this->isPostalInCity = $this->safeArrayLookup($response['is_postal_in_city']);
54 $this->latitude = $this->safeArrayLookup($response['latitude']);
55 $this->longitude = $this->safeArrayLookup($response['longitude']);
56 $this->distanceToIpLocation = $this->safeArrayLookup($response['distance_to_ip_location']);
57 $this->isInIpCountry = $this->safeArrayLookup($response['is_in_ip_country']);
58 }
59 }
60