aboutsummaryrefslogtreecommitdiffstats
path: root/pygithub3/services/base.py
diff options
context:
space:
mode:
Diffstat (limited to '')
-rw-r--r--pygithub3/services/base.py27
1 files changed, 27 insertions, 0 deletions
diff --git a/pygithub3/services/base.py b/pygithub3/services/base.py
index 1f5d07e..21b22eb 100644
--- a/pygithub3/services/base.py
+++ b/pygithub3/services/base.py
@@ -87,3 +87,30 @@ class Service(object):
def _get_result(self, request, **kwargs):
return Result(self._client, request, **kwargs)
+
+
+class MimeTypeMixin(object):
+
+ VERSION = 'beta'
+
+ def __set_mimetype(self, mimetype):
+ self.mimetype = 'application/vnd.github.%s.%s+json' % (
+ self.VERSION, mimetype)
+
+ def set_raw_mimetype(self):
+ self.__set_mimetype('raw')
+
+ def set_text_mimetype(self):
+ self.__set_mimetype('text')
+
+ def set_html_mimetype(self):
+ self.__set_mimetype('html')
+
+ def set_full_mimetype(self):
+ self.__set_mimetype('full')
+
+ def _get_mimetype_as_header(self):
+ try:
+ return {'headers': {'Accept': self.mimetype}}
+ except AttributeError:
+ return {}