Sha256: 9fc89fb896109f8870ae729882cec30009c3f62307daf9b08d1c72ef616c7866

Contents?: true

Size: 779 Bytes

Versions: 3

Compression:

Stored size: 779 Bytes

Contents

module ItunesApi
  module Music
    # Use to retrieve available albums from artist's ids.
    class Album
      include Request

      TYPE = 'Album'.freeze

      def initialize(artists_id)
        @artists_id = artists_id
      end

      def self.info(artists_id)
        new(artists_id).info
      end

      def info
        @info ||= results
                  .find_all { |r| r['collectionType'] == TYPE }
                  .sort_by { |a| a['releaseDate'] }
                  .reverse
      end

      private

      def url
        "#{BASE_URL}/lookup?id=#{all_artists_id}&" \
        "entity=#{entity}&country=#{COUNTRY_CODE}"
      end

      def all_artists_id
        @artists_id.join(',')
      end

      def entity
        TYPE.downcase
      end
    end
  end
end

Version data entries

3 entries across 3 versions & 1 rubygems

Version Path
itunes_api-0.0.3 lib/itunes_api/music/album.rb
itunes_api-0.0.2 lib/itunes_api/music/album.rb
itunes_api-0.0.1 lib/itunes_api/music/album.rb