aboutsummaryrefslogtreecommitdiffstats
path: root/github3/handlers/base.py
diff options
context:
space:
mode:
Diffstat (limited to 'github3/handlers/base.py')
-rw-r--r--github3/handlers/base.py15
1 files changed, 14 insertions, 1 deletions
diff --git a/github3/handlers/base.py b/github3/handlers/base.py
index 8bcabca..6bf13bf 100644
--- a/github3/handlers/base.py
+++ b/github3/handlers/base.py
@@ -25,13 +25,26 @@ class Handler(object):
return converter
+ 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):
""" Handler request to boolean response """
from github3.exceptions import NotFound
resource = self._prefix_resource(resource)
try:
- response = self._gh.head(resource, **kwargs)
+ callback = getattr(self._gh, kwargs.get(method,''), self._gh.head)
+ response = callback(resource, **kwargs)
except NotFound:
return False
assert response.status_code == 204