Sha256: 358f5a45f0614f4352f3c45ee06b61b1e8a725a722c4c7a1515863090da63c01

Contents?: true

Size: 661 Bytes

Versions: 1

Compression:

Stored size: 661 Bytes

Contents

require 'open-uri'

module ZipGeoJp
  class Downloader

    attr_accessor :url, :local_dir

    def initialize(url, local_dir)
      @url       = url
      @local_dir = local_dir
    end

    def filename
      @filename ||= URI.parse(url).path.to_s.split('/').last
    end

    def local
      File.join(@local_dir, filename)
    end

    def remove
      FileUtils.remove_file local if File.exist? local
    end

    def downloaded?
      File.exist? local
    end

    def download
      FileUtils.mkdir_p(@local_dir)
      open(@url) do |stream|
        open(local, 'w+b') do |file|
          file.write(stream.read)
        end
      end
    end
  end
end

Version data entries

1 entries across 1 versions & 1 rubygems

Version Path
zip_geo_jp-0.1.0 lib/zip_geo_jp/downloader.rb