summaryrefslogtreecommitdiffstats
path: root/vendor/geoip2/geoip2/src/Model/Asn.php
diff options
context:
space:
mode:
Diffstat (limited to 'vendor/geoip2/geoip2/src/Model/Asn.php')
-rw-r--r--vendor/geoip2/geoip2/src/Model/Asn.php43
1 files changed, 43 insertions, 0 deletions
diff --git a/vendor/geoip2/geoip2/src/Model/Asn.php b/vendor/geoip2/geoip2/src/Model/Asn.php
new file mode 100644
index 0000000..09f746e
--- /dev/null
+++ b/vendor/geoip2/geoip2/src/Model/Asn.php
@@ -0,0 +1,43 @@
+<?php
+
+namespace GeoIp2\Model;
+
+use GeoIp2\Util;
+
+/**
+ * This class provides the GeoLite2 ASN model.
+ *
+ * @property-read int|null $autonomousSystemNumber The autonomous system number
+ * associated with the IP address.
+ * @property-read string|null $autonomousSystemOrganization The organization
+ * associated with the registered autonomous system number for the IP
+ * address.
+ * @property-read string $ipAddress The IP address that the data in the model is
+ * for.
+ * @property-read string $network The network in CIDR notation associated with
+ * the record. In particular, this is the largest network where all of the
+ * fields besides $ipAddress have the same value.
+ */
+class Asn extends AbstractModel
+{
+ protected $autonomousSystemNumber;
+ protected $autonomousSystemOrganization;
+ protected $ipAddress;
+ protected $network;
+
+ /**
+ * @ignore
+ *
+ * @param mixed $raw
+ */
+ public function __construct($raw)
+ {
+ parent::__construct($raw);
+ $this->autonomousSystemNumber = $this->get('autonomous_system_number');
+ $this->autonomousSystemOrganization =
+ $this->get('autonomous_system_organization');
+ $ipAddress = $this->get('ip_address');
+ $this->ipAddress = $ipAddress;
+ $this->network = Util::cidr($ipAddress, $this->get('prefix_len'));
+ }
+}