class Genius::Artist

Attributes

description[R]
id[R]
image_url[R]
name[R]
tracking_paths[R]
url[R]
user[R]

Public Instance Methods

parse_resource!() click to toggle source
# File lib/genius/artist.rb, line 5
def parse_resource!
  @id = resource["id"]
  @name = resource["name"]
  @image_url = resource["image_url"]
  @url = resource["url"]
  @user = Account.from_hash(resource["user"])
  @description = formatted_attribute("description")
  @tracking_paths = resource["tracking_paths"]
end
songs(params: {}, headers: {}) click to toggle source
# File lib/genius/artist.rb, line 15
def songs(params: {}, headers: {})
  headers = self.class.default_headers.merge(headers)
  params = self.class.default_params.merge(id: id).merge(params)

  response = self.class.http_get("/#{resource_name}s/#{id}/songs", query: params,
                                                                   headers: headers)

  response.parsed_response["response"]["songs"].map do |song|
    Song.from_hash(song, text_format: text_format)
  end
end