module Downloader

Public Instance Methods

download(src) click to toggle source
# File lib/imgdowner/downloader.rb, line 9
def download(src)
    errMsg = ["you should check your format in (jpg/jpeg/png)",
        "you should check your format in (https|http://,,,)",
        "your want to create file: {file}, which is exist",
        "download status code {status} is not expected"   
    ]
    raise FormatErr.new(errMsg[0]) unless src =~ /(.*)(\.jpg|\.png\.jpeg)$/
    begin
        @dir = "./img" unless defined? @dir
        Dir.mkdir(@dir, 0700) unless Dir.exist?(@dir)
        raise FormatErr.new(errMsg[1]) unless src =~ /(http|https):\/\/(.+?)([^\/]+)$/
        placed = File.join(@dir, $3)
        @mod_placed = placed
        raise ExistErr.new(errMsg[2].sub(/{file}/, placed)) if File.exist?(placed)
        open(src) do |res|
            raise ResponseErr.new(errMsg[3].sub(/{status}/, res.status[0])) unless res.status[0] == "200"
            File.open(placed, "w") do |f|
                f.binmode
                f.write(res.read)
            end
        end
    rescue => exception
        raise exception
    else
    end
end
placed() click to toggle source

It's belong to mod create for out-world

# File lib/imgdowner/downloader.rb, line 36
def placed()
    @mod_placed
end