Method: Mangdown::Manga#download_to
- Defined in:
- lib/mangdown/manga.rb
#download_to(dir, start = 0, stop = -1,, opts = { force_download: false }) ⇒ Object
rubocop:disable Metrics/AbcSize rubocop:disable Metrics/MethodLength
37 38 39 40 41 42 43 44 45 46 47 48 49 50 51 52 53 54 55 56 57 58 59 60 61 62 63 64 65 |
# File 'lib/mangdown/manga.rb', line 37 def download_to(dir, start = 0, stop = -1, opts = { force_download: false }) start, stop = validate_indeces!(start, stop) setup_download_dir!(dir) failed = [] succeeded = [] skipped = [] chapters[start..stop].each do |chapter| chapter_result = chapter.download_to(to_path, opts) if chapter_result[:failed].any? failed << [chapter, chapter_result] elsif chapter_result[:succeeded].any? succeeded << [chapter, chapter_result] elsif chapter_result[:skipped].any? skipped << [chapter, chapter_result] end next unless chapter_result[:failed].any? logger.error({ msg: 'Chapter was not fully downloaded', uri: chapter.uri, chapter: chapter.name }.to_s) end { failed: failed, succeeded: succeeded, skipped: skipped } end |