module TottoriOpenDataCatalog::Proxy

Constants

INDEX_URL

Public Class Methods

get(cache:true) click to toggle source
# File lib/tottori-opendata-catalog/proxy.rb, line 5
def get(cache:true)
  index = Parser.parse_index(Net.get(INDEX_URL, cache: cache))
  index[:categories].each do |category|
    category[:link] = File.join(File.dirname(INDEX_URL), category[:link])
    category[:resources] ||= []
    Parser.parse_list(Net.get(category[:link], cache: cache)).each do |resource|
      resource[:link] = File.join(File.dirname(INDEX_URL), resource[:link])
      resource.merge!(Parser.parse_record(Net.get(resource[:link], cache: cache)))
      category[:resources] << resource
    end
  end
  index
end