class RMD::Processor
Attributes
link[R]
options[R]
Public Class Methods
new(link, options = {})
click to toggle source
# File lib/rmd/processor.rb, line 9 def initialize(link, options = {}) @link = link @options = options end
process(link, options = {})
click to toggle source
# File lib/rmd/processor.rb, line 28 def self.process(link, options = {}) begin new(link, options).process rescue => error puts error.message.red puts 'Errors! Can not continue!'.red end end
Public Instance Methods
process()
click to toggle source
# File lib/rmd/processor.rb, line 14 def process puts "Start processing #{link}...".green playlist = RMD::Factory::Main.build(link) playlist.fetch if playlist.success? strategy.process(playlist.songs) end playlist.errors.each do |error| puts error.red end end
Private Instance Methods
strategy()
click to toggle source
# File lib/rmd/processor.rb, line 39 def strategy @strategy ||= if options[:fast] RMD::ProcessStrategy::MultiThread.new(options) else RMD::ProcessStrategy::SingleThread.new(options) end end