class ItunesApi::Music::Results::Song
Wrapper for song search results.
Public Instance Methods
album()
click to toggle source
# File lib/itunes_api/music/results/song.rb, line 10 def album @album ||= data['collectionName'] end
artist()
click to toggle source
# File lib/itunes_api/music/results/song.rb, line 14 def artist @artist ||= data['artistName'] end
attributes()
click to toggle source
# File lib/itunes_api/music/results/song.rb, line 18 def attributes [ album, artist, duration, explicitness, genre, link, name, number, preview, store, streamable, track_id ] end
duration()
click to toggle source
# File lib/itunes_api/music/results/song.rb, line 35 def duration @duration ||= track_lenght(data['trackTimeMillis']) end
explicitness()
click to toggle source
# File lib/itunes_api/music/results/song.rb, line 39 def explicitness @explicitness ||= data['trackExplicitness'] end
genre()
click to toggle source
# File lib/itunes_api/music/results/song.rb, line 43 def genre @genre ||= data['primaryGenreName'] end
link()
click to toggle source
# File lib/itunes_api/music/results/song.rb, line 47 def link @link ||= data['trackViewUrl'] end
name()
click to toggle source
# File lib/itunes_api/music/results/song.rb, line 51 def name @name ||= data['trackName'] end
number()
click to toggle source
# File lib/itunes_api/music/results/song.rb, line 55 def number @number ||= data['trackNumber'] end
preview()
click to toggle source
# File lib/itunes_api/music/results/song.rb, line 59 def preview @preview ||= data['previewUrl'] end
streamable()
click to toggle source
# File lib/itunes_api/music/results/song.rb, line 63 def streamable @streamable ||= data['isStreamable'] end
track_id()
click to toggle source
# File lib/itunes_api/music/results/song.rb, line 67 def track_id @track_id ||= data['trackId'] end
Private Instance Methods
track_lenght(milliseconds)
click to toggle source
# File lib/itunes_api/music/results/song.rb, line 73 def track_lenght(milliseconds) if milliseconds.to_i.positive? minutes, milliseconds = milliseconds.divmod(1000 * 60) seconds = milliseconds / 1000 "#{minutes}:#{seconds}" else '-:--' end end