class Napster::Models::Member
Member
model
Constants
- ATTRIBUTES
Attributes
client[RW]
Public Class Methods
collection(arg)
click to toggle source
# File lib/napster/models/member.rb, line 45 def self.collection(arg) arg[:data].map do |member| Member.new(data: member, client: @client) end end
new(arg)
click to toggle source
# File lib/napster/models/member.rb, line 36 def initialize(arg) @client = arg[:client] if arg[:client] return unless arg[:data] ATTRIBUTES.each do |attribute| send("#{attribute}=", arg[:data][attribute.to_s.camel_case_lower]) end end
Public Instance Methods
chart(params)
click to toggle source
# File lib/napster/models/member.rb, line 89 def chart(params) request_chart(@id, params) end
chart_for(guid, params)
click to toggle source
# File lib/napster/models/member.rb, line 93 def chart_for(guid, params) request_chart(guid, params) end
favorite_playlists(params)
click to toggle source
# File lib/napster/models/member.rb, line 81 def favorite_playlists(params) request_favorite_playlists(@id, params) end
favorite_playlists_for(guid, params)
click to toggle source
# File lib/napster/models/member.rb, line 85 def favorite_playlists_for(guid, params) request_favorite_playlists(guid, params) end
favorites(params)
click to toggle source
# File lib/napster/models/member.rb, line 73 def favorites(params) request_favorites(@id, params) end
favorites_for(guid, params)
click to toggle source
# File lib/napster/models/member.rb, line 77 def favorites_for(guid, params) request_favorites(guid, params) end
find(arg)
click to toggle source
Top level methods
# File lib/napster/models/member.rb, line 53 def find(arg) response = @client.get("/members/#{arg}") Member.new(data: response['members'].first, client: @client) end
playlists(params)
click to toggle source
TODO: .avatar
# File lib/napster/models/member.rb, line 65 def playlists(params) request_playlists(@id, params) end
playlists_for(guid, params)
click to toggle source
# File lib/napster/models/member.rb, line 69 def playlists_for(guid, params) request_playlists(guid, params) end
screenname_available?(screenname)
click to toggle source
# File lib/napster/models/member.rb, line 58 def screenname_available?(screenname) response = @client.get("/screenname/#{screenname}") response['screenName'].nil? end
Private Instance Methods
request_chart(guid, params)
click to toggle source
# File lib/napster/models/member.rb, line 117 def request_chart(guid, params) options = { params: params } response = @client.get("/members/#{guid}/charts", options) Chart.collection(data: response['charts'], client: @client) end
request_favorite_playlists(guid, params)
click to toggle source
# File lib/napster/models/member.rb, line 111 def request_favorite_playlists(guid, params) options = { params: params } response = @client.get("/members/#{guid}/favorites/playlists", options) Playlist.collection(data: response['playlists'], client: @client) end
request_favorites(guid, params)
click to toggle source
# File lib/napster/models/member.rb, line 105 def request_favorites(guid, params) options = { params: params } response = @client.get("/members/#{guid}/favorites", options) Favorite.collection(data: response['favorites'], client: @client) end
request_playlists(guid, params)
click to toggle source
# File lib/napster/models/member.rb, line 99 def request_playlists(guid, params) options = { params: params } response = @client.get("/members/#{guid}/library/playlists", options) Playlist.collection(data: response['playlists'], client: @client) end