Add support for JSON pretty printing
authorDaniel P. Berrange <berrange@redhat.com>
Mon, 7 Jun 2010 14:42:14 +0000 (15:42 +0100)
committerLuiz Capitulino <lcapitulino@redhat.com>
Fri, 1 Oct 2010 13:12:43 +0000 (10:12 -0300)
commit212b6008686369b288a2b71e4f1b25f07d854763
tree9f2b979a0310597e8e49c296fd36b29b79415354
parent2c50e26efdb7e405ecacf89e6a57a60179226dd8
Add support for JSON pretty printing

The monitor does not pretty-print JSON output, so that everything
will be on a single line reply. When JSON docs get large this is
quite unpleasant to read. For the future command line capabilities
query ability, huge JSON docs will be available. This needs the
ability to pretty-print.

This introduces a new API qobject_to_json_pretty() that does
a minimal indentation of list and dict members. As an example,
this makes

  {"QMP": {"version": {"micro": 50, "minor": 12, "package": "", "major": 0}, "capabilities": []}}

Output as

  {
      "QMP": {
          "version": {
              "micro": 50,
              "minor": 12,
              "package": "",
              "major": 0
          },
          "capabilities": [
          ]
      }
  }

NB: this is not turned on for the QMP monitor.

Signed-off-by: Daniel P. Berrange <berrange@redhat.com>
Signed-off-by: Luiz Capitulino <lcapitulino@redhat.com>
qjson.c
qjson.h