Module: Timezone::Lookup

Defined in:
lib/timezone/lookup.rb,
lib/timezone/lookup/test.rb,
lib/timezone/lookup/basic.rb,
lib/timezone/lookup/google.rb,
lib/timezone/lookup/geonames.rb

Overview

Configure timezone lookups.

Defined Under Namespace

Classes: Basic

Class Method Summary collapse

Class Method Details

.config(lookup) {|an| ... } ⇒ #lookup

Configure a lookup object

Parameters:

  • lookup (:google, :geonames, :test)

    use a built-in lookup

  • lookup (Class)

    a custom lookup class

Yield Parameters:

  • an (OpenStruct)

    object on which to set configuration options

Returns:

  • (#lookup)

    the lookup object



30
31
32
33
34
# File 'lib/timezone/lookup.rb', line 30

def config(lookup)
  options = OptionSetter.new(lookup)
  yield(options.config) if block_given?
  @lookup = options.make_lookup
end

.lookup#lookup

Returns the lookup object

Returns:

  • (#lookup)

    the lookup object

Raises:



18
19
20
# File 'lib/timezone/lookup.rb', line 18

def lookup
  @lookup || raise(::Timezone::Error::InvalidConfig, MISSING_LOOKUP)
end