From f15a7cfd7edbbc55ff4fb5d41995dee033517963 Mon Sep 17 00:00:00 2001 From: Richard Hansen Date: Thu, 11 Feb 2016 22:41:03 -0500 Subject: [PATCH] define GitlabObject.as_dict() to dump object as a dict --- gitlab/objects.py | 9 ++++++--- 1 file changed, 6 insertions(+), 3 deletions(-) diff --git a/gitlab/objects.py b/gitlab/objects.py index 57b8e14a8..c03e77e48 100644 --- a/gitlab/objects.py +++ b/gitlab/objects.py @@ -34,9 +34,7 @@ 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 @@ def json(self): """ 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'