Module: Down

Defined in:
lib/down.rb,
lib/down/http.rb,
lib/down/wget.rb,
lib/down/utils.rb,
lib/down/errors.rb,
lib/down/backend.rb,
lib/down/version.rb,
lib/down/net_http.rb,
lib/down/chunked_io.rb

Defined Under Namespace

Modules: Utils Classes: Backend, ChunkedIO, ClientError, ConnectionError, Error, Http, InvalidUrl, NetHttp, NotFound, NotModified, ResponseError, SSLError, ServerError, TimeoutError, TooLarge, TooManyRedirects, Wget

Constant Summary collapse

VERSION =
"5.2.4"

Class Method Summary collapse

Class Method Details

.backend(value = nil) ⇒ Object

Allows setting a backend via a symbol or a downloader object.



18
19
20
21
22
23
24
25
26
27
# File 'lib/down.rb', line 18

def backend(value = nil)
  if value.is_a?(Symbol)
    require "down/#{value}"
    @backend = Down.const_get(value.to_s.split("_").map(&:capitalize).join)
  elsif value
    @backend = value
  else
    @backend
  end
end

.download(*args, **options, &block) ⇒ Object



9
10
11
# File 'lib/down.rb', line 9

def download(*args, **options, &block)
  backend.download(*args, **options, &block)
end

.open(*args, **options, &block) ⇒ Object



13
14
15
# File 'lib/down.rb', line 13

def open(*args, **options, &block)
  backend.open(*args, **options, &block)
end