Class: Downloader
- Inherits:
-
Object
- Object
- Downloader
- Defined in:
- lib/downloader.rb
Overview
Copyright © 2014 Cornelius Schumacher <[email protected]>
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 2 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.
You should have received a copy of the GNU General Public License along with this program; if not, write to the Free Software Foundation, Inc., 51 Franklin Street, Fifth Floor, Boston, MA 02110-1301 USA.
Instance Method Summary collapse
- #download(name, directory) ⇒ Object
-
#initialize(handler, output) ⇒ Downloader
constructor
A new instance of Downloader.
- #read_from_url(url) ⇒ Object
Constructor Details
#initialize(handler, output) ⇒ Downloader
Returns a new instance of Downloader.
18 19 20 21 |
# File 'lib/downloader.rb', line 18 def initialize(handler, output) @handler = handler @output = output end |
Instance Method Details
#download(name, directory) ⇒ Object
23 24 25 26 27 28 29 30 31 32 |
# File 'lib/downloader.rb', line 23 def download(name, directory) @output.puts "Downloading #{name}" url = @handler.manifest(name).packages.source @output.puts " from: #{url}" file_path = File.join(directory, File.basename(url)) @output.puts " to: #{file_path}" File.open(file_path, "w") do |f| f.write(read_from_url(url)) end end |
#read_from_url(url) ⇒ Object
34 35 36 |
# File 'lib/downloader.rb', line 34 def read_from_url(url) URI.parse(url).open.read end |