You are here

public static function DatabaseFileUtility::getFilename in Smart IP 8.3

Same name in this branch
  1. 8.3 modules/smart_ip_maxmind_geoip2_bin_db/src/DatabaseFileUtility.php \Drupal\smart_ip_maxmind_geoip2_bin_db\DatabaseFileUtility::getFilename()
  2. 8.3 modules/smart_ip_ip2location_bin_db/src/DatabaseFileUtility.php \Drupal\smart_ip_ip2location_bin_db\DatabaseFileUtility::getFilename()
Same name and namespace in other branches
  1. 8.4 modules/smart_ip_ip2location_bin_db/src/DatabaseFileUtility.php \Drupal\smart_ip_ip2location_bin_db\DatabaseFileUtility::getFilename()

Get IP2Location binary database filename.

Parameters

string $version: Type of subscription: licensed or lite version.

string $edition: IP2Location product code.

string $ipVersion: IP version: IPv4 or IPv6.

Return value

string Returns the IP2Location binary database filename.

Overrides DatabaseFileUtilityInterface::getFilename

3 calls to DatabaseFileUtility::getFilename()
DatabaseFileUtility::downloadDatabaseFile in modules/smart_ip_ip2location_bin_db/src/DatabaseFileUtility.php
Download IP2Location binary database file and extract it. Only perform this action when the database is out of date or under specific direction.
SmartIpEventSubscriber::processQuery in modules/smart_ip_ip2location_bin_db/src/EventSubscriber/SmartIpEventSubscriber.php
Act on \Drupal\smart_ip\SmartIp::query() when executed and if selected as Smart IP data source, query the IP address against its database.
SmartIpEventSubscriber::validateFormSettings in modules/smart_ip_ip2location_bin_db/src/EventSubscriber/SmartIpEventSubscriber.php
Act on validation of main Smart IP admin settings form.

File

modules/smart_ip_ip2location_bin_db/src/DatabaseFileUtility.php, line 35
Contains \Drupal\smart_ip_ip2location_bin_db\DatabaseFileUtility.

Class

DatabaseFileUtility
Utility methods class wrapper.

Namespace

Drupal\smart_ip_ip2location_bin_db

Code

public static function getFilename($version = Ip2locationBinDb::LITE_VERSION, $edition = Ip2locationBinDb::DEFAULT_EDITION, $ipVersion = Ip2locationBinDb::IPV4_VERSION) {
  if ($version == Ip2locationBinDb::LINCENSED_VERSION) {
    $productName = Ip2locationBinDb::products($version, $edition);
    if ($ipVersion == Ip2locationBinDb::IPV6_VERSION) {
      $filename = 'IPV6-' . Unicode::strtoupper($productName) . '.BIN';
    }
    else {
      $filename = 'IP-' . Unicode::strtoupper($productName) . '.BIN';
    }
  }
  else {
    if ($ipVersion == Ip2locationBinDb::IPV6_VERSION) {
      $filename = "IP2LOCATION-LITE-{$edition}.IPV6.BIN";
    }
    else {
      $filename = "IP2LOCATION-LITE-{$edition}.BIN";
    }
  }
  return $filename;
}