class Ejaydj::Playlist
Attributes
id[RW]
name[RW]
number_of_tracks[RW]
url[RW]
user_id[RW]
Public Class Methods
new(attributes={})
click to toggle source
# File lib/ejaydj/playlist.rb, line 14 def initialize(attributes={}) instantiate_variables_from attributes end
Public Instance Methods
next_track()
click to toggle source
# File lib/ejaydj/playlist.rb, line 18 def next_track reload! if tracks.empty? track = tracks.pop track.playlist = self track end
reload!()
click to toggle source
# File lib/ejaydj/playlist.rb, line 29 def reload! @tracks = all_tracks end
tracks()
click to toggle source
# File lib/ejaydj/playlist.rb, line 25 def tracks @tracks ||= all_tracks end
Private Instance Methods
all_tracks()
click to toggle source
# File lib/ejaydj/playlist.rb, line 35 def all_tracks track_service.all.shuffle end
track_service()
click to toggle source
# File lib/ejaydj/playlist.rb, line 39 def track_service @track_service ||= Services::TrackService.new( music_client: @music_client, user_id: @user_id, playlist_id: @id) end