class MoreHoliday::Ifeiertage::Connect

Attributes

state[R]

Public Class Methods

get(state) click to toggle source
# File lib/more_holiday/connectors/ifeiertage/connect.rb, line 10
def self.get state
  new(state).get
end
new(state) click to toggle source
# File lib/more_holiday/connectors/ifeiertage/connect.rb, line 6
def initialize state
  @state = converted(state)
end

Public Instance Methods

get() click to toggle source
# File lib/more_holiday/connectors/ifeiertage/connect.rb, line 14
def get
  cache.resolve Proc.new { api.get(state) }
end

Private Instance Methods

api() click to toggle source
# File lib/more_holiday/connectors/ifeiertage/connect.rb, line 20
def api
  @api ||= Api.new
end
cache() click to toggle source
# File lib/more_holiday/connectors/ifeiertage/connect.rb, line 24
def cache
  @cache ||= Cache::File.new(file_name: state, folder_path: cache_base_folder)
end
cache_base_folder() click to toggle source
# File lib/more_holiday/connectors/ifeiertage/connect.rb, line 28
def cache_base_folder
  File.join("connectors", "ifeiertage")
end
converted(state) click to toggle source
# File lib/more_holiday/connectors/ifeiertage/connect.rb, line 32
def converted state
  {
    "Baden-Württemberg" => "bw",
    "Bavaria" => "by",
    "Berlin" => "be",
    "Brandenburg" => "bb",
    "Bremen" => "hb",
    "Hamburg" => "hh",
    "Hesse" => "he",
    "Lower Saxony" => "ni",
    "Mecklenburg-Vorpommern" => "mv",
    "North Rhine-Westphalia" => "nw",
    "Rhine-Palatinate" => "rp",
    "Saarland" => "sl",
    "Saxony" => "sn",
    "Saxony-Anhalt" => "st",
    "Schleswig-Holstein" => "sh",
    "Thuringia" => "th"
  }[state]
end