Module: Purple::Getter
- Defined in:
- lib/purple/getter.rb,
lib/purple/getter_cp.rb,
lib/purple/getter_curl.rb,
lib/purple/getter_wget.rb
Defined Under Namespace
Classes: Generic, Getter_cp, Getter_curl, Getter_wget
Class Method Summary collapse
Class Method Details
.new(url, destdir) ⇒ Object
5 6 7 8 9 10 11 12 13 14 15 16 17 18 19 20 21 22 23 24 25 26 27 28 29 |
# File 'lib/purple/getter.rb', line 5 def self.new url, destdir puts "DEBUG Getter##new: url=#{url}" if $DEBUG @uri = URI.parse url plugin = case @uri.scheme when /http|ftp/ getter = nil ENV['PATH'].split(':').each { |p| case true when FileTest.executable?(File.join(p, 'wget')) getter = 'wget' break when FileTest.executable?(File.join(p, 'wget')) getter = 'wget' break end } getter when 'file' 'cp' else raise StandardError.new("Unable to handle scheme #{@uri.scheme}") end require "purple/getter_#{plugin}" (eval "Purple::Getter::Getter_#{plugin}").new @uri, destdir end |