The London Perl and Raku Workshop takes place on 26th Oct 2024. If your company depends on Perl, please consider sponsoring and/or attending.

NAME

GeoIP2::Model::Enterprise - Model class for GeoIP2 Enterprise

VERSION

version 2.006002

SYNOPSIS

use 5.008;

use GeoIP2::WebService::Client;

my $reader = GeoIP2::Database::Reader->new(
    file    => '/path/to/database',
    locales => [ 'en', 'de', ]
);

my $enterprise = $reader->enterprise( ip => '24.24.24.24' );

my $city_rec = $enterprise->city();
print $city_rec->name(), "\n";

DESCRIPTION

This class provides a model for the data returned by the GeoIP2 Enterprise database.

The only difference between the City and Enterprise model classes is which fields in each record may be populated. See http://dev.maxmind.com/geoip/geoip2/web-services for more details.

METHODS

This class provides the following methods.

$enterprise->city()

Returns a GeoIP2::Record::City object representing city data for the requested IP address.

$enterprise->continent()

Returns a GeoIP2::Record::Continent object representing continent data for the requested IP address.

$enterprise->country()

Returns a GeoIP2::Record::Country object representing country data for the requested IP address. This record represents the country where MaxMind believes the IP is located.

$enterprise->location()

Returns a GeoIP2::Record::Location object representing location data for the requested IP address.

$enterprise->postal()

Returns a GeoIP2::Record::Postal object representing postal code data for the requested IP address.

$enterprise->registered_country()

Returns a GeoIP2::Record::Country object representing the registered country data for the requested IP address. This record represents the country where the ISP has registered a given IP block and may differ from the user's country.

$enterprise->represented_country()

Returns a GeoIP2::Record::RepresentedCountry object for the country represented by the requested IP address. The represented country may differ from the country for things like military bases.

$enterprise->subdivisions()

Returns an array of GeoIP2::Record::Subdivision objects representing the country subdivisions for the requested IP address. The number and type of subdivisions varies by country, but a subdivision is typically a state, province, county, etc.

Some countries have multiple levels of subdivisions. For instance, the subdivisions array for Oxford in the United Kingdom would have England as the first element and Oxfordshire as the second element. The subdivisions array for Minneapolis in the United States would have a single object for Minnesota.

If the response did not contain any subdivisions, this method returns an empty list.

$enterprise->most_specific_subdivision()

Returns a single GeoIP2::Record::Subdivision object representing the most specific subdivision returned.

If the response did not contain any subdivisions, this method returns a GeoIP2::Record::Subdivision object with no values.

$enterprise->traits()

Returns a GeoIP2::Record::Traits object representing the traits for the requested IP address.

SUPPORT

Bugs may be submitted through https://github.com/maxmind/GeoIP2-perl/issues.

AUTHORS

  • Dave Rolsky <drolsky@maxmind.com>

  • Greg Oschwald <goschwald@maxmind.com>

  • Mark Fowler <mfowler@maxmind.com>

  • Olaf Alders <oalders@maxmind.com>

COPYRIGHT AND LICENSE

This software is copyright (c) 2013 - 2019 by MaxMind, Inc.

This is free software; you can redistribute it and/or modify it under the same terms as the Perl 5 programming language system itself.