diff options
author | 2012-02-17 13:43:22 +0100 | |
---|---|---|
committer | 2012-02-17 18:48:19 +0100 | |
commit | eeb5b9727f9b633296fb418fd4e53ddf133b35e9 (patch) | |
tree | edb60dd0e28d9357a88918a59bcae6c91399192e /pygithub3/services/base.py | |
parent | Fix en.typo (diff) | |
download | python-github3-eeb5b9727f9b633296fb418fd4e53ddf133b35e9.tar.xz python-github3-eeb5b9727f9b633296fb418fd4e53ddf133b35e9.zip |
Small refactor to building requests in services
Decorate the request-factory to parse common params like user and repo,
which can be configurated in service or by args
Diffstat (limited to 'pygithub3/services/base.py')
-rw-r--r-- | pygithub3/services/base.py | 9 |
1 files changed, 8 insertions, 1 deletions
diff --git a/pygithub3/services/base.py b/pygithub3/services/base.py index a8c7258..1f5d07e 100644 --- a/pygithub3/services/base.py +++ b/pygithub3/services/base.py @@ -11,7 +11,7 @@ class Service(object): def __init__(self, **config): self._client = Client(**config) - self.make_request = Factory() + self.request_builder = Factory() def get_user(self): return self._client.user @@ -31,6 +31,13 @@ class Service(object): def set_token(self, token): self._client.set_token(token) + def make_request(self, request, **kwargs): + if 'user' in kwargs: + kwargs['user'] = kwargs['user'] or self.get_user() + if 'repo' in kwargs: + kwargs['repo'] = kwargs['repo'] or self.get_repo() + return self.request_builder(request, **kwargs) + def _bool(self, request, **kwargs): try: self._client.head(request, **kwargs) |