diff options
author | Richard Hansen <rhansen@rhansen.org> | 2016-02-11 22:41:03 -0500 |
---|---|---|
committer | Richard Hansen <rhansen@rhansen.org> | 2016-02-11 22:41:03 -0500 |
commit | f15a7cfd7edbbc55ff4fb5d41995dee033517963 (patch) | |
tree | e8ea7ebe1ac5c7679319db425c0326fd43f715e1 /gitlab/objects.py | |
parent | 81be3cf181f5e49ef20c2824eb8c48785f4ab922 (diff) | |
download | gitlab-f15a7cfd7edbbc55ff4fb5d41995dee033517963.tar.gz |
define GitlabObject.as_dict() to dump object as a dict
Diffstat (limited to 'gitlab/objects.py')
-rw-r--r-- | gitlab/objects.py | 9 |
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' |