summaryrefslogtreecommitdiffstats
path: root/utils/common.h
diff options
context:
space:
mode:
authorPrasanna Kumar Kalever <prasanna.kalever@redhat.com>2017-03-22 12:43:20 +0530
committerPranith Kumar K <pkarampu@redhat.com>2017-04-28 11:43:02 +0530
commit7e29a1a2496a922457bdeb02332e9b78c97b4d81 (patch)
tree2e3090df6519e98718ddfc58ae0e23ddcaa5140a /utils/common.h
parentbd772be0685479c2fe27e15a3289384a56cf4c31 (diff)
gluster-block: support json response
This is how cli response looks like, on supplying '--json*' flag to cmd-args: $ gluster-block create block-test/sample-block1 ha 1 localhost.localdomain 1GiB --json (or) $ gluster-block create block-test/sample-block2 ha 1 localhost.localdomain 1GiB --json-spaced { "IQN": "iqn.2016-12.org.gluster-block:681af106-85f1-4a02-a122-57c80903458c", \ "PORTAL(S)": [ "localhost.localdomain:3260" ], "RESULT": "SUCCESS" } $ gluster-block create block-test/sample-block3 ha 1 localhost.localdomain 1GiB --json-plain {"IQN":"iqn.2016-12.org.gluster-block:0fdf6647-57f2-477f-8dd4-54a3de06e410",\ "PORTAL(S)":["localhost.localdomain:3260"],"RESULT":"SUCCESS"} $ gluster-block create block-test/sample-block4 ha 1 localhost.localdomain 1GiB --json-pretty { "IQN":"iqn.2016-12.org.gluster-block:e92ca4a0-5325-4c4b-a407-9e75790e4c7f", "PORTAL(S)":[ "localhost.localdomain:3260" ], "RESULT":"SUCCESS" } Change-Id: Ie51039e3dee0b3357d2347b4087e0fbe299aa29e Fixes: #3 Signed-off-by: Prasanna Kumar Kalever <prasanna.kalever@redhat.com>
Diffstat (limited to 'utils/common.h')
-rw-r--r--utils/common.h15
1 files changed, 15 insertions, 0 deletions
diff --git a/utils/common.h b/utils/common.h
index c5ec334..b43220f 100644
--- a/utils/common.h
+++ b/utils/common.h
@@ -13,6 +13,7 @@
# define _COMMON_H 1
# include "utils.h"
+# include "block.h"
# define GB_LOGDIR DATADIR "/log/gluster-block"
# define GB_INFODIR DATADIR "/run"
@@ -37,6 +38,20 @@
# define SUN_PATH_MAX (sizeof(struct sockaddr_un) - sizeof(unsigned short int)) /*sun_family*/
+static const char *const JsonResponseFormatLookup[] = {
+ [GB_JSON_NONE] = "",
+
+ [GB_JSON_PLAIN] = "--json-plain",
+ [GB_JSON_SPACED] = "--json-spaced",
+ [GB_JSON_PRETTY] = "--json-pretty",
+ [GB_JSON_DEFAULT] = "--json",
+
+ [GB_JSON_MAX] = NULL,
+};
+
+
+enum JsonResponseFormat jsonResponseFormatParse(const char *opt);
+
ssize_t glusterBlockCreateParseSize(const char *dom, char *value);
# endif /* _COMMON_H */