Library for Yodiwo's Plegma API

Committer:
mitsarionas
Date:
Tue Sep 15 10:21:40 2015 +0000
Revision:
3:96b08b5f998f
Parent:
2:855390040d43
Child:
4:073e23f6718c
manual version

Who changed what in which revision?

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