summaryrefslogtreecommitdiff
path: root/gitlab/objects.py
diff options
context:
space:
mode:
authorRichard Hansen <rhansen@rhansen.org>2016-02-11 22:41:03 -0500
committerRichard Hansen <rhansen@rhansen.org>2016-02-11 22:41:03 -0500
commitf15a7cfd7edbbc55ff4fb5d41995dee033517963 (patch)
treee8ea7ebe1ac5c7679319db425c0326fd43f715e1 /gitlab/objects.py
parent81be3cf181f5e49ef20c2824eb8c48785f4ab922 (diff)
downloadgitlab-f15a7cfd7edbbc55ff4fb5d41995dee033517963.tar.gz
define GitlabObject.as_dict() to dump object as a dict
Diffstat (limited to 'gitlab/objects.py')
-rw-r--r--gitlab/objects.py9
1 files changed, 6 insertions, 3 deletions
diff --git a/gitlab/objects.py b/gitlab/objects.py
index 57b8e14..c03e77e 100644
--- a/gitlab/objects.py
+++ b/gitlab/objects.py
@@ -34,9 +34,7 @@ from gitlab.exceptions import * # noqa
class jsonEncoder(json.JSONEncoder):
def default(self, obj):
if isinstance(obj, GitlabObject):
- return {k: v for k, v in six.iteritems(obj.__dict__)
- if (not isinstance(v, BaseManager)
- and not k[0] == '_')}
+ return obj.as_dict()
elif isinstance(obj, gitlab.Gitlab):
return {'url': obj._url}
return json.JSONEncoder.default(self, obj)
@@ -488,6 +486,11 @@ class GitlabObject(object):
"""
return json.dumps(self, cls=jsonEncoder)
+ def as_dict(self):
+ """Dump the object as a dict."""
+ return {k: v for k, v in six.iteritems(self.__dict__)
+ if (not isinstance(v, BaseManager) and not k[0] == '_')}
+
class UserKey(GitlabObject):
_url = '/users/%(user_id)s/keys'