Top

spotify.v1.me.following module

from spotify import values
from spotify.page import Page
from spotify.resource import Resource


class FollowingList(Resource):

    def list(self, type, limit=values.UNSET, after=values.UNSET):
        params = values.of({
            'type': type,
            'limit': limit,
            'after': after
        })
        response = self.version.request('GET', '/me/following', params=params)
        return FollowingPage(self.version, response.json(), 'items')

    def add(self, ids=values.UNSET):
        data = values.of({
            'ids': ids
        })
        response = self.version.request('PUT', '/me/following', data=data)
        return response.status_code == 204

    def remove(self, ids=values.UNSET):
        data = values.of({
            'ids': ids
        })
        response = self.version.request('DELETE', '/me/following', data=data)
        return response.status_code == 204

    def contains(self, type, ids):
        params = values.of({
            'type': type,
            'ids': ids
        })
        response = self.version.request('GET', '/me/following/contains', params=params)
        return response.json()


class FollowingPage(Page):

    @property
    def instance_class(self):
        from spotify.v1.artist import ArtistInstance
        return ArtistInstance

Classes

class FollowingList

class FollowingList(Resource):

    def list(self, type, limit=values.UNSET, after=values.UNSET):
        params = values.of({
            'type': type,
            'limit': limit,
            'after': after
        })
        response = self.version.request('GET', '/me/following', params=params)
        return FollowingPage(self.version, response.json(), 'items')

    def add(self, ids=values.UNSET):
        data = values.of({
            'ids': ids
        })
        response = self.version.request('PUT', '/me/following', data=data)
        return response.status_code == 204

    def remove(self, ids=values.UNSET):
        data = values.of({
            'ids': ids
        })
        response = self.version.request('DELETE', '/me/following', data=data)
        return response.status_code == 204

    def contains(self, type, ids):
        params = values.of({
            'type': type,
            'ids': ids
        })
        response = self.version.request('GET', '/me/following/contains', params=params)
        return response.json()

Ancestors (in MRO)

Methods

def __init__(

self, version)

def __init__(self, version):
    self.version = version

def add(

self, ids='UNSET')

def add(self, ids=values.UNSET):
    data = values.of({
        'ids': ids
    })
    response = self.version.request('PUT', '/me/following', data=data)
    return response.status_code == 204

def contains(

self, type, ids)

def contains(self, type, ids):
    params = values.of({
        'type': type,
        'ids': ids
    })
    response = self.version.request('GET', '/me/following/contains', params=params)
    return response.json()

def list(

self, type, limit='UNSET', after='UNSET')

def list(self, type, limit=values.UNSET, after=values.UNSET):
    params = values.of({
        'type': type,
        'limit': limit,
        'after': after
    })
    response = self.version.request('GET', '/me/following', params=params)
    return FollowingPage(self.version, response.json(), 'items')

def remove(

self, ids='UNSET')

def remove(self, ids=values.UNSET):
    data = values.of({
        'ids': ids
    })
    response = self.version.request('DELETE', '/me/following', data=data)
    return response.status_code == 204

class FollowingPage

class FollowingPage(Page):

    @property
    def instance_class(self):
        from spotify.v1.artist import ArtistInstance
        return ArtistInstance

Ancestors (in MRO)

  • FollowingPage
  • spotify.page.Page
  • spotify.resource.Resource
  • __builtin__.object

Instance variables

var instance_class

Methods

def __init__(

self, version, data, key)

def __init__(self, version, data, key):
    super(Page, self).__init__(version)
    self._key = key
    self._items = iter([self.instance_class(self.version, item) for item in data.get(key, [])])
    del data[key]
    self._meta = data

def has_next_page(

self)

def has_next_page(self):
    return 'next' in self._meta and self._meta['next'] is not None

def next_page(

self)

def next_page(self):
    response = self.version.request(self._meta['next'])
    return self.__class__(
        self.version,
        response.json(),
        self._key
    )