Library for Yodiwo's Plegma API

Committer:
mitsarionas
Date:
Mon Sep 21 06:55:29 2015 +0000
Revision:
5:7358822a587a
Parent:
4:073e23f6718c
Child:
6:4596aaa1a824
fixed autogenerated

Who changed what in which revision?

UserRevisionLine numberNew contents of line
mitsarionas 0:384a04dc912e 1 /**
mitsarionas 5:7358822a587a 2 * Created by ApiGenerator Tool (C) on 17/9/2015 10:39:37 πμ.
mitsarionas 0:384a04dc912e 3 */
mitsarionas 0:384a04dc912e 4
mitsarionas 0:384a04dc912e 5 // This is only for windows testing
mitsarionas 0:384a04dc912e 6 #ifdef _MSC_VER
mitsarionas 0:384a04dc912e 7 #define _CRT_SECURE_NO_WARNINGS
mitsarionas 0:384a04dc912e 8 #endif
mitsarionas 0:384a04dc912e 9
mitsarionas 0:384a04dc912e 10
mitsarionas 0:384a04dc912e 11 #include <stdio.h>
mitsarionas 0:384a04dc912e 12 #include <stdint.h>
mitsarionas 0:384a04dc912e 13 #include <stdbool.h>
mitsarionas 0:384a04dc912e 14 #include "jsmn.h"
mitsarionas 0:384a04dc912e 15 #include "yodiwo_api.h"
mitsarionas 0:384a04dc912e 16 #include "yodiwo_helpers.h"
mitsarionas 0:384a04dc912e 17
mitsarionas 0:384a04dc912e 18 /* ======================================================================================================================= */
mitsarionas 0:384a04dc912e 19 /* ToJson Functions */
mitsarionas 0:384a04dc912e 20 /* ======================================================================================================================= */
mitsarionas 0:384a04dc912e 21
mitsarionas 0:384a04dc912e 22
mitsarionas 0:384a04dc912e 23 // Helper functions to print arrays
mitsarionas 0:384a04dc912e 24 // -----------------------------------------------------------------------------------------------------------------------
mitsarionas 0:384a04dc912e 25 int Array_Yodiwo_Plegma_ConfigParameter_ToJson(char* jsonStart, size_t jsonSize, Array_Yodiwo_Plegma_ConfigParameter_t *array)
mitsarionas 0:384a04dc912e 26 {
mitsarionas 0:384a04dc912e 27 int i = 0, len; char *json = jsonStart, *jsonEnd = json + jsonSize;
mitsarionas 0:384a04dc912e 28 *json = '['; json++;
mitsarionas 0:384a04dc912e 29 if (array != NULL) {
mitsarionas 0:384a04dc912e 30 for (i = 0; i < array->num; i++) {
mitsarionas 0:384a04dc912e 31 if ((len = Yodiwo_Plegma_ConfigParameter_ToJson(json, jsonEnd - json - 2, &array->elems[i]) - 1) < 0) return -1; else json += len;
mitsarionas 0:384a04dc912e 32 *json = ','; json++;
mitsarionas 0:384a04dc912e 33 }
mitsarionas 0:384a04dc912e 34 if (i > 0) json--; // remove last ,
mitsarionas 0:384a04dc912e 35 }
mitsarionas 0:384a04dc912e 36 *json = ']'; json++;
mitsarionas 0:384a04dc912e 37 *json = '\0'; json++;
mitsarionas 0:384a04dc912e 38 return json - jsonStart;
mitsarionas 0:384a04dc912e 39 }
mitsarionas 0:384a04dc912e 40
mitsarionas 0:384a04dc912e 41 // -----------------------------------------------------------------------------------------------------------------------
mitsarionas 0:384a04dc912e 42 int Array_Yodiwo_Plegma_Port_ToJson(char* jsonStart, size_t jsonSize, Array_Yodiwo_Plegma_Port_t *array)
mitsarionas 0:384a04dc912e 43 {
mitsarionas 0:384a04dc912e 44 int i = 0, len; char *json = jsonStart, *jsonEnd = json + jsonSize;
mitsarionas 0:384a04dc912e 45 *json = '['; json++;
mitsarionas 0:384a04dc912e 46 if (array != NULL) {
mitsarionas 0:384a04dc912e 47 for (i = 0; i < array->num; i++) {
mitsarionas 0:384a04dc912e 48 if ((len = Yodiwo_Plegma_Port_ToJson(json, jsonEnd - json - 2, &array->elems[i]) - 1) < 0) return -1; else json += len;
mitsarionas 0:384a04dc912e 49 *json = ','; json++;
mitsarionas 0:384a04dc912e 50 }
mitsarionas 0:384a04dc912e 51 if (i > 0) json--; // remove last ,
mitsarionas 0:384a04dc912e 52 }
mitsarionas 0:384a04dc912e 53 *json = ']'; json++;
mitsarionas 0:384a04dc912e 54 *json = '\0'; json++;
mitsarionas 0:384a04dc912e 55 return json - jsonStart;
mitsarionas 0:384a04dc912e 56 }
mitsarionas 0:384a04dc912e 57
mitsarionas 0:384a04dc912e 58 // -----------------------------------------------------------------------------------------------------------------------
mitsarionas 0:384a04dc912e 59 int Array_Yodiwo_Plegma_ConfigDescription_ToJson(char* jsonStart, size_t jsonSize, Array_Yodiwo_Plegma_ConfigDescription_t *array)
mitsarionas 0:384a04dc912e 60 {
mitsarionas 0:384a04dc912e 61 int i = 0, len; char *json = jsonStart, *jsonEnd = json + jsonSize;
mitsarionas 0:384a04dc912e 62 *json = '['; json++;
mitsarionas 0:384a04dc912e 63 if (array != NULL) {
mitsarionas 0:384a04dc912e 64 for (i = 0; i < array->num; i++) {
mitsarionas 0:384a04dc912e 65 if ((len = Yodiwo_Plegma_ConfigDescription_ToJson(json, jsonEnd - json - 2, &array->elems[i]) - 1) < 0) return -1; else json += len;
mitsarionas 0:384a04dc912e 66 *json = ','; json++;
mitsarionas 0:384a04dc912e 67 }
mitsarionas 0:384a04dc912e 68 if (i > 0) json--; // remove last ,
mitsarionas 0:384a04dc912e 69 }
mitsarionas 0:384a04dc912e 70 *json = ']'; json++;
mitsarionas 0:384a04dc912e 71 *json = '\0'; json++;
mitsarionas 0:384a04dc912e 72 return json - jsonStart;
mitsarionas 0:384a04dc912e 73 }
mitsarionas 0:384a04dc912e 74
mitsarionas 0:384a04dc912e 75 // -----------------------------------------------------------------------------------------------------------------------
mitsarionas 0:384a04dc912e 76 int Array_Yodiwo_Plegma_PortDescription_ToJson(char* jsonStart, size_t jsonSize, Array_Yodiwo_Plegma_PortDescription_t *array)
mitsarionas 0:384a04dc912e 77 {
mitsarionas 0:384a04dc912e 78 int i = 0, len; char *json = jsonStart, *jsonEnd = json + jsonSize;
mitsarionas 0:384a04dc912e 79 *json = '['; json++;
mitsarionas 0:384a04dc912e 80 if (array != NULL) {
mitsarionas 0:384a04dc912e 81 for (i = 0; i < array->num; i++) {
mitsarionas 0:384a04dc912e 82 if ((len = Yodiwo_Plegma_PortDescription_ToJson(json, jsonEnd - json - 2, &array->elems[i]) - 1) < 0) return -1; else json += len;
mitsarionas 0:384a04dc912e 83 *json = ','; json++;
mitsarionas 0:384a04dc912e 84 }
mitsarionas 0:384a04dc912e 85 if (i > 0) json--; // remove last ,
mitsarionas 0:384a04dc912e 86 }
mitsarionas 0:384a04dc912e 87 *json = ']'; json++;
mitsarionas 0:384a04dc912e 88 *json = '\0'; json++;
mitsarionas 0:384a04dc912e 89 return json - jsonStart;
mitsarionas 0:384a04dc912e 90 }
mitsarionas 0:384a04dc912e 91
mitsarionas 0:384a04dc912e 92 // -----------------------------------------------------------------------------------------------------------------------
mitsarionas 0:384a04dc912e 93 int Array_Yodiwo_Plegma_NodeModelType_ToJson(char* jsonStart, size_t jsonSize, Array_Yodiwo_Plegma_NodeModelType_t *array)
mitsarionas 0:384a04dc912e 94 {
mitsarionas 0:384a04dc912e 95 int i = 0, len; char *json = jsonStart, *jsonEnd = json + jsonSize;
mitsarionas 0:384a04dc912e 96 *json = '['; json++;
mitsarionas 0:384a04dc912e 97 if (array != NULL) {
mitsarionas 0:384a04dc912e 98 for (i = 0; i < array->num; i++) {
mitsarionas 0:384a04dc912e 99 if ((len = Yodiwo_Plegma_NodeModelType_ToJson(json, jsonEnd - json - 2, &array->elems[i]) - 1) < 0) return -1; else json += len;
mitsarionas 0:384a04dc912e 100 *json = ','; json++;
mitsarionas 0:384a04dc912e 101 }
mitsarionas 0:384a04dc912e 102 if (i > 0) json--; // remove last ,
mitsarionas 0:384a04dc912e 103 }
mitsarionas 0:384a04dc912e 104 *json = ']'; json++;
mitsarionas 0:384a04dc912e 105 *json = '\0'; json++;
mitsarionas 0:384a04dc912e 106 return json - jsonStart;
mitsarionas 0:384a04dc912e 107 }
mitsarionas 0:384a04dc912e 108
mitsarionas 0:384a04dc912e 109 // -----------------------------------------------------------------------------------------------------------------------
mitsarionas 0:384a04dc912e 110 int Array_Yodiwo_Plegma_NodeThingType_ToJson(char* jsonStart, size_t jsonSize, Array_Yodiwo_Plegma_NodeThingType_t *array)
mitsarionas 0:384a04dc912e 111 {
mitsarionas 0:384a04dc912e 112 int i = 0, len; char *json = jsonStart, *jsonEnd = json + jsonSize;
mitsarionas 0:384a04dc912e 113 *json = '['; json++;
mitsarionas 0:384a04dc912e 114 if (array != NULL) {
mitsarionas 0:384a04dc912e 115 for (i = 0; i < array->num; i++) {
mitsarionas 0:384a04dc912e 116 if ((len = Yodiwo_Plegma_NodeThingType_ToJson(json, jsonEnd - json - 2, &array->elems[i]) - 1) < 0) return -1; else json += len;
mitsarionas 0:384a04dc912e 117 *json = ','; json++;
mitsarionas 0:384a04dc912e 118 }
mitsarionas 0:384a04dc912e 119 if (i > 0) json--; // remove last ,
mitsarionas 0:384a04dc912e 120 }
mitsarionas 0:384a04dc912e 121 *json = ']'; json++;
mitsarionas 0:384a04dc912e 122 *json = '\0'; json++;
mitsarionas 0:384a04dc912e 123 return json - jsonStart;
mitsarionas 0:384a04dc912e 124 }
mitsarionas 0:384a04dc912e 125
mitsarionas 0:384a04dc912e 126 // -----------------------------------------------------------------------------------------------------------------------
mitsarionas 0:384a04dc912e 127 int Array_Yodiwo_Plegma_Thing_ToJson(char* jsonStart, size_t jsonSize, Array_Yodiwo_Plegma_Thing_t *array)
mitsarionas 0:384a04dc912e 128 {
mitsarionas 0:384a04dc912e 129 int i = 0, len; char *json = jsonStart, *jsonEnd = json + jsonSize;
mitsarionas 0:384a04dc912e 130 *json = '['; json++;
mitsarionas 0:384a04dc912e 131 if (array != NULL) {
mitsarionas 0:384a04dc912e 132 for (i = 0; i < array->num; i++) {
mitsarionas 0:384a04dc912e 133 if ((len = Yodiwo_Plegma_Thing_ToJson(json, jsonEnd - json - 2, &array->elems[i]) - 1) < 0) return -1; else json += len;
mitsarionas 0:384a04dc912e 134 *json = ','; json++;
mitsarionas 0:384a04dc912e 135 }
mitsarionas 0:384a04dc912e 136 if (i > 0) json--; // remove last ,
mitsarionas 0:384a04dc912e 137 }
mitsarionas 0:384a04dc912e 138 *json = ']'; json++;
mitsarionas 0:384a04dc912e 139 *json = '\0'; json++;
mitsarionas 0:384a04dc912e 140 return json - jsonStart;
mitsarionas 0:384a04dc912e 141 }
mitsarionas 0:384a04dc912e 142
mitsarionas 0:384a04dc912e 143 // -----------------------------------------------------------------------------------------------------------------------
mitsarionas 0:384a04dc912e 144 int Array_Yodiwo_Plegma_PortEvent_ToJson(char* jsonStart, size_t jsonSize, Array_Yodiwo_Plegma_PortEvent_t *array)
mitsarionas 0:384a04dc912e 145 {
mitsarionas 0:384a04dc912e 146 int i = 0, len; char *json = jsonStart, *jsonEnd = json + jsonSize;
mitsarionas 0:384a04dc912e 147 *json = '['; json++;
mitsarionas 0:384a04dc912e 148 if (array != NULL) {
mitsarionas 0:384a04dc912e 149 for (i = 0; i < array->num; i++) {
mitsarionas 0:384a04dc912e 150 if ((len = Yodiwo_Plegma_PortEvent_ToJson(json, jsonEnd - json - 2, &array->elems[i]) - 1) < 0) return -1; else json += len;
mitsarionas 0:384a04dc912e 151 *json = ','; json++;
mitsarionas 0:384a04dc912e 152 }
mitsarionas 0:384a04dc912e 153 if (i > 0) json--; // remove last ,
mitsarionas 0:384a04dc912e 154 }
mitsarionas 0:384a04dc912e 155 *json = ']'; json++;
mitsarionas 0:384a04dc912e 156 *json = '\0'; json++;
mitsarionas 0:384a04dc912e 157 return json - jsonStart;
mitsarionas 0:384a04dc912e 158 }
mitsarionas 0:384a04dc912e 159
mitsarionas 0:384a04dc912e 160 // -----------------------------------------------------------------------------------------------------------------------
mitsarionas 0:384a04dc912e 161 int Array_Yodiwo_Plegma_PortState_ToJson(char* jsonStart, size_t jsonSize, Array_Yodiwo_Plegma_PortState_t *array)
mitsarionas 0:384a04dc912e 162 {
mitsarionas 0:384a04dc912e 163 int i = 0, len; char *json = jsonStart, *jsonEnd = json + jsonSize;
mitsarionas 0:384a04dc912e 164 *json = '['; json++;
mitsarionas 0:384a04dc912e 165 if (array != NULL) {
mitsarionas 0:384a04dc912e 166 for (i = 0; i < array->num; i++) {
mitsarionas 0:384a04dc912e 167 if ((len = Yodiwo_Plegma_PortState_ToJson(json, jsonEnd - json - 2, &array->elems[i]) - 1) < 0) return -1; else json += len;
mitsarionas 0:384a04dc912e 168 *json = ','; json++;
mitsarionas 0:384a04dc912e 169 }
mitsarionas 0:384a04dc912e 170 if (i > 0) json--; // remove last ,
mitsarionas 0:384a04dc912e 171 }
mitsarionas 0:384a04dc912e 172 *json = ']'; json++;
mitsarionas 0:384a04dc912e 173 *json = '\0'; json++;
mitsarionas 0:384a04dc912e 174 return json - jsonStart;
mitsarionas 0:384a04dc912e 175 }
mitsarionas 0:384a04dc912e 176
mitsarionas 4:073e23f6718c 177 // -----------------------------------------------------------------------------------------------------------------------
mitsarionas 4:073e23f6718c 178 int Array_Yodiwo_Tools_APIGenerator_CNodeConfig_ToJson(char* jsonStart, size_t jsonSize, Array_Yodiwo_Tools_APIGenerator_CNodeConfig_t *array)
mitsarionas 4:073e23f6718c 179 {
mitsarionas 4:073e23f6718c 180 int i = 0, len; char *json = jsonStart, *jsonEnd = json + jsonSize;
mitsarionas 4:073e23f6718c 181 *json = '['; json++;
mitsarionas 4:073e23f6718c 182 if (array != NULL) {
mitsarionas 4:073e23f6718c 183 for (i = 0; i < array->num; i++) {
mitsarionas 4:073e23f6718c 184 if ((len = Yodiwo_Tools_APIGenerator_CNodeConfig_ToJson(json, jsonEnd - json - 2, &array->elems[i]) - 1) < 0) return -1; else json += len;
mitsarionas 4:073e23f6718c 185 *json = ','; json++;
mitsarionas 4:073e23f6718c 186 }
mitsarionas 4:073e23f6718c 187 if (i > 0) json--; // remove last ,
mitsarionas 4:073e23f6718c 188 }
mitsarionas 4:073e23f6718c 189 *json = ']'; json++;
mitsarionas 4:073e23f6718c 190 *json = '\0'; json++;
mitsarionas 4:073e23f6718c 191 return json - jsonStart;
mitsarionas 4:073e23f6718c 192 }
mitsarionas 4:073e23f6718c 193
mitsarionas 0:384a04dc912e 194
mitsarionas 0:384a04dc912e 195
mitsarionas 0:384a04dc912e 196
mitsarionas 0:384a04dc912e 197 // -----------------------------------------------------------------------------------------------------------------------
mitsarionas 0:384a04dc912e 198 int Yodiwo_Plegma_UserKey_ToJson(char* jsonStart, size_t jsonSize, Yodiwo_Plegma_UserKey_t *value)
mitsarionas 0:384a04dc912e 199 {
mitsarionas 0:384a04dc912e 200 char *json = jsonStart, *jsonEnd = json + jsonSize;
mitsarionas 0:384a04dc912e 201 int len;
mitsarionas 5:7358822a587a 202 json += snprintf(json, jsonEnd - json, "{ \"UserID\" : \""); if (json >= jsonEnd) return -1;
mitsarionas 4:073e23f6718c 203 json += strcpy_escaped(json, value->UserID); if (json + 1 >= jsonEnd) return -1;
mitsarionas 4:073e23f6718c 204 *json = '\"'; json++;
mitsarionas 0:384a04dc912e 205 *json = '}'; json++;
mitsarionas 0:384a04dc912e 206 *json = '\0'; json++;
mitsarionas 0:384a04dc912e 207 return json - jsonStart;
mitsarionas 0:384a04dc912e 208 }
mitsarionas 0:384a04dc912e 209
mitsarionas 0:384a04dc912e 210 // -----------------------------------------------------------------------------------------------------------------------
mitsarionas 0:384a04dc912e 211 int Yodiwo_Plegma_NodeKey_ToJson(char* jsonStart, size_t jsonSize, Yodiwo_Plegma_NodeKey_t *value)
mitsarionas 0:384a04dc912e 212 {
mitsarionas 0:384a04dc912e 213 char *json = jsonStart, *jsonEnd = json + jsonSize;
mitsarionas 0:384a04dc912e 214 int len;
mitsarionas 3:96b08b5f998f 215 json += snprintf(json, jsonEnd - json, "%s", "{ \"UserKey\" : ");
mitsarionas 0:384a04dc912e 216 if ((len = Yodiwo_Plegma_UserKey_ToJson(json, jsonEnd - json, &value->UserKey) - 1) < 0) return -1; else json += len;
mitsarionas 3:96b08b5f998f 217 json += snprintf(json, jsonEnd - json, ", \"NodeID\" : %d", value->NodeID); if (json >= jsonEnd) return -1;
mitsarionas 0:384a04dc912e 218 *json = '}'; json++;
mitsarionas 0:384a04dc912e 219 *json = '\0'; json++;
mitsarionas 0:384a04dc912e 220 return json - jsonStart;
mitsarionas 0:384a04dc912e 221 }
mitsarionas 0:384a04dc912e 222
mitsarionas 0:384a04dc912e 223 // -----------------------------------------------------------------------------------------------------------------------
mitsarionas 0:384a04dc912e 224 int Yodiwo_Plegma_ThingKey_ToJson(char* jsonStart, size_t jsonSize, Yodiwo_Plegma_ThingKey_t *value)
mitsarionas 0:384a04dc912e 225 {
mitsarionas 0:384a04dc912e 226 char *json = jsonStart, *jsonEnd = json + jsonSize;
mitsarionas 0:384a04dc912e 227 int len;
mitsarionas 3:96b08b5f998f 228 json += snprintf(json, jsonEnd - json, "%s", "{ \"NodeKey\" : ");
mitsarionas 0:384a04dc912e 229 if ((len = Yodiwo_Plegma_NodeKey_ToJson(json, jsonEnd - json, &value->NodeKey) - 1) < 0) return -1; else json += len;
mitsarionas 5:7358822a587a 230 json += snprintf(json, jsonEnd - json, ", \"ThingUID\" : \""); if (json >= jsonEnd) return -1;
mitsarionas 4:073e23f6718c 231 json += strcpy_escaped(json, value->ThingUID); if (json + 1 >= jsonEnd) return -1;
mitsarionas 4:073e23f6718c 232 *json = '\"'; json++;
mitsarionas 0:384a04dc912e 233 *json = '}'; json++;
mitsarionas 0:384a04dc912e 234 *json = '\0'; json++;
mitsarionas 0:384a04dc912e 235 return json - jsonStart;
mitsarionas 0:384a04dc912e 236 }
mitsarionas 0:384a04dc912e 237
mitsarionas 0:384a04dc912e 238 // -----------------------------------------------------------------------------------------------------------------------
mitsarionas 0:384a04dc912e 239 int Yodiwo_Plegma_PortKey_ToJson(char* jsonStart, size_t jsonSize, Yodiwo_Plegma_PortKey_t *value)
mitsarionas 0:384a04dc912e 240 {
mitsarionas 0:384a04dc912e 241 char *json = jsonStart, *jsonEnd = json + jsonSize;
mitsarionas 0:384a04dc912e 242 int len;
mitsarionas 3:96b08b5f998f 243 json += snprintf(json, jsonEnd - json, "%s", "{ \"ThingKey\" : ");
mitsarionas 0:384a04dc912e 244 if ((len = Yodiwo_Plegma_ThingKey_ToJson(json, jsonEnd - json, &value->ThingKey) - 1) < 0) return -1; else json += len;
mitsarionas 5:7358822a587a 245 json += snprintf(json, jsonEnd - json, ", \"PortUID\" : \""); if (json >= jsonEnd) return -1;
mitsarionas 4:073e23f6718c 246 json += strcpy_escaped(json, value->PortUID); if (json + 1 >= jsonEnd) return -1;
mitsarionas 4:073e23f6718c 247 *json = '\"'; json++;
mitsarionas 0:384a04dc912e 248 *json = '}'; json++;
mitsarionas 0:384a04dc912e 249 *json = '\0'; json++;
mitsarionas 0:384a04dc912e 250 return json - jsonStart;
mitsarionas 0:384a04dc912e 251 }
mitsarionas 0:384a04dc912e 252
mitsarionas 0:384a04dc912e 253 // -----------------------------------------------------------------------------------------------------------------------
mitsarionas 0:384a04dc912e 254 int Yodiwo_Plegma_GraphDescriptorBaseKey_ToJson(char* jsonStart, size_t jsonSize, Yodiwo_Plegma_GraphDescriptorBaseKey_t *value)
mitsarionas 0:384a04dc912e 255 {
mitsarionas 0:384a04dc912e 256 char *json = jsonStart, *jsonEnd = json + jsonSize;
mitsarionas 0:384a04dc912e 257 int len;
mitsarionas 3:96b08b5f998f 258 json += snprintf(json, jsonEnd - json, "%s", "{ \"UserKey\" : ");
mitsarionas 0:384a04dc912e 259 if ((len = Yodiwo_Plegma_UserKey_ToJson(json, jsonEnd - json, &value->UserKey) - 1) < 0) return -1; else json += len;
mitsarionas 5:7358822a587a 260 json += snprintf(json, jsonEnd - json, ", \"Id\" : \""); if (json >= jsonEnd) return -1;
mitsarionas 4:073e23f6718c 261 json += strcpy_escaped(json, value->Id); if (json + 1 >= jsonEnd) return -1;
mitsarionas 4:073e23f6718c 262 *json = '\"'; json++;
mitsarionas 0:384a04dc912e 263 *json = '}'; json++;
mitsarionas 0:384a04dc912e 264 *json = '\0'; json++;
mitsarionas 0:384a04dc912e 265 return json - jsonStart;
mitsarionas 0:384a04dc912e 266 }
mitsarionas 0:384a04dc912e 267
mitsarionas 0:384a04dc912e 268 // -----------------------------------------------------------------------------------------------------------------------
mitsarionas 0:384a04dc912e 269 int Yodiwo_Plegma_GraphDescriptorKey_ToJson(char* jsonStart, size_t jsonSize, Yodiwo_Plegma_GraphDescriptorKey_t *value)
mitsarionas 0:384a04dc912e 270 {
mitsarionas 0:384a04dc912e 271 char *json = jsonStart, *jsonEnd = json + jsonSize;
mitsarionas 0:384a04dc912e 272 int len;
mitsarionas 3:96b08b5f998f 273 json += snprintf(json, jsonEnd - json, "%s", "{ \"UserKey\" : ");
mitsarionas 0:384a04dc912e 274 if ((len = Yodiwo_Plegma_UserKey_ToJson(json, jsonEnd - json, &value->UserKey) - 1) < 0) return -1; else json += len;
mitsarionas 5:7358822a587a 275 json += snprintf(json, jsonEnd - json, ", \"Id\" : \""); if (json >= jsonEnd) return -1;
mitsarionas 4:073e23f6718c 276 json += strcpy_escaped(json, value->Id); if (json + 1 >= jsonEnd) return -1;
mitsarionas 4:073e23f6718c 277 *json = '\"'; json++;
mitsarionas 3:96b08b5f998f 278 json += snprintf(json, jsonEnd - json, ", \"Revision\" : %d", value->Revision); if (json >= jsonEnd) return -1;
mitsarionas 0:384a04dc912e 279 *json = '}'; json++;
mitsarionas 0:384a04dc912e 280 *json = '\0'; json++;
mitsarionas 0:384a04dc912e 281 return json - jsonStart;
mitsarionas 0:384a04dc912e 282 }
mitsarionas 0:384a04dc912e 283
mitsarionas 0:384a04dc912e 284 // -----------------------------------------------------------------------------------------------------------------------
mitsarionas 0:384a04dc912e 285 int Yodiwo_Plegma_GraphKey_ToJson(char* jsonStart, size_t jsonSize, Yodiwo_Plegma_GraphKey_t *value)
mitsarionas 0:384a04dc912e 286 {
mitsarionas 0:384a04dc912e 287 char *json = jsonStart, *jsonEnd = json + jsonSize;
mitsarionas 0:384a04dc912e 288 int len;
mitsarionas 3:96b08b5f998f 289 json += snprintf(json, jsonEnd - json, "%s", "{ \"GraphDescriptorKey\" : ");
mitsarionas 0:384a04dc912e 290 if ((len = Yodiwo_Plegma_GraphDescriptorKey_ToJson(json, jsonEnd - json, &value->GraphDescriptorKey) - 1) < 0) return -1; else json += len;
mitsarionas 3:96b08b5f998f 291 json += snprintf(json, jsonEnd - json, ", \"GraphId\" : %d", value->GraphId); if (json >= jsonEnd) return -1;
mitsarionas 0:384a04dc912e 292 *json = '}'; json++;
mitsarionas 0:384a04dc912e 293 *json = '\0'; json++;
mitsarionas 0:384a04dc912e 294 return json - jsonStart;
mitsarionas 0:384a04dc912e 295 }
mitsarionas 0:384a04dc912e 296
mitsarionas 0:384a04dc912e 297 // -----------------------------------------------------------------------------------------------------------------------
mitsarionas 0:384a04dc912e 298 int Yodiwo_Plegma_BlockKey_ToJson(char* jsonStart, size_t jsonSize, Yodiwo_Plegma_BlockKey_t *value)
mitsarionas 0:384a04dc912e 299 {
mitsarionas 0:384a04dc912e 300 char *json = jsonStart, *jsonEnd = json + jsonSize;
mitsarionas 0:384a04dc912e 301 int len;
mitsarionas 3:96b08b5f998f 302 json += snprintf(json, jsonEnd - json, "%s", "{ \"GraphKey\" : ");
mitsarionas 0:384a04dc912e 303 if ((len = Yodiwo_Plegma_GraphKey_ToJson(json, jsonEnd - json, &value->GraphKey) - 1) < 0) return -1; else json += len;
mitsarionas 3:96b08b5f998f 304 json += snprintf(json, jsonEnd - json, ", \"BlockId\" : %d", value->BlockId); if (json >= jsonEnd) return -1;
mitsarionas 0:384a04dc912e 305 *json = '}'; json++;
mitsarionas 0:384a04dc912e 306 *json = '\0'; json++;
mitsarionas 0:384a04dc912e 307 return json - jsonStart;
mitsarionas 0:384a04dc912e 308 }
mitsarionas 0:384a04dc912e 309
mitsarionas 0:384a04dc912e 310 // -----------------------------------------------------------------------------------------------------------------------
mitsarionas 2:855390040d43 311 int Yodiwo_Plegma_TimelineDescriptorKey_ToJson(char* jsonStart, size_t jsonSize, Yodiwo_Plegma_TimelineDescriptorKey_t *value)
mitsarionas 2:855390040d43 312 {
mitsarionas 2:855390040d43 313 char *json = jsonStart, *jsonEnd = json + jsonSize;
mitsarionas 2:855390040d43 314 int len;
mitsarionas 3:96b08b5f998f 315 json += snprintf(json, jsonEnd - json, "%s", "{ \"UserKey\" : ");
mitsarionas 2:855390040d43 316 if ((len = Yodiwo_Plegma_UserKey_ToJson(json, jsonEnd - json, &value->UserKey) - 1) < 0) return -1; else json += len;
mitsarionas 5:7358822a587a 317 json += snprintf(json, jsonEnd - json, ", \"Id\" : \""); if (json >= jsonEnd) return -1;
mitsarionas 4:073e23f6718c 318 json += strcpy_escaped(json, value->Id); if (json + 1 >= jsonEnd) return -1;
mitsarionas 4:073e23f6718c 319 *json = '\"'; json++;
mitsarionas 2:855390040d43 320 *json = '}'; json++;
mitsarionas 2:855390040d43 321 *json = '\0'; json++;
mitsarionas 2:855390040d43 322 return json - jsonStart;
mitsarionas 2:855390040d43 323 }
mitsarionas 2:855390040d43 324
mitsarionas 2:855390040d43 325 // -----------------------------------------------------------------------------------------------------------------------
mitsarionas 4:073e23f6718c 326 int Yodiwo_Plegma_Mqtt_MqttAPIMessage_ToJson(char* jsonStart, size_t jsonSize, Yodiwo_Plegma_Mqtt_MqttAPIMessage_t *value)
mitsarionas 2:855390040d43 327 {
mitsarionas 2:855390040d43 328 char *json = jsonStart, *jsonEnd = json + jsonSize;
mitsarionas 2:855390040d43 329 int len;
mitsarionas 3:96b08b5f998f 330 json += snprintf(json, jsonEnd - json, "{ \"ResponseToSeqNo\" : %d", value->ResponseToSeqNo); if (json >= jsonEnd) return -1;
mitsarionas 5:7358822a587a 331 json += snprintf(json, jsonEnd - json, ", \"Payload\" : \""); if (json >= jsonEnd) return -1;
mitsarionas 5:7358822a587a 332 json += strcpy_escaped(json, value->Payload);
mitsarionas 5:7358822a587a 333 printf("length now: %d, available: %d\n", json - jsonStart, jsonSize);
mitsarionas 5:7358822a587a 334 if (json + 1 >= jsonEnd) return -1;
mitsarionas 3:96b08b5f998f 335 *json = '\"'; json++;
mitsarionas 2:855390040d43 336 *json = '}'; json++;
mitsarionas 2:855390040d43 337 *json = '\0'; json++;
mitsarionas 2:855390040d43 338 return json - jsonStart;
mitsarionas 2:855390040d43 339 }
mitsarionas 2:855390040d43 340
mitsarionas 2:855390040d43 341 // -----------------------------------------------------------------------------------------------------------------------
mitsarionas 0:384a04dc912e 342 int Yodiwo_Plegma_Port_ToJson(char* jsonStart, size_t jsonSize, Yodiwo_Plegma_Port_t *value)
mitsarionas 0:384a04dc912e 343 {
mitsarionas 0:384a04dc912e 344 char *json = jsonStart, *jsonEnd = json + jsonSize;
mitsarionas 0:384a04dc912e 345 int len;
mitsarionas 5:7358822a587a 346 json += snprintf(json, jsonEnd - json, "{ \"PortKey\" : \""); if (json >= jsonEnd) return -1;
mitsarionas 4:073e23f6718c 347 json += strcpy_escaped(json, value->PortKey); if (json + 1 >= jsonEnd) return -1;
mitsarionas 4:073e23f6718c 348 *json = '\"'; json++;
mitsarionas 5:7358822a587a 349 json += snprintf(json, jsonEnd - json, ", \"Name\" : \""); if (json >= jsonEnd) return -1;
mitsarionas 4:073e23f6718c 350 json += strcpy_escaped(json, value->Name); if (json + 1 >= jsonEnd) return -1;
mitsarionas 4:073e23f6718c 351 *json = '\"'; json++;
mitsarionas 5:7358822a587a 352 json += snprintf(json, jsonEnd - json, ", \"Description\" : \""); if (json >= jsonEnd) return -1;
mitsarionas 4:073e23f6718c 353 json += strcpy_escaped(json, value->Description); if (json + 1 >= jsonEnd) return -1;
mitsarionas 4:073e23f6718c 354 *json = '\"'; json++;
mitsarionas 3:96b08b5f998f 355 json += snprintf(json, jsonEnd - json, ", \"ioDirection\" : %d", value->ioDirection); if (json >= jsonEnd) return -1;
mitsarionas 3:96b08b5f998f 356 json += snprintf(json, jsonEnd - json, ", \"Type\" : %d", value->Type); if (json >= jsonEnd) return -1;
mitsarionas 5:7358822a587a 357 json += snprintf(json, jsonEnd - json, ", \"State\" : \""); if (json >= jsonEnd) return -1;
mitsarionas 4:073e23f6718c 358 json += strcpy_escaped(json, value->State); if (json + 1 >= jsonEnd) return -1;
mitsarionas 4:073e23f6718c 359 *json = '\"'; json++;
mitsarionas 3:96b08b5f998f 360 json += snprintf(json, jsonEnd - json, ", \"RevNum\" : %d", value->RevNum); if (json >= jsonEnd) return -1;
mitsarionas 3:96b08b5f998f 361 json += snprintf(json, jsonEnd - json, ", \"ConfFlags\" : %d", value->ConfFlags); if (json >= jsonEnd) return -1;
mitsarionas 0:384a04dc912e 362 *json = '}'; json++;
mitsarionas 0:384a04dc912e 363 *json = '\0'; json++;
mitsarionas 0:384a04dc912e 364 return json - jsonStart;
mitsarionas 0:384a04dc912e 365 }
mitsarionas 0:384a04dc912e 366
mitsarionas 0:384a04dc912e 367 // -----------------------------------------------------------------------------------------------------------------------
mitsarionas 0:384a04dc912e 368 int Yodiwo_Plegma_ConfigParameter_ToJson(char* jsonStart, size_t jsonSize, Yodiwo_Plegma_ConfigParameter_t *value)
mitsarionas 0:384a04dc912e 369 {
mitsarionas 0:384a04dc912e 370 char *json = jsonStart, *jsonEnd = json + jsonSize;
mitsarionas 0:384a04dc912e 371 int len;
mitsarionas 5:7358822a587a 372 json += snprintf(json, jsonEnd - json, "{ \"Name\" : \""); if (json >= jsonEnd) return -1;
mitsarionas 4:073e23f6718c 373 json += strcpy_escaped(json, value->Name); if (json + 1 >= jsonEnd) return -1;
mitsarionas 4:073e23f6718c 374 *json = '\"'; json++;
mitsarionas 5:7358822a587a 375 json += snprintf(json, jsonEnd - json, ", \"Value\" : \""); if (json >= jsonEnd) return -1;
mitsarionas 4:073e23f6718c 376 json += strcpy_escaped(json, value->Value); if (json + 1 >= jsonEnd) return -1;
mitsarionas 4:073e23f6718c 377 *json = '\"'; json++;
mitsarionas 0:384a04dc912e 378 *json = '}'; json++;
mitsarionas 0:384a04dc912e 379 *json = '\0'; json++;
mitsarionas 0:384a04dc912e 380 return json - jsonStart;
mitsarionas 0:384a04dc912e 381 }
mitsarionas 0:384a04dc912e 382
mitsarionas 0:384a04dc912e 383 // -----------------------------------------------------------------------------------------------------------------------
mitsarionas 0:384a04dc912e 384 int Yodiwo_Plegma_ThingUIHints_ToJson(char* jsonStart, size_t jsonSize, Yodiwo_Plegma_ThingUIHints_t *value)
mitsarionas 0:384a04dc912e 385 {
mitsarionas 0:384a04dc912e 386 char *json = jsonStart, *jsonEnd = json + jsonSize;
mitsarionas 0:384a04dc912e 387 int len;
mitsarionas 5:7358822a587a 388 json += snprintf(json, jsonEnd - json, "{ \"IconURI\" : \""); if (json >= jsonEnd) return -1;
mitsarionas 4:073e23f6718c 389 json += strcpy_escaped(json, value->IconURI); if (json + 1 >= jsonEnd) return -1;
mitsarionas 4:073e23f6718c 390 *json = '\"'; json++;
mitsarionas 5:7358822a587a 391 json += snprintf(json, jsonEnd - json, ", \"Description\" : \""); if (json >= jsonEnd) return -1;
mitsarionas 4:073e23f6718c 392 json += strcpy_escaped(json, value->Description); if (json + 1 >= jsonEnd) return -1;
mitsarionas 4:073e23f6718c 393 *json = '\"'; json++;
mitsarionas 0:384a04dc912e 394 *json = '}'; json++;
mitsarionas 0:384a04dc912e 395 *json = '\0'; json++;
mitsarionas 0:384a04dc912e 396 return json - jsonStart;
mitsarionas 0:384a04dc912e 397 }
mitsarionas 0:384a04dc912e 398
mitsarionas 0:384a04dc912e 399 // -----------------------------------------------------------------------------------------------------------------------
mitsarionas 0:384a04dc912e 400 int Yodiwo_Plegma_Thing_ToJson(char* jsonStart, size_t jsonSize, Yodiwo_Plegma_Thing_t *value)
mitsarionas 0:384a04dc912e 401 {
mitsarionas 0:384a04dc912e 402 char *json = jsonStart, *jsonEnd = json + jsonSize;
mitsarionas 0:384a04dc912e 403 int len;
mitsarionas 5:7358822a587a 404 json += snprintf(json, jsonEnd - json, "{ \"ThingKey\" : \""); if (json >= jsonEnd) return -1;
mitsarionas 4:073e23f6718c 405 json += strcpy_escaped(json, value->ThingKey); if (json + 1 >= jsonEnd) return -1;
mitsarionas 4:073e23f6718c 406 *json = '\"'; json++;
mitsarionas 5:7358822a587a 407 json += snprintf(json, jsonEnd - json, ", \"Name\" : \""); if (json >= jsonEnd) return -1;
mitsarionas 4:073e23f6718c 408 json += strcpy_escaped(json, value->Name); if (json + 1 >= jsonEnd) return -1;
mitsarionas 4:073e23f6718c 409 *json = '\"'; json++;
mitsarionas 3:96b08b5f998f 410 json += snprintf(json, jsonEnd - json, "%s", ", \"Config\" : ");
mitsarionas 0:384a04dc912e 411 if ((len = Array_Yodiwo_Plegma_ConfigParameter_ToJson(json, jsonEnd - json, &value->Config) - 1) < 0) return -1; else json += len;
mitsarionas 3:96b08b5f998f 412 json += snprintf(json, jsonEnd - json, "%s", ", \"Ports\" : ");
mitsarionas 0:384a04dc912e 413 if ((len = Array_Yodiwo_Plegma_Port_ToJson(json, jsonEnd - json, &value->Ports) - 1) < 0) return -1; else json += len;
mitsarionas 5:7358822a587a 414 json += snprintf(json, jsonEnd - json, ", \"Type\" : \""); if (json >= jsonEnd) return -1;
mitsarionas 4:073e23f6718c 415 json += strcpy_escaped(json, value->Type); if (json + 1 >= jsonEnd) return -1;
mitsarionas 4:073e23f6718c 416 *json = '\"'; json++;
mitsarionas 5:7358822a587a 417 json += snprintf(json, jsonEnd - json, ", \"BlockType\" : \""); if (json >= jsonEnd) return -1;
mitsarionas 4:073e23f6718c 418 json += strcpy_escaped(json, value->BlockType); if (json + 1 >= jsonEnd) return -1;
mitsarionas 4:073e23f6718c 419 *json = '\"'; json++;
mitsarionas 3:96b08b5f998f 420 json += snprintf(json, jsonEnd - json, "%s", ", \"UIHints\" : ");
mitsarionas 0:384a04dc912e 421 if ((len = Yodiwo_Plegma_ThingUIHints_ToJson(json, jsonEnd - json, &value->UIHints) - 1) < 0) return -1; else json += len;
mitsarionas 0:384a04dc912e 422 *json = '}'; json++;
mitsarionas 0:384a04dc912e 423 *json = '\0'; json++;
mitsarionas 0:384a04dc912e 424 return json - jsonStart;
mitsarionas 0:384a04dc912e 425 }
mitsarionas 0:384a04dc912e 426
mitsarionas 0:384a04dc912e 427 // -----------------------------------------------------------------------------------------------------------------------
mitsarionas 0:384a04dc912e 428 int Yodiwo_Plegma_LoginReq_ToJson(char* jsonStart, size_t jsonSize, Yodiwo_Plegma_LoginReq_t *value)
mitsarionas 0:384a04dc912e 429 {
mitsarionas 0:384a04dc912e 430 char *json = jsonStart, *jsonEnd = json + jsonSize;
mitsarionas 0:384a04dc912e 431 int len;
mitsarionas 3:96b08b5f998f 432 json += snprintf(json, jsonEnd - json, "{ \"SeqNo\" : %d", value->SeqNo); if (json >= jsonEnd) return -1;
mitsarionas 0:384a04dc912e 433 *json = '}'; json++;
mitsarionas 0:384a04dc912e 434 *json = '\0'; json++;
mitsarionas 0:384a04dc912e 435 return json - jsonStart;
mitsarionas 0:384a04dc912e 436 }
mitsarionas 0:384a04dc912e 437
mitsarionas 0:384a04dc912e 438 // -----------------------------------------------------------------------------------------------------------------------
mitsarionas 0:384a04dc912e 439 int Yodiwo_Plegma_LoginRsp_ToJson(char* jsonStart, size_t jsonSize, Yodiwo_Plegma_LoginRsp_t *value)
mitsarionas 0:384a04dc912e 440 {
mitsarionas 0:384a04dc912e 441 char *json = jsonStart, *jsonEnd = json + jsonSize;
mitsarionas 0:384a04dc912e 442 int len;
mitsarionas 4:073e23f6718c 443 json += snprintf(json, jsonEnd - json, "{ \"SeqNo\" : %d", value->SeqNo); if (json >= jsonEnd) return -1;
mitsarionas 5:7358822a587a 444 json += snprintf(json, jsonEnd - json, ", \"NodeKey\" : \""); if (json >= jsonEnd) return -1;
mitsarionas 4:073e23f6718c 445 json += strcpy_escaped(json, value->NodeKey); if (json + 1 >= jsonEnd) return -1;
mitsarionas 4:073e23f6718c 446 *json = '\"'; json++;
mitsarionas 5:7358822a587a 447 json += snprintf(json, jsonEnd - json, ", \"SecretKey\" : \""); if (json >= jsonEnd) return -1;
mitsarionas 4:073e23f6718c 448 json += strcpy_escaped(json, value->SecretKey); if (json + 1 >= jsonEnd) return -1;
mitsarionas 4:073e23f6718c 449 *json = '\"'; json++;
mitsarionas 0:384a04dc912e 450 *json = '}'; json++;
mitsarionas 0:384a04dc912e 451 *json = '\0'; json++;
mitsarionas 0:384a04dc912e 452 return json - jsonStart;
mitsarionas 0:384a04dc912e 453 }
mitsarionas 0:384a04dc912e 454
mitsarionas 0:384a04dc912e 455 // -----------------------------------------------------------------------------------------------------------------------
mitsarionas 0:384a04dc912e 456 int Yodiwo_Plegma_StateDescription_ToJson(char* jsonStart, size_t jsonSize, Yodiwo_Plegma_StateDescription_t *value)
mitsarionas 0:384a04dc912e 457 {
mitsarionas 0:384a04dc912e 458 char *json = jsonStart, *jsonEnd = json + jsonSize;
mitsarionas 0:384a04dc912e 459 int len;
mitsarionas 3:96b08b5f998f 460 json += snprintf(json, jsonEnd - json, "{ \"Minimum\" : %lf", value->Minimum); if (json >= jsonEnd) return -1;
mitsarionas 3:96b08b5f998f 461 json += snprintf(json, jsonEnd - json, ", \"Maximum\" : %lf", value->Maximum); if (json >= jsonEnd) return -1;
mitsarionas 3:96b08b5f998f 462 json += snprintf(json, jsonEnd - json, ", \"Step\" : %lf", value->Step); if (json >= jsonEnd) return -1;
mitsarionas 5:7358822a587a 463 json += snprintf(json, jsonEnd - json, ", \"Pattern\" : \""); if (json >= jsonEnd) return -1;
mitsarionas 4:073e23f6718c 464 json += strcpy_escaped(json, value->Pattern); if (json + 1 >= jsonEnd) return -1;
mitsarionas 4:073e23f6718c 465 *json = '\"'; json++;
mitsarionas 3:96b08b5f998f 466 json += snprintf(json, jsonEnd - json, ", \"ReadOnly\" : %s", (value->ReadOnly) ? "true" : "false"); if (json >= jsonEnd) return -1;
mitsarionas 0:384a04dc912e 467 *json = '}'; json++;
mitsarionas 0:384a04dc912e 468 *json = '\0'; json++;
mitsarionas 0:384a04dc912e 469 return json - jsonStart;
mitsarionas 0:384a04dc912e 470 }
mitsarionas 0:384a04dc912e 471
mitsarionas 0:384a04dc912e 472 // -----------------------------------------------------------------------------------------------------------------------
mitsarionas 0:384a04dc912e 473 int Yodiwo_Plegma_ConfigDescription_ToJson(char* jsonStart, size_t jsonSize, Yodiwo_Plegma_ConfigDescription_t *value)
mitsarionas 0:384a04dc912e 474 {
mitsarionas 0:384a04dc912e 475 char *json = jsonStart, *jsonEnd = json + jsonSize;
mitsarionas 0:384a04dc912e 476 int len;
mitsarionas 5:7358822a587a 477 json += snprintf(json, jsonEnd - json, "{ \"DefaultValue\" : \""); if (json >= jsonEnd) return -1;
mitsarionas 4:073e23f6718c 478 json += strcpy_escaped(json, value->DefaultValue); if (json + 1 >= jsonEnd) return -1;
mitsarionas 4:073e23f6718c 479 *json = '\"'; json++;
mitsarionas 5:7358822a587a 480 json += snprintf(json, jsonEnd - json, ", \"Description\" : \""); if (json >= jsonEnd) return -1;
mitsarionas 4:073e23f6718c 481 json += strcpy_escaped(json, value->Description); if (json + 1 >= jsonEnd) return -1;
mitsarionas 4:073e23f6718c 482 *json = '\"'; json++;
mitsarionas 5:7358822a587a 483 json += snprintf(json, jsonEnd - json, ", \"Label\" : \""); if (json >= jsonEnd) return -1;
mitsarionas 4:073e23f6718c 484 json += strcpy_escaped(json, value->Label); if (json + 1 >= jsonEnd) return -1;
mitsarionas 4:073e23f6718c 485 *json = '\"'; json++;
mitsarionas 5:7358822a587a 486 json += snprintf(json, jsonEnd - json, ", \"Name\" : \""); if (json >= jsonEnd) return -1;
mitsarionas 4:073e23f6718c 487 json += strcpy_escaped(json, value->Name); if (json + 1 >= jsonEnd) return -1;
mitsarionas 4:073e23f6718c 488 *json = '\"'; json++;
mitsarionas 3:96b08b5f998f 489 json += snprintf(json, jsonEnd - json, ", \"Required\" : %s", (value->Required) ? "true" : "false"); if (json >= jsonEnd) return -1;
mitsarionas 5:7358822a587a 490 json += snprintf(json, jsonEnd - json, ", \"Type\" : \""); if (json >= jsonEnd) return -1;
mitsarionas 4:073e23f6718c 491 json += strcpy_escaped(json, value->Type); if (json + 1 >= jsonEnd) return -1;
mitsarionas 4:073e23f6718c 492 *json = '\"'; json++;
mitsarionas 3:96b08b5f998f 493 json += snprintf(json, jsonEnd - json, ", \"Minimum\" : %lf", value->Minimum); if (json >= jsonEnd) return -1;
mitsarionas 3:96b08b5f998f 494 json += snprintf(json, jsonEnd - json, ", \"Maximum\" : %lf", value->Maximum); if (json >= jsonEnd) return -1;
mitsarionas 3:96b08b5f998f 495 json += snprintf(json, jsonEnd - json, ", \"Stepsize\" : %lf", value->Stepsize); if (json >= jsonEnd) return -1;
mitsarionas 3:96b08b5f998f 496 json += snprintf(json, jsonEnd - json, ", \"ReadOnly\" : %s", (value->ReadOnly) ? "true" : "false"); if (json >= jsonEnd) return -1;
mitsarionas 0:384a04dc912e 497 *json = '}'; json++;
mitsarionas 0:384a04dc912e 498 *json = '\0'; json++;
mitsarionas 0:384a04dc912e 499 return json - jsonStart;
mitsarionas 0:384a04dc912e 500 }
mitsarionas 0:384a04dc912e 501
mitsarionas 0:384a04dc912e 502 // -----------------------------------------------------------------------------------------------------------------------
mitsarionas 0:384a04dc912e 503 int Yodiwo_Plegma_PortDescription_ToJson(char* jsonStart, size_t jsonSize, Yodiwo_Plegma_PortDescription_t *value)
mitsarionas 0:384a04dc912e 504 {
mitsarionas 0:384a04dc912e 505 char *json = jsonStart, *jsonEnd = json + jsonSize;
mitsarionas 0:384a04dc912e 506 int len;
mitsarionas 5:7358822a587a 507 json += snprintf(json, jsonEnd - json, "{ \"Description\" : \""); if (json >= jsonEnd) return -1;
mitsarionas 4:073e23f6718c 508 json += strcpy_escaped(json, value->Description); if (json + 1 >= jsonEnd) return -1;
mitsarionas 4:073e23f6718c 509 *json = '\"'; json++;
mitsarionas 5:7358822a587a 510 json += snprintf(json, jsonEnd - json, ", \"Id\" : \""); if (json >= jsonEnd) return -1;
mitsarionas 4:073e23f6718c 511 json += strcpy_escaped(json, value->Id); if (json + 1 >= jsonEnd) return -1;
mitsarionas 4:073e23f6718c 512 *json = '\"'; json++;
mitsarionas 5:7358822a587a 513 json += snprintf(json, jsonEnd - json, ", \"Label\" : \""); if (json >= jsonEnd) return -1;
mitsarionas 4:073e23f6718c 514 json += strcpy_escaped(json, value->Label); if (json + 1 >= jsonEnd) return -1;
mitsarionas 4:073e23f6718c 515 *json = '\"'; json++;
mitsarionas 5:7358822a587a 516 json += snprintf(json, jsonEnd - json, ", \"Category\" : \""); if (json >= jsonEnd) return -1;
mitsarionas 4:073e23f6718c 517 json += strcpy_escaped(json, value->Category); if (json + 1 >= jsonEnd) return -1;
mitsarionas 4:073e23f6718c 518 *json = '\"'; json++;
mitsarionas 3:96b08b5f998f 519 json += snprintf(json, jsonEnd - json, "%s", ", \"State\" : ");
mitsarionas 0:384a04dc912e 520 if ((len = Yodiwo_Plegma_StateDescription_ToJson(json, jsonEnd - json, &value->State) - 1) < 0) return -1; else json += len;
mitsarionas 0:384a04dc912e 521 *json = '}'; json++;
mitsarionas 0:384a04dc912e 522 *json = '\0'; json++;
mitsarionas 0:384a04dc912e 523 return json - jsonStart;
mitsarionas 0:384a04dc912e 524 }
mitsarionas 0:384a04dc912e 525
mitsarionas 0:384a04dc912e 526 // -----------------------------------------------------------------------------------------------------------------------
mitsarionas 0:384a04dc912e 527 int Yodiwo_Plegma_NodeModelType_ToJson(char* jsonStart, size_t jsonSize, Yodiwo_Plegma_NodeModelType_t *value)
mitsarionas 0:384a04dc912e 528 {
mitsarionas 0:384a04dc912e 529 char *json = jsonStart, *jsonEnd = json + jsonSize;
mitsarionas 0:384a04dc912e 530 int len;
mitsarionas 5:7358822a587a 531 json += snprintf(json, jsonEnd - json, "{ \"Id\" : \""); if (json >= jsonEnd) return -1;
mitsarionas 4:073e23f6718c 532 json += strcpy_escaped(json, value->Id); if (json + 1 >= jsonEnd) return -1;
mitsarionas 4:073e23f6718c 533 *json = '\"'; json++;
mitsarionas 5:7358822a587a 534 json += snprintf(json, jsonEnd - json, ", \"Name\" : \""); if (json >= jsonEnd) return -1;
mitsarionas 4:073e23f6718c 535 json += strcpy_escaped(json, value->Name); if (json + 1 >= jsonEnd) return -1;
mitsarionas 4:073e23f6718c 536 *json = '\"'; json++;
mitsarionas 5:7358822a587a 537 json += snprintf(json, jsonEnd - json, ", \"Description\" : \""); if (json >= jsonEnd) return -1;
mitsarionas 4:073e23f6718c 538 json += strcpy_escaped(json, value->Description); if (json + 1 >= jsonEnd) return -1;
mitsarionas 4:073e23f6718c 539 *json = '\"'; json++;
mitsarionas 3:96b08b5f998f 540 json += snprintf(json, jsonEnd - json, "%s", ", \"Config\" : ");
mitsarionas 0:384a04dc912e 541 if ((len = Array_Yodiwo_Plegma_ConfigDescription_ToJson(json, jsonEnd - json, &value->Config) - 1) < 0) return -1; else json += len;
mitsarionas 3:96b08b5f998f 542 json += snprintf(json, jsonEnd - json, "%s", ", \"Port\" : ");
mitsarionas 0:384a04dc912e 543 if ((len = Array_Yodiwo_Plegma_PortDescription_ToJson(json, jsonEnd - json, &value->Port) - 1) < 0) return -1; else json += len;
mitsarionas 0:384a04dc912e 544 *json = '}'; json++;
mitsarionas 0:384a04dc912e 545 *json = '\0'; json++;
mitsarionas 0:384a04dc912e 546 return json - jsonStart;
mitsarionas 0:384a04dc912e 547 }
mitsarionas 0:384a04dc912e 548
mitsarionas 0:384a04dc912e 549 // -----------------------------------------------------------------------------------------------------------------------
mitsarionas 0:384a04dc912e 550 int Yodiwo_Plegma_NodeThingType_ToJson(char* jsonStart, size_t jsonSize, Yodiwo_Plegma_NodeThingType_t *value)
mitsarionas 0:384a04dc912e 551 {
mitsarionas 0:384a04dc912e 552 char *json = jsonStart, *jsonEnd = json + jsonSize;
mitsarionas 0:384a04dc912e 553 int len;
mitsarionas 5:7358822a587a 554 json += snprintf(json, jsonEnd - json, "{ \"Type\" : \""); if (json >= jsonEnd) return -1;
mitsarionas 4:073e23f6718c 555 json += strcpy_escaped(json, value->Type); if (json + 1 >= jsonEnd) return -1;
mitsarionas 4:073e23f6718c 556 *json = '\"'; json++;
mitsarionas 3:96b08b5f998f 557 json += snprintf(json, jsonEnd - json, ", \"Searchable\" : %s", (value->Searchable) ? "true" : "false"); if (json >= jsonEnd) return -1;
mitsarionas 5:7358822a587a 558 json += snprintf(json, jsonEnd - json, ", \"Description\" : \""); if (json >= jsonEnd) return -1;
mitsarionas 4:073e23f6718c 559 json += strcpy_escaped(json, value->Description); if (json + 1 >= jsonEnd) return -1;
mitsarionas 4:073e23f6718c 560 *json = '\"'; json++;
mitsarionas 3:96b08b5f998f 561 json += snprintf(json, jsonEnd - json, "%s", ", \"Model\" : ");
mitsarionas 0:384a04dc912e 562 if ((len = Array_Yodiwo_Plegma_NodeModelType_ToJson(json, jsonEnd - json, &value->Model) - 1) < 0) return -1; else json += len;
mitsarionas 0:384a04dc912e 563 *json = '}'; json++;
mitsarionas 0:384a04dc912e 564 *json = '\0'; json++;
mitsarionas 0:384a04dc912e 565 return json - jsonStart;
mitsarionas 0:384a04dc912e 566 }
mitsarionas 0:384a04dc912e 567
mitsarionas 0:384a04dc912e 568 // -----------------------------------------------------------------------------------------------------------------------
mitsarionas 0:384a04dc912e 569 int Yodiwo_Plegma_NodeInfoReq_ToJson(char* jsonStart, size_t jsonSize, Yodiwo_Plegma_NodeInfoReq_t *value)
mitsarionas 0:384a04dc912e 570 {
mitsarionas 0:384a04dc912e 571 char *json = jsonStart, *jsonEnd = json + jsonSize;
mitsarionas 0:384a04dc912e 572 int len;
mitsarionas 4:073e23f6718c 573 json += snprintf(json, jsonEnd - json, "{ \"SeqNo\" : %d", value->SeqNo); if (json >= jsonEnd) return -1;
mitsarionas 4:073e23f6718c 574 json += snprintf(json, jsonEnd - json, "%s", ", \"RequestedThingType\" : ");
mitsarionas 0:384a04dc912e 575 if ((len = Yodiwo_Plegma_NodeThingType_ToJson(json, jsonEnd - json, &value->RequestedThingType) - 1) < 0) return -1; else json += len;
mitsarionas 0:384a04dc912e 576 *json = '}'; json++;
mitsarionas 0:384a04dc912e 577 *json = '\0'; json++;
mitsarionas 0:384a04dc912e 578 return json - jsonStart;
mitsarionas 0:384a04dc912e 579 }
mitsarionas 0:384a04dc912e 580
mitsarionas 0:384a04dc912e 581 // -----------------------------------------------------------------------------------------------------------------------
mitsarionas 0:384a04dc912e 582 int Yodiwo_Plegma_NodeInfoRsp_ToJson(char* jsonStart, size_t jsonSize, Yodiwo_Plegma_NodeInfoRsp_t *value)
mitsarionas 0:384a04dc912e 583 {
mitsarionas 0:384a04dc912e 584 char *json = jsonStart, *jsonEnd = json + jsonSize;
mitsarionas 0:384a04dc912e 585 int len;
mitsarionas 4:073e23f6718c 586 json += snprintf(json, jsonEnd - json, "{ \"SeqNo\" : %d", value->SeqNo); if (json >= jsonEnd) return -1;
mitsarionas 5:7358822a587a 587 json += snprintf(json, jsonEnd - json, ", \"Name\" : \""); if (json >= jsonEnd) return -1;
mitsarionas 4:073e23f6718c 588 json += strcpy_escaped(json, value->Name); if (json + 1 >= jsonEnd) return -1;
mitsarionas 4:073e23f6718c 589 *json = '\"'; json++;
mitsarionas 3:96b08b5f998f 590 json += snprintf(json, jsonEnd - json, ", \"Type\" : %d", value->Type); if (json >= jsonEnd) return -1;
mitsarionas 3:96b08b5f998f 591 json += snprintf(json, jsonEnd - json, ", \"Capabilities\" : %d", value->Capabilities); if (json >= jsonEnd) return -1;
mitsarionas 3:96b08b5f998f 592 json += snprintf(json, jsonEnd - json, "%s", ", \"ThingTypes\" : ");
mitsarionas 0:384a04dc912e 593 if ((len = Array_Yodiwo_Plegma_NodeThingType_ToJson(json, jsonEnd - json, &value->ThingTypes) - 1) < 0) return -1; else json += len;
mitsarionas 0:384a04dc912e 594 *json = '}'; json++;
mitsarionas 0:384a04dc912e 595 *json = '\0'; json++;
mitsarionas 0:384a04dc912e 596 return json - jsonStart;
mitsarionas 0:384a04dc912e 597 }
mitsarionas 0:384a04dc912e 598
mitsarionas 0:384a04dc912e 599 // -----------------------------------------------------------------------------------------------------------------------
mitsarionas 0:384a04dc912e 600 int Yodiwo_Plegma_ThingsReq_ToJson(char* jsonStart, size_t jsonSize, Yodiwo_Plegma_ThingsReq_t *value)
mitsarionas 0:384a04dc912e 601 {
mitsarionas 0:384a04dc912e 602 char *json = jsonStart, *jsonEnd = json + jsonSize;
mitsarionas 0:384a04dc912e 603 int len;
mitsarionas 4:073e23f6718c 604 json += snprintf(json, jsonEnd - json, "{ \"SeqNo\" : %d", value->SeqNo); if (json >= jsonEnd) return -1;
mitsarionas 4:073e23f6718c 605 json += snprintf(json, jsonEnd - json, ", \"Operation\" : %d", value->Operation); if (json >= jsonEnd) return -1;
mitsarionas 5:7358822a587a 606 json += snprintf(json, jsonEnd - json, ", \"ThingKey\" : \""); if (json >= jsonEnd) return -1;
mitsarionas 4:073e23f6718c 607 json += strcpy_escaped(json, value->ThingKey); if (json + 1 >= jsonEnd) return -1;
mitsarionas 4:073e23f6718c 608 *json = '\"'; json++;
mitsarionas 3:96b08b5f998f 609 json += snprintf(json, jsonEnd - json, "%s", ", \"Data\" : ");
mitsarionas 0:384a04dc912e 610 if ((len = Array_Yodiwo_Plegma_Thing_ToJson(json, jsonEnd - json, &value->Data) - 1) < 0) return -1; else json += len;
mitsarionas 0:384a04dc912e 611 *json = '}'; json++;
mitsarionas 0:384a04dc912e 612 *json = '\0'; json++;
mitsarionas 0:384a04dc912e 613 return json - jsonStart;
mitsarionas 0:384a04dc912e 614 }
mitsarionas 0:384a04dc912e 615
mitsarionas 0:384a04dc912e 616 // -----------------------------------------------------------------------------------------------------------------------
mitsarionas 0:384a04dc912e 617 int Yodiwo_Plegma_ThingsRsp_ToJson(char* jsonStart, size_t jsonSize, Yodiwo_Plegma_ThingsRsp_t *value)
mitsarionas 0:384a04dc912e 618 {
mitsarionas 0:384a04dc912e 619 char *json = jsonStart, *jsonEnd = json + jsonSize;
mitsarionas 0:384a04dc912e 620 int len;
mitsarionas 4:073e23f6718c 621 json += snprintf(json, jsonEnd - json, "{ \"SeqNo\" : %d", value->SeqNo); if (json >= jsonEnd) return -1;
mitsarionas 4:073e23f6718c 622 json += snprintf(json, jsonEnd - json, ", \"Operation\" : %d", value->Operation); if (json >= jsonEnd) return -1;
mitsarionas 3:96b08b5f998f 623 json += snprintf(json, jsonEnd - json, ", \"Status\" : %s", (value->Status) ? "true" : "false"); if (json >= jsonEnd) return -1;
mitsarionas 3:96b08b5f998f 624 json += snprintf(json, jsonEnd - json, "%s", ", \"Data\" : ");
mitsarionas 0:384a04dc912e 625 if ((len = Array_Yodiwo_Plegma_Thing_ToJson(json, jsonEnd - json, &value->Data) - 1) < 0) return -1; else json += len;
mitsarionas 0:384a04dc912e 626 *json = '}'; json++;
mitsarionas 0:384a04dc912e 627 *json = '\0'; json++;
mitsarionas 0:384a04dc912e 628 return json - jsonStart;
mitsarionas 0:384a04dc912e 629 }
mitsarionas 0:384a04dc912e 630
mitsarionas 0:384a04dc912e 631 // -----------------------------------------------------------------------------------------------------------------------
mitsarionas 0:384a04dc912e 632 int Yodiwo_Plegma_PortEvent_ToJson(char* jsonStart, size_t jsonSize, Yodiwo_Plegma_PortEvent_t *value)
mitsarionas 0:384a04dc912e 633 {
mitsarionas 0:384a04dc912e 634 char *json = jsonStart, *jsonEnd = json + jsonSize;
mitsarionas 0:384a04dc912e 635 int len;
mitsarionas 5:7358822a587a 636 json += snprintf(json, jsonEnd - json, "{ \"PortKey\" : \""); if (json >= jsonEnd) return -1;
mitsarionas 4:073e23f6718c 637 json += strcpy_escaped(json, value->PortKey); if (json + 1 >= jsonEnd) return -1;
mitsarionas 4:073e23f6718c 638 *json = '\"'; json++;
mitsarionas 5:7358822a587a 639 json += snprintf(json, jsonEnd - json, ", \"State\" : \""); if (json >= jsonEnd) return -1;
mitsarionas 4:073e23f6718c 640 json += strcpy_escaped(json, value->State); if (json + 1 >= jsonEnd) return -1;
mitsarionas 4:073e23f6718c 641 *json = '\"'; json++;
mitsarionas 3:96b08b5f998f 642 json += snprintf(json, jsonEnd - json, ", \"RevNum\" : %d", value->RevNum); if (json >= jsonEnd) return -1;
mitsarionas 0:384a04dc912e 643 *json = '}'; json++;
mitsarionas 0:384a04dc912e 644 *json = '\0'; json++;
mitsarionas 0:384a04dc912e 645 return json - jsonStart;
mitsarionas 0:384a04dc912e 646 }
mitsarionas 0:384a04dc912e 647
mitsarionas 0:384a04dc912e 648 // -----------------------------------------------------------------------------------------------------------------------
mitsarionas 0:384a04dc912e 649 int Yodiwo_Plegma_PortEventMsg_ToJson(char* jsonStart, size_t jsonSize, Yodiwo_Plegma_PortEventMsg_t *value)
mitsarionas 0:384a04dc912e 650 {
mitsarionas 0:384a04dc912e 651 char *json = jsonStart, *jsonEnd = json + jsonSize;
mitsarionas 0:384a04dc912e 652 int len;
mitsarionas 4:073e23f6718c 653 json += snprintf(json, jsonEnd - json, "{ \"SeqNo\" : %d", value->SeqNo); if (json >= jsonEnd) return -1;
mitsarionas 4:073e23f6718c 654 json += snprintf(json, jsonEnd - json, "%s", ", \"PortEvents\" : ");
mitsarionas 0:384a04dc912e 655 if ((len = Array_Yodiwo_Plegma_PortEvent_ToJson(json, jsonEnd - json, &value->PortEvents) - 1) < 0) return -1; else json += len;
mitsarionas 0:384a04dc912e 656 *json = '}'; json++;
mitsarionas 0:384a04dc912e 657 *json = '\0'; json++;
mitsarionas 0:384a04dc912e 658 return json - jsonStart;
mitsarionas 0:384a04dc912e 659 }
mitsarionas 0:384a04dc912e 660
mitsarionas 0:384a04dc912e 661 // -----------------------------------------------------------------------------------------------------------------------
mitsarionas 0:384a04dc912e 662 int Yodiwo_Plegma_PortStateReq_ToJson(char* jsonStart, size_t jsonSize, Yodiwo_Plegma_PortStateReq_t *value)
mitsarionas 0:384a04dc912e 663 {
mitsarionas 0:384a04dc912e 664 char *json = jsonStart, *jsonEnd = json + jsonSize;
mitsarionas 0:384a04dc912e 665 int len;
mitsarionas 4:073e23f6718c 666 json += snprintf(json, jsonEnd - json, "{ \"SeqNo\" : %d", value->SeqNo); if (json >= jsonEnd) return -1;
mitsarionas 4:073e23f6718c 667 json += snprintf(json, jsonEnd - json, ", \"Operation\" : %d", value->Operation); if (json >= jsonEnd) return -1;
mitsarionas 3:96b08b5f998f 668 json += snprintf(json, jsonEnd - json, "%s", ", \"PortKeys\" : ");
mitsarionas 0:384a04dc912e 669 if ((len = Array_string_ToJson(json, jsonEnd - json, &value->PortKeys) - 1) < 0) return -1; else json += len;
mitsarionas 0:384a04dc912e 670 *json = '}'; json++;
mitsarionas 0:384a04dc912e 671 *json = '\0'; json++;
mitsarionas 0:384a04dc912e 672 return json - jsonStart;
mitsarionas 0:384a04dc912e 673 }
mitsarionas 0:384a04dc912e 674
mitsarionas 0:384a04dc912e 675 // -----------------------------------------------------------------------------------------------------------------------
mitsarionas 0:384a04dc912e 676 int Yodiwo_Plegma_PortState_ToJson(char* jsonStart, size_t jsonSize, Yodiwo_Plegma_PortState_t *value)
mitsarionas 0:384a04dc912e 677 {
mitsarionas 0:384a04dc912e 678 char *json = jsonStart, *jsonEnd = json + jsonSize;
mitsarionas 0:384a04dc912e 679 int len;
mitsarionas 5:7358822a587a 680 json += snprintf(json, jsonEnd - json, "{ \"PortKey\" : \""); if (json >= jsonEnd) return -1;
mitsarionas 4:073e23f6718c 681 json += strcpy_escaped(json, value->PortKey); if (json + 1 >= jsonEnd) return -1;
mitsarionas 4:073e23f6718c 682 *json = '\"'; json++;
mitsarionas 5:7358822a587a 683 json += snprintf(json, jsonEnd - json, ", \"State\" : \""); if (json >= jsonEnd) return -1;
mitsarionas 4:073e23f6718c 684 json += strcpy_escaped(json, value->State); if (json + 1 >= jsonEnd) return -1;
mitsarionas 4:073e23f6718c 685 *json = '\"'; json++;
mitsarionas 3:96b08b5f998f 686 json += snprintf(json, jsonEnd - json, ", \"RevNum\" : %d", value->RevNum); if (json >= jsonEnd) return -1;
mitsarionas 3:96b08b5f998f 687 json += snprintf(json, jsonEnd - json, ", \"IsDeployed\" : %s", (value->IsDeployed) ? "true" : "false"); if (json >= jsonEnd) return -1;
mitsarionas 0:384a04dc912e 688 *json = '}'; json++;
mitsarionas 0:384a04dc912e 689 *json = '\0'; json++;
mitsarionas 0:384a04dc912e 690 return json - jsonStart;
mitsarionas 0:384a04dc912e 691 }
mitsarionas 0:384a04dc912e 692
mitsarionas 0:384a04dc912e 693 // -----------------------------------------------------------------------------------------------------------------------
mitsarionas 0:384a04dc912e 694 int Yodiwo_Plegma_PortStateRsp_ToJson(char* jsonStart, size_t jsonSize, Yodiwo_Plegma_PortStateRsp_t *value)
mitsarionas 0:384a04dc912e 695 {
mitsarionas 0:384a04dc912e 696 char *json = jsonStart, *jsonEnd = json + jsonSize;
mitsarionas 0:384a04dc912e 697 int len;
mitsarionas 4:073e23f6718c 698 json += snprintf(json, jsonEnd - json, "{ \"SeqNo\" : %d", value->SeqNo); if (json >= jsonEnd) return -1;
mitsarionas 4:073e23f6718c 699 json += snprintf(json, jsonEnd - json, ", \"Operation\" : %d", value->Operation); if (json >= jsonEnd) return -1;
mitsarionas 3:96b08b5f998f 700 json += snprintf(json, jsonEnd - json, "%s", ", \"PortStates\" : ");
mitsarionas 0:384a04dc912e 701 if ((len = Array_Yodiwo_Plegma_PortState_ToJson(json, jsonEnd - json, &value->PortStates) - 1) < 0) return -1; else json += len;
mitsarionas 0:384a04dc912e 702 *json = '}'; json++;
mitsarionas 0:384a04dc912e 703 *json = '\0'; json++;
mitsarionas 0:384a04dc912e 704 return json - jsonStart;
mitsarionas 0:384a04dc912e 705 }
mitsarionas 0:384a04dc912e 706
mitsarionas 0:384a04dc912e 707 // -----------------------------------------------------------------------------------------------------------------------
mitsarionas 0:384a04dc912e 708 int Yodiwo_Plegma_ActivePortKeysMsg_ToJson(char* jsonStart, size_t jsonSize, Yodiwo_Plegma_ActivePortKeysMsg_t *value)
mitsarionas 0:384a04dc912e 709 {
mitsarionas 0:384a04dc912e 710 char *json = jsonStart, *jsonEnd = json + jsonSize;
mitsarionas 0:384a04dc912e 711 int len;
mitsarionas 4:073e23f6718c 712 json += snprintf(json, jsonEnd - json, "{ \"SeqNo\" : %d", value->SeqNo); if (json >= jsonEnd) return -1;
mitsarionas 4:073e23f6718c 713 json += snprintf(json, jsonEnd - json, "%s", ", \"ActivePortKeys\" : ");
mitsarionas 0:384a04dc912e 714 if ((len = Array_string_ToJson(json, jsonEnd - json, &value->ActivePortKeys) - 1) < 0) return -1; else json += len;
mitsarionas 4:073e23f6718c 715 *json = '}'; json++;
mitsarionas 4:073e23f6718c 716 *json = '\0'; json++;
mitsarionas 4:073e23f6718c 717 return json - jsonStart;
mitsarionas 4:073e23f6718c 718 }
mitsarionas 4:073e23f6718c 719
mitsarionas 4:073e23f6718c 720 // -----------------------------------------------------------------------------------------------------------------------
mitsarionas 4:073e23f6718c 721 int Yodiwo_Plegma_NodePairing_PairingNodeGetTokensRequest_ToJson(char* jsonStart, size_t jsonSize, Yodiwo_Plegma_NodePairing_PairingNodeGetTokensRequest_t *value)
mitsarionas 4:073e23f6718c 722 {
mitsarionas 4:073e23f6718c 723 char *json = jsonStart, *jsonEnd = json + jsonSize;
mitsarionas 4:073e23f6718c 724 int len;
mitsarionas 5:7358822a587a 725 json += snprintf(json, jsonEnd - json, "{ \"uuid\" : \""); if (json >= jsonEnd) return -1;
mitsarionas 4:073e23f6718c 726 json += strcpy_escaped(json, value->uuid); if (json + 1 >= jsonEnd) return -1;
mitsarionas 4:073e23f6718c 727 *json = '\"'; json++;
mitsarionas 5:7358822a587a 728 json += snprintf(json, jsonEnd - json, ", \"name\" : \""); if (json >= jsonEnd) return -1;
mitsarionas 4:073e23f6718c 729 json += strcpy_escaped(json, value->name); if (json + 1 >= jsonEnd) return -1;
mitsarionas 4:073e23f6718c 730 *json = '\"'; json++;
mitsarionas 0:384a04dc912e 731 *json = '}'; json++;
mitsarionas 0:384a04dc912e 732 *json = '\0'; json++;
mitsarionas 0:384a04dc912e 733 return json - jsonStart;
mitsarionas 0:384a04dc912e 734 }
mitsarionas 0:384a04dc912e 735
mitsarionas 0:384a04dc912e 736 // -----------------------------------------------------------------------------------------------------------------------
mitsarionas 4:073e23f6718c 737 int Yodiwo_Plegma_NodePairing_PairingNodeGetKeysRequest_ToJson(char* jsonStart, size_t jsonSize, Yodiwo_Plegma_NodePairing_PairingNodeGetKeysRequest_t *value)
mitsarionas 0:384a04dc912e 738 {
mitsarionas 0:384a04dc912e 739 char *json = jsonStart, *jsonEnd = json + jsonSize;
mitsarionas 0:384a04dc912e 740 int len;
mitsarionas 5:7358822a587a 741 json += snprintf(json, jsonEnd - json, "{ \"uuid\" : \""); if (json >= jsonEnd) return -1;
mitsarionas 4:073e23f6718c 742 json += strcpy_escaped(json, value->uuid); if (json + 1 >= jsonEnd) return -1;
mitsarionas 4:073e23f6718c 743 *json = '\"'; json++;
mitsarionas 5:7358822a587a 744 json += snprintf(json, jsonEnd - json, ", \"token1\" : \""); if (json >= jsonEnd) return -1;
mitsarionas 4:073e23f6718c 745 json += strcpy_escaped(json, value->token1); if (json + 1 >= jsonEnd) return -1;
mitsarionas 4:073e23f6718c 746 *json = '\"'; json++;
mitsarionas 4:073e23f6718c 747 *json = '}'; json++;
mitsarionas 4:073e23f6718c 748 *json = '\0'; json++;
mitsarionas 4:073e23f6718c 749 return json - jsonStart;
mitsarionas 4:073e23f6718c 750 }
mitsarionas 4:073e23f6718c 751
mitsarionas 4:073e23f6718c 752 // -----------------------------------------------------------------------------------------------------------------------
mitsarionas 4:073e23f6718c 753 int Yodiwo_Plegma_NodePairing_PairingServerTokensResponse_ToJson(char* jsonStart, size_t jsonSize, Yodiwo_Plegma_NodePairing_PairingServerTokensResponse_t *value)
mitsarionas 4:073e23f6718c 754 {
mitsarionas 4:073e23f6718c 755 char *json = jsonStart, *jsonEnd = json + jsonSize;
mitsarionas 4:073e23f6718c 756 int len;
mitsarionas 5:7358822a587a 757 json += snprintf(json, jsonEnd - json, "{ \"token1\" : \""); if (json >= jsonEnd) return -1;
mitsarionas 4:073e23f6718c 758 json += strcpy_escaped(json, value->token1); if (json + 1 >= jsonEnd) return -1;
mitsarionas 4:073e23f6718c 759 *json = '\"'; json++;
mitsarionas 5:7358822a587a 760 json += snprintf(json, jsonEnd - json, ", \"token2\" : \""); if (json >= jsonEnd) return -1;
mitsarionas 4:073e23f6718c 761 json += strcpy_escaped(json, value->token2); if (json + 1 >= jsonEnd) return -1;
mitsarionas 4:073e23f6718c 762 *json = '\"'; json++;
mitsarionas 0:384a04dc912e 763 *json = '}'; json++;
mitsarionas 0:384a04dc912e 764 *json = '\0'; json++;
mitsarionas 0:384a04dc912e 765 return json - jsonStart;
mitsarionas 0:384a04dc912e 766 }
mitsarionas 0:384a04dc912e 767
mitsarionas 0:384a04dc912e 768 // -----------------------------------------------------------------------------------------------------------------------
mitsarionas 4:073e23f6718c 769 int Yodiwo_Plegma_NodePairing_PairingServerKeysResponse_ToJson(char* jsonStart, size_t jsonSize, Yodiwo_Plegma_NodePairing_PairingServerKeysResponse_t *value)
mitsarionas 0:384a04dc912e 770 {
mitsarionas 0:384a04dc912e 771 char *json = jsonStart, *jsonEnd = json + jsonSize;
mitsarionas 0:384a04dc912e 772 int len;
mitsarionas 5:7358822a587a 773 json += snprintf(json, jsonEnd - json, "{ \"nodeKey\" : \""); if (json >= jsonEnd) return -1;
mitsarionas 4:073e23f6718c 774 json += strcpy_escaped(json, value->nodeKey); if (json + 1 >= jsonEnd) return -1;
mitsarionas 4:073e23f6718c 775 *json = '\"'; json++;
mitsarionas 5:7358822a587a 776 json += snprintf(json, jsonEnd - json, ", \"secretKey\" : \""); if (json >= jsonEnd) return -1;
mitsarionas 4:073e23f6718c 777 json += strcpy_escaped(json, value->secretKey); if (json + 1 >= jsonEnd) return -1;
mitsarionas 4:073e23f6718c 778 *json = '\"'; json++;
mitsarionas 4:073e23f6718c 779 *json = '}'; json++;
mitsarionas 4:073e23f6718c 780 *json = '\0'; json++;
mitsarionas 4:073e23f6718c 781 return json - jsonStart;
mitsarionas 4:073e23f6718c 782 }
mitsarionas 4:073e23f6718c 783
mitsarionas 4:073e23f6718c 784 // -----------------------------------------------------------------------------------------------------------------------
mitsarionas 4:073e23f6718c 785 int Yodiwo_Plegma_NodePairing_PairingNodePhase1Response_ToJson(char* jsonStart, size_t jsonSize, Yodiwo_Plegma_NodePairing_PairingNodePhase1Response_t *value)
mitsarionas 4:073e23f6718c 786 {
mitsarionas 4:073e23f6718c 787 char *json = jsonStart, *jsonEnd = json + jsonSize;
mitsarionas 4:073e23f6718c 788 int len;
mitsarionas 5:7358822a587a 789 json += snprintf(json, jsonEnd - json, "{ \"userNodeRegistrationUrl\" : \""); if (json >= jsonEnd) return -1;
mitsarionas 4:073e23f6718c 790 json += strcpy_escaped(json, value->userNodeRegistrationUrl); if (json + 1 >= jsonEnd) return -1;
mitsarionas 4:073e23f6718c 791 *json = '\"'; json++;
mitsarionas 5:7358822a587a 792 json += snprintf(json, jsonEnd - json, ", \"token2\" : \""); if (json >= jsonEnd) return -1;
mitsarionas 4:073e23f6718c 793 json += strcpy_escaped(json, value->token2); if (json + 1 >= jsonEnd) return -1;
mitsarionas 4:073e23f6718c 794 *json = '\"'; json++;
mitsarionas 0:384a04dc912e 795 *json = '}'; json++;
mitsarionas 0:384a04dc912e 796 *json = '\0'; json++;
mitsarionas 0:384a04dc912e 797 return json - jsonStart;
mitsarionas 0:384a04dc912e 798 }
mitsarionas 0:384a04dc912e 799
mitsarionas 0:384a04dc912e 800 // -----------------------------------------------------------------------------------------------------------------------
mitsarionas 4:073e23f6718c 801 int Yodiwo_Tools_APIGenerator_CNodeConfig_ToJson(char* jsonStart, size_t jsonSize, Yodiwo_Tools_APIGenerator_CNodeConfig_t *value)
mitsarionas 0:384a04dc912e 802 {
mitsarionas 0:384a04dc912e 803 char *json = jsonStart, *jsonEnd = json + jsonSize;
mitsarionas 0:384a04dc912e 804 int len;
mitsarionas 5:7358822a587a 805 json += snprintf(json, jsonEnd - json, "{ \"Uuid\" : \""); if (json >= jsonEnd) return -1;
mitsarionas 4:073e23f6718c 806 json += strcpy_escaped(json, value->Uuid); if (json + 1 >= jsonEnd) return -1;
mitsarionas 4:073e23f6718c 807 *json = '\"'; json++;
mitsarionas 5:7358822a587a 808 json += snprintf(json, jsonEnd - json, ", \"Name\" : \""); if (json >= jsonEnd) return -1;
mitsarionas 4:073e23f6718c 809 json += strcpy_escaped(json, value->Name); if (json + 1 >= jsonEnd) return -1;
mitsarionas 4:073e23f6718c 810 *json = '\"'; json++;
mitsarionas 5:7358822a587a 811 json += snprintf(json, jsonEnd - json, ", \"NodeKey\" : \""); if (json >= jsonEnd) return -1;
mitsarionas 4:073e23f6718c 812 json += strcpy_escaped(json, value->NodeKey); if (json + 1 >= jsonEnd) return -1;
mitsarionas 4:073e23f6718c 813 *json = '\"'; json++;
mitsarionas 5:7358822a587a 814 json += snprintf(json, jsonEnd - json, ", \"NodeSecret\" : \""); if (json >= jsonEnd) return -1;
mitsarionas 4:073e23f6718c 815 json += strcpy_escaped(json, value->NodeSecret); if (json + 1 >= jsonEnd) return -1;
mitsarionas 4:073e23f6718c 816 *json = '\"'; json++;
mitsarionas 5:7358822a587a 817 json += snprintf(json, jsonEnd - json, ", \"PairingServerUrl\" : \""); if (json >= jsonEnd) return -1;
mitsarionas 4:073e23f6718c 818 json += strcpy_escaped(json, value->PairingServerUrl); if (json + 1 >= jsonEnd) return -1;
mitsarionas 4:073e23f6718c 819 *json = '\"'; json++;
mitsarionas 5:7358822a587a 820 json += snprintf(json, jsonEnd - json, ", \"YPChannelServer\" : \""); if (json >= jsonEnd) return -1;
mitsarionas 4:073e23f6718c 821 json += strcpy_escaped(json, value->YPChannelServer); if (json + 1 >= jsonEnd) return -1;
mitsarionas 4:073e23f6718c 822 *json = '\"'; json++;
mitsarionas 4:073e23f6718c 823 json += snprintf(json, jsonEnd - json, ", \"YPChannelServerPort\" : %d", value->YPChannelServerPort); if (json >= jsonEnd) return -1;
mitsarionas 4:073e23f6718c 824 json += snprintf(json, jsonEnd - json, ", \"WebPort\" : %d", value->WebPort); if (json >= jsonEnd) return -1;
mitsarionas 5:7358822a587a 825 json += snprintf(json, jsonEnd - json, ", \"MqttBrokerHostname\" : \""); if (json >= jsonEnd) return -1;
mitsarionas 4:073e23f6718c 826 json += strcpy_escaped(json, value->MqttBrokerHostname); if (json + 1 >= jsonEnd) return -1;
mitsarionas 4:073e23f6718c 827 *json = '\"'; json++;
mitsarionas 4:073e23f6718c 828 json += snprintf(json, jsonEnd - json, ", \"MqttBrokerPort\" : %d", value->MqttBrokerPort); if (json >= jsonEnd) return -1;
mitsarionas 5:7358822a587a 829 json += snprintf(json, jsonEnd - json, ", \"MqttBrokerCertFile\" : \""); if (json >= jsonEnd) return -1;
mitsarionas 4:073e23f6718c 830 json += strcpy_escaped(json, value->MqttBrokerCertFile); if (json + 1 >= jsonEnd) return -1;
mitsarionas 4:073e23f6718c 831 *json = '\"'; json++;
mitsarionas 0:384a04dc912e 832 *json = '}'; json++;
mitsarionas 0:384a04dc912e 833 *json = '\0'; json++;
mitsarionas 0:384a04dc912e 834 return json - jsonStart;
mitsarionas 0:384a04dc912e 835 }
mitsarionas 0:384a04dc912e 836
mitsarionas 0:384a04dc912e 837 // -----------------------------------------------------------------------------------------------------------------------
mitsarionas 4:073e23f6718c 838 int Yodiwo_Tools_APIGenerator_CNodeYConfig_ToJson(char* jsonStart, size_t jsonSize, Yodiwo_Tools_APIGenerator_CNodeYConfig_t *value)
mitsarionas 0:384a04dc912e 839 {
mitsarionas 0:384a04dc912e 840 char *json = jsonStart, *jsonEnd = json + jsonSize;
mitsarionas 0:384a04dc912e 841 int len;
mitsarionas 4:073e23f6718c 842 json += snprintf(json, jsonEnd - json, "{ \"ActiveID\" : %d", value->ActiveID); if (json >= jsonEnd) return -1;
mitsarionas 4:073e23f6718c 843 json += snprintf(json, jsonEnd - json, "%s", ", \"Configs\" : ");
mitsarionas 4:073e23f6718c 844 if ((len = Array_Yodiwo_Tools_APIGenerator_CNodeConfig_ToJson(json, jsonEnd - json, &value->Configs) - 1) < 0) return -1; else json += len;
mitsarionas 0:384a04dc912e 845 *json = '}'; json++;
mitsarionas 0:384a04dc912e 846 *json = '\0'; json++;
mitsarionas 0:384a04dc912e 847 return json - jsonStart;
mitsarionas 0:384a04dc912e 848 }
mitsarionas 0:384a04dc912e 849
mitsarionas 0:384a04dc912e 850
mitsarionas 0:384a04dc912e 851
mitsarionas 0:384a04dc912e 852
mitsarionas 0:384a04dc912e 853
mitsarionas 0:384a04dc912e 854 /* ======================================================================================================================= */
mitsarionas 0:384a04dc912e 855 /* FromJson Functions */
mitsarionas 0:384a04dc912e 856 /* ======================================================================================================================= */
mitsarionas 2:855390040d43 857 // -----------------------------------------------------------------------------------------------------------------------
mitsarionas 0:384a04dc912e 858 Yodiwo_Plegma_Json_e Array_Yodiwo_Plegma_ConfigParameter_FromJson(char* json, size_t jsonSize, Array_Yodiwo_Plegma_ConfigParameter_t *array)
mitsarionas 0:384a04dc912e 859 {
mitsarionas 0:384a04dc912e 860 int i = 0, r;
mitsarionas 0:384a04dc912e 861 Yodiwo_Plegma_Json_e res = Yodiwo_JsonSuccessParse;
mitsarionas 0:384a04dc912e 862 jsmntok_t t[64]; /* We expect no more than 128 tokens */
mitsarionas 0:384a04dc912e 863 jsmn_parser p;
mitsarionas 0:384a04dc912e 864 jsmn_init(&p);
mitsarionas 0:384a04dc912e 865 if ((r = jsmn_parse(&p, json, jsonSize, t, sizeof(t) / sizeof(t[0]))) < 0) return Yodiwo_JsonFailedToParse;
mitsarionas 0:384a04dc912e 866 if (r < 1 || t[0].type != JSMN_ARRAY) return Yodiwo_JsonFailedObjectExpected;
mitsarionas 0:384a04dc912e 867
mitsarionas 0:384a04dc912e 868 array->num = Helper_Json_ParseArray(t, r);
mitsarionas 0:384a04dc912e 869 array->elems = (Yodiwo_Plegma_ConfigParameter_t *)malloc(array->num*sizeof(Yodiwo_Plegma_ConfigParameter_t));
mitsarionas 0:384a04dc912e 870 for (i = 0; i < array->num; i++) {
mitsarionas 0:384a04dc912e 871 if ((res = Yodiwo_Plegma_ConfigParameter_FromJson(&json[t[i].start], t[i].end - t[i].start, &array->elems[i])) != Yodiwo_JsonSuccessParse) break;
mitsarionas 0:384a04dc912e 872 }
mitsarionas 0:384a04dc912e 873 return res;
mitsarionas 0:384a04dc912e 874 }
mitsarionas 0:384a04dc912e 875
mitsarionas 0:384a04dc912e 876 // -----------------------------------------------------------------------------------------------------------------------
mitsarionas 0:384a04dc912e 877 Yodiwo_Plegma_Json_e Array_Yodiwo_Plegma_Port_FromJson(char* json, size_t jsonSize, Array_Yodiwo_Plegma_Port_t *array)
mitsarionas 0:384a04dc912e 878 {
mitsarionas 0:384a04dc912e 879 int i = 0, r;
mitsarionas 0:384a04dc912e 880 Yodiwo_Plegma_Json_e res = Yodiwo_JsonSuccessParse;
mitsarionas 0:384a04dc912e 881 jsmntok_t t[64]; /* We expect no more than 128 tokens */
mitsarionas 0:384a04dc912e 882 jsmn_parser p;
mitsarionas 0:384a04dc912e 883 jsmn_init(&p);
mitsarionas 0:384a04dc912e 884 if ((r = jsmn_parse(&p, json, jsonSize, t, sizeof(t) / sizeof(t[0]))) < 0) return Yodiwo_JsonFailedToParse;
mitsarionas 0:384a04dc912e 885 if (r < 1 || t[0].type != JSMN_ARRAY) return Yodiwo_JsonFailedObjectExpected;
mitsarionas 0:384a04dc912e 886
mitsarionas 0:384a04dc912e 887 array->num = Helper_Json_ParseArray(t, r);
mitsarionas 0:384a04dc912e 888 array->elems = (Yodiwo_Plegma_Port_t *)malloc(array->num*sizeof(Yodiwo_Plegma_Port_t));
mitsarionas 0:384a04dc912e 889 for (i = 0; i < array->num; i++) {
mitsarionas 0:384a04dc912e 890 if ((res = Yodiwo_Plegma_Port_FromJson(&json[t[i].start], t[i].end - t[i].start, &array->elems[i])) != Yodiwo_JsonSuccessParse) break;
mitsarionas 0:384a04dc912e 891 }
mitsarionas 0:384a04dc912e 892 return res;
mitsarionas 0:384a04dc912e 893 }
mitsarionas 0:384a04dc912e 894
mitsarionas 0:384a04dc912e 895 // -----------------------------------------------------------------------------------------------------------------------
mitsarionas 0:384a04dc912e 896 Yodiwo_Plegma_Json_e Array_Yodiwo_Plegma_ConfigDescription_FromJson(char* json, size_t jsonSize, Array_Yodiwo_Plegma_ConfigDescription_t *array)
mitsarionas 0:384a04dc912e 897 {
mitsarionas 0:384a04dc912e 898 int i = 0, r;
mitsarionas 0:384a04dc912e 899 Yodiwo_Plegma_Json_e res = Yodiwo_JsonSuccessParse;
mitsarionas 0:384a04dc912e 900 jsmntok_t t[64]; /* We expect no more than 128 tokens */
mitsarionas 0:384a04dc912e 901 jsmn_parser p;
mitsarionas 0:384a04dc912e 902 jsmn_init(&p);
mitsarionas 0:384a04dc912e 903 if ((r = jsmn_parse(&p, json, jsonSize, t, sizeof(t) / sizeof(t[0]))) < 0) return Yodiwo_JsonFailedToParse;
mitsarionas 0:384a04dc912e 904 if (r < 1 || t[0].type != JSMN_ARRAY) return Yodiwo_JsonFailedObjectExpected;
mitsarionas 0:384a04dc912e 905
mitsarionas 0:384a04dc912e 906 array->num = Helper_Json_ParseArray(t, r);
mitsarionas 0:384a04dc912e 907 array->elems = (Yodiwo_Plegma_ConfigDescription_t *)malloc(array->num*sizeof(Yodiwo_Plegma_ConfigDescription_t));
mitsarionas 0:384a04dc912e 908 for (i = 0; i < array->num; i++) {
mitsarionas 0:384a04dc912e 909 if ((res = Yodiwo_Plegma_ConfigDescription_FromJson(&json[t[i].start], t[i].end - t[i].start, &array->elems[i])) != Yodiwo_JsonSuccessParse) break;
mitsarionas 0:384a04dc912e 910 }
mitsarionas 0:384a04dc912e 911 return res;
mitsarionas 0:384a04dc912e 912 }
mitsarionas 0:384a04dc912e 913
mitsarionas 0:384a04dc912e 914 // -----------------------------------------------------------------------------------------------------------------------
mitsarionas 0:384a04dc912e 915 Yodiwo_Plegma_Json_e Array_Yodiwo_Plegma_PortDescription_FromJson(char* json, size_t jsonSize, Array_Yodiwo_Plegma_PortDescription_t *array)
mitsarionas 0:384a04dc912e 916 {
mitsarionas 0:384a04dc912e 917 int i = 0, r;
mitsarionas 0:384a04dc912e 918 Yodiwo_Plegma_Json_e res = Yodiwo_JsonSuccessParse;
mitsarionas 0:384a04dc912e 919 jsmntok_t t[64]; /* We expect no more than 128 tokens */
mitsarionas 0:384a04dc912e 920 jsmn_parser p;
mitsarionas 0:384a04dc912e 921 jsmn_init(&p);
mitsarionas 0:384a04dc912e 922 if ((r = jsmn_parse(&p, json, jsonSize, t, sizeof(t) / sizeof(t[0]))) < 0) return Yodiwo_JsonFailedToParse;
mitsarionas 0:384a04dc912e 923 if (r < 1 || t[0].type != JSMN_ARRAY) return Yodiwo_JsonFailedObjectExpected;
mitsarionas 0:384a04dc912e 924
mitsarionas 0:384a04dc912e 925 array->num = Helper_Json_ParseArray(t, r);
mitsarionas 0:384a04dc912e 926 array->elems = (Yodiwo_Plegma_PortDescription_t *)malloc(array->num*sizeof(Yodiwo_Plegma_PortDescription_t));
mitsarionas 0:384a04dc912e 927 for (i = 0; i < array->num; i++) {
mitsarionas 0:384a04dc912e 928 if ((res = Yodiwo_Plegma_PortDescription_FromJson(&json[t[i].start], t[i].end - t[i].start, &array->elems[i])) != Yodiwo_JsonSuccessParse) break;
mitsarionas 0:384a04dc912e 929 }
mitsarionas 0:384a04dc912e 930 return res;
mitsarionas 0:384a04dc912e 931 }
mitsarionas 0:384a04dc912e 932
mitsarionas 0:384a04dc912e 933 // -----------------------------------------------------------------------------------------------------------------------
mitsarionas 0:384a04dc912e 934 Yodiwo_Plegma_Json_e Array_Yodiwo_Plegma_NodeModelType_FromJson(char* json, size_t jsonSize, Array_Yodiwo_Plegma_NodeModelType_t *array)
mitsarionas 0:384a04dc912e 935 {
mitsarionas 0:384a04dc912e 936 int i = 0, r;
mitsarionas 0:384a04dc912e 937 Yodiwo_Plegma_Json_e res = Yodiwo_JsonSuccessParse;
mitsarionas 0:384a04dc912e 938 jsmntok_t t[64]; /* We expect no more than 128 tokens */
mitsarionas 0:384a04dc912e 939 jsmn_parser p;
mitsarionas 0:384a04dc912e 940 jsmn_init(&p);
mitsarionas 0:384a04dc912e 941 if ((r = jsmn_parse(&p, json, jsonSize, t, sizeof(t) / sizeof(t[0]))) < 0) return Yodiwo_JsonFailedToParse;
mitsarionas 0:384a04dc912e 942 if (r < 1 || t[0].type != JSMN_ARRAY) return Yodiwo_JsonFailedObjectExpected;
mitsarionas 0:384a04dc912e 943
mitsarionas 0:384a04dc912e 944 array->num = Helper_Json_ParseArray(t, r);
mitsarionas 0:384a04dc912e 945 array->elems = (Yodiwo_Plegma_NodeModelType_t *)malloc(array->num*sizeof(Yodiwo_Plegma_NodeModelType_t));
mitsarionas 0:384a04dc912e 946 for (i = 0; i < array->num; i++) {
mitsarionas 0:384a04dc912e 947 if ((res = Yodiwo_Plegma_NodeModelType_FromJson(&json[t[i].start], t[i].end - t[i].start, &array->elems[i])) != Yodiwo_JsonSuccessParse) break;
mitsarionas 0:384a04dc912e 948 }
mitsarionas 0:384a04dc912e 949 return res;
mitsarionas 0:384a04dc912e 950 }
mitsarionas 0:384a04dc912e 951
mitsarionas 0:384a04dc912e 952 // -----------------------------------------------------------------------------------------------------------------------
mitsarionas 0:384a04dc912e 953 Yodiwo_Plegma_Json_e Array_Yodiwo_Plegma_NodeThingType_FromJson(char* json, size_t jsonSize, Array_Yodiwo_Plegma_NodeThingType_t *array)
mitsarionas 0:384a04dc912e 954 {
mitsarionas 0:384a04dc912e 955 int i = 0, r;
mitsarionas 0:384a04dc912e 956 Yodiwo_Plegma_Json_e res = Yodiwo_JsonSuccessParse;
mitsarionas 0:384a04dc912e 957 jsmntok_t t[64]; /* We expect no more than 128 tokens */
mitsarionas 0:384a04dc912e 958 jsmn_parser p;
mitsarionas 0:384a04dc912e 959 jsmn_init(&p);
mitsarionas 0:384a04dc912e 960 if ((r = jsmn_parse(&p, json, jsonSize, t, sizeof(t) / sizeof(t[0]))) < 0) return Yodiwo_JsonFailedToParse;
mitsarionas 0:384a04dc912e 961 if (r < 1 || t[0].type != JSMN_ARRAY) return Yodiwo_JsonFailedObjectExpected;
mitsarionas 0:384a04dc912e 962
mitsarionas 0:384a04dc912e 963 array->num = Helper_Json_ParseArray(t, r);
mitsarionas 0:384a04dc912e 964 array->elems = (Yodiwo_Plegma_NodeThingType_t *)malloc(array->num*sizeof(Yodiwo_Plegma_NodeThingType_t));
mitsarionas 0:384a04dc912e 965 for (i = 0; i < array->num; i++) {
mitsarionas 0:384a04dc912e 966 if ((res = Yodiwo_Plegma_NodeThingType_FromJson(&json[t[i].start], t[i].end - t[i].start, &array->elems[i])) != Yodiwo_JsonSuccessParse) break;
mitsarionas 0:384a04dc912e 967 }
mitsarionas 0:384a04dc912e 968 return res;
mitsarionas 0:384a04dc912e 969 }
mitsarionas 0:384a04dc912e 970
mitsarionas 0:384a04dc912e 971 // -----------------------------------------------------------------------------------------------------------------------
mitsarionas 0:384a04dc912e 972 Yodiwo_Plegma_Json_e Array_Yodiwo_Plegma_Thing_FromJson(char* json, size_t jsonSize, Array_Yodiwo_Plegma_Thing_t *array)
mitsarionas 0:384a04dc912e 973 {
mitsarionas 0:384a04dc912e 974 int i = 0, r;
mitsarionas 0:384a04dc912e 975 Yodiwo_Plegma_Json_e res = Yodiwo_JsonSuccessParse;
mitsarionas 0:384a04dc912e 976 jsmntok_t t[64]; /* We expect no more than 128 tokens */
mitsarionas 0:384a04dc912e 977 jsmn_parser p;
mitsarionas 0:384a04dc912e 978 jsmn_init(&p);
mitsarionas 0:384a04dc912e 979 if ((r = jsmn_parse(&p, json, jsonSize, t, sizeof(t) / sizeof(t[0]))) < 0) return Yodiwo_JsonFailedToParse;
mitsarionas 0:384a04dc912e 980 if (r < 1 || t[0].type != JSMN_ARRAY) return Yodiwo_JsonFailedObjectExpected;
mitsarionas 0:384a04dc912e 981
mitsarionas 0:384a04dc912e 982 array->num = Helper_Json_ParseArray(t, r);
mitsarionas 0:384a04dc912e 983 array->elems = (Yodiwo_Plegma_Thing_t *)malloc(array->num*sizeof(Yodiwo_Plegma_Thing_t));
mitsarionas 0:384a04dc912e 984 for (i = 0; i < array->num; i++) {
mitsarionas 0:384a04dc912e 985 if ((res = Yodiwo_Plegma_Thing_FromJson(&json[t[i].start], t[i].end - t[i].start, &array->elems[i])) != Yodiwo_JsonSuccessParse) break;
mitsarionas 0:384a04dc912e 986 }
mitsarionas 0:384a04dc912e 987 return res;
mitsarionas 0:384a04dc912e 988 }
mitsarionas 0:384a04dc912e 989
mitsarionas 0:384a04dc912e 990 // -----------------------------------------------------------------------------------------------------------------------
mitsarionas 0:384a04dc912e 991 Yodiwo_Plegma_Json_e Array_Yodiwo_Plegma_PortEvent_FromJson(char* json, size_t jsonSize, Array_Yodiwo_Plegma_PortEvent_t *array)
mitsarionas 0:384a04dc912e 992 {
mitsarionas 0:384a04dc912e 993 int i = 0, r;
mitsarionas 0:384a04dc912e 994 Yodiwo_Plegma_Json_e res = Yodiwo_JsonSuccessParse;
mitsarionas 0:384a04dc912e 995 jsmntok_t t[64]; /* We expect no more than 128 tokens */
mitsarionas 0:384a04dc912e 996 jsmn_parser p;
mitsarionas 0:384a04dc912e 997 jsmn_init(&p);
mitsarionas 0:384a04dc912e 998 if ((r = jsmn_parse(&p, json, jsonSize, t, sizeof(t) / sizeof(t[0]))) < 0) return Yodiwo_JsonFailedToParse;
mitsarionas 0:384a04dc912e 999 if (r < 1 || t[0].type != JSMN_ARRAY) return Yodiwo_JsonFailedObjectExpected;
mitsarionas 0:384a04dc912e 1000
mitsarionas 0:384a04dc912e 1001 array->num = Helper_Json_ParseArray(t, r);
mitsarionas 0:384a04dc912e 1002 array->elems = (Yodiwo_Plegma_PortEvent_t *)malloc(array->num*sizeof(Yodiwo_Plegma_PortEvent_t));
mitsarionas 0:384a04dc912e 1003 for (i = 0; i < array->num; i++) {
mitsarionas 0:384a04dc912e 1004 if ((res = Yodiwo_Plegma_PortEvent_FromJson(&json[t[i].start], t[i].end - t[i].start, &array->elems[i])) != Yodiwo_JsonSuccessParse) break;
mitsarionas 0:384a04dc912e 1005 }
mitsarionas 0:384a04dc912e 1006 return res;
mitsarionas 0:384a04dc912e 1007 }
mitsarionas 0:384a04dc912e 1008
mitsarionas 0:384a04dc912e 1009 // -----------------------------------------------------------------------------------------------------------------------
mitsarionas 0:384a04dc912e 1010 Yodiwo_Plegma_Json_e Array_Yodiwo_Plegma_PortState_FromJson(char* json, size_t jsonSize, Array_Yodiwo_Plegma_PortState_t *array)
mitsarionas 0:384a04dc912e 1011 {
mitsarionas 0:384a04dc912e 1012 int i = 0, r;
mitsarionas 0:384a04dc912e 1013 Yodiwo_Plegma_Json_e res = Yodiwo_JsonSuccessParse;
mitsarionas 0:384a04dc912e 1014 jsmntok_t t[64]; /* We expect no more than 128 tokens */
mitsarionas 0:384a04dc912e 1015 jsmn_parser p;
mitsarionas 0:384a04dc912e 1016 jsmn_init(&p);
mitsarionas 0:384a04dc912e 1017 if ((r = jsmn_parse(&p, json, jsonSize, t, sizeof(t) / sizeof(t[0]))) < 0) return Yodiwo_JsonFailedToParse;
mitsarionas 0:384a04dc912e 1018 if (r < 1 || t[0].type != JSMN_ARRAY) return Yodiwo_JsonFailedObjectExpected;
mitsarionas 0:384a04dc912e 1019
mitsarionas 0:384a04dc912e 1020 array->num = Helper_Json_ParseArray(t, r);
mitsarionas 0:384a04dc912e 1021 array->elems = (Yodiwo_Plegma_PortState_t *)malloc(array->num*sizeof(Yodiwo_Plegma_PortState_t));
mitsarionas 0:384a04dc912e 1022 for (i = 0; i < array->num; i++) {
mitsarionas 0:384a04dc912e 1023 if ((res = Yodiwo_Plegma_PortState_FromJson(&json[t[i].start], t[i].end - t[i].start, &array->elems[i])) != Yodiwo_JsonSuccessParse) break;
mitsarionas 0:384a04dc912e 1024 }
mitsarionas 0:384a04dc912e 1025 return res;
mitsarionas 0:384a04dc912e 1026 }
mitsarionas 0:384a04dc912e 1027
mitsarionas 0:384a04dc912e 1028 // -----------------------------------------------------------------------------------------------------------------------
mitsarionas 4:073e23f6718c 1029 Yodiwo_Plegma_Json_e Array_Yodiwo_Tools_APIGenerator_CNodeConfig_FromJson(char* json, size_t jsonSize, Array_Yodiwo_Tools_APIGenerator_CNodeConfig_t *array)
mitsarionas 4:073e23f6718c 1030 {
mitsarionas 4:073e23f6718c 1031 int i = 0, r;
mitsarionas 4:073e23f6718c 1032 Yodiwo_Plegma_Json_e res = Yodiwo_JsonSuccessParse;
mitsarionas 4:073e23f6718c 1033 jsmntok_t t[64]; /* We expect no more than 128 tokens */
mitsarionas 4:073e23f6718c 1034 jsmn_parser p;
mitsarionas 4:073e23f6718c 1035 jsmn_init(&p);
mitsarionas 4:073e23f6718c 1036 if ((r = jsmn_parse(&p, json, jsonSize, t, sizeof(t) / sizeof(t[0]))) < 0) return Yodiwo_JsonFailedToParse;
mitsarionas 4:073e23f6718c 1037 if (r < 1 || t[0].type != JSMN_ARRAY) return Yodiwo_JsonFailedObjectExpected;
mitsarionas 4:073e23f6718c 1038
mitsarionas 4:073e23f6718c 1039 array->num = Helper_Json_ParseArray(t, r);
mitsarionas 4:073e23f6718c 1040 array->elems = (Yodiwo_Tools_APIGenerator_CNodeConfig_t *)malloc(array->num*sizeof(Yodiwo_Tools_APIGenerator_CNodeConfig_t));
mitsarionas 4:073e23f6718c 1041 for (i = 0; i < array->num; i++) {
mitsarionas 5:7358822a587a 1042 printf("aaa\n");
mitsarionas 4:073e23f6718c 1043 if ((res = Yodiwo_Tools_APIGenerator_CNodeConfig_FromJson(&json[t[i].start], t[i].end - t[i].start, &array->elems[i])) != Yodiwo_JsonSuccessParse) break;
mitsarionas 4:073e23f6718c 1044 }
mitsarionas 4:073e23f6718c 1045 return res;
mitsarionas 4:073e23f6718c 1046 }
mitsarionas 4:073e23f6718c 1047
mitsarionas 4:073e23f6718c 1048 // -----------------------------------------------------------------------------------------------------------------------
mitsarionas 0:384a04dc912e 1049 Yodiwo_Plegma_Json_e Yodiwo_Plegma_UserKey_FromJson(char* json, size_t jsonSize, Yodiwo_Plegma_UserKey_t *value)
mitsarionas 0:384a04dc912e 1050 {
mitsarionas 0:384a04dc912e 1051 memset(value, 0, sizeof(Yodiwo_Plegma_UserKey_t));
mitsarionas 0:384a04dc912e 1052 ParseTable table[] = {
mitsarionas 0:384a04dc912e 1053 { "UserID", 6, Parse_String, NULL, &value->UserID },
mitsarionas 0:384a04dc912e 1054 };
mitsarionas 0:384a04dc912e 1055 return HelperJsonParseExec(json, jsonSize, table, sizeof(table) / sizeof(table[0]));
mitsarionas 0:384a04dc912e 1056 }
mitsarionas 0:384a04dc912e 1057
mitsarionas 0:384a04dc912e 1058 // -----------------------------------------------------------------------------------------------------------------------
mitsarionas 0:384a04dc912e 1059 Yodiwo_Plegma_Json_e Yodiwo_Plegma_NodeKey_FromJson(char* json, size_t jsonSize, Yodiwo_Plegma_NodeKey_t *value)
mitsarionas 0:384a04dc912e 1060 {
mitsarionas 0:384a04dc912e 1061 memset(value, 0, sizeof(Yodiwo_Plegma_NodeKey_t));
mitsarionas 0:384a04dc912e 1062 ParseTable table[] = {
mitsarionas 0:384a04dc912e 1063 { "UserKey", 7, NULL, Yodiwo_Plegma_UserKey_FromJson, &value->UserKey },
mitsarionas 0:384a04dc912e 1064 { "NodeID", 6, Parse_Int, NULL, &value->NodeID },
mitsarionas 0:384a04dc912e 1065 };
mitsarionas 0:384a04dc912e 1066 return HelperJsonParseExec(json, jsonSize, table, sizeof(table) / sizeof(table[0]));
mitsarionas 0:384a04dc912e 1067 }
mitsarionas 0:384a04dc912e 1068
mitsarionas 0:384a04dc912e 1069 // -----------------------------------------------------------------------------------------------------------------------
mitsarionas 0:384a04dc912e 1070 Yodiwo_Plegma_Json_e Yodiwo_Plegma_ThingKey_FromJson(char* json, size_t jsonSize, Yodiwo_Plegma_ThingKey_t *value)
mitsarionas 0:384a04dc912e 1071 {
mitsarionas 0:384a04dc912e 1072 memset(value, 0, sizeof(Yodiwo_Plegma_ThingKey_t));
mitsarionas 0:384a04dc912e 1073 ParseTable table[] = {
mitsarionas 0:384a04dc912e 1074 { "NodeKey", 7, NULL, Yodiwo_Plegma_NodeKey_FromJson, &value->NodeKey },
mitsarionas 0:384a04dc912e 1075 { "ThingUID", 8, Parse_String, NULL, &value->ThingUID },
mitsarionas 0:384a04dc912e 1076 };
mitsarionas 0:384a04dc912e 1077 return HelperJsonParseExec(json, jsonSize, table, sizeof(table) / sizeof(table[0]));
mitsarionas 0:384a04dc912e 1078 }
mitsarionas 0:384a04dc912e 1079
mitsarionas 0:384a04dc912e 1080 // -----------------------------------------------------------------------------------------------------------------------
mitsarionas 0:384a04dc912e 1081 Yodiwo_Plegma_Json_e Yodiwo_Plegma_PortKey_FromJson(char* json, size_t jsonSize, Yodiwo_Plegma_PortKey_t *value)
mitsarionas 0:384a04dc912e 1082 {
mitsarionas 0:384a04dc912e 1083 memset(value, 0, sizeof(Yodiwo_Plegma_PortKey_t));
mitsarionas 0:384a04dc912e 1084 ParseTable table[] = {
mitsarionas 0:384a04dc912e 1085 { "ThingKey", 8, NULL, Yodiwo_Plegma_ThingKey_FromJson, &value->ThingKey },
mitsarionas 0:384a04dc912e 1086 { "PortUID", 7, Parse_String, NULL, &value->PortUID },
mitsarionas 0:384a04dc912e 1087 };
mitsarionas 0:384a04dc912e 1088 return HelperJsonParseExec(json, jsonSize, table, sizeof(table) / sizeof(table[0]));
mitsarionas 0:384a04dc912e 1089 }
mitsarionas 0:384a04dc912e 1090
mitsarionas 0:384a04dc912e 1091 // -----------------------------------------------------------------------------------------------------------------------
mitsarionas 0:384a04dc912e 1092 Yodiwo_Plegma_Json_e Yodiwo_Plegma_GraphDescriptorBaseKey_FromJson(char* json, size_t jsonSize, Yodiwo_Plegma_GraphDescriptorBaseKey_t *value)
mitsarionas 0:384a04dc912e 1093 {
mitsarionas 0:384a04dc912e 1094 memset(value, 0, sizeof(Yodiwo_Plegma_GraphDescriptorBaseKey_t));
mitsarionas 0:384a04dc912e 1095 ParseTable table[] = {
mitsarionas 0:384a04dc912e 1096 { "UserKey", 7, NULL, Yodiwo_Plegma_UserKey_FromJson, &value->UserKey },
mitsarionas 0:384a04dc912e 1097 { "Id", 2, Parse_String, NULL, &value->Id },
mitsarionas 0:384a04dc912e 1098 };
mitsarionas 0:384a04dc912e 1099 return HelperJsonParseExec(json, jsonSize, table, sizeof(table) / sizeof(table[0]));
mitsarionas 0:384a04dc912e 1100 }
mitsarionas 0:384a04dc912e 1101
mitsarionas 0:384a04dc912e 1102 // -----------------------------------------------------------------------------------------------------------------------
mitsarionas 0:384a04dc912e 1103 Yodiwo_Plegma_Json_e Yodiwo_Plegma_GraphDescriptorKey_FromJson(char* json, size_t jsonSize, Yodiwo_Plegma_GraphDescriptorKey_t *value)
mitsarionas 0:384a04dc912e 1104 {
mitsarionas 0:384a04dc912e 1105 memset(value, 0, sizeof(Yodiwo_Plegma_GraphDescriptorKey_t));
mitsarionas 0:384a04dc912e 1106 ParseTable table[] = {
mitsarionas 0:384a04dc912e 1107 { "UserKey", 7, NULL, Yodiwo_Plegma_UserKey_FromJson, &value->UserKey },
mitsarionas 0:384a04dc912e 1108 { "Id", 2, Parse_String, NULL, &value->Id },
mitsarionas 0:384a04dc912e 1109 { "Revision", 8, Parse_Int, NULL, &value->Revision },
mitsarionas 0:384a04dc912e 1110 };
mitsarionas 0:384a04dc912e 1111 return HelperJsonParseExec(json, jsonSize, table, sizeof(table) / sizeof(table[0]));
mitsarionas 0:384a04dc912e 1112 }
mitsarionas 0:384a04dc912e 1113
mitsarionas 0:384a04dc912e 1114 // -----------------------------------------------------------------------------------------------------------------------
mitsarionas 0:384a04dc912e 1115 Yodiwo_Plegma_Json_e Yodiwo_Plegma_GraphKey_FromJson(char* json, size_t jsonSize, Yodiwo_Plegma_GraphKey_t *value)
mitsarionas 0:384a04dc912e 1116 {
mitsarionas 0:384a04dc912e 1117 memset(value, 0, sizeof(Yodiwo_Plegma_GraphKey_t));
mitsarionas 0:384a04dc912e 1118 ParseTable table[] = {
mitsarionas 0:384a04dc912e 1119 { "GraphDescriptorKey", 18, NULL, Yodiwo_Plegma_GraphDescriptorKey_FromJson, &value->GraphDescriptorKey },
mitsarionas 0:384a04dc912e 1120 { "GraphId", 7, Parse_Int, NULL, &value->GraphId },
mitsarionas 0:384a04dc912e 1121 };
mitsarionas 0:384a04dc912e 1122 return HelperJsonParseExec(json, jsonSize, table, sizeof(table) / sizeof(table[0]));
mitsarionas 0:384a04dc912e 1123 }
mitsarionas 0:384a04dc912e 1124
mitsarionas 0:384a04dc912e 1125 // -----------------------------------------------------------------------------------------------------------------------
mitsarionas 0:384a04dc912e 1126 Yodiwo_Plegma_Json_e Yodiwo_Plegma_BlockKey_FromJson(char* json, size_t jsonSize, Yodiwo_Plegma_BlockKey_t *value)
mitsarionas 0:384a04dc912e 1127 {
mitsarionas 0:384a04dc912e 1128 memset(value, 0, sizeof(Yodiwo_Plegma_BlockKey_t));
mitsarionas 0:384a04dc912e 1129 ParseTable table[] = {
mitsarionas 0:384a04dc912e 1130 { "GraphKey", 8, NULL, Yodiwo_Plegma_GraphKey_FromJson, &value->GraphKey },
mitsarionas 0:384a04dc912e 1131 { "BlockId", 7, Parse_Int, NULL, &value->BlockId },
mitsarionas 0:384a04dc912e 1132 };
mitsarionas 0:384a04dc912e 1133 return HelperJsonParseExec(json, jsonSize, table, sizeof(table) / sizeof(table[0]));
mitsarionas 0:384a04dc912e 1134 }
mitsarionas 0:384a04dc912e 1135
mitsarionas 0:384a04dc912e 1136 // -----------------------------------------------------------------------------------------------------------------------
mitsarionas 2:855390040d43 1137 Yodiwo_Plegma_Json_e Yodiwo_Plegma_TimelineDescriptorKey_FromJson(char* json, size_t jsonSize, Yodiwo_Plegma_TimelineDescriptorKey_t *value)
mitsarionas 2:855390040d43 1138 {
mitsarionas 2:855390040d43 1139 memset(value, 0, sizeof(Yodiwo_Plegma_TimelineDescriptorKey_t));
mitsarionas 2:855390040d43 1140 ParseTable table[] = {
mitsarionas 2:855390040d43 1141 { "UserKey", 7, NULL, Yodiwo_Plegma_UserKey_FromJson, &value->UserKey },
mitsarionas 2:855390040d43 1142 { "Id", 2, Parse_String, NULL, &value->Id },
mitsarionas 2:855390040d43 1143 };
mitsarionas 2:855390040d43 1144 return HelperJsonParseExec(json, jsonSize, table, sizeof(table) / sizeof(table[0]));
mitsarionas 2:855390040d43 1145 }
mitsarionas 2:855390040d43 1146
mitsarionas 2:855390040d43 1147 // -----------------------------------------------------------------------------------------------------------------------
mitsarionas 4:073e23f6718c 1148 Yodiwo_Plegma_Json_e Yodiwo_Plegma_Mqtt_MqttAPIMessage_FromJson(char* json, size_t jsonSize, Yodiwo_Plegma_Mqtt_MqttAPIMessage_t *value)
mitsarionas 2:855390040d43 1149 {
mitsarionas 4:073e23f6718c 1150 memset(value, 0, sizeof(Yodiwo_Plegma_Mqtt_MqttAPIMessage_t));
mitsarionas 2:855390040d43 1151 ParseTable table[] = {
mitsarionas 2:855390040d43 1152 { "ResponseToSeqNo", 15, Parse_Int, NULL, &value->ResponseToSeqNo },
mitsarionas 2:855390040d43 1153 { "Payload", 7, Parse_String, NULL, &value->Payload },
mitsarionas 2:855390040d43 1154 };
mitsarionas 2:855390040d43 1155 return HelperJsonParseExec(json, jsonSize, table, sizeof(table) / sizeof(table[0]));
mitsarionas 2:855390040d43 1156 }
mitsarionas 2:855390040d43 1157
mitsarionas 2:855390040d43 1158 // -----------------------------------------------------------------------------------------------------------------------
mitsarionas 0:384a04dc912e 1159 Yodiwo_Plegma_Json_e Yodiwo_Plegma_Port_FromJson(char* json, size_t jsonSize, Yodiwo_Plegma_Port_t *value)
mitsarionas 0:384a04dc912e 1160 {
mitsarionas 0:384a04dc912e 1161 memset(value, 0, sizeof(Yodiwo_Plegma_Port_t));
mitsarionas 0:384a04dc912e 1162 ParseTable table[] = {
mitsarionas 0:384a04dc912e 1163 { "PortKey", 7, Parse_String, NULL, &value->PortKey },
mitsarionas 0:384a04dc912e 1164 { "Name", 4, Parse_String, NULL, &value->Name },
mitsarionas 0:384a04dc912e 1165 { "Description", 11, Parse_String, NULL, &value->Description },
mitsarionas 0:384a04dc912e 1166 { "ioDirection", 11, Parse_Int, NULL, &value->ioDirection },
mitsarionas 0:384a04dc912e 1167 { "Type", 4, Parse_Int, NULL, &value->Type },
mitsarionas 0:384a04dc912e 1168 { "State", 5, Parse_String, NULL, &value->State },
mitsarionas 0:384a04dc912e 1169 { "RevNum", 6, Parse_Int, NULL, &value->RevNum },
mitsarionas 0:384a04dc912e 1170 { "ConfFlags", 9, Parse_Int, NULL, &value->ConfFlags },
mitsarionas 0:384a04dc912e 1171 };
mitsarionas 0:384a04dc912e 1172 return HelperJsonParseExec(json, jsonSize, table, sizeof(table) / sizeof(table[0]));
mitsarionas 0:384a04dc912e 1173 }
mitsarionas 0:384a04dc912e 1174
mitsarionas 0:384a04dc912e 1175 // -----------------------------------------------------------------------------------------------------------------------
mitsarionas 0:384a04dc912e 1176 Yodiwo_Plegma_Json_e Yodiwo_Plegma_ConfigParameter_FromJson(char* json, size_t jsonSize, Yodiwo_Plegma_ConfigParameter_t *value)
mitsarionas 0:384a04dc912e 1177 {
mitsarionas 0:384a04dc912e 1178 memset(value, 0, sizeof(Yodiwo_Plegma_ConfigParameter_t));
mitsarionas 0:384a04dc912e 1179 ParseTable table[] = {
mitsarionas 0:384a04dc912e 1180 { "Name", 4, Parse_String, NULL, &value->Name },
mitsarionas 0:384a04dc912e 1181 { "Value", 5, Parse_String, NULL, &value->Value },
mitsarionas 0:384a04dc912e 1182 };
mitsarionas 0:384a04dc912e 1183 return HelperJsonParseExec(json, jsonSize, table, sizeof(table) / sizeof(table[0]));
mitsarionas 0:384a04dc912e 1184 }
mitsarionas 0:384a04dc912e 1185
mitsarionas 0:384a04dc912e 1186 // -----------------------------------------------------------------------------------------------------------------------
mitsarionas 0:384a04dc912e 1187 Yodiwo_Plegma_Json_e Yodiwo_Plegma_ThingUIHints_FromJson(char* json, size_t jsonSize, Yodiwo_Plegma_ThingUIHints_t *value)
mitsarionas 0:384a04dc912e 1188 {
mitsarionas 0:384a04dc912e 1189 memset(value, 0, sizeof(Yodiwo_Plegma_ThingUIHints_t));
mitsarionas 0:384a04dc912e 1190 ParseTable table[] = {
mitsarionas 0:384a04dc912e 1191 { "IconURI", 7, Parse_String, NULL, &value->IconURI },
mitsarionas 0:384a04dc912e 1192 { "Description", 11, Parse_String, NULL, &value->Description },
mitsarionas 0:384a04dc912e 1193 };
mitsarionas 0:384a04dc912e 1194 return HelperJsonParseExec(json, jsonSize, table, sizeof(table) / sizeof(table[0]));
mitsarionas 0:384a04dc912e 1195 }
mitsarionas 0:384a04dc912e 1196
mitsarionas 0:384a04dc912e 1197 // -----------------------------------------------------------------------------------------------------------------------
mitsarionas 0:384a04dc912e 1198 Yodiwo_Plegma_Json_e Yodiwo_Plegma_Thing_FromJson(char* json, size_t jsonSize, Yodiwo_Plegma_Thing_t *value)
mitsarionas 0:384a04dc912e 1199 {
mitsarionas 0:384a04dc912e 1200 memset(value, 0, sizeof(Yodiwo_Plegma_Thing_t));
mitsarionas 0:384a04dc912e 1201 ParseTable table[] = {
mitsarionas 0:384a04dc912e 1202 { "ThingKey", 8, Parse_String, NULL, &value->ThingKey },
mitsarionas 0:384a04dc912e 1203 { "Name", 4, Parse_String, NULL, &value->Name },
mitsarionas 0:384a04dc912e 1204 { "Config", 6, NULL, Array_Yodiwo_Plegma_ConfigParameter_FromJson, &value->Config },
mitsarionas 0:384a04dc912e 1205 { "Ports", 5, NULL, Array_Yodiwo_Plegma_Port_FromJson, &value->Ports },
mitsarionas 0:384a04dc912e 1206 { "Type", 4, Parse_String, NULL, &value->Type },
mitsarionas 0:384a04dc912e 1207 { "BlockType", 9, Parse_String, NULL, &value->BlockType },
mitsarionas 0:384a04dc912e 1208 { "UIHints", 7, NULL, Yodiwo_Plegma_ThingUIHints_FromJson, &value->UIHints },
mitsarionas 0:384a04dc912e 1209 };
mitsarionas 0:384a04dc912e 1210 return HelperJsonParseExec(json, jsonSize, table, sizeof(table) / sizeof(table[0]));
mitsarionas 0:384a04dc912e 1211 }
mitsarionas 0:384a04dc912e 1212
mitsarionas 0:384a04dc912e 1213 // -----------------------------------------------------------------------------------------------------------------------
mitsarionas 0:384a04dc912e 1214 Yodiwo_Plegma_Json_e Yodiwo_Plegma_LoginReq_FromJson(char* json, size_t jsonSize, Yodiwo_Plegma_LoginReq_t *value)
mitsarionas 0:384a04dc912e 1215 {
mitsarionas 0:384a04dc912e 1216 memset(value, 0, sizeof(Yodiwo_Plegma_LoginReq_t));
mitsarionas 0:384a04dc912e 1217 ParseTable table[] = {
mitsarionas 0:384a04dc912e 1218 { "SeqNo", 5, Parse_Int, NULL, &value->SeqNo },
mitsarionas 0:384a04dc912e 1219 };
mitsarionas 0:384a04dc912e 1220 return HelperJsonParseExec(json, jsonSize, table, sizeof(table) / sizeof(table[0]));
mitsarionas 0:384a04dc912e 1221 }
mitsarionas 0:384a04dc912e 1222
mitsarionas 0:384a04dc912e 1223 // -----------------------------------------------------------------------------------------------------------------------
mitsarionas 0:384a04dc912e 1224 Yodiwo_Plegma_Json_e Yodiwo_Plegma_LoginRsp_FromJson(char* json, size_t jsonSize, Yodiwo_Plegma_LoginRsp_t *value)
mitsarionas 0:384a04dc912e 1225 {
mitsarionas 0:384a04dc912e 1226 memset(value, 0, sizeof(Yodiwo_Plegma_LoginRsp_t));
mitsarionas 0:384a04dc912e 1227 ParseTable table[] = {
mitsarionas 4:073e23f6718c 1228 { "SeqNo", 5, Parse_Int, NULL, &value->SeqNo },
mitsarionas 0:384a04dc912e 1229 { "NodeKey", 7, Parse_String, NULL, &value->NodeKey },
mitsarionas 0:384a04dc912e 1230 { "SecretKey", 9, Parse_String, NULL, &value->SecretKey },
mitsarionas 0:384a04dc912e 1231 };
mitsarionas 0:384a04dc912e 1232 return HelperJsonParseExec(json, jsonSize, table, sizeof(table) / sizeof(table[0]));
mitsarionas 0:384a04dc912e 1233 }
mitsarionas 0:384a04dc912e 1234
mitsarionas 0:384a04dc912e 1235 // -----------------------------------------------------------------------------------------------------------------------
mitsarionas 0:384a04dc912e 1236 Yodiwo_Plegma_Json_e Yodiwo_Plegma_StateDescription_FromJson(char* json, size_t jsonSize, Yodiwo_Plegma_StateDescription_t *value)
mitsarionas 0:384a04dc912e 1237 {
mitsarionas 0:384a04dc912e 1238 memset(value, 0, sizeof(Yodiwo_Plegma_StateDescription_t));
mitsarionas 0:384a04dc912e 1239 ParseTable table[] = {
mitsarionas 0:384a04dc912e 1240 { "Minimum", 7, Parse_Double, NULL, &value->Minimum },
mitsarionas 0:384a04dc912e 1241 { "Maximum", 7, Parse_Double, NULL, &value->Maximum },
mitsarionas 0:384a04dc912e 1242 { "Step", 4, Parse_Double, NULL, &value->Step },
mitsarionas 0:384a04dc912e 1243 { "Pattern", 7, Parse_String, NULL, &value->Pattern },
mitsarionas 0:384a04dc912e 1244 { "ReadOnly", 8, Parse_Bool, NULL, &value->ReadOnly },
mitsarionas 0:384a04dc912e 1245 };
mitsarionas 0:384a04dc912e 1246 return HelperJsonParseExec(json, jsonSize, table, sizeof(table) / sizeof(table[0]));
mitsarionas 0:384a04dc912e 1247 }
mitsarionas 0:384a04dc912e 1248
mitsarionas 0:384a04dc912e 1249 // -----------------------------------------------------------------------------------------------------------------------
mitsarionas 0:384a04dc912e 1250 Yodiwo_Plegma_Json_e Yodiwo_Plegma_ConfigDescription_FromJson(char* json, size_t jsonSize, Yodiwo_Plegma_ConfigDescription_t *value)
mitsarionas 0:384a04dc912e 1251 {
mitsarionas 0:384a04dc912e 1252 memset(value, 0, sizeof(Yodiwo_Plegma_ConfigDescription_t));
mitsarionas 0:384a04dc912e 1253 ParseTable table[] = {
mitsarionas 0:384a04dc912e 1254 { "DefaultValue", 12, Parse_String, NULL, &value->DefaultValue },
mitsarionas 0:384a04dc912e 1255 { "Description", 11, Parse_String, NULL, &value->Description },
mitsarionas 0:384a04dc912e 1256 { "Label", 5, Parse_String, NULL, &value->Label },
mitsarionas 0:384a04dc912e 1257 { "Name", 4, Parse_String, NULL, &value->Name },
mitsarionas 0:384a04dc912e 1258 { "Required", 8, Parse_Bool, NULL, &value->Required },
mitsarionas 0:384a04dc912e 1259 { "Type", 4, Parse_String, NULL, &value->Type },
mitsarionas 0:384a04dc912e 1260 { "Minimum", 7, Parse_Double, NULL, &value->Minimum },
mitsarionas 0:384a04dc912e 1261 { "Maximum", 7, Parse_Double, NULL, &value->Maximum },
mitsarionas 0:384a04dc912e 1262 { "Stepsize", 8, Parse_Double, NULL, &value->Stepsize },
mitsarionas 0:384a04dc912e 1263 { "ReadOnly", 8, Parse_Bool, NULL, &value->ReadOnly },
mitsarionas 0:384a04dc912e 1264 };
mitsarionas 0:384a04dc912e 1265 return HelperJsonParseExec(json, jsonSize, table, sizeof(table) / sizeof(table[0]));
mitsarionas 0:384a04dc912e 1266 }
mitsarionas 0:384a04dc912e 1267
mitsarionas 0:384a04dc912e 1268 // -----------------------------------------------------------------------------------------------------------------------
mitsarionas 0:384a04dc912e 1269 Yodiwo_Plegma_Json_e Yodiwo_Plegma_PortDescription_FromJson(char* json, size_t jsonSize, Yodiwo_Plegma_PortDescription_t *value)
mitsarionas 0:384a04dc912e 1270 {
mitsarionas 0:384a04dc912e 1271 memset(value, 0, sizeof(Yodiwo_Plegma_PortDescription_t));
mitsarionas 0:384a04dc912e 1272 ParseTable table[] = {
mitsarionas 0:384a04dc912e 1273 { "Description", 11, Parse_String, NULL, &value->Description },
mitsarionas 0:384a04dc912e 1274 { "Id", 2, Parse_String, NULL, &value->Id },
mitsarionas 0:384a04dc912e 1275 { "Label", 5, Parse_String, NULL, &value->Label },
mitsarionas 0:384a04dc912e 1276 { "Category", 8, Parse_String, NULL, &value->Category },
mitsarionas 0:384a04dc912e 1277 { "State", 5, NULL, Yodiwo_Plegma_StateDescription_FromJson, &value->State },
mitsarionas 0:384a04dc912e 1278 };
mitsarionas 0:384a04dc912e 1279 return HelperJsonParseExec(json, jsonSize, table, sizeof(table) / sizeof(table[0]));
mitsarionas 0:384a04dc912e 1280 }
mitsarionas 0:384a04dc912e 1281
mitsarionas 0:384a04dc912e 1282 // -----------------------------------------------------------------------------------------------------------------------
mitsarionas 0:384a04dc912e 1283 Yodiwo_Plegma_Json_e Yodiwo_Plegma_NodeModelType_FromJson(char* json, size_t jsonSize, Yodiwo_Plegma_NodeModelType_t *value)
mitsarionas 0:384a04dc912e 1284 {
mitsarionas 0:384a04dc912e 1285 memset(value, 0, sizeof(Yodiwo_Plegma_NodeModelType_t));
mitsarionas 0:384a04dc912e 1286 ParseTable table[] = {
mitsarionas 0:384a04dc912e 1287 { "Id", 2, Parse_String, NULL, &value->Id },
mitsarionas 0:384a04dc912e 1288 { "Name", 4, Parse_String, NULL, &value->Name },
mitsarionas 0:384a04dc912e 1289 { "Description", 11, Parse_String, NULL, &value->Description },
mitsarionas 0:384a04dc912e 1290 { "Config", 6, NULL, Array_Yodiwo_Plegma_ConfigDescription_FromJson, &value->Config },
mitsarionas 0:384a04dc912e 1291 { "Port", 4, NULL, Array_Yodiwo_Plegma_PortDescription_FromJson, &value->Port },
mitsarionas 0:384a04dc912e 1292 };
mitsarionas 0:384a04dc912e 1293 return HelperJsonParseExec(json, jsonSize, table, sizeof(table) / sizeof(table[0]));
mitsarionas 0:384a04dc912e 1294 }
mitsarionas 0:384a04dc912e 1295
mitsarionas 0:384a04dc912e 1296 // -----------------------------------------------------------------------------------------------------------------------
mitsarionas 0:384a04dc912e 1297 Yodiwo_Plegma_Json_e Yodiwo_Plegma_NodeThingType_FromJson(char* json, size_t jsonSize, Yodiwo_Plegma_NodeThingType_t *value)
mitsarionas 0:384a04dc912e 1298 {
mitsarionas 0:384a04dc912e 1299 memset(value, 0, sizeof(Yodiwo_Plegma_NodeThingType_t));
mitsarionas 0:384a04dc912e 1300 ParseTable table[] = {
mitsarionas 0:384a04dc912e 1301 { "Type", 4, Parse_String, NULL, &value->Type },
mitsarionas 0:384a04dc912e 1302 { "Searchable", 10, Parse_Bool, NULL, &value->Searchable },
mitsarionas 0:384a04dc912e 1303 { "Description", 11, Parse_String, NULL, &value->Description },
mitsarionas 0:384a04dc912e 1304 { "Model", 5, NULL, Array_Yodiwo_Plegma_NodeModelType_FromJson, &value->Model },
mitsarionas 0:384a04dc912e 1305 };
mitsarionas 0:384a04dc912e 1306 return HelperJsonParseExec(json, jsonSize, table, sizeof(table) / sizeof(table[0]));
mitsarionas 0:384a04dc912e 1307 }
mitsarionas 0:384a04dc912e 1308
mitsarionas 0:384a04dc912e 1309 // -----------------------------------------------------------------------------------------------------------------------
mitsarionas 0:384a04dc912e 1310 Yodiwo_Plegma_Json_e Yodiwo_Plegma_NodeInfoReq_FromJson(char* json, size_t jsonSize, Yodiwo_Plegma_NodeInfoReq_t *value)
mitsarionas 0:384a04dc912e 1311 {
mitsarionas 0:384a04dc912e 1312 memset(value, 0, sizeof(Yodiwo_Plegma_NodeInfoReq_t));
mitsarionas 0:384a04dc912e 1313 ParseTable table[] = {
mitsarionas 4:073e23f6718c 1314 { "SeqNo", 5, Parse_Int, NULL, &value->SeqNo },
mitsarionas 0:384a04dc912e 1315 { "RequestedThingType", 18, NULL, Yodiwo_Plegma_NodeThingType_FromJson, &value->RequestedThingType },
mitsarionas 0:384a04dc912e 1316 };
mitsarionas 0:384a04dc912e 1317 return HelperJsonParseExec(json, jsonSize, table, sizeof(table) / sizeof(table[0]));
mitsarionas 0:384a04dc912e 1318 }
mitsarionas 0:384a04dc912e 1319
mitsarionas 0:384a04dc912e 1320 // -----------------------------------------------------------------------------------------------------------------------
mitsarionas 0:384a04dc912e 1321 Yodiwo_Plegma_Json_e Yodiwo_Plegma_NodeInfoRsp_FromJson(char* json, size_t jsonSize, Yodiwo_Plegma_NodeInfoRsp_t *value)
mitsarionas 0:384a04dc912e 1322 {
mitsarionas 0:384a04dc912e 1323 memset(value, 0, sizeof(Yodiwo_Plegma_NodeInfoRsp_t));
mitsarionas 0:384a04dc912e 1324 ParseTable table[] = {
mitsarionas 4:073e23f6718c 1325 { "SeqNo", 5, Parse_Int, NULL, &value->SeqNo },
mitsarionas 0:384a04dc912e 1326 { "Name", 4, Parse_String, NULL, &value->Name },
mitsarionas 0:384a04dc912e 1327 { "Type", 4, Parse_Int, NULL, &value->Type },
mitsarionas 0:384a04dc912e 1328 { "Capabilities", 12, Parse_Int, NULL, &value->Capabilities },
mitsarionas 0:384a04dc912e 1329 { "ThingTypes", 10, NULL, Array_Yodiwo_Plegma_NodeThingType_FromJson, &value->ThingTypes },
mitsarionas 0:384a04dc912e 1330 };
mitsarionas 0:384a04dc912e 1331 return HelperJsonParseExec(json, jsonSize, table, sizeof(table) / sizeof(table[0]));
mitsarionas 0:384a04dc912e 1332 }
mitsarionas 0:384a04dc912e 1333
mitsarionas 0:384a04dc912e 1334 // -----------------------------------------------------------------------------------------------------------------------
mitsarionas 0:384a04dc912e 1335 Yodiwo_Plegma_Json_e Yodiwo_Plegma_ThingsReq_FromJson(char* json, size_t jsonSize, Yodiwo_Plegma_ThingsReq_t *value)
mitsarionas 0:384a04dc912e 1336 {
mitsarionas 0:384a04dc912e 1337 memset(value, 0, sizeof(Yodiwo_Plegma_ThingsReq_t));
mitsarionas 0:384a04dc912e 1338 ParseTable table[] = {
mitsarionas 4:073e23f6718c 1339 { "SeqNo", 5, Parse_Int, NULL, &value->SeqNo },
mitsarionas 0:384a04dc912e 1340 { "Operation", 9, Parse_Int, NULL, &value->Operation },
mitsarionas 0:384a04dc912e 1341 { "ThingKey", 8, Parse_String, NULL, &value->ThingKey },
mitsarionas 0:384a04dc912e 1342 { "Data", 4, NULL, Array_Yodiwo_Plegma_Thing_FromJson, &value->Data },
mitsarionas 0:384a04dc912e 1343 };
mitsarionas 0:384a04dc912e 1344 return HelperJsonParseExec(json, jsonSize, table, sizeof(table) / sizeof(table[0]));
mitsarionas 0:384a04dc912e 1345 }
mitsarionas 0:384a04dc912e 1346
mitsarionas 0:384a04dc912e 1347 // -----------------------------------------------------------------------------------------------------------------------
mitsarionas 0:384a04dc912e 1348 Yodiwo_Plegma_Json_e Yodiwo_Plegma_ThingsRsp_FromJson(char* json, size_t jsonSize, Yodiwo_Plegma_ThingsRsp_t *value)
mitsarionas 0:384a04dc912e 1349 {
mitsarionas 0:384a04dc912e 1350 memset(value, 0, sizeof(Yodiwo_Plegma_ThingsRsp_t));
mitsarionas 0:384a04dc912e 1351 ParseTable table[] = {
mitsarionas 4:073e23f6718c 1352 { "SeqNo", 5, Parse_Int, NULL, &value->SeqNo },
mitsarionas 0:384a04dc912e 1353 { "Operation", 9, Parse_Int, NULL, &value->Operation },
mitsarionas 0:384a04dc912e 1354 { "Status", 6, Parse_Bool, NULL, &value->Status },
mitsarionas 0:384a04dc912e 1355 { "Data", 4, NULL, Array_Yodiwo_Plegma_Thing_FromJson, &value->Data },
mitsarionas 0:384a04dc912e 1356 };
mitsarionas 0:384a04dc912e 1357 return HelperJsonParseExec(json, jsonSize, table, sizeof(table) / sizeof(table[0]));
mitsarionas 0:384a04dc912e 1358 }
mitsarionas 0:384a04dc912e 1359
mitsarionas 0:384a04dc912e 1360 // -----------------------------------------------------------------------------------------------------------------------
mitsarionas 0:384a04dc912e 1361 Yodiwo_Plegma_Json_e Yodiwo_Plegma_PortEvent_FromJson(char* json, size_t jsonSize, Yodiwo_Plegma_PortEvent_t *value)
mitsarionas 0:384a04dc912e 1362 {
mitsarionas 0:384a04dc912e 1363 memset(value, 0, sizeof(Yodiwo_Plegma_PortEvent_t));
mitsarionas 0:384a04dc912e 1364 ParseTable table[] = {
mitsarionas 0:384a04dc912e 1365 { "PortKey", 7, Parse_String, NULL, &value->PortKey },
mitsarionas 0:384a04dc912e 1366 { "State", 5, Parse_String, NULL, &value->State },
mitsarionas 0:384a04dc912e 1367 { "RevNum", 6, Parse_Int, NULL, &value->RevNum },
mitsarionas 0:384a04dc912e 1368 };
mitsarionas 0:384a04dc912e 1369 return HelperJsonParseExec(json, jsonSize, table, sizeof(table) / sizeof(table[0]));
mitsarionas 0:384a04dc912e 1370 }
mitsarionas 0:384a04dc912e 1371
mitsarionas 0:384a04dc912e 1372 // -----------------------------------------------------------------------------------------------------------------------
mitsarionas 0:384a04dc912e 1373 Yodiwo_Plegma_Json_e Yodiwo_Plegma_PortEventMsg_FromJson(char* json, size_t jsonSize, Yodiwo_Plegma_PortEventMsg_t *value)
mitsarionas 0:384a04dc912e 1374 {
mitsarionas 0:384a04dc912e 1375 memset(value, 0, sizeof(Yodiwo_Plegma_PortEventMsg_t));
mitsarionas 0:384a04dc912e 1376 ParseTable table[] = {
mitsarionas 4:073e23f6718c 1377 { "SeqNo", 5, Parse_Int, NULL, &value->SeqNo },
mitsarionas 0:384a04dc912e 1378 { "PortEvents", 10, NULL, Array_Yodiwo_Plegma_PortEvent_FromJson, &value->PortEvents },
mitsarionas 0:384a04dc912e 1379 };
mitsarionas 0:384a04dc912e 1380 return HelperJsonParseExec(json, jsonSize, table, sizeof(table) / sizeof(table[0]));
mitsarionas 0:384a04dc912e 1381 }
mitsarionas 0:384a04dc912e 1382
mitsarionas 0:384a04dc912e 1383 // -----------------------------------------------------------------------------------------------------------------------
mitsarionas 0:384a04dc912e 1384 Yodiwo_Plegma_Json_e Yodiwo_Plegma_PortStateReq_FromJson(char* json, size_t jsonSize, Yodiwo_Plegma_PortStateReq_t *value)
mitsarionas 0:384a04dc912e 1385 {
mitsarionas 0:384a04dc912e 1386 memset(value, 0, sizeof(Yodiwo_Plegma_PortStateReq_t));
mitsarionas 0:384a04dc912e 1387 ParseTable table[] = {
mitsarionas 4:073e23f6718c 1388 { "SeqNo", 5, Parse_Int, NULL, &value->SeqNo },
mitsarionas 0:384a04dc912e 1389 { "Operation", 9, Parse_Int, NULL, &value->Operation },
mitsarionas 0:384a04dc912e 1390 { "PortKeys", 8, NULL, Array_string_FromJson, &value->PortKeys },
mitsarionas 0:384a04dc912e 1391 };
mitsarionas 0:384a04dc912e 1392 return HelperJsonParseExec(json, jsonSize, table, sizeof(table) / sizeof(table[0]));
mitsarionas 0:384a04dc912e 1393 }
mitsarionas 0:384a04dc912e 1394
mitsarionas 0:384a04dc912e 1395 // -----------------------------------------------------------------------------------------------------------------------
mitsarionas 0:384a04dc912e 1396 Yodiwo_Plegma_Json_e Yodiwo_Plegma_PortState_FromJson(char* json, size_t jsonSize, Yodiwo_Plegma_PortState_t *value)
mitsarionas 0:384a04dc912e 1397 {
mitsarionas 0:384a04dc912e 1398 memset(value, 0, sizeof(Yodiwo_Plegma_PortState_t));
mitsarionas 0:384a04dc912e 1399 ParseTable table[] = {
mitsarionas 0:384a04dc912e 1400 { "PortKey", 7, Parse_String, NULL, &value->PortKey },
mitsarionas 0:384a04dc912e 1401 { "State", 5, Parse_String, NULL, &value->State },
mitsarionas 0:384a04dc912e 1402 { "RevNum", 6, Parse_Int, NULL, &value->RevNum },
mitsarionas 0:384a04dc912e 1403 { "IsDeployed", 10, Parse_Bool, NULL, &value->IsDeployed },
mitsarionas 0:384a04dc912e 1404 };
mitsarionas 0:384a04dc912e 1405 return HelperJsonParseExec(json, jsonSize, table, sizeof(table) / sizeof(table[0]));
mitsarionas 0:384a04dc912e 1406 }
mitsarionas 0:384a04dc912e 1407
mitsarionas 0:384a04dc912e 1408 // -----------------------------------------------------------------------------------------------------------------------
mitsarionas 0:384a04dc912e 1409 Yodiwo_Plegma_Json_e Yodiwo_Plegma_PortStateRsp_FromJson(char* json, size_t jsonSize, Yodiwo_Plegma_PortStateRsp_t *value)
mitsarionas 0:384a04dc912e 1410 {
mitsarionas 0:384a04dc912e 1411 memset(value, 0, sizeof(Yodiwo_Plegma_PortStateRsp_t));
mitsarionas 0:384a04dc912e 1412 ParseTable table[] = {
mitsarionas 4:073e23f6718c 1413 { "SeqNo", 5, Parse_Int, NULL, &value->SeqNo },
mitsarionas 0:384a04dc912e 1414 { "Operation", 9, Parse_Int, NULL, &value->Operation },
mitsarionas 0:384a04dc912e 1415 { "PortStates", 10, NULL, Array_Yodiwo_Plegma_PortState_FromJson, &value->PortStates },
mitsarionas 0:384a04dc912e 1416 };
mitsarionas 0:384a04dc912e 1417 return HelperJsonParseExec(json, jsonSize, table, sizeof(table) / sizeof(table[0]));
mitsarionas 0:384a04dc912e 1418 }
mitsarionas 0:384a04dc912e 1419
mitsarionas 0:384a04dc912e 1420 // -----------------------------------------------------------------------------------------------------------------------
mitsarionas 0:384a04dc912e 1421 Yodiwo_Plegma_Json_e Yodiwo_Plegma_ActivePortKeysMsg_FromJson(char* json, size_t jsonSize, Yodiwo_Plegma_ActivePortKeysMsg_t *value)
mitsarionas 0:384a04dc912e 1422 {
mitsarionas 0:384a04dc912e 1423 memset(value, 0, sizeof(Yodiwo_Plegma_ActivePortKeysMsg_t));
mitsarionas 0:384a04dc912e 1424 ParseTable table[] = {
mitsarionas 4:073e23f6718c 1425 { "SeqNo", 5, Parse_Int, NULL, &value->SeqNo },
mitsarionas 0:384a04dc912e 1426 { "ActivePortKeys", 14, NULL, Array_string_FromJson, &value->ActivePortKeys },
mitsarionas 0:384a04dc912e 1427 };
mitsarionas 0:384a04dc912e 1428 return HelperJsonParseExec(json, jsonSize, table, sizeof(table) / sizeof(table[0]));
mitsarionas 0:384a04dc912e 1429 }
mitsarionas 0:384a04dc912e 1430
mitsarionas 0:384a04dc912e 1431 // -----------------------------------------------------------------------------------------------------------------------
mitsarionas 4:073e23f6718c 1432 Yodiwo_Plegma_Json_e Yodiwo_Plegma_NodePairing_PairingNodeGetTokensRequest_FromJson(char* json, size_t jsonSize, Yodiwo_Plegma_NodePairing_PairingNodeGetTokensRequest_t *value)
mitsarionas 0:384a04dc912e 1433 {
mitsarionas 4:073e23f6718c 1434 memset(value, 0, sizeof(Yodiwo_Plegma_NodePairing_PairingNodeGetTokensRequest_t));
mitsarionas 0:384a04dc912e 1435 ParseTable table[] = {
mitsarionas 0:384a04dc912e 1436 { "uuid", 4, Parse_String, NULL, &value->uuid },
mitsarionas 0:384a04dc912e 1437 { "name", 4, Parse_String, NULL, &value->name },
mitsarionas 0:384a04dc912e 1438 };
mitsarionas 0:384a04dc912e 1439 return HelperJsonParseExec(json, jsonSize, table, sizeof(table) / sizeof(table[0]));
mitsarionas 0:384a04dc912e 1440 }
mitsarionas 0:384a04dc912e 1441
mitsarionas 0:384a04dc912e 1442 // -----------------------------------------------------------------------------------------------------------------------
mitsarionas 4:073e23f6718c 1443 Yodiwo_Plegma_Json_e Yodiwo_Plegma_NodePairing_PairingNodeGetKeysRequest_FromJson(char* json, size_t jsonSize, Yodiwo_Plegma_NodePairing_PairingNodeGetKeysRequest_t *value)
mitsarionas 0:384a04dc912e 1444 {
mitsarionas 4:073e23f6718c 1445 memset(value, 0, sizeof(Yodiwo_Plegma_NodePairing_PairingNodeGetKeysRequest_t));
mitsarionas 0:384a04dc912e 1446 ParseTable table[] = {
mitsarionas 0:384a04dc912e 1447 { "uuid", 4, Parse_String, NULL, &value->uuid },
mitsarionas 0:384a04dc912e 1448 { "token1", 6, Parse_String, NULL, &value->token1 },
mitsarionas 0:384a04dc912e 1449 };
mitsarionas 0:384a04dc912e 1450 return HelperJsonParseExec(json, jsonSize, table, sizeof(table) / sizeof(table[0]));
mitsarionas 0:384a04dc912e 1451 }
mitsarionas 0:384a04dc912e 1452
mitsarionas 0:384a04dc912e 1453 // -----------------------------------------------------------------------------------------------------------------------
mitsarionas 4:073e23f6718c 1454 Yodiwo_Plegma_Json_e Yodiwo_Plegma_NodePairing_PairingServerTokensResponse_FromJson(char* json, size_t jsonSize, Yodiwo_Plegma_NodePairing_PairingServerTokensResponse_t *value)
mitsarionas 0:384a04dc912e 1455 {
mitsarionas 4:073e23f6718c 1456 memset(value, 0, sizeof(Yodiwo_Plegma_NodePairing_PairingServerTokensResponse_t));
mitsarionas 0:384a04dc912e 1457 ParseTable table[] = {
mitsarionas 0:384a04dc912e 1458 { "token1", 6, Parse_String, NULL, &value->token1 },
mitsarionas 0:384a04dc912e 1459 { "token2", 6, Parse_String, NULL, &value->token2 },
mitsarionas 0:384a04dc912e 1460 };
mitsarionas 0:384a04dc912e 1461 return HelperJsonParseExec(json, jsonSize, table, sizeof(table) / sizeof(table[0]));
mitsarionas 0:384a04dc912e 1462 }
mitsarionas 0:384a04dc912e 1463
mitsarionas 0:384a04dc912e 1464 // -----------------------------------------------------------------------------------------------------------------------
mitsarionas 4:073e23f6718c 1465 Yodiwo_Plegma_Json_e Yodiwo_Plegma_NodePairing_PairingServerKeysResponse_FromJson(char* json, size_t jsonSize, Yodiwo_Plegma_NodePairing_PairingServerKeysResponse_t *value)
mitsarionas 0:384a04dc912e 1466 {
mitsarionas 4:073e23f6718c 1467 memset(value, 0, sizeof(Yodiwo_Plegma_NodePairing_PairingServerKeysResponse_t));
mitsarionas 0:384a04dc912e 1468 ParseTable table[] = {
mitsarionas 0:384a04dc912e 1469 { "nodeKey", 7, Parse_String, NULL, &value->nodeKey },
mitsarionas 0:384a04dc912e 1470 { "secretKey", 9, Parse_String, NULL, &value->secretKey },
mitsarionas 0:384a04dc912e 1471 };
mitsarionas 0:384a04dc912e 1472 return HelperJsonParseExec(json, jsonSize, table, sizeof(table) / sizeof(table[0]));
mitsarionas 0:384a04dc912e 1473 }
mitsarionas 0:384a04dc912e 1474
mitsarionas 0:384a04dc912e 1475 // -----------------------------------------------------------------------------------------------------------------------
mitsarionas 4:073e23f6718c 1476 Yodiwo_Plegma_Json_e Yodiwo_Plegma_NodePairing_PairingNodePhase1Response_FromJson(char* json, size_t jsonSize, Yodiwo_Plegma_NodePairing_PairingNodePhase1Response_t *value)
mitsarionas 0:384a04dc912e 1477 {
mitsarionas 4:073e23f6718c 1478 memset(value, 0, sizeof(Yodiwo_Plegma_NodePairing_PairingNodePhase1Response_t));
mitsarionas 0:384a04dc912e 1479 ParseTable table[] = {
mitsarionas 0:384a04dc912e 1480 { "userNodeRegistrationUrl", 23, Parse_String, NULL, &value->userNodeRegistrationUrl },
mitsarionas 0:384a04dc912e 1481 { "token2", 6, Parse_String, NULL, &value->token2 },
mitsarionas 0:384a04dc912e 1482 };
mitsarionas 0:384a04dc912e 1483 return HelperJsonParseExec(json, jsonSize, table, sizeof(table) / sizeof(table[0]));
mitsarionas 0:384a04dc912e 1484 }
mitsarionas 4:073e23f6718c 1485
mitsarionas 4:073e23f6718c 1486 // -----------------------------------------------------------------------------------------------------------------------
mitsarionas 4:073e23f6718c 1487 Yodiwo_Plegma_Json_e Yodiwo_Tools_APIGenerator_CNodeConfig_FromJson(char* json, size_t jsonSize, Yodiwo_Tools_APIGenerator_CNodeConfig_t *value)
mitsarionas 4:073e23f6718c 1488 {
mitsarionas 4:073e23f6718c 1489 memset(value, 0, sizeof(Yodiwo_Tools_APIGenerator_CNodeConfig_t));
mitsarionas 4:073e23f6718c 1490 ParseTable table[] = {
mitsarionas 4:073e23f6718c 1491 { "Uuid", 4, Parse_String, NULL, &value->Uuid },
mitsarionas 4:073e23f6718c 1492 { "Name", 4, Parse_String, NULL, &value->Name },
mitsarionas 4:073e23f6718c 1493 { "NodeKey", 7, Parse_String, NULL, &value->NodeKey },
mitsarionas 4:073e23f6718c 1494 { "NodeSecret", 10, Parse_String, NULL, &value->NodeSecret },
mitsarionas 4:073e23f6718c 1495 { "PairingServerUrl", 16, Parse_String, NULL, &value->PairingServerUrl },
mitsarionas 4:073e23f6718c 1496 { "YPChannelServer", 15, Parse_String, NULL, &value->YPChannelServer },
mitsarionas 4:073e23f6718c 1497 { "YPChannelServerPort", 19, Parse_Int, NULL, &value->YPChannelServerPort },
mitsarionas 4:073e23f6718c 1498 { "WebPort", 7, Parse_Int, NULL, &value->WebPort },
mitsarionas 4:073e23f6718c 1499 { "MqttBrokerHostname", 18, Parse_String, NULL, &value->MqttBrokerHostname },
mitsarionas 4:073e23f6718c 1500 { "MqttBrokerPort", 14, Parse_Int, NULL, &value->MqttBrokerPort },
mitsarionas 4:073e23f6718c 1501 { "MqttBrokerCertFile", 18, Parse_String, NULL, &value->MqttBrokerCertFile },
mitsarionas 4:073e23f6718c 1502 };
mitsarionas 4:073e23f6718c 1503 return HelperJsonParseExec(json, jsonSize, table, sizeof(table) / sizeof(table[0]));
mitsarionas 4:073e23f6718c 1504 }
mitsarionas 4:073e23f6718c 1505
mitsarionas 4:073e23f6718c 1506 // -----------------------------------------------------------------------------------------------------------------------
mitsarionas 4:073e23f6718c 1507 Yodiwo_Plegma_Json_e Yodiwo_Tools_APIGenerator_CNodeYConfig_FromJson(char* json, size_t jsonSize, Yodiwo_Tools_APIGenerator_CNodeYConfig_t *value)
mitsarionas 4:073e23f6718c 1508 {
mitsarionas 4:073e23f6718c 1509 memset(value, 0, sizeof(Yodiwo_Tools_APIGenerator_CNodeYConfig_t));
mitsarionas 4:073e23f6718c 1510 ParseTable table[] = {
mitsarionas 4:073e23f6718c 1511 { "ActiveID", 8, Parse_Int, NULL, &value->ActiveID },
mitsarionas 4:073e23f6718c 1512 { "Configs", 7, NULL, Array_Yodiwo_Tools_APIGenerator_CNodeConfig_FromJson, &value->Configs },
mitsarionas 4:073e23f6718c 1513 };
mitsarionas 4:073e23f6718c 1514 return HelperJsonParseExec(json, jsonSize, table, sizeof(table) / sizeof(table[0]));
mitsarionas 4:073e23f6718c 1515 }
mitsarionas 4:073e23f6718c 1516
mitsarionas 4:073e23f6718c 1517