Sha256: 82e038e5cab23e89a39e2759b3694b32b7f71824208769d3ac85c9d9e0a0f982
Contents?: true
Size: 1.01 KB
Versions: 1
Compression:
Stored size: 1.01 KB
Contents
class Metamuse::Services::Lastfm::Artist attr_reader :name, :mbid, :url, :images, :listeners, :playcount, :similar_artists, :tags, :biography, :biography_summary include ::Metamuse::InstanceInitialize def self.build(response) data = response['lfm']['artist'] new data end def initialize(attrs={}) @similar_artists = [] @images = [] super end def bio=(bio) @biography = bio['content'] @biography_summary = bio['summary'] end def images=(urls) urls.each do |url| @images << Metamuse::Services::Lastfm::Image.new(url) if url.is_a? String end end alias image= images= def best_guess valid? ? self : similar_artists.first end def similar_artists=(attrs={}) attrs['artist'].each do |artist_attrs| @similar_artists << self.class.new(artist_attrs) end end alias similar= similar_artists= def stats=(stats) @playcount = stats['playcount'] @listeners = stats['listeners'] end def valid? url !~ %r(/music/\+noredirect/) end end
Version data entries
1 entries across 1 versions & 1 rubygems
Version | Path |
---|---|
sandro-metamuse-0.1.2 | lib/metamuse/services/lastfm/artist.rb |