class Geocoder::Lookup::Geoip2
def initialize
def initialize unless configuration[:file].nil? begin @gem_name = configuration[:lib] || 'maxminddb' require @gem_name rescue LoadError raise "Could not load Maxmind DB dependency. To use the GeoIP2 lookup you must add the #{@gem_name} gem to your Gemfile or have it installed in your system." end end super end
def name
def name 'GeoIP2' end
def required_api_key_parts
def required_api_key_parts [] end
def results(query)
def results(query) return [] unless configuration[:file] if @gem_name == 'hive_geoip2' result = Hive::GeoIP2.lookup(query.to_s, configuration[:file].to_s) else result = MaxMindDB.new(configuration[:file].to_s).lookup(query.to_s) end result.nil? ? [] : [result] end