X-Git-Url: http://gitweb.michael.orlitzky.com/?a=blobdiff_plain;f=src%2Fdownloader.rb;fp=src%2Fdownloader.rb;h=eac7c18bdbcdc3dcc1ce531b595d81a22c86abf9;hb=e3eeb8df887fc68959ab7d7ebae5c0206b79c230;hp=0000000000000000000000000000000000000000;hpb=b832fe95552b3ea080c55a576373e52960c7df39;p=dead%2Fwhatever-dl.git diff --git a/src/downloader.rb b/src/downloader.rb new file mode 100644 index 0000000..eac7c18 --- /dev/null +++ b/src/downloader.rb @@ -0,0 +1,42 @@ +# +# Copyright Michael Orlitzky +# +# http://michael.orlitzky.com/ +# +# This program is free software: you can redistribute it and/or modify +# it under the terms of the GNU General Public License as published by +# the Free Software Foundation, either version 3 of the License, or +# (at your option) any later version. +# +# This program is distributed in the hope that it will be useful, +# but WITHOUT ANY WARRANTY; without even the implied warranty of +# MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the +# GNU General Public License for more details. +# +# http://www.fsf.org/licensing/licenses/gpl.html +# + +class Downloader + + def self.create(download_method) + # Return the subclass corresponding to download_method. + case download_method + when :openuri + return OpenUriDownloader.new() + when :wget + return WgetDownloader.new() + end + end + + + # Abstract + def download(url, outfile) + raise NotImplementedError + end + +end + + +# This is wacky, but seems to work. +require 'src/wget_downloader' +require 'src/open_uri_downloader'