Class: Vnehm::TrackManager
- Inherits:
-
Object
- Object
- Vnehm::TrackManager
- Defined in:
- lib/vnehm/track_manager.rb
Instance Method Summary collapse
-
#initialize(options) ⇒ TrackManager
constructor
A new instance of TrackManager.
- #process_tracks(tracks) ⇒ Object
- #search(query, limit, offset) ⇒ Object
- #tracks(limit, offset) ⇒ Object
Constructor Details
#initialize(options) ⇒ TrackManager
Returns a new instance of TrackManager.
9 10 11 |
# File 'lib/vnehm/track_manager.rb', line 9 def initialize() setup_environment() end |
Instance Method Details
#process_tracks(tracks) ⇒ Object
13 14 15 16 17 18 19 20 21 22 |
# File 'lib/vnehm/track_manager.rb', line 13 def process_tracks(tracks) tracks.reverse_each do |track| UI.newline dl(track) tag(track) @playlist.add_track(track) if @playlist UI.newline end UI.success 'Done!' end |
#search(query, limit, offset) ⇒ Object
34 35 36 37 38 39 40 41 42 43 44 |
# File 'lib/vnehm/track_manager.rb', line 34 def search(query, limit, offset) UI.term "Неверное значение опции 'limit'\nОно должно быть больше 0" if limit <= 0 UI.term "Неверное значении опции 'offset'\nОно должно быть больше или равно 0" if offset < 0 found = Client.search(query, limit, offset) return nil if found.empty? found.shift # Deleting first item - 'count' found.map! { |hash| Track.new(hash) } end |
#tracks(limit, offset) ⇒ Object
24 25 26 27 28 29 30 31 32 |
# File 'lib/vnehm/track_manager.rb', line 24 def tracks(limit, offset) UI.term "Неверное значение опции 'limit'\nОно должно быть больше 0" if limit <= 0 UI.term "Неверное значении опции 'offset'\nОно должно быть больше или равно 0" if offset < 0 tracks = Client.tracks(limit, offset) return nil if tracks.empty? tracks.map! { |hash| Track.new(hash) } end |