X-Git-Url: https://code.grnet.gr/git/ganeti-local/blobdiff_plain/e91ffe49c804266a4181ae80abc12f7cf4b74b14..3956cee12cc47c8c5c63411a2a0b3532841f920c:/lib/serializer.py diff --git a/lib/serializer.py b/lib/serializer.py index c5a8b0d..05bc334 100644 --- a/lib/serializer.py +++ b/lib/serializer.py @@ -28,6 +28,7 @@ backend (currently json). import simplejson import re + # Check whether the simplejson module supports indentation _JSON_INDENT = 2 try: @@ -38,14 +39,18 @@ except TypeError: _RE_EOLSP = re.compile('[ \t]+$', re.MULTILINE) -def DumpJson(data): +def DumpJson(data, indent=True): """Serialize a given object. + Args: + - indent: Whether to indent output (depends on simplejson version) + """ - if _JSON_INDENT is None: + if not indent or _JSON_INDENT is None: txt = simplejson.dumps(data) else: txt = simplejson.dumps(data, indent=_JSON_INDENT) + txt = _RE_EOLSP.sub("", txt) if not txt.endswith('\n'): txt += '\n'