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



33
34
35
36
37
# File 'lib/timezone/lookup.rb', line 33

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:



21
22
23
# File 'lib/timezone/lookup.rb', line 21

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