summaryrefslogtreecommitdiff
path: root/gitlab.py
diff options
context:
space:
mode:
authorGauvain Pocentek <gauvain@pocentek.net>2013-05-18 16:27:47 +0200
committerGauvain Pocentek <gauvain@pocentek.net>2013-05-18 16:27:47 +0200
commitabf1b0df06ef1a1806da00eb91d98c5fe7a4bd72 (patch)
treefa3ef28d7493cdfa8da4b48ad52b2c17846e9c40 /gitlab.py
parentbc9d44083e2e2cee47d04c5d3c7ef55de38b49ed (diff)
downloadgitlab-abf1b0df06ef1a1806da00eb91d98c5fe7a4bd72.tar.gz
add a GitlabObject.pretty_print method
Diffstat (limited to 'gitlab.py')
-rw-r--r--gitlab.py17
1 files changed, 17 insertions, 0 deletions
diff --git a/gitlab.py b/gitlab.py
index d0476d4..088d266 100644
--- a/gitlab.py
+++ b/gitlab.py
@@ -448,6 +448,23 @@ class GitlabObject(object):
def __str__(self):
return '%s => %s' % (type(self), str(self.__dict__))
+ def pretty_print(self, depth=0):
+ print "%sid: %s" % (" " * depth * 2, self.id)
+ for k in sorted(self.__dict__.keys()):
+ if k == "id":
+ continue
+ v = self.__dict__[k]
+ if isinstance(v, GitlabObject):
+ if depth == 0:
+ print "%s:" % k
+ v.pretty_print(1)
+ else:
+ print "%s: %s" % (k, v.id)
+ else:
+ if isinstance(v, Gitlab):
+ continue
+ print "%s%s: %s" % (" " * depth * 2, k, v)
+
def json(self):
return json.dumps(self.__dict__, cls=jsonEncoder)