Sha256: 3a5c1380e71d93be904fd456efb79598598add478538c393df0fcb8834f54b0b

Contents?: true

Size: 796 Bytes

Versions: 2

Compression:

Stored size: 796 Bytes

Contents

# -*- encoding: utf-8 -*-

module MusicBrainz
  module Parsers
    class Release < Base
      class << self
        def model(xml)
          {
            :id => safe_get_attr(xml, nil, "id") || safe_get_attr(xml, "release", "id"),
            :title => safe_get_value(xml, "title"),
            :status => safe_get_value(xml, "status"),
            :country => safe_get_value(xml, "country"),
            :format => safe_get_value(xml, "medium-list > medium > format"),
            :date => safe_get_value(xml, "date")
          }
        end

        def tracks(xml)
          tracks = []
          xml.css("medium-list > medium > track-list > track").each do |r|
            tracks << MusicBrainz::Parsers::Track.model(r)
          end
          tracks
        end
      end
    end
  end
end

Version data entries

2 entries across 2 versions & 1 rubygems

Version Path
musicbrainz-0.7.1 lib/parsers/release.rb
musicbrainz-0.7.0 lib/parsers/release.rb