diff options
Diffstat (limited to 'github3/handlers')
-rw-r--r-- | github3/handlers/base.py | 16 | ||||
-rw-r--r-- | github3/handlers/user.py | 26 |
2 files changed, 20 insertions, 22 deletions
diff --git a/github3/handlers/base.py b/github3/handlers/base.py index 6bf13bf..50e2df8 100644 --- a/github3/handlers/base.py +++ b/github3/handlers/base.py @@ -15,9 +15,9 @@ class Handler(object): def _prefix_resource(self, resource): prefix = getattr(self, 'prefix', '') - return '/'.join((prefix, resource)) + return '/'.join((prefix, resource)).rstrip('/') - def _get_converter(self, kwargs): + def _get_converter(self, **kwargs): converter = kwargs.get( 'converter', # 1. in kwargs getattr(self, 'converter', # 2. in handler @@ -28,13 +28,11 @@ class Handler(object): def _put(self, resource, **kwargs): """ Put proxy request""" - resource = self._prefix_resource(resource) return self._bool(resource, method='put', **kwargs) def _delete(self, resource, **kwargs): """ Delete proxy request""" - resource = self._prefix_resource(resource) return self._bool(resource, method='delete', **kwargs) def _bool(self, resource, **kwargs): @@ -43,7 +41,7 @@ class Handler(object): from github3.exceptions import NotFound resource = self._prefix_resource(resource) try: - callback = getattr(self._gh, kwargs.get(method,''), self._gh.head) + callback = getattr(self._gh, kwargs.get('method',''), self._gh.head) response = callback(resource, **kwargs) except NotFound: return False @@ -55,13 +53,13 @@ class Handler(object): """ Hander request to multiple resources """ resource = self._prefix_resource(resource) - page_resources = Paginate(resource, self._gh.get, kwargs) + page_resources = Paginate(resource, self._gh.get, **kwargs) counter = 1 for page in page_resources: for raw_resource in page: if limit and counter > limit: break counter += 1 - converter = self._get_converter(kwargs) + converter = self._get_converter(**kwargs) converter.inject(model) yield converter.loads(raw_resource) else: @@ -73,7 +71,7 @@ class Handler(object): resource = self._prefix_resource(resource) raw_resource = self._gh.get(resource) - converter = self._get_converter(kwargs) + converter = self._get_converter(**kwargs) converter.inject(model) return converter.loads(raw_resource) @@ -82,6 +80,6 @@ class Handler(object): resource = self._prefix_resource(resource) raw_resource = self._gh.post(resource, data=data) - converter = self._get_converter(kwargs) + converter = self._get_converter(**kwargs) converter.inject(model) return converter.loads(raw_resource) diff --git a/github3/handlers/user.py b/github3/handlers/user.py index 75a0d3f..fb893b4 100644 --- a/github3/handlers/user.py +++ b/github3/handlers/user.py @@ -29,37 +29,37 @@ class User(Handler): def get(self): """ Return user """ - self._get_resource('', model=models.User) + return self._get_resource('', model=models.User) def get_followers(self): """ Return user's followers """ - self._get_resources('followers', model=models.User) + return self._get_resources('followers', model=models.User) def get_following(self): """ Return users that follow """ - self._get_resources('following', model=models.User) + return self._get_resources('following', model=models.User) def get_repos(self): """ Return user's public repositories """ - self._get_resources('repos', model=models.Repo) + return self._get_resources('repos', model=models.Repo) def get_watched(self): """ Return repositories that user whatch """ - self._get_resources('watched', model=models.Repo) + return self._get_resources('watched', model=models.Repo) def get_orgs(self): """ Return user's public organizations """ - self._get_resources('orgs', model=models.Org) + return self._get_resources('orgs', model=models.Org) def get_gists(self): """ Return user's gists """ - self._get_resources('gists', model=models.Gist) + return self._get_resources('gists', model=models.Gist) class AuthUser(User): """ User handler with public and private access """ @@ -70,7 +70,7 @@ class AuthUser(User): return '<AuthUser handler> %s>' % self._gh.session.auth[0] def get(self): - self._get_resource('', model=models.AuthUser) + return self._get_resource('', model=models.AuthUser) def get_emails(self): """ Return list of emails """ @@ -119,9 +119,9 @@ class AuthUser(User): """ parse_user = str(getattr(user, 'login', user)) - return self._put('following/%s', % parse_user) + return self._put('following/%s' % parse_user) - def unfollow(self, user) + def unfollow(self, user): """ Unfollow user @@ -129,14 +129,14 @@ class AuthUser(User): """ parse_user = str(getattr(user, 'login', user)) - return self._delete('following/%s', % parse_user) + return self._delete('following/%s' % parse_user) def get_keys(self): """ Get public keys """ return self._get_resources('keys', model=models.Key) - def get_key(self, key_id) + def get_key(self, key_id): """ Get public key by id """ return self._get_resource('keys/%s' % key_id, model=models.Key) @@ -151,7 +151,7 @@ class AuthUser(User): #TODO: render key.pub file key = { - 'title': kwargs.get('title','') + 'title': kwargs.get('title',''), 'key': kwargs.get('key','') } return self._post_resource('keys', data=key, model=models.Key) |