Module: Hvor

Defined in:
lib/hvor.rb,
lib/hvor/engine.rb,
lib/hvor/version.rb,
lib/hvor/configuration.rb,
app/models/hvor/ip_range.rb,
app/services/hvor/importer.rb,
app/services/hvor/downloader.rb,
app/jobs/hvor/application_job.rb,
app/services/hvor/ip_normalizer.rb,
app/jobs/hvor/import_ip_ranges_job.rb,
app/models/hvor/application_record.rb,
app/helpers/hvor/application_helper.rb,
app/mailers/hvor/application_mailer.rb,
app/controllers/hvor/lookups_controller.rb,
app/controllers/hvor/application_controller.rb,
lib/generators/hvor/install/install_generator.rb

Defined Under Namespace

Modules: ApplicationHelper, Generators, IpNormalizer Classes: ApplicationController, ApplicationJob, ApplicationMailer, ApplicationRecord, Configuration, DownloadError, Downloader, Engine, IPRange, ImportError, ImportIpRangesJob, Importer, InvalidIpError, LookupsController

Constant Summary collapse

VERSION =
"0.1.1"

Class Method Summary collapse

Class Method Details

.configurationObject



7
8
9
# File 'lib/hvor.rb', line 7

def configuration
  @configuration ||= Configuration.new
end

.configure {|configuration| ... } ⇒ Object

Yields:



11
12
13
# File 'lib/hvor.rb', line 11

def configure
  yield configuration
end

.lookup(ip) ⇒ Object



15
16
17
18
19
# File 'lib/hvor.rb', line 15

def lookup(ip)
  configuration.cache.fetch("hvor/lookup/#{ip}", expires_in: configuration.cache_expires_in) do
    Hvor::IPRange.lookup_country_code(ip)
  end
end