class GTFS::URLSource

Public Instance Methods

load_archive(source_url) click to toggle source
# File lib/gtfs/url_source.rb, line 7
def load_archive(source_url)
  Dir.mktmpdir do |tmp|
    file_name = File.join(tmp, "/gtfs_temp_#{Time.now.strftime('%Y%jT%H%M%S%z')}.zip")
    uri = URI.parse(source_url)
    response = Net::HTTP.get_response(uri)
    open(file_name, 'wb') do |file|
      file.write response.body
    end
    extract_to_cache(file_name)
  end
rescue Exception => e
  raise InvalidSourceException.new(e.message)
end