aboutsummaryrefslogtreecommitdiffstats
path: root/github3/handlers/base.py
blob: 8f79cdddb89ad97c781fa10cf03b91410201c246 (plain) (blame)
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
27
28
29
30
31
32
33
34
35
36
37
38
39
40
41
#!/usr/bin/env python
# -*- encoding: utf-8 -*-
#
# author: David Medina

class Handler(object):
    """ Abstract handler, that inject github.api """

    def __init__(self, gh):
        self._gh = gh
        super(Handler, self).__init__()

    def _extend_url(self, *args):
        return self._url + args

    def _get_raw(self, *args, **kwargs):
        url = self._extend_url(*args)
        return self._gh._get_raw(url, **kwargs)

    def _get_bool(self, *args):
        url = self._extend_url(*args)
        return self._gh._get_bool(url)

    def _get_resource(self, *args, **kwargs):
        url = self._extend_url(*args)
        map_model = kwargs.get('model', self._model)
        return self._gh._get_resource(url, map_model, **kwargs)

    def _get_resources(self, *args, **kwargs):
        url = self._extend_url(*args)
        map_model = kwargs.get('model', self._model)
        return self._gh._get_resources(url, map_model, **kwargs)

    def _post_raw(self, *args, **kwargs):
        url = self._extend_url(*args)
        return self._gh._post_raw(url, **kwargs)

    def _delete_raw(self, *args, **kwargs):
        url = self._extend_url(*args)
        return self._gh._delete_raw(url, **kwargs)