class SpotifyToMp3::QueryResolver
Public Class Methods
new(spotify)
click to toggle source
# File lib/spotify_to_mp3/query_resolver.rb, line 5 def initialize(spotify) @spotify = spotify end
Public Instance Methods
resolve(query)
click to toggle source
# File lib/spotify_to_mp3/query_resolver.rb, line 9 def resolve(query) tracks = [] if @spotify.track_uri?(query) spotify_track = @spotify.get_track(query) tracks << convert_spotify_track(spotify_track) elsif @spotify.album_uri?(query) spotify_album = @spotify.get_album(query) spotify_album.tracks.each { |track| tracks << convert_spotify_track(track) } else tracks << resolve_plain_track(query) end tracks end
Private Instance Methods
convert_spotify_track(track)
click to toggle source
# File lib/spotify_to_mp3/query_resolver.rb, line 27 def convert_spotify_track(track) description = "#{track.artist} - #{track.name}" grooveshark_query = "artist:\"#{track.artist}\" title:\"#{track.name}\"" Track.new(description, grooveshark_query) end
resolve_plain_track(description)
click to toggle source
# File lib/spotify_to_mp3/query_resolver.rb, line 34 def resolve_plain_track(description) Track.new(description) end