Exemplo n.º 1
0
    def list_groups(self, **kwargs):
        url = 'groups?'
        page = 1 if not 'page' in kwargs else kwargs['page']
        per_page = 100 if not 'per_page' in kwargs else kwargs['per_page']

        groups = []
        while True:
            try:
                this_page = self._api._get(
                    url + 'page=%d&per_page=%d' % (page, per_page),
                    kwargs)['groups']
            except FreshserviceRateLimited as err:
                ratelimit_timer_val = ratelimit_timer_re.match(
                    err.args[0]).group(1)
                print(
                    f'list_groups() got to page {page}, hit rate limit, waiting {ratelimit_timer_val} seconds...'
                )
                time.sleep(int(ratelimit_timer_val) + 1)
                continue

            groups += this_page
            if len(this_page) < per_page or 'page' in kwargs:
                break
            page += 1

        return [Group(**g) for g in groups]
Exemplo n.º 2
0
    def list_groups(self, **kwargs):
        url = "groups?"
        page = kwargs.get("page", 1)
        per_page = kwargs.get("per_page", 100)

        groups = []
        while True:
            this_page = self._api._get(url + "page=%d&per_page=%d" % (page, per_page), kwargs)
            groups += this_page
            if len(this_page) < per_page or "page" in kwargs:
                break
            page += 1

        return [Group(**g) for g in groups]
Exemplo n.º 3
0
    def list_groups(self, **kwargs):
        url = 'groups?'
        page = 1 if not 'page' in kwargs else kwargs['page']
        per_page = 100 if not 'per_page' in kwargs else kwargs['per_page']

        groups = []
        while True:
            this_page = self._api._get(url + 'page=%d&per_page=%d'
                                       % (page, per_page), kwargs)
            groups += this_page
            if len(this_page) < per_page or 'page' in kwargs:
                break
            page += 1

        return [Group(**g) for g in groups]
Exemplo n.º 4
0
 def get_group(self, group_id):
     url = "groups/%s" % group_id
     return Group(**self._api._get(url))
Exemplo n.º 5
0
 def list_groups(self):
     url = 'groups'
     groups = []
     for g in self._api._get(url):
         groups.append(Group(**g))
     return groups