Source code for acapi2.resources.subscriptionlist

#!/usr/bin/env python3
# -*- coding: utf-8 -*-

"""Acquia Subscriptions resource"""

from acapi2.resources.acquialist import AcquiaList
from acapi2.resources.subscription import Subscription


[docs]class SubscriptionList(AcquiaList): def __init__( self, uri: str, api_key: str, api_secret: str, *args, **kwargs ) -> None: # TODO Filters super().__init__(uri, api_key, api_secret, *args, **kwargs) self.fetch()
[docs] def fetch(self): subs = self.request(uri=self.uri).json() try: sub_items = subs["_embedded"]["items"] except KeyError: # TODO Handle this pass else: for sub in sub_items: name = sub["id"] subs_uri = "{base_uri}/{uuid}".format( base_uri=self.uri, uuid=name ) self.__setitem__( name, Subscription(subs_uri, self.api_key, self.api_secret) )
@property def base_uri(self) -> str: return self._base_uri @base_uri.setter def base_uri(self, base_uri: str): uri = "{}/subscriptions".format(base_uri) self._base_uri = uri