Class: MusicBrainz::Webservice::TrackIncludes

Inherits:
AbstractIncludes show all
Defined in:
lib/rbrainz/webservice/includes.rb

Overview

A specification on how much data to return with a track.

Instance Method Summary collapse

Methods inherited from AbstractIncludes

#to_s

Constructor Details

#initialize(includes) ⇒ TrackIncludes

Includes is a hash with the following fields: [:artist] Include track artist (boolean). [:releases] Includes releases the track appears on (boolean). [:puids] Include the track's PUIDs (boolean). [:isrcs] Include the track's ISRCs (boolean). [:artist_rels] Include artist relationships (boolean). [:release_rels] Include release relationships (boolean). [:track_rels] Include track relationships (boolean). [:label_rels] Include label relationships (boolean). [:url_rels] Include url relationships (boolean). [:tags] Include tags (boolean). [:user_tags] Include user tags (boolean). [:ratings] Include ratings (boolean). [:user_ratings] Include user ratings (boolean).



193
194
195
196
197
198
199
200
201
202
203
204
205
206
207
208
209
210
211
212
# File 'lib/rbrainz/webservice/includes.rb', line 193

def initialize(includes)
  Utils.check_options includes, 
      :artist, :releases, :puids, :isrcs, :artist_rels, :release_rels, 
      :track_rels, :label_rels, :url_rels, :tags, :user_tags, :ratings,
      :user_ratings
  @parameters = Array.new
  @parameters << 'artist'       if includes[:artist]
  @parameters << 'releases'     if includes[:releases]
  @parameters << 'puids'        if includes[:puids]
  @parameters << 'isrcs'        if includes[:isrcs]
  @parameters << 'artist-rels'  if includes[:artist_rels]
  @parameters << 'release-rels' if includes[:release_rels]
  @parameters << 'track-rels'   if includes[:track_rels]
  @parameters << 'label-rels'   if includes[:label_rels]
  @parameters << 'url-rels'     if includes[:url_rels]
  @parameters << 'tags'         if includes[:tags]
  @parameters << 'user-tags'    if includes[:user_tags]
  @parameters << 'ratings'      if includes[:ratings]
  @parameters << 'user-ratings' if includes[:user_ratings]
end