A small memory footprint AMQP implimentation

Dependents:   iothub_client_sample_amqp remote_monitoring simplesample_amqp

Committer:
AzureIoTClient
Date:
Fri Jan 13 18:40:42 2017 -0800
Revision:
16:22a72cf8e416
Parent:
0:6ae2f7bca550
Child:
17:923575db8b2d
1.1.4

Who changed what in which revision?

UserRevisionLine numberNew contents of line
Azure.IoT Build 0:6ae2f7bca550 1
Azure.IoT Build 0:6ae2f7bca550 2
Azure.IoT Build 0:6ae2f7bca550 3 // Copyright (c) Microsoft. All rights reserved.
Azure.IoT Build 0:6ae2f7bca550 4 // Licensed under the MIT license. See LICENSE file in the project root for full license information.
Azure.IoT Build 0:6ae2f7bca550 5
Azure.IoT Build 0:6ae2f7bca550 6 #include <stdlib.h>
Azure.IoT Build 0:6ae2f7bca550 7 #ifdef _CRTDBG_MAP_ALLOC
Azure.IoT Build 0:6ae2f7bca550 8 #include <crtdbg.h>
Azure.IoT Build 0:6ae2f7bca550 9 #endif
Azure.IoT Build 0:6ae2f7bca550 10 #include "azure_uamqp_c/amqpvalue.h"
Azure.IoT Build 0:6ae2f7bca550 11 #include "azure_uamqp_c/amqp_definitions.h"
Azure.IoT Build 0:6ae2f7bca550 12 #include "azure_uamqp_c/amqpalloc.h"
Azure.IoT Build 0:6ae2f7bca550 13 #include <stdlib.h>
Azure.IoT Build 0:6ae2f7bca550 14 #include <stdbool.h>
Azure.IoT Build 0:6ae2f7bca550 15
Azure.IoT Build 0:6ae2f7bca550 16 /* role */
Azure.IoT Build 0:6ae2f7bca550 17
Azure.IoT Build 0:6ae2f7bca550 18 AMQP_VALUE amqpvalue_create_role(role value)
Azure.IoT Build 0:6ae2f7bca550 19 {
Azure.IoT Build 0:6ae2f7bca550 20 return amqpvalue_create_boolean(value);
Azure.IoT Build 0:6ae2f7bca550 21 }
Azure.IoT Build 0:6ae2f7bca550 22
Azure.IoT Build 0:6ae2f7bca550 23 /* sender-settle-mode */
Azure.IoT Build 0:6ae2f7bca550 24
Azure.IoT Build 0:6ae2f7bca550 25 AMQP_VALUE amqpvalue_create_sender_settle_mode(sender_settle_mode value)
Azure.IoT Build 0:6ae2f7bca550 26 {
Azure.IoT Build 0:6ae2f7bca550 27 return amqpvalue_create_ubyte(value);
Azure.IoT Build 0:6ae2f7bca550 28 }
Azure.IoT Build 0:6ae2f7bca550 29
Azure.IoT Build 0:6ae2f7bca550 30 /* receiver-settle-mode */
Azure.IoT Build 0:6ae2f7bca550 31
Azure.IoT Build 0:6ae2f7bca550 32 AMQP_VALUE amqpvalue_create_receiver_settle_mode(receiver_settle_mode value)
Azure.IoT Build 0:6ae2f7bca550 33 {
Azure.IoT Build 0:6ae2f7bca550 34 return amqpvalue_create_ubyte(value);
Azure.IoT Build 0:6ae2f7bca550 35 }
Azure.IoT Build 0:6ae2f7bca550 36
Azure.IoT Build 0:6ae2f7bca550 37 /* handle */
Azure.IoT Build 0:6ae2f7bca550 38
Azure.IoT Build 0:6ae2f7bca550 39 AMQP_VALUE amqpvalue_create_handle(handle value)
Azure.IoT Build 0:6ae2f7bca550 40 {
Azure.IoT Build 0:6ae2f7bca550 41 return amqpvalue_create_uint(value);
Azure.IoT Build 0:6ae2f7bca550 42 }
Azure.IoT Build 0:6ae2f7bca550 43
Azure.IoT Build 0:6ae2f7bca550 44 /* seconds */
Azure.IoT Build 0:6ae2f7bca550 45
Azure.IoT Build 0:6ae2f7bca550 46 AMQP_VALUE amqpvalue_create_seconds(seconds value)
Azure.IoT Build 0:6ae2f7bca550 47 {
Azure.IoT Build 0:6ae2f7bca550 48 return amqpvalue_create_uint(value);
Azure.IoT Build 0:6ae2f7bca550 49 }
Azure.IoT Build 0:6ae2f7bca550 50
Azure.IoT Build 0:6ae2f7bca550 51 /* milliseconds */
Azure.IoT Build 0:6ae2f7bca550 52
Azure.IoT Build 0:6ae2f7bca550 53 AMQP_VALUE amqpvalue_create_milliseconds(milliseconds value)
Azure.IoT Build 0:6ae2f7bca550 54 {
Azure.IoT Build 0:6ae2f7bca550 55 return amqpvalue_create_uint(value);
Azure.IoT Build 0:6ae2f7bca550 56 }
Azure.IoT Build 0:6ae2f7bca550 57
Azure.IoT Build 0:6ae2f7bca550 58 /* delivery-tag */
Azure.IoT Build 0:6ae2f7bca550 59
Azure.IoT Build 0:6ae2f7bca550 60 AMQP_VALUE amqpvalue_create_delivery_tag(delivery_tag value)
Azure.IoT Build 0:6ae2f7bca550 61 {
Azure.IoT Build 0:6ae2f7bca550 62 return amqpvalue_create_binary(value);
Azure.IoT Build 0:6ae2f7bca550 63 }
Azure.IoT Build 0:6ae2f7bca550 64
Azure.IoT Build 0:6ae2f7bca550 65 /* sequence-no */
Azure.IoT Build 0:6ae2f7bca550 66
Azure.IoT Build 0:6ae2f7bca550 67 AMQP_VALUE amqpvalue_create_sequence_no(sequence_no value)
Azure.IoT Build 0:6ae2f7bca550 68 {
Azure.IoT Build 0:6ae2f7bca550 69 return amqpvalue_create_uint(value);
Azure.IoT Build 0:6ae2f7bca550 70 }
Azure.IoT Build 0:6ae2f7bca550 71
Azure.IoT Build 0:6ae2f7bca550 72 /* delivery-number */
Azure.IoT Build 0:6ae2f7bca550 73
Azure.IoT Build 0:6ae2f7bca550 74 AMQP_VALUE amqpvalue_create_delivery_number(delivery_number value)
Azure.IoT Build 0:6ae2f7bca550 75 {
Azure.IoT Build 0:6ae2f7bca550 76 return amqpvalue_create_sequence_no(value);
Azure.IoT Build 0:6ae2f7bca550 77 }
Azure.IoT Build 0:6ae2f7bca550 78
Azure.IoT Build 0:6ae2f7bca550 79 /* transfer-number */
Azure.IoT Build 0:6ae2f7bca550 80
Azure.IoT Build 0:6ae2f7bca550 81 AMQP_VALUE amqpvalue_create_transfer_number(transfer_number value)
Azure.IoT Build 0:6ae2f7bca550 82 {
Azure.IoT Build 0:6ae2f7bca550 83 return amqpvalue_create_sequence_no(value);
Azure.IoT Build 0:6ae2f7bca550 84 }
Azure.IoT Build 0:6ae2f7bca550 85
Azure.IoT Build 0:6ae2f7bca550 86 /* message-format */
Azure.IoT Build 0:6ae2f7bca550 87
Azure.IoT Build 0:6ae2f7bca550 88 AMQP_VALUE amqpvalue_create_message_format(message_format value)
Azure.IoT Build 0:6ae2f7bca550 89 {
Azure.IoT Build 0:6ae2f7bca550 90 return amqpvalue_create_uint(value);
Azure.IoT Build 0:6ae2f7bca550 91 }
Azure.IoT Build 0:6ae2f7bca550 92
Azure.IoT Build 0:6ae2f7bca550 93 /* ietf-language-tag */
Azure.IoT Build 0:6ae2f7bca550 94
Azure.IoT Build 0:6ae2f7bca550 95 AMQP_VALUE amqpvalue_create_ietf_language_tag(ietf_language_tag value)
Azure.IoT Build 0:6ae2f7bca550 96 {
Azure.IoT Build 0:6ae2f7bca550 97 return amqpvalue_create_symbol(value);
Azure.IoT Build 0:6ae2f7bca550 98 }
Azure.IoT Build 0:6ae2f7bca550 99
Azure.IoT Build 0:6ae2f7bca550 100 /* fields */
Azure.IoT Build 0:6ae2f7bca550 101
Azure.IoT Build 0:6ae2f7bca550 102 AMQP_VALUE amqpvalue_create_fields(AMQP_VALUE value)
Azure.IoT Build 0:6ae2f7bca550 103 {
Azure.IoT Build 0:6ae2f7bca550 104 return amqpvalue_clone(value);
Azure.IoT Build 0:6ae2f7bca550 105 }
Azure.IoT Build 0:6ae2f7bca550 106
Azure.IoT Build 0:6ae2f7bca550 107 /* error */
Azure.IoT Build 0:6ae2f7bca550 108
Azure.IoT Build 0:6ae2f7bca550 109 typedef struct ERROR_INSTANCE_TAG
Azure.IoT Build 0:6ae2f7bca550 110 {
Azure.IoT Build 0:6ae2f7bca550 111 AMQP_VALUE composite_value;
Azure.IoT Build 0:6ae2f7bca550 112 } ERROR_INSTANCE;
Azure.IoT Build 0:6ae2f7bca550 113
Azure.IoT Build 0:6ae2f7bca550 114 static ERROR_HANDLE error_create_internal(void)
Azure.IoT Build 0:6ae2f7bca550 115 {
Azure.IoT Build 0:6ae2f7bca550 116 ERROR_INSTANCE* error_instance = (ERROR_INSTANCE*)amqpalloc_malloc(sizeof(ERROR_INSTANCE));
Azure.IoT Build 0:6ae2f7bca550 117 if (error_instance != NULL)
Azure.IoT Build 0:6ae2f7bca550 118 {
Azure.IoT Build 0:6ae2f7bca550 119 error_instance->composite_value = NULL;
Azure.IoT Build 0:6ae2f7bca550 120 }
Azure.IoT Build 0:6ae2f7bca550 121
Azure.IoT Build 0:6ae2f7bca550 122 return error_instance;
Azure.IoT Build 0:6ae2f7bca550 123 }
Azure.IoT Build 0:6ae2f7bca550 124
Azure.IoT Build 0:6ae2f7bca550 125 ERROR_HANDLE error_create(const char* condition_value)
Azure.IoT Build 0:6ae2f7bca550 126 {
Azure.IoT Build 0:6ae2f7bca550 127 ERROR_INSTANCE* error_instance = (ERROR_INSTANCE*)amqpalloc_malloc(sizeof(ERROR_INSTANCE));
Azure.IoT Build 0:6ae2f7bca550 128 if (error_instance != NULL)
Azure.IoT Build 0:6ae2f7bca550 129 {
Azure.IoT Build 0:6ae2f7bca550 130 error_instance->composite_value = amqpvalue_create_composite_with_ulong_descriptor(29);
Azure.IoT Build 0:6ae2f7bca550 131 if (error_instance->composite_value == NULL)
Azure.IoT Build 0:6ae2f7bca550 132 {
Azure.IoT Build 0:6ae2f7bca550 133 amqpalloc_free(error_instance);
Azure.IoT Build 0:6ae2f7bca550 134 error_instance = NULL;
Azure.IoT Build 0:6ae2f7bca550 135 }
Azure.IoT Build 0:6ae2f7bca550 136 else
Azure.IoT Build 0:6ae2f7bca550 137 {
Azure.IoT Build 0:6ae2f7bca550 138 AMQP_VALUE condition_amqp_value;
Azure.IoT Build 0:6ae2f7bca550 139 int result = 0;
Azure.IoT Build 0:6ae2f7bca550 140
Azure.IoT Build 0:6ae2f7bca550 141 condition_amqp_value = amqpvalue_create_symbol(condition_value);
Azure.IoT Build 0:6ae2f7bca550 142 if ((result == 0) && (amqpvalue_set_composite_item(error_instance->composite_value, 0, condition_amqp_value) != 0))
Azure.IoT Build 0:6ae2f7bca550 143 {
Azure.IoT Build 0:6ae2f7bca550 144 result = __LINE__;
Azure.IoT Build 0:6ae2f7bca550 145 }
Azure.IoT Build 0:6ae2f7bca550 146
Azure.IoT Build 0:6ae2f7bca550 147 amqpvalue_destroy(condition_amqp_value);
Azure.IoT Build 0:6ae2f7bca550 148 }
Azure.IoT Build 0:6ae2f7bca550 149 }
Azure.IoT Build 0:6ae2f7bca550 150
Azure.IoT Build 0:6ae2f7bca550 151 return error_instance;
Azure.IoT Build 0:6ae2f7bca550 152 }
Azure.IoT Build 0:6ae2f7bca550 153
Azure.IoT Build 0:6ae2f7bca550 154 ERROR_HANDLE error_clone(ERROR_HANDLE value)
Azure.IoT Build 0:6ae2f7bca550 155 {
Azure.IoT Build 0:6ae2f7bca550 156 ERROR_INSTANCE* error_instance = (ERROR_INSTANCE*)amqpalloc_malloc(sizeof(ERROR_INSTANCE));
Azure.IoT Build 0:6ae2f7bca550 157 if (error_instance != NULL)
Azure.IoT Build 0:6ae2f7bca550 158 {
Azure.IoT Build 0:6ae2f7bca550 159 error_instance->composite_value = amqpvalue_clone(((ERROR_INSTANCE*)value)->composite_value);
Azure.IoT Build 0:6ae2f7bca550 160 if (error_instance->composite_value == NULL)
Azure.IoT Build 0:6ae2f7bca550 161 {
Azure.IoT Build 0:6ae2f7bca550 162 amqpalloc_free(error_instance);
Azure.IoT Build 0:6ae2f7bca550 163 error_instance = NULL;
Azure.IoT Build 0:6ae2f7bca550 164 }
Azure.IoT Build 0:6ae2f7bca550 165 }
Azure.IoT Build 0:6ae2f7bca550 166
Azure.IoT Build 0:6ae2f7bca550 167 return error_instance;
Azure.IoT Build 0:6ae2f7bca550 168 }
Azure.IoT Build 0:6ae2f7bca550 169
Azure.IoT Build 0:6ae2f7bca550 170 void error_destroy(ERROR_HANDLE error)
Azure.IoT Build 0:6ae2f7bca550 171 {
Azure.IoT Build 0:6ae2f7bca550 172 if (error != NULL)
Azure.IoT Build 0:6ae2f7bca550 173 {
Azure.IoT Build 0:6ae2f7bca550 174 ERROR_INSTANCE* error_instance = (ERROR_INSTANCE*)error;
Azure.IoT Build 0:6ae2f7bca550 175 amqpvalue_destroy(error_instance->composite_value);
Azure.IoT Build 0:6ae2f7bca550 176 amqpalloc_free(error_instance);
Azure.IoT Build 0:6ae2f7bca550 177 }
Azure.IoT Build 0:6ae2f7bca550 178 }
Azure.IoT Build 0:6ae2f7bca550 179
Azure.IoT Build 0:6ae2f7bca550 180 AMQP_VALUE amqpvalue_create_error(ERROR_HANDLE error)
Azure.IoT Build 0:6ae2f7bca550 181 {
Azure.IoT Build 0:6ae2f7bca550 182 AMQP_VALUE result;
Azure.IoT Build 0:6ae2f7bca550 183
Azure.IoT Build 0:6ae2f7bca550 184 if (error == NULL)
Azure.IoT Build 0:6ae2f7bca550 185 {
Azure.IoT Build 0:6ae2f7bca550 186 result = NULL;
Azure.IoT Build 0:6ae2f7bca550 187 }
Azure.IoT Build 0:6ae2f7bca550 188 else
Azure.IoT Build 0:6ae2f7bca550 189 {
Azure.IoT Build 0:6ae2f7bca550 190 ERROR_INSTANCE* error_instance = (ERROR_INSTANCE*)error;
Azure.IoT Build 0:6ae2f7bca550 191 result = amqpvalue_clone(error_instance->composite_value);
Azure.IoT Build 0:6ae2f7bca550 192 }
Azure.IoT Build 0:6ae2f7bca550 193
Azure.IoT Build 0:6ae2f7bca550 194 return result;
Azure.IoT Build 0:6ae2f7bca550 195 }
Azure.IoT Build 0:6ae2f7bca550 196
Azure.IoT Build 0:6ae2f7bca550 197 bool is_error_type_by_descriptor(AMQP_VALUE descriptor)
Azure.IoT Build 0:6ae2f7bca550 198 {
Azure.IoT Build 0:6ae2f7bca550 199 bool result;
Azure.IoT Build 0:6ae2f7bca550 200
Azure.IoT Build 0:6ae2f7bca550 201 uint64_t descriptor_ulong;
Azure.IoT Build 0:6ae2f7bca550 202 if ((amqpvalue_get_ulong(descriptor, &descriptor_ulong) == 0) &&
Azure.IoT Build 0:6ae2f7bca550 203 (descriptor_ulong == 29))
Azure.IoT Build 0:6ae2f7bca550 204 {
Azure.IoT Build 0:6ae2f7bca550 205 result = true;
Azure.IoT Build 0:6ae2f7bca550 206 }
Azure.IoT Build 0:6ae2f7bca550 207 else
Azure.IoT Build 0:6ae2f7bca550 208 {
Azure.IoT Build 0:6ae2f7bca550 209 result = false;
Azure.IoT Build 0:6ae2f7bca550 210 }
Azure.IoT Build 0:6ae2f7bca550 211
Azure.IoT Build 0:6ae2f7bca550 212 return result;
Azure.IoT Build 0:6ae2f7bca550 213 }
Azure.IoT Build 0:6ae2f7bca550 214
Azure.IoT Build 0:6ae2f7bca550 215
Azure.IoT Build 0:6ae2f7bca550 216 int amqpvalue_get_error(AMQP_VALUE value, ERROR_HANDLE* error_handle)
Azure.IoT Build 0:6ae2f7bca550 217 {
Azure.IoT Build 0:6ae2f7bca550 218 int result;
Azure.IoT Build 0:6ae2f7bca550 219 ERROR_INSTANCE* error_instance = (ERROR_INSTANCE*)error_create_internal();
Azure.IoT Build 0:6ae2f7bca550 220 *error_handle = error_instance;
Azure.IoT Build 0:6ae2f7bca550 221 if (*error_handle == NULL)
Azure.IoT Build 0:6ae2f7bca550 222 {
Azure.IoT Build 0:6ae2f7bca550 223 result = __LINE__;
Azure.IoT Build 0:6ae2f7bca550 224 }
Azure.IoT Build 0:6ae2f7bca550 225 else
Azure.IoT Build 0:6ae2f7bca550 226 {
Azure.IoT Build 0:6ae2f7bca550 227 AMQP_VALUE list_value = amqpvalue_get_inplace_described_value(value);
Azure.IoT Build 0:6ae2f7bca550 228 if (list_value == NULL)
Azure.IoT Build 0:6ae2f7bca550 229 {
Azure.IoT Build 0:6ae2f7bca550 230 error_destroy(*error_handle);
Azure.IoT Build 0:6ae2f7bca550 231 result = __LINE__;
Azure.IoT Build 0:6ae2f7bca550 232 }
Azure.IoT Build 0:6ae2f7bca550 233 else
Azure.IoT Build 0:6ae2f7bca550 234 {
Azure.IoT Build 0:6ae2f7bca550 235 do
Azure.IoT Build 0:6ae2f7bca550 236 {
Azure.IoT Build 0:6ae2f7bca550 237 AMQP_VALUE item_value;
Azure.IoT Build 0:6ae2f7bca550 238 /* condition */
Azure.IoT Build 0:6ae2f7bca550 239 item_value = amqpvalue_get_list_item(list_value, 0);
Azure.IoT Build 0:6ae2f7bca550 240 if (item_value == NULL)
Azure.IoT Build 0:6ae2f7bca550 241 {
Azure.IoT Build 0:6ae2f7bca550 242 {
Azure.IoT Build 0:6ae2f7bca550 243 error_destroy(*error_handle);
Azure.IoT Build 0:6ae2f7bca550 244 result = __LINE__;
Azure.IoT Build 0:6ae2f7bca550 245 break;
Azure.IoT Build 0:6ae2f7bca550 246 }
Azure.IoT Build 0:6ae2f7bca550 247 }
Azure.IoT Build 0:6ae2f7bca550 248 else
Azure.IoT Build 0:6ae2f7bca550 249 {
Azure.IoT Build 0:6ae2f7bca550 250 const char* condition;
Azure.IoT Build 0:6ae2f7bca550 251 if (amqpvalue_get_symbol(item_value, &condition) != 0)
Azure.IoT Build 0:6ae2f7bca550 252 {
Azure.IoT Build 0:6ae2f7bca550 253 error_destroy(*error_handle);
Azure.IoT Build 0:6ae2f7bca550 254 result = __LINE__;
Azure.IoT Build 0:6ae2f7bca550 255 break;
Azure.IoT Build 0:6ae2f7bca550 256 }
Azure.IoT Build 0:6ae2f7bca550 257
Azure.IoT Build 0:6ae2f7bca550 258 amqpvalue_destroy(item_value);
Azure.IoT Build 0:6ae2f7bca550 259 }
Azure.IoT Build 0:6ae2f7bca550 260 /* description */
Azure.IoT Build 0:6ae2f7bca550 261 item_value = amqpvalue_get_list_item(list_value, 1);
Azure.IoT Build 0:6ae2f7bca550 262 if (item_value == NULL)
Azure.IoT Build 0:6ae2f7bca550 263 {
Azure.IoT Build 0:6ae2f7bca550 264 /* do nothing */
Azure.IoT Build 0:6ae2f7bca550 265 }
Azure.IoT Build 0:6ae2f7bca550 266 else
Azure.IoT Build 0:6ae2f7bca550 267 {
Azure.IoT Build 0:6ae2f7bca550 268 const char* description;
Azure.IoT Build 0:6ae2f7bca550 269 if (amqpvalue_get_string(item_value, &description) != 0)
Azure.IoT Build 0:6ae2f7bca550 270 {
Azure.IoT Build 0:6ae2f7bca550 271 if (amqpvalue_get_type(item_value) != AMQP_TYPE_NULL)
Azure.IoT Build 0:6ae2f7bca550 272 {
Azure.IoT Build 0:6ae2f7bca550 273 error_destroy(*error_handle);
Azure.IoT Build 0:6ae2f7bca550 274 result = __LINE__;
Azure.IoT Build 0:6ae2f7bca550 275 break;
Azure.IoT Build 0:6ae2f7bca550 276 }
Azure.IoT Build 0:6ae2f7bca550 277 }
Azure.IoT Build 0:6ae2f7bca550 278
Azure.IoT Build 0:6ae2f7bca550 279 amqpvalue_destroy(item_value);
Azure.IoT Build 0:6ae2f7bca550 280 }
Azure.IoT Build 0:6ae2f7bca550 281 /* info */
Azure.IoT Build 0:6ae2f7bca550 282 item_value = amqpvalue_get_list_item(list_value, 2);
Azure.IoT Build 0:6ae2f7bca550 283 if (item_value == NULL)
Azure.IoT Build 0:6ae2f7bca550 284 {
Azure.IoT Build 0:6ae2f7bca550 285 /* do nothing */
Azure.IoT Build 0:6ae2f7bca550 286 }
Azure.IoT Build 0:6ae2f7bca550 287 else
Azure.IoT Build 0:6ae2f7bca550 288 {
Azure.IoT Build 0:6ae2f7bca550 289 fields info;
Azure.IoT Build 0:6ae2f7bca550 290 if (amqpvalue_get_fields(item_value, &info) != 0)
Azure.IoT Build 0:6ae2f7bca550 291 {
Azure.IoT Build 0:6ae2f7bca550 292 if (amqpvalue_get_type(item_value) != AMQP_TYPE_NULL)
Azure.IoT Build 0:6ae2f7bca550 293 {
Azure.IoT Build 0:6ae2f7bca550 294 error_destroy(*error_handle);
Azure.IoT Build 0:6ae2f7bca550 295 result = __LINE__;
Azure.IoT Build 0:6ae2f7bca550 296 break;
Azure.IoT Build 0:6ae2f7bca550 297 }
Azure.IoT Build 0:6ae2f7bca550 298 }
Azure.IoT Build 0:6ae2f7bca550 299
Azure.IoT Build 0:6ae2f7bca550 300 amqpvalue_destroy(item_value);
Azure.IoT Build 0:6ae2f7bca550 301 }
Azure.IoT Build 0:6ae2f7bca550 302
Azure.IoT Build 0:6ae2f7bca550 303 error_instance->composite_value = amqpvalue_clone(value);
Azure.IoT Build 0:6ae2f7bca550 304
Azure.IoT Build 0:6ae2f7bca550 305 result = 0;
Azure.IoT Build 0:6ae2f7bca550 306 } while (0);
Azure.IoT Build 0:6ae2f7bca550 307 }
Azure.IoT Build 0:6ae2f7bca550 308 }
Azure.IoT Build 0:6ae2f7bca550 309
Azure.IoT Build 0:6ae2f7bca550 310 return result;
Azure.IoT Build 0:6ae2f7bca550 311 }
Azure.IoT Build 0:6ae2f7bca550 312
Azure.IoT Build 0:6ae2f7bca550 313 int error_get_condition(ERROR_HANDLE error, const char** condition_value)
Azure.IoT Build 0:6ae2f7bca550 314 {
Azure.IoT Build 0:6ae2f7bca550 315 int result;
Azure.IoT Build 0:6ae2f7bca550 316
Azure.IoT Build 0:6ae2f7bca550 317 if (error == NULL)
Azure.IoT Build 0:6ae2f7bca550 318 {
Azure.IoT Build 0:6ae2f7bca550 319 result = __LINE__;
Azure.IoT Build 0:6ae2f7bca550 320 }
Azure.IoT Build 0:6ae2f7bca550 321 else
Azure.IoT Build 0:6ae2f7bca550 322 {
Azure.IoT Build 0:6ae2f7bca550 323 ERROR_INSTANCE* error_instance = (ERROR_INSTANCE*)error;
Azure.IoT Build 0:6ae2f7bca550 324 AMQP_VALUE item_value = amqpvalue_get_composite_item_in_place(error_instance->composite_value, 0);
Azure.IoT Build 0:6ae2f7bca550 325 if (item_value == NULL)
Azure.IoT Build 0:6ae2f7bca550 326 {
Azure.IoT Build 0:6ae2f7bca550 327 result = __LINE__;
Azure.IoT Build 0:6ae2f7bca550 328 }
Azure.IoT Build 0:6ae2f7bca550 329 else
Azure.IoT Build 0:6ae2f7bca550 330 {
Azure.IoT Build 0:6ae2f7bca550 331 if (amqpvalue_get_symbol(item_value, condition_value) != 0)
Azure.IoT Build 0:6ae2f7bca550 332 {
AzureIoTClient 16:22a72cf8e416 333 result = __LINE__;
Azure.IoT Build 0:6ae2f7bca550 334 }
Azure.IoT Build 0:6ae2f7bca550 335 else
Azure.IoT Build 0:6ae2f7bca550 336 {
Azure.IoT Build 0:6ae2f7bca550 337 result = 0;
Azure.IoT Build 0:6ae2f7bca550 338 }
Azure.IoT Build 0:6ae2f7bca550 339 }
Azure.IoT Build 0:6ae2f7bca550 340 }
Azure.IoT Build 0:6ae2f7bca550 341
Azure.IoT Build 0:6ae2f7bca550 342 return result;
Azure.IoT Build 0:6ae2f7bca550 343 }
Azure.IoT Build 0:6ae2f7bca550 344
Azure.IoT Build 0:6ae2f7bca550 345 int error_set_condition(ERROR_HANDLE error, const char* condition_value)
Azure.IoT Build 0:6ae2f7bca550 346 {
Azure.IoT Build 0:6ae2f7bca550 347 int result;
Azure.IoT Build 0:6ae2f7bca550 348
Azure.IoT Build 0:6ae2f7bca550 349 if (error == NULL)
Azure.IoT Build 0:6ae2f7bca550 350 {
Azure.IoT Build 0:6ae2f7bca550 351 result = __LINE__;
Azure.IoT Build 0:6ae2f7bca550 352 }
Azure.IoT Build 0:6ae2f7bca550 353 else
Azure.IoT Build 0:6ae2f7bca550 354 {
Azure.IoT Build 0:6ae2f7bca550 355 ERROR_INSTANCE* error_instance = (ERROR_INSTANCE*)error;
Azure.IoT Build 0:6ae2f7bca550 356 AMQP_VALUE condition_amqp_value = amqpvalue_create_symbol(condition_value);
Azure.IoT Build 0:6ae2f7bca550 357 if (condition_amqp_value == NULL)
Azure.IoT Build 0:6ae2f7bca550 358 {
Azure.IoT Build 0:6ae2f7bca550 359 result = __LINE__;
Azure.IoT Build 0:6ae2f7bca550 360 }
Azure.IoT Build 0:6ae2f7bca550 361 else
Azure.IoT Build 0:6ae2f7bca550 362 {
Azure.IoT Build 0:6ae2f7bca550 363 if (amqpvalue_set_composite_item(error_instance->composite_value, 0, condition_amqp_value) != 0)
Azure.IoT Build 0:6ae2f7bca550 364 {
Azure.IoT Build 0:6ae2f7bca550 365 result = __LINE__;
Azure.IoT Build 0:6ae2f7bca550 366 }
Azure.IoT Build 0:6ae2f7bca550 367 else
Azure.IoT Build 0:6ae2f7bca550 368 {
Azure.IoT Build 0:6ae2f7bca550 369 result = 0;
Azure.IoT Build 0:6ae2f7bca550 370 }
Azure.IoT Build 0:6ae2f7bca550 371
Azure.IoT Build 0:6ae2f7bca550 372 amqpvalue_destroy(condition_amqp_value);
Azure.IoT Build 0:6ae2f7bca550 373 }
Azure.IoT Build 0:6ae2f7bca550 374 }
Azure.IoT Build 0:6ae2f7bca550 375
Azure.IoT Build 0:6ae2f7bca550 376 return result;
Azure.IoT Build 0:6ae2f7bca550 377 }
Azure.IoT Build 0:6ae2f7bca550 378
Azure.IoT Build 0:6ae2f7bca550 379 int error_get_description(ERROR_HANDLE error, const char** description_value)
Azure.IoT Build 0:6ae2f7bca550 380 {
Azure.IoT Build 0:6ae2f7bca550 381 int result;
Azure.IoT Build 0:6ae2f7bca550 382
Azure.IoT Build 0:6ae2f7bca550 383 if (error == NULL)
Azure.IoT Build 0:6ae2f7bca550 384 {
Azure.IoT Build 0:6ae2f7bca550 385 result = __LINE__;
Azure.IoT Build 0:6ae2f7bca550 386 }
Azure.IoT Build 0:6ae2f7bca550 387 else
Azure.IoT Build 0:6ae2f7bca550 388 {
Azure.IoT Build 0:6ae2f7bca550 389 ERROR_INSTANCE* error_instance = (ERROR_INSTANCE*)error;
Azure.IoT Build 0:6ae2f7bca550 390 AMQP_VALUE item_value = amqpvalue_get_composite_item_in_place(error_instance->composite_value, 1);
Azure.IoT Build 0:6ae2f7bca550 391 if (item_value == NULL)
Azure.IoT Build 0:6ae2f7bca550 392 {
Azure.IoT Build 0:6ae2f7bca550 393 result = __LINE__;
Azure.IoT Build 0:6ae2f7bca550 394 }
Azure.IoT Build 0:6ae2f7bca550 395 else
Azure.IoT Build 0:6ae2f7bca550 396 {
Azure.IoT Build 0:6ae2f7bca550 397 if (amqpvalue_get_string(item_value, description_value) != 0)
Azure.IoT Build 0:6ae2f7bca550 398 {
AzureIoTClient 16:22a72cf8e416 399 result = __LINE__;
Azure.IoT Build 0:6ae2f7bca550 400 }
Azure.IoT Build 0:6ae2f7bca550 401 else
Azure.IoT Build 0:6ae2f7bca550 402 {
Azure.IoT Build 0:6ae2f7bca550 403 result = 0;
Azure.IoT Build 0:6ae2f7bca550 404 }
Azure.IoT Build 0:6ae2f7bca550 405 }
Azure.IoT Build 0:6ae2f7bca550 406 }
Azure.IoT Build 0:6ae2f7bca550 407
Azure.IoT Build 0:6ae2f7bca550 408 return result;
Azure.IoT Build 0:6ae2f7bca550 409 }
Azure.IoT Build 0:6ae2f7bca550 410
Azure.IoT Build 0:6ae2f7bca550 411 int error_set_description(ERROR_HANDLE error, const char* description_value)
Azure.IoT Build 0:6ae2f7bca550 412 {
Azure.IoT Build 0:6ae2f7bca550 413 int result;
Azure.IoT Build 0:6ae2f7bca550 414
Azure.IoT Build 0:6ae2f7bca550 415 if (error == NULL)
Azure.IoT Build 0:6ae2f7bca550 416 {
Azure.IoT Build 0:6ae2f7bca550 417 result = __LINE__;
Azure.IoT Build 0:6ae2f7bca550 418 }
Azure.IoT Build 0:6ae2f7bca550 419 else
Azure.IoT Build 0:6ae2f7bca550 420 {
Azure.IoT Build 0:6ae2f7bca550 421 ERROR_INSTANCE* error_instance = (ERROR_INSTANCE*)error;
Azure.IoT Build 0:6ae2f7bca550 422 AMQP_VALUE description_amqp_value = amqpvalue_create_string(description_value);
Azure.IoT Build 0:6ae2f7bca550 423 if (description_amqp_value == NULL)
Azure.IoT Build 0:6ae2f7bca550 424 {
Azure.IoT Build 0:6ae2f7bca550 425 result = __LINE__;
Azure.IoT Build 0:6ae2f7bca550 426 }
Azure.IoT Build 0:6ae2f7bca550 427 else
Azure.IoT Build 0:6ae2f7bca550 428 {
Azure.IoT Build 0:6ae2f7bca550 429 if (amqpvalue_set_composite_item(error_instance->composite_value, 1, description_amqp_value) != 0)
Azure.IoT Build 0:6ae2f7bca550 430 {
Azure.IoT Build 0:6ae2f7bca550 431 result = __LINE__;
Azure.IoT Build 0:6ae2f7bca550 432 }
Azure.IoT Build 0:6ae2f7bca550 433 else
Azure.IoT Build 0:6ae2f7bca550 434 {
Azure.IoT Build 0:6ae2f7bca550 435 result = 0;
Azure.IoT Build 0:6ae2f7bca550 436 }
Azure.IoT Build 0:6ae2f7bca550 437
Azure.IoT Build 0:6ae2f7bca550 438 amqpvalue_destroy(description_amqp_value);
Azure.IoT Build 0:6ae2f7bca550 439 }
Azure.IoT Build 0:6ae2f7bca550 440 }
Azure.IoT Build 0:6ae2f7bca550 441
Azure.IoT Build 0:6ae2f7bca550 442 return result;
Azure.IoT Build 0:6ae2f7bca550 443 }
Azure.IoT Build 0:6ae2f7bca550 444
Azure.IoT Build 0:6ae2f7bca550 445 int error_get_info(ERROR_HANDLE error, fields* info_value)
Azure.IoT Build 0:6ae2f7bca550 446 {
Azure.IoT Build 0:6ae2f7bca550 447 int result;
Azure.IoT Build 0:6ae2f7bca550 448
Azure.IoT Build 0:6ae2f7bca550 449 if (error == NULL)
Azure.IoT Build 0:6ae2f7bca550 450 {
Azure.IoT Build 0:6ae2f7bca550 451 result = __LINE__;
Azure.IoT Build 0:6ae2f7bca550 452 }
Azure.IoT Build 0:6ae2f7bca550 453 else
Azure.IoT Build 0:6ae2f7bca550 454 {
Azure.IoT Build 0:6ae2f7bca550 455 ERROR_INSTANCE* error_instance = (ERROR_INSTANCE*)error;
Azure.IoT Build 0:6ae2f7bca550 456 AMQP_VALUE item_value = amqpvalue_get_composite_item_in_place(error_instance->composite_value, 2);
Azure.IoT Build 0:6ae2f7bca550 457 if (item_value == NULL)
Azure.IoT Build 0:6ae2f7bca550 458 {
Azure.IoT Build 0:6ae2f7bca550 459 result = __LINE__;
Azure.IoT Build 0:6ae2f7bca550 460 }
Azure.IoT Build 0:6ae2f7bca550 461 else
Azure.IoT Build 0:6ae2f7bca550 462 {
Azure.IoT Build 0:6ae2f7bca550 463 if (amqpvalue_get_fields(item_value, info_value) != 0)
Azure.IoT Build 0:6ae2f7bca550 464 {
AzureIoTClient 16:22a72cf8e416 465 result = __LINE__;
Azure.IoT Build 0:6ae2f7bca550 466 }
Azure.IoT Build 0:6ae2f7bca550 467 else
Azure.IoT Build 0:6ae2f7bca550 468 {
Azure.IoT Build 0:6ae2f7bca550 469 result = 0;
Azure.IoT Build 0:6ae2f7bca550 470 }
Azure.IoT Build 0:6ae2f7bca550 471 }
Azure.IoT Build 0:6ae2f7bca550 472 }
Azure.IoT Build 0:6ae2f7bca550 473
Azure.IoT Build 0:6ae2f7bca550 474 return result;
Azure.IoT Build 0:6ae2f7bca550 475 }
Azure.IoT Build 0:6ae2f7bca550 476
Azure.IoT Build 0:6ae2f7bca550 477 int error_set_info(ERROR_HANDLE error, fields info_value)
Azure.IoT Build 0:6ae2f7bca550 478 {
Azure.IoT Build 0:6ae2f7bca550 479 int result;
Azure.IoT Build 0:6ae2f7bca550 480
Azure.IoT Build 0:6ae2f7bca550 481 if (error == NULL)
Azure.IoT Build 0:6ae2f7bca550 482 {
Azure.IoT Build 0:6ae2f7bca550 483 result = __LINE__;
Azure.IoT Build 0:6ae2f7bca550 484 }
Azure.IoT Build 0:6ae2f7bca550 485 else
Azure.IoT Build 0:6ae2f7bca550 486 {
Azure.IoT Build 0:6ae2f7bca550 487 ERROR_INSTANCE* error_instance = (ERROR_INSTANCE*)error;
Azure.IoT Build 0:6ae2f7bca550 488 AMQP_VALUE info_amqp_value = amqpvalue_create_fields(info_value);
Azure.IoT Build 0:6ae2f7bca550 489 if (info_amqp_value == NULL)
Azure.IoT Build 0:6ae2f7bca550 490 {
Azure.IoT Build 0:6ae2f7bca550 491 result = __LINE__;
Azure.IoT Build 0:6ae2f7bca550 492 }
Azure.IoT Build 0:6ae2f7bca550 493 else
Azure.IoT Build 0:6ae2f7bca550 494 {
Azure.IoT Build 0:6ae2f7bca550 495 if (amqpvalue_set_composite_item(error_instance->composite_value, 2, info_amqp_value) != 0)
Azure.IoT Build 0:6ae2f7bca550 496 {
Azure.IoT Build 0:6ae2f7bca550 497 result = __LINE__;
Azure.IoT Build 0:6ae2f7bca550 498 }
Azure.IoT Build 0:6ae2f7bca550 499 else
Azure.IoT Build 0:6ae2f7bca550 500 {
Azure.IoT Build 0:6ae2f7bca550 501 result = 0;
Azure.IoT Build 0:6ae2f7bca550 502 }
Azure.IoT Build 0:6ae2f7bca550 503
Azure.IoT Build 0:6ae2f7bca550 504 amqpvalue_destroy(info_amqp_value);
Azure.IoT Build 0:6ae2f7bca550 505 }
Azure.IoT Build 0:6ae2f7bca550 506 }
Azure.IoT Build 0:6ae2f7bca550 507
Azure.IoT Build 0:6ae2f7bca550 508 return result;
Azure.IoT Build 0:6ae2f7bca550 509 }
Azure.IoT Build 0:6ae2f7bca550 510
Azure.IoT Build 0:6ae2f7bca550 511
Azure.IoT Build 0:6ae2f7bca550 512 /* amqp-error */
Azure.IoT Build 0:6ae2f7bca550 513
Azure.IoT Build 0:6ae2f7bca550 514 AMQP_VALUE amqpvalue_create_amqp_error(amqp_error value)
Azure.IoT Build 0:6ae2f7bca550 515 {
Azure.IoT Build 0:6ae2f7bca550 516 return amqpvalue_create_symbol(value);
Azure.IoT Build 0:6ae2f7bca550 517 }
Azure.IoT Build 0:6ae2f7bca550 518
Azure.IoT Build 0:6ae2f7bca550 519 /* connection-error */
Azure.IoT Build 0:6ae2f7bca550 520
Azure.IoT Build 0:6ae2f7bca550 521 AMQP_VALUE amqpvalue_create_connection_error(connection_error value)
Azure.IoT Build 0:6ae2f7bca550 522 {
Azure.IoT Build 0:6ae2f7bca550 523 return amqpvalue_create_symbol(value);
Azure.IoT Build 0:6ae2f7bca550 524 }
Azure.IoT Build 0:6ae2f7bca550 525
Azure.IoT Build 0:6ae2f7bca550 526 /* session-error */
Azure.IoT Build 0:6ae2f7bca550 527
Azure.IoT Build 0:6ae2f7bca550 528 AMQP_VALUE amqpvalue_create_session_error(session_error value)
Azure.IoT Build 0:6ae2f7bca550 529 {
Azure.IoT Build 0:6ae2f7bca550 530 return amqpvalue_create_symbol(value);
Azure.IoT Build 0:6ae2f7bca550 531 }
Azure.IoT Build 0:6ae2f7bca550 532
Azure.IoT Build 0:6ae2f7bca550 533 /* link-error */
Azure.IoT Build 0:6ae2f7bca550 534
Azure.IoT Build 0:6ae2f7bca550 535 AMQP_VALUE amqpvalue_create_link_error(link_error value)
Azure.IoT Build 0:6ae2f7bca550 536 {
Azure.IoT Build 0:6ae2f7bca550 537 return amqpvalue_create_symbol(value);
Azure.IoT Build 0:6ae2f7bca550 538 }
Azure.IoT Build 0:6ae2f7bca550 539
Azure.IoT Build 0:6ae2f7bca550 540 /* open */
Azure.IoT Build 0:6ae2f7bca550 541
Azure.IoT Build 0:6ae2f7bca550 542 typedef struct OPEN_INSTANCE_TAG
Azure.IoT Build 0:6ae2f7bca550 543 {
Azure.IoT Build 0:6ae2f7bca550 544 AMQP_VALUE composite_value;
Azure.IoT Build 0:6ae2f7bca550 545 } OPEN_INSTANCE;
Azure.IoT Build 0:6ae2f7bca550 546
Azure.IoT Build 0:6ae2f7bca550 547 static OPEN_HANDLE open_create_internal(void)
Azure.IoT Build 0:6ae2f7bca550 548 {
Azure.IoT Build 0:6ae2f7bca550 549 OPEN_INSTANCE* open_instance = (OPEN_INSTANCE*)amqpalloc_malloc(sizeof(OPEN_INSTANCE));
Azure.IoT Build 0:6ae2f7bca550 550 if (open_instance != NULL)
Azure.IoT Build 0:6ae2f7bca550 551 {
Azure.IoT Build 0:6ae2f7bca550 552 open_instance->composite_value = NULL;
Azure.IoT Build 0:6ae2f7bca550 553 }
Azure.IoT Build 0:6ae2f7bca550 554
Azure.IoT Build 0:6ae2f7bca550 555 return open_instance;
Azure.IoT Build 0:6ae2f7bca550 556 }
Azure.IoT Build 0:6ae2f7bca550 557
Azure.IoT Build 0:6ae2f7bca550 558 OPEN_HANDLE open_create(const char* container_id_value)
Azure.IoT Build 0:6ae2f7bca550 559 {
Azure.IoT Build 0:6ae2f7bca550 560 OPEN_INSTANCE* open_instance = (OPEN_INSTANCE*)amqpalloc_malloc(sizeof(OPEN_INSTANCE));
Azure.IoT Build 0:6ae2f7bca550 561 if (open_instance != NULL)
Azure.IoT Build 0:6ae2f7bca550 562 {
Azure.IoT Build 0:6ae2f7bca550 563 open_instance->composite_value = amqpvalue_create_composite_with_ulong_descriptor(16);
Azure.IoT Build 0:6ae2f7bca550 564 if (open_instance->composite_value == NULL)
Azure.IoT Build 0:6ae2f7bca550 565 {
Azure.IoT Build 0:6ae2f7bca550 566 amqpalloc_free(open_instance);
Azure.IoT Build 0:6ae2f7bca550 567 open_instance = NULL;
Azure.IoT Build 0:6ae2f7bca550 568 }
Azure.IoT Build 0:6ae2f7bca550 569 else
Azure.IoT Build 0:6ae2f7bca550 570 {
Azure.IoT Build 0:6ae2f7bca550 571 AMQP_VALUE container_id_amqp_value;
Azure.IoT Build 0:6ae2f7bca550 572 int result = 0;
Azure.IoT Build 0:6ae2f7bca550 573
Azure.IoT Build 0:6ae2f7bca550 574 container_id_amqp_value = amqpvalue_create_string(container_id_value);
Azure.IoT Build 0:6ae2f7bca550 575 if ((result == 0) && (amqpvalue_set_composite_item(open_instance->composite_value, 0, container_id_amqp_value) != 0))
Azure.IoT Build 0:6ae2f7bca550 576 {
Azure.IoT Build 0:6ae2f7bca550 577 result = __LINE__;
Azure.IoT Build 0:6ae2f7bca550 578 }
Azure.IoT Build 0:6ae2f7bca550 579
Azure.IoT Build 0:6ae2f7bca550 580 amqpvalue_destroy(container_id_amqp_value);
Azure.IoT Build 0:6ae2f7bca550 581 }
Azure.IoT Build 0:6ae2f7bca550 582 }
Azure.IoT Build 0:6ae2f7bca550 583
Azure.IoT Build 0:6ae2f7bca550 584 return open_instance;
Azure.IoT Build 0:6ae2f7bca550 585 }
Azure.IoT Build 0:6ae2f7bca550 586
Azure.IoT Build 0:6ae2f7bca550 587 OPEN_HANDLE open_clone(OPEN_HANDLE value)
Azure.IoT Build 0:6ae2f7bca550 588 {
Azure.IoT Build 0:6ae2f7bca550 589 OPEN_INSTANCE* open_instance = (OPEN_INSTANCE*)amqpalloc_malloc(sizeof(OPEN_INSTANCE));
Azure.IoT Build 0:6ae2f7bca550 590 if (open_instance != NULL)
Azure.IoT Build 0:6ae2f7bca550 591 {
Azure.IoT Build 0:6ae2f7bca550 592 open_instance->composite_value = amqpvalue_clone(((OPEN_INSTANCE*)value)->composite_value);
Azure.IoT Build 0:6ae2f7bca550 593 if (open_instance->composite_value == NULL)
Azure.IoT Build 0:6ae2f7bca550 594 {
Azure.IoT Build 0:6ae2f7bca550 595 amqpalloc_free(open_instance);
Azure.IoT Build 0:6ae2f7bca550 596 open_instance = NULL;
Azure.IoT Build 0:6ae2f7bca550 597 }
Azure.IoT Build 0:6ae2f7bca550 598 }
Azure.IoT Build 0:6ae2f7bca550 599
Azure.IoT Build 0:6ae2f7bca550 600 return open_instance;
Azure.IoT Build 0:6ae2f7bca550 601 }
Azure.IoT Build 0:6ae2f7bca550 602
Azure.IoT Build 0:6ae2f7bca550 603 void open_destroy(OPEN_HANDLE open)
Azure.IoT Build 0:6ae2f7bca550 604 {
Azure.IoT Build 0:6ae2f7bca550 605 if (open != NULL)
Azure.IoT Build 0:6ae2f7bca550 606 {
Azure.IoT Build 0:6ae2f7bca550 607 OPEN_INSTANCE* open_instance = (OPEN_INSTANCE*)open;
Azure.IoT Build 0:6ae2f7bca550 608 amqpvalue_destroy(open_instance->composite_value);
Azure.IoT Build 0:6ae2f7bca550 609 amqpalloc_free(open_instance);
Azure.IoT Build 0:6ae2f7bca550 610 }
Azure.IoT Build 0:6ae2f7bca550 611 }
Azure.IoT Build 0:6ae2f7bca550 612
Azure.IoT Build 0:6ae2f7bca550 613 AMQP_VALUE amqpvalue_create_open(OPEN_HANDLE open)
Azure.IoT Build 0:6ae2f7bca550 614 {
Azure.IoT Build 0:6ae2f7bca550 615 AMQP_VALUE result;
Azure.IoT Build 0:6ae2f7bca550 616
Azure.IoT Build 0:6ae2f7bca550 617 if (open == NULL)
Azure.IoT Build 0:6ae2f7bca550 618 {
Azure.IoT Build 0:6ae2f7bca550 619 result = NULL;
Azure.IoT Build 0:6ae2f7bca550 620 }
Azure.IoT Build 0:6ae2f7bca550 621 else
Azure.IoT Build 0:6ae2f7bca550 622 {
Azure.IoT Build 0:6ae2f7bca550 623 OPEN_INSTANCE* open_instance = (OPEN_INSTANCE*)open;
Azure.IoT Build 0:6ae2f7bca550 624 result = amqpvalue_clone(open_instance->composite_value);
Azure.IoT Build 0:6ae2f7bca550 625 }
Azure.IoT Build 0:6ae2f7bca550 626
Azure.IoT Build 0:6ae2f7bca550 627 return result;
Azure.IoT Build 0:6ae2f7bca550 628 }
Azure.IoT Build 0:6ae2f7bca550 629
Azure.IoT Build 0:6ae2f7bca550 630 bool is_open_type_by_descriptor(AMQP_VALUE descriptor)
Azure.IoT Build 0:6ae2f7bca550 631 {
Azure.IoT Build 0:6ae2f7bca550 632 bool result;
Azure.IoT Build 0:6ae2f7bca550 633
Azure.IoT Build 0:6ae2f7bca550 634 uint64_t descriptor_ulong;
Azure.IoT Build 0:6ae2f7bca550 635 if ((amqpvalue_get_ulong(descriptor, &descriptor_ulong) == 0) &&
Azure.IoT Build 0:6ae2f7bca550 636 (descriptor_ulong == 16))
Azure.IoT Build 0:6ae2f7bca550 637 {
Azure.IoT Build 0:6ae2f7bca550 638 result = true;
Azure.IoT Build 0:6ae2f7bca550 639 }
Azure.IoT Build 0:6ae2f7bca550 640 else
Azure.IoT Build 0:6ae2f7bca550 641 {
Azure.IoT Build 0:6ae2f7bca550 642 result = false;
Azure.IoT Build 0:6ae2f7bca550 643 }
Azure.IoT Build 0:6ae2f7bca550 644
Azure.IoT Build 0:6ae2f7bca550 645 return result;
Azure.IoT Build 0:6ae2f7bca550 646 }
Azure.IoT Build 0:6ae2f7bca550 647
Azure.IoT Build 0:6ae2f7bca550 648
Azure.IoT Build 0:6ae2f7bca550 649 int amqpvalue_get_open(AMQP_VALUE value, OPEN_HANDLE* open_handle)
Azure.IoT Build 0:6ae2f7bca550 650 {
Azure.IoT Build 0:6ae2f7bca550 651 int result;
Azure.IoT Build 0:6ae2f7bca550 652 OPEN_INSTANCE* open_instance = (OPEN_INSTANCE*)open_create_internal();
Azure.IoT Build 0:6ae2f7bca550 653 *open_handle = open_instance;
Azure.IoT Build 0:6ae2f7bca550 654 if (*open_handle == NULL)
Azure.IoT Build 0:6ae2f7bca550 655 {
Azure.IoT Build 0:6ae2f7bca550 656 result = __LINE__;
Azure.IoT Build 0:6ae2f7bca550 657 }
Azure.IoT Build 0:6ae2f7bca550 658 else
Azure.IoT Build 0:6ae2f7bca550 659 {
Azure.IoT Build 0:6ae2f7bca550 660 AMQP_VALUE list_value = amqpvalue_get_inplace_described_value(value);
Azure.IoT Build 0:6ae2f7bca550 661 if (list_value == NULL)
Azure.IoT Build 0:6ae2f7bca550 662 {
Azure.IoT Build 0:6ae2f7bca550 663 open_destroy(*open_handle);
Azure.IoT Build 0:6ae2f7bca550 664 result = __LINE__;
Azure.IoT Build 0:6ae2f7bca550 665 }
Azure.IoT Build 0:6ae2f7bca550 666 else
Azure.IoT Build 0:6ae2f7bca550 667 {
Azure.IoT Build 0:6ae2f7bca550 668 do
Azure.IoT Build 0:6ae2f7bca550 669 {
Azure.IoT Build 0:6ae2f7bca550 670 AMQP_VALUE item_value;
Azure.IoT Build 0:6ae2f7bca550 671 /* container-id */
Azure.IoT Build 0:6ae2f7bca550 672 item_value = amqpvalue_get_list_item(list_value, 0);
Azure.IoT Build 0:6ae2f7bca550 673 if (item_value == NULL)
Azure.IoT Build 0:6ae2f7bca550 674 {
Azure.IoT Build 0:6ae2f7bca550 675 {
Azure.IoT Build 0:6ae2f7bca550 676 open_destroy(*open_handle);
Azure.IoT Build 0:6ae2f7bca550 677 result = __LINE__;
Azure.IoT Build 0:6ae2f7bca550 678 break;
Azure.IoT Build 0:6ae2f7bca550 679 }
Azure.IoT Build 0:6ae2f7bca550 680 }
Azure.IoT Build 0:6ae2f7bca550 681 else
Azure.IoT Build 0:6ae2f7bca550 682 {
Azure.IoT Build 0:6ae2f7bca550 683 const char* container_id;
Azure.IoT Build 0:6ae2f7bca550 684 if (amqpvalue_get_string(item_value, &container_id) != 0)
Azure.IoT Build 0:6ae2f7bca550 685 {
Azure.IoT Build 0:6ae2f7bca550 686 open_destroy(*open_handle);
Azure.IoT Build 0:6ae2f7bca550 687 result = __LINE__;
Azure.IoT Build 0:6ae2f7bca550 688 break;
Azure.IoT Build 0:6ae2f7bca550 689 }
Azure.IoT Build 0:6ae2f7bca550 690
Azure.IoT Build 0:6ae2f7bca550 691 amqpvalue_destroy(item_value);
Azure.IoT Build 0:6ae2f7bca550 692 }
Azure.IoT Build 0:6ae2f7bca550 693 /* hostname */
Azure.IoT Build 0:6ae2f7bca550 694 item_value = amqpvalue_get_list_item(list_value, 1);
Azure.IoT Build 0:6ae2f7bca550 695 if (item_value == NULL)
Azure.IoT Build 0:6ae2f7bca550 696 {
Azure.IoT Build 0:6ae2f7bca550 697 /* do nothing */
Azure.IoT Build 0:6ae2f7bca550 698 }
Azure.IoT Build 0:6ae2f7bca550 699 else
Azure.IoT Build 0:6ae2f7bca550 700 {
Azure.IoT Build 0:6ae2f7bca550 701 const char* hostname;
Azure.IoT Build 0:6ae2f7bca550 702 if (amqpvalue_get_string(item_value, &hostname) != 0)
Azure.IoT Build 0:6ae2f7bca550 703 {
Azure.IoT Build 0:6ae2f7bca550 704 if (amqpvalue_get_type(item_value) != AMQP_TYPE_NULL)
Azure.IoT Build 0:6ae2f7bca550 705 {
Azure.IoT Build 0:6ae2f7bca550 706 open_destroy(*open_handle);
Azure.IoT Build 0:6ae2f7bca550 707 result = __LINE__;
Azure.IoT Build 0:6ae2f7bca550 708 break;
Azure.IoT Build 0:6ae2f7bca550 709 }
Azure.IoT Build 0:6ae2f7bca550 710 }
Azure.IoT Build 0:6ae2f7bca550 711
Azure.IoT Build 0:6ae2f7bca550 712 amqpvalue_destroy(item_value);
Azure.IoT Build 0:6ae2f7bca550 713 }
Azure.IoT Build 0:6ae2f7bca550 714 /* max-frame-size */
Azure.IoT Build 0:6ae2f7bca550 715 item_value = amqpvalue_get_list_item(list_value, 2);
Azure.IoT Build 0:6ae2f7bca550 716 if (item_value == NULL)
Azure.IoT Build 0:6ae2f7bca550 717 {
Azure.IoT Build 0:6ae2f7bca550 718 /* do nothing */
Azure.IoT Build 0:6ae2f7bca550 719 }
Azure.IoT Build 0:6ae2f7bca550 720 else
Azure.IoT Build 0:6ae2f7bca550 721 {
Azure.IoT Build 0:6ae2f7bca550 722 uint32_t max_frame_size;
Azure.IoT Build 0:6ae2f7bca550 723 if (amqpvalue_get_uint(item_value, &max_frame_size) != 0)
Azure.IoT Build 0:6ae2f7bca550 724 {
Azure.IoT Build 0:6ae2f7bca550 725 if (amqpvalue_get_type(item_value) != AMQP_TYPE_NULL)
Azure.IoT Build 0:6ae2f7bca550 726 {
Azure.IoT Build 0:6ae2f7bca550 727 open_destroy(*open_handle);
Azure.IoT Build 0:6ae2f7bca550 728 result = __LINE__;
Azure.IoT Build 0:6ae2f7bca550 729 break;
Azure.IoT Build 0:6ae2f7bca550 730 }
Azure.IoT Build 0:6ae2f7bca550 731 }
Azure.IoT Build 0:6ae2f7bca550 732
Azure.IoT Build 0:6ae2f7bca550 733 amqpvalue_destroy(item_value);
Azure.IoT Build 0:6ae2f7bca550 734 }
Azure.IoT Build 0:6ae2f7bca550 735 /* channel-max */
Azure.IoT Build 0:6ae2f7bca550 736 item_value = amqpvalue_get_list_item(list_value, 3);
Azure.IoT Build 0:6ae2f7bca550 737 if (item_value == NULL)
Azure.IoT Build 0:6ae2f7bca550 738 {
Azure.IoT Build 0:6ae2f7bca550 739 /* do nothing */
Azure.IoT Build 0:6ae2f7bca550 740 }
Azure.IoT Build 0:6ae2f7bca550 741 else
Azure.IoT Build 0:6ae2f7bca550 742 {
Azure.IoT Build 0:6ae2f7bca550 743 uint16_t channel_max;
Azure.IoT Build 0:6ae2f7bca550 744 if (amqpvalue_get_ushort(item_value, &channel_max) != 0)
Azure.IoT Build 0:6ae2f7bca550 745 {
Azure.IoT Build 0:6ae2f7bca550 746 if (amqpvalue_get_type(item_value) != AMQP_TYPE_NULL)
Azure.IoT Build 0:6ae2f7bca550 747 {
Azure.IoT Build 0:6ae2f7bca550 748 open_destroy(*open_handle);
Azure.IoT Build 0:6ae2f7bca550 749 result = __LINE__;
Azure.IoT Build 0:6ae2f7bca550 750 break;
Azure.IoT Build 0:6ae2f7bca550 751 }
Azure.IoT Build 0:6ae2f7bca550 752 }
Azure.IoT Build 0:6ae2f7bca550 753
Azure.IoT Build 0:6ae2f7bca550 754 amqpvalue_destroy(item_value);
Azure.IoT Build 0:6ae2f7bca550 755 }
Azure.IoT Build 0:6ae2f7bca550 756 /* idle-time-out */
Azure.IoT Build 0:6ae2f7bca550 757 item_value = amqpvalue_get_list_item(list_value, 4);
Azure.IoT Build 0:6ae2f7bca550 758 if (item_value == NULL)
Azure.IoT Build 0:6ae2f7bca550 759 {
Azure.IoT Build 0:6ae2f7bca550 760 /* do nothing */
Azure.IoT Build 0:6ae2f7bca550 761 }
Azure.IoT Build 0:6ae2f7bca550 762 else
Azure.IoT Build 0:6ae2f7bca550 763 {
Azure.IoT Build 0:6ae2f7bca550 764 milliseconds idle_time_out;
Azure.IoT Build 0:6ae2f7bca550 765 if (amqpvalue_get_milliseconds(item_value, &idle_time_out) != 0)
Azure.IoT Build 0:6ae2f7bca550 766 {
Azure.IoT Build 0:6ae2f7bca550 767 if (amqpvalue_get_type(item_value) != AMQP_TYPE_NULL)
Azure.IoT Build 0:6ae2f7bca550 768 {
Azure.IoT Build 0:6ae2f7bca550 769 open_destroy(*open_handle);
Azure.IoT Build 0:6ae2f7bca550 770 result = __LINE__;
Azure.IoT Build 0:6ae2f7bca550 771 break;
Azure.IoT Build 0:6ae2f7bca550 772 }
Azure.IoT Build 0:6ae2f7bca550 773 }
Azure.IoT Build 0:6ae2f7bca550 774
Azure.IoT Build 0:6ae2f7bca550 775 amqpvalue_destroy(item_value);
Azure.IoT Build 0:6ae2f7bca550 776 }
Azure.IoT Build 0:6ae2f7bca550 777 /* outgoing-locales */
Azure.IoT Build 0:6ae2f7bca550 778 item_value = amqpvalue_get_list_item(list_value, 5);
Azure.IoT Build 0:6ae2f7bca550 779 if (item_value == NULL)
Azure.IoT Build 0:6ae2f7bca550 780 {
Azure.IoT Build 0:6ae2f7bca550 781 /* do nothing */
Azure.IoT Build 0:6ae2f7bca550 782 }
Azure.IoT Build 0:6ae2f7bca550 783 else
Azure.IoT Build 0:6ae2f7bca550 784 {
Azure.IoT Build 0:6ae2f7bca550 785 ietf_language_tag outgoing_locales;
Azure.IoT Build 0:6ae2f7bca550 786 AMQP_VALUE outgoing_locales_array;
Azure.IoT Build 0:6ae2f7bca550 787 if ((amqpvalue_get_array(item_value, &outgoing_locales_array) != 0) &&
Azure.IoT Build 0:6ae2f7bca550 788 (amqpvalue_get_ietf_language_tag(item_value, &outgoing_locales) != 0))
Azure.IoT Build 0:6ae2f7bca550 789 {
Azure.IoT Build 0:6ae2f7bca550 790 if (amqpvalue_get_type(item_value) != AMQP_TYPE_NULL)
Azure.IoT Build 0:6ae2f7bca550 791 {
Azure.IoT Build 0:6ae2f7bca550 792 open_destroy(*open_handle);
Azure.IoT Build 0:6ae2f7bca550 793 result = __LINE__;
Azure.IoT Build 0:6ae2f7bca550 794 break;
Azure.IoT Build 0:6ae2f7bca550 795 }
Azure.IoT Build 0:6ae2f7bca550 796 }
Azure.IoT Build 0:6ae2f7bca550 797
Azure.IoT Build 0:6ae2f7bca550 798 amqpvalue_destroy(item_value);
Azure.IoT Build 0:6ae2f7bca550 799 }
Azure.IoT Build 0:6ae2f7bca550 800 /* incoming-locales */
Azure.IoT Build 0:6ae2f7bca550 801 item_value = amqpvalue_get_list_item(list_value, 6);
Azure.IoT Build 0:6ae2f7bca550 802 if (item_value == NULL)
Azure.IoT Build 0:6ae2f7bca550 803 {
Azure.IoT Build 0:6ae2f7bca550 804 /* do nothing */
Azure.IoT Build 0:6ae2f7bca550 805 }
Azure.IoT Build 0:6ae2f7bca550 806 else
Azure.IoT Build 0:6ae2f7bca550 807 {
Azure.IoT Build 0:6ae2f7bca550 808 ietf_language_tag incoming_locales;
Azure.IoT Build 0:6ae2f7bca550 809 AMQP_VALUE incoming_locales_array;
Azure.IoT Build 0:6ae2f7bca550 810 if ((amqpvalue_get_array(item_value, &incoming_locales_array) != 0) &&
Azure.IoT Build 0:6ae2f7bca550 811 (amqpvalue_get_ietf_language_tag(item_value, &incoming_locales) != 0))
Azure.IoT Build 0:6ae2f7bca550 812 {
Azure.IoT Build 0:6ae2f7bca550 813 if (amqpvalue_get_type(item_value) != AMQP_TYPE_NULL)
Azure.IoT Build 0:6ae2f7bca550 814 {
Azure.IoT Build 0:6ae2f7bca550 815 open_destroy(*open_handle);
Azure.IoT Build 0:6ae2f7bca550 816 result = __LINE__;
Azure.IoT Build 0:6ae2f7bca550 817 break;
Azure.IoT Build 0:6ae2f7bca550 818 }
Azure.IoT Build 0:6ae2f7bca550 819 }
Azure.IoT Build 0:6ae2f7bca550 820
Azure.IoT Build 0:6ae2f7bca550 821 amqpvalue_destroy(item_value);
Azure.IoT Build 0:6ae2f7bca550 822 }
Azure.IoT Build 0:6ae2f7bca550 823 /* offered-capabilities */
Azure.IoT Build 0:6ae2f7bca550 824 item_value = amqpvalue_get_list_item(list_value, 7);
Azure.IoT Build 0:6ae2f7bca550 825 if (item_value == NULL)
Azure.IoT Build 0:6ae2f7bca550 826 {
Azure.IoT Build 0:6ae2f7bca550 827 /* do nothing */
Azure.IoT Build 0:6ae2f7bca550 828 }
Azure.IoT Build 0:6ae2f7bca550 829 else
Azure.IoT Build 0:6ae2f7bca550 830 {
Azure.IoT Build 0:6ae2f7bca550 831 const char* offered_capabilities;
Azure.IoT Build 0:6ae2f7bca550 832 AMQP_VALUE offered_capabilities_array;
Azure.IoT Build 0:6ae2f7bca550 833 if ((amqpvalue_get_array(item_value, &offered_capabilities_array) != 0) &&
Azure.IoT Build 0:6ae2f7bca550 834 (amqpvalue_get_symbol(item_value, &offered_capabilities) != 0))
Azure.IoT Build 0:6ae2f7bca550 835 {
Azure.IoT Build 0:6ae2f7bca550 836 if (amqpvalue_get_type(item_value) != AMQP_TYPE_NULL)
Azure.IoT Build 0:6ae2f7bca550 837 {
Azure.IoT Build 0:6ae2f7bca550 838 open_destroy(*open_handle);
Azure.IoT Build 0:6ae2f7bca550 839 result = __LINE__;
Azure.IoT Build 0:6ae2f7bca550 840 break;
Azure.IoT Build 0:6ae2f7bca550 841 }
Azure.IoT Build 0:6ae2f7bca550 842 }
Azure.IoT Build 0:6ae2f7bca550 843
Azure.IoT Build 0:6ae2f7bca550 844 amqpvalue_destroy(item_value);
Azure.IoT Build 0:6ae2f7bca550 845 }
Azure.IoT Build 0:6ae2f7bca550 846 /* desired-capabilities */
Azure.IoT Build 0:6ae2f7bca550 847 item_value = amqpvalue_get_list_item(list_value, 8);
Azure.IoT Build 0:6ae2f7bca550 848 if (item_value == NULL)
Azure.IoT Build 0:6ae2f7bca550 849 {
Azure.IoT Build 0:6ae2f7bca550 850 /* do nothing */
Azure.IoT Build 0:6ae2f7bca550 851 }
Azure.IoT Build 0:6ae2f7bca550 852 else
Azure.IoT Build 0:6ae2f7bca550 853 {
Azure.IoT Build 0:6ae2f7bca550 854 const char* desired_capabilities;
Azure.IoT Build 0:6ae2f7bca550 855 AMQP_VALUE desired_capabilities_array;
Azure.IoT Build 0:6ae2f7bca550 856 if ((amqpvalue_get_array(item_value, &desired_capabilities_array) != 0) &&
Azure.IoT Build 0:6ae2f7bca550 857 (amqpvalue_get_symbol(item_value, &desired_capabilities) != 0))
Azure.IoT Build 0:6ae2f7bca550 858 {
Azure.IoT Build 0:6ae2f7bca550 859 if (amqpvalue_get_type(item_value) != AMQP_TYPE_NULL)
Azure.IoT Build 0:6ae2f7bca550 860 {
Azure.IoT Build 0:6ae2f7bca550 861 open_destroy(*open_handle);
Azure.IoT Build 0:6ae2f7bca550 862 result = __LINE__;
Azure.IoT Build 0:6ae2f7bca550 863 break;
Azure.IoT Build 0:6ae2f7bca550 864 }
Azure.IoT Build 0:6ae2f7bca550 865 }
Azure.IoT Build 0:6ae2f7bca550 866
Azure.IoT Build 0:6ae2f7bca550 867 amqpvalue_destroy(item_value);
Azure.IoT Build 0:6ae2f7bca550 868 }
Azure.IoT Build 0:6ae2f7bca550 869 /* properties */
Azure.IoT Build 0:6ae2f7bca550 870 item_value = amqpvalue_get_list_item(list_value, 9);
Azure.IoT Build 0:6ae2f7bca550 871 if (item_value == NULL)
Azure.IoT Build 0:6ae2f7bca550 872 {
Azure.IoT Build 0:6ae2f7bca550 873 /* do nothing */
Azure.IoT Build 0:6ae2f7bca550 874 }
Azure.IoT Build 0:6ae2f7bca550 875 else
Azure.IoT Build 0:6ae2f7bca550 876 {
Azure.IoT Build 0:6ae2f7bca550 877 fields properties;
Azure.IoT Build 0:6ae2f7bca550 878 if (amqpvalue_get_fields(item_value, &properties) != 0)
Azure.IoT Build 0:6ae2f7bca550 879 {
Azure.IoT Build 0:6ae2f7bca550 880 if (amqpvalue_get_type(item_value) != AMQP_TYPE_NULL)
Azure.IoT Build 0:6ae2f7bca550 881 {
Azure.IoT Build 0:6ae2f7bca550 882 open_destroy(*open_handle);
Azure.IoT Build 0:6ae2f7bca550 883 result = __LINE__;
Azure.IoT Build 0:6ae2f7bca550 884 break;
Azure.IoT Build 0:6ae2f7bca550 885 }
Azure.IoT Build 0:6ae2f7bca550 886 }
Azure.IoT Build 0:6ae2f7bca550 887
Azure.IoT Build 0:6ae2f7bca550 888 amqpvalue_destroy(item_value);
Azure.IoT Build 0:6ae2f7bca550 889 }
Azure.IoT Build 0:6ae2f7bca550 890
Azure.IoT Build 0:6ae2f7bca550 891 open_instance->composite_value = amqpvalue_clone(value);
Azure.IoT Build 0:6ae2f7bca550 892
Azure.IoT Build 0:6ae2f7bca550 893 result = 0;
Azure.IoT Build 0:6ae2f7bca550 894 } while (0);
Azure.IoT Build 0:6ae2f7bca550 895 }
Azure.IoT Build 0:6ae2f7bca550 896 }
Azure.IoT Build 0:6ae2f7bca550 897
Azure.IoT Build 0:6ae2f7bca550 898 return result;
Azure.IoT Build 0:6ae2f7bca550 899 }
Azure.IoT Build 0:6ae2f7bca550 900
Azure.IoT Build 0:6ae2f7bca550 901 int open_get_container_id(OPEN_HANDLE open, const char** container_id_value)
Azure.IoT Build 0:6ae2f7bca550 902 {
Azure.IoT Build 0:6ae2f7bca550 903 int result;
Azure.IoT Build 0:6ae2f7bca550 904
Azure.IoT Build 0:6ae2f7bca550 905 if (open == NULL)
Azure.IoT Build 0:6ae2f7bca550 906 {
Azure.IoT Build 0:6ae2f7bca550 907 result = __LINE__;
Azure.IoT Build 0:6ae2f7bca550 908 }
Azure.IoT Build 0:6ae2f7bca550 909 else
Azure.IoT Build 0:6ae2f7bca550 910 {
Azure.IoT Build 0:6ae2f7bca550 911 OPEN_INSTANCE* open_instance = (OPEN_INSTANCE*)open;
Azure.IoT Build 0:6ae2f7bca550 912 AMQP_VALUE item_value = amqpvalue_get_composite_item_in_place(open_instance->composite_value, 0);
Azure.IoT Build 0:6ae2f7bca550 913 if (item_value == NULL)
Azure.IoT Build 0:6ae2f7bca550 914 {
Azure.IoT Build 0:6ae2f7bca550 915 result = __LINE__;
Azure.IoT Build 0:6ae2f7bca550 916 }
Azure.IoT Build 0:6ae2f7bca550 917 else
Azure.IoT Build 0:6ae2f7bca550 918 {
Azure.IoT Build 0:6ae2f7bca550 919 if (amqpvalue_get_string(item_value, container_id_value) != 0)
Azure.IoT Build 0:6ae2f7bca550 920 {
AzureIoTClient 16:22a72cf8e416 921 result = __LINE__;
Azure.IoT Build 0:6ae2f7bca550 922 }
Azure.IoT Build 0:6ae2f7bca550 923 else
Azure.IoT Build 0:6ae2f7bca550 924 {
Azure.IoT Build 0:6ae2f7bca550 925 result = 0;
Azure.IoT Build 0:6ae2f7bca550 926 }
Azure.IoT Build 0:6ae2f7bca550 927 }
Azure.IoT Build 0:6ae2f7bca550 928 }
Azure.IoT Build 0:6ae2f7bca550 929
Azure.IoT Build 0:6ae2f7bca550 930 return result;
Azure.IoT Build 0:6ae2f7bca550 931 }
Azure.IoT Build 0:6ae2f7bca550 932
Azure.IoT Build 0:6ae2f7bca550 933 int open_set_container_id(OPEN_HANDLE open, const char* container_id_value)
Azure.IoT Build 0:6ae2f7bca550 934 {
Azure.IoT Build 0:6ae2f7bca550 935 int result;
Azure.IoT Build 0:6ae2f7bca550 936
Azure.IoT Build 0:6ae2f7bca550 937 if (open == NULL)
Azure.IoT Build 0:6ae2f7bca550 938 {
Azure.IoT Build 0:6ae2f7bca550 939 result = __LINE__;
Azure.IoT Build 0:6ae2f7bca550 940 }
Azure.IoT Build 0:6ae2f7bca550 941 else
Azure.IoT Build 0:6ae2f7bca550 942 {
Azure.IoT Build 0:6ae2f7bca550 943 OPEN_INSTANCE* open_instance = (OPEN_INSTANCE*)open;
Azure.IoT Build 0:6ae2f7bca550 944 AMQP_VALUE container_id_amqp_value = amqpvalue_create_string(container_id_value);
Azure.IoT Build 0:6ae2f7bca550 945 if (container_id_amqp_value == NULL)
Azure.IoT Build 0:6ae2f7bca550 946 {
Azure.IoT Build 0:6ae2f7bca550 947 result = __LINE__;
Azure.IoT Build 0:6ae2f7bca550 948 }
Azure.IoT Build 0:6ae2f7bca550 949 else
Azure.IoT Build 0:6ae2f7bca550 950 {
Azure.IoT Build 0:6ae2f7bca550 951 if (amqpvalue_set_composite_item(open_instance->composite_value, 0, container_id_amqp_value) != 0)
Azure.IoT Build 0:6ae2f7bca550 952 {
Azure.IoT Build 0:6ae2f7bca550 953 result = __LINE__;
Azure.IoT Build 0:6ae2f7bca550 954 }
Azure.IoT Build 0:6ae2f7bca550 955 else
Azure.IoT Build 0:6ae2f7bca550 956 {
Azure.IoT Build 0:6ae2f7bca550 957 result = 0;
Azure.IoT Build 0:6ae2f7bca550 958 }
Azure.IoT Build 0:6ae2f7bca550 959
Azure.IoT Build 0:6ae2f7bca550 960 amqpvalue_destroy(container_id_amqp_value);
Azure.IoT Build 0:6ae2f7bca550 961 }
Azure.IoT Build 0:6ae2f7bca550 962 }
Azure.IoT Build 0:6ae2f7bca550 963
Azure.IoT Build 0:6ae2f7bca550 964 return result;
Azure.IoT Build 0:6ae2f7bca550 965 }
Azure.IoT Build 0:6ae2f7bca550 966
Azure.IoT Build 0:6ae2f7bca550 967 int open_get_hostname(OPEN_HANDLE open, const char** hostname_value)
Azure.IoT Build 0:6ae2f7bca550 968 {
Azure.IoT Build 0:6ae2f7bca550 969 int result;
Azure.IoT Build 0:6ae2f7bca550 970
Azure.IoT Build 0:6ae2f7bca550 971 if (open == NULL)
Azure.IoT Build 0:6ae2f7bca550 972 {
Azure.IoT Build 0:6ae2f7bca550 973 result = __LINE__;
Azure.IoT Build 0:6ae2f7bca550 974 }
Azure.IoT Build 0:6ae2f7bca550 975 else
Azure.IoT Build 0:6ae2f7bca550 976 {
Azure.IoT Build 0:6ae2f7bca550 977 OPEN_INSTANCE* open_instance = (OPEN_INSTANCE*)open;
Azure.IoT Build 0:6ae2f7bca550 978 AMQP_VALUE item_value = amqpvalue_get_composite_item_in_place(open_instance->composite_value, 1);
Azure.IoT Build 0:6ae2f7bca550 979 if (item_value == NULL)
Azure.IoT Build 0:6ae2f7bca550 980 {
Azure.IoT Build 0:6ae2f7bca550 981 result = __LINE__;
Azure.IoT Build 0:6ae2f7bca550 982 }
Azure.IoT Build 0:6ae2f7bca550 983 else
Azure.IoT Build 0:6ae2f7bca550 984 {
Azure.IoT Build 0:6ae2f7bca550 985 if (amqpvalue_get_string(item_value, hostname_value) != 0)
Azure.IoT Build 0:6ae2f7bca550 986 {
AzureIoTClient 16:22a72cf8e416 987 result = __LINE__;
Azure.IoT Build 0:6ae2f7bca550 988 }
Azure.IoT Build 0:6ae2f7bca550 989 else
Azure.IoT Build 0:6ae2f7bca550 990 {
Azure.IoT Build 0:6ae2f7bca550 991 result = 0;
Azure.IoT Build 0:6ae2f7bca550 992 }
Azure.IoT Build 0:6ae2f7bca550 993 }
Azure.IoT Build 0:6ae2f7bca550 994 }
Azure.IoT Build 0:6ae2f7bca550 995
Azure.IoT Build 0:6ae2f7bca550 996 return result;
Azure.IoT Build 0:6ae2f7bca550 997 }
Azure.IoT Build 0:6ae2f7bca550 998
Azure.IoT Build 0:6ae2f7bca550 999 int open_set_hostname(OPEN_HANDLE open, const char* hostname_value)
Azure.IoT Build 0:6ae2f7bca550 1000 {
Azure.IoT Build 0:6ae2f7bca550 1001 int result;
Azure.IoT Build 0:6ae2f7bca550 1002
Azure.IoT Build 0:6ae2f7bca550 1003 if (open == NULL)
Azure.IoT Build 0:6ae2f7bca550 1004 {
Azure.IoT Build 0:6ae2f7bca550 1005 result = __LINE__;
Azure.IoT Build 0:6ae2f7bca550 1006 }
Azure.IoT Build 0:6ae2f7bca550 1007 else
Azure.IoT Build 0:6ae2f7bca550 1008 {
Azure.IoT Build 0:6ae2f7bca550 1009 OPEN_INSTANCE* open_instance = (OPEN_INSTANCE*)open;
Azure.IoT Build 0:6ae2f7bca550 1010 AMQP_VALUE hostname_amqp_value = amqpvalue_create_string(hostname_value);
Azure.IoT Build 0:6ae2f7bca550 1011 if (hostname_amqp_value == NULL)
Azure.IoT Build 0:6ae2f7bca550 1012 {
Azure.IoT Build 0:6ae2f7bca550 1013 result = __LINE__;
Azure.IoT Build 0:6ae2f7bca550 1014 }
Azure.IoT Build 0:6ae2f7bca550 1015 else
Azure.IoT Build 0:6ae2f7bca550 1016 {
Azure.IoT Build 0:6ae2f7bca550 1017 if (amqpvalue_set_composite_item(open_instance->composite_value, 1, hostname_amqp_value) != 0)
Azure.IoT Build 0:6ae2f7bca550 1018 {
Azure.IoT Build 0:6ae2f7bca550 1019 result = __LINE__;
Azure.IoT Build 0:6ae2f7bca550 1020 }
Azure.IoT Build 0:6ae2f7bca550 1021 else
Azure.IoT Build 0:6ae2f7bca550 1022 {
Azure.IoT Build 0:6ae2f7bca550 1023 result = 0;
Azure.IoT Build 0:6ae2f7bca550 1024 }
Azure.IoT Build 0:6ae2f7bca550 1025
Azure.IoT Build 0:6ae2f7bca550 1026 amqpvalue_destroy(hostname_amqp_value);
Azure.IoT Build 0:6ae2f7bca550 1027 }
Azure.IoT Build 0:6ae2f7bca550 1028 }
Azure.IoT Build 0:6ae2f7bca550 1029
Azure.IoT Build 0:6ae2f7bca550 1030 return result;
Azure.IoT Build 0:6ae2f7bca550 1031 }
Azure.IoT Build 0:6ae2f7bca550 1032
Azure.IoT Build 0:6ae2f7bca550 1033 int open_get_max_frame_size(OPEN_HANDLE open, uint32_t* max_frame_size_value)
Azure.IoT Build 0:6ae2f7bca550 1034 {
Azure.IoT Build 0:6ae2f7bca550 1035 int result;
Azure.IoT Build 0:6ae2f7bca550 1036
Azure.IoT Build 0:6ae2f7bca550 1037 if (open == NULL)
Azure.IoT Build 0:6ae2f7bca550 1038 {
Azure.IoT Build 0:6ae2f7bca550 1039 result = __LINE__;
Azure.IoT Build 0:6ae2f7bca550 1040 }
Azure.IoT Build 0:6ae2f7bca550 1041 else
Azure.IoT Build 0:6ae2f7bca550 1042 {
Azure.IoT Build 0:6ae2f7bca550 1043 OPEN_INSTANCE* open_instance = (OPEN_INSTANCE*)open;
Azure.IoT Build 0:6ae2f7bca550 1044 AMQP_VALUE item_value = amqpvalue_get_composite_item_in_place(open_instance->composite_value, 2);
Azure.IoT Build 0:6ae2f7bca550 1045 if (item_value == NULL)
Azure.IoT Build 0:6ae2f7bca550 1046 {
AzureIoTClient 16:22a72cf8e416 1047 *max_frame_size_value = 4294967295u;
AzureIoTClient 16:22a72cf8e416 1048 result = 0;
Azure.IoT Build 0:6ae2f7bca550 1049 }
Azure.IoT Build 0:6ae2f7bca550 1050 else
Azure.IoT Build 0:6ae2f7bca550 1051 {
Azure.IoT Build 0:6ae2f7bca550 1052 if (amqpvalue_get_uint(item_value, max_frame_size_value) != 0)
Azure.IoT Build 0:6ae2f7bca550 1053 {
AzureIoTClient 16:22a72cf8e416 1054 if (amqpvalue_get_type(item_value) == AMQP_TYPE_NULL)
AzureIoTClient 16:22a72cf8e416 1055 {
AzureIoTClient 16:22a72cf8e416 1056 result = __LINE__;
AzureIoTClient 16:22a72cf8e416 1057 }
AzureIoTClient 16:22a72cf8e416 1058 else
AzureIoTClient 16:22a72cf8e416 1059 {
AzureIoTClient 16:22a72cf8e416 1060 *max_frame_size_value = 4294967295u;
AzureIoTClient 16:22a72cf8e416 1061 result = 0;
AzureIoTClient 16:22a72cf8e416 1062 }
Azure.IoT Build 0:6ae2f7bca550 1063 }
Azure.IoT Build 0:6ae2f7bca550 1064 else
Azure.IoT Build 0:6ae2f7bca550 1065 {
Azure.IoT Build 0:6ae2f7bca550 1066 result = 0;
Azure.IoT Build 0:6ae2f7bca550 1067 }
Azure.IoT Build 0:6ae2f7bca550 1068 }
Azure.IoT Build 0:6ae2f7bca550 1069 }
Azure.IoT Build 0:6ae2f7bca550 1070
Azure.IoT Build 0:6ae2f7bca550 1071 return result;
Azure.IoT Build 0:6ae2f7bca550 1072 }
Azure.IoT Build 0:6ae2f7bca550 1073
Azure.IoT Build 0:6ae2f7bca550 1074 int open_set_max_frame_size(OPEN_HANDLE open, uint32_t max_frame_size_value)
Azure.IoT Build 0:6ae2f7bca550 1075 {
Azure.IoT Build 0:6ae2f7bca550 1076 int result;
Azure.IoT Build 0:6ae2f7bca550 1077
Azure.IoT Build 0:6ae2f7bca550 1078 if (open == NULL)
Azure.IoT Build 0:6ae2f7bca550 1079 {
Azure.IoT Build 0:6ae2f7bca550 1080 result = __LINE__;
Azure.IoT Build 0:6ae2f7bca550 1081 }
Azure.IoT Build 0:6ae2f7bca550 1082 else
Azure.IoT Build 0:6ae2f7bca550 1083 {
Azure.IoT Build 0:6ae2f7bca550 1084 OPEN_INSTANCE* open_instance = (OPEN_INSTANCE*)open;
Azure.IoT Build 0:6ae2f7bca550 1085 AMQP_VALUE max_frame_size_amqp_value = amqpvalue_create_uint(max_frame_size_value);
Azure.IoT Build 0:6ae2f7bca550 1086 if (max_frame_size_amqp_value == NULL)
Azure.IoT Build 0:6ae2f7bca550 1087 {
Azure.IoT Build 0:6ae2f7bca550 1088 result = __LINE__;
Azure.IoT Build 0:6ae2f7bca550 1089 }
Azure.IoT Build 0:6ae2f7bca550 1090 else
Azure.IoT Build 0:6ae2f7bca550 1091 {
Azure.IoT Build 0:6ae2f7bca550 1092 if (amqpvalue_set_composite_item(open_instance->composite_value, 2, max_frame_size_amqp_value) != 0)
Azure.IoT Build 0:6ae2f7bca550 1093 {
Azure.IoT Build 0:6ae2f7bca550 1094 result = __LINE__;
Azure.IoT Build 0:6ae2f7bca550 1095 }
Azure.IoT Build 0:6ae2f7bca550 1096 else
Azure.IoT Build 0:6ae2f7bca550 1097 {
Azure.IoT Build 0:6ae2f7bca550 1098 result = 0;
Azure.IoT Build 0:6ae2f7bca550 1099 }
Azure.IoT Build 0:6ae2f7bca550 1100
Azure.IoT Build 0:6ae2f7bca550 1101 amqpvalue_destroy(max_frame_size_amqp_value);
Azure.IoT Build 0:6ae2f7bca550 1102 }
Azure.IoT Build 0:6ae2f7bca550 1103 }
Azure.IoT Build 0:6ae2f7bca550 1104
Azure.IoT Build 0:6ae2f7bca550 1105 return result;
Azure.IoT Build 0:6ae2f7bca550 1106 }
Azure.IoT Build 0:6ae2f7bca550 1107
Azure.IoT Build 0:6ae2f7bca550 1108 int open_get_channel_max(OPEN_HANDLE open, uint16_t* channel_max_value)
Azure.IoT Build 0:6ae2f7bca550 1109 {
Azure.IoT Build 0:6ae2f7bca550 1110 int result;
Azure.IoT Build 0:6ae2f7bca550 1111
Azure.IoT Build 0:6ae2f7bca550 1112 if (open == NULL)
Azure.IoT Build 0:6ae2f7bca550 1113 {
Azure.IoT Build 0:6ae2f7bca550 1114 result = __LINE__;
Azure.IoT Build 0:6ae2f7bca550 1115 }
Azure.IoT Build 0:6ae2f7bca550 1116 else
Azure.IoT Build 0:6ae2f7bca550 1117 {
Azure.IoT Build 0:6ae2f7bca550 1118 OPEN_INSTANCE* open_instance = (OPEN_INSTANCE*)open;
Azure.IoT Build 0:6ae2f7bca550 1119 AMQP_VALUE item_value = amqpvalue_get_composite_item_in_place(open_instance->composite_value, 3);
Azure.IoT Build 0:6ae2f7bca550 1120 if (item_value == NULL)
Azure.IoT Build 0:6ae2f7bca550 1121 {
AzureIoTClient 16:22a72cf8e416 1122 *channel_max_value = 65535;
AzureIoTClient 16:22a72cf8e416 1123 result = 0;
Azure.IoT Build 0:6ae2f7bca550 1124 }
Azure.IoT Build 0:6ae2f7bca550 1125 else
Azure.IoT Build 0:6ae2f7bca550 1126 {
Azure.IoT Build 0:6ae2f7bca550 1127 if (amqpvalue_get_ushort(item_value, channel_max_value) != 0)
Azure.IoT Build 0:6ae2f7bca550 1128 {
AzureIoTClient 16:22a72cf8e416 1129 if (amqpvalue_get_type(item_value) == AMQP_TYPE_NULL)
AzureIoTClient 16:22a72cf8e416 1130 {
AzureIoTClient 16:22a72cf8e416 1131 result = __LINE__;
AzureIoTClient 16:22a72cf8e416 1132 }
AzureIoTClient 16:22a72cf8e416 1133 else
AzureIoTClient 16:22a72cf8e416 1134 {
AzureIoTClient 16:22a72cf8e416 1135 *channel_max_value = 65535;
AzureIoTClient 16:22a72cf8e416 1136 result = 0;
AzureIoTClient 16:22a72cf8e416 1137 }
Azure.IoT Build 0:6ae2f7bca550 1138 }
Azure.IoT Build 0:6ae2f7bca550 1139 else
Azure.IoT Build 0:6ae2f7bca550 1140 {
Azure.IoT Build 0:6ae2f7bca550 1141 result = 0;
Azure.IoT Build 0:6ae2f7bca550 1142 }
Azure.IoT Build 0:6ae2f7bca550 1143 }
Azure.IoT Build 0:6ae2f7bca550 1144 }
Azure.IoT Build 0:6ae2f7bca550 1145
Azure.IoT Build 0:6ae2f7bca550 1146 return result;
Azure.IoT Build 0:6ae2f7bca550 1147 }
Azure.IoT Build 0:6ae2f7bca550 1148
Azure.IoT Build 0:6ae2f7bca550 1149 int open_set_channel_max(OPEN_HANDLE open, uint16_t channel_max_value)
Azure.IoT Build 0:6ae2f7bca550 1150 {
Azure.IoT Build 0:6ae2f7bca550 1151 int result;
Azure.IoT Build 0:6ae2f7bca550 1152
Azure.IoT Build 0:6ae2f7bca550 1153 if (open == NULL)
Azure.IoT Build 0:6ae2f7bca550 1154 {
Azure.IoT Build 0:6ae2f7bca550 1155 result = __LINE__;
Azure.IoT Build 0:6ae2f7bca550 1156 }
Azure.IoT Build 0:6ae2f7bca550 1157 else
Azure.IoT Build 0:6ae2f7bca550 1158 {
Azure.IoT Build 0:6ae2f7bca550 1159 OPEN_INSTANCE* open_instance = (OPEN_INSTANCE*)open;
Azure.IoT Build 0:6ae2f7bca550 1160 AMQP_VALUE channel_max_amqp_value = amqpvalue_create_ushort(channel_max_value);
Azure.IoT Build 0:6ae2f7bca550 1161 if (channel_max_amqp_value == NULL)
Azure.IoT Build 0:6ae2f7bca550 1162 {
Azure.IoT Build 0:6ae2f7bca550 1163 result = __LINE__;
Azure.IoT Build 0:6ae2f7bca550 1164 }
Azure.IoT Build 0:6ae2f7bca550 1165 else
Azure.IoT Build 0:6ae2f7bca550 1166 {
Azure.IoT Build 0:6ae2f7bca550 1167 if (amqpvalue_set_composite_item(open_instance->composite_value, 3, channel_max_amqp_value) != 0)
Azure.IoT Build 0:6ae2f7bca550 1168 {
Azure.IoT Build 0:6ae2f7bca550 1169 result = __LINE__;
Azure.IoT Build 0:6ae2f7bca550 1170 }
Azure.IoT Build 0:6ae2f7bca550 1171 else
Azure.IoT Build 0:6ae2f7bca550 1172 {
Azure.IoT Build 0:6ae2f7bca550 1173 result = 0;
Azure.IoT Build 0:6ae2f7bca550 1174 }
Azure.IoT Build 0:6ae2f7bca550 1175
Azure.IoT Build 0:6ae2f7bca550 1176 amqpvalue_destroy(channel_max_amqp_value);
Azure.IoT Build 0:6ae2f7bca550 1177 }
Azure.IoT Build 0:6ae2f7bca550 1178 }
Azure.IoT Build 0:6ae2f7bca550 1179
Azure.IoT Build 0:6ae2f7bca550 1180 return result;
Azure.IoT Build 0:6ae2f7bca550 1181 }
Azure.IoT Build 0:6ae2f7bca550 1182
Azure.IoT Build 0:6ae2f7bca550 1183 int open_get_idle_time_out(OPEN_HANDLE open, milliseconds* idle_time_out_value)
Azure.IoT Build 0:6ae2f7bca550 1184 {
Azure.IoT Build 0:6ae2f7bca550 1185 int result;
Azure.IoT Build 0:6ae2f7bca550 1186
Azure.IoT Build 0:6ae2f7bca550 1187 if (open == NULL)
Azure.IoT Build 0:6ae2f7bca550 1188 {
Azure.IoT Build 0:6ae2f7bca550 1189 result = __LINE__;
Azure.IoT Build 0:6ae2f7bca550 1190 }
Azure.IoT Build 0:6ae2f7bca550 1191 else
Azure.IoT Build 0:6ae2f7bca550 1192 {
Azure.IoT Build 0:6ae2f7bca550 1193 OPEN_INSTANCE* open_instance = (OPEN_INSTANCE*)open;
Azure.IoT Build 0:6ae2f7bca550 1194 AMQP_VALUE item_value = amqpvalue_get_composite_item_in_place(open_instance->composite_value, 4);
Azure.IoT Build 0:6ae2f7bca550 1195 if (item_value == NULL)
Azure.IoT Build 0:6ae2f7bca550 1196 {
Azure.IoT Build 0:6ae2f7bca550 1197 result = __LINE__;
Azure.IoT Build 0:6ae2f7bca550 1198 }
Azure.IoT Build 0:6ae2f7bca550 1199 else
Azure.IoT Build 0:6ae2f7bca550 1200 {
Azure.IoT Build 0:6ae2f7bca550 1201 if (amqpvalue_get_milliseconds(item_value, idle_time_out_value) != 0)
Azure.IoT Build 0:6ae2f7bca550 1202 {
AzureIoTClient 16:22a72cf8e416 1203 result = __LINE__;
Azure.IoT Build 0:6ae2f7bca550 1204 }
Azure.IoT Build 0:6ae2f7bca550 1205 else
Azure.IoT Build 0:6ae2f7bca550 1206 {
Azure.IoT Build 0:6ae2f7bca550 1207 result = 0;
Azure.IoT Build 0:6ae2f7bca550 1208 }
Azure.IoT Build 0:6ae2f7bca550 1209 }
Azure.IoT Build 0:6ae2f7bca550 1210 }
Azure.IoT Build 0:6ae2f7bca550 1211
Azure.IoT Build 0:6ae2f7bca550 1212 return result;
Azure.IoT Build 0:6ae2f7bca550 1213 }
Azure.IoT Build 0:6ae2f7bca550 1214
Azure.IoT Build 0:6ae2f7bca550 1215 int open_set_idle_time_out(OPEN_HANDLE open, milliseconds idle_time_out_value)
Azure.IoT Build 0:6ae2f7bca550 1216 {
Azure.IoT Build 0:6ae2f7bca550 1217 int result;
Azure.IoT Build 0:6ae2f7bca550 1218
Azure.IoT Build 0:6ae2f7bca550 1219 if (open == NULL)
Azure.IoT Build 0:6ae2f7bca550 1220 {
Azure.IoT Build 0:6ae2f7bca550 1221 result = __LINE__;
Azure.IoT Build 0:6ae2f7bca550 1222 }
Azure.IoT Build 0:6ae2f7bca550 1223 else
Azure.IoT Build 0:6ae2f7bca550 1224 {
Azure.IoT Build 0:6ae2f7bca550 1225 OPEN_INSTANCE* open_instance = (OPEN_INSTANCE*)open;
Azure.IoT Build 0:6ae2f7bca550 1226 AMQP_VALUE idle_time_out_amqp_value = amqpvalue_create_milliseconds(idle_time_out_value);
Azure.IoT Build 0:6ae2f7bca550 1227 if (idle_time_out_amqp_value == NULL)
Azure.IoT Build 0:6ae2f7bca550 1228 {
Azure.IoT Build 0:6ae2f7bca550 1229 result = __LINE__;
Azure.IoT Build 0:6ae2f7bca550 1230 }
Azure.IoT Build 0:6ae2f7bca550 1231 else
Azure.IoT Build 0:6ae2f7bca550 1232 {
Azure.IoT Build 0:6ae2f7bca550 1233 if (amqpvalue_set_composite_item(open_instance->composite_value, 4, idle_time_out_amqp_value) != 0)
Azure.IoT Build 0:6ae2f7bca550 1234 {
Azure.IoT Build 0:6ae2f7bca550 1235 result = __LINE__;
Azure.IoT Build 0:6ae2f7bca550 1236 }
Azure.IoT Build 0:6ae2f7bca550 1237 else
Azure.IoT Build 0:6ae2f7bca550 1238 {
Azure.IoT Build 0:6ae2f7bca550 1239 result = 0;
Azure.IoT Build 0:6ae2f7bca550 1240 }
Azure.IoT Build 0:6ae2f7bca550 1241
Azure.IoT Build 0:6ae2f7bca550 1242 amqpvalue_destroy(idle_time_out_amqp_value);
Azure.IoT Build 0:6ae2f7bca550 1243 }
Azure.IoT Build 0:6ae2f7bca550 1244 }
Azure.IoT Build 0:6ae2f7bca550 1245
Azure.IoT Build 0:6ae2f7bca550 1246 return result;
Azure.IoT Build 0:6ae2f7bca550 1247 }
Azure.IoT Build 0:6ae2f7bca550 1248
Azure.IoT Build 0:6ae2f7bca550 1249 int open_get_outgoing_locales(OPEN_HANDLE open, AMQP_VALUE* outgoing_locales_value)
Azure.IoT Build 0:6ae2f7bca550 1250 {
Azure.IoT Build 0:6ae2f7bca550 1251 int result;
Azure.IoT Build 0:6ae2f7bca550 1252
Azure.IoT Build 0:6ae2f7bca550 1253 if (open == NULL)
Azure.IoT Build 0:6ae2f7bca550 1254 {
Azure.IoT Build 0:6ae2f7bca550 1255 result = __LINE__;
Azure.IoT Build 0:6ae2f7bca550 1256 }
Azure.IoT Build 0:6ae2f7bca550 1257 else
Azure.IoT Build 0:6ae2f7bca550 1258 {
Azure.IoT Build 0:6ae2f7bca550 1259 OPEN_INSTANCE* open_instance = (OPEN_INSTANCE*)open;
Azure.IoT Build 0:6ae2f7bca550 1260 AMQP_VALUE item_value = amqpvalue_get_composite_item_in_place(open_instance->composite_value, 5);
Azure.IoT Build 0:6ae2f7bca550 1261 if (item_value == NULL)
Azure.IoT Build 0:6ae2f7bca550 1262 {
Azure.IoT Build 0:6ae2f7bca550 1263 result = __LINE__;
Azure.IoT Build 0:6ae2f7bca550 1264 }
Azure.IoT Build 0:6ae2f7bca550 1265 else
Azure.IoT Build 0:6ae2f7bca550 1266 {
Azure.IoT Build 0:6ae2f7bca550 1267 if (amqpvalue_get_array(item_value, outgoing_locales_value) != 0)
Azure.IoT Build 0:6ae2f7bca550 1268 {
AzureIoTClient 16:22a72cf8e416 1269 result = __LINE__;
Azure.IoT Build 0:6ae2f7bca550 1270 }
Azure.IoT Build 0:6ae2f7bca550 1271 else
Azure.IoT Build 0:6ae2f7bca550 1272 {
Azure.IoT Build 0:6ae2f7bca550 1273 result = 0;
Azure.IoT Build 0:6ae2f7bca550 1274 }
Azure.IoT Build 0:6ae2f7bca550 1275 }
Azure.IoT Build 0:6ae2f7bca550 1276 }
Azure.IoT Build 0:6ae2f7bca550 1277
Azure.IoT Build 0:6ae2f7bca550 1278 return result;
Azure.IoT Build 0:6ae2f7bca550 1279 }
Azure.IoT Build 0:6ae2f7bca550 1280
Azure.IoT Build 0:6ae2f7bca550 1281 int open_set_outgoing_locales(OPEN_HANDLE open, AMQP_VALUE outgoing_locales_value)
Azure.IoT Build 0:6ae2f7bca550 1282 {
Azure.IoT Build 0:6ae2f7bca550 1283 int result;
Azure.IoT Build 0:6ae2f7bca550 1284
Azure.IoT Build 0:6ae2f7bca550 1285 if (open == NULL)
Azure.IoT Build 0:6ae2f7bca550 1286 {
Azure.IoT Build 0:6ae2f7bca550 1287 result = __LINE__;
Azure.IoT Build 0:6ae2f7bca550 1288 }
Azure.IoT Build 0:6ae2f7bca550 1289 else
Azure.IoT Build 0:6ae2f7bca550 1290 {
Azure.IoT Build 0:6ae2f7bca550 1291 OPEN_INSTANCE* open_instance = (OPEN_INSTANCE*)open;
Azure.IoT Build 0:6ae2f7bca550 1292 AMQP_VALUE outgoing_locales_amqp_value = amqpvalue_clone(outgoing_locales_value);
Azure.IoT Build 0:6ae2f7bca550 1293 if (outgoing_locales_amqp_value == NULL)
Azure.IoT Build 0:6ae2f7bca550 1294 {
Azure.IoT Build 0:6ae2f7bca550 1295 result = __LINE__;
Azure.IoT Build 0:6ae2f7bca550 1296 }
Azure.IoT Build 0:6ae2f7bca550 1297 else
Azure.IoT Build 0:6ae2f7bca550 1298 {
Azure.IoT Build 0:6ae2f7bca550 1299 if (amqpvalue_set_composite_item(open_instance->composite_value, 5, outgoing_locales_amqp_value) != 0)
Azure.IoT Build 0:6ae2f7bca550 1300 {
Azure.IoT Build 0:6ae2f7bca550 1301 result = __LINE__;
Azure.IoT Build 0:6ae2f7bca550 1302 }
Azure.IoT Build 0:6ae2f7bca550 1303 else
Azure.IoT Build 0:6ae2f7bca550 1304 {
Azure.IoT Build 0:6ae2f7bca550 1305 result = 0;
Azure.IoT Build 0:6ae2f7bca550 1306 }
Azure.IoT Build 0:6ae2f7bca550 1307
Azure.IoT Build 0:6ae2f7bca550 1308 amqpvalue_destroy(outgoing_locales_amqp_value);
Azure.IoT Build 0:6ae2f7bca550 1309 }
Azure.IoT Build 0:6ae2f7bca550 1310 }
Azure.IoT Build 0:6ae2f7bca550 1311
Azure.IoT Build 0:6ae2f7bca550 1312 return result;
Azure.IoT Build 0:6ae2f7bca550 1313 }
Azure.IoT Build 0:6ae2f7bca550 1314
Azure.IoT Build 0:6ae2f7bca550 1315 int open_get_incoming_locales(OPEN_HANDLE open, AMQP_VALUE* incoming_locales_value)
Azure.IoT Build 0:6ae2f7bca550 1316 {
Azure.IoT Build 0:6ae2f7bca550 1317 int result;
Azure.IoT Build 0:6ae2f7bca550 1318
Azure.IoT Build 0:6ae2f7bca550 1319 if (open == NULL)
Azure.IoT Build 0:6ae2f7bca550 1320 {
Azure.IoT Build 0:6ae2f7bca550 1321 result = __LINE__;
Azure.IoT Build 0:6ae2f7bca550 1322 }
Azure.IoT Build 0:6ae2f7bca550 1323 else
Azure.IoT Build 0:6ae2f7bca550 1324 {
Azure.IoT Build 0:6ae2f7bca550 1325 OPEN_INSTANCE* open_instance = (OPEN_INSTANCE*)open;
Azure.IoT Build 0:6ae2f7bca550 1326 AMQP_VALUE item_value = amqpvalue_get_composite_item_in_place(open_instance->composite_value, 6);
Azure.IoT Build 0:6ae2f7bca550 1327 if (item_value == NULL)
Azure.IoT Build 0:6ae2f7bca550 1328 {
Azure.IoT Build 0:6ae2f7bca550 1329 result = __LINE__;
Azure.IoT Build 0:6ae2f7bca550 1330 }
Azure.IoT Build 0:6ae2f7bca550 1331 else
Azure.IoT Build 0:6ae2f7bca550 1332 {
Azure.IoT Build 0:6ae2f7bca550 1333 if (amqpvalue_get_array(item_value, incoming_locales_value) != 0)
Azure.IoT Build 0:6ae2f7bca550 1334 {
AzureIoTClient 16:22a72cf8e416 1335 result = __LINE__;
Azure.IoT Build 0:6ae2f7bca550 1336 }
Azure.IoT Build 0:6ae2f7bca550 1337 else
Azure.IoT Build 0:6ae2f7bca550 1338 {
Azure.IoT Build 0:6ae2f7bca550 1339 result = 0;
Azure.IoT Build 0:6ae2f7bca550 1340 }
Azure.IoT Build 0:6ae2f7bca550 1341 }
Azure.IoT Build 0:6ae2f7bca550 1342 }
Azure.IoT Build 0:6ae2f7bca550 1343
Azure.IoT Build 0:6ae2f7bca550 1344 return result;
Azure.IoT Build 0:6ae2f7bca550 1345 }
Azure.IoT Build 0:6ae2f7bca550 1346
Azure.IoT Build 0:6ae2f7bca550 1347 int open_set_incoming_locales(OPEN_HANDLE open, AMQP_VALUE incoming_locales_value)
Azure.IoT Build 0:6ae2f7bca550 1348 {
Azure.IoT Build 0:6ae2f7bca550 1349 int result;
Azure.IoT Build 0:6ae2f7bca550 1350
Azure.IoT Build 0:6ae2f7bca550 1351 if (open == NULL)
Azure.IoT Build 0:6ae2f7bca550 1352 {
Azure.IoT Build 0:6ae2f7bca550 1353 result = __LINE__;
Azure.IoT Build 0:6ae2f7bca550 1354 }
Azure.IoT Build 0:6ae2f7bca550 1355 else
Azure.IoT Build 0:6ae2f7bca550 1356 {
Azure.IoT Build 0:6ae2f7bca550 1357 OPEN_INSTANCE* open_instance = (OPEN_INSTANCE*)open;
Azure.IoT Build 0:6ae2f7bca550 1358 AMQP_VALUE incoming_locales_amqp_value = amqpvalue_clone(incoming_locales_value);
Azure.IoT Build 0:6ae2f7bca550 1359 if (incoming_locales_amqp_value == NULL)
Azure.IoT Build 0:6ae2f7bca550 1360 {
Azure.IoT Build 0:6ae2f7bca550 1361 result = __LINE__;
Azure.IoT Build 0:6ae2f7bca550 1362 }
Azure.IoT Build 0:6ae2f7bca550 1363 else
Azure.IoT Build 0:6ae2f7bca550 1364 {
Azure.IoT Build 0:6ae2f7bca550 1365 if (amqpvalue_set_composite_item(open_instance->composite_value, 6, incoming_locales_amqp_value) != 0)
Azure.IoT Build 0:6ae2f7bca550 1366 {
Azure.IoT Build 0:6ae2f7bca550 1367 result = __LINE__;
Azure.IoT Build 0:6ae2f7bca550 1368 }
Azure.IoT Build 0:6ae2f7bca550 1369 else
Azure.IoT Build 0:6ae2f7bca550 1370 {
Azure.IoT Build 0:6ae2f7bca550 1371 result = 0;
Azure.IoT Build 0:6ae2f7bca550 1372 }
Azure.IoT Build 0:6ae2f7bca550 1373
Azure.IoT Build 0:6ae2f7bca550 1374 amqpvalue_destroy(incoming_locales_amqp_value);
Azure.IoT Build 0:6ae2f7bca550 1375 }
Azure.IoT Build 0:6ae2f7bca550 1376 }
Azure.IoT Build 0:6ae2f7bca550 1377
Azure.IoT Build 0:6ae2f7bca550 1378 return result;
Azure.IoT Build 0:6ae2f7bca550 1379 }
Azure.IoT Build 0:6ae2f7bca550 1380
Azure.IoT Build 0:6ae2f7bca550 1381 int open_get_offered_capabilities(OPEN_HANDLE open, AMQP_VALUE* offered_capabilities_value)
Azure.IoT Build 0:6ae2f7bca550 1382 {
Azure.IoT Build 0:6ae2f7bca550 1383 int result;
Azure.IoT Build 0:6ae2f7bca550 1384
Azure.IoT Build 0:6ae2f7bca550 1385 if (open == NULL)
Azure.IoT Build 0:6ae2f7bca550 1386 {
Azure.IoT Build 0:6ae2f7bca550 1387 result = __LINE__;
Azure.IoT Build 0:6ae2f7bca550 1388 }
Azure.IoT Build 0:6ae2f7bca550 1389 else
Azure.IoT Build 0:6ae2f7bca550 1390 {
Azure.IoT Build 0:6ae2f7bca550 1391 OPEN_INSTANCE* open_instance = (OPEN_INSTANCE*)open;
Azure.IoT Build 0:6ae2f7bca550 1392 AMQP_VALUE item_value = amqpvalue_get_composite_item_in_place(open_instance->composite_value, 7);
Azure.IoT Build 0:6ae2f7bca550 1393 if (item_value == NULL)
Azure.IoT Build 0:6ae2f7bca550 1394 {
Azure.IoT Build 0:6ae2f7bca550 1395 result = __LINE__;
Azure.IoT Build 0:6ae2f7bca550 1396 }
Azure.IoT Build 0:6ae2f7bca550 1397 else
Azure.IoT Build 0:6ae2f7bca550 1398 {
Azure.IoT Build 0:6ae2f7bca550 1399 if (amqpvalue_get_array(item_value, offered_capabilities_value) != 0)
Azure.IoT Build 0:6ae2f7bca550 1400 {
AzureIoTClient 16:22a72cf8e416 1401 result = __LINE__;
Azure.IoT Build 0:6ae2f7bca550 1402 }
Azure.IoT Build 0:6ae2f7bca550 1403 else
Azure.IoT Build 0:6ae2f7bca550 1404 {
Azure.IoT Build 0:6ae2f7bca550 1405 result = 0;
Azure.IoT Build 0:6ae2f7bca550 1406 }
Azure.IoT Build 0:6ae2f7bca550 1407 }
Azure.IoT Build 0:6ae2f7bca550 1408 }
Azure.IoT Build 0:6ae2f7bca550 1409
Azure.IoT Build 0:6ae2f7bca550 1410 return result;
Azure.IoT Build 0:6ae2f7bca550 1411 }
Azure.IoT Build 0:6ae2f7bca550 1412
Azure.IoT Build 0:6ae2f7bca550 1413 int open_set_offered_capabilities(OPEN_HANDLE open, AMQP_VALUE offered_capabilities_value)
Azure.IoT Build 0:6ae2f7bca550 1414 {
Azure.IoT Build 0:6ae2f7bca550 1415 int result;
Azure.IoT Build 0:6ae2f7bca550 1416
Azure.IoT Build 0:6ae2f7bca550 1417 if (open == NULL)
Azure.IoT Build 0:6ae2f7bca550 1418 {
Azure.IoT Build 0:6ae2f7bca550 1419 result = __LINE__;
Azure.IoT Build 0:6ae2f7bca550 1420 }
Azure.IoT Build 0:6ae2f7bca550 1421 else
Azure.IoT Build 0:6ae2f7bca550 1422 {
Azure.IoT Build 0:6ae2f7bca550 1423 OPEN_INSTANCE* open_instance = (OPEN_INSTANCE*)open;
Azure.IoT Build 0:6ae2f7bca550 1424 AMQP_VALUE offered_capabilities_amqp_value = amqpvalue_clone(offered_capabilities_value);
Azure.IoT Build 0:6ae2f7bca550 1425 if (offered_capabilities_amqp_value == NULL)
Azure.IoT Build 0:6ae2f7bca550 1426 {
Azure.IoT Build 0:6ae2f7bca550 1427 result = __LINE__;
Azure.IoT Build 0:6ae2f7bca550 1428 }
Azure.IoT Build 0:6ae2f7bca550 1429 else
Azure.IoT Build 0:6ae2f7bca550 1430 {
Azure.IoT Build 0:6ae2f7bca550 1431 if (amqpvalue_set_composite_item(open_instance->composite_value, 7, offered_capabilities_amqp_value) != 0)
Azure.IoT Build 0:6ae2f7bca550 1432 {
Azure.IoT Build 0:6ae2f7bca550 1433 result = __LINE__;
Azure.IoT Build 0:6ae2f7bca550 1434 }
Azure.IoT Build 0:6ae2f7bca550 1435 else
Azure.IoT Build 0:6ae2f7bca550 1436 {
Azure.IoT Build 0:6ae2f7bca550 1437 result = 0;
Azure.IoT Build 0:6ae2f7bca550 1438 }
Azure.IoT Build 0:6ae2f7bca550 1439
Azure.IoT Build 0:6ae2f7bca550 1440 amqpvalue_destroy(offered_capabilities_amqp_value);
Azure.IoT Build 0:6ae2f7bca550 1441 }
Azure.IoT Build 0:6ae2f7bca550 1442 }
Azure.IoT Build 0:6ae2f7bca550 1443
Azure.IoT Build 0:6ae2f7bca550 1444 return result;
Azure.IoT Build 0:6ae2f7bca550 1445 }
Azure.IoT Build 0:6ae2f7bca550 1446
Azure.IoT Build 0:6ae2f7bca550 1447 int open_get_desired_capabilities(OPEN_HANDLE open, AMQP_VALUE* desired_capabilities_value)
Azure.IoT Build 0:6ae2f7bca550 1448 {
Azure.IoT Build 0:6ae2f7bca550 1449 int result;
Azure.IoT Build 0:6ae2f7bca550 1450
Azure.IoT Build 0:6ae2f7bca550 1451 if (open == NULL)
Azure.IoT Build 0:6ae2f7bca550 1452 {
Azure.IoT Build 0:6ae2f7bca550 1453 result = __LINE__;
Azure.IoT Build 0:6ae2f7bca550 1454 }
Azure.IoT Build 0:6ae2f7bca550 1455 else
Azure.IoT Build 0:6ae2f7bca550 1456 {
Azure.IoT Build 0:6ae2f7bca550 1457 OPEN_INSTANCE* open_instance = (OPEN_INSTANCE*)open;
Azure.IoT Build 0:6ae2f7bca550 1458 AMQP_VALUE item_value = amqpvalue_get_composite_item_in_place(open_instance->composite_value, 8);
Azure.IoT Build 0:6ae2f7bca550 1459 if (item_value == NULL)
Azure.IoT Build 0:6ae2f7bca550 1460 {
Azure.IoT Build 0:6ae2f7bca550 1461 result = __LINE__;
Azure.IoT Build 0:6ae2f7bca550 1462 }
Azure.IoT Build 0:6ae2f7bca550 1463 else
Azure.IoT Build 0:6ae2f7bca550 1464 {
Azure.IoT Build 0:6ae2f7bca550 1465 if (amqpvalue_get_array(item_value, desired_capabilities_value) != 0)
Azure.IoT Build 0:6ae2f7bca550 1466 {
AzureIoTClient 16:22a72cf8e416 1467 result = __LINE__;
Azure.IoT Build 0:6ae2f7bca550 1468 }
Azure.IoT Build 0:6ae2f7bca550 1469 else
Azure.IoT Build 0:6ae2f7bca550 1470 {
Azure.IoT Build 0:6ae2f7bca550 1471 result = 0;
Azure.IoT Build 0:6ae2f7bca550 1472 }
Azure.IoT Build 0:6ae2f7bca550 1473 }
Azure.IoT Build 0:6ae2f7bca550 1474 }
Azure.IoT Build 0:6ae2f7bca550 1475
Azure.IoT Build 0:6ae2f7bca550 1476 return result;
Azure.IoT Build 0:6ae2f7bca550 1477 }
Azure.IoT Build 0:6ae2f7bca550 1478
Azure.IoT Build 0:6ae2f7bca550 1479 int open_set_desired_capabilities(OPEN_HANDLE open, AMQP_VALUE desired_capabilities_value)
Azure.IoT Build 0:6ae2f7bca550 1480 {
Azure.IoT Build 0:6ae2f7bca550 1481 int result;
Azure.IoT Build 0:6ae2f7bca550 1482
Azure.IoT Build 0:6ae2f7bca550 1483 if (open == NULL)
Azure.IoT Build 0:6ae2f7bca550 1484 {
Azure.IoT Build 0:6ae2f7bca550 1485 result = __LINE__;
Azure.IoT Build 0:6ae2f7bca550 1486 }
Azure.IoT Build 0:6ae2f7bca550 1487 else
Azure.IoT Build 0:6ae2f7bca550 1488 {
Azure.IoT Build 0:6ae2f7bca550 1489 OPEN_INSTANCE* open_instance = (OPEN_INSTANCE*)open;
Azure.IoT Build 0:6ae2f7bca550 1490 AMQP_VALUE desired_capabilities_amqp_value = amqpvalue_clone(desired_capabilities_value);
Azure.IoT Build 0:6ae2f7bca550 1491 if (desired_capabilities_amqp_value == NULL)
Azure.IoT Build 0:6ae2f7bca550 1492 {
Azure.IoT Build 0:6ae2f7bca550 1493 result = __LINE__;
Azure.IoT Build 0:6ae2f7bca550 1494 }
Azure.IoT Build 0:6ae2f7bca550 1495 else
Azure.IoT Build 0:6ae2f7bca550 1496 {
Azure.IoT Build 0:6ae2f7bca550 1497 if (amqpvalue_set_composite_item(open_instance->composite_value, 8, desired_capabilities_amqp_value) != 0)
Azure.IoT Build 0:6ae2f7bca550 1498 {
Azure.IoT Build 0:6ae2f7bca550 1499 result = __LINE__;
Azure.IoT Build 0:6ae2f7bca550 1500 }
Azure.IoT Build 0:6ae2f7bca550 1501 else
Azure.IoT Build 0:6ae2f7bca550 1502 {
Azure.IoT Build 0:6ae2f7bca550 1503 result = 0;
Azure.IoT Build 0:6ae2f7bca550 1504 }
Azure.IoT Build 0:6ae2f7bca550 1505
Azure.IoT Build 0:6ae2f7bca550 1506 amqpvalue_destroy(desired_capabilities_amqp_value);
Azure.IoT Build 0:6ae2f7bca550 1507 }
Azure.IoT Build 0:6ae2f7bca550 1508 }
Azure.IoT Build 0:6ae2f7bca550 1509
Azure.IoT Build 0:6ae2f7bca550 1510 return result;
Azure.IoT Build 0:6ae2f7bca550 1511 }
Azure.IoT Build 0:6ae2f7bca550 1512
Azure.IoT Build 0:6ae2f7bca550 1513 int open_get_properties(OPEN_HANDLE open, fields* properties_value)
Azure.IoT Build 0:6ae2f7bca550 1514 {
Azure.IoT Build 0:6ae2f7bca550 1515 int result;
Azure.IoT Build 0:6ae2f7bca550 1516
Azure.IoT Build 0:6ae2f7bca550 1517 if (open == NULL)
Azure.IoT Build 0:6ae2f7bca550 1518 {
Azure.IoT Build 0:6ae2f7bca550 1519 result = __LINE__;
Azure.IoT Build 0:6ae2f7bca550 1520 }
Azure.IoT Build 0:6ae2f7bca550 1521 else
Azure.IoT Build 0:6ae2f7bca550 1522 {
Azure.IoT Build 0:6ae2f7bca550 1523 OPEN_INSTANCE* open_instance = (OPEN_INSTANCE*)open;
Azure.IoT Build 0:6ae2f7bca550 1524 AMQP_VALUE item_value = amqpvalue_get_composite_item_in_place(open_instance->composite_value, 9);
Azure.IoT Build 0:6ae2f7bca550 1525 if (item_value == NULL)
Azure.IoT Build 0:6ae2f7bca550 1526 {
Azure.IoT Build 0:6ae2f7bca550 1527 result = __LINE__;
Azure.IoT Build 0:6ae2f7bca550 1528 }
Azure.IoT Build 0:6ae2f7bca550 1529 else
Azure.IoT Build 0:6ae2f7bca550 1530 {
Azure.IoT Build 0:6ae2f7bca550 1531 if (amqpvalue_get_fields(item_value, properties_value) != 0)
Azure.IoT Build 0:6ae2f7bca550 1532 {
AzureIoTClient 16:22a72cf8e416 1533 result = __LINE__;
Azure.IoT Build 0:6ae2f7bca550 1534 }
Azure.IoT Build 0:6ae2f7bca550 1535 else
Azure.IoT Build 0:6ae2f7bca550 1536 {
Azure.IoT Build 0:6ae2f7bca550 1537 result = 0;
Azure.IoT Build 0:6ae2f7bca550 1538 }
Azure.IoT Build 0:6ae2f7bca550 1539 }
Azure.IoT Build 0:6ae2f7bca550 1540 }
Azure.IoT Build 0:6ae2f7bca550 1541
Azure.IoT Build 0:6ae2f7bca550 1542 return result;
Azure.IoT Build 0:6ae2f7bca550 1543 }
Azure.IoT Build 0:6ae2f7bca550 1544
Azure.IoT Build 0:6ae2f7bca550 1545 int open_set_properties(OPEN_HANDLE open, fields properties_value)
Azure.IoT Build 0:6ae2f7bca550 1546 {
Azure.IoT Build 0:6ae2f7bca550 1547 int result;
Azure.IoT Build 0:6ae2f7bca550 1548
Azure.IoT Build 0:6ae2f7bca550 1549 if (open == NULL)
Azure.IoT Build 0:6ae2f7bca550 1550 {
Azure.IoT Build 0:6ae2f7bca550 1551 result = __LINE__;
Azure.IoT Build 0:6ae2f7bca550 1552 }
Azure.IoT Build 0:6ae2f7bca550 1553 else
Azure.IoT Build 0:6ae2f7bca550 1554 {
Azure.IoT Build 0:6ae2f7bca550 1555 OPEN_INSTANCE* open_instance = (OPEN_INSTANCE*)open;
Azure.IoT Build 0:6ae2f7bca550 1556 AMQP_VALUE properties_amqp_value = amqpvalue_create_fields(properties_value);
Azure.IoT Build 0:6ae2f7bca550 1557 if (properties_amqp_value == NULL)
Azure.IoT Build 0:6ae2f7bca550 1558 {
Azure.IoT Build 0:6ae2f7bca550 1559 result = __LINE__;
Azure.IoT Build 0:6ae2f7bca550 1560 }
Azure.IoT Build 0:6ae2f7bca550 1561 else
Azure.IoT Build 0:6ae2f7bca550 1562 {
Azure.IoT Build 0:6ae2f7bca550 1563 if (amqpvalue_set_composite_item(open_instance->composite_value, 9, properties_amqp_value) != 0)
Azure.IoT Build 0:6ae2f7bca550 1564 {
Azure.IoT Build 0:6ae2f7bca550 1565 result = __LINE__;
Azure.IoT Build 0:6ae2f7bca550 1566 }
Azure.IoT Build 0:6ae2f7bca550 1567 else
Azure.IoT Build 0:6ae2f7bca550 1568 {
Azure.IoT Build 0:6ae2f7bca550 1569 result = 0;
Azure.IoT Build 0:6ae2f7bca550 1570 }
Azure.IoT Build 0:6ae2f7bca550 1571
Azure.IoT Build 0:6ae2f7bca550 1572 amqpvalue_destroy(properties_amqp_value);
Azure.IoT Build 0:6ae2f7bca550 1573 }
Azure.IoT Build 0:6ae2f7bca550 1574 }
Azure.IoT Build 0:6ae2f7bca550 1575
Azure.IoT Build 0:6ae2f7bca550 1576 return result;
Azure.IoT Build 0:6ae2f7bca550 1577 }
Azure.IoT Build 0:6ae2f7bca550 1578
Azure.IoT Build 0:6ae2f7bca550 1579
Azure.IoT Build 0:6ae2f7bca550 1580 /* begin */
Azure.IoT Build 0:6ae2f7bca550 1581
Azure.IoT Build 0:6ae2f7bca550 1582 typedef struct BEGIN_INSTANCE_TAG
Azure.IoT Build 0:6ae2f7bca550 1583 {
Azure.IoT Build 0:6ae2f7bca550 1584 AMQP_VALUE composite_value;
Azure.IoT Build 0:6ae2f7bca550 1585 } BEGIN_INSTANCE;
Azure.IoT Build 0:6ae2f7bca550 1586
Azure.IoT Build 0:6ae2f7bca550 1587 static BEGIN_HANDLE begin_create_internal(void)
Azure.IoT Build 0:6ae2f7bca550 1588 {
Azure.IoT Build 0:6ae2f7bca550 1589 BEGIN_INSTANCE* begin_instance = (BEGIN_INSTANCE*)amqpalloc_malloc(sizeof(BEGIN_INSTANCE));
Azure.IoT Build 0:6ae2f7bca550 1590 if (begin_instance != NULL)
Azure.IoT Build 0:6ae2f7bca550 1591 {
Azure.IoT Build 0:6ae2f7bca550 1592 begin_instance->composite_value = NULL;
Azure.IoT Build 0:6ae2f7bca550 1593 }
Azure.IoT Build 0:6ae2f7bca550 1594
Azure.IoT Build 0:6ae2f7bca550 1595 return begin_instance;
Azure.IoT Build 0:6ae2f7bca550 1596 }
Azure.IoT Build 0:6ae2f7bca550 1597
Azure.IoT Build 0:6ae2f7bca550 1598 BEGIN_HANDLE begin_create(transfer_number next_outgoing_id_value, uint32_t incoming_window_value, uint32_t outgoing_window_value)
Azure.IoT Build 0:6ae2f7bca550 1599 {
Azure.IoT Build 0:6ae2f7bca550 1600 BEGIN_INSTANCE* begin_instance = (BEGIN_INSTANCE*)amqpalloc_malloc(sizeof(BEGIN_INSTANCE));
Azure.IoT Build 0:6ae2f7bca550 1601 if (begin_instance != NULL)
Azure.IoT Build 0:6ae2f7bca550 1602 {
Azure.IoT Build 0:6ae2f7bca550 1603 begin_instance->composite_value = amqpvalue_create_composite_with_ulong_descriptor(17);
Azure.IoT Build 0:6ae2f7bca550 1604 if (begin_instance->composite_value == NULL)
Azure.IoT Build 0:6ae2f7bca550 1605 {
Azure.IoT Build 0:6ae2f7bca550 1606 amqpalloc_free(begin_instance);
Azure.IoT Build 0:6ae2f7bca550 1607 begin_instance = NULL;
Azure.IoT Build 0:6ae2f7bca550 1608 }
Azure.IoT Build 0:6ae2f7bca550 1609 else
Azure.IoT Build 0:6ae2f7bca550 1610 {
Azure.IoT Build 0:6ae2f7bca550 1611 AMQP_VALUE next_outgoing_id_amqp_value;
Azure.IoT Build 0:6ae2f7bca550 1612 AMQP_VALUE incoming_window_amqp_value;
Azure.IoT Build 0:6ae2f7bca550 1613 AMQP_VALUE outgoing_window_amqp_value;
Azure.IoT Build 0:6ae2f7bca550 1614 int result = 0;
Azure.IoT Build 0:6ae2f7bca550 1615
Azure.IoT Build 0:6ae2f7bca550 1616 next_outgoing_id_amqp_value = amqpvalue_create_transfer_number(next_outgoing_id_value);
Azure.IoT Build 0:6ae2f7bca550 1617 if ((result == 0) && (amqpvalue_set_composite_item(begin_instance->composite_value, 1, next_outgoing_id_amqp_value) != 0))
Azure.IoT Build 0:6ae2f7bca550 1618 {
Azure.IoT Build 0:6ae2f7bca550 1619 result = __LINE__;
Azure.IoT Build 0:6ae2f7bca550 1620 }
Azure.IoT Build 0:6ae2f7bca550 1621 incoming_window_amqp_value = amqpvalue_create_uint(incoming_window_value);
Azure.IoT Build 0:6ae2f7bca550 1622 if ((result == 0) && (amqpvalue_set_composite_item(begin_instance->composite_value, 2, incoming_window_amqp_value) != 0))
Azure.IoT Build 0:6ae2f7bca550 1623 {
Azure.IoT Build 0:6ae2f7bca550 1624 result = __LINE__;
Azure.IoT Build 0:6ae2f7bca550 1625 }
Azure.IoT Build 0:6ae2f7bca550 1626 outgoing_window_amqp_value = amqpvalue_create_uint(outgoing_window_value);
Azure.IoT Build 0:6ae2f7bca550 1627 if ((result == 0) && (amqpvalue_set_composite_item(begin_instance->composite_value, 3, outgoing_window_amqp_value) != 0))
Azure.IoT Build 0:6ae2f7bca550 1628 {
Azure.IoT Build 0:6ae2f7bca550 1629 result = __LINE__;
Azure.IoT Build 0:6ae2f7bca550 1630 }
Azure.IoT Build 0:6ae2f7bca550 1631
Azure.IoT Build 0:6ae2f7bca550 1632 amqpvalue_destroy(next_outgoing_id_amqp_value);
Azure.IoT Build 0:6ae2f7bca550 1633 amqpvalue_destroy(incoming_window_amqp_value);
Azure.IoT Build 0:6ae2f7bca550 1634 amqpvalue_destroy(outgoing_window_amqp_value);
Azure.IoT Build 0:6ae2f7bca550 1635 }
Azure.IoT Build 0:6ae2f7bca550 1636 }
Azure.IoT Build 0:6ae2f7bca550 1637
Azure.IoT Build 0:6ae2f7bca550 1638 return begin_instance;
Azure.IoT Build 0:6ae2f7bca550 1639 }
Azure.IoT Build 0:6ae2f7bca550 1640
Azure.IoT Build 0:6ae2f7bca550 1641 BEGIN_HANDLE begin_clone(BEGIN_HANDLE value)
Azure.IoT Build 0:6ae2f7bca550 1642 {
Azure.IoT Build 0:6ae2f7bca550 1643 BEGIN_INSTANCE* begin_instance = (BEGIN_INSTANCE*)amqpalloc_malloc(sizeof(BEGIN_INSTANCE));
Azure.IoT Build 0:6ae2f7bca550 1644 if (begin_instance != NULL)
Azure.IoT Build 0:6ae2f7bca550 1645 {
Azure.IoT Build 0:6ae2f7bca550 1646 begin_instance->composite_value = amqpvalue_clone(((BEGIN_INSTANCE*)value)->composite_value);
Azure.IoT Build 0:6ae2f7bca550 1647 if (begin_instance->composite_value == NULL)
Azure.IoT Build 0:6ae2f7bca550 1648 {
Azure.IoT Build 0:6ae2f7bca550 1649 amqpalloc_free(begin_instance);
Azure.IoT Build 0:6ae2f7bca550 1650 begin_instance = NULL;
Azure.IoT Build 0:6ae2f7bca550 1651 }
Azure.IoT Build 0:6ae2f7bca550 1652 }
Azure.IoT Build 0:6ae2f7bca550 1653
Azure.IoT Build 0:6ae2f7bca550 1654 return begin_instance;
Azure.IoT Build 0:6ae2f7bca550 1655 }
Azure.IoT Build 0:6ae2f7bca550 1656
Azure.IoT Build 0:6ae2f7bca550 1657 void begin_destroy(BEGIN_HANDLE begin)
Azure.IoT Build 0:6ae2f7bca550 1658 {
Azure.IoT Build 0:6ae2f7bca550 1659 if (begin != NULL)
Azure.IoT Build 0:6ae2f7bca550 1660 {
Azure.IoT Build 0:6ae2f7bca550 1661 BEGIN_INSTANCE* begin_instance = (BEGIN_INSTANCE*)begin;
Azure.IoT Build 0:6ae2f7bca550 1662 amqpvalue_destroy(begin_instance->composite_value);
Azure.IoT Build 0:6ae2f7bca550 1663 amqpalloc_free(begin_instance);
Azure.IoT Build 0:6ae2f7bca550 1664 }
Azure.IoT Build 0:6ae2f7bca550 1665 }
Azure.IoT Build 0:6ae2f7bca550 1666
Azure.IoT Build 0:6ae2f7bca550 1667 AMQP_VALUE amqpvalue_create_begin(BEGIN_HANDLE begin)
Azure.IoT Build 0:6ae2f7bca550 1668 {
Azure.IoT Build 0:6ae2f7bca550 1669 AMQP_VALUE result;
Azure.IoT Build 0:6ae2f7bca550 1670
Azure.IoT Build 0:6ae2f7bca550 1671 if (begin == NULL)
Azure.IoT Build 0:6ae2f7bca550 1672 {
Azure.IoT Build 0:6ae2f7bca550 1673 result = NULL;
Azure.IoT Build 0:6ae2f7bca550 1674 }
Azure.IoT Build 0:6ae2f7bca550 1675 else
Azure.IoT Build 0:6ae2f7bca550 1676 {
Azure.IoT Build 0:6ae2f7bca550 1677 BEGIN_INSTANCE* begin_instance = (BEGIN_INSTANCE*)begin;
Azure.IoT Build 0:6ae2f7bca550 1678 result = amqpvalue_clone(begin_instance->composite_value);
Azure.IoT Build 0:6ae2f7bca550 1679 }
Azure.IoT Build 0:6ae2f7bca550 1680
Azure.IoT Build 0:6ae2f7bca550 1681 return result;
Azure.IoT Build 0:6ae2f7bca550 1682 }
Azure.IoT Build 0:6ae2f7bca550 1683
Azure.IoT Build 0:6ae2f7bca550 1684 bool is_begin_type_by_descriptor(AMQP_VALUE descriptor)
Azure.IoT Build 0:6ae2f7bca550 1685 {
Azure.IoT Build 0:6ae2f7bca550 1686 bool result;
Azure.IoT Build 0:6ae2f7bca550 1687
Azure.IoT Build 0:6ae2f7bca550 1688 uint64_t descriptor_ulong;
Azure.IoT Build 0:6ae2f7bca550 1689 if ((amqpvalue_get_ulong(descriptor, &descriptor_ulong) == 0) &&
Azure.IoT Build 0:6ae2f7bca550 1690 (descriptor_ulong == 17))
Azure.IoT Build 0:6ae2f7bca550 1691 {
Azure.IoT Build 0:6ae2f7bca550 1692 result = true;
Azure.IoT Build 0:6ae2f7bca550 1693 }
Azure.IoT Build 0:6ae2f7bca550 1694 else
Azure.IoT Build 0:6ae2f7bca550 1695 {
Azure.IoT Build 0:6ae2f7bca550 1696 result = false;
Azure.IoT Build 0:6ae2f7bca550 1697 }
Azure.IoT Build 0:6ae2f7bca550 1698
Azure.IoT Build 0:6ae2f7bca550 1699 return result;
Azure.IoT Build 0:6ae2f7bca550 1700 }
Azure.IoT Build 0:6ae2f7bca550 1701
Azure.IoT Build 0:6ae2f7bca550 1702
Azure.IoT Build 0:6ae2f7bca550 1703 int amqpvalue_get_begin(AMQP_VALUE value, BEGIN_HANDLE* begin_handle)
Azure.IoT Build 0:6ae2f7bca550 1704 {
Azure.IoT Build 0:6ae2f7bca550 1705 int result;
Azure.IoT Build 0:6ae2f7bca550 1706 BEGIN_INSTANCE* begin_instance = (BEGIN_INSTANCE*)begin_create_internal();
Azure.IoT Build 0:6ae2f7bca550 1707 *begin_handle = begin_instance;
Azure.IoT Build 0:6ae2f7bca550 1708 if (*begin_handle == NULL)
Azure.IoT Build 0:6ae2f7bca550 1709 {
Azure.IoT Build 0:6ae2f7bca550 1710 result = __LINE__;
Azure.IoT Build 0:6ae2f7bca550 1711 }
Azure.IoT Build 0:6ae2f7bca550 1712 else
Azure.IoT Build 0:6ae2f7bca550 1713 {
Azure.IoT Build 0:6ae2f7bca550 1714 AMQP_VALUE list_value = amqpvalue_get_inplace_described_value(value);
Azure.IoT Build 0:6ae2f7bca550 1715 if (list_value == NULL)
Azure.IoT Build 0:6ae2f7bca550 1716 {
Azure.IoT Build 0:6ae2f7bca550 1717 begin_destroy(*begin_handle);
Azure.IoT Build 0:6ae2f7bca550 1718 result = __LINE__;
Azure.IoT Build 0:6ae2f7bca550 1719 }
Azure.IoT Build 0:6ae2f7bca550 1720 else
Azure.IoT Build 0:6ae2f7bca550 1721 {
Azure.IoT Build 0:6ae2f7bca550 1722 do
Azure.IoT Build 0:6ae2f7bca550 1723 {
Azure.IoT Build 0:6ae2f7bca550 1724 AMQP_VALUE item_value;
Azure.IoT Build 0:6ae2f7bca550 1725 /* remote-channel */
Azure.IoT Build 0:6ae2f7bca550 1726 item_value = amqpvalue_get_list_item(list_value, 0);
Azure.IoT Build 0:6ae2f7bca550 1727 if (item_value == NULL)
Azure.IoT Build 0:6ae2f7bca550 1728 {
Azure.IoT Build 0:6ae2f7bca550 1729 /* do nothing */
Azure.IoT Build 0:6ae2f7bca550 1730 }
Azure.IoT Build 0:6ae2f7bca550 1731 else
Azure.IoT Build 0:6ae2f7bca550 1732 {
Azure.IoT Build 0:6ae2f7bca550 1733 uint16_t remote_channel;
Azure.IoT Build 0:6ae2f7bca550 1734 if (amqpvalue_get_ushort(item_value, &remote_channel) != 0)
Azure.IoT Build 0:6ae2f7bca550 1735 {
Azure.IoT Build 0:6ae2f7bca550 1736 if (amqpvalue_get_type(item_value) != AMQP_TYPE_NULL)
Azure.IoT Build 0:6ae2f7bca550 1737 {
Azure.IoT Build 0:6ae2f7bca550 1738 begin_destroy(*begin_handle);
Azure.IoT Build 0:6ae2f7bca550 1739 result = __LINE__;
Azure.IoT Build 0:6ae2f7bca550 1740 break;
Azure.IoT Build 0:6ae2f7bca550 1741 }
Azure.IoT Build 0:6ae2f7bca550 1742 }
Azure.IoT Build 0:6ae2f7bca550 1743
Azure.IoT Build 0:6ae2f7bca550 1744 amqpvalue_destroy(item_value);
Azure.IoT Build 0:6ae2f7bca550 1745 }
Azure.IoT Build 0:6ae2f7bca550 1746 /* next-outgoing-id */
Azure.IoT Build 0:6ae2f7bca550 1747 item_value = amqpvalue_get_list_item(list_value, 1);
Azure.IoT Build 0:6ae2f7bca550 1748 if (item_value == NULL)
Azure.IoT Build 0:6ae2f7bca550 1749 {
Azure.IoT Build 0:6ae2f7bca550 1750 {
Azure.IoT Build 0:6ae2f7bca550 1751 begin_destroy(*begin_handle);
Azure.IoT Build 0:6ae2f7bca550 1752 result = __LINE__;
Azure.IoT Build 0:6ae2f7bca550 1753 break;
Azure.IoT Build 0:6ae2f7bca550 1754 }
Azure.IoT Build 0:6ae2f7bca550 1755 }
Azure.IoT Build 0:6ae2f7bca550 1756 else
Azure.IoT Build 0:6ae2f7bca550 1757 {
Azure.IoT Build 0:6ae2f7bca550 1758 transfer_number next_outgoing_id;
Azure.IoT Build 0:6ae2f7bca550 1759 if (amqpvalue_get_transfer_number(item_value, &next_outgoing_id) != 0)
Azure.IoT Build 0:6ae2f7bca550 1760 {
Azure.IoT Build 0:6ae2f7bca550 1761 begin_destroy(*begin_handle);
Azure.IoT Build 0:6ae2f7bca550 1762 result = __LINE__;
Azure.IoT Build 0:6ae2f7bca550 1763 break;
Azure.IoT Build 0:6ae2f7bca550 1764 }
Azure.IoT Build 0:6ae2f7bca550 1765
Azure.IoT Build 0:6ae2f7bca550 1766 amqpvalue_destroy(item_value);
Azure.IoT Build 0:6ae2f7bca550 1767 }
Azure.IoT Build 0:6ae2f7bca550 1768 /* incoming-window */
Azure.IoT Build 0:6ae2f7bca550 1769 item_value = amqpvalue_get_list_item(list_value, 2);
Azure.IoT Build 0:6ae2f7bca550 1770 if (item_value == NULL)
Azure.IoT Build 0:6ae2f7bca550 1771 {
Azure.IoT Build 0:6ae2f7bca550 1772 {
Azure.IoT Build 0:6ae2f7bca550 1773 begin_destroy(*begin_handle);
Azure.IoT Build 0:6ae2f7bca550 1774 result = __LINE__;
Azure.IoT Build 0:6ae2f7bca550 1775 break;
Azure.IoT Build 0:6ae2f7bca550 1776 }
Azure.IoT Build 0:6ae2f7bca550 1777 }
Azure.IoT Build 0:6ae2f7bca550 1778 else
Azure.IoT Build 0:6ae2f7bca550 1779 {
Azure.IoT Build 0:6ae2f7bca550 1780 uint32_t incoming_window;
Azure.IoT Build 0:6ae2f7bca550 1781 if (amqpvalue_get_uint(item_value, &incoming_window) != 0)
Azure.IoT Build 0:6ae2f7bca550 1782 {
Azure.IoT Build 0:6ae2f7bca550 1783 begin_destroy(*begin_handle);
Azure.IoT Build 0:6ae2f7bca550 1784 result = __LINE__;
Azure.IoT Build 0:6ae2f7bca550 1785 break;
Azure.IoT Build 0:6ae2f7bca550 1786 }
Azure.IoT Build 0:6ae2f7bca550 1787
Azure.IoT Build 0:6ae2f7bca550 1788 amqpvalue_destroy(item_value);
Azure.IoT Build 0:6ae2f7bca550 1789 }
Azure.IoT Build 0:6ae2f7bca550 1790 /* outgoing-window */
Azure.IoT Build 0:6ae2f7bca550 1791 item_value = amqpvalue_get_list_item(list_value, 3);
Azure.IoT Build 0:6ae2f7bca550 1792 if (item_value == NULL)
Azure.IoT Build 0:6ae2f7bca550 1793 {
Azure.IoT Build 0:6ae2f7bca550 1794 {
Azure.IoT Build 0:6ae2f7bca550 1795 begin_destroy(*begin_handle);
Azure.IoT Build 0:6ae2f7bca550 1796 result = __LINE__;
Azure.IoT Build 0:6ae2f7bca550 1797 break;
Azure.IoT Build 0:6ae2f7bca550 1798 }
Azure.IoT Build 0:6ae2f7bca550 1799 }
Azure.IoT Build 0:6ae2f7bca550 1800 else
Azure.IoT Build 0:6ae2f7bca550 1801 {
Azure.IoT Build 0:6ae2f7bca550 1802 uint32_t outgoing_window;
Azure.IoT Build 0:6ae2f7bca550 1803 if (amqpvalue_get_uint(item_value, &outgoing_window) != 0)
Azure.IoT Build 0:6ae2f7bca550 1804 {
Azure.IoT Build 0:6ae2f7bca550 1805 begin_destroy(*begin_handle);
Azure.IoT Build 0:6ae2f7bca550 1806 result = __LINE__;
Azure.IoT Build 0:6ae2f7bca550 1807 break;
Azure.IoT Build 0:6ae2f7bca550 1808 }
Azure.IoT Build 0:6ae2f7bca550 1809
Azure.IoT Build 0:6ae2f7bca550 1810 amqpvalue_destroy(item_value);
Azure.IoT Build 0:6ae2f7bca550 1811 }
Azure.IoT Build 0:6ae2f7bca550 1812 /* handle-max */
Azure.IoT Build 0:6ae2f7bca550 1813 item_value = amqpvalue_get_list_item(list_value, 4);
Azure.IoT Build 0:6ae2f7bca550 1814 if (item_value == NULL)
Azure.IoT Build 0:6ae2f7bca550 1815 {
Azure.IoT Build 0:6ae2f7bca550 1816 /* do nothing */
Azure.IoT Build 0:6ae2f7bca550 1817 }
Azure.IoT Build 0:6ae2f7bca550 1818 else
Azure.IoT Build 0:6ae2f7bca550 1819 {
Azure.IoT Build 0:6ae2f7bca550 1820 handle handle_max;
Azure.IoT Build 0:6ae2f7bca550 1821 if (amqpvalue_get_handle(item_value, &handle_max) != 0)
Azure.IoT Build 0:6ae2f7bca550 1822 {
Azure.IoT Build 0:6ae2f7bca550 1823 if (amqpvalue_get_type(item_value) != AMQP_TYPE_NULL)
Azure.IoT Build 0:6ae2f7bca550 1824 {
Azure.IoT Build 0:6ae2f7bca550 1825 begin_destroy(*begin_handle);
Azure.IoT Build 0:6ae2f7bca550 1826 result = __LINE__;
Azure.IoT Build 0:6ae2f7bca550 1827 break;
Azure.IoT Build 0:6ae2f7bca550 1828 }
Azure.IoT Build 0:6ae2f7bca550 1829 }
Azure.IoT Build 0:6ae2f7bca550 1830
Azure.IoT Build 0:6ae2f7bca550 1831 amqpvalue_destroy(item_value);
Azure.IoT Build 0:6ae2f7bca550 1832 }
Azure.IoT Build 0:6ae2f7bca550 1833 /* offered-capabilities */
Azure.IoT Build 0:6ae2f7bca550 1834 item_value = amqpvalue_get_list_item(list_value, 5);
Azure.IoT Build 0:6ae2f7bca550 1835 if (item_value == NULL)
Azure.IoT Build 0:6ae2f7bca550 1836 {
Azure.IoT Build 0:6ae2f7bca550 1837 /* do nothing */
Azure.IoT Build 0:6ae2f7bca550 1838 }
Azure.IoT Build 0:6ae2f7bca550 1839 else
Azure.IoT Build 0:6ae2f7bca550 1840 {
Azure.IoT Build 0:6ae2f7bca550 1841 const char* offered_capabilities;
Azure.IoT Build 0:6ae2f7bca550 1842 AMQP_VALUE offered_capabilities_array;
Azure.IoT Build 0:6ae2f7bca550 1843 if ((amqpvalue_get_array(item_value, &offered_capabilities_array) != 0) &&
Azure.IoT Build 0:6ae2f7bca550 1844 (amqpvalue_get_symbol(item_value, &offered_capabilities) != 0))
Azure.IoT Build 0:6ae2f7bca550 1845 {
Azure.IoT Build 0:6ae2f7bca550 1846 if (amqpvalue_get_type(item_value) != AMQP_TYPE_NULL)
Azure.IoT Build 0:6ae2f7bca550 1847 {
Azure.IoT Build 0:6ae2f7bca550 1848 begin_destroy(*begin_handle);
Azure.IoT Build 0:6ae2f7bca550 1849 result = __LINE__;
Azure.IoT Build 0:6ae2f7bca550 1850 break;
Azure.IoT Build 0:6ae2f7bca550 1851 }
Azure.IoT Build 0:6ae2f7bca550 1852 }
Azure.IoT Build 0:6ae2f7bca550 1853
Azure.IoT Build 0:6ae2f7bca550 1854 amqpvalue_destroy(item_value);
Azure.IoT Build 0:6ae2f7bca550 1855 }
Azure.IoT Build 0:6ae2f7bca550 1856 /* desired-capabilities */
Azure.IoT Build 0:6ae2f7bca550 1857 item_value = amqpvalue_get_list_item(list_value, 6);
Azure.IoT Build 0:6ae2f7bca550 1858 if (item_value == NULL)
Azure.IoT Build 0:6ae2f7bca550 1859 {
Azure.IoT Build 0:6ae2f7bca550 1860 /* do nothing */
Azure.IoT Build 0:6ae2f7bca550 1861 }
Azure.IoT Build 0:6ae2f7bca550 1862 else
Azure.IoT Build 0:6ae2f7bca550 1863 {
Azure.IoT Build 0:6ae2f7bca550 1864 const char* desired_capabilities;
Azure.IoT Build 0:6ae2f7bca550 1865 AMQP_VALUE desired_capabilities_array;
Azure.IoT Build 0:6ae2f7bca550 1866 if ((amqpvalue_get_array(item_value, &desired_capabilities_array) != 0) &&
Azure.IoT Build 0:6ae2f7bca550 1867 (amqpvalue_get_symbol(item_value, &desired_capabilities) != 0))
Azure.IoT Build 0:6ae2f7bca550 1868 {
Azure.IoT Build 0:6ae2f7bca550 1869 if (amqpvalue_get_type(item_value) != AMQP_TYPE_NULL)
Azure.IoT Build 0:6ae2f7bca550 1870 {
Azure.IoT Build 0:6ae2f7bca550 1871 begin_destroy(*begin_handle);
Azure.IoT Build 0:6ae2f7bca550 1872 result = __LINE__;
Azure.IoT Build 0:6ae2f7bca550 1873 break;
Azure.IoT Build 0:6ae2f7bca550 1874 }
Azure.IoT Build 0:6ae2f7bca550 1875 }
Azure.IoT Build 0:6ae2f7bca550 1876
Azure.IoT Build 0:6ae2f7bca550 1877 amqpvalue_destroy(item_value);
Azure.IoT Build 0:6ae2f7bca550 1878 }
Azure.IoT Build 0:6ae2f7bca550 1879 /* properties */
Azure.IoT Build 0:6ae2f7bca550 1880 item_value = amqpvalue_get_list_item(list_value, 7);
Azure.IoT Build 0:6ae2f7bca550 1881 if (item_value == NULL)
Azure.IoT Build 0:6ae2f7bca550 1882 {
Azure.IoT Build 0:6ae2f7bca550 1883 /* do nothing */
Azure.IoT Build 0:6ae2f7bca550 1884 }
Azure.IoT Build 0:6ae2f7bca550 1885 else
Azure.IoT Build 0:6ae2f7bca550 1886 {
Azure.IoT Build 0:6ae2f7bca550 1887 fields properties;
Azure.IoT Build 0:6ae2f7bca550 1888 if (amqpvalue_get_fields(item_value, &properties) != 0)
Azure.IoT Build 0:6ae2f7bca550 1889 {
Azure.IoT Build 0:6ae2f7bca550 1890 if (amqpvalue_get_type(item_value) != AMQP_TYPE_NULL)
Azure.IoT Build 0:6ae2f7bca550 1891 {
Azure.IoT Build 0:6ae2f7bca550 1892 begin_destroy(*begin_handle);
Azure.IoT Build 0:6ae2f7bca550 1893 result = __LINE__;
Azure.IoT Build 0:6ae2f7bca550 1894 break;
Azure.IoT Build 0:6ae2f7bca550 1895 }
Azure.IoT Build 0:6ae2f7bca550 1896 }
Azure.IoT Build 0:6ae2f7bca550 1897
Azure.IoT Build 0:6ae2f7bca550 1898 amqpvalue_destroy(item_value);
Azure.IoT Build 0:6ae2f7bca550 1899 }
Azure.IoT Build 0:6ae2f7bca550 1900
Azure.IoT Build 0:6ae2f7bca550 1901 begin_instance->composite_value = amqpvalue_clone(value);
Azure.IoT Build 0:6ae2f7bca550 1902
Azure.IoT Build 0:6ae2f7bca550 1903 result = 0;
Azure.IoT Build 0:6ae2f7bca550 1904 } while (0);
Azure.IoT Build 0:6ae2f7bca550 1905 }
Azure.IoT Build 0:6ae2f7bca550 1906 }
Azure.IoT Build 0:6ae2f7bca550 1907
Azure.IoT Build 0:6ae2f7bca550 1908 return result;
Azure.IoT Build 0:6ae2f7bca550 1909 }
Azure.IoT Build 0:6ae2f7bca550 1910
Azure.IoT Build 0:6ae2f7bca550 1911 int begin_get_remote_channel(BEGIN_HANDLE begin, uint16_t* remote_channel_value)
Azure.IoT Build 0:6ae2f7bca550 1912 {
Azure.IoT Build 0:6ae2f7bca550 1913 int result;
Azure.IoT Build 0:6ae2f7bca550 1914
Azure.IoT Build 0:6ae2f7bca550 1915 if (begin == NULL)
Azure.IoT Build 0:6ae2f7bca550 1916 {
Azure.IoT Build 0:6ae2f7bca550 1917 result = __LINE__;
Azure.IoT Build 0:6ae2f7bca550 1918 }
Azure.IoT Build 0:6ae2f7bca550 1919 else
Azure.IoT Build 0:6ae2f7bca550 1920 {
Azure.IoT Build 0:6ae2f7bca550 1921 BEGIN_INSTANCE* begin_instance = (BEGIN_INSTANCE*)begin;
Azure.IoT Build 0:6ae2f7bca550 1922 AMQP_VALUE item_value = amqpvalue_get_composite_item_in_place(begin_instance->composite_value, 0);
Azure.IoT Build 0:6ae2f7bca550 1923 if (item_value == NULL)
Azure.IoT Build 0:6ae2f7bca550 1924 {
Azure.IoT Build 0:6ae2f7bca550 1925 result = __LINE__;
Azure.IoT Build 0:6ae2f7bca550 1926 }
Azure.IoT Build 0:6ae2f7bca550 1927 else
Azure.IoT Build 0:6ae2f7bca550 1928 {
Azure.IoT Build 0:6ae2f7bca550 1929 if (amqpvalue_get_ushort(item_value, remote_channel_value) != 0)
Azure.IoT Build 0:6ae2f7bca550 1930 {
AzureIoTClient 16:22a72cf8e416 1931 result = __LINE__;
Azure.IoT Build 0:6ae2f7bca550 1932 }
Azure.IoT Build 0:6ae2f7bca550 1933 else
Azure.IoT Build 0:6ae2f7bca550 1934 {
Azure.IoT Build 0:6ae2f7bca550 1935 result = 0;
Azure.IoT Build 0:6ae2f7bca550 1936 }
Azure.IoT Build 0:6ae2f7bca550 1937 }
Azure.IoT Build 0:6ae2f7bca550 1938 }
Azure.IoT Build 0:6ae2f7bca550 1939
Azure.IoT Build 0:6ae2f7bca550 1940 return result;
Azure.IoT Build 0:6ae2f7bca550 1941 }
Azure.IoT Build 0:6ae2f7bca550 1942
Azure.IoT Build 0:6ae2f7bca550 1943 int begin_set_remote_channel(BEGIN_HANDLE begin, uint16_t remote_channel_value)
Azure.IoT Build 0:6ae2f7bca550 1944 {
Azure.IoT Build 0:6ae2f7bca550 1945 int result;
Azure.IoT Build 0:6ae2f7bca550 1946
Azure.IoT Build 0:6ae2f7bca550 1947 if (begin == NULL)
Azure.IoT Build 0:6ae2f7bca550 1948 {
Azure.IoT Build 0:6ae2f7bca550 1949 result = __LINE__;
Azure.IoT Build 0:6ae2f7bca550 1950 }
Azure.IoT Build 0:6ae2f7bca550 1951 else
Azure.IoT Build 0:6ae2f7bca550 1952 {
Azure.IoT Build 0:6ae2f7bca550 1953 BEGIN_INSTANCE* begin_instance = (BEGIN_INSTANCE*)begin;
Azure.IoT Build 0:6ae2f7bca550 1954 AMQP_VALUE remote_channel_amqp_value = amqpvalue_create_ushort(remote_channel_value);
Azure.IoT Build 0:6ae2f7bca550 1955 if (remote_channel_amqp_value == NULL)
Azure.IoT Build 0:6ae2f7bca550 1956 {
Azure.IoT Build 0:6ae2f7bca550 1957 result = __LINE__;
Azure.IoT Build 0:6ae2f7bca550 1958 }
Azure.IoT Build 0:6ae2f7bca550 1959 else
Azure.IoT Build 0:6ae2f7bca550 1960 {
Azure.IoT Build 0:6ae2f7bca550 1961 if (amqpvalue_set_composite_item(begin_instance->composite_value, 0, remote_channel_amqp_value) != 0)
Azure.IoT Build 0:6ae2f7bca550 1962 {
Azure.IoT Build 0:6ae2f7bca550 1963 result = __LINE__;
Azure.IoT Build 0:6ae2f7bca550 1964 }
Azure.IoT Build 0:6ae2f7bca550 1965 else
Azure.IoT Build 0:6ae2f7bca550 1966 {
Azure.IoT Build 0:6ae2f7bca550 1967 result = 0;
Azure.IoT Build 0:6ae2f7bca550 1968 }
Azure.IoT Build 0:6ae2f7bca550 1969
Azure.IoT Build 0:6ae2f7bca550 1970 amqpvalue_destroy(remote_channel_amqp_value);
Azure.IoT Build 0:6ae2f7bca550 1971 }
Azure.IoT Build 0:6ae2f7bca550 1972 }
Azure.IoT Build 0:6ae2f7bca550 1973
Azure.IoT Build 0:6ae2f7bca550 1974 return result;
Azure.IoT Build 0:6ae2f7bca550 1975 }
Azure.IoT Build 0:6ae2f7bca550 1976
Azure.IoT Build 0:6ae2f7bca550 1977 int begin_get_next_outgoing_id(BEGIN_HANDLE begin, transfer_number* next_outgoing_id_value)
Azure.IoT Build 0:6ae2f7bca550 1978 {
Azure.IoT Build 0:6ae2f7bca550 1979 int result;
Azure.IoT Build 0:6ae2f7bca550 1980
Azure.IoT Build 0:6ae2f7bca550 1981 if (begin == NULL)
Azure.IoT Build 0:6ae2f7bca550 1982 {
Azure.IoT Build 0:6ae2f7bca550 1983 result = __LINE__;
Azure.IoT Build 0:6ae2f7bca550 1984 }
Azure.IoT Build 0:6ae2f7bca550 1985 else
Azure.IoT Build 0:6ae2f7bca550 1986 {
Azure.IoT Build 0:6ae2f7bca550 1987 BEGIN_INSTANCE* begin_instance = (BEGIN_INSTANCE*)begin;
Azure.IoT Build 0:6ae2f7bca550 1988 AMQP_VALUE item_value = amqpvalue_get_composite_item_in_place(begin_instance->composite_value, 1);
Azure.IoT Build 0:6ae2f7bca550 1989 if (item_value == NULL)
Azure.IoT Build 0:6ae2f7bca550 1990 {
Azure.IoT Build 0:6ae2f7bca550 1991 result = __LINE__;
Azure.IoT Build 0:6ae2f7bca550 1992 }
Azure.IoT Build 0:6ae2f7bca550 1993 else
Azure.IoT Build 0:6ae2f7bca550 1994 {
Azure.IoT Build 0:6ae2f7bca550 1995 if (amqpvalue_get_transfer_number(item_value, next_outgoing_id_value) != 0)
Azure.IoT Build 0:6ae2f7bca550 1996 {
AzureIoTClient 16:22a72cf8e416 1997 result = __LINE__;
Azure.IoT Build 0:6ae2f7bca550 1998 }
Azure.IoT Build 0:6ae2f7bca550 1999 else
Azure.IoT Build 0:6ae2f7bca550 2000 {
Azure.IoT Build 0:6ae2f7bca550 2001 result = 0;
Azure.IoT Build 0:6ae2f7bca550 2002 }
Azure.IoT Build 0:6ae2f7bca550 2003 }
Azure.IoT Build 0:6ae2f7bca550 2004 }
Azure.IoT Build 0:6ae2f7bca550 2005
Azure.IoT Build 0:6ae2f7bca550 2006 return result;
Azure.IoT Build 0:6ae2f7bca550 2007 }
Azure.IoT Build 0:6ae2f7bca550 2008
Azure.IoT Build 0:6ae2f7bca550 2009 int begin_set_next_outgoing_id(BEGIN_HANDLE begin, transfer_number next_outgoing_id_value)
Azure.IoT Build 0:6ae2f7bca550 2010 {
Azure.IoT Build 0:6ae2f7bca550 2011 int result;
Azure.IoT Build 0:6ae2f7bca550 2012
Azure.IoT Build 0:6ae2f7bca550 2013 if (begin == NULL)
Azure.IoT Build 0:6ae2f7bca550 2014 {
Azure.IoT Build 0:6ae2f7bca550 2015 result = __LINE__;
Azure.IoT Build 0:6ae2f7bca550 2016 }
Azure.IoT Build 0:6ae2f7bca550 2017 else
Azure.IoT Build 0:6ae2f7bca550 2018 {
Azure.IoT Build 0:6ae2f7bca550 2019 BEGIN_INSTANCE* begin_instance = (BEGIN_INSTANCE*)begin;
Azure.IoT Build 0:6ae2f7bca550 2020 AMQP_VALUE next_outgoing_id_amqp_value = amqpvalue_create_transfer_number(next_outgoing_id_value);
Azure.IoT Build 0:6ae2f7bca550 2021 if (next_outgoing_id_amqp_value == NULL)
Azure.IoT Build 0:6ae2f7bca550 2022 {
Azure.IoT Build 0:6ae2f7bca550 2023 result = __LINE__;
Azure.IoT Build 0:6ae2f7bca550 2024 }
Azure.IoT Build 0:6ae2f7bca550 2025 else
Azure.IoT Build 0:6ae2f7bca550 2026 {
Azure.IoT Build 0:6ae2f7bca550 2027 if (amqpvalue_set_composite_item(begin_instance->composite_value, 1, next_outgoing_id_amqp_value) != 0)
Azure.IoT Build 0:6ae2f7bca550 2028 {
Azure.IoT Build 0:6ae2f7bca550 2029 result = __LINE__;
Azure.IoT Build 0:6ae2f7bca550 2030 }
Azure.IoT Build 0:6ae2f7bca550 2031 else
Azure.IoT Build 0:6ae2f7bca550 2032 {
Azure.IoT Build 0:6ae2f7bca550 2033 result = 0;
Azure.IoT Build 0:6ae2f7bca550 2034 }
Azure.IoT Build 0:6ae2f7bca550 2035
Azure.IoT Build 0:6ae2f7bca550 2036 amqpvalue_destroy(next_outgoing_id_amqp_value);
Azure.IoT Build 0:6ae2f7bca550 2037 }
Azure.IoT Build 0:6ae2f7bca550 2038 }
Azure.IoT Build 0:6ae2f7bca550 2039
Azure.IoT Build 0:6ae2f7bca550 2040 return result;
Azure.IoT Build 0:6ae2f7bca550 2041 }
Azure.IoT Build 0:6ae2f7bca550 2042
Azure.IoT Build 0:6ae2f7bca550 2043 int begin_get_incoming_window(BEGIN_HANDLE begin, uint32_t* incoming_window_value)
Azure.IoT Build 0:6ae2f7bca550 2044 {
Azure.IoT Build 0:6ae2f7bca550 2045 int result;
Azure.IoT Build 0:6ae2f7bca550 2046
Azure.IoT Build 0:6ae2f7bca550 2047 if (begin == NULL)
Azure.IoT Build 0:6ae2f7bca550 2048 {
Azure.IoT Build 0:6ae2f7bca550 2049 result = __LINE__;
Azure.IoT Build 0:6ae2f7bca550 2050 }
Azure.IoT Build 0:6ae2f7bca550 2051 else
Azure.IoT Build 0:6ae2f7bca550 2052 {
Azure.IoT Build 0:6ae2f7bca550 2053 BEGIN_INSTANCE* begin_instance = (BEGIN_INSTANCE*)begin;
Azure.IoT Build 0:6ae2f7bca550 2054 AMQP_VALUE item_value = amqpvalue_get_composite_item_in_place(begin_instance->composite_value, 2);
Azure.IoT Build 0:6ae2f7bca550 2055 if (item_value == NULL)
Azure.IoT Build 0:6ae2f7bca550 2056 {
Azure.IoT Build 0:6ae2f7bca550 2057 result = __LINE__;
Azure.IoT Build 0:6ae2f7bca550 2058 }
Azure.IoT Build 0:6ae2f7bca550 2059 else
Azure.IoT Build 0:6ae2f7bca550 2060 {
Azure.IoT Build 0:6ae2f7bca550 2061 if (amqpvalue_get_uint(item_value, incoming_window_value) != 0)
Azure.IoT Build 0:6ae2f7bca550 2062 {
AzureIoTClient 16:22a72cf8e416 2063 result = __LINE__;
Azure.IoT Build 0:6ae2f7bca550 2064 }
Azure.IoT Build 0:6ae2f7bca550 2065 else
Azure.IoT Build 0:6ae2f7bca550 2066 {
Azure.IoT Build 0:6ae2f7bca550 2067 result = 0;
Azure.IoT Build 0:6ae2f7bca550 2068 }
Azure.IoT Build 0:6ae2f7bca550 2069 }
Azure.IoT Build 0:6ae2f7bca550 2070 }
Azure.IoT Build 0:6ae2f7bca550 2071
Azure.IoT Build 0:6ae2f7bca550 2072 return result;
Azure.IoT Build 0:6ae2f7bca550 2073 }
Azure.IoT Build 0:6ae2f7bca550 2074
Azure.IoT Build 0:6ae2f7bca550 2075 int begin_set_incoming_window(BEGIN_HANDLE begin, uint32_t incoming_window_value)
Azure.IoT Build 0:6ae2f7bca550 2076 {
Azure.IoT Build 0:6ae2f7bca550 2077 int result;
Azure.IoT Build 0:6ae2f7bca550 2078
Azure.IoT Build 0:6ae2f7bca550 2079 if (begin == NULL)
Azure.IoT Build 0:6ae2f7bca550 2080 {
Azure.IoT Build 0:6ae2f7bca550 2081 result = __LINE__;
Azure.IoT Build 0:6ae2f7bca550 2082 }
Azure.IoT Build 0:6ae2f7bca550 2083 else
Azure.IoT Build 0:6ae2f7bca550 2084 {
Azure.IoT Build 0:6ae2f7bca550 2085 BEGIN_INSTANCE* begin_instance = (BEGIN_INSTANCE*)begin;
Azure.IoT Build 0:6ae2f7bca550 2086 AMQP_VALUE incoming_window_amqp_value = amqpvalue_create_uint(incoming_window_value);
Azure.IoT Build 0:6ae2f7bca550 2087 if (incoming_window_amqp_value == NULL)
Azure.IoT Build 0:6ae2f7bca550 2088 {
Azure.IoT Build 0:6ae2f7bca550 2089 result = __LINE__;
Azure.IoT Build 0:6ae2f7bca550 2090 }
Azure.IoT Build 0:6ae2f7bca550 2091 else
Azure.IoT Build 0:6ae2f7bca550 2092 {
Azure.IoT Build 0:6ae2f7bca550 2093 if (amqpvalue_set_composite_item(begin_instance->composite_value, 2, incoming_window_amqp_value) != 0)
Azure.IoT Build 0:6ae2f7bca550 2094 {
Azure.IoT Build 0:6ae2f7bca550 2095 result = __LINE__;
Azure.IoT Build 0:6ae2f7bca550 2096 }
Azure.IoT Build 0:6ae2f7bca550 2097 else
Azure.IoT Build 0:6ae2f7bca550 2098 {
Azure.IoT Build 0:6ae2f7bca550 2099 result = 0;
Azure.IoT Build 0:6ae2f7bca550 2100 }
Azure.IoT Build 0:6ae2f7bca550 2101
Azure.IoT Build 0:6ae2f7bca550 2102 amqpvalue_destroy(incoming_window_amqp_value);
Azure.IoT Build 0:6ae2f7bca550 2103 }
Azure.IoT Build 0:6ae2f7bca550 2104 }
Azure.IoT Build 0:6ae2f7bca550 2105
Azure.IoT Build 0:6ae2f7bca550 2106 return result;
Azure.IoT Build 0:6ae2f7bca550 2107 }
Azure.IoT Build 0:6ae2f7bca550 2108
Azure.IoT Build 0:6ae2f7bca550 2109 int begin_get_outgoing_window(BEGIN_HANDLE begin, uint32_t* outgoing_window_value)
Azure.IoT Build 0:6ae2f7bca550 2110 {
Azure.IoT Build 0:6ae2f7bca550 2111 int result;
Azure.IoT Build 0:6ae2f7bca550 2112
Azure.IoT Build 0:6ae2f7bca550 2113 if (begin == NULL)
Azure.IoT Build 0:6ae2f7bca550 2114 {
Azure.IoT Build 0:6ae2f7bca550 2115 result = __LINE__;
Azure.IoT Build 0:6ae2f7bca550 2116 }
Azure.IoT Build 0:6ae2f7bca550 2117 else
Azure.IoT Build 0:6ae2f7bca550 2118 {
Azure.IoT Build 0:6ae2f7bca550 2119 BEGIN_INSTANCE* begin_instance = (BEGIN_INSTANCE*)begin;
Azure.IoT Build 0:6ae2f7bca550 2120 AMQP_VALUE item_value = amqpvalue_get_composite_item_in_place(begin_instance->composite_value, 3);
Azure.IoT Build 0:6ae2f7bca550 2121 if (item_value == NULL)
Azure.IoT Build 0:6ae2f7bca550 2122 {
Azure.IoT Build 0:6ae2f7bca550 2123 result = __LINE__;
Azure.IoT Build 0:6ae2f7bca550 2124 }
Azure.IoT Build 0:6ae2f7bca550 2125 else
Azure.IoT Build 0:6ae2f7bca550 2126 {
Azure.IoT Build 0:6ae2f7bca550 2127 if (amqpvalue_get_uint(item_value, outgoing_window_value) != 0)
Azure.IoT Build 0:6ae2f7bca550 2128 {
AzureIoTClient 16:22a72cf8e416 2129 result = __LINE__;
Azure.IoT Build 0:6ae2f7bca550 2130 }
Azure.IoT Build 0:6ae2f7bca550 2131 else
Azure.IoT Build 0:6ae2f7bca550 2132 {
Azure.IoT Build 0:6ae2f7bca550 2133 result = 0;
Azure.IoT Build 0:6ae2f7bca550 2134 }
Azure.IoT Build 0:6ae2f7bca550 2135 }
Azure.IoT Build 0:6ae2f7bca550 2136 }
Azure.IoT Build 0:6ae2f7bca550 2137
Azure.IoT Build 0:6ae2f7bca550 2138 return result;
Azure.IoT Build 0:6ae2f7bca550 2139 }
Azure.IoT Build 0:6ae2f7bca550 2140
Azure.IoT Build 0:6ae2f7bca550 2141 int begin_set_outgoing_window(BEGIN_HANDLE begin, uint32_t outgoing_window_value)
Azure.IoT Build 0:6ae2f7bca550 2142 {
Azure.IoT Build 0:6ae2f7bca550 2143 int result;
Azure.IoT Build 0:6ae2f7bca550 2144
Azure.IoT Build 0:6ae2f7bca550 2145 if (begin == NULL)
Azure.IoT Build 0:6ae2f7bca550 2146 {
Azure.IoT Build 0:6ae2f7bca550 2147 result = __LINE__;
Azure.IoT Build 0:6ae2f7bca550 2148 }
Azure.IoT Build 0:6ae2f7bca550 2149 else
Azure.IoT Build 0:6ae2f7bca550 2150 {
Azure.IoT Build 0:6ae2f7bca550 2151 BEGIN_INSTANCE* begin_instance = (BEGIN_INSTANCE*)begin;
Azure.IoT Build 0:6ae2f7bca550 2152 AMQP_VALUE outgoing_window_amqp_value = amqpvalue_create_uint(outgoing_window_value);
Azure.IoT Build 0:6ae2f7bca550 2153 if (outgoing_window_amqp_value == NULL)
Azure.IoT Build 0:6ae2f7bca550 2154 {
Azure.IoT Build 0:6ae2f7bca550 2155 result = __LINE__;
Azure.IoT Build 0:6ae2f7bca550 2156 }
Azure.IoT Build 0:6ae2f7bca550 2157 else
Azure.IoT Build 0:6ae2f7bca550 2158 {
Azure.IoT Build 0:6ae2f7bca550 2159 if (amqpvalue_set_composite_item(begin_instance->composite_value, 3, outgoing_window_amqp_value) != 0)
Azure.IoT Build 0:6ae2f7bca550 2160 {
Azure.IoT Build 0:6ae2f7bca550 2161 result = __LINE__;
Azure.IoT Build 0:6ae2f7bca550 2162 }
Azure.IoT Build 0:6ae2f7bca550 2163 else
Azure.IoT Build 0:6ae2f7bca550 2164 {
Azure.IoT Build 0:6ae2f7bca550 2165 result = 0;
Azure.IoT Build 0:6ae2f7bca550 2166 }
Azure.IoT Build 0:6ae2f7bca550 2167
Azure.IoT Build 0:6ae2f7bca550 2168 amqpvalue_destroy(outgoing_window_amqp_value);
Azure.IoT Build 0:6ae2f7bca550 2169 }
Azure.IoT Build 0:6ae2f7bca550 2170 }
Azure.IoT Build 0:6ae2f7bca550 2171
Azure.IoT Build 0:6ae2f7bca550 2172 return result;
Azure.IoT Build 0:6ae2f7bca550 2173 }
Azure.IoT Build 0:6ae2f7bca550 2174
Azure.IoT Build 0:6ae2f7bca550 2175 int begin_get_handle_max(BEGIN_HANDLE begin, handle* handle_max_value)
Azure.IoT Build 0:6ae2f7bca550 2176 {
Azure.IoT Build 0:6ae2f7bca550 2177 int result;
Azure.IoT Build 0:6ae2f7bca550 2178
Azure.IoT Build 0:6ae2f7bca550 2179 if (begin == NULL)
Azure.IoT Build 0:6ae2f7bca550 2180 {
Azure.IoT Build 0:6ae2f7bca550 2181 result = __LINE__;
Azure.IoT Build 0:6ae2f7bca550 2182 }
Azure.IoT Build 0:6ae2f7bca550 2183 else
Azure.IoT Build 0:6ae2f7bca550 2184 {
Azure.IoT Build 0:6ae2f7bca550 2185 BEGIN_INSTANCE* begin_instance = (BEGIN_INSTANCE*)begin;
Azure.IoT Build 0:6ae2f7bca550 2186 AMQP_VALUE item_value = amqpvalue_get_composite_item_in_place(begin_instance->composite_value, 4);
Azure.IoT Build 0:6ae2f7bca550 2187 if (item_value == NULL)
Azure.IoT Build 0:6ae2f7bca550 2188 {
AzureIoTClient 16:22a72cf8e416 2189 *handle_max_value = 4294967295u;
AzureIoTClient 16:22a72cf8e416 2190 result = 0;
Azure.IoT Build 0:6ae2f7bca550 2191 }
Azure.IoT Build 0:6ae2f7bca550 2192 else
Azure.IoT Build 0:6ae2f7bca550 2193 {
Azure.IoT Build 0:6ae2f7bca550 2194 if (amqpvalue_get_handle(item_value, handle_max_value) != 0)
Azure.IoT Build 0:6ae2f7bca550 2195 {
AzureIoTClient 16:22a72cf8e416 2196 if (amqpvalue_get_type(item_value) == AMQP_TYPE_NULL)
AzureIoTClient 16:22a72cf8e416 2197 {
AzureIoTClient 16:22a72cf8e416 2198 result = __LINE__;
AzureIoTClient 16:22a72cf8e416 2199 }
AzureIoTClient 16:22a72cf8e416 2200 else
AzureIoTClient 16:22a72cf8e416 2201 {
AzureIoTClient 16:22a72cf8e416 2202 *handle_max_value = 4294967295u;
AzureIoTClient 16:22a72cf8e416 2203 result = 0;
AzureIoTClient 16:22a72cf8e416 2204 }
Azure.IoT Build 0:6ae2f7bca550 2205 }
Azure.IoT Build 0:6ae2f7bca550 2206 else
Azure.IoT Build 0:6ae2f7bca550 2207 {
Azure.IoT Build 0:6ae2f7bca550 2208 result = 0;
Azure.IoT Build 0:6ae2f7bca550 2209 }
Azure.IoT Build 0:6ae2f7bca550 2210 }
Azure.IoT Build 0:6ae2f7bca550 2211 }
Azure.IoT Build 0:6ae2f7bca550 2212
Azure.IoT Build 0:6ae2f7bca550 2213 return result;
Azure.IoT Build 0:6ae2f7bca550 2214 }
Azure.IoT Build 0:6ae2f7bca550 2215
Azure.IoT Build 0:6ae2f7bca550 2216 int begin_set_handle_max(BEGIN_HANDLE begin, handle handle_max_value)
Azure.IoT Build 0:6ae2f7bca550 2217 {
Azure.IoT Build 0:6ae2f7bca550 2218 int result;
Azure.IoT Build 0:6ae2f7bca550 2219
Azure.IoT Build 0:6ae2f7bca550 2220 if (begin == NULL)
Azure.IoT Build 0:6ae2f7bca550 2221 {
Azure.IoT Build 0:6ae2f7bca550 2222 result = __LINE__;
Azure.IoT Build 0:6ae2f7bca550 2223 }
Azure.IoT Build 0:6ae2f7bca550 2224 else
Azure.IoT Build 0:6ae2f7bca550 2225 {
Azure.IoT Build 0:6ae2f7bca550 2226 BEGIN_INSTANCE* begin_instance = (BEGIN_INSTANCE*)begin;
Azure.IoT Build 0:6ae2f7bca550 2227 AMQP_VALUE handle_max_amqp_value = amqpvalue_create_handle(handle_max_value);
Azure.IoT Build 0:6ae2f7bca550 2228 if (handle_max_amqp_value == NULL)
Azure.IoT Build 0:6ae2f7bca550 2229 {
Azure.IoT Build 0:6ae2f7bca550 2230 result = __LINE__;
Azure.IoT Build 0:6ae2f7bca550 2231 }
Azure.IoT Build 0:6ae2f7bca550 2232 else
Azure.IoT Build 0:6ae2f7bca550 2233 {
Azure.IoT Build 0:6ae2f7bca550 2234 if (amqpvalue_set_composite_item(begin_instance->composite_value, 4, handle_max_amqp_value) != 0)
Azure.IoT Build 0:6ae2f7bca550 2235 {
Azure.IoT Build 0:6ae2f7bca550 2236 result = __LINE__;
Azure.IoT Build 0:6ae2f7bca550 2237 }
Azure.IoT Build 0:6ae2f7bca550 2238 else
Azure.IoT Build 0:6ae2f7bca550 2239 {
Azure.IoT Build 0:6ae2f7bca550 2240 result = 0;
Azure.IoT Build 0:6ae2f7bca550 2241 }
Azure.IoT Build 0:6ae2f7bca550 2242
Azure.IoT Build 0:6ae2f7bca550 2243 amqpvalue_destroy(handle_max_amqp_value);
Azure.IoT Build 0:6ae2f7bca550 2244 }
Azure.IoT Build 0:6ae2f7bca550 2245 }
Azure.IoT Build 0:6ae2f7bca550 2246
Azure.IoT Build 0:6ae2f7bca550 2247 return result;
Azure.IoT Build 0:6ae2f7bca550 2248 }
Azure.IoT Build 0:6ae2f7bca550 2249
Azure.IoT Build 0:6ae2f7bca550 2250 int begin_get_offered_capabilities(BEGIN_HANDLE begin, AMQP_VALUE* offered_capabilities_value)
Azure.IoT Build 0:6ae2f7bca550 2251 {
Azure.IoT Build 0:6ae2f7bca550 2252 int result;
Azure.IoT Build 0:6ae2f7bca550 2253
Azure.IoT Build 0:6ae2f7bca550 2254 if (begin == NULL)
Azure.IoT Build 0:6ae2f7bca550 2255 {
Azure.IoT Build 0:6ae2f7bca550 2256 result = __LINE__;
Azure.IoT Build 0:6ae2f7bca550 2257 }
Azure.IoT Build 0:6ae2f7bca550 2258 else
Azure.IoT Build 0:6ae2f7bca550 2259 {
Azure.IoT Build 0:6ae2f7bca550 2260 BEGIN_INSTANCE* begin_instance = (BEGIN_INSTANCE*)begin;
Azure.IoT Build 0:6ae2f7bca550 2261 AMQP_VALUE item_value = amqpvalue_get_composite_item_in_place(begin_instance->composite_value, 5);
Azure.IoT Build 0:6ae2f7bca550 2262 if (item_value == NULL)
Azure.IoT Build 0:6ae2f7bca550 2263 {
Azure.IoT Build 0:6ae2f7bca550 2264 result = __LINE__;
Azure.IoT Build 0:6ae2f7bca550 2265 }
Azure.IoT Build 0:6ae2f7bca550 2266 else
Azure.IoT Build 0:6ae2f7bca550 2267 {
Azure.IoT Build 0:6ae2f7bca550 2268 if (amqpvalue_get_array(item_value, offered_capabilities_value) != 0)
Azure.IoT Build 0:6ae2f7bca550 2269 {
AzureIoTClient 16:22a72cf8e416 2270 result = __LINE__;
Azure.IoT Build 0:6ae2f7bca550 2271 }
Azure.IoT Build 0:6ae2f7bca550 2272 else
Azure.IoT Build 0:6ae2f7bca550 2273 {
Azure.IoT Build 0:6ae2f7bca550 2274 result = 0;
Azure.IoT Build 0:6ae2f7bca550 2275 }
Azure.IoT Build 0:6ae2f7bca550 2276 }
Azure.IoT Build 0:6ae2f7bca550 2277 }
Azure.IoT Build 0:6ae2f7bca550 2278
Azure.IoT Build 0:6ae2f7bca550 2279 return result;
Azure.IoT Build 0:6ae2f7bca550 2280 }
Azure.IoT Build 0:6ae2f7bca550 2281
Azure.IoT Build 0:6ae2f7bca550 2282 int begin_set_offered_capabilities(BEGIN_HANDLE begin, AMQP_VALUE offered_capabilities_value)
Azure.IoT Build 0:6ae2f7bca550 2283 {
Azure.IoT Build 0:6ae2f7bca550 2284 int result;
Azure.IoT Build 0:6ae2f7bca550 2285
Azure.IoT Build 0:6ae2f7bca550 2286 if (begin == NULL)
Azure.IoT Build 0:6ae2f7bca550 2287 {
Azure.IoT Build 0:6ae2f7bca550 2288 result = __LINE__;
Azure.IoT Build 0:6ae2f7bca550 2289 }
Azure.IoT Build 0:6ae2f7bca550 2290 else
Azure.IoT Build 0:6ae2f7bca550 2291 {
Azure.IoT Build 0:6ae2f7bca550 2292 BEGIN_INSTANCE* begin_instance = (BEGIN_INSTANCE*)begin;
Azure.IoT Build 0:6ae2f7bca550 2293 AMQP_VALUE offered_capabilities_amqp_value = amqpvalue_clone(offered_capabilities_value);
Azure.IoT Build 0:6ae2f7bca550 2294 if (offered_capabilities_amqp_value == NULL)
Azure.IoT Build 0:6ae2f7bca550 2295 {
Azure.IoT Build 0:6ae2f7bca550 2296 result = __LINE__;
Azure.IoT Build 0:6ae2f7bca550 2297 }
Azure.IoT Build 0:6ae2f7bca550 2298 else
Azure.IoT Build 0:6ae2f7bca550 2299 {
Azure.IoT Build 0:6ae2f7bca550 2300 if (amqpvalue_set_composite_item(begin_instance->composite_value, 5, offered_capabilities_amqp_value) != 0)
Azure.IoT Build 0:6ae2f7bca550 2301 {
Azure.IoT Build 0:6ae2f7bca550 2302 result = __LINE__;
Azure.IoT Build 0:6ae2f7bca550 2303 }
Azure.IoT Build 0:6ae2f7bca550 2304 else
Azure.IoT Build 0:6ae2f7bca550 2305 {
Azure.IoT Build 0:6ae2f7bca550 2306 result = 0;
Azure.IoT Build 0:6ae2f7bca550 2307 }
Azure.IoT Build 0:6ae2f7bca550 2308
Azure.IoT Build 0:6ae2f7bca550 2309 amqpvalue_destroy(offered_capabilities_amqp_value);
Azure.IoT Build 0:6ae2f7bca550 2310 }
Azure.IoT Build 0:6ae2f7bca550 2311 }
Azure.IoT Build 0:6ae2f7bca550 2312
Azure.IoT Build 0:6ae2f7bca550 2313 return result;
Azure.IoT Build 0:6ae2f7bca550 2314 }
Azure.IoT Build 0:6ae2f7bca550 2315
Azure.IoT Build 0:6ae2f7bca550 2316 int begin_get_desired_capabilities(BEGIN_HANDLE begin, AMQP_VALUE* desired_capabilities_value)
Azure.IoT Build 0:6ae2f7bca550 2317 {
Azure.IoT Build 0:6ae2f7bca550 2318 int result;
Azure.IoT Build 0:6ae2f7bca550 2319
Azure.IoT Build 0:6ae2f7bca550 2320 if (begin == NULL)
Azure.IoT Build 0:6ae2f7bca550 2321 {
Azure.IoT Build 0:6ae2f7bca550 2322 result = __LINE__;
Azure.IoT Build 0:6ae2f7bca550 2323 }
Azure.IoT Build 0:6ae2f7bca550 2324 else
Azure.IoT Build 0:6ae2f7bca550 2325 {
Azure.IoT Build 0:6ae2f7bca550 2326 BEGIN_INSTANCE* begin_instance = (BEGIN_INSTANCE*)begin;
Azure.IoT Build 0:6ae2f7bca550 2327 AMQP_VALUE item_value = amqpvalue_get_composite_item_in_place(begin_instance->composite_value, 6);
Azure.IoT Build 0:6ae2f7bca550 2328 if (item_value == NULL)
Azure.IoT Build 0:6ae2f7bca550 2329 {
Azure.IoT Build 0:6ae2f7bca550 2330 result = __LINE__;
Azure.IoT Build 0:6ae2f7bca550 2331 }
Azure.IoT Build 0:6ae2f7bca550 2332 else
Azure.IoT Build 0:6ae2f7bca550 2333 {
Azure.IoT Build 0:6ae2f7bca550 2334 if (amqpvalue_get_array(item_value, desired_capabilities_value) != 0)
Azure.IoT Build 0:6ae2f7bca550 2335 {
AzureIoTClient 16:22a72cf8e416 2336 result = __LINE__;
Azure.IoT Build 0:6ae2f7bca550 2337 }
Azure.IoT Build 0:6ae2f7bca550 2338 else
Azure.IoT Build 0:6ae2f7bca550 2339 {
Azure.IoT Build 0:6ae2f7bca550 2340 result = 0;
Azure.IoT Build 0:6ae2f7bca550 2341 }
Azure.IoT Build 0:6ae2f7bca550 2342 }
Azure.IoT Build 0:6ae2f7bca550 2343 }
Azure.IoT Build 0:6ae2f7bca550 2344
Azure.IoT Build 0:6ae2f7bca550 2345 return result;
Azure.IoT Build 0:6ae2f7bca550 2346 }
Azure.IoT Build 0:6ae2f7bca550 2347
Azure.IoT Build 0:6ae2f7bca550 2348 int begin_set_desired_capabilities(BEGIN_HANDLE begin, AMQP_VALUE desired_capabilities_value)
Azure.IoT Build 0:6ae2f7bca550 2349 {
Azure.IoT Build 0:6ae2f7bca550 2350 int result;
Azure.IoT Build 0:6ae2f7bca550 2351
Azure.IoT Build 0:6ae2f7bca550 2352 if (begin == NULL)
Azure.IoT Build 0:6ae2f7bca550 2353 {
Azure.IoT Build 0:6ae2f7bca550 2354 result = __LINE__;
Azure.IoT Build 0:6ae2f7bca550 2355 }
Azure.IoT Build 0:6ae2f7bca550 2356 else
Azure.IoT Build 0:6ae2f7bca550 2357 {
Azure.IoT Build 0:6ae2f7bca550 2358 BEGIN_INSTANCE* begin_instance = (BEGIN_INSTANCE*)begin;
Azure.IoT Build 0:6ae2f7bca550 2359 AMQP_VALUE desired_capabilities_amqp_value = amqpvalue_clone(desired_capabilities_value);
Azure.IoT Build 0:6ae2f7bca550 2360 if (desired_capabilities_amqp_value == NULL)
Azure.IoT Build 0:6ae2f7bca550 2361 {
Azure.IoT Build 0:6ae2f7bca550 2362 result = __LINE__;
Azure.IoT Build 0:6ae2f7bca550 2363 }
Azure.IoT Build 0:6ae2f7bca550 2364 else
Azure.IoT Build 0:6ae2f7bca550 2365 {
Azure.IoT Build 0:6ae2f7bca550 2366 if (amqpvalue_set_composite_item(begin_instance->composite_value, 6, desired_capabilities_amqp_value) != 0)
Azure.IoT Build 0:6ae2f7bca550 2367 {
Azure.IoT Build 0:6ae2f7bca550 2368 result = __LINE__;
Azure.IoT Build 0:6ae2f7bca550 2369 }
Azure.IoT Build 0:6ae2f7bca550 2370 else
Azure.IoT Build 0:6ae2f7bca550 2371 {
Azure.IoT Build 0:6ae2f7bca550 2372 result = 0;
Azure.IoT Build 0:6ae2f7bca550 2373 }
Azure.IoT Build 0:6ae2f7bca550 2374
Azure.IoT Build 0:6ae2f7bca550 2375 amqpvalue_destroy(desired_capabilities_amqp_value);
Azure.IoT Build 0:6ae2f7bca550 2376 }
Azure.IoT Build 0:6ae2f7bca550 2377 }
Azure.IoT Build 0:6ae2f7bca550 2378
Azure.IoT Build 0:6ae2f7bca550 2379 return result;
Azure.IoT Build 0:6ae2f7bca550 2380 }
Azure.IoT Build 0:6ae2f7bca550 2381
Azure.IoT Build 0:6ae2f7bca550 2382 int begin_get_properties(BEGIN_HANDLE begin, fields* properties_value)
Azure.IoT Build 0:6ae2f7bca550 2383 {
Azure.IoT Build 0:6ae2f7bca550 2384 int result;
Azure.IoT Build 0:6ae2f7bca550 2385
Azure.IoT Build 0:6ae2f7bca550 2386 if (begin == NULL)
Azure.IoT Build 0:6ae2f7bca550 2387 {
Azure.IoT Build 0:6ae2f7bca550 2388 result = __LINE__;
Azure.IoT Build 0:6ae2f7bca550 2389 }
Azure.IoT Build 0:6ae2f7bca550 2390 else
Azure.IoT Build 0:6ae2f7bca550 2391 {
Azure.IoT Build 0:6ae2f7bca550 2392 BEGIN_INSTANCE* begin_instance = (BEGIN_INSTANCE*)begin;
Azure.IoT Build 0:6ae2f7bca550 2393 AMQP_VALUE item_value = amqpvalue_get_composite_item_in_place(begin_instance->composite_value, 7);
Azure.IoT Build 0:6ae2f7bca550 2394 if (item_value == NULL)
Azure.IoT Build 0:6ae2f7bca550 2395 {
Azure.IoT Build 0:6ae2f7bca550 2396 result = __LINE__;
Azure.IoT Build 0:6ae2f7bca550 2397 }
Azure.IoT Build 0:6ae2f7bca550 2398 else
Azure.IoT Build 0:6ae2f7bca550 2399 {
Azure.IoT Build 0:6ae2f7bca550 2400 if (amqpvalue_get_fields(item_value, properties_value) != 0)
Azure.IoT Build 0:6ae2f7bca550 2401 {
AzureIoTClient 16:22a72cf8e416 2402 result = __LINE__;
Azure.IoT Build 0:6ae2f7bca550 2403 }
Azure.IoT Build 0:6ae2f7bca550 2404 else
Azure.IoT Build 0:6ae2f7bca550 2405 {
Azure.IoT Build 0:6ae2f7bca550 2406 result = 0;
Azure.IoT Build 0:6ae2f7bca550 2407 }
Azure.IoT Build 0:6ae2f7bca550 2408 }
Azure.IoT Build 0:6ae2f7bca550 2409 }
Azure.IoT Build 0:6ae2f7bca550 2410
Azure.IoT Build 0:6ae2f7bca550 2411 return result;
Azure.IoT Build 0:6ae2f7bca550 2412 }
Azure.IoT Build 0:6ae2f7bca550 2413
Azure.IoT Build 0:6ae2f7bca550 2414 int begin_set_properties(BEGIN_HANDLE begin, fields properties_value)
Azure.IoT Build 0:6ae2f7bca550 2415 {
Azure.IoT Build 0:6ae2f7bca550 2416 int result;
Azure.IoT Build 0:6ae2f7bca550 2417
Azure.IoT Build 0:6ae2f7bca550 2418 if (begin == NULL)
Azure.IoT Build 0:6ae2f7bca550 2419 {
Azure.IoT Build 0:6ae2f7bca550 2420 result = __LINE__;
Azure.IoT Build 0:6ae2f7bca550 2421 }
Azure.IoT Build 0:6ae2f7bca550 2422 else
Azure.IoT Build 0:6ae2f7bca550 2423 {
Azure.IoT Build 0:6ae2f7bca550 2424 BEGIN_INSTANCE* begin_instance = (BEGIN_INSTANCE*)begin;
Azure.IoT Build 0:6ae2f7bca550 2425 AMQP_VALUE properties_amqp_value = amqpvalue_create_fields(properties_value);
Azure.IoT Build 0:6ae2f7bca550 2426 if (properties_amqp_value == NULL)
Azure.IoT Build 0:6ae2f7bca550 2427 {
Azure.IoT Build 0:6ae2f7bca550 2428 result = __LINE__;
Azure.IoT Build 0:6ae2f7bca550 2429 }
Azure.IoT Build 0:6ae2f7bca550 2430 else
Azure.IoT Build 0:6ae2f7bca550 2431 {
Azure.IoT Build 0:6ae2f7bca550 2432 if (amqpvalue_set_composite_item(begin_instance->composite_value, 7, properties_amqp_value) != 0)
Azure.IoT Build 0:6ae2f7bca550 2433 {
Azure.IoT Build 0:6ae2f7bca550 2434 result = __LINE__;
Azure.IoT Build 0:6ae2f7bca550 2435 }
Azure.IoT Build 0:6ae2f7bca550 2436 else
Azure.IoT Build 0:6ae2f7bca550 2437 {
Azure.IoT Build 0:6ae2f7bca550 2438 result = 0;
Azure.IoT Build 0:6ae2f7bca550 2439 }
Azure.IoT Build 0:6ae2f7bca550 2440
Azure.IoT Build 0:6ae2f7bca550 2441 amqpvalue_destroy(properties_amqp_value);
Azure.IoT Build 0:6ae2f7bca550 2442 }
Azure.IoT Build 0:6ae2f7bca550 2443 }
Azure.IoT Build 0:6ae2f7bca550 2444
Azure.IoT Build 0:6ae2f7bca550 2445 return result;
Azure.IoT Build 0:6ae2f7bca550 2446 }
Azure.IoT Build 0:6ae2f7bca550 2447
Azure.IoT Build 0:6ae2f7bca550 2448
Azure.IoT Build 0:6ae2f7bca550 2449 /* attach */
Azure.IoT Build 0:6ae2f7bca550 2450
Azure.IoT Build 0:6ae2f7bca550 2451 typedef struct ATTACH_INSTANCE_TAG
Azure.IoT Build 0:6ae2f7bca550 2452 {
Azure.IoT Build 0:6ae2f7bca550 2453 AMQP_VALUE composite_value;
Azure.IoT Build 0:6ae2f7bca550 2454 } ATTACH_INSTANCE;
Azure.IoT Build 0:6ae2f7bca550 2455
Azure.IoT Build 0:6ae2f7bca550 2456 static ATTACH_HANDLE attach_create_internal(void)
Azure.IoT Build 0:6ae2f7bca550 2457 {
Azure.IoT Build 0:6ae2f7bca550 2458 ATTACH_INSTANCE* attach_instance = (ATTACH_INSTANCE*)amqpalloc_malloc(sizeof(ATTACH_INSTANCE));
Azure.IoT Build 0:6ae2f7bca550 2459 if (attach_instance != NULL)
Azure.IoT Build 0:6ae2f7bca550 2460 {
Azure.IoT Build 0:6ae2f7bca550 2461 attach_instance->composite_value = NULL;
Azure.IoT Build 0:6ae2f7bca550 2462 }
Azure.IoT Build 0:6ae2f7bca550 2463
Azure.IoT Build 0:6ae2f7bca550 2464 return attach_instance;
Azure.IoT Build 0:6ae2f7bca550 2465 }
Azure.IoT Build 0:6ae2f7bca550 2466
Azure.IoT Build 0:6ae2f7bca550 2467 ATTACH_HANDLE attach_create(const char* name_value, handle handle_value, role role_value)
Azure.IoT Build 0:6ae2f7bca550 2468 {
Azure.IoT Build 0:6ae2f7bca550 2469 ATTACH_INSTANCE* attach_instance = (ATTACH_INSTANCE*)amqpalloc_malloc(sizeof(ATTACH_INSTANCE));
Azure.IoT Build 0:6ae2f7bca550 2470 if (attach_instance != NULL)
Azure.IoT Build 0:6ae2f7bca550 2471 {
Azure.IoT Build 0:6ae2f7bca550 2472 attach_instance->composite_value = amqpvalue_create_composite_with_ulong_descriptor(18);
Azure.IoT Build 0:6ae2f7bca550 2473 if (attach_instance->composite_value == NULL)
Azure.IoT Build 0:6ae2f7bca550 2474 {
Azure.IoT Build 0:6ae2f7bca550 2475 amqpalloc_free(attach_instance);
Azure.IoT Build 0:6ae2f7bca550 2476 attach_instance = NULL;
Azure.IoT Build 0:6ae2f7bca550 2477 }
Azure.IoT Build 0:6ae2f7bca550 2478 else
Azure.IoT Build 0:6ae2f7bca550 2479 {
Azure.IoT Build 0:6ae2f7bca550 2480 AMQP_VALUE name_amqp_value;
Azure.IoT Build 0:6ae2f7bca550 2481 AMQP_VALUE handle_amqp_value;
Azure.IoT Build 0:6ae2f7bca550 2482 AMQP_VALUE role_amqp_value;
Azure.IoT Build 0:6ae2f7bca550 2483 int result = 0;
Azure.IoT Build 0:6ae2f7bca550 2484
Azure.IoT Build 0:6ae2f7bca550 2485 name_amqp_value = amqpvalue_create_string(name_value);
Azure.IoT Build 0:6ae2f7bca550 2486 if ((result == 0) && (amqpvalue_set_composite_item(attach_instance->composite_value, 0, name_amqp_value) != 0))
Azure.IoT Build 0:6ae2f7bca550 2487 {
Azure.IoT Build 0:6ae2f7bca550 2488 result = __LINE__;
Azure.IoT Build 0:6ae2f7bca550 2489 }
Azure.IoT Build 0:6ae2f7bca550 2490 handle_amqp_value = amqpvalue_create_handle(handle_value);
Azure.IoT Build 0:6ae2f7bca550 2491 if ((result == 0) && (amqpvalue_set_composite_item(attach_instance->composite_value, 1, handle_amqp_value) != 0))
Azure.IoT Build 0:6ae2f7bca550 2492 {
Azure.IoT Build 0:6ae2f7bca550 2493 result = __LINE__;
Azure.IoT Build 0:6ae2f7bca550 2494 }
Azure.IoT Build 0:6ae2f7bca550 2495 role_amqp_value = amqpvalue_create_role(role_value);
Azure.IoT Build 0:6ae2f7bca550 2496 if ((result == 0) && (amqpvalue_set_composite_item(attach_instance->composite_value, 2, role_amqp_value) != 0))
Azure.IoT Build 0:6ae2f7bca550 2497 {
Azure.IoT Build 0:6ae2f7bca550 2498 result = __LINE__;
Azure.IoT Build 0:6ae2f7bca550 2499 }
Azure.IoT Build 0:6ae2f7bca550 2500
Azure.IoT Build 0:6ae2f7bca550 2501 amqpvalue_destroy(name_amqp_value);
Azure.IoT Build 0:6ae2f7bca550 2502 amqpvalue_destroy(handle_amqp_value);
Azure.IoT Build 0:6ae2f7bca550 2503 amqpvalue_destroy(role_amqp_value);
Azure.IoT Build 0:6ae2f7bca550 2504 }
Azure.IoT Build 0:6ae2f7bca550 2505 }
Azure.IoT Build 0:6ae2f7bca550 2506
Azure.IoT Build 0:6ae2f7bca550 2507 return attach_instance;
Azure.IoT Build 0:6ae2f7bca550 2508 }
Azure.IoT Build 0:6ae2f7bca550 2509
Azure.IoT Build 0:6ae2f7bca550 2510 ATTACH_HANDLE attach_clone(ATTACH_HANDLE value)
Azure.IoT Build 0:6ae2f7bca550 2511 {
Azure.IoT Build 0:6ae2f7bca550 2512 ATTACH_INSTANCE* attach_instance = (ATTACH_INSTANCE*)amqpalloc_malloc(sizeof(ATTACH_INSTANCE));
Azure.IoT Build 0:6ae2f7bca550 2513 if (attach_instance != NULL)
Azure.IoT Build 0:6ae2f7bca550 2514 {
Azure.IoT Build 0:6ae2f7bca550 2515 attach_instance->composite_value = amqpvalue_clone(((ATTACH_INSTANCE*)value)->composite_value);
Azure.IoT Build 0:6ae2f7bca550 2516 if (attach_instance->composite_value == NULL)
Azure.IoT Build 0:6ae2f7bca550 2517 {
Azure.IoT Build 0:6ae2f7bca550 2518 amqpalloc_free(attach_instance);
Azure.IoT Build 0:6ae2f7bca550 2519 attach_instance = NULL;
Azure.IoT Build 0:6ae2f7bca550 2520 }
Azure.IoT Build 0:6ae2f7bca550 2521 }
Azure.IoT Build 0:6ae2f7bca550 2522
Azure.IoT Build 0:6ae2f7bca550 2523 return attach_instance;
Azure.IoT Build 0:6ae2f7bca550 2524 }
Azure.IoT Build 0:6ae2f7bca550 2525
Azure.IoT Build 0:6ae2f7bca550 2526 void attach_destroy(ATTACH_HANDLE attach)
Azure.IoT Build 0:6ae2f7bca550 2527 {
Azure.IoT Build 0:6ae2f7bca550 2528 if (attach != NULL)
Azure.IoT Build 0:6ae2f7bca550 2529 {
Azure.IoT Build 0:6ae2f7bca550 2530 ATTACH_INSTANCE* attach_instance = (ATTACH_INSTANCE*)attach;
Azure.IoT Build 0:6ae2f7bca550 2531 amqpvalue_destroy(attach_instance->composite_value);
Azure.IoT Build 0:6ae2f7bca550 2532 amqpalloc_free(attach_instance);
Azure.IoT Build 0:6ae2f7bca550 2533 }
Azure.IoT Build 0:6ae2f7bca550 2534 }
Azure.IoT Build 0:6ae2f7bca550 2535
Azure.IoT Build 0:6ae2f7bca550 2536 AMQP_VALUE amqpvalue_create_attach(ATTACH_HANDLE attach)
Azure.IoT Build 0:6ae2f7bca550 2537 {
Azure.IoT Build 0:6ae2f7bca550 2538 AMQP_VALUE result;
Azure.IoT Build 0:6ae2f7bca550 2539
Azure.IoT Build 0:6ae2f7bca550 2540 if (attach == NULL)
Azure.IoT Build 0:6ae2f7bca550 2541 {
Azure.IoT Build 0:6ae2f7bca550 2542 result = NULL;
Azure.IoT Build 0:6ae2f7bca550 2543 }
Azure.IoT Build 0:6ae2f7bca550 2544 else
Azure.IoT Build 0:6ae2f7bca550 2545 {
Azure.IoT Build 0:6ae2f7bca550 2546 ATTACH_INSTANCE* attach_instance = (ATTACH_INSTANCE*)attach;
Azure.IoT Build 0:6ae2f7bca550 2547 result = amqpvalue_clone(attach_instance->composite_value);
Azure.IoT Build 0:6ae2f7bca550 2548 }
Azure.IoT Build 0:6ae2f7bca550 2549
Azure.IoT Build 0:6ae2f7bca550 2550 return result;
Azure.IoT Build 0:6ae2f7bca550 2551 }
Azure.IoT Build 0:6ae2f7bca550 2552
Azure.IoT Build 0:6ae2f7bca550 2553 bool is_attach_type_by_descriptor(AMQP_VALUE descriptor)
Azure.IoT Build 0:6ae2f7bca550 2554 {
Azure.IoT Build 0:6ae2f7bca550 2555 bool result;
Azure.IoT Build 0:6ae2f7bca550 2556
Azure.IoT Build 0:6ae2f7bca550 2557 uint64_t descriptor_ulong;
Azure.IoT Build 0:6ae2f7bca550 2558 if ((amqpvalue_get_ulong(descriptor, &descriptor_ulong) == 0) &&
Azure.IoT Build 0:6ae2f7bca550 2559 (descriptor_ulong == 18))
Azure.IoT Build 0:6ae2f7bca550 2560 {
Azure.IoT Build 0:6ae2f7bca550 2561 result = true;
Azure.IoT Build 0:6ae2f7bca550 2562 }
Azure.IoT Build 0:6ae2f7bca550 2563 else
Azure.IoT Build 0:6ae2f7bca550 2564 {
Azure.IoT Build 0:6ae2f7bca550 2565 result = false;
Azure.IoT Build 0:6ae2f7bca550 2566 }
Azure.IoT Build 0:6ae2f7bca550 2567
Azure.IoT Build 0:6ae2f7bca550 2568 return result;
Azure.IoT Build 0:6ae2f7bca550 2569 }
Azure.IoT Build 0:6ae2f7bca550 2570
Azure.IoT Build 0:6ae2f7bca550 2571
Azure.IoT Build 0:6ae2f7bca550 2572 int amqpvalue_get_attach(AMQP_VALUE value, ATTACH_HANDLE* attach_handle)
Azure.IoT Build 0:6ae2f7bca550 2573 {
Azure.IoT Build 0:6ae2f7bca550 2574 int result;
Azure.IoT Build 0:6ae2f7bca550 2575 ATTACH_INSTANCE* attach_instance = (ATTACH_INSTANCE*)attach_create_internal();
Azure.IoT Build 0:6ae2f7bca550 2576 *attach_handle = attach_instance;
Azure.IoT Build 0:6ae2f7bca550 2577 if (*attach_handle == NULL)
Azure.IoT Build 0:6ae2f7bca550 2578 {
Azure.IoT Build 0:6ae2f7bca550 2579 result = __LINE__;
Azure.IoT Build 0:6ae2f7bca550 2580 }
Azure.IoT Build 0:6ae2f7bca550 2581 else
Azure.IoT Build 0:6ae2f7bca550 2582 {
Azure.IoT Build 0:6ae2f7bca550 2583 AMQP_VALUE list_value = amqpvalue_get_inplace_described_value(value);
Azure.IoT Build 0:6ae2f7bca550 2584 if (list_value == NULL)
Azure.IoT Build 0:6ae2f7bca550 2585 {
Azure.IoT Build 0:6ae2f7bca550 2586 attach_destroy(*attach_handle);
Azure.IoT Build 0:6ae2f7bca550 2587 result = __LINE__;
Azure.IoT Build 0:6ae2f7bca550 2588 }
Azure.IoT Build 0:6ae2f7bca550 2589 else
Azure.IoT Build 0:6ae2f7bca550 2590 {
Azure.IoT Build 0:6ae2f7bca550 2591 do
Azure.IoT Build 0:6ae2f7bca550 2592 {
Azure.IoT Build 0:6ae2f7bca550 2593 AMQP_VALUE item_value;
Azure.IoT Build 0:6ae2f7bca550 2594 /* name */
Azure.IoT Build 0:6ae2f7bca550 2595 item_value = amqpvalue_get_list_item(list_value, 0);
Azure.IoT Build 0:6ae2f7bca550 2596 if (item_value == NULL)
Azure.IoT Build 0:6ae2f7bca550 2597 {
Azure.IoT Build 0:6ae2f7bca550 2598 {
Azure.IoT Build 0:6ae2f7bca550 2599 attach_destroy(*attach_handle);
Azure.IoT Build 0:6ae2f7bca550 2600 result = __LINE__;
Azure.IoT Build 0:6ae2f7bca550 2601 break;
Azure.IoT Build 0:6ae2f7bca550 2602 }
Azure.IoT Build 0:6ae2f7bca550 2603 }
Azure.IoT Build 0:6ae2f7bca550 2604 else
Azure.IoT Build 0:6ae2f7bca550 2605 {
Azure.IoT Build 0:6ae2f7bca550 2606 const char* name;
Azure.IoT Build 0:6ae2f7bca550 2607 if (amqpvalue_get_string(item_value, &name) != 0)
Azure.IoT Build 0:6ae2f7bca550 2608 {
Azure.IoT Build 0:6ae2f7bca550 2609 attach_destroy(*attach_handle);
Azure.IoT Build 0:6ae2f7bca550 2610 result = __LINE__;
Azure.IoT Build 0:6ae2f7bca550 2611 break;
Azure.IoT Build 0:6ae2f7bca550 2612 }
Azure.IoT Build 0:6ae2f7bca550 2613
Azure.IoT Build 0:6ae2f7bca550 2614 amqpvalue_destroy(item_value);
Azure.IoT Build 0:6ae2f7bca550 2615 }
Azure.IoT Build 0:6ae2f7bca550 2616 /* handle */
Azure.IoT Build 0:6ae2f7bca550 2617 item_value = amqpvalue_get_list_item(list_value, 1);
Azure.IoT Build 0:6ae2f7bca550 2618 if (item_value == NULL)
Azure.IoT Build 0:6ae2f7bca550 2619 {
Azure.IoT Build 0:6ae2f7bca550 2620 {
Azure.IoT Build 0:6ae2f7bca550 2621 attach_destroy(*attach_handle);
Azure.IoT Build 0:6ae2f7bca550 2622 result = __LINE__;
Azure.IoT Build 0:6ae2f7bca550 2623 break;
Azure.IoT Build 0:6ae2f7bca550 2624 }
Azure.IoT Build 0:6ae2f7bca550 2625 }
Azure.IoT Build 0:6ae2f7bca550 2626 else
Azure.IoT Build 0:6ae2f7bca550 2627 {
Azure.IoT Build 0:6ae2f7bca550 2628 handle handle;
Azure.IoT Build 0:6ae2f7bca550 2629 if (amqpvalue_get_handle(item_value, &handle) != 0)
Azure.IoT Build 0:6ae2f7bca550 2630 {
Azure.IoT Build 0:6ae2f7bca550 2631 attach_destroy(*attach_handle);
Azure.IoT Build 0:6ae2f7bca550 2632 result = __LINE__;
Azure.IoT Build 0:6ae2f7bca550 2633 break;
Azure.IoT Build 0:6ae2f7bca550 2634 }
Azure.IoT Build 0:6ae2f7bca550 2635
Azure.IoT Build 0:6ae2f7bca550 2636 amqpvalue_destroy(item_value);
Azure.IoT Build 0:6ae2f7bca550 2637 }
Azure.IoT Build 0:6ae2f7bca550 2638 /* role */
Azure.IoT Build 0:6ae2f7bca550 2639 item_value = amqpvalue_get_list_item(list_value, 2);
Azure.IoT Build 0:6ae2f7bca550 2640 if (item_value == NULL)
Azure.IoT Build 0:6ae2f7bca550 2641 {
Azure.IoT Build 0:6ae2f7bca550 2642 {
Azure.IoT Build 0:6ae2f7bca550 2643 attach_destroy(*attach_handle);
Azure.IoT Build 0:6ae2f7bca550 2644 result = __LINE__;
Azure.IoT Build 0:6ae2f7bca550 2645 break;
Azure.IoT Build 0:6ae2f7bca550 2646 }
Azure.IoT Build 0:6ae2f7bca550 2647 }
Azure.IoT Build 0:6ae2f7bca550 2648 else
Azure.IoT Build 0:6ae2f7bca550 2649 {
Azure.IoT Build 0:6ae2f7bca550 2650 role role;
Azure.IoT Build 0:6ae2f7bca550 2651 if (amqpvalue_get_role(item_value, &role) != 0)
Azure.IoT Build 0:6ae2f7bca550 2652 {
Azure.IoT Build 0:6ae2f7bca550 2653 attach_destroy(*attach_handle);
Azure.IoT Build 0:6ae2f7bca550 2654 result = __LINE__;
Azure.IoT Build 0:6ae2f7bca550 2655 break;
Azure.IoT Build 0:6ae2f7bca550 2656 }
Azure.IoT Build 0:6ae2f7bca550 2657
Azure.IoT Build 0:6ae2f7bca550 2658 amqpvalue_destroy(item_value);
Azure.IoT Build 0:6ae2f7bca550 2659 }
Azure.IoT Build 0:6ae2f7bca550 2660 /* snd-settle-mode */
Azure.IoT Build 0:6ae2f7bca550 2661 item_value = amqpvalue_get_list_item(list_value, 3);
Azure.IoT Build 0:6ae2f7bca550 2662 if (item_value == NULL)
Azure.IoT Build 0:6ae2f7bca550 2663 {
Azure.IoT Build 0:6ae2f7bca550 2664 /* do nothing */
Azure.IoT Build 0:6ae2f7bca550 2665 }
Azure.IoT Build 0:6ae2f7bca550 2666 else
Azure.IoT Build 0:6ae2f7bca550 2667 {
Azure.IoT Build 0:6ae2f7bca550 2668 sender_settle_mode snd_settle_mode;
Azure.IoT Build 0:6ae2f7bca550 2669 if (amqpvalue_get_sender_settle_mode(item_value, &snd_settle_mode) != 0)
Azure.IoT Build 0:6ae2f7bca550 2670 {
Azure.IoT Build 0:6ae2f7bca550 2671 if (amqpvalue_get_type(item_value) != AMQP_TYPE_NULL)
Azure.IoT Build 0:6ae2f7bca550 2672 {
Azure.IoT Build 0:6ae2f7bca550 2673 attach_destroy(*attach_handle);
Azure.IoT Build 0:6ae2f7bca550 2674 result = __LINE__;
Azure.IoT Build 0:6ae2f7bca550 2675 break;
Azure.IoT Build 0:6ae2f7bca550 2676 }
Azure.IoT Build 0:6ae2f7bca550 2677 }
Azure.IoT Build 0:6ae2f7bca550 2678
Azure.IoT Build 0:6ae2f7bca550 2679 amqpvalue_destroy(item_value);
Azure.IoT Build 0:6ae2f7bca550 2680 }
Azure.IoT Build 0:6ae2f7bca550 2681 /* rcv-settle-mode */
Azure.IoT Build 0:6ae2f7bca550 2682 item_value = amqpvalue_get_list_item(list_value, 4);
Azure.IoT Build 0:6ae2f7bca550 2683 if (item_value == NULL)
Azure.IoT Build 0:6ae2f7bca550 2684 {
Azure.IoT Build 0:6ae2f7bca550 2685 /* do nothing */
Azure.IoT Build 0:6ae2f7bca550 2686 }
Azure.IoT Build 0:6ae2f7bca550 2687 else
Azure.IoT Build 0:6ae2f7bca550 2688 {
Azure.IoT Build 0:6ae2f7bca550 2689 receiver_settle_mode rcv_settle_mode;
Azure.IoT Build 0:6ae2f7bca550 2690 if (amqpvalue_get_receiver_settle_mode(item_value, &rcv_settle_mode) != 0)
Azure.IoT Build 0:6ae2f7bca550 2691 {
Azure.IoT Build 0:6ae2f7bca550 2692 if (amqpvalue_get_type(item_value) != AMQP_TYPE_NULL)
Azure.IoT Build 0:6ae2f7bca550 2693 {
Azure.IoT Build 0:6ae2f7bca550 2694 attach_destroy(*attach_handle);
Azure.IoT Build 0:6ae2f7bca550 2695 result = __LINE__;
Azure.IoT Build 0:6ae2f7bca550 2696 break;
Azure.IoT Build 0:6ae2f7bca550 2697 }
Azure.IoT Build 0:6ae2f7bca550 2698 }
Azure.IoT Build 0:6ae2f7bca550 2699
Azure.IoT Build 0:6ae2f7bca550 2700 amqpvalue_destroy(item_value);
Azure.IoT Build 0:6ae2f7bca550 2701 }
Azure.IoT Build 0:6ae2f7bca550 2702 /* source */
Azure.IoT Build 0:6ae2f7bca550 2703 item_value = amqpvalue_get_list_item(list_value, 5);
Azure.IoT Build 0:6ae2f7bca550 2704 if (item_value == NULL)
Azure.IoT Build 0:6ae2f7bca550 2705 {
Azure.IoT Build 0:6ae2f7bca550 2706 /* do nothing */
Azure.IoT Build 0:6ae2f7bca550 2707 }
Azure.IoT Build 0:6ae2f7bca550 2708 else
Azure.IoT Build 0:6ae2f7bca550 2709 {
Azure.IoT Build 0:6ae2f7bca550 2710 amqpvalue_destroy(item_value);
Azure.IoT Build 0:6ae2f7bca550 2711 }
Azure.IoT Build 0:6ae2f7bca550 2712 /* target */
Azure.IoT Build 0:6ae2f7bca550 2713 item_value = amqpvalue_get_list_item(list_value, 6);
Azure.IoT Build 0:6ae2f7bca550 2714 if (item_value == NULL)
Azure.IoT Build 0:6ae2f7bca550 2715 {
Azure.IoT Build 0:6ae2f7bca550 2716 /* do nothing */
Azure.IoT Build 0:6ae2f7bca550 2717 }
Azure.IoT Build 0:6ae2f7bca550 2718 else
Azure.IoT Build 0:6ae2f7bca550 2719 {
Azure.IoT Build 0:6ae2f7bca550 2720 amqpvalue_destroy(item_value);
Azure.IoT Build 0:6ae2f7bca550 2721 }
Azure.IoT Build 0:6ae2f7bca550 2722 /* unsettled */
Azure.IoT Build 0:6ae2f7bca550 2723 item_value = amqpvalue_get_list_item(list_value, 7);
Azure.IoT Build 0:6ae2f7bca550 2724 if (item_value == NULL)
Azure.IoT Build 0:6ae2f7bca550 2725 {
Azure.IoT Build 0:6ae2f7bca550 2726 /* do nothing */
Azure.IoT Build 0:6ae2f7bca550 2727 }
Azure.IoT Build 0:6ae2f7bca550 2728 else
Azure.IoT Build 0:6ae2f7bca550 2729 {
Azure.IoT Build 0:6ae2f7bca550 2730 AMQP_VALUE unsettled;
Azure.IoT Build 0:6ae2f7bca550 2731 if (amqpvalue_get_map(item_value, &unsettled) != 0)
Azure.IoT Build 0:6ae2f7bca550 2732 {
Azure.IoT Build 0:6ae2f7bca550 2733 if (amqpvalue_get_type(item_value) != AMQP_TYPE_NULL)
Azure.IoT Build 0:6ae2f7bca550 2734 {
Azure.IoT Build 0:6ae2f7bca550 2735 attach_destroy(*attach_handle);
Azure.IoT Build 0:6ae2f7bca550 2736 result = __LINE__;
Azure.IoT Build 0:6ae2f7bca550 2737 break;
Azure.IoT Build 0:6ae2f7bca550 2738 }
Azure.IoT Build 0:6ae2f7bca550 2739 }
Azure.IoT Build 0:6ae2f7bca550 2740
Azure.IoT Build 0:6ae2f7bca550 2741 amqpvalue_destroy(item_value);
Azure.IoT Build 0:6ae2f7bca550 2742 }
Azure.IoT Build 0:6ae2f7bca550 2743 /* incomplete-unsettled */
Azure.IoT Build 0:6ae2f7bca550 2744 item_value = amqpvalue_get_list_item(list_value, 8);
Azure.IoT Build 0:6ae2f7bca550 2745 if (item_value == NULL)
Azure.IoT Build 0:6ae2f7bca550 2746 {
Azure.IoT Build 0:6ae2f7bca550 2747 /* do nothing */
Azure.IoT Build 0:6ae2f7bca550 2748 }
Azure.IoT Build 0:6ae2f7bca550 2749 else
Azure.IoT Build 0:6ae2f7bca550 2750 {
Azure.IoT Build 0:6ae2f7bca550 2751 bool incomplete_unsettled;
Azure.IoT Build 0:6ae2f7bca550 2752 if (amqpvalue_get_boolean(item_value, &incomplete_unsettled) != 0)
Azure.IoT Build 0:6ae2f7bca550 2753 {
Azure.IoT Build 0:6ae2f7bca550 2754 if (amqpvalue_get_type(item_value) != AMQP_TYPE_NULL)
Azure.IoT Build 0:6ae2f7bca550 2755 {
Azure.IoT Build 0:6ae2f7bca550 2756 attach_destroy(*attach_handle);
Azure.IoT Build 0:6ae2f7bca550 2757 result = __LINE__;
Azure.IoT Build 0:6ae2f7bca550 2758 break;
Azure.IoT Build 0:6ae2f7bca550 2759 }
Azure.IoT Build 0:6ae2f7bca550 2760 }
Azure.IoT Build 0:6ae2f7bca550 2761
Azure.IoT Build 0:6ae2f7bca550 2762 amqpvalue_destroy(item_value);
Azure.IoT Build 0:6ae2f7bca550 2763 }
Azure.IoT Build 0:6ae2f7bca550 2764 /* initial-delivery-count */
Azure.IoT Build 0:6ae2f7bca550 2765 item_value = amqpvalue_get_list_item(list_value, 9);
Azure.IoT Build 0:6ae2f7bca550 2766 if (item_value == NULL)
Azure.IoT Build 0:6ae2f7bca550 2767 {
Azure.IoT Build 0:6ae2f7bca550 2768 /* do nothing */
Azure.IoT Build 0:6ae2f7bca550 2769 }
Azure.IoT Build 0:6ae2f7bca550 2770 else
Azure.IoT Build 0:6ae2f7bca550 2771 {
Azure.IoT Build 0:6ae2f7bca550 2772 sequence_no initial_delivery_count;
Azure.IoT Build 0:6ae2f7bca550 2773 if (amqpvalue_get_sequence_no(item_value, &initial_delivery_count) != 0)
Azure.IoT Build 0:6ae2f7bca550 2774 {
Azure.IoT Build 0:6ae2f7bca550 2775 if (amqpvalue_get_type(item_value) != AMQP_TYPE_NULL)
Azure.IoT Build 0:6ae2f7bca550 2776 {
Azure.IoT Build 0:6ae2f7bca550 2777 attach_destroy(*attach_handle);
Azure.IoT Build 0:6ae2f7bca550 2778 result = __LINE__;
Azure.IoT Build 0:6ae2f7bca550 2779 break;
Azure.IoT Build 0:6ae2f7bca550 2780 }
Azure.IoT Build 0:6ae2f7bca550 2781 }
Azure.IoT Build 0:6ae2f7bca550 2782
Azure.IoT Build 0:6ae2f7bca550 2783 amqpvalue_destroy(item_value);
Azure.IoT Build 0:6ae2f7bca550 2784 }
Azure.IoT Build 0:6ae2f7bca550 2785 /* max-message-size */
Azure.IoT Build 0:6ae2f7bca550 2786 item_value = amqpvalue_get_list_item(list_value, 10);
Azure.IoT Build 0:6ae2f7bca550 2787 if (item_value == NULL)
Azure.IoT Build 0:6ae2f7bca550 2788 {
Azure.IoT Build 0:6ae2f7bca550 2789 /* do nothing */
Azure.IoT Build 0:6ae2f7bca550 2790 }
Azure.IoT Build 0:6ae2f7bca550 2791 else
Azure.IoT Build 0:6ae2f7bca550 2792 {
Azure.IoT Build 0:6ae2f7bca550 2793 uint64_t max_message_size;
Azure.IoT Build 0:6ae2f7bca550 2794 if (amqpvalue_get_ulong(item_value, &max_message_size) != 0)
Azure.IoT Build 0:6ae2f7bca550 2795 {
Azure.IoT Build 0:6ae2f7bca550 2796 if (amqpvalue_get_type(item_value) != AMQP_TYPE_NULL)
Azure.IoT Build 0:6ae2f7bca550 2797 {
Azure.IoT Build 0:6ae2f7bca550 2798 attach_destroy(*attach_handle);
Azure.IoT Build 0:6ae2f7bca550 2799 result = __LINE__;
Azure.IoT Build 0:6ae2f7bca550 2800 break;
Azure.IoT Build 0:6ae2f7bca550 2801 }
Azure.IoT Build 0:6ae2f7bca550 2802 }
Azure.IoT Build 0:6ae2f7bca550 2803
Azure.IoT Build 0:6ae2f7bca550 2804 amqpvalue_destroy(item_value);
Azure.IoT Build 0:6ae2f7bca550 2805 }
Azure.IoT Build 0:6ae2f7bca550 2806 /* offered-capabilities */
Azure.IoT Build 0:6ae2f7bca550 2807 item_value = amqpvalue_get_list_item(list_value, 11);
Azure.IoT Build 0:6ae2f7bca550 2808 if (item_value == NULL)
Azure.IoT Build 0:6ae2f7bca550 2809 {
Azure.IoT Build 0:6ae2f7bca550 2810 /* do nothing */
Azure.IoT Build 0:6ae2f7bca550 2811 }
Azure.IoT Build 0:6ae2f7bca550 2812 else
Azure.IoT Build 0:6ae2f7bca550 2813 {
Azure.IoT Build 0:6ae2f7bca550 2814 const char* offered_capabilities;
Azure.IoT Build 0:6ae2f7bca550 2815 AMQP_VALUE offered_capabilities_array;
Azure.IoT Build 0:6ae2f7bca550 2816 if ((amqpvalue_get_array(item_value, &offered_capabilities_array) != 0) &&
Azure.IoT Build 0:6ae2f7bca550 2817 (amqpvalue_get_symbol(item_value, &offered_capabilities) != 0))
Azure.IoT Build 0:6ae2f7bca550 2818 {
Azure.IoT Build 0:6ae2f7bca550 2819 if (amqpvalue_get_type(item_value) != AMQP_TYPE_NULL)
Azure.IoT Build 0:6ae2f7bca550 2820 {
Azure.IoT Build 0:6ae2f7bca550 2821 attach_destroy(*attach_handle);
Azure.IoT Build 0:6ae2f7bca550 2822 result = __LINE__;
Azure.IoT Build 0:6ae2f7bca550 2823 break;
Azure.IoT Build 0:6ae2f7bca550 2824 }
Azure.IoT Build 0:6ae2f7bca550 2825 }
Azure.IoT Build 0:6ae2f7bca550 2826
Azure.IoT Build 0:6ae2f7bca550 2827 amqpvalue_destroy(item_value);
Azure.IoT Build 0:6ae2f7bca550 2828 }
Azure.IoT Build 0:6ae2f7bca550 2829 /* desired-capabilities */
Azure.IoT Build 0:6ae2f7bca550 2830 item_value = amqpvalue_get_list_item(list_value, 12);
Azure.IoT Build 0:6ae2f7bca550 2831 if (item_value == NULL)
Azure.IoT Build 0:6ae2f7bca550 2832 {
Azure.IoT Build 0:6ae2f7bca550 2833 /* do nothing */
Azure.IoT Build 0:6ae2f7bca550 2834 }
Azure.IoT Build 0:6ae2f7bca550 2835 else
Azure.IoT Build 0:6ae2f7bca550 2836 {
Azure.IoT Build 0:6ae2f7bca550 2837 const char* desired_capabilities;
Azure.IoT Build 0:6ae2f7bca550 2838 AMQP_VALUE desired_capabilities_array;
Azure.IoT Build 0:6ae2f7bca550 2839 if ((amqpvalue_get_array(item_value, &desired_capabilities_array) != 0) &&
Azure.IoT Build 0:6ae2f7bca550 2840 (amqpvalue_get_symbol(item_value, &desired_capabilities) != 0))
Azure.IoT Build 0:6ae2f7bca550 2841 {
Azure.IoT Build 0:6ae2f7bca550 2842 if (amqpvalue_get_type(item_value) != AMQP_TYPE_NULL)
Azure.IoT Build 0:6ae2f7bca550 2843 {
Azure.IoT Build 0:6ae2f7bca550 2844 attach_destroy(*attach_handle);
Azure.IoT Build 0:6ae2f7bca550 2845 result = __LINE__;
Azure.IoT Build 0:6ae2f7bca550 2846 break;
Azure.IoT Build 0:6ae2f7bca550 2847 }
Azure.IoT Build 0:6ae2f7bca550 2848 }
Azure.IoT Build 0:6ae2f7bca550 2849
Azure.IoT Build 0:6ae2f7bca550 2850 amqpvalue_destroy(item_value);
Azure.IoT Build 0:6ae2f7bca550 2851 }
Azure.IoT Build 0:6ae2f7bca550 2852 /* properties */
Azure.IoT Build 0:6ae2f7bca550 2853 item_value = amqpvalue_get_list_item(list_value, 13);
Azure.IoT Build 0:6ae2f7bca550 2854 if (item_value == NULL)
Azure.IoT Build 0:6ae2f7bca550 2855 {
Azure.IoT Build 0:6ae2f7bca550 2856 /* do nothing */
Azure.IoT Build 0:6ae2f7bca550 2857 }
Azure.IoT Build 0:6ae2f7bca550 2858 else
Azure.IoT Build 0:6ae2f7bca550 2859 {
Azure.IoT Build 0:6ae2f7bca550 2860 fields properties;
Azure.IoT Build 0:6ae2f7bca550 2861 if (amqpvalue_get_fields(item_value, &properties) != 0)
Azure.IoT Build 0:6ae2f7bca550 2862 {
Azure.IoT Build 0:6ae2f7bca550 2863 if (amqpvalue_get_type(item_value) != AMQP_TYPE_NULL)
Azure.IoT Build 0:6ae2f7bca550 2864 {
Azure.IoT Build 0:6ae2f7bca550 2865 attach_destroy(*attach_handle);
Azure.IoT Build 0:6ae2f7bca550 2866 result = __LINE__;
Azure.IoT Build 0:6ae2f7bca550 2867 break;
Azure.IoT Build 0:6ae2f7bca550 2868 }
Azure.IoT Build 0:6ae2f7bca550 2869 }
Azure.IoT Build 0:6ae2f7bca550 2870
Azure.IoT Build 0:6ae2f7bca550 2871 amqpvalue_destroy(item_value);
Azure.IoT Build 0:6ae2f7bca550 2872 }
Azure.IoT Build 0:6ae2f7bca550 2873
Azure.IoT Build 0:6ae2f7bca550 2874 attach_instance->composite_value = amqpvalue_clone(value);
Azure.IoT Build 0:6ae2f7bca550 2875
Azure.IoT Build 0:6ae2f7bca550 2876 result = 0;
Azure.IoT Build 0:6ae2f7bca550 2877 } while (0);
Azure.IoT Build 0:6ae2f7bca550 2878 }
Azure.IoT Build 0:6ae2f7bca550 2879 }
Azure.IoT Build 0:6ae2f7bca550 2880
Azure.IoT Build 0:6ae2f7bca550 2881 return result;
Azure.IoT Build 0:6ae2f7bca550 2882 }
Azure.IoT Build 0:6ae2f7bca550 2883
Azure.IoT Build 0:6ae2f7bca550 2884 int attach_get_name(ATTACH_HANDLE attach, const char** name_value)
Azure.IoT Build 0:6ae2f7bca550 2885 {
Azure.IoT Build 0:6ae2f7bca550 2886 int result;
Azure.IoT Build 0:6ae2f7bca550 2887
Azure.IoT Build 0:6ae2f7bca550 2888 if (attach == NULL)
Azure.IoT Build 0:6ae2f7bca550 2889 {
Azure.IoT Build 0:6ae2f7bca550 2890 result = __LINE__;
Azure.IoT Build 0:6ae2f7bca550 2891 }
Azure.IoT Build 0:6ae2f7bca550 2892 else
Azure.IoT Build 0:6ae2f7bca550 2893 {
Azure.IoT Build 0:6ae2f7bca550 2894 ATTACH_INSTANCE* attach_instance = (ATTACH_INSTANCE*)attach;
Azure.IoT Build 0:6ae2f7bca550 2895 AMQP_VALUE item_value = amqpvalue_get_composite_item_in_place(attach_instance->composite_value, 0);
Azure.IoT Build 0:6ae2f7bca550 2896 if (item_value == NULL)
Azure.IoT Build 0:6ae2f7bca550 2897 {
Azure.IoT Build 0:6ae2f7bca550 2898 result = __LINE__;
Azure.IoT Build 0:6ae2f7bca550 2899 }
Azure.IoT Build 0:6ae2f7bca550 2900 else
Azure.IoT Build 0:6ae2f7bca550 2901 {
Azure.IoT Build 0:6ae2f7bca550 2902 if (amqpvalue_get_string(item_value, name_value) != 0)
Azure.IoT Build 0:6ae2f7bca550 2903 {
AzureIoTClient 16:22a72cf8e416 2904 result = __LINE__;
Azure.IoT Build 0:6ae2f7bca550 2905 }
Azure.IoT Build 0:6ae2f7bca550 2906 else
Azure.IoT Build 0:6ae2f7bca550 2907 {
Azure.IoT Build 0:6ae2f7bca550 2908 result = 0;
Azure.IoT Build 0:6ae2f7bca550 2909 }
Azure.IoT Build 0:6ae2f7bca550 2910 }
Azure.IoT Build 0:6ae2f7bca550 2911 }
Azure.IoT Build 0:6ae2f7bca550 2912
Azure.IoT Build 0:6ae2f7bca550 2913 return result;
Azure.IoT Build 0:6ae2f7bca550 2914 }
Azure.IoT Build 0:6ae2f7bca550 2915
Azure.IoT Build 0:6ae2f7bca550 2916 int attach_set_name(ATTACH_HANDLE attach, const char* name_value)
Azure.IoT Build 0:6ae2f7bca550 2917 {
Azure.IoT Build 0:6ae2f7bca550 2918 int result;
Azure.IoT Build 0:6ae2f7bca550 2919
Azure.IoT Build 0:6ae2f7bca550 2920 if (attach == NULL)
Azure.IoT Build 0:6ae2f7bca550 2921 {
Azure.IoT Build 0:6ae2f7bca550 2922 result = __LINE__;
Azure.IoT Build 0:6ae2f7bca550 2923 }
Azure.IoT Build 0:6ae2f7bca550 2924 else
Azure.IoT Build 0:6ae2f7bca550 2925 {
Azure.IoT Build 0:6ae2f7bca550 2926 ATTACH_INSTANCE* attach_instance = (ATTACH_INSTANCE*)attach;
Azure.IoT Build 0:6ae2f7bca550 2927 AMQP_VALUE name_amqp_value = amqpvalue_create_string(name_value);
Azure.IoT Build 0:6ae2f7bca550 2928 if (name_amqp_value == NULL)
Azure.IoT Build 0:6ae2f7bca550 2929 {
Azure.IoT Build 0:6ae2f7bca550 2930 result = __LINE__;
Azure.IoT Build 0:6ae2f7bca550 2931 }
Azure.IoT Build 0:6ae2f7bca550 2932 else
Azure.IoT Build 0:6ae2f7bca550 2933 {
Azure.IoT Build 0:6ae2f7bca550 2934 if (amqpvalue_set_composite_item(attach_instance->composite_value, 0, name_amqp_value) != 0)
Azure.IoT Build 0:6ae2f7bca550 2935 {
Azure.IoT Build 0:6ae2f7bca550 2936 result = __LINE__;
Azure.IoT Build 0:6ae2f7bca550 2937 }
Azure.IoT Build 0:6ae2f7bca550 2938 else
Azure.IoT Build 0:6ae2f7bca550 2939 {
Azure.IoT Build 0:6ae2f7bca550 2940 result = 0;
Azure.IoT Build 0:6ae2f7bca550 2941 }
Azure.IoT Build 0:6ae2f7bca550 2942
Azure.IoT Build 0:6ae2f7bca550 2943 amqpvalue_destroy(name_amqp_value);
Azure.IoT Build 0:6ae2f7bca550 2944 }
Azure.IoT Build 0:6ae2f7bca550 2945 }
Azure.IoT Build 0:6ae2f7bca550 2946
Azure.IoT Build 0:6ae2f7bca550 2947 return result;
Azure.IoT Build 0:6ae2f7bca550 2948 }
Azure.IoT Build 0:6ae2f7bca550 2949
Azure.IoT Build 0:6ae2f7bca550 2950 int attach_get_handle(ATTACH_HANDLE attach, handle* handle_value)
Azure.IoT Build 0:6ae2f7bca550 2951 {
Azure.IoT Build 0:6ae2f7bca550 2952 int result;
Azure.IoT Build 0:6ae2f7bca550 2953
Azure.IoT Build 0:6ae2f7bca550 2954 if (attach == NULL)
Azure.IoT Build 0:6ae2f7bca550 2955 {
Azure.IoT Build 0:6ae2f7bca550 2956 result = __LINE__;
Azure.IoT Build 0:6ae2f7bca550 2957 }
Azure.IoT Build 0:6ae2f7bca550 2958 else
Azure.IoT Build 0:6ae2f7bca550 2959 {
Azure.IoT Build 0:6ae2f7bca550 2960 ATTACH_INSTANCE* attach_instance = (ATTACH_INSTANCE*)attach;
Azure.IoT Build 0:6ae2f7bca550 2961 AMQP_VALUE item_value = amqpvalue_get_composite_item_in_place(attach_instance->composite_value, 1);
Azure.IoT Build 0:6ae2f7bca550 2962 if (item_value == NULL)
Azure.IoT Build 0:6ae2f7bca550 2963 {
Azure.IoT Build 0:6ae2f7bca550 2964 result = __LINE__;
Azure.IoT Build 0:6ae2f7bca550 2965 }
Azure.IoT Build 0:6ae2f7bca550 2966 else
Azure.IoT Build 0:6ae2f7bca550 2967 {
Azure.IoT Build 0:6ae2f7bca550 2968 if (amqpvalue_get_handle(item_value, handle_value) != 0)
Azure.IoT Build 0:6ae2f7bca550 2969 {
AzureIoTClient 16:22a72cf8e416 2970 result = __LINE__;
Azure.IoT Build 0:6ae2f7bca550 2971 }
Azure.IoT Build 0:6ae2f7bca550 2972 else
Azure.IoT Build 0:6ae2f7bca550 2973 {
Azure.IoT Build 0:6ae2f7bca550 2974 result = 0;
Azure.IoT Build 0:6ae2f7bca550 2975 }
Azure.IoT Build 0:6ae2f7bca550 2976 }
Azure.IoT Build 0:6ae2f7bca550 2977 }
Azure.IoT Build 0:6ae2f7bca550 2978
Azure.IoT Build 0:6ae2f7bca550 2979 return result;
Azure.IoT Build 0:6ae2f7bca550 2980 }
Azure.IoT Build 0:6ae2f7bca550 2981
Azure.IoT Build 0:6ae2f7bca550 2982 int attach_set_handle(ATTACH_HANDLE attach, handle handle_value)
Azure.IoT Build 0:6ae2f7bca550 2983 {
Azure.IoT Build 0:6ae2f7bca550 2984 int result;
Azure.IoT Build 0:6ae2f7bca550 2985
Azure.IoT Build 0:6ae2f7bca550 2986 if (attach == NULL)
Azure.IoT Build 0:6ae2f7bca550 2987 {
Azure.IoT Build 0:6ae2f7bca550 2988 result = __LINE__;
Azure.IoT Build 0:6ae2f7bca550 2989 }
Azure.IoT Build 0:6ae2f7bca550 2990 else
Azure.IoT Build 0:6ae2f7bca550 2991 {
Azure.IoT Build 0:6ae2f7bca550 2992 ATTACH_INSTANCE* attach_instance = (ATTACH_INSTANCE*)attach;
Azure.IoT Build 0:6ae2f7bca550 2993 AMQP_VALUE handle_amqp_value = amqpvalue_create_handle(handle_value);
Azure.IoT Build 0:6ae2f7bca550 2994 if (handle_amqp_value == NULL)
Azure.IoT Build 0:6ae2f7bca550 2995 {
Azure.IoT Build 0:6ae2f7bca550 2996 result = __LINE__;
Azure.IoT Build 0:6ae2f7bca550 2997 }
Azure.IoT Build 0:6ae2f7bca550 2998 else
Azure.IoT Build 0:6ae2f7bca550 2999 {
Azure.IoT Build 0:6ae2f7bca550 3000 if (amqpvalue_set_composite_item(attach_instance->composite_value, 1, handle_amqp_value) != 0)
Azure.IoT Build 0:6ae2f7bca550 3001 {
Azure.IoT Build 0:6ae2f7bca550 3002 result = __LINE__;
Azure.IoT Build 0:6ae2f7bca550 3003 }
Azure.IoT Build 0:6ae2f7bca550 3004 else
Azure.IoT Build 0:6ae2f7bca550 3005 {
Azure.IoT Build 0:6ae2f7bca550 3006 result = 0;
Azure.IoT Build 0:6ae2f7bca550 3007 }
Azure.IoT Build 0:6ae2f7bca550 3008
Azure.IoT Build 0:6ae2f7bca550 3009 amqpvalue_destroy(handle_amqp_value);
Azure.IoT Build 0:6ae2f7bca550 3010 }
Azure.IoT Build 0:6ae2f7bca550 3011 }
Azure.IoT Build 0:6ae2f7bca550 3012
Azure.IoT Build 0:6ae2f7bca550 3013 return result;
Azure.IoT Build 0:6ae2f7bca550 3014 }
Azure.IoT Build 0:6ae2f7bca550 3015
Azure.IoT Build 0:6ae2f7bca550 3016 int attach_get_role(ATTACH_HANDLE attach, role* role_value)
Azure.IoT Build 0:6ae2f7bca550 3017 {
Azure.IoT Build 0:6ae2f7bca550 3018 int result;
Azure.IoT Build 0:6ae2f7bca550 3019
Azure.IoT Build 0:6ae2f7bca550 3020 if (attach == NULL)
Azure.IoT Build 0:6ae2f7bca550 3021 {
Azure.IoT Build 0:6ae2f7bca550 3022 result = __LINE__;
Azure.IoT Build 0:6ae2f7bca550 3023 }
Azure.IoT Build 0:6ae2f7bca550 3024 else
Azure.IoT Build 0:6ae2f7bca550 3025 {
Azure.IoT Build 0:6ae2f7bca550 3026 ATTACH_INSTANCE* attach_instance = (ATTACH_INSTANCE*)attach;
Azure.IoT Build 0:6ae2f7bca550 3027 AMQP_VALUE item_value = amqpvalue_get_composite_item_in_place(attach_instance->composite_value, 2);
Azure.IoT Build 0:6ae2f7bca550 3028 if (item_value == NULL)
Azure.IoT Build 0:6ae2f7bca550 3029 {
Azure.IoT Build 0:6ae2f7bca550 3030 result = __LINE__;
Azure.IoT Build 0:6ae2f7bca550 3031 }
Azure.IoT Build 0:6ae2f7bca550 3032 else
Azure.IoT Build 0:6ae2f7bca550 3033 {
Azure.IoT Build 0:6ae2f7bca550 3034 if (amqpvalue_get_role(item_value, role_value) != 0)
Azure.IoT Build 0:6ae2f7bca550 3035 {
AzureIoTClient 16:22a72cf8e416 3036 result = __LINE__;
Azure.IoT Build 0:6ae2f7bca550 3037 }
Azure.IoT Build 0:6ae2f7bca550 3038 else
Azure.IoT Build 0:6ae2f7bca550 3039 {
Azure.IoT Build 0:6ae2f7bca550 3040 result = 0;
Azure.IoT Build 0:6ae2f7bca550 3041 }
Azure.IoT Build 0:6ae2f7bca550 3042 }
Azure.IoT Build 0:6ae2f7bca550 3043 }
Azure.IoT Build 0:6ae2f7bca550 3044
Azure.IoT Build 0:6ae2f7bca550 3045 return result;
Azure.IoT Build 0:6ae2f7bca550 3046 }
Azure.IoT Build 0:6ae2f7bca550 3047
Azure.IoT Build 0:6ae2f7bca550 3048 int attach_set_role(ATTACH_HANDLE attach, role role_value)
Azure.IoT Build 0:6ae2f7bca550 3049 {
Azure.IoT Build 0:6ae2f7bca550 3050 int result;
Azure.IoT Build 0:6ae2f7bca550 3051
Azure.IoT Build 0:6ae2f7bca550 3052 if (attach == NULL)
Azure.IoT Build 0:6ae2f7bca550 3053 {
Azure.IoT Build 0:6ae2f7bca550 3054 result = __LINE__;
Azure.IoT Build 0:6ae2f7bca550 3055 }
Azure.IoT Build 0:6ae2f7bca550 3056 else
Azure.IoT Build 0:6ae2f7bca550 3057 {
Azure.IoT Build 0:6ae2f7bca550 3058 ATTACH_INSTANCE* attach_instance = (ATTACH_INSTANCE*)attach;
Azure.IoT Build 0:6ae2f7bca550 3059 AMQP_VALUE role_amqp_value = amqpvalue_create_role(role_value);
Azure.IoT Build 0:6ae2f7bca550 3060 if (role_amqp_value == NULL)
Azure.IoT Build 0:6ae2f7bca550 3061 {
Azure.IoT Build 0:6ae2f7bca550 3062 result = __LINE__;
Azure.IoT Build 0:6ae2f7bca550 3063 }
Azure.IoT Build 0:6ae2f7bca550 3064 else
Azure.IoT Build 0:6ae2f7bca550 3065 {
Azure.IoT Build 0:6ae2f7bca550 3066 if (amqpvalue_set_composite_item(attach_instance->composite_value, 2, role_amqp_value) != 0)
Azure.IoT Build 0:6ae2f7bca550 3067 {
Azure.IoT Build 0:6ae2f7bca550 3068 result = __LINE__;
Azure.IoT Build 0:6ae2f7bca550 3069 }
Azure.IoT Build 0:6ae2f7bca550 3070 else
Azure.IoT Build 0:6ae2f7bca550 3071 {
Azure.IoT Build 0:6ae2f7bca550 3072 result = 0;
Azure.IoT Build 0:6ae2f7bca550 3073 }
Azure.IoT Build 0:6ae2f7bca550 3074
Azure.IoT Build 0:6ae2f7bca550 3075 amqpvalue_destroy(role_amqp_value);
Azure.IoT Build 0:6ae2f7bca550 3076 }
Azure.IoT Build 0:6ae2f7bca550 3077 }
Azure.IoT Build 0:6ae2f7bca550 3078
Azure.IoT Build 0:6ae2f7bca550 3079 return result;
Azure.IoT Build 0:6ae2f7bca550 3080 }
Azure.IoT Build 0:6ae2f7bca550 3081
Azure.IoT Build 0:6ae2f7bca550 3082 int attach_get_snd_settle_mode(ATTACH_HANDLE attach, sender_settle_mode* snd_settle_mode_value)
Azure.IoT Build 0:6ae2f7bca550 3083 {
Azure.IoT Build 0:6ae2f7bca550 3084 int result;
Azure.IoT Build 0:6ae2f7bca550 3085
Azure.IoT Build 0:6ae2f7bca550 3086 if (attach == NULL)
Azure.IoT Build 0:6ae2f7bca550 3087 {
Azure.IoT Build 0:6ae2f7bca550 3088 result = __LINE__;
Azure.IoT Build 0:6ae2f7bca550 3089 }
Azure.IoT Build 0:6ae2f7bca550 3090 else
Azure.IoT Build 0:6ae2f7bca550 3091 {
Azure.IoT Build 0:6ae2f7bca550 3092 ATTACH_INSTANCE* attach_instance = (ATTACH_INSTANCE*)attach;
Azure.IoT Build 0:6ae2f7bca550 3093 AMQP_VALUE item_value = amqpvalue_get_composite_item_in_place(attach_instance->composite_value, 3);
Azure.IoT Build 0:6ae2f7bca550 3094 if (item_value == NULL)
Azure.IoT Build 0:6ae2f7bca550 3095 {
AzureIoTClient 16:22a72cf8e416 3096 *snd_settle_mode_value = sender_settle_mode_mixed;
AzureIoTClient 16:22a72cf8e416 3097 result = 0;
Azure.IoT Build 0:6ae2f7bca550 3098 }
Azure.IoT Build 0:6ae2f7bca550 3099 else
Azure.IoT Build 0:6ae2f7bca550 3100 {
Azure.IoT Build 0:6ae2f7bca550 3101 if (amqpvalue_get_sender_settle_mode(item_value, snd_settle_mode_value) != 0)
Azure.IoT Build 0:6ae2f7bca550 3102 {
AzureIoTClient 16:22a72cf8e416 3103 if (amqpvalue_get_type(item_value) == AMQP_TYPE_NULL)
AzureIoTClient 16:22a72cf8e416 3104 {
AzureIoTClient 16:22a72cf8e416 3105 result = __LINE__;
AzureIoTClient 16:22a72cf8e416 3106 }
AzureIoTClient 16:22a72cf8e416 3107 else
AzureIoTClient 16:22a72cf8e416 3108 {
AzureIoTClient 16:22a72cf8e416 3109 *snd_settle_mode_value = sender_settle_mode_mixed;
AzureIoTClient 16:22a72cf8e416 3110 result = 0;
AzureIoTClient 16:22a72cf8e416 3111 }
Azure.IoT Build 0:6ae2f7bca550 3112 }
Azure.IoT Build 0:6ae2f7bca550 3113 else
Azure.IoT Build 0:6ae2f7bca550 3114 {
Azure.IoT Build 0:6ae2f7bca550 3115 result = 0;
Azure.IoT Build 0:6ae2f7bca550 3116 }
Azure.IoT Build 0:6ae2f7bca550 3117 }
Azure.IoT Build 0:6ae2f7bca550 3118 }
Azure.IoT Build 0:6ae2f7bca550 3119
Azure.IoT Build 0:6ae2f7bca550 3120 return result;
Azure.IoT Build 0:6ae2f7bca550 3121 }
Azure.IoT Build 0:6ae2f7bca550 3122
Azure.IoT Build 0:6ae2f7bca550 3123 int attach_set_snd_settle_mode(ATTACH_HANDLE attach, sender_settle_mode snd_settle_mode_value)
Azure.IoT Build 0:6ae2f7bca550 3124 {
Azure.IoT Build 0:6ae2f7bca550 3125 int result;
Azure.IoT Build 0:6ae2f7bca550 3126
Azure.IoT Build 0:6ae2f7bca550 3127 if (attach == NULL)
Azure.IoT Build 0:6ae2f7bca550 3128 {
Azure.IoT Build 0:6ae2f7bca550 3129 result = __LINE__;
Azure.IoT Build 0:6ae2f7bca550 3130 }
Azure.IoT Build 0:6ae2f7bca550 3131 else
Azure.IoT Build 0:6ae2f7bca550 3132 {
Azure.IoT Build 0:6ae2f7bca550 3133 ATTACH_INSTANCE* attach_instance = (ATTACH_INSTANCE*)attach;
Azure.IoT Build 0:6ae2f7bca550 3134 AMQP_VALUE snd_settle_mode_amqp_value = amqpvalue_create_sender_settle_mode(snd_settle_mode_value);
Azure.IoT Build 0:6ae2f7bca550 3135 if (snd_settle_mode_amqp_value == NULL)
Azure.IoT Build 0:6ae2f7bca550 3136 {
Azure.IoT Build 0:6ae2f7bca550 3137 result = __LINE__;
Azure.IoT Build 0:6ae2f7bca550 3138 }
Azure.IoT Build 0:6ae2f7bca550 3139 else
Azure.IoT Build 0:6ae2f7bca550 3140 {
Azure.IoT Build 0:6ae2f7bca550 3141 if (amqpvalue_set_composite_item(attach_instance->composite_value, 3, snd_settle_mode_amqp_value) != 0)
Azure.IoT Build 0:6ae2f7bca550 3142 {
Azure.IoT Build 0:6ae2f7bca550 3143 result = __LINE__;
Azure.IoT Build 0:6ae2f7bca550 3144 }
Azure.IoT Build 0:6ae2f7bca550 3145 else
Azure.IoT Build 0:6ae2f7bca550 3146 {
Azure.IoT Build 0:6ae2f7bca550 3147 result = 0;
Azure.IoT Build 0:6ae2f7bca550 3148 }
Azure.IoT Build 0:6ae2f7bca550 3149
Azure.IoT Build 0:6ae2f7bca550 3150 amqpvalue_destroy(snd_settle_mode_amqp_value);
Azure.IoT Build 0:6ae2f7bca550 3151 }
Azure.IoT Build 0:6ae2f7bca550 3152 }
Azure.IoT Build 0:6ae2f7bca550 3153
Azure.IoT Build 0:6ae2f7bca550 3154 return result;
Azure.IoT Build 0:6ae2f7bca550 3155 }
Azure.IoT Build 0:6ae2f7bca550 3156
Azure.IoT Build 0:6ae2f7bca550 3157 int attach_get_rcv_settle_mode(ATTACH_HANDLE attach, receiver_settle_mode* rcv_settle_mode_value)
Azure.IoT Build 0:6ae2f7bca550 3158 {
Azure.IoT Build 0:6ae2f7bca550 3159 int result;
Azure.IoT Build 0:6ae2f7bca550 3160
Azure.IoT Build 0:6ae2f7bca550 3161 if (attach == NULL)
Azure.IoT Build 0:6ae2f7bca550 3162 {
Azure.IoT Build 0:6ae2f7bca550 3163 result = __LINE__;
Azure.IoT Build 0:6ae2f7bca550 3164 }
Azure.IoT Build 0:6ae2f7bca550 3165 else
Azure.IoT Build 0:6ae2f7bca550 3166 {
Azure.IoT Build 0:6ae2f7bca550 3167 ATTACH_INSTANCE* attach_instance = (ATTACH_INSTANCE*)attach;
Azure.IoT Build 0:6ae2f7bca550 3168 AMQP_VALUE item_value = amqpvalue_get_composite_item_in_place(attach_instance->composite_value, 4);
Azure.IoT Build 0:6ae2f7bca550 3169 if (item_value == NULL)
Azure.IoT Build 0:6ae2f7bca550 3170 {
AzureIoTClient 16:22a72cf8e416 3171 *rcv_settle_mode_value = receiver_settle_mode_first;
AzureIoTClient 16:22a72cf8e416 3172 result = 0;
Azure.IoT Build 0:6ae2f7bca550 3173 }
Azure.IoT Build 0:6ae2f7bca550 3174 else
Azure.IoT Build 0:6ae2f7bca550 3175 {
Azure.IoT Build 0:6ae2f7bca550 3176 if (amqpvalue_get_receiver_settle_mode(item_value, rcv_settle_mode_value) != 0)
Azure.IoT Build 0:6ae2f7bca550 3177 {
AzureIoTClient 16:22a72cf8e416 3178 if (amqpvalue_get_type(item_value) == AMQP_TYPE_NULL)
AzureIoTClient 16:22a72cf8e416 3179 {
AzureIoTClient 16:22a72cf8e416 3180 result = __LINE__;
AzureIoTClient 16:22a72cf8e416 3181 }
AzureIoTClient 16:22a72cf8e416 3182 else
AzureIoTClient 16:22a72cf8e416 3183 {
AzureIoTClient 16:22a72cf8e416 3184 *rcv_settle_mode_value = receiver_settle_mode_first;
AzureIoTClient 16:22a72cf8e416 3185 result = 0;
AzureIoTClient 16:22a72cf8e416 3186 }
Azure.IoT Build 0:6ae2f7bca550 3187 }
Azure.IoT Build 0:6ae2f7bca550 3188 else
Azure.IoT Build 0:6ae2f7bca550 3189 {
Azure.IoT Build 0:6ae2f7bca550 3190 result = 0;
Azure.IoT Build 0:6ae2f7bca550 3191 }
Azure.IoT Build 0:6ae2f7bca550 3192 }
Azure.IoT Build 0:6ae2f7bca550 3193 }
Azure.IoT Build 0:6ae2f7bca550 3194
Azure.IoT Build 0:6ae2f7bca550 3195 return result;
Azure.IoT Build 0:6ae2f7bca550 3196 }
Azure.IoT Build 0:6ae2f7bca550 3197
Azure.IoT Build 0:6ae2f7bca550 3198 int attach_set_rcv_settle_mode(ATTACH_HANDLE attach, receiver_settle_mode rcv_settle_mode_value)
Azure.IoT Build 0:6ae2f7bca550 3199 {
Azure.IoT Build 0:6ae2f7bca550 3200 int result;
Azure.IoT Build 0:6ae2f7bca550 3201
Azure.IoT Build 0:6ae2f7bca550 3202 if (attach == NULL)
Azure.IoT Build 0:6ae2f7bca550 3203 {
Azure.IoT Build 0:6ae2f7bca550 3204 result = __LINE__;
Azure.IoT Build 0:6ae2f7bca550 3205 }
Azure.IoT Build 0:6ae2f7bca550 3206 else
Azure.IoT Build 0:6ae2f7bca550 3207 {
Azure.IoT Build 0:6ae2f7bca550 3208 ATTACH_INSTANCE* attach_instance = (ATTACH_INSTANCE*)attach;
Azure.IoT Build 0:6ae2f7bca550 3209 AMQP_VALUE rcv_settle_mode_amqp_value = amqpvalue_create_receiver_settle_mode(rcv_settle_mode_value);
Azure.IoT Build 0:6ae2f7bca550 3210 if (rcv_settle_mode_amqp_value == NULL)
Azure.IoT Build 0:6ae2f7bca550 3211 {
Azure.IoT Build 0:6ae2f7bca550 3212 result = __LINE__;
Azure.IoT Build 0:6ae2f7bca550 3213 }
Azure.IoT Build 0:6ae2f7bca550 3214 else
Azure.IoT Build 0:6ae2f7bca550 3215 {
Azure.IoT Build 0:6ae2f7bca550 3216 if (amqpvalue_set_composite_item(attach_instance->composite_value, 4, rcv_settle_mode_amqp_value) != 0)
Azure.IoT Build 0:6ae2f7bca550 3217 {
Azure.IoT Build 0:6ae2f7bca550 3218 result = __LINE__;
Azure.IoT Build 0:6ae2f7bca550 3219 }
Azure.IoT Build 0:6ae2f7bca550 3220 else
Azure.IoT Build 0:6ae2f7bca550 3221 {
Azure.IoT Build 0:6ae2f7bca550 3222 result = 0;
Azure.IoT Build 0:6ae2f7bca550 3223 }
Azure.IoT Build 0:6ae2f7bca550 3224
Azure.IoT Build 0:6ae2f7bca550 3225 amqpvalue_destroy(rcv_settle_mode_amqp_value);
Azure.IoT Build 0:6ae2f7bca550 3226 }
Azure.IoT Build 0:6ae2f7bca550 3227 }
Azure.IoT Build 0:6ae2f7bca550 3228
Azure.IoT Build 0:6ae2f7bca550 3229 return result;
Azure.IoT Build 0:6ae2f7bca550 3230 }
Azure.IoT Build 0:6ae2f7bca550 3231
Azure.IoT Build 0:6ae2f7bca550 3232 int attach_get_source(ATTACH_HANDLE attach, AMQP_VALUE* source_value)
Azure.IoT Build 0:6ae2f7bca550 3233 {
Azure.IoT Build 0:6ae2f7bca550 3234 int result;
Azure.IoT Build 0:6ae2f7bca550 3235
Azure.IoT Build 0:6ae2f7bca550 3236 if (attach == NULL)
Azure.IoT Build 0:6ae2f7bca550 3237 {
Azure.IoT Build 0:6ae2f7bca550 3238 result = __LINE__;
Azure.IoT Build 0:6ae2f7bca550 3239 }
Azure.IoT Build 0:6ae2f7bca550 3240 else
Azure.IoT Build 0:6ae2f7bca550 3241 {
Azure.IoT Build 0:6ae2f7bca550 3242 ATTACH_INSTANCE* attach_instance = (ATTACH_INSTANCE*)attach;
Azure.IoT Build 0:6ae2f7bca550 3243 AMQP_VALUE item_value = amqpvalue_get_composite_item_in_place(attach_instance->composite_value, 5);
Azure.IoT Build 0:6ae2f7bca550 3244 if (item_value == NULL)
Azure.IoT Build 0:6ae2f7bca550 3245 {
Azure.IoT Build 0:6ae2f7bca550 3246 result = __LINE__;
Azure.IoT Build 0:6ae2f7bca550 3247 }
Azure.IoT Build 0:6ae2f7bca550 3248 else
Azure.IoT Build 0:6ae2f7bca550 3249 {
Azure.IoT Build 0:6ae2f7bca550 3250 *source_value = item_value;
Azure.IoT Build 0:6ae2f7bca550 3251 result = 0;
Azure.IoT Build 0:6ae2f7bca550 3252 }
Azure.IoT Build 0:6ae2f7bca550 3253 }
Azure.IoT Build 0:6ae2f7bca550 3254
Azure.IoT Build 0:6ae2f7bca550 3255 return result;
Azure.IoT Build 0:6ae2f7bca550 3256 }
Azure.IoT Build 0:6ae2f7bca550 3257
Azure.IoT Build 0:6ae2f7bca550 3258 int attach_set_source(ATTACH_HANDLE attach, AMQP_VALUE source_value)
Azure.IoT Build 0:6ae2f7bca550 3259 {
Azure.IoT Build 0:6ae2f7bca550 3260 int result;
Azure.IoT Build 0:6ae2f7bca550 3261
Azure.IoT Build 0:6ae2f7bca550 3262 if (attach == NULL)
Azure.IoT Build 0:6ae2f7bca550 3263 {
Azure.IoT Build 0:6ae2f7bca550 3264 result = __LINE__;
Azure.IoT Build 0:6ae2f7bca550 3265 }
Azure.IoT Build 0:6ae2f7bca550 3266 else
Azure.IoT Build 0:6ae2f7bca550 3267 {
Azure.IoT Build 0:6ae2f7bca550 3268 ATTACH_INSTANCE* attach_instance = (ATTACH_INSTANCE*)attach;
Azure.IoT Build 0:6ae2f7bca550 3269 AMQP_VALUE source_amqp_value = amqpvalue_clone(source_value);
Azure.IoT Build 0:6ae2f7bca550 3270 if (source_amqp_value == NULL)
Azure.IoT Build 0:6ae2f7bca550 3271 {
Azure.IoT Build 0:6ae2f7bca550 3272 result = __LINE__;
Azure.IoT Build 0:6ae2f7bca550 3273 }
Azure.IoT Build 0:6ae2f7bca550 3274 else
Azure.IoT Build 0:6ae2f7bca550 3275 {
Azure.IoT Build 0:6ae2f7bca550 3276 if (amqpvalue_set_composite_item(attach_instance->composite_value, 5, source_amqp_value) != 0)
Azure.IoT Build 0:6ae2f7bca550 3277 {
Azure.IoT Build 0:6ae2f7bca550 3278 result = __LINE__;
Azure.IoT Build 0:6ae2f7bca550 3279 }
Azure.IoT Build 0:6ae2f7bca550 3280 else
Azure.IoT Build 0:6ae2f7bca550 3281 {
Azure.IoT Build 0:6ae2f7bca550 3282 result = 0;
Azure.IoT Build 0:6ae2f7bca550 3283 }
Azure.IoT Build 0:6ae2f7bca550 3284
Azure.IoT Build 0:6ae2f7bca550 3285 amqpvalue_destroy(source_amqp_value);
Azure.IoT Build 0:6ae2f7bca550 3286 }
Azure.IoT Build 0:6ae2f7bca550 3287 }
Azure.IoT Build 0:6ae2f7bca550 3288
Azure.IoT Build 0:6ae2f7bca550 3289 return result;
Azure.IoT Build 0:6ae2f7bca550 3290 }
Azure.IoT Build 0:6ae2f7bca550 3291
Azure.IoT Build 0:6ae2f7bca550 3292 int attach_get_target(ATTACH_HANDLE attach, AMQP_VALUE* target_value)
Azure.IoT Build 0:6ae2f7bca550 3293 {
Azure.IoT Build 0:6ae2f7bca550 3294 int result;
Azure.IoT Build 0:6ae2f7bca550 3295
Azure.IoT Build 0:6ae2f7bca550 3296 if (attach == NULL)
Azure.IoT Build 0:6ae2f7bca550 3297 {
Azure.IoT Build 0:6ae2f7bca550 3298 result = __LINE__;
Azure.IoT Build 0:6ae2f7bca550 3299 }
Azure.IoT Build 0:6ae2f7bca550 3300 else
Azure.IoT Build 0:6ae2f7bca550 3301 {
Azure.IoT Build 0:6ae2f7bca550 3302 ATTACH_INSTANCE* attach_instance = (ATTACH_INSTANCE*)attach;
Azure.IoT Build 0:6ae2f7bca550 3303 AMQP_VALUE item_value = amqpvalue_get_composite_item_in_place(attach_instance->composite_value, 6);
Azure.IoT Build 0:6ae2f7bca550 3304 if (item_value == NULL)
Azure.IoT Build 0:6ae2f7bca550 3305 {
Azure.IoT Build 0:6ae2f7bca550 3306 result = __LINE__;
Azure.IoT Build 0:6ae2f7bca550 3307 }
Azure.IoT Build 0:6ae2f7bca550 3308 else
Azure.IoT Build 0:6ae2f7bca550 3309 {
Azure.IoT Build 0:6ae2f7bca550 3310 *target_value = item_value;
Azure.IoT Build 0:6ae2f7bca550 3311 result = 0;
Azure.IoT Build 0:6ae2f7bca550 3312 }
Azure.IoT Build 0:6ae2f7bca550 3313 }
Azure.IoT Build 0:6ae2f7bca550 3314
Azure.IoT Build 0:6ae2f7bca550 3315 return result;
Azure.IoT Build 0:6ae2f7bca550 3316 }
Azure.IoT Build 0:6ae2f7bca550 3317
Azure.IoT Build 0:6ae2f7bca550 3318 int attach_set_target(ATTACH_HANDLE attach, AMQP_VALUE target_value)
Azure.IoT Build 0:6ae2f7bca550 3319 {
Azure.IoT Build 0:6ae2f7bca550 3320 int result;
Azure.IoT Build 0:6ae2f7bca550 3321
Azure.IoT Build 0:6ae2f7bca550 3322 if (attach == NULL)
Azure.IoT Build 0:6ae2f7bca550 3323 {
Azure.IoT Build 0:6ae2f7bca550 3324 result = __LINE__;
Azure.IoT Build 0:6ae2f7bca550 3325 }
Azure.IoT Build 0:6ae2f7bca550 3326 else
Azure.IoT Build 0:6ae2f7bca550 3327 {
Azure.IoT Build 0:6ae2f7bca550 3328 ATTACH_INSTANCE* attach_instance = (ATTACH_INSTANCE*)attach;
Azure.IoT Build 0:6ae2f7bca550 3329 AMQP_VALUE target_amqp_value = amqpvalue_clone(target_value);
Azure.IoT Build 0:6ae2f7bca550 3330 if (target_amqp_value == NULL)
Azure.IoT Build 0:6ae2f7bca550 3331 {
Azure.IoT Build 0:6ae2f7bca550 3332 result = __LINE__;
Azure.IoT Build 0:6ae2f7bca550 3333 }
Azure.IoT Build 0:6ae2f7bca550 3334 else
Azure.IoT Build 0:6ae2f7bca550 3335 {
Azure.IoT Build 0:6ae2f7bca550 3336 if (amqpvalue_set_composite_item(attach_instance->composite_value, 6, target_amqp_value) != 0)
Azure.IoT Build 0:6ae2f7bca550 3337 {
Azure.IoT Build 0:6ae2f7bca550 3338 result = __LINE__;
Azure.IoT Build 0:6ae2f7bca550 3339 }
Azure.IoT Build 0:6ae2f7bca550 3340 else
Azure.IoT Build 0:6ae2f7bca550 3341 {
Azure.IoT Build 0:6ae2f7bca550 3342 result = 0;
Azure.IoT Build 0:6ae2f7bca550 3343 }
Azure.IoT Build 0:6ae2f7bca550 3344
Azure.IoT Build 0:6ae2f7bca550 3345 amqpvalue_destroy(target_amqp_value);
Azure.IoT Build 0:6ae2f7bca550 3346 }
Azure.IoT Build 0:6ae2f7bca550 3347 }
Azure.IoT Build 0:6ae2f7bca550 3348
Azure.IoT Build 0:6ae2f7bca550 3349 return result;
Azure.IoT Build 0:6ae2f7bca550 3350 }
Azure.IoT Build 0:6ae2f7bca550 3351
Azure.IoT Build 0:6ae2f7bca550 3352 int attach_get_unsettled(ATTACH_HANDLE attach, AMQP_VALUE* unsettled_value)
Azure.IoT Build 0:6ae2f7bca550 3353 {
Azure.IoT Build 0:6ae2f7bca550 3354 int result;
Azure.IoT Build 0:6ae2f7bca550 3355
Azure.IoT Build 0:6ae2f7bca550 3356 if (attach == NULL)
Azure.IoT Build 0:6ae2f7bca550 3357 {
Azure.IoT Build 0:6ae2f7bca550 3358 result = __LINE__;
Azure.IoT Build 0:6ae2f7bca550 3359 }
Azure.IoT Build 0:6ae2f7bca550 3360 else
Azure.IoT Build 0:6ae2f7bca550 3361 {
Azure.IoT Build 0:6ae2f7bca550 3362 ATTACH_INSTANCE* attach_instance = (ATTACH_INSTANCE*)attach;
Azure.IoT Build 0:6ae2f7bca550 3363 AMQP_VALUE item_value = amqpvalue_get_composite_item_in_place(attach_instance->composite_value, 7);
Azure.IoT Build 0:6ae2f7bca550 3364 if (item_value == NULL)
Azure.IoT Build 0:6ae2f7bca550 3365 {
Azure.IoT Build 0:6ae2f7bca550 3366 result = __LINE__;
Azure.IoT Build 0:6ae2f7bca550 3367 }
Azure.IoT Build 0:6ae2f7bca550 3368 else
Azure.IoT Build 0:6ae2f7bca550 3369 {
Azure.IoT Build 0:6ae2f7bca550 3370 if (amqpvalue_get_map(item_value, unsettled_value) != 0)
Azure.IoT Build 0:6ae2f7bca550 3371 {
AzureIoTClient 16:22a72cf8e416 3372 result = __LINE__;
Azure.IoT Build 0:6ae2f7bca550 3373 }
Azure.IoT Build 0:6ae2f7bca550 3374 else
Azure.IoT Build 0:6ae2f7bca550 3375 {
Azure.IoT Build 0:6ae2f7bca550 3376 result = 0;
Azure.IoT Build 0:6ae2f7bca550 3377 }
Azure.IoT Build 0:6ae2f7bca550 3378 }
Azure.IoT Build 0:6ae2f7bca550 3379 }
Azure.IoT Build 0:6ae2f7bca550 3380
Azure.IoT Build 0:6ae2f7bca550 3381 return result;
Azure.IoT Build 0:6ae2f7bca550 3382 }
Azure.IoT Build 0:6ae2f7bca550 3383
Azure.IoT Build 0:6ae2f7bca550 3384 int attach_set_unsettled(ATTACH_HANDLE attach, AMQP_VALUE unsettled_value)
Azure.IoT Build 0:6ae2f7bca550 3385 {
Azure.IoT Build 0:6ae2f7bca550 3386 int result;
Azure.IoT Build 0:6ae2f7bca550 3387
Azure.IoT Build 0:6ae2f7bca550 3388 if (attach == NULL)
Azure.IoT Build 0:6ae2f7bca550 3389 {
Azure.IoT Build 0:6ae2f7bca550 3390 result = __LINE__;
Azure.IoT Build 0:6ae2f7bca550 3391 }
Azure.IoT Build 0:6ae2f7bca550 3392 else
Azure.IoT Build 0:6ae2f7bca550 3393 {
Azure.IoT Build 0:6ae2f7bca550 3394 ATTACH_INSTANCE* attach_instance = (ATTACH_INSTANCE*)attach;
Azure.IoT Build 0:6ae2f7bca550 3395 AMQP_VALUE unsettled_amqp_value = amqpvalue_clone(unsettled_value);
Azure.IoT Build 0:6ae2f7bca550 3396 if (unsettled_amqp_value == NULL)
Azure.IoT Build 0:6ae2f7bca550 3397 {
Azure.IoT Build 0:6ae2f7bca550 3398 result = __LINE__;
Azure.IoT Build 0:6ae2f7bca550 3399 }
Azure.IoT Build 0:6ae2f7bca550 3400 else
Azure.IoT Build 0:6ae2f7bca550 3401 {
Azure.IoT Build 0:6ae2f7bca550 3402 if (amqpvalue_set_composite_item(attach_instance->composite_value, 7, unsettled_amqp_value) != 0)
Azure.IoT Build 0:6ae2f7bca550 3403 {
Azure.IoT Build 0:6ae2f7bca550 3404 result = __LINE__;
Azure.IoT Build 0:6ae2f7bca550 3405 }
Azure.IoT Build 0:6ae2f7bca550 3406 else
Azure.IoT Build 0:6ae2f7bca550 3407 {
Azure.IoT Build 0:6ae2f7bca550 3408 result = 0;
Azure.IoT Build 0:6ae2f7bca550 3409 }
Azure.IoT Build 0:6ae2f7bca550 3410
Azure.IoT Build 0:6ae2f7bca550 3411 amqpvalue_destroy(unsettled_amqp_value);
Azure.IoT Build 0:6ae2f7bca550 3412 }
Azure.IoT Build 0:6ae2f7bca550 3413 }
Azure.IoT Build 0:6ae2f7bca550 3414
Azure.IoT Build 0:6ae2f7bca550 3415 return result;
Azure.IoT Build 0:6ae2f7bca550 3416 }
Azure.IoT Build 0:6ae2f7bca550 3417
Azure.IoT Build 0:6ae2f7bca550 3418 int attach_get_incomplete_unsettled(ATTACH_HANDLE attach, bool* incomplete_unsettled_value)
Azure.IoT Build 0:6ae2f7bca550 3419 {
Azure.IoT Build 0:6ae2f7bca550 3420 int result;
Azure.IoT Build 0:6ae2f7bca550 3421
Azure.IoT Build 0:6ae2f7bca550 3422 if (attach == NULL)
Azure.IoT Build 0:6ae2f7bca550 3423 {
Azure.IoT Build 0:6ae2f7bca550 3424 result = __LINE__;
Azure.IoT Build 0:6ae2f7bca550 3425 }
Azure.IoT Build 0:6ae2f7bca550 3426 else
Azure.IoT Build 0:6ae2f7bca550 3427 {
Azure.IoT Build 0:6ae2f7bca550 3428 ATTACH_INSTANCE* attach_instance = (ATTACH_INSTANCE*)attach;
Azure.IoT Build 0:6ae2f7bca550 3429 AMQP_VALUE item_value = amqpvalue_get_composite_item_in_place(attach_instance->composite_value, 8);
Azure.IoT Build 0:6ae2f7bca550 3430 if (item_value == NULL)
Azure.IoT Build 0:6ae2f7bca550 3431 {
AzureIoTClient 16:22a72cf8e416 3432 *incomplete_unsettled_value = false;
AzureIoTClient 16:22a72cf8e416 3433 result = 0;
Azure.IoT Build 0:6ae2f7bca550 3434 }
Azure.IoT Build 0:6ae2f7bca550 3435 else
Azure.IoT Build 0:6ae2f7bca550 3436 {
Azure.IoT Build 0:6ae2f7bca550 3437 if (amqpvalue_get_boolean(item_value, incomplete_unsettled_value) != 0)
Azure.IoT Build 0:6ae2f7bca550 3438 {
AzureIoTClient 16:22a72cf8e416 3439 if (amqpvalue_get_type(item_value) == AMQP_TYPE_NULL)
AzureIoTClient 16:22a72cf8e416 3440 {
AzureIoTClient 16:22a72cf8e416 3441 result = __LINE__;
AzureIoTClient 16:22a72cf8e416 3442 }
AzureIoTClient 16:22a72cf8e416 3443 else
AzureIoTClient 16:22a72cf8e416 3444 {
AzureIoTClient 16:22a72cf8e416 3445 *incomplete_unsettled_value = false;
AzureIoTClient 16:22a72cf8e416 3446 result = 0;
AzureIoTClient 16:22a72cf8e416 3447 }
Azure.IoT Build 0:6ae2f7bca550 3448 }
Azure.IoT Build 0:6ae2f7bca550 3449 else
Azure.IoT Build 0:6ae2f7bca550 3450 {
Azure.IoT Build 0:6ae2f7bca550 3451 result = 0;
Azure.IoT Build 0:6ae2f7bca550 3452 }
Azure.IoT Build 0:6ae2f7bca550 3453 }
Azure.IoT Build 0:6ae2f7bca550 3454 }
Azure.IoT Build 0:6ae2f7bca550 3455
Azure.IoT Build 0:6ae2f7bca550 3456 return result;
Azure.IoT Build 0:6ae2f7bca550 3457 }
Azure.IoT Build 0:6ae2f7bca550 3458
Azure.IoT Build 0:6ae2f7bca550 3459 int attach_set_incomplete_unsettled(ATTACH_HANDLE attach, bool incomplete_unsettled_value)
Azure.IoT Build 0:6ae2f7bca550 3460 {
Azure.IoT Build 0:6ae2f7bca550 3461 int result;
Azure.IoT Build 0:6ae2f7bca550 3462
Azure.IoT Build 0:6ae2f7bca550 3463 if (attach == NULL)
Azure.IoT Build 0:6ae2f7bca550 3464 {
Azure.IoT Build 0:6ae2f7bca550 3465 result = __LINE__;
Azure.IoT Build 0:6ae2f7bca550 3466 }
Azure.IoT Build 0:6ae2f7bca550 3467 else
Azure.IoT Build 0:6ae2f7bca550 3468 {
Azure.IoT Build 0:6ae2f7bca550 3469 ATTACH_INSTANCE* attach_instance = (ATTACH_INSTANCE*)attach;
Azure.IoT Build 0:6ae2f7bca550 3470 AMQP_VALUE incomplete_unsettled_amqp_value = amqpvalue_create_boolean(incomplete_unsettled_value);
Azure.IoT Build 0:6ae2f7bca550 3471 if (incomplete_unsettled_amqp_value == NULL)
Azure.IoT Build 0:6ae2f7bca550 3472 {
Azure.IoT Build 0:6ae2f7bca550 3473 result = __LINE__;
Azure.IoT Build 0:6ae2f7bca550 3474 }
Azure.IoT Build 0:6ae2f7bca550 3475 else
Azure.IoT Build 0:6ae2f7bca550 3476 {
Azure.IoT Build 0:6ae2f7bca550 3477 if (amqpvalue_set_composite_item(attach_instance->composite_value, 8, incomplete_unsettled_amqp_value) != 0)
Azure.IoT Build 0:6ae2f7bca550 3478 {
Azure.IoT Build 0:6ae2f7bca550 3479 result = __LINE__;
Azure.IoT Build 0:6ae2f7bca550 3480 }
Azure.IoT Build 0:6ae2f7bca550 3481 else
Azure.IoT Build 0:6ae2f7bca550 3482 {
Azure.IoT Build 0:6ae2f7bca550 3483 result = 0;
Azure.IoT Build 0:6ae2f7bca550 3484 }
Azure.IoT Build 0:6ae2f7bca550 3485
Azure.IoT Build 0:6ae2f7bca550 3486 amqpvalue_destroy(incomplete_unsettled_amqp_value);
Azure.IoT Build 0:6ae2f7bca550 3487 }
Azure.IoT Build 0:6ae2f7bca550 3488 }
Azure.IoT Build 0:6ae2f7bca550 3489
Azure.IoT Build 0:6ae2f7bca550 3490 return result;
Azure.IoT Build 0:6ae2f7bca550 3491 }
Azure.IoT Build 0:6ae2f7bca550 3492
Azure.IoT Build 0:6ae2f7bca550 3493 int attach_get_initial_delivery_count(ATTACH_HANDLE attach, sequence_no* initial_delivery_count_value)
Azure.IoT Build 0:6ae2f7bca550 3494 {
Azure.IoT Build 0:6ae2f7bca550 3495 int result;
Azure.IoT Build 0:6ae2f7bca550 3496
Azure.IoT Build 0:6ae2f7bca550 3497 if (attach == NULL)
Azure.IoT Build 0:6ae2f7bca550 3498 {
Azure.IoT Build 0:6ae2f7bca550 3499 result = __LINE__;
Azure.IoT Build 0:6ae2f7bca550 3500 }
Azure.IoT Build 0:6ae2f7bca550 3501 else
Azure.IoT Build 0:6ae2f7bca550 3502 {
Azure.IoT Build 0:6ae2f7bca550 3503 ATTACH_INSTANCE* attach_instance = (ATTACH_INSTANCE*)attach;
Azure.IoT Build 0:6ae2f7bca550 3504 AMQP_VALUE item_value = amqpvalue_get_composite_item_in_place(attach_instance->composite_value, 9);
Azure.IoT Build 0:6ae2f7bca550 3505 if (item_value == NULL)
Azure.IoT Build 0:6ae2f7bca550 3506 {
Azure.IoT Build 0:6ae2f7bca550 3507 result = __LINE__;
Azure.IoT Build 0:6ae2f7bca550 3508 }
Azure.IoT Build 0:6ae2f7bca550 3509 else
Azure.IoT Build 0:6ae2f7bca550 3510 {
Azure.IoT Build 0:6ae2f7bca550 3511 if (amqpvalue_get_sequence_no(item_value, initial_delivery_count_value) != 0)
Azure.IoT Build 0:6ae2f7bca550 3512 {
AzureIoTClient 16:22a72cf8e416 3513 result = __LINE__;
Azure.IoT Build 0:6ae2f7bca550 3514 }
Azure.IoT Build 0:6ae2f7bca550 3515 else
Azure.IoT Build 0:6ae2f7bca550 3516 {
Azure.IoT Build 0:6ae2f7bca550 3517 result = 0;
Azure.IoT Build 0:6ae2f7bca550 3518 }
Azure.IoT Build 0:6ae2f7bca550 3519 }
Azure.IoT Build 0:6ae2f7bca550 3520 }
Azure.IoT Build 0:6ae2f7bca550 3521
Azure.IoT Build 0:6ae2f7bca550 3522 return result;
Azure.IoT Build 0:6ae2f7bca550 3523 }
Azure.IoT Build 0:6ae2f7bca550 3524
Azure.IoT Build 0:6ae2f7bca550 3525 int attach_set_initial_delivery_count(ATTACH_HANDLE attach, sequence_no initial_delivery_count_value)
Azure.IoT Build 0:6ae2f7bca550 3526 {
Azure.IoT Build 0:6ae2f7bca550 3527 int result;
Azure.IoT Build 0:6ae2f7bca550 3528
Azure.IoT Build 0:6ae2f7bca550 3529 if (attach == NULL)
Azure.IoT Build 0:6ae2f7bca550 3530 {
Azure.IoT Build 0:6ae2f7bca550 3531 result = __LINE__;
Azure.IoT Build 0:6ae2f7bca550 3532 }
Azure.IoT Build 0:6ae2f7bca550 3533 else
Azure.IoT Build 0:6ae2f7bca550 3534 {
Azure.IoT Build 0:6ae2f7bca550 3535 ATTACH_INSTANCE* attach_instance = (ATTACH_INSTANCE*)attach;
Azure.IoT Build 0:6ae2f7bca550 3536 AMQP_VALUE initial_delivery_count_amqp_value = amqpvalue_create_sequence_no(initial_delivery_count_value);
Azure.IoT Build 0:6ae2f7bca550 3537 if (initial_delivery_count_amqp_value == NULL)
Azure.IoT Build 0:6ae2f7bca550 3538 {
Azure.IoT Build 0:6ae2f7bca550 3539 result = __LINE__;
Azure.IoT Build 0:6ae2f7bca550 3540 }
Azure.IoT Build 0:6ae2f7bca550 3541 else
Azure.IoT Build 0:6ae2f7bca550 3542 {
Azure.IoT Build 0:6ae2f7bca550 3543 if (amqpvalue_set_composite_item(attach_instance->composite_value, 9, initial_delivery_count_amqp_value) != 0)
Azure.IoT Build 0:6ae2f7bca550 3544 {
Azure.IoT Build 0:6ae2f7bca550 3545 result = __LINE__;
Azure.IoT Build 0:6ae2f7bca550 3546 }
Azure.IoT Build 0:6ae2f7bca550 3547 else
Azure.IoT Build 0:6ae2f7bca550 3548 {
Azure.IoT Build 0:6ae2f7bca550 3549 result = 0;
Azure.IoT Build 0:6ae2f7bca550 3550 }
Azure.IoT Build 0:6ae2f7bca550 3551
Azure.IoT Build 0:6ae2f7bca550 3552 amqpvalue_destroy(initial_delivery_count_amqp_value);
Azure.IoT Build 0:6ae2f7bca550 3553 }
Azure.IoT Build 0:6ae2f7bca550 3554 }
Azure.IoT Build 0:6ae2f7bca550 3555
Azure.IoT Build 0:6ae2f7bca550 3556 return result;
Azure.IoT Build 0:6ae2f7bca550 3557 }
Azure.IoT Build 0:6ae2f7bca550 3558
Azure.IoT Build 0:6ae2f7bca550 3559 int attach_get_max_message_size(ATTACH_HANDLE attach, uint64_t* max_message_size_value)
Azure.IoT Build 0:6ae2f7bca550 3560 {
Azure.IoT Build 0:6ae2f7bca550 3561 int result;
Azure.IoT Build 0:6ae2f7bca550 3562
Azure.IoT Build 0:6ae2f7bca550 3563 if (attach == NULL)
Azure.IoT Build 0:6ae2f7bca550 3564 {
Azure.IoT Build 0:6ae2f7bca550 3565 result = __LINE__;
Azure.IoT Build 0:6ae2f7bca550 3566 }
Azure.IoT Build 0:6ae2f7bca550 3567 else
Azure.IoT Build 0:6ae2f7bca550 3568 {
Azure.IoT Build 0:6ae2f7bca550 3569 ATTACH_INSTANCE* attach_instance = (ATTACH_INSTANCE*)attach;
Azure.IoT Build 0:6ae2f7bca550 3570 AMQP_VALUE item_value = amqpvalue_get_composite_item_in_place(attach_instance->composite_value, 10);
Azure.IoT Build 0:6ae2f7bca550 3571 if (item_value == NULL)
Azure.IoT Build 0:6ae2f7bca550 3572 {
Azure.IoT Build 0:6ae2f7bca550 3573 result = __LINE__;
Azure.IoT Build 0:6ae2f7bca550 3574 }
Azure.IoT Build 0:6ae2f7bca550 3575 else
Azure.IoT Build 0:6ae2f7bca550 3576 {
Azure.IoT Build 0:6ae2f7bca550 3577 if (amqpvalue_get_ulong(item_value, max_message_size_value) != 0)
Azure.IoT Build 0:6ae2f7bca550 3578 {
AzureIoTClient 16:22a72cf8e416 3579 result = __LINE__;
Azure.IoT Build 0:6ae2f7bca550 3580 }
Azure.IoT Build 0:6ae2f7bca550 3581 else
Azure.IoT Build 0:6ae2f7bca550 3582 {
Azure.IoT Build 0:6ae2f7bca550 3583 result = 0;
Azure.IoT Build 0:6ae2f7bca550 3584 }
Azure.IoT Build 0:6ae2f7bca550 3585 }
Azure.IoT Build 0:6ae2f7bca550 3586 }
Azure.IoT Build 0:6ae2f7bca550 3587
Azure.IoT Build 0:6ae2f7bca550 3588 return result;
Azure.IoT Build 0:6ae2f7bca550 3589 }
Azure.IoT Build 0:6ae2f7bca550 3590
Azure.IoT Build 0:6ae2f7bca550 3591 int attach_set_max_message_size(ATTACH_HANDLE attach, uint64_t max_message_size_value)
Azure.IoT Build 0:6ae2f7bca550 3592 {
Azure.IoT Build 0:6ae2f7bca550 3593 int result;
Azure.IoT Build 0:6ae2f7bca550 3594
Azure.IoT Build 0:6ae2f7bca550 3595 if (attach == NULL)
Azure.IoT Build 0:6ae2f7bca550 3596 {
Azure.IoT Build 0:6ae2f7bca550 3597 result = __LINE__;
Azure.IoT Build 0:6ae2f7bca550 3598 }
Azure.IoT Build 0:6ae2f7bca550 3599 else
Azure.IoT Build 0:6ae2f7bca550 3600 {
Azure.IoT Build 0:6ae2f7bca550 3601 ATTACH_INSTANCE* attach_instance = (ATTACH_INSTANCE*)attach;
Azure.IoT Build 0:6ae2f7bca550 3602 AMQP_VALUE max_message_size_amqp_value = amqpvalue_create_ulong(max_message_size_value);
Azure.IoT Build 0:6ae2f7bca550 3603 if (max_message_size_amqp_value == NULL)
Azure.IoT Build 0:6ae2f7bca550 3604 {
Azure.IoT Build 0:6ae2f7bca550 3605 result = __LINE__;
Azure.IoT Build 0:6ae2f7bca550 3606 }
Azure.IoT Build 0:6ae2f7bca550 3607 else
Azure.IoT Build 0:6ae2f7bca550 3608 {
Azure.IoT Build 0:6ae2f7bca550 3609 if (amqpvalue_set_composite_item(attach_instance->composite_value, 10, max_message_size_amqp_value) != 0)
Azure.IoT Build 0:6ae2f7bca550 3610 {
Azure.IoT Build 0:6ae2f7bca550 3611 result = __LINE__;
Azure.IoT Build 0:6ae2f7bca550 3612 }
Azure.IoT Build 0:6ae2f7bca550 3613 else
Azure.IoT Build 0:6ae2f7bca550 3614 {
Azure.IoT Build 0:6ae2f7bca550 3615 result = 0;
Azure.IoT Build 0:6ae2f7bca550 3616 }
Azure.IoT Build 0:6ae2f7bca550 3617
Azure.IoT Build 0:6ae2f7bca550 3618 amqpvalue_destroy(max_message_size_amqp_value);
Azure.IoT Build 0:6ae2f7bca550 3619 }
Azure.IoT Build 0:6ae2f7bca550 3620 }
Azure.IoT Build 0:6ae2f7bca550 3621
Azure.IoT Build 0:6ae2f7bca550 3622 return result;
Azure.IoT Build 0:6ae2f7bca550 3623 }
Azure.IoT Build 0:6ae2f7bca550 3624
Azure.IoT Build 0:6ae2f7bca550 3625 int attach_get_offered_capabilities(ATTACH_HANDLE attach, AMQP_VALUE* offered_capabilities_value)
Azure.IoT Build 0:6ae2f7bca550 3626 {
Azure.IoT Build 0:6ae2f7bca550 3627 int result;
Azure.IoT Build 0:6ae2f7bca550 3628
Azure.IoT Build 0:6ae2f7bca550 3629 if (attach == NULL)
Azure.IoT Build 0:6ae2f7bca550 3630 {
Azure.IoT Build 0:6ae2f7bca550 3631 result = __LINE__;
Azure.IoT Build 0:6ae2f7bca550 3632 }
Azure.IoT Build 0:6ae2f7bca550 3633 else
Azure.IoT Build 0:6ae2f7bca550 3634 {
Azure.IoT Build 0:6ae2f7bca550 3635 ATTACH_INSTANCE* attach_instance = (ATTACH_INSTANCE*)attach;
Azure.IoT Build 0:6ae2f7bca550 3636 AMQP_VALUE item_value = amqpvalue_get_composite_item_in_place(attach_instance->composite_value, 11);
Azure.IoT Build 0:6ae2f7bca550 3637 if (item_value == NULL)
Azure.IoT Build 0:6ae2f7bca550 3638 {
Azure.IoT Build 0:6ae2f7bca550 3639 result = __LINE__;
Azure.IoT Build 0:6ae2f7bca550 3640 }
Azure.IoT Build 0:6ae2f7bca550 3641 else
Azure.IoT Build 0:6ae2f7bca550 3642 {
Azure.IoT Build 0:6ae2f7bca550 3643 if (amqpvalue_get_array(item_value, offered_capabilities_value) != 0)
Azure.IoT Build 0:6ae2f7bca550 3644 {
AzureIoTClient 16:22a72cf8e416 3645 result = __LINE__;
Azure.IoT Build 0:6ae2f7bca550 3646 }
Azure.IoT Build 0:6ae2f7bca550 3647 else
Azure.IoT Build 0:6ae2f7bca550 3648 {
Azure.IoT Build 0:6ae2f7bca550 3649 result = 0;
Azure.IoT Build 0:6ae2f7bca550 3650 }
Azure.IoT Build 0:6ae2f7bca550 3651 }
Azure.IoT Build 0:6ae2f7bca550 3652 }
Azure.IoT Build 0:6ae2f7bca550 3653
Azure.IoT Build 0:6ae2f7bca550 3654 return result;
Azure.IoT Build 0:6ae2f7bca550 3655 }
Azure.IoT Build 0:6ae2f7bca550 3656
Azure.IoT Build 0:6ae2f7bca550 3657 int attach_set_offered_capabilities(ATTACH_HANDLE attach, AMQP_VALUE offered_capabilities_value)
Azure.IoT Build 0:6ae2f7bca550 3658 {
Azure.IoT Build 0:6ae2f7bca550 3659 int result;
Azure.IoT Build 0:6ae2f7bca550 3660
Azure.IoT Build 0:6ae2f7bca550 3661 if (attach == NULL)
Azure.IoT Build 0:6ae2f7bca550 3662 {
Azure.IoT Build 0:6ae2f7bca550 3663 result = __LINE__;
Azure.IoT Build 0:6ae2f7bca550 3664 }
Azure.IoT Build 0:6ae2f7bca550 3665 else
Azure.IoT Build 0:6ae2f7bca550 3666 {
Azure.IoT Build 0:6ae2f7bca550 3667 ATTACH_INSTANCE* attach_instance = (ATTACH_INSTANCE*)attach;
Azure.IoT Build 0:6ae2f7bca550 3668 AMQP_VALUE offered_capabilities_amqp_value = amqpvalue_clone(offered_capabilities_value);
Azure.IoT Build 0:6ae2f7bca550 3669 if (offered_capabilities_amqp_value == NULL)
Azure.IoT Build 0:6ae2f7bca550 3670 {
Azure.IoT Build 0:6ae2f7bca550 3671 result = __LINE__;
Azure.IoT Build 0:6ae2f7bca550 3672 }
Azure.IoT Build 0:6ae2f7bca550 3673 else
Azure.IoT Build 0:6ae2f7bca550 3674 {
Azure.IoT Build 0:6ae2f7bca550 3675 if (amqpvalue_set_composite_item(attach_instance->composite_value, 11, offered_capabilities_amqp_value) != 0)
Azure.IoT Build 0:6ae2f7bca550 3676 {
Azure.IoT Build 0:6ae2f7bca550 3677 result = __LINE__;
Azure.IoT Build 0:6ae2f7bca550 3678 }
Azure.IoT Build 0:6ae2f7bca550 3679 else
Azure.IoT Build 0:6ae2f7bca550 3680 {
Azure.IoT Build 0:6ae2f7bca550 3681 result = 0;
Azure.IoT Build 0:6ae2f7bca550 3682 }
Azure.IoT Build 0:6ae2f7bca550 3683
Azure.IoT Build 0:6ae2f7bca550 3684 amqpvalue_destroy(offered_capabilities_amqp_value);
Azure.IoT Build 0:6ae2f7bca550 3685 }
Azure.IoT Build 0:6ae2f7bca550 3686 }
Azure.IoT Build 0:6ae2f7bca550 3687
Azure.IoT Build 0:6ae2f7bca550 3688 return result;
Azure.IoT Build 0:6ae2f7bca550 3689 }
Azure.IoT Build 0:6ae2f7bca550 3690
Azure.IoT Build 0:6ae2f7bca550 3691 int attach_get_desired_capabilities(ATTACH_HANDLE attach, AMQP_VALUE* desired_capabilities_value)
Azure.IoT Build 0:6ae2f7bca550 3692 {
Azure.IoT Build 0:6ae2f7bca550 3693 int result;
Azure.IoT Build 0:6ae2f7bca550 3694
Azure.IoT Build 0:6ae2f7bca550 3695 if (attach == NULL)
Azure.IoT Build 0:6ae2f7bca550 3696 {
Azure.IoT Build 0:6ae2f7bca550 3697 result = __LINE__;
Azure.IoT Build 0:6ae2f7bca550 3698 }
Azure.IoT Build 0:6ae2f7bca550 3699 else
Azure.IoT Build 0:6ae2f7bca550 3700 {
Azure.IoT Build 0:6ae2f7bca550 3701 ATTACH_INSTANCE* attach_instance = (ATTACH_INSTANCE*)attach;
Azure.IoT Build 0:6ae2f7bca550 3702 AMQP_VALUE item_value = amqpvalue_get_composite_item_in_place(attach_instance->composite_value, 12);
Azure.IoT Build 0:6ae2f7bca550 3703 if (item_value == NULL)
Azure.IoT Build 0:6ae2f7bca550 3704 {
Azure.IoT Build 0:6ae2f7bca550 3705 result = __LINE__;
Azure.IoT Build 0:6ae2f7bca550 3706 }
Azure.IoT Build 0:6ae2f7bca550 3707 else
Azure.IoT Build 0:6ae2f7bca550 3708 {
Azure.IoT Build 0:6ae2f7bca550 3709 if (amqpvalue_get_array(item_value, desired_capabilities_value) != 0)
Azure.IoT Build 0:6ae2f7bca550 3710 {
AzureIoTClient 16:22a72cf8e416 3711 result = __LINE__;
Azure.IoT Build 0:6ae2f7bca550 3712 }
Azure.IoT Build 0:6ae2f7bca550 3713 else
Azure.IoT Build 0:6ae2f7bca550 3714 {
Azure.IoT Build 0:6ae2f7bca550 3715 result = 0;
Azure.IoT Build 0:6ae2f7bca550 3716 }
Azure.IoT Build 0:6ae2f7bca550 3717 }
Azure.IoT Build 0:6ae2f7bca550 3718 }
Azure.IoT Build 0:6ae2f7bca550 3719
Azure.IoT Build 0:6ae2f7bca550 3720 return result;
Azure.IoT Build 0:6ae2f7bca550 3721 }
Azure.IoT Build 0:6ae2f7bca550 3722
Azure.IoT Build 0:6ae2f7bca550 3723 int attach_set_desired_capabilities(ATTACH_HANDLE attach, AMQP_VALUE desired_capabilities_value)
Azure.IoT Build 0:6ae2f7bca550 3724 {
Azure.IoT Build 0:6ae2f7bca550 3725 int result;
Azure.IoT Build 0:6ae2f7bca550 3726
Azure.IoT Build 0:6ae2f7bca550 3727 if (attach == NULL)
Azure.IoT Build 0:6ae2f7bca550 3728 {
Azure.IoT Build 0:6ae2f7bca550 3729 result = __LINE__;
Azure.IoT Build 0:6ae2f7bca550 3730 }
Azure.IoT Build 0:6ae2f7bca550 3731 else
Azure.IoT Build 0:6ae2f7bca550 3732 {
Azure.IoT Build 0:6ae2f7bca550 3733 ATTACH_INSTANCE* attach_instance = (ATTACH_INSTANCE*)attach;
Azure.IoT Build 0:6ae2f7bca550 3734 AMQP_VALUE desired_capabilities_amqp_value = amqpvalue_clone(desired_capabilities_value);
Azure.IoT Build 0:6ae2f7bca550 3735 if (desired_capabilities_amqp_value == NULL)
Azure.IoT Build 0:6ae2f7bca550 3736 {
Azure.IoT Build 0:6ae2f7bca550 3737 result = __LINE__;
Azure.IoT Build 0:6ae2f7bca550 3738 }
Azure.IoT Build 0:6ae2f7bca550 3739 else
Azure.IoT Build 0:6ae2f7bca550 3740 {
Azure.IoT Build 0:6ae2f7bca550 3741 if (amqpvalue_set_composite_item(attach_instance->composite_value, 12, desired_capabilities_amqp_value) != 0)
Azure.IoT Build 0:6ae2f7bca550 3742 {
Azure.IoT Build 0:6ae2f7bca550 3743 result = __LINE__;
Azure.IoT Build 0:6ae2f7bca550 3744 }
Azure.IoT Build 0:6ae2f7bca550 3745 else
Azure.IoT Build 0:6ae2f7bca550 3746 {
Azure.IoT Build 0:6ae2f7bca550 3747 result = 0;
Azure.IoT Build 0:6ae2f7bca550 3748 }
Azure.IoT Build 0:6ae2f7bca550 3749
Azure.IoT Build 0:6ae2f7bca550 3750 amqpvalue_destroy(desired_capabilities_amqp_value);
Azure.IoT Build 0:6ae2f7bca550 3751 }
Azure.IoT Build 0:6ae2f7bca550 3752 }
Azure.IoT Build 0:6ae2f7bca550 3753
Azure.IoT Build 0:6ae2f7bca550 3754 return result;
Azure.IoT Build 0:6ae2f7bca550 3755 }
Azure.IoT Build 0:6ae2f7bca550 3756
Azure.IoT Build 0:6ae2f7bca550 3757 int attach_get_properties(ATTACH_HANDLE attach, fields* properties_value)
Azure.IoT Build 0:6ae2f7bca550 3758 {
Azure.IoT Build 0:6ae2f7bca550 3759 int result;
Azure.IoT Build 0:6ae2f7bca550 3760
Azure.IoT Build 0:6ae2f7bca550 3761 if (attach == NULL)
Azure.IoT Build 0:6ae2f7bca550 3762 {
Azure.IoT Build 0:6ae2f7bca550 3763 result = __LINE__;
Azure.IoT Build 0:6ae2f7bca550 3764 }
Azure.IoT Build 0:6ae2f7bca550 3765 else
Azure.IoT Build 0:6ae2f7bca550 3766 {
Azure.IoT Build 0:6ae2f7bca550 3767 ATTACH_INSTANCE* attach_instance = (ATTACH_INSTANCE*)attach;
Azure.IoT Build 0:6ae2f7bca550 3768 AMQP_VALUE item_value = amqpvalue_get_composite_item_in_place(attach_instance->composite_value, 13);
Azure.IoT Build 0:6ae2f7bca550 3769 if (item_value == NULL)
Azure.IoT Build 0:6ae2f7bca550 3770 {
Azure.IoT Build 0:6ae2f7bca550 3771 result = __LINE__;
Azure.IoT Build 0:6ae2f7bca550 3772 }
Azure.IoT Build 0:6ae2f7bca550 3773 else
Azure.IoT Build 0:6ae2f7bca550 3774 {
Azure.IoT Build 0:6ae2f7bca550 3775 if (amqpvalue_get_fields(item_value, properties_value) != 0)
Azure.IoT Build 0:6ae2f7bca550 3776 {
AzureIoTClient 16:22a72cf8e416 3777 result = __LINE__;
Azure.IoT Build 0:6ae2f7bca550 3778 }
Azure.IoT Build 0:6ae2f7bca550 3779 else
Azure.IoT Build 0:6ae2f7bca550 3780 {
Azure.IoT Build 0:6ae2f7bca550 3781 result = 0;
Azure.IoT Build 0:6ae2f7bca550 3782 }
Azure.IoT Build 0:6ae2f7bca550 3783 }
Azure.IoT Build 0:6ae2f7bca550 3784 }
Azure.IoT Build 0:6ae2f7bca550 3785
Azure.IoT Build 0:6ae2f7bca550 3786 return result;
Azure.IoT Build 0:6ae2f7bca550 3787 }
Azure.IoT Build 0:6ae2f7bca550 3788
Azure.IoT Build 0:6ae2f7bca550 3789 int attach_set_properties(ATTACH_HANDLE attach, fields properties_value)
Azure.IoT Build 0:6ae2f7bca550 3790 {
Azure.IoT Build 0:6ae2f7bca550 3791 int result;
Azure.IoT Build 0:6ae2f7bca550 3792
Azure.IoT Build 0:6ae2f7bca550 3793 if (attach == NULL)
Azure.IoT Build 0:6ae2f7bca550 3794 {
Azure.IoT Build 0:6ae2f7bca550 3795 result = __LINE__;
Azure.IoT Build 0:6ae2f7bca550 3796 }
Azure.IoT Build 0:6ae2f7bca550 3797 else
Azure.IoT Build 0:6ae2f7bca550 3798 {
Azure.IoT Build 0:6ae2f7bca550 3799 ATTACH_INSTANCE* attach_instance = (ATTACH_INSTANCE*)attach;
Azure.IoT Build 0:6ae2f7bca550 3800 AMQP_VALUE properties_amqp_value = amqpvalue_create_fields(properties_value);
Azure.IoT Build 0:6ae2f7bca550 3801 if (properties_amqp_value == NULL)
Azure.IoT Build 0:6ae2f7bca550 3802 {
Azure.IoT Build 0:6ae2f7bca550 3803 result = __LINE__;
Azure.IoT Build 0:6ae2f7bca550 3804 }
Azure.IoT Build 0:6ae2f7bca550 3805 else
Azure.IoT Build 0:6ae2f7bca550 3806 {
Azure.IoT Build 0:6ae2f7bca550 3807 if (amqpvalue_set_composite_item(attach_instance->composite_value, 13, properties_amqp_value) != 0)
Azure.IoT Build 0:6ae2f7bca550 3808 {
Azure.IoT Build 0:6ae2f7bca550 3809 result = __LINE__;
Azure.IoT Build 0:6ae2f7bca550 3810 }
Azure.IoT Build 0:6ae2f7bca550 3811 else
Azure.IoT Build 0:6ae2f7bca550 3812 {
Azure.IoT Build 0:6ae2f7bca550 3813 result = 0;
Azure.IoT Build 0:6ae2f7bca550 3814 }
Azure.IoT Build 0:6ae2f7bca550 3815
Azure.IoT Build 0:6ae2f7bca550 3816 amqpvalue_destroy(properties_amqp_value);
Azure.IoT Build 0:6ae2f7bca550 3817 }
Azure.IoT Build 0:6ae2f7bca550 3818 }
Azure.IoT Build 0:6ae2f7bca550 3819
Azure.IoT Build 0:6ae2f7bca550 3820 return result;
Azure.IoT Build 0:6ae2f7bca550 3821 }
Azure.IoT Build 0:6ae2f7bca550 3822
Azure.IoT Build 0:6ae2f7bca550 3823
Azure.IoT Build 0:6ae2f7bca550 3824 /* flow */
Azure.IoT Build 0:6ae2f7bca550 3825
Azure.IoT Build 0:6ae2f7bca550 3826 typedef struct FLOW_INSTANCE_TAG
Azure.IoT Build 0:6ae2f7bca550 3827 {
Azure.IoT Build 0:6ae2f7bca550 3828 AMQP_VALUE composite_value;
Azure.IoT Build 0:6ae2f7bca550 3829 } FLOW_INSTANCE;
Azure.IoT Build 0:6ae2f7bca550 3830
Azure.IoT Build 0:6ae2f7bca550 3831 static FLOW_HANDLE flow_create_internal(void)
Azure.IoT Build 0:6ae2f7bca550 3832 {
Azure.IoT Build 0:6ae2f7bca550 3833 FLOW_INSTANCE* flow_instance = (FLOW_INSTANCE*)amqpalloc_malloc(sizeof(FLOW_INSTANCE));
Azure.IoT Build 0:6ae2f7bca550 3834 if (flow_instance != NULL)
Azure.IoT Build 0:6ae2f7bca550 3835 {
Azure.IoT Build 0:6ae2f7bca550 3836 flow_instance->composite_value = NULL;
Azure.IoT Build 0:6ae2f7bca550 3837 }
Azure.IoT Build 0:6ae2f7bca550 3838
Azure.IoT Build 0:6ae2f7bca550 3839 return flow_instance;
Azure.IoT Build 0:6ae2f7bca550 3840 }
Azure.IoT Build 0:6ae2f7bca550 3841
Azure.IoT Build 0:6ae2f7bca550 3842 FLOW_HANDLE flow_create(uint32_t incoming_window_value, transfer_number next_outgoing_id_value, uint32_t outgoing_window_value)
Azure.IoT Build 0:6ae2f7bca550 3843 {
Azure.IoT Build 0:6ae2f7bca550 3844 FLOW_INSTANCE* flow_instance = (FLOW_INSTANCE*)amqpalloc_malloc(sizeof(FLOW_INSTANCE));
Azure.IoT Build 0:6ae2f7bca550 3845 if (flow_instance != NULL)
Azure.IoT Build 0:6ae2f7bca550 3846 {
Azure.IoT Build 0:6ae2f7bca550 3847 flow_instance->composite_value = amqpvalue_create_composite_with_ulong_descriptor(19);
Azure.IoT Build 0:6ae2f7bca550 3848 if (flow_instance->composite_value == NULL)
Azure.IoT Build 0:6ae2f7bca550 3849 {
Azure.IoT Build 0:6ae2f7bca550 3850 amqpalloc_free(flow_instance);
Azure.IoT Build 0:6ae2f7bca550 3851 flow_instance = NULL;
Azure.IoT Build 0:6ae2f7bca550 3852 }
Azure.IoT Build 0:6ae2f7bca550 3853 else
Azure.IoT Build 0:6ae2f7bca550 3854 {
Azure.IoT Build 0:6ae2f7bca550 3855 AMQP_VALUE incoming_window_amqp_value;
Azure.IoT Build 0:6ae2f7bca550 3856 AMQP_VALUE next_outgoing_id_amqp_value;
Azure.IoT Build 0:6ae2f7bca550 3857 AMQP_VALUE outgoing_window_amqp_value;
Azure.IoT Build 0:6ae2f7bca550 3858 int result = 0;
Azure.IoT Build 0:6ae2f7bca550 3859
Azure.IoT Build 0:6ae2f7bca550 3860 incoming_window_amqp_value = amqpvalue_create_uint(incoming_window_value);
Azure.IoT Build 0:6ae2f7bca550 3861 if ((result == 0) && (amqpvalue_set_composite_item(flow_instance->composite_value, 1, incoming_window_amqp_value) != 0))
Azure.IoT Build 0:6ae2f7bca550 3862 {
Azure.IoT Build 0:6ae2f7bca550 3863 result = __LINE__;
Azure.IoT Build 0:6ae2f7bca550 3864 }
Azure.IoT Build 0:6ae2f7bca550 3865 next_outgoing_id_amqp_value = amqpvalue_create_transfer_number(next_outgoing_id_value);
Azure.IoT Build 0:6ae2f7bca550 3866 if ((result == 0) && (amqpvalue_set_composite_item(flow_instance->composite_value, 2, next_outgoing_id_amqp_value) != 0))
Azure.IoT Build 0:6ae2f7bca550 3867 {
Azure.IoT Build 0:6ae2f7bca550 3868 result = __LINE__;
Azure.IoT Build 0:6ae2f7bca550 3869 }
Azure.IoT Build 0:6ae2f7bca550 3870 outgoing_window_amqp_value = amqpvalue_create_uint(outgoing_window_value);
Azure.IoT Build 0:6ae2f7bca550 3871 if ((result == 0) && (amqpvalue_set_composite_item(flow_instance->composite_value, 3, outgoing_window_amqp_value) != 0))
Azure.IoT Build 0:6ae2f7bca550 3872 {
Azure.IoT Build 0:6ae2f7bca550 3873 result = __LINE__;
Azure.IoT Build 0:6ae2f7bca550 3874 }
Azure.IoT Build 0:6ae2f7bca550 3875
Azure.IoT Build 0:6ae2f7bca550 3876 amqpvalue_destroy(incoming_window_amqp_value);
Azure.IoT Build 0:6ae2f7bca550 3877 amqpvalue_destroy(next_outgoing_id_amqp_value);
Azure.IoT Build 0:6ae2f7bca550 3878 amqpvalue_destroy(outgoing_window_amqp_value);
Azure.IoT Build 0:6ae2f7bca550 3879 }
Azure.IoT Build 0:6ae2f7bca550 3880 }
Azure.IoT Build 0:6ae2f7bca550 3881
Azure.IoT Build 0:6ae2f7bca550 3882 return flow_instance;
Azure.IoT Build 0:6ae2f7bca550 3883 }
Azure.IoT Build 0:6ae2f7bca550 3884
Azure.IoT Build 0:6ae2f7bca550 3885 FLOW_HANDLE flow_clone(FLOW_HANDLE value)
Azure.IoT Build 0:6ae2f7bca550 3886 {
Azure.IoT Build 0:6ae2f7bca550 3887 FLOW_INSTANCE* flow_instance = (FLOW_INSTANCE*)amqpalloc_malloc(sizeof(FLOW_INSTANCE));
Azure.IoT Build 0:6ae2f7bca550 3888 if (flow_instance != NULL)
Azure.IoT Build 0:6ae2f7bca550 3889 {
Azure.IoT Build 0:6ae2f7bca550 3890 flow_instance->composite_value = amqpvalue_clone(((FLOW_INSTANCE*)value)->composite_value);
Azure.IoT Build 0:6ae2f7bca550 3891 if (flow_instance->composite_value == NULL)
Azure.IoT Build 0:6ae2f7bca550 3892 {
Azure.IoT Build 0:6ae2f7bca550 3893 amqpalloc_free(flow_instance);
Azure.IoT Build 0:6ae2f7bca550 3894 flow_instance = NULL;
Azure.IoT Build 0:6ae2f7bca550 3895 }
Azure.IoT Build 0:6ae2f7bca550 3896 }
Azure.IoT Build 0:6ae2f7bca550 3897
Azure.IoT Build 0:6ae2f7bca550 3898 return flow_instance;
Azure.IoT Build 0:6ae2f7bca550 3899 }
Azure.IoT Build 0:6ae2f7bca550 3900
Azure.IoT Build 0:6ae2f7bca550 3901 void flow_destroy(FLOW_HANDLE flow)
Azure.IoT Build 0:6ae2f7bca550 3902 {
Azure.IoT Build 0:6ae2f7bca550 3903 if (flow != NULL)
Azure.IoT Build 0:6ae2f7bca550 3904 {
Azure.IoT Build 0:6ae2f7bca550 3905 FLOW_INSTANCE* flow_instance = (FLOW_INSTANCE*)flow;
Azure.IoT Build 0:6ae2f7bca550 3906 amqpvalue_destroy(flow_instance->composite_value);
Azure.IoT Build 0:6ae2f7bca550 3907 amqpalloc_free(flow_instance);
Azure.IoT Build 0:6ae2f7bca550 3908 }
Azure.IoT Build 0:6ae2f7bca550 3909 }
Azure.IoT Build 0:6ae2f7bca550 3910
Azure.IoT Build 0:6ae2f7bca550 3911 AMQP_VALUE amqpvalue_create_flow(FLOW_HANDLE flow)
Azure.IoT Build 0:6ae2f7bca550 3912 {
Azure.IoT Build 0:6ae2f7bca550 3913 AMQP_VALUE result;
Azure.IoT Build 0:6ae2f7bca550 3914
Azure.IoT Build 0:6ae2f7bca550 3915 if (flow == NULL)
Azure.IoT Build 0:6ae2f7bca550 3916 {
Azure.IoT Build 0:6ae2f7bca550 3917 result = NULL;
Azure.IoT Build 0:6ae2f7bca550 3918 }
Azure.IoT Build 0:6ae2f7bca550 3919 else
Azure.IoT Build 0:6ae2f7bca550 3920 {
Azure.IoT Build 0:6ae2f7bca550 3921 FLOW_INSTANCE* flow_instance = (FLOW_INSTANCE*)flow;
Azure.IoT Build 0:6ae2f7bca550 3922 result = amqpvalue_clone(flow_instance->composite_value);
Azure.IoT Build 0:6ae2f7bca550 3923 }
Azure.IoT Build 0:6ae2f7bca550 3924
Azure.IoT Build 0:6ae2f7bca550 3925 return result;
Azure.IoT Build 0:6ae2f7bca550 3926 }
Azure.IoT Build 0:6ae2f7bca550 3927
Azure.IoT Build 0:6ae2f7bca550 3928 bool is_flow_type_by_descriptor(AMQP_VALUE descriptor)
Azure.IoT Build 0:6ae2f7bca550 3929 {
Azure.IoT Build 0:6ae2f7bca550 3930 bool result;
Azure.IoT Build 0:6ae2f7bca550 3931
Azure.IoT Build 0:6ae2f7bca550 3932 uint64_t descriptor_ulong;
Azure.IoT Build 0:6ae2f7bca550 3933 if ((amqpvalue_get_ulong(descriptor, &descriptor_ulong) == 0) &&
Azure.IoT Build 0:6ae2f7bca550 3934 (descriptor_ulong == 19))
Azure.IoT Build 0:6ae2f7bca550 3935 {
Azure.IoT Build 0:6ae2f7bca550 3936 result = true;
Azure.IoT Build 0:6ae2f7bca550 3937 }
Azure.IoT Build 0:6ae2f7bca550 3938 else
Azure.IoT Build 0:6ae2f7bca550 3939 {
Azure.IoT Build 0:6ae2f7bca550 3940 result = false;
Azure.IoT Build 0:6ae2f7bca550 3941 }
Azure.IoT Build 0:6ae2f7bca550 3942
Azure.IoT Build 0:6ae2f7bca550 3943 return result;
Azure.IoT Build 0:6ae2f7bca550 3944 }
Azure.IoT Build 0:6ae2f7bca550 3945
Azure.IoT Build 0:6ae2f7bca550 3946
Azure.IoT Build 0:6ae2f7bca550 3947 int amqpvalue_get_flow(AMQP_VALUE value, FLOW_HANDLE* flow_handle)
Azure.IoT Build 0:6ae2f7bca550 3948 {
Azure.IoT Build 0:6ae2f7bca550 3949 int result;
Azure.IoT Build 0:6ae2f7bca550 3950 FLOW_INSTANCE* flow_instance = (FLOW_INSTANCE*)flow_create_internal();
Azure.IoT Build 0:6ae2f7bca550 3951 *flow_handle = flow_instance;
Azure.IoT Build 0:6ae2f7bca550 3952 if (*flow_handle == NULL)
Azure.IoT Build 0:6ae2f7bca550 3953 {
Azure.IoT Build 0:6ae2f7bca550 3954 result = __LINE__;
Azure.IoT Build 0:6ae2f7bca550 3955 }
Azure.IoT Build 0:6ae2f7bca550 3956 else
Azure.IoT Build 0:6ae2f7bca550 3957 {
Azure.IoT Build 0:6ae2f7bca550 3958 AMQP_VALUE list_value = amqpvalue_get_inplace_described_value(value);
Azure.IoT Build 0:6ae2f7bca550 3959 if (list_value == NULL)
Azure.IoT Build 0:6ae2f7bca550 3960 {
Azure.IoT Build 0:6ae2f7bca550 3961 flow_destroy(*flow_handle);
Azure.IoT Build 0:6ae2f7bca550 3962 result = __LINE__;
Azure.IoT Build 0:6ae2f7bca550 3963 }
Azure.IoT Build 0:6ae2f7bca550 3964 else
Azure.IoT Build 0:6ae2f7bca550 3965 {
Azure.IoT Build 0:6ae2f7bca550 3966 do
Azure.IoT Build 0:6ae2f7bca550 3967 {
Azure.IoT Build 0:6ae2f7bca550 3968 AMQP_VALUE item_value;
Azure.IoT Build 0:6ae2f7bca550 3969 /* next-incoming-id */
Azure.IoT Build 0:6ae2f7bca550 3970 item_value = amqpvalue_get_list_item(list_value, 0);
Azure.IoT Build 0:6ae2f7bca550 3971 if (item_value == NULL)
Azure.IoT Build 0:6ae2f7bca550 3972 {
Azure.IoT Build 0:6ae2f7bca550 3973 /* do nothing */
Azure.IoT Build 0:6ae2f7bca550 3974 }
Azure.IoT Build 0:6ae2f7bca550 3975 else
Azure.IoT Build 0:6ae2f7bca550 3976 {
Azure.IoT Build 0:6ae2f7bca550 3977 transfer_number next_incoming_id;
Azure.IoT Build 0:6ae2f7bca550 3978 if (amqpvalue_get_transfer_number(item_value, &next_incoming_id) != 0)
Azure.IoT Build 0:6ae2f7bca550 3979 {
Azure.IoT Build 0:6ae2f7bca550 3980 if (amqpvalue_get_type(item_value) != AMQP_TYPE_NULL)
Azure.IoT Build 0:6ae2f7bca550 3981 {
Azure.IoT Build 0:6ae2f7bca550 3982 flow_destroy(*flow_handle);
Azure.IoT Build 0:6ae2f7bca550 3983 result = __LINE__;
Azure.IoT Build 0:6ae2f7bca550 3984 break;
Azure.IoT Build 0:6ae2f7bca550 3985 }
Azure.IoT Build 0:6ae2f7bca550 3986 }
Azure.IoT Build 0:6ae2f7bca550 3987
Azure.IoT Build 0:6ae2f7bca550 3988 amqpvalue_destroy(item_value);
Azure.IoT Build 0:6ae2f7bca550 3989 }
Azure.IoT Build 0:6ae2f7bca550 3990 /* incoming-window */
Azure.IoT Build 0:6ae2f7bca550 3991 item_value = amqpvalue_get_list_item(list_value, 1);
Azure.IoT Build 0:6ae2f7bca550 3992 if (item_value == NULL)
Azure.IoT Build 0:6ae2f7bca550 3993 {
Azure.IoT Build 0:6ae2f7bca550 3994 {
Azure.IoT Build 0:6ae2f7bca550 3995 flow_destroy(*flow_handle);
Azure.IoT Build 0:6ae2f7bca550 3996 result = __LINE__;
Azure.IoT Build 0:6ae2f7bca550 3997 break;
Azure.IoT Build 0:6ae2f7bca550 3998 }
Azure.IoT Build 0:6ae2f7bca550 3999 }
Azure.IoT Build 0:6ae2f7bca550 4000 else
Azure.IoT Build 0:6ae2f7bca550 4001 {
Azure.IoT Build 0:6ae2f7bca550 4002 uint32_t incoming_window;
Azure.IoT Build 0:6ae2f7bca550 4003 if (amqpvalue_get_uint(item_value, &incoming_window) != 0)
Azure.IoT Build 0:6ae2f7bca550 4004 {
Azure.IoT Build 0:6ae2f7bca550 4005 flow_destroy(*flow_handle);
Azure.IoT Build 0:6ae2f7bca550 4006 result = __LINE__;
Azure.IoT Build 0:6ae2f7bca550 4007 break;
Azure.IoT Build 0:6ae2f7bca550 4008 }
Azure.IoT Build 0:6ae2f7bca550 4009
Azure.IoT Build 0:6ae2f7bca550 4010 amqpvalue_destroy(item_value);
Azure.IoT Build 0:6ae2f7bca550 4011 }
Azure.IoT Build 0:6ae2f7bca550 4012 /* next-outgoing-id */
Azure.IoT Build 0:6ae2f7bca550 4013 item_value = amqpvalue_get_list_item(list_value, 2);
Azure.IoT Build 0:6ae2f7bca550 4014 if (item_value == NULL)
Azure.IoT Build 0:6ae2f7bca550 4015 {
Azure.IoT Build 0:6ae2f7bca550 4016 {
Azure.IoT Build 0:6ae2f7bca550 4017 flow_destroy(*flow_handle);
Azure.IoT Build 0:6ae2f7bca550 4018 result = __LINE__;
Azure.IoT Build 0:6ae2f7bca550 4019 break;
Azure.IoT Build 0:6ae2f7bca550 4020 }
Azure.IoT Build 0:6ae2f7bca550 4021 }
Azure.IoT Build 0:6ae2f7bca550 4022 else
Azure.IoT Build 0:6ae2f7bca550 4023 {
Azure.IoT Build 0:6ae2f7bca550 4024 transfer_number next_outgoing_id;
Azure.IoT Build 0:6ae2f7bca550 4025 if (amqpvalue_get_transfer_number(item_value, &next_outgoing_id) != 0)
Azure.IoT Build 0:6ae2f7bca550 4026 {
Azure.IoT Build 0:6ae2f7bca550 4027 flow_destroy(*flow_handle);
Azure.IoT Build 0:6ae2f7bca550 4028 result = __LINE__;
Azure.IoT Build 0:6ae2f7bca550 4029 break;
Azure.IoT Build 0:6ae2f7bca550 4030 }
Azure.IoT Build 0:6ae2f7bca550 4031
Azure.IoT Build 0:6ae2f7bca550 4032 amqpvalue_destroy(item_value);
Azure.IoT Build 0:6ae2f7bca550 4033 }
Azure.IoT Build 0:6ae2f7bca550 4034 /* outgoing-window */
Azure.IoT Build 0:6ae2f7bca550 4035 item_value = amqpvalue_get_list_item(list_value, 3);
Azure.IoT Build 0:6ae2f7bca550 4036 if (item_value == NULL)
Azure.IoT Build 0:6ae2f7bca550 4037 {
Azure.IoT Build 0:6ae2f7bca550 4038 {
Azure.IoT Build 0:6ae2f7bca550 4039 flow_destroy(*flow_handle);
Azure.IoT Build 0:6ae2f7bca550 4040 result = __LINE__;
Azure.IoT Build 0:6ae2f7bca550 4041 break;
Azure.IoT Build 0:6ae2f7bca550 4042 }
Azure.IoT Build 0:6ae2f7bca550 4043 }
Azure.IoT Build 0:6ae2f7bca550 4044 else
Azure.IoT Build 0:6ae2f7bca550 4045 {
Azure.IoT Build 0:6ae2f7bca550 4046 uint32_t outgoing_window;
Azure.IoT Build 0:6ae2f7bca550 4047 if (amqpvalue_get_uint(item_value, &outgoing_window) != 0)
Azure.IoT Build 0:6ae2f7bca550 4048 {
Azure.IoT Build 0:6ae2f7bca550 4049 flow_destroy(*flow_handle);
Azure.IoT Build 0:6ae2f7bca550 4050 result = __LINE__;
Azure.IoT Build 0:6ae2f7bca550 4051 break;
Azure.IoT Build 0:6ae2f7bca550 4052 }
Azure.IoT Build 0:6ae2f7bca550 4053
Azure.IoT Build 0:6ae2f7bca550 4054 amqpvalue_destroy(item_value);
Azure.IoT Build 0:6ae2f7bca550 4055 }
Azure.IoT Build 0:6ae2f7bca550 4056 /* handle */
Azure.IoT Build 0:6ae2f7bca550 4057 item_value = amqpvalue_get_list_item(list_value, 4);
Azure.IoT Build 0:6ae2f7bca550 4058 if (item_value == NULL)
Azure.IoT Build 0:6ae2f7bca550 4059 {
Azure.IoT Build 0:6ae2f7bca550 4060 /* do nothing */
Azure.IoT Build 0:6ae2f7bca550 4061 }
Azure.IoT Build 0:6ae2f7bca550 4062 else
Azure.IoT Build 0:6ae2f7bca550 4063 {
Azure.IoT Build 0:6ae2f7bca550 4064 handle handle;
Azure.IoT Build 0:6ae2f7bca550 4065 if (amqpvalue_get_handle(item_value, &handle) != 0)
Azure.IoT Build 0:6ae2f7bca550 4066 {
Azure.IoT Build 0:6ae2f7bca550 4067 if (amqpvalue_get_type(item_value) != AMQP_TYPE_NULL)
Azure.IoT Build 0:6ae2f7bca550 4068 {
Azure.IoT Build 0:6ae2f7bca550 4069 flow_destroy(*flow_handle);
Azure.IoT Build 0:6ae2f7bca550 4070 result = __LINE__;
Azure.IoT Build 0:6ae2f7bca550 4071 break;
Azure.IoT Build 0:6ae2f7bca550 4072 }
Azure.IoT Build 0:6ae2f7bca550 4073 }
Azure.IoT Build 0:6ae2f7bca550 4074
Azure.IoT Build 0:6ae2f7bca550 4075 amqpvalue_destroy(item_value);
Azure.IoT Build 0:6ae2f7bca550 4076 }
Azure.IoT Build 0:6ae2f7bca550 4077 /* delivery-count */
Azure.IoT Build 0:6ae2f7bca550 4078 item_value = amqpvalue_get_list_item(list_value, 5);
Azure.IoT Build 0:6ae2f7bca550 4079 if (item_value == NULL)
Azure.IoT Build 0:6ae2f7bca550 4080 {
Azure.IoT Build 0:6ae2f7bca550 4081 /* do nothing */
Azure.IoT Build 0:6ae2f7bca550 4082 }
Azure.IoT Build 0:6ae2f7bca550 4083 else
Azure.IoT Build 0:6ae2f7bca550 4084 {
Azure.IoT Build 0:6ae2f7bca550 4085 sequence_no delivery_count;
Azure.IoT Build 0:6ae2f7bca550 4086 if (amqpvalue_get_sequence_no(item_value, &delivery_count) != 0)
Azure.IoT Build 0:6ae2f7bca550 4087 {
Azure.IoT Build 0:6ae2f7bca550 4088 if (amqpvalue_get_type(item_value) != AMQP_TYPE_NULL)
Azure.IoT Build 0:6ae2f7bca550 4089 {
Azure.IoT Build 0:6ae2f7bca550 4090 flow_destroy(*flow_handle);
Azure.IoT Build 0:6ae2f7bca550 4091 result = __LINE__;
Azure.IoT Build 0:6ae2f7bca550 4092 break;
Azure.IoT Build 0:6ae2f7bca550 4093 }
Azure.IoT Build 0:6ae2f7bca550 4094 }
Azure.IoT Build 0:6ae2f7bca550 4095
Azure.IoT Build 0:6ae2f7bca550 4096 amqpvalue_destroy(item_value);
Azure.IoT Build 0:6ae2f7bca550 4097 }
Azure.IoT Build 0:6ae2f7bca550 4098 /* link-credit */
Azure.IoT Build 0:6ae2f7bca550 4099 item_value = amqpvalue_get_list_item(list_value, 6);
Azure.IoT Build 0:6ae2f7bca550 4100 if (item_value == NULL)
Azure.IoT Build 0:6ae2f7bca550 4101 {
Azure.IoT Build 0:6ae2f7bca550 4102 /* do nothing */
Azure.IoT Build 0:6ae2f7bca550 4103 }
Azure.IoT Build 0:6ae2f7bca550 4104 else
Azure.IoT Build 0:6ae2f7bca550 4105 {
Azure.IoT Build 0:6ae2f7bca550 4106 uint32_t link_credit;
Azure.IoT Build 0:6ae2f7bca550 4107 if (amqpvalue_get_uint(item_value, &link_credit) != 0)
Azure.IoT Build 0:6ae2f7bca550 4108 {
Azure.IoT Build 0:6ae2f7bca550 4109 if (amqpvalue_get_type(item_value) != AMQP_TYPE_NULL)
Azure.IoT Build 0:6ae2f7bca550 4110 {
Azure.IoT Build 0:6ae2f7bca550 4111 flow_destroy(*flow_handle);
Azure.IoT Build 0:6ae2f7bca550 4112 result = __LINE__;
Azure.IoT Build 0:6ae2f7bca550 4113 break;
Azure.IoT Build 0:6ae2f7bca550 4114 }
Azure.IoT Build 0:6ae2f7bca550 4115 }
Azure.IoT Build 0:6ae2f7bca550 4116
Azure.IoT Build 0:6ae2f7bca550 4117 amqpvalue_destroy(item_value);
Azure.IoT Build 0:6ae2f7bca550 4118 }
Azure.IoT Build 0:6ae2f7bca550 4119 /* available */
Azure.IoT Build 0:6ae2f7bca550 4120 item_value = amqpvalue_get_list_item(list_value, 7);
Azure.IoT Build 0:6ae2f7bca550 4121 if (item_value == NULL)
Azure.IoT Build 0:6ae2f7bca550 4122 {
Azure.IoT Build 0:6ae2f7bca550 4123 /* do nothing */
Azure.IoT Build 0:6ae2f7bca550 4124 }
Azure.IoT Build 0:6ae2f7bca550 4125 else
Azure.IoT Build 0:6ae2f7bca550 4126 {
Azure.IoT Build 0:6ae2f7bca550 4127 uint32_t available;
Azure.IoT Build 0:6ae2f7bca550 4128 if (amqpvalue_get_uint(item_value, &available) != 0)
Azure.IoT Build 0:6ae2f7bca550 4129 {
Azure.IoT Build 0:6ae2f7bca550 4130 if (amqpvalue_get_type(item_value) != AMQP_TYPE_NULL)
Azure.IoT Build 0:6ae2f7bca550 4131 {
Azure.IoT Build 0:6ae2f7bca550 4132 flow_destroy(*flow_handle);
Azure.IoT Build 0:6ae2f7bca550 4133 result = __LINE__;
Azure.IoT Build 0:6ae2f7bca550 4134 break;
Azure.IoT Build 0:6ae2f7bca550 4135 }
Azure.IoT Build 0:6ae2f7bca550 4136 }
Azure.IoT Build 0:6ae2f7bca550 4137
Azure.IoT Build 0:6ae2f7bca550 4138 amqpvalue_destroy(item_value);
Azure.IoT Build 0:6ae2f7bca550 4139 }
Azure.IoT Build 0:6ae2f7bca550 4140 /* drain */
Azure.IoT Build 0:6ae2f7bca550 4141 item_value = amqpvalue_get_list_item(list_value, 8);
Azure.IoT Build 0:6ae2f7bca550 4142 if (item_value == NULL)
Azure.IoT Build 0:6ae2f7bca550 4143 {
Azure.IoT Build 0:6ae2f7bca550 4144 /* do nothing */
Azure.IoT Build 0:6ae2f7bca550 4145 }
Azure.IoT Build 0:6ae2f7bca550 4146 else
Azure.IoT Build 0:6ae2f7bca550 4147 {
Azure.IoT Build 0:6ae2f7bca550 4148 bool drain;
Azure.IoT Build 0:6ae2f7bca550 4149 if (amqpvalue_get_boolean(item_value, &drain) != 0)
Azure.IoT Build 0:6ae2f7bca550 4150 {
Azure.IoT Build 0:6ae2f7bca550 4151 if (amqpvalue_get_type(item_value) != AMQP_TYPE_NULL)
Azure.IoT Build 0:6ae2f7bca550 4152 {
Azure.IoT Build 0:6ae2f7bca550 4153 flow_destroy(*flow_handle);
Azure.IoT Build 0:6ae2f7bca550 4154 result = __LINE__;
Azure.IoT Build 0:6ae2f7bca550 4155 break;
Azure.IoT Build 0:6ae2f7bca550 4156 }
Azure.IoT Build 0:6ae2f7bca550 4157 }
Azure.IoT Build 0:6ae2f7bca550 4158
Azure.IoT Build 0:6ae2f7bca550 4159 amqpvalue_destroy(item_value);
Azure.IoT Build 0:6ae2f7bca550 4160 }
Azure.IoT Build 0:6ae2f7bca550 4161 /* echo */
Azure.IoT Build 0:6ae2f7bca550 4162 item_value = amqpvalue_get_list_item(list_value, 9);
Azure.IoT Build 0:6ae2f7bca550 4163 if (item_value == NULL)
Azure.IoT Build 0:6ae2f7bca550 4164 {
Azure.IoT Build 0:6ae2f7bca550 4165 /* do nothing */
Azure.IoT Build 0:6ae2f7bca550 4166 }
Azure.IoT Build 0:6ae2f7bca550 4167 else
Azure.IoT Build 0:6ae2f7bca550 4168 {
Azure.IoT Build 0:6ae2f7bca550 4169 bool echo;
Azure.IoT Build 0:6ae2f7bca550 4170 if (amqpvalue_get_boolean(item_value, &echo) != 0)
Azure.IoT Build 0:6ae2f7bca550 4171 {
Azure.IoT Build 0:6ae2f7bca550 4172 if (amqpvalue_get_type(item_value) != AMQP_TYPE_NULL)
Azure.IoT Build 0:6ae2f7bca550 4173 {
Azure.IoT Build 0:6ae2f7bca550 4174 flow_destroy(*flow_handle);
Azure.IoT Build 0:6ae2f7bca550 4175 result = __LINE__;
Azure.IoT Build 0:6ae2f7bca550 4176 break;
Azure.IoT Build 0:6ae2f7bca550 4177 }
Azure.IoT Build 0:6ae2f7bca550 4178 }
Azure.IoT Build 0:6ae2f7bca550 4179
Azure.IoT Build 0:6ae2f7bca550 4180 amqpvalue_destroy(item_value);
Azure.IoT Build 0:6ae2f7bca550 4181 }
Azure.IoT Build 0:6ae2f7bca550 4182 /* properties */
Azure.IoT Build 0:6ae2f7bca550 4183 item_value = amqpvalue_get_list_item(list_value, 10);
Azure.IoT Build 0:6ae2f7bca550 4184 if (item_value == NULL)
Azure.IoT Build 0:6ae2f7bca550 4185 {
Azure.IoT Build 0:6ae2f7bca550 4186 /* do nothing */
Azure.IoT Build 0:6ae2f7bca550 4187 }
Azure.IoT Build 0:6ae2f7bca550 4188 else
Azure.IoT Build 0:6ae2f7bca550 4189 {
Azure.IoT Build 0:6ae2f7bca550 4190 fields properties;
Azure.IoT Build 0:6ae2f7bca550 4191 if (amqpvalue_get_fields(item_value, &properties) != 0)
Azure.IoT Build 0:6ae2f7bca550 4192 {
Azure.IoT Build 0:6ae2f7bca550 4193 if (amqpvalue_get_type(item_value) != AMQP_TYPE_NULL)
Azure.IoT Build 0:6ae2f7bca550 4194 {
Azure.IoT Build 0:6ae2f7bca550 4195 flow_destroy(*flow_handle);
Azure.IoT Build 0:6ae2f7bca550 4196 result = __LINE__;
Azure.IoT Build 0:6ae2f7bca550 4197 break;
Azure.IoT Build 0:6ae2f7bca550 4198 }
Azure.IoT Build 0:6ae2f7bca550 4199 }
Azure.IoT Build 0:6ae2f7bca550 4200
Azure.IoT Build 0:6ae2f7bca550 4201 amqpvalue_destroy(item_value);
Azure.IoT Build 0:6ae2f7bca550 4202 }
Azure.IoT Build 0:6ae2f7bca550 4203
Azure.IoT Build 0:6ae2f7bca550 4204 flow_instance->composite_value = amqpvalue_clone(value);
Azure.IoT Build 0:6ae2f7bca550 4205
Azure.IoT Build 0:6ae2f7bca550 4206 result = 0;
Azure.IoT Build 0:6ae2f7bca550 4207 } while (0);
Azure.IoT Build 0:6ae2f7bca550 4208 }
Azure.IoT Build 0:6ae2f7bca550 4209 }
Azure.IoT Build 0:6ae2f7bca550 4210
Azure.IoT Build 0:6ae2f7bca550 4211 return result;
Azure.IoT Build 0:6ae2f7bca550 4212 }
Azure.IoT Build 0:6ae2f7bca550 4213
Azure.IoT Build 0:6ae2f7bca550 4214 int flow_get_next_incoming_id(FLOW_HANDLE flow, transfer_number* next_incoming_id_value)
Azure.IoT Build 0:6ae2f7bca550 4215 {
Azure.IoT Build 0:6ae2f7bca550 4216 int result;
Azure.IoT Build 0:6ae2f7bca550 4217
Azure.IoT Build 0:6ae2f7bca550 4218 if (flow == NULL)
Azure.IoT Build 0:6ae2f7bca550 4219 {
Azure.IoT Build 0:6ae2f7bca550 4220 result = __LINE__;
Azure.IoT Build 0:6ae2f7bca550 4221 }
Azure.IoT Build 0:6ae2f7bca550 4222 else
Azure.IoT Build 0:6ae2f7bca550 4223 {
Azure.IoT Build 0:6ae2f7bca550 4224 FLOW_INSTANCE* flow_instance = (FLOW_INSTANCE*)flow;
Azure.IoT Build 0:6ae2f7bca550 4225 AMQP_VALUE item_value = amqpvalue_get_composite_item_in_place(flow_instance->composite_value, 0);
Azure.IoT Build 0:6ae2f7bca550 4226 if (item_value == NULL)
Azure.IoT Build 0:6ae2f7bca550 4227 {
Azure.IoT Build 0:6ae2f7bca550 4228 result = __LINE__;
Azure.IoT Build 0:6ae2f7bca550 4229 }
Azure.IoT Build 0:6ae2f7bca550 4230 else
Azure.IoT Build 0:6ae2f7bca550 4231 {
Azure.IoT Build 0:6ae2f7bca550 4232 if (amqpvalue_get_transfer_number(item_value, next_incoming_id_value) != 0)
Azure.IoT Build 0:6ae2f7bca550 4233 {
AzureIoTClient 16:22a72cf8e416 4234 result = __LINE__;
Azure.IoT Build 0:6ae2f7bca550 4235 }
Azure.IoT Build 0:6ae2f7bca550 4236 else
Azure.IoT Build 0:6ae2f7bca550 4237 {
Azure.IoT Build 0:6ae2f7bca550 4238 result = 0;
Azure.IoT Build 0:6ae2f7bca550 4239 }
Azure.IoT Build 0:6ae2f7bca550 4240 }
Azure.IoT Build 0:6ae2f7bca550 4241 }
Azure.IoT Build 0:6ae2f7bca550 4242
Azure.IoT Build 0:6ae2f7bca550 4243 return result;
Azure.IoT Build 0:6ae2f7bca550 4244 }
Azure.IoT Build 0:6ae2f7bca550 4245
Azure.IoT Build 0:6ae2f7bca550 4246 int flow_set_next_incoming_id(FLOW_HANDLE flow, transfer_number next_incoming_id_value)
Azure.IoT Build 0:6ae2f7bca550 4247 {
Azure.IoT Build 0:6ae2f7bca550 4248 int result;
Azure.IoT Build 0:6ae2f7bca550 4249
Azure.IoT Build 0:6ae2f7bca550 4250 if (flow == NULL)
Azure.IoT Build 0:6ae2f7bca550 4251 {
Azure.IoT Build 0:6ae2f7bca550 4252 result = __LINE__;
Azure.IoT Build 0:6ae2f7bca550 4253 }
Azure.IoT Build 0:6ae2f7bca550 4254 else
Azure.IoT Build 0:6ae2f7bca550 4255 {
Azure.IoT Build 0:6ae2f7bca550 4256 FLOW_INSTANCE* flow_instance = (FLOW_INSTANCE*)flow;
Azure.IoT Build 0:6ae2f7bca550 4257 AMQP_VALUE next_incoming_id_amqp_value = amqpvalue_create_transfer_number(next_incoming_id_value);
Azure.IoT Build 0:6ae2f7bca550 4258 if (next_incoming_id_amqp_value == NULL)
Azure.IoT Build 0:6ae2f7bca550 4259 {
Azure.IoT Build 0:6ae2f7bca550 4260 result = __LINE__;
Azure.IoT Build 0:6ae2f7bca550 4261 }
Azure.IoT Build 0:6ae2f7bca550 4262 else
Azure.IoT Build 0:6ae2f7bca550 4263 {
Azure.IoT Build 0:6ae2f7bca550 4264 if (amqpvalue_set_composite_item(flow_instance->composite_value, 0, next_incoming_id_amqp_value) != 0)
Azure.IoT Build 0:6ae2f7bca550 4265 {
Azure.IoT Build 0:6ae2f7bca550 4266 result = __LINE__;
Azure.IoT Build 0:6ae2f7bca550 4267 }
Azure.IoT Build 0:6ae2f7bca550 4268 else
Azure.IoT Build 0:6ae2f7bca550 4269 {
Azure.IoT Build 0:6ae2f7bca550 4270 result = 0;
Azure.IoT Build 0:6ae2f7bca550 4271 }
Azure.IoT Build 0:6ae2f7bca550 4272
Azure.IoT Build 0:6ae2f7bca550 4273 amqpvalue_destroy(next_incoming_id_amqp_value);
Azure.IoT Build 0:6ae2f7bca550 4274 }
Azure.IoT Build 0:6ae2f7bca550 4275 }
Azure.IoT Build 0:6ae2f7bca550 4276
Azure.IoT Build 0:6ae2f7bca550 4277 return result;
Azure.IoT Build 0:6ae2f7bca550 4278 }
Azure.IoT Build 0:6ae2f7bca550 4279
Azure.IoT Build 0:6ae2f7bca550 4280 int flow_get_incoming_window(FLOW_HANDLE flow, uint32_t* incoming_window_value)
Azure.IoT Build 0:6ae2f7bca550 4281 {
Azure.IoT Build 0:6ae2f7bca550 4282 int result;
Azure.IoT Build 0:6ae2f7bca550 4283
Azure.IoT Build 0:6ae2f7bca550 4284 if (flow == NULL)
Azure.IoT Build 0:6ae2f7bca550 4285 {
Azure.IoT Build 0:6ae2f7bca550 4286 result = __LINE__;
Azure.IoT Build 0:6ae2f7bca550 4287 }
Azure.IoT Build 0:6ae2f7bca550 4288 else
Azure.IoT Build 0:6ae2f7bca550 4289 {
Azure.IoT Build 0:6ae2f7bca550 4290 FLOW_INSTANCE* flow_instance = (FLOW_INSTANCE*)flow;
Azure.IoT Build 0:6ae2f7bca550 4291 AMQP_VALUE item_value = amqpvalue_get_composite_item_in_place(flow_instance->composite_value, 1);
Azure.IoT Build 0:6ae2f7bca550 4292 if (item_value == NULL)
Azure.IoT Build 0:6ae2f7bca550 4293 {
Azure.IoT Build 0:6ae2f7bca550 4294 result = __LINE__;
Azure.IoT Build 0:6ae2f7bca550 4295 }
Azure.IoT Build 0:6ae2f7bca550 4296 else
Azure.IoT Build 0:6ae2f7bca550 4297 {
Azure.IoT Build 0:6ae2f7bca550 4298 if (amqpvalue_get_uint(item_value, incoming_window_value) != 0)
Azure.IoT Build 0:6ae2f7bca550 4299 {
AzureIoTClient 16:22a72cf8e416 4300 result = __LINE__;
Azure.IoT Build 0:6ae2f7bca550 4301 }
Azure.IoT Build 0:6ae2f7bca550 4302 else
Azure.IoT Build 0:6ae2f7bca550 4303 {
Azure.IoT Build 0:6ae2f7bca550 4304 result = 0;
Azure.IoT Build 0:6ae2f7bca550 4305 }
Azure.IoT Build 0:6ae2f7bca550 4306 }
Azure.IoT Build 0:6ae2f7bca550 4307 }
Azure.IoT Build 0:6ae2f7bca550 4308
Azure.IoT Build 0:6ae2f7bca550 4309 return result;
Azure.IoT Build 0:6ae2f7bca550 4310 }
Azure.IoT Build 0:6ae2f7bca550 4311
Azure.IoT Build 0:6ae2f7bca550 4312 int flow_set_incoming_window(FLOW_HANDLE flow, uint32_t incoming_window_value)
Azure.IoT Build 0:6ae2f7bca550 4313 {
Azure.IoT Build 0:6ae2f7bca550 4314 int result;
Azure.IoT Build 0:6ae2f7bca550 4315
Azure.IoT Build 0:6ae2f7bca550 4316 if (flow == NULL)
Azure.IoT Build 0:6ae2f7bca550 4317 {
Azure.IoT Build 0:6ae2f7bca550 4318 result = __LINE__;
Azure.IoT Build 0:6ae2f7bca550 4319 }
Azure.IoT Build 0:6ae2f7bca550 4320 else
Azure.IoT Build 0:6ae2f7bca550 4321 {
Azure.IoT Build 0:6ae2f7bca550 4322 FLOW_INSTANCE* flow_instance = (FLOW_INSTANCE*)flow;
Azure.IoT Build 0:6ae2f7bca550 4323 AMQP_VALUE incoming_window_amqp_value = amqpvalue_create_uint(incoming_window_value);
Azure.IoT Build 0:6ae2f7bca550 4324 if (incoming_window_amqp_value == NULL)
Azure.IoT Build 0:6ae2f7bca550 4325 {
Azure.IoT Build 0:6ae2f7bca550 4326 result = __LINE__;
Azure.IoT Build 0:6ae2f7bca550 4327 }
Azure.IoT Build 0:6ae2f7bca550 4328 else
Azure.IoT Build 0:6ae2f7bca550 4329 {
Azure.IoT Build 0:6ae2f7bca550 4330 if (amqpvalue_set_composite_item(flow_instance->composite_value, 1, incoming_window_amqp_value) != 0)
Azure.IoT Build 0:6ae2f7bca550 4331 {
Azure.IoT Build 0:6ae2f7bca550 4332 result = __LINE__;
Azure.IoT Build 0:6ae2f7bca550 4333 }
Azure.IoT Build 0:6ae2f7bca550 4334 else
Azure.IoT Build 0:6ae2f7bca550 4335 {
Azure.IoT Build 0:6ae2f7bca550 4336 result = 0;
Azure.IoT Build 0:6ae2f7bca550 4337 }
Azure.IoT Build 0:6ae2f7bca550 4338
Azure.IoT Build 0:6ae2f7bca550 4339 amqpvalue_destroy(incoming_window_amqp_value);
Azure.IoT Build 0:6ae2f7bca550 4340 }
Azure.IoT Build 0:6ae2f7bca550 4341 }
Azure.IoT Build 0:6ae2f7bca550 4342
Azure.IoT Build 0:6ae2f7bca550 4343 return result;
Azure.IoT Build 0:6ae2f7bca550 4344 }
Azure.IoT Build 0:6ae2f7bca550 4345
Azure.IoT Build 0:6ae2f7bca550 4346 int flow_get_next_outgoing_id(FLOW_HANDLE flow, transfer_number* next_outgoing_id_value)
Azure.IoT Build 0:6ae2f7bca550 4347 {
Azure.IoT Build 0:6ae2f7bca550 4348 int result;
Azure.IoT Build 0:6ae2f7bca550 4349
Azure.IoT Build 0:6ae2f7bca550 4350 if (flow == NULL)
Azure.IoT Build 0:6ae2f7bca550 4351 {
Azure.IoT Build 0:6ae2f7bca550 4352 result = __LINE__;
Azure.IoT Build 0:6ae2f7bca550 4353 }
Azure.IoT Build 0:6ae2f7bca550 4354 else
Azure.IoT Build 0:6ae2f7bca550 4355 {
Azure.IoT Build 0:6ae2f7bca550 4356 FLOW_INSTANCE* flow_instance = (FLOW_INSTANCE*)flow;
Azure.IoT Build 0:6ae2f7bca550 4357 AMQP_VALUE item_value = amqpvalue_get_composite_item_in_place(flow_instance->composite_value, 2);
Azure.IoT Build 0:6ae2f7bca550 4358 if (item_value == NULL)
Azure.IoT Build 0:6ae2f7bca550 4359 {
Azure.IoT Build 0:6ae2f7bca550 4360 result = __LINE__;
Azure.IoT Build 0:6ae2f7bca550 4361 }
Azure.IoT Build 0:6ae2f7bca550 4362 else
Azure.IoT Build 0:6ae2f7bca550 4363 {
Azure.IoT Build 0:6ae2f7bca550 4364 if (amqpvalue_get_transfer_number(item_value, next_outgoing_id_value) != 0)
Azure.IoT Build 0:6ae2f7bca550 4365 {
AzureIoTClient 16:22a72cf8e416 4366 result = __LINE__;
Azure.IoT Build 0:6ae2f7bca550 4367 }
Azure.IoT Build 0:6ae2f7bca550 4368 else
Azure.IoT Build 0:6ae2f7bca550 4369 {
Azure.IoT Build 0:6ae2f7bca550 4370 result = 0;
Azure.IoT Build 0:6ae2f7bca550 4371 }
Azure.IoT Build 0:6ae2f7bca550 4372 }
Azure.IoT Build 0:6ae2f7bca550 4373 }
Azure.IoT Build 0:6ae2f7bca550 4374
Azure.IoT Build 0:6ae2f7bca550 4375 return result;
Azure.IoT Build 0:6ae2f7bca550 4376 }
Azure.IoT Build 0:6ae2f7bca550 4377
Azure.IoT Build 0:6ae2f7bca550 4378 int flow_set_next_outgoing_id(FLOW_HANDLE flow, transfer_number next_outgoing_id_value)
Azure.IoT Build 0:6ae2f7bca550 4379 {
Azure.IoT Build 0:6ae2f7bca550 4380 int result;
Azure.IoT Build 0:6ae2f7bca550 4381
Azure.IoT Build 0:6ae2f7bca550 4382 if (flow == NULL)
Azure.IoT Build 0:6ae2f7bca550 4383 {
Azure.IoT Build 0:6ae2f7bca550 4384 result = __LINE__;
Azure.IoT Build 0:6ae2f7bca550 4385 }
Azure.IoT Build 0:6ae2f7bca550 4386 else
Azure.IoT Build 0:6ae2f7bca550 4387 {
Azure.IoT Build 0:6ae2f7bca550 4388 FLOW_INSTANCE* flow_instance = (FLOW_INSTANCE*)flow;
Azure.IoT Build 0:6ae2f7bca550 4389 AMQP_VALUE next_outgoing_id_amqp_value = amqpvalue_create_transfer_number(next_outgoing_id_value);
Azure.IoT Build 0:6ae2f7bca550 4390 if (next_outgoing_id_amqp_value == NULL)
Azure.IoT Build 0:6ae2f7bca550 4391 {
Azure.IoT Build 0:6ae2f7bca550 4392 result = __LINE__;
Azure.IoT Build 0:6ae2f7bca550 4393 }
Azure.IoT Build 0:6ae2f7bca550 4394 else
Azure.IoT Build 0:6ae2f7bca550 4395 {
Azure.IoT Build 0:6ae2f7bca550 4396 if (amqpvalue_set_composite_item(flow_instance->composite_value, 2, next_outgoing_id_amqp_value) != 0)
Azure.IoT Build 0:6ae2f7bca550 4397 {
Azure.IoT Build 0:6ae2f7bca550 4398 result = __LINE__;
Azure.IoT Build 0:6ae2f7bca550 4399 }
Azure.IoT Build 0:6ae2f7bca550 4400 else
Azure.IoT Build 0:6ae2f7bca550 4401 {
Azure.IoT Build 0:6ae2f7bca550 4402 result = 0;
Azure.IoT Build 0:6ae2f7bca550 4403 }
Azure.IoT Build 0:6ae2f7bca550 4404
Azure.IoT Build 0:6ae2f7bca550 4405 amqpvalue_destroy(next_outgoing_id_amqp_value);
Azure.IoT Build 0:6ae2f7bca550 4406 }
Azure.IoT Build 0:6ae2f7bca550 4407 }
Azure.IoT Build 0:6ae2f7bca550 4408
Azure.IoT Build 0:6ae2f7bca550 4409 return result;
Azure.IoT Build 0:6ae2f7bca550 4410 }
Azure.IoT Build 0:6ae2f7bca550 4411
Azure.IoT Build 0:6ae2f7bca550 4412 int flow_get_outgoing_window(FLOW_HANDLE flow, uint32_t* outgoing_window_value)
Azure.IoT Build 0:6ae2f7bca550 4413 {
Azure.IoT Build 0:6ae2f7bca550 4414 int result;
Azure.IoT Build 0:6ae2f7bca550 4415
Azure.IoT Build 0:6ae2f7bca550 4416 if (flow == NULL)
Azure.IoT Build 0:6ae2f7bca550 4417 {
Azure.IoT Build 0:6ae2f7bca550 4418 result = __LINE__;
Azure.IoT Build 0:6ae2f7bca550 4419 }
Azure.IoT Build 0:6ae2f7bca550 4420 else
Azure.IoT Build 0:6ae2f7bca550 4421 {
Azure.IoT Build 0:6ae2f7bca550 4422 FLOW_INSTANCE* flow_instance = (FLOW_INSTANCE*)flow;
Azure.IoT Build 0:6ae2f7bca550 4423 AMQP_VALUE item_value = amqpvalue_get_composite_item_in_place(flow_instance->composite_value, 3);
Azure.IoT Build 0:6ae2f7bca550 4424 if (item_value == NULL)
Azure.IoT Build 0:6ae2f7bca550 4425 {
Azure.IoT Build 0:6ae2f7bca550 4426 result = __LINE__;
Azure.IoT Build 0:6ae2f7bca550 4427 }
Azure.IoT Build 0:6ae2f7bca550 4428 else
Azure.IoT Build 0:6ae2f7bca550 4429 {
Azure.IoT Build 0:6ae2f7bca550 4430 if (amqpvalue_get_uint(item_value, outgoing_window_value) != 0)
Azure.IoT Build 0:6ae2f7bca550 4431 {
AzureIoTClient 16:22a72cf8e416 4432 result = __LINE__;
Azure.IoT Build 0:6ae2f7bca550 4433 }
Azure.IoT Build 0:6ae2f7bca550 4434 else
Azure.IoT Build 0:6ae2f7bca550 4435 {
Azure.IoT Build 0:6ae2f7bca550 4436 result = 0;
Azure.IoT Build 0:6ae2f7bca550 4437 }
Azure.IoT Build 0:6ae2f7bca550 4438 }
Azure.IoT Build 0:6ae2f7bca550 4439 }
Azure.IoT Build 0:6ae2f7bca550 4440
Azure.IoT Build 0:6ae2f7bca550 4441 return result;
Azure.IoT Build 0:6ae2f7bca550 4442 }
Azure.IoT Build 0:6ae2f7bca550 4443
Azure.IoT Build 0:6ae2f7bca550 4444 int flow_set_outgoing_window(FLOW_HANDLE flow, uint32_t outgoing_window_value)
Azure.IoT Build 0:6ae2f7bca550 4445 {
Azure.IoT Build 0:6ae2f7bca550 4446 int result;
Azure.IoT Build 0:6ae2f7bca550 4447
Azure.IoT Build 0:6ae2f7bca550 4448 if (flow == NULL)
Azure.IoT Build 0:6ae2f7bca550 4449 {
Azure.IoT Build 0:6ae2f7bca550 4450 result = __LINE__;
Azure.IoT Build 0:6ae2f7bca550 4451 }
Azure.IoT Build 0:6ae2f7bca550 4452 else
Azure.IoT Build 0:6ae2f7bca550 4453 {
Azure.IoT Build 0:6ae2f7bca550 4454 FLOW_INSTANCE* flow_instance = (FLOW_INSTANCE*)flow;
Azure.IoT Build 0:6ae2f7bca550 4455 AMQP_VALUE outgoing_window_amqp_value = amqpvalue_create_uint(outgoing_window_value);
Azure.IoT Build 0:6ae2f7bca550 4456 if (outgoing_window_amqp_value == NULL)
Azure.IoT Build 0:6ae2f7bca550 4457 {
Azure.IoT Build 0:6ae2f7bca550 4458 result = __LINE__;
Azure.IoT Build 0:6ae2f7bca550 4459 }
Azure.IoT Build 0:6ae2f7bca550 4460 else
Azure.IoT Build 0:6ae2f7bca550 4461 {
Azure.IoT Build 0:6ae2f7bca550 4462 if (amqpvalue_set_composite_item(flow_instance->composite_value, 3, outgoing_window_amqp_value) != 0)
Azure.IoT Build 0:6ae2f7bca550 4463 {
Azure.IoT Build 0:6ae2f7bca550 4464 result = __LINE__;
Azure.IoT Build 0:6ae2f7bca550 4465 }
Azure.IoT Build 0:6ae2f7bca550 4466 else
Azure.IoT Build 0:6ae2f7bca550 4467 {
Azure.IoT Build 0:6ae2f7bca550 4468 result = 0;
Azure.IoT Build 0:6ae2f7bca550 4469 }
Azure.IoT Build 0:6ae2f7bca550 4470
Azure.IoT Build 0:6ae2f7bca550 4471 amqpvalue_destroy(outgoing_window_amqp_value);
Azure.IoT Build 0:6ae2f7bca550 4472 }
Azure.IoT Build 0:6ae2f7bca550 4473 }
Azure.IoT Build 0:6ae2f7bca550 4474
Azure.IoT Build 0:6ae2f7bca550 4475 return result;
Azure.IoT Build 0:6ae2f7bca550 4476 }
Azure.IoT Build 0:6ae2f7bca550 4477
Azure.IoT Build 0:6ae2f7bca550 4478 int flow_get_handle(FLOW_HANDLE flow, handle* handle_value)
Azure.IoT Build 0:6ae2f7bca550 4479 {
Azure.IoT Build 0:6ae2f7bca550 4480 int result;
Azure.IoT Build 0:6ae2f7bca550 4481
Azure.IoT Build 0:6ae2f7bca550 4482 if (flow == NULL)
Azure.IoT Build 0:6ae2f7bca550 4483 {
Azure.IoT Build 0:6ae2f7bca550 4484 result = __LINE__;
Azure.IoT Build 0:6ae2f7bca550 4485 }
Azure.IoT Build 0:6ae2f7bca550 4486 else
Azure.IoT Build 0:6ae2f7bca550 4487 {
Azure.IoT Build 0:6ae2f7bca550 4488 FLOW_INSTANCE* flow_instance = (FLOW_INSTANCE*)flow;
Azure.IoT Build 0:6ae2f7bca550 4489 AMQP_VALUE item_value = amqpvalue_get_composite_item_in_place(flow_instance->composite_value, 4);
Azure.IoT Build 0:6ae2f7bca550 4490 if (item_value == NULL)
Azure.IoT Build 0:6ae2f7bca550 4491 {
Azure.IoT Build 0:6ae2f7bca550 4492 result = __LINE__;
Azure.IoT Build 0:6ae2f7bca550 4493 }
Azure.IoT Build 0:6ae2f7bca550 4494 else
Azure.IoT Build 0:6ae2f7bca550 4495 {
Azure.IoT Build 0:6ae2f7bca550 4496 if (amqpvalue_get_handle(item_value, handle_value) != 0)
Azure.IoT Build 0:6ae2f7bca550 4497 {
AzureIoTClient 16:22a72cf8e416 4498 result = __LINE__;
Azure.IoT Build 0:6ae2f7bca550 4499 }
Azure.IoT Build 0:6ae2f7bca550 4500 else
Azure.IoT Build 0:6ae2f7bca550 4501 {
Azure.IoT Build 0:6ae2f7bca550 4502 result = 0;
Azure.IoT Build 0:6ae2f7bca550 4503 }
Azure.IoT Build 0:6ae2f7bca550 4504 }
Azure.IoT Build 0:6ae2f7bca550 4505 }
Azure.IoT Build 0:6ae2f7bca550 4506
Azure.IoT Build 0:6ae2f7bca550 4507 return result;
Azure.IoT Build 0:6ae2f7bca550 4508 }
Azure.IoT Build 0:6ae2f7bca550 4509
Azure.IoT Build 0:6ae2f7bca550 4510 int flow_set_handle(FLOW_HANDLE flow, handle handle_value)
Azure.IoT Build 0:6ae2f7bca550 4511 {
Azure.IoT Build 0:6ae2f7bca550 4512 int result;
Azure.IoT Build 0:6ae2f7bca550 4513
Azure.IoT Build 0:6ae2f7bca550 4514 if (flow == NULL)
Azure.IoT Build 0:6ae2f7bca550 4515 {
Azure.IoT Build 0:6ae2f7bca550 4516 result = __LINE__;
Azure.IoT Build 0:6ae2f7bca550 4517 }
Azure.IoT Build 0:6ae2f7bca550 4518 else
Azure.IoT Build 0:6ae2f7bca550 4519 {
Azure.IoT Build 0:6ae2f7bca550 4520 FLOW_INSTANCE* flow_instance = (FLOW_INSTANCE*)flow;
Azure.IoT Build 0:6ae2f7bca550 4521 AMQP_VALUE handle_amqp_value = amqpvalue_create_handle(handle_value);
Azure.IoT Build 0:6ae2f7bca550 4522 if (handle_amqp_value == NULL)
Azure.IoT Build 0:6ae2f7bca550 4523 {
Azure.IoT Build 0:6ae2f7bca550 4524 result = __LINE__;
Azure.IoT Build 0:6ae2f7bca550 4525 }
Azure.IoT Build 0:6ae2f7bca550 4526 else
Azure.IoT Build 0:6ae2f7bca550 4527 {
Azure.IoT Build 0:6ae2f7bca550 4528 if (amqpvalue_set_composite_item(flow_instance->composite_value, 4, handle_amqp_value) != 0)
Azure.IoT Build 0:6ae2f7bca550 4529 {
Azure.IoT Build 0:6ae2f7bca550 4530 result = __LINE__;
Azure.IoT Build 0:6ae2f7bca550 4531 }
Azure.IoT Build 0:6ae2f7bca550 4532 else
Azure.IoT Build 0:6ae2f7bca550 4533 {
Azure.IoT Build 0:6ae2f7bca550 4534 result = 0;
Azure.IoT Build 0:6ae2f7bca550 4535 }
Azure.IoT Build 0:6ae2f7bca550 4536
Azure.IoT Build 0:6ae2f7bca550 4537 amqpvalue_destroy(handle_amqp_value);
Azure.IoT Build 0:6ae2f7bca550 4538 }
Azure.IoT Build 0:6ae2f7bca550 4539 }
Azure.IoT Build 0:6ae2f7bca550 4540
Azure.IoT Build 0:6ae2f7bca550 4541 return result;
Azure.IoT Build 0:6ae2f7bca550 4542 }
Azure.IoT Build 0:6ae2f7bca550 4543
Azure.IoT Build 0:6ae2f7bca550 4544 int flow_get_delivery_count(FLOW_HANDLE flow, sequence_no* delivery_count_value)
Azure.IoT Build 0:6ae2f7bca550 4545 {
Azure.IoT Build 0:6ae2f7bca550 4546 int result;
Azure.IoT Build 0:6ae2f7bca550 4547
Azure.IoT Build 0:6ae2f7bca550 4548 if (flow == NULL)
Azure.IoT Build 0:6ae2f7bca550 4549 {
Azure.IoT Build 0:6ae2f7bca550 4550 result = __LINE__;
Azure.IoT Build 0:6ae2f7bca550 4551 }
Azure.IoT Build 0:6ae2f7bca550 4552 else
Azure.IoT Build 0:6ae2f7bca550 4553 {
Azure.IoT Build 0:6ae2f7bca550 4554 FLOW_INSTANCE* flow_instance = (FLOW_INSTANCE*)flow;
Azure.IoT Build 0:6ae2f7bca550 4555 AMQP_VALUE item_value = amqpvalue_get_composite_item_in_place(flow_instance->composite_value, 5);
Azure.IoT Build 0:6ae2f7bca550 4556 if (item_value == NULL)
Azure.IoT Build 0:6ae2f7bca550 4557 {
Azure.IoT Build 0:6ae2f7bca550 4558 result = __LINE__;
Azure.IoT Build 0:6ae2f7bca550 4559 }
Azure.IoT Build 0:6ae2f7bca550 4560 else
Azure.IoT Build 0:6ae2f7bca550 4561 {
Azure.IoT Build 0:6ae2f7bca550 4562 if (amqpvalue_get_sequence_no(item_value, delivery_count_value) != 0)
Azure.IoT Build 0:6ae2f7bca550 4563 {
AzureIoTClient 16:22a72cf8e416 4564 result = __LINE__;
Azure.IoT Build 0:6ae2f7bca550 4565 }
Azure.IoT Build 0:6ae2f7bca550 4566 else
Azure.IoT Build 0:6ae2f7bca550 4567 {
Azure.IoT Build 0:6ae2f7bca550 4568 result = 0;
Azure.IoT Build 0:6ae2f7bca550 4569 }
Azure.IoT Build 0:6ae2f7bca550 4570 }
Azure.IoT Build 0:6ae2f7bca550 4571 }
Azure.IoT Build 0:6ae2f7bca550 4572
Azure.IoT Build 0:6ae2f7bca550 4573 return result;
Azure.IoT Build 0:6ae2f7bca550 4574 }
Azure.IoT Build 0:6ae2f7bca550 4575
Azure.IoT Build 0:6ae2f7bca550 4576 int flow_set_delivery_count(FLOW_HANDLE flow, sequence_no delivery_count_value)
Azure.IoT Build 0:6ae2f7bca550 4577 {
Azure.IoT Build 0:6ae2f7bca550 4578 int result;
Azure.IoT Build 0:6ae2f7bca550 4579
Azure.IoT Build 0:6ae2f7bca550 4580 if (flow == NULL)
Azure.IoT Build 0:6ae2f7bca550 4581 {
Azure.IoT Build 0:6ae2f7bca550 4582 result = __LINE__;
Azure.IoT Build 0:6ae2f7bca550 4583 }
Azure.IoT Build 0:6ae2f7bca550 4584 else
Azure.IoT Build 0:6ae2f7bca550 4585 {
Azure.IoT Build 0:6ae2f7bca550 4586 FLOW_INSTANCE* flow_instance = (FLOW_INSTANCE*)flow;
Azure.IoT Build 0:6ae2f7bca550 4587 AMQP_VALUE delivery_count_amqp_value = amqpvalue_create_sequence_no(delivery_count_value);
Azure.IoT Build 0:6ae2f7bca550 4588 if (delivery_count_amqp_value == NULL)
Azure.IoT Build 0:6ae2f7bca550 4589 {
Azure.IoT Build 0:6ae2f7bca550 4590 result = __LINE__;
Azure.IoT Build 0:6ae2f7bca550 4591 }
Azure.IoT Build 0:6ae2f7bca550 4592 else
Azure.IoT Build 0:6ae2f7bca550 4593 {
Azure.IoT Build 0:6ae2f7bca550 4594 if (amqpvalue_set_composite_item(flow_instance->composite_value, 5, delivery_count_amqp_value) != 0)
Azure.IoT Build 0:6ae2f7bca550 4595 {
Azure.IoT Build 0:6ae2f7bca550 4596 result = __LINE__;
Azure.IoT Build 0:6ae2f7bca550 4597 }
Azure.IoT Build 0:6ae2f7bca550 4598 else
Azure.IoT Build 0:6ae2f7bca550 4599 {
Azure.IoT Build 0:6ae2f7bca550 4600 result = 0;
Azure.IoT Build 0:6ae2f7bca550 4601 }
Azure.IoT Build 0:6ae2f7bca550 4602
Azure.IoT Build 0:6ae2f7bca550 4603 amqpvalue_destroy(delivery_count_amqp_value);
Azure.IoT Build 0:6ae2f7bca550 4604 }
Azure.IoT Build 0:6ae2f7bca550 4605 }
Azure.IoT Build 0:6ae2f7bca550 4606
Azure.IoT Build 0:6ae2f7bca550 4607 return result;
Azure.IoT Build 0:6ae2f7bca550 4608 }
Azure.IoT Build 0:6ae2f7bca550 4609
Azure.IoT Build 0:6ae2f7bca550 4610 int flow_get_link_credit(FLOW_HANDLE flow, uint32_t* link_credit_value)
Azure.IoT Build 0:6ae2f7bca550 4611 {
Azure.IoT Build 0:6ae2f7bca550 4612 int result;
Azure.IoT Build 0:6ae2f7bca550 4613
Azure.IoT Build 0:6ae2f7bca550 4614 if (flow == NULL)
Azure.IoT Build 0:6ae2f7bca550 4615 {
Azure.IoT Build 0:6ae2f7bca550 4616 result = __LINE__;
Azure.IoT Build 0:6ae2f7bca550 4617 }
Azure.IoT Build 0:6ae2f7bca550 4618 else
Azure.IoT Build 0:6ae2f7bca550 4619 {
Azure.IoT Build 0:6ae2f7bca550 4620 FLOW_INSTANCE* flow_instance = (FLOW_INSTANCE*)flow;
Azure.IoT Build 0:6ae2f7bca550 4621 AMQP_VALUE item_value = amqpvalue_get_composite_item_in_place(flow_instance->composite_value, 6);
Azure.IoT Build 0:6ae2f7bca550 4622 if (item_value == NULL)
Azure.IoT Build 0:6ae2f7bca550 4623 {
Azure.IoT Build 0:6ae2f7bca550 4624 result = __LINE__;
Azure.IoT Build 0:6ae2f7bca550 4625 }
Azure.IoT Build 0:6ae2f7bca550 4626 else
Azure.IoT Build 0:6ae2f7bca550 4627 {
Azure.IoT Build 0:6ae2f7bca550 4628 if (amqpvalue_get_uint(item_value, link_credit_value) != 0)
Azure.IoT Build 0:6ae2f7bca550 4629 {
AzureIoTClient 16:22a72cf8e416 4630 result = __LINE__;
Azure.IoT Build 0:6ae2f7bca550 4631 }
Azure.IoT Build 0:6ae2f7bca550 4632 else
Azure.IoT Build 0:6ae2f7bca550 4633 {
Azure.IoT Build 0:6ae2f7bca550 4634 result = 0;
Azure.IoT Build 0:6ae2f7bca550 4635 }
Azure.IoT Build 0:6ae2f7bca550 4636 }
Azure.IoT Build 0:6ae2f7bca550 4637 }
Azure.IoT Build 0:6ae2f7bca550 4638
Azure.IoT Build 0:6ae2f7bca550 4639 return result;
Azure.IoT Build 0:6ae2f7bca550 4640 }
Azure.IoT Build 0:6ae2f7bca550 4641
Azure.IoT Build 0:6ae2f7bca550 4642 int flow_set_link_credit(FLOW_HANDLE flow, uint32_t link_credit_value)
Azure.IoT Build 0:6ae2f7bca550 4643 {
Azure.IoT Build 0:6ae2f7bca550 4644 int result;
Azure.IoT Build 0:6ae2f7bca550 4645
Azure.IoT Build 0:6ae2f7bca550 4646 if (flow == NULL)
Azure.IoT Build 0:6ae2f7bca550 4647 {
Azure.IoT Build 0:6ae2f7bca550 4648 result = __LINE__;
Azure.IoT Build 0:6ae2f7bca550 4649 }
Azure.IoT Build 0:6ae2f7bca550 4650 else
Azure.IoT Build 0:6ae2f7bca550 4651 {
Azure.IoT Build 0:6ae2f7bca550 4652 FLOW_INSTANCE* flow_instance = (FLOW_INSTANCE*)flow;
Azure.IoT Build 0:6ae2f7bca550 4653 AMQP_VALUE link_credit_amqp_value = amqpvalue_create_uint(link_credit_value);
Azure.IoT Build 0:6ae2f7bca550 4654 if (link_credit_amqp_value == NULL)
Azure.IoT Build 0:6ae2f7bca550 4655 {
Azure.IoT Build 0:6ae2f7bca550 4656 result = __LINE__;
Azure.IoT Build 0:6ae2f7bca550 4657 }
Azure.IoT Build 0:6ae2f7bca550 4658 else
Azure.IoT Build 0:6ae2f7bca550 4659 {
Azure.IoT Build 0:6ae2f7bca550 4660 if (amqpvalue_set_composite_item(flow_instance->composite_value, 6, link_credit_amqp_value) != 0)
Azure.IoT Build 0:6ae2f7bca550 4661 {
Azure.IoT Build 0:6ae2f7bca550 4662 result = __LINE__;
Azure.IoT Build 0:6ae2f7bca550 4663 }
Azure.IoT Build 0:6ae2f7bca550 4664 else
Azure.IoT Build 0:6ae2f7bca550 4665 {
Azure.IoT Build 0:6ae2f7bca550 4666 result = 0;
Azure.IoT Build 0:6ae2f7bca550 4667 }
Azure.IoT Build 0:6ae2f7bca550 4668
Azure.IoT Build 0:6ae2f7bca550 4669 amqpvalue_destroy(link_credit_amqp_value);
Azure.IoT Build 0:6ae2f7bca550 4670 }
Azure.IoT Build 0:6ae2f7bca550 4671 }
Azure.IoT Build 0:6ae2f7bca550 4672
Azure.IoT Build 0:6ae2f7bca550 4673 return result;
Azure.IoT Build 0:6ae2f7bca550 4674 }
Azure.IoT Build 0:6ae2f7bca550 4675
Azure.IoT Build 0:6ae2f7bca550 4676 int flow_get_available(FLOW_HANDLE flow, uint32_t* available_value)
Azure.IoT Build 0:6ae2f7bca550 4677 {
Azure.IoT Build 0:6ae2f7bca550 4678 int result;
Azure.IoT Build 0:6ae2f7bca550 4679
Azure.IoT Build 0:6ae2f7bca550 4680 if (flow == NULL)
Azure.IoT Build 0:6ae2f7bca550 4681 {
Azure.IoT Build 0:6ae2f7bca550 4682 result = __LINE__;
Azure.IoT Build 0:6ae2f7bca550 4683 }
Azure.IoT Build 0:6ae2f7bca550 4684 else
Azure.IoT Build 0:6ae2f7bca550 4685 {
Azure.IoT Build 0:6ae2f7bca550 4686 FLOW_INSTANCE* flow_instance = (FLOW_INSTANCE*)flow;
Azure.IoT Build 0:6ae2f7bca550 4687 AMQP_VALUE item_value = amqpvalue_get_composite_item_in_place(flow_instance->composite_value, 7);
Azure.IoT Build 0:6ae2f7bca550 4688 if (item_value == NULL)
Azure.IoT Build 0:6ae2f7bca550 4689 {
Azure.IoT Build 0:6ae2f7bca550 4690 result = __LINE__;
Azure.IoT Build 0:6ae2f7bca550 4691 }
Azure.IoT Build 0:6ae2f7bca550 4692 else
Azure.IoT Build 0:6ae2f7bca550 4693 {
Azure.IoT Build 0:6ae2f7bca550 4694 if (amqpvalue_get_uint(item_value, available_value) != 0)
Azure.IoT Build 0:6ae2f7bca550 4695 {
AzureIoTClient 16:22a72cf8e416 4696 result = __LINE__;
Azure.IoT Build 0:6ae2f7bca550 4697 }
Azure.IoT Build 0:6ae2f7bca550 4698 else
Azure.IoT Build 0:6ae2f7bca550 4699 {
Azure.IoT Build 0:6ae2f7bca550 4700 result = 0;
Azure.IoT Build 0:6ae2f7bca550 4701 }
Azure.IoT Build 0:6ae2f7bca550 4702 }
Azure.IoT Build 0:6ae2f7bca550 4703 }
Azure.IoT Build 0:6ae2f7bca550 4704
Azure.IoT Build 0:6ae2f7bca550 4705 return result;
Azure.IoT Build 0:6ae2f7bca550 4706 }
Azure.IoT Build 0:6ae2f7bca550 4707
Azure.IoT Build 0:6ae2f7bca550 4708 int flow_set_available(FLOW_HANDLE flow, uint32_t available_value)
Azure.IoT Build 0:6ae2f7bca550 4709 {
Azure.IoT Build 0:6ae2f7bca550 4710 int result;
Azure.IoT Build 0:6ae2f7bca550 4711
Azure.IoT Build 0:6ae2f7bca550 4712 if (flow == NULL)
Azure.IoT Build 0:6ae2f7bca550 4713 {
Azure.IoT Build 0:6ae2f7bca550 4714 result = __LINE__;
Azure.IoT Build 0:6ae2f7bca550 4715 }
Azure.IoT Build 0:6ae2f7bca550 4716 else
Azure.IoT Build 0:6ae2f7bca550 4717 {
Azure.IoT Build 0:6ae2f7bca550 4718 FLOW_INSTANCE* flow_instance = (FLOW_INSTANCE*)flow;
Azure.IoT Build 0:6ae2f7bca550 4719 AMQP_VALUE available_amqp_value = amqpvalue_create_uint(available_value);
Azure.IoT Build 0:6ae2f7bca550 4720 if (available_amqp_value == NULL)
Azure.IoT Build 0:6ae2f7bca550 4721 {
Azure.IoT Build 0:6ae2f7bca550 4722 result = __LINE__;
Azure.IoT Build 0:6ae2f7bca550 4723 }
Azure.IoT Build 0:6ae2f7bca550 4724 else
Azure.IoT Build 0:6ae2f7bca550 4725 {
Azure.IoT Build 0:6ae2f7bca550 4726 if (amqpvalue_set_composite_item(flow_instance->composite_value, 7, available_amqp_value) != 0)
Azure.IoT Build 0:6ae2f7bca550 4727 {
Azure.IoT Build 0:6ae2f7bca550 4728 result = __LINE__;
Azure.IoT Build 0:6ae2f7bca550 4729 }
Azure.IoT Build 0:6ae2f7bca550 4730 else
Azure.IoT Build 0:6ae2f7bca550 4731 {
Azure.IoT Build 0:6ae2f7bca550 4732 result = 0;
Azure.IoT Build 0:6ae2f7bca550 4733 }
Azure.IoT Build 0:6ae2f7bca550 4734
Azure.IoT Build 0:6ae2f7bca550 4735 amqpvalue_destroy(available_amqp_value);
Azure.IoT Build 0:6ae2f7bca550 4736 }
Azure.IoT Build 0:6ae2f7bca550 4737 }
Azure.IoT Build 0:6ae2f7bca550 4738
Azure.IoT Build 0:6ae2f7bca550 4739 return result;
Azure.IoT Build 0:6ae2f7bca550 4740 }
Azure.IoT Build 0:6ae2f7bca550 4741
Azure.IoT Build 0:6ae2f7bca550 4742 int flow_get_drain(FLOW_HANDLE flow, bool* drain_value)
Azure.IoT Build 0:6ae2f7bca550 4743 {
Azure.IoT Build 0:6ae2f7bca550 4744 int result;
Azure.IoT Build 0:6ae2f7bca550 4745
Azure.IoT Build 0:6ae2f7bca550 4746 if (flow == NULL)
Azure.IoT Build 0:6ae2f7bca550 4747 {
Azure.IoT Build 0:6ae2f7bca550 4748 result = __LINE__;
Azure.IoT Build 0:6ae2f7bca550 4749 }
Azure.IoT Build 0:6ae2f7bca550 4750 else
Azure.IoT Build 0:6ae2f7bca550 4751 {
Azure.IoT Build 0:6ae2f7bca550 4752 FLOW_INSTANCE* flow_instance = (FLOW_INSTANCE*)flow;
Azure.IoT Build 0:6ae2f7bca550 4753 AMQP_VALUE item_value = amqpvalue_get_composite_item_in_place(flow_instance->composite_value, 8);
Azure.IoT Build 0:6ae2f7bca550 4754 if (item_value == NULL)
Azure.IoT Build 0:6ae2f7bca550 4755 {
AzureIoTClient 16:22a72cf8e416 4756 *drain_value = false;
AzureIoTClient 16:22a72cf8e416 4757 result = 0;
Azure.IoT Build 0:6ae2f7bca550 4758 }
Azure.IoT Build 0:6ae2f7bca550 4759 else
Azure.IoT Build 0:6ae2f7bca550 4760 {
Azure.IoT Build 0:6ae2f7bca550 4761 if (amqpvalue_get_boolean(item_value, drain_value) != 0)
Azure.IoT Build 0:6ae2f7bca550 4762 {
AzureIoTClient 16:22a72cf8e416 4763 if (amqpvalue_get_type(item_value) == AMQP_TYPE_NULL)
AzureIoTClient 16:22a72cf8e416 4764 {
AzureIoTClient 16:22a72cf8e416 4765 result = __LINE__;
AzureIoTClient 16:22a72cf8e416 4766 }
AzureIoTClient 16:22a72cf8e416 4767 else
AzureIoTClient 16:22a72cf8e416 4768 {
AzureIoTClient 16:22a72cf8e416 4769 *drain_value = false;
AzureIoTClient 16:22a72cf8e416 4770 result = 0;
AzureIoTClient 16:22a72cf8e416 4771 }
Azure.IoT Build 0:6ae2f7bca550 4772 }
Azure.IoT Build 0:6ae2f7bca550 4773 else
Azure.IoT Build 0:6ae2f7bca550 4774 {
Azure.IoT Build 0:6ae2f7bca550 4775 result = 0;
Azure.IoT Build 0:6ae2f7bca550 4776 }
Azure.IoT Build 0:6ae2f7bca550 4777 }
Azure.IoT Build 0:6ae2f7bca550 4778 }
Azure.IoT Build 0:6ae2f7bca550 4779
Azure.IoT Build 0:6ae2f7bca550 4780 return result;
Azure.IoT Build 0:6ae2f7bca550 4781 }
Azure.IoT Build 0:6ae2f7bca550 4782
Azure.IoT Build 0:6ae2f7bca550 4783 int flow_set_drain(FLOW_HANDLE flow, bool drain_value)
Azure.IoT Build 0:6ae2f7bca550 4784 {
Azure.IoT Build 0:6ae2f7bca550 4785 int result;
Azure.IoT Build 0:6ae2f7bca550 4786
Azure.IoT Build 0:6ae2f7bca550 4787 if (flow == NULL)
Azure.IoT Build 0:6ae2f7bca550 4788 {
Azure.IoT Build 0:6ae2f7bca550 4789 result = __LINE__;
Azure.IoT Build 0:6ae2f7bca550 4790 }
Azure.IoT Build 0:6ae2f7bca550 4791 else
Azure.IoT Build 0:6ae2f7bca550 4792 {
Azure.IoT Build 0:6ae2f7bca550 4793 FLOW_INSTANCE* flow_instance = (FLOW_INSTANCE*)flow;
Azure.IoT Build 0:6ae2f7bca550 4794 AMQP_VALUE drain_amqp_value = amqpvalue_create_boolean(drain_value);
Azure.IoT Build 0:6ae2f7bca550 4795 if (drain_amqp_value == NULL)
Azure.IoT Build 0:6ae2f7bca550 4796 {
Azure.IoT Build 0:6ae2f7bca550 4797 result = __LINE__;
Azure.IoT Build 0:6ae2f7bca550 4798 }
Azure.IoT Build 0:6ae2f7bca550 4799 else
Azure.IoT Build 0:6ae2f7bca550 4800 {
Azure.IoT Build 0:6ae2f7bca550 4801 if (amqpvalue_set_composite_item(flow_instance->composite_value, 8, drain_amqp_value) != 0)
Azure.IoT Build 0:6ae2f7bca550 4802 {
Azure.IoT Build 0:6ae2f7bca550 4803 result = __LINE__;
Azure.IoT Build 0:6ae2f7bca550 4804 }
Azure.IoT Build 0:6ae2f7bca550 4805 else
Azure.IoT Build 0:6ae2f7bca550 4806 {
Azure.IoT Build 0:6ae2f7bca550 4807 result = 0;
Azure.IoT Build 0:6ae2f7bca550 4808 }
Azure.IoT Build 0:6ae2f7bca550 4809
Azure.IoT Build 0:6ae2f7bca550 4810 amqpvalue_destroy(drain_amqp_value);
Azure.IoT Build 0:6ae2f7bca550 4811 }
Azure.IoT Build 0:6ae2f7bca550 4812 }
Azure.IoT Build 0:6ae2f7bca550 4813
Azure.IoT Build 0:6ae2f7bca550 4814 return result;
Azure.IoT Build 0:6ae2f7bca550 4815 }
Azure.IoT Build 0:6ae2f7bca550 4816
Azure.IoT Build 0:6ae2f7bca550 4817 int flow_get_echo(FLOW_HANDLE flow, bool* echo_value)
Azure.IoT Build 0:6ae2f7bca550 4818 {
Azure.IoT Build 0:6ae2f7bca550 4819 int result;
Azure.IoT Build 0:6ae2f7bca550 4820
Azure.IoT Build 0:6ae2f7bca550 4821 if (flow == NULL)
Azure.IoT Build 0:6ae2f7bca550 4822 {
Azure.IoT Build 0:6ae2f7bca550 4823 result = __LINE__;
Azure.IoT Build 0:6ae2f7bca550 4824 }
Azure.IoT Build 0:6ae2f7bca550 4825 else
Azure.IoT Build 0:6ae2f7bca550 4826 {
Azure.IoT Build 0:6ae2f7bca550 4827 FLOW_INSTANCE* flow_instance = (FLOW_INSTANCE*)flow;
Azure.IoT Build 0:6ae2f7bca550 4828 AMQP_VALUE item_value = amqpvalue_get_composite_item_in_place(flow_instance->composite_value, 9);
Azure.IoT Build 0:6ae2f7bca550 4829 if (item_value == NULL)
Azure.IoT Build 0:6ae2f7bca550 4830 {
AzureIoTClient 16:22a72cf8e416 4831 *echo_value = false;
AzureIoTClient 16:22a72cf8e416 4832 result = 0;
Azure.IoT Build 0:6ae2f7bca550 4833 }
Azure.IoT Build 0:6ae2f7bca550 4834 else
Azure.IoT Build 0:6ae2f7bca550 4835 {
Azure.IoT Build 0:6ae2f7bca550 4836 if (amqpvalue_get_boolean(item_value, echo_value) != 0)
Azure.IoT Build 0:6ae2f7bca550 4837 {
AzureIoTClient 16:22a72cf8e416 4838 if (amqpvalue_get_type(item_value) == AMQP_TYPE_NULL)
AzureIoTClient 16:22a72cf8e416 4839 {
AzureIoTClient 16:22a72cf8e416 4840 result = __LINE__;
AzureIoTClient 16:22a72cf8e416 4841 }
AzureIoTClient 16:22a72cf8e416 4842 else
AzureIoTClient 16:22a72cf8e416 4843 {
AzureIoTClient 16:22a72cf8e416 4844 *echo_value = false;
AzureIoTClient 16:22a72cf8e416 4845 result = 0;
AzureIoTClient 16:22a72cf8e416 4846 }
Azure.IoT Build 0:6ae2f7bca550 4847 }
Azure.IoT Build 0:6ae2f7bca550 4848 else
Azure.IoT Build 0:6ae2f7bca550 4849 {
Azure.IoT Build 0:6ae2f7bca550 4850 result = 0;
Azure.IoT Build 0:6ae2f7bca550 4851 }
Azure.IoT Build 0:6ae2f7bca550 4852 }
Azure.IoT Build 0:6ae2f7bca550 4853 }
Azure.IoT Build 0:6ae2f7bca550 4854
Azure.IoT Build 0:6ae2f7bca550 4855 return result;
Azure.IoT Build 0:6ae2f7bca550 4856 }
Azure.IoT Build 0:6ae2f7bca550 4857
Azure.IoT Build 0:6ae2f7bca550 4858 int flow_set_echo(FLOW_HANDLE flow, bool echo_value)
Azure.IoT Build 0:6ae2f7bca550 4859 {
Azure.IoT Build 0:6ae2f7bca550 4860 int result;
Azure.IoT Build 0:6ae2f7bca550 4861
Azure.IoT Build 0:6ae2f7bca550 4862 if (flow == NULL)
Azure.IoT Build 0:6ae2f7bca550 4863 {
Azure.IoT Build 0:6ae2f7bca550 4864 result = __LINE__;
Azure.IoT Build 0:6ae2f7bca550 4865 }
Azure.IoT Build 0:6ae2f7bca550 4866 else
Azure.IoT Build 0:6ae2f7bca550 4867 {
Azure.IoT Build 0:6ae2f7bca550 4868 FLOW_INSTANCE* flow_instance = (FLOW_INSTANCE*)flow;
Azure.IoT Build 0:6ae2f7bca550 4869 AMQP_VALUE echo_amqp_value = amqpvalue_create_boolean(echo_value);
Azure.IoT Build 0:6ae2f7bca550 4870 if (echo_amqp_value == NULL)
Azure.IoT Build 0:6ae2f7bca550 4871 {
Azure.IoT Build 0:6ae2f7bca550 4872 result = __LINE__;
Azure.IoT Build 0:6ae2f7bca550 4873 }
Azure.IoT Build 0:6ae2f7bca550 4874 else
Azure.IoT Build 0:6ae2f7bca550 4875 {
Azure.IoT Build 0:6ae2f7bca550 4876 if (amqpvalue_set_composite_item(flow_instance->composite_value, 9, echo_amqp_value) != 0)
Azure.IoT Build 0:6ae2f7bca550 4877 {
Azure.IoT Build 0:6ae2f7bca550 4878 result = __LINE__;
Azure.IoT Build 0:6ae2f7bca550 4879 }
Azure.IoT Build 0:6ae2f7bca550 4880 else
Azure.IoT Build 0:6ae2f7bca550 4881 {
Azure.IoT Build 0:6ae2f7bca550 4882 result = 0;
Azure.IoT Build 0:6ae2f7bca550 4883 }
Azure.IoT Build 0:6ae2f7bca550 4884
Azure.IoT Build 0:6ae2f7bca550 4885 amqpvalue_destroy(echo_amqp_value);
Azure.IoT Build 0:6ae2f7bca550 4886 }
Azure.IoT Build 0:6ae2f7bca550 4887 }
Azure.IoT Build 0:6ae2f7bca550 4888
Azure.IoT Build 0:6ae2f7bca550 4889 return result;
Azure.IoT Build 0:6ae2f7bca550 4890 }
Azure.IoT Build 0:6ae2f7bca550 4891
Azure.IoT Build 0:6ae2f7bca550 4892 int flow_get_properties(FLOW_HANDLE flow, fields* properties_value)
Azure.IoT Build 0:6ae2f7bca550 4893 {
Azure.IoT Build 0:6ae2f7bca550 4894 int result;
Azure.IoT Build 0:6ae2f7bca550 4895
Azure.IoT Build 0:6ae2f7bca550 4896 if (flow == NULL)
Azure.IoT Build 0:6ae2f7bca550 4897 {
Azure.IoT Build 0:6ae2f7bca550 4898 result = __LINE__;
Azure.IoT Build 0:6ae2f7bca550 4899 }
Azure.IoT Build 0:6ae2f7bca550 4900 else
Azure.IoT Build 0:6ae2f7bca550 4901 {
Azure.IoT Build 0:6ae2f7bca550 4902 FLOW_INSTANCE* flow_instance = (FLOW_INSTANCE*)flow;
Azure.IoT Build 0:6ae2f7bca550 4903 AMQP_VALUE item_value = amqpvalue_get_composite_item_in_place(flow_instance->composite_value, 10);
Azure.IoT Build 0:6ae2f7bca550 4904 if (item_value == NULL)
Azure.IoT Build 0:6ae2f7bca550 4905 {
Azure.IoT Build 0:6ae2f7bca550 4906 result = __LINE__;
Azure.IoT Build 0:6ae2f7bca550 4907 }
Azure.IoT Build 0:6ae2f7bca550 4908 else
Azure.IoT Build 0:6ae2f7bca550 4909 {
Azure.IoT Build 0:6ae2f7bca550 4910 if (amqpvalue_get_fields(item_value, properties_value) != 0)
Azure.IoT Build 0:6ae2f7bca550 4911 {
AzureIoTClient 16:22a72cf8e416 4912 result = __LINE__;
Azure.IoT Build 0:6ae2f7bca550 4913 }
Azure.IoT Build 0:6ae2f7bca550 4914 else
Azure.IoT Build 0:6ae2f7bca550 4915 {
Azure.IoT Build 0:6ae2f7bca550 4916 result = 0;
Azure.IoT Build 0:6ae2f7bca550 4917 }
Azure.IoT Build 0:6ae2f7bca550 4918 }
Azure.IoT Build 0:6ae2f7bca550 4919 }
Azure.IoT Build 0:6ae2f7bca550 4920
Azure.IoT Build 0:6ae2f7bca550 4921 return result;
Azure.IoT Build 0:6ae2f7bca550 4922 }
Azure.IoT Build 0:6ae2f7bca550 4923
Azure.IoT Build 0:6ae2f7bca550 4924 int flow_set_properties(FLOW_HANDLE flow, fields properties_value)
Azure.IoT Build 0:6ae2f7bca550 4925 {
Azure.IoT Build 0:6ae2f7bca550 4926 int result;
Azure.IoT Build 0:6ae2f7bca550 4927
Azure.IoT Build 0:6ae2f7bca550 4928 if (flow == NULL)
Azure.IoT Build 0:6ae2f7bca550 4929 {
Azure.IoT Build 0:6ae2f7bca550 4930 result = __LINE__;
Azure.IoT Build 0:6ae2f7bca550 4931 }
Azure.IoT Build 0:6ae2f7bca550 4932 else
Azure.IoT Build 0:6ae2f7bca550 4933 {
Azure.IoT Build 0:6ae2f7bca550 4934 FLOW_INSTANCE* flow_instance = (FLOW_INSTANCE*)flow;
Azure.IoT Build 0:6ae2f7bca550 4935 AMQP_VALUE properties_amqp_value = amqpvalue_create_fields(properties_value);
Azure.IoT Build 0:6ae2f7bca550 4936 if (properties_amqp_value == NULL)
Azure.IoT Build 0:6ae2f7bca550 4937 {
Azure.IoT Build 0:6ae2f7bca550 4938 result = __LINE__;
Azure.IoT Build 0:6ae2f7bca550 4939 }
Azure.IoT Build 0:6ae2f7bca550 4940 else
Azure.IoT Build 0:6ae2f7bca550 4941 {
Azure.IoT Build 0:6ae2f7bca550 4942 if (amqpvalue_set_composite_item(flow_instance->composite_value, 10, properties_amqp_value) != 0)
Azure.IoT Build 0:6ae2f7bca550 4943 {
Azure.IoT Build 0:6ae2f7bca550 4944 result = __LINE__;
Azure.IoT Build 0:6ae2f7bca550 4945 }
Azure.IoT Build 0:6ae2f7bca550 4946 else
Azure.IoT Build 0:6ae2f7bca550 4947 {
Azure.IoT Build 0:6ae2f7bca550 4948 result = 0;
Azure.IoT Build 0:6ae2f7bca550 4949 }
Azure.IoT Build 0:6ae2f7bca550 4950
Azure.IoT Build 0:6ae2f7bca550 4951 amqpvalue_destroy(properties_amqp_value);
Azure.IoT Build 0:6ae2f7bca550 4952 }
Azure.IoT Build 0:6ae2f7bca550 4953 }
Azure.IoT Build 0:6ae2f7bca550 4954
Azure.IoT Build 0:6ae2f7bca550 4955 return result;
Azure.IoT Build 0:6ae2f7bca550 4956 }
Azure.IoT Build 0:6ae2f7bca550 4957
Azure.IoT Build 0:6ae2f7bca550 4958
Azure.IoT Build 0:6ae2f7bca550 4959 /* transfer */
Azure.IoT Build 0:6ae2f7bca550 4960
Azure.IoT Build 0:6ae2f7bca550 4961 typedef struct TRANSFER_INSTANCE_TAG
Azure.IoT Build 0:6ae2f7bca550 4962 {
Azure.IoT Build 0:6ae2f7bca550 4963 AMQP_VALUE composite_value;
Azure.IoT Build 0:6ae2f7bca550 4964 } TRANSFER_INSTANCE;
Azure.IoT Build 0:6ae2f7bca550 4965
Azure.IoT Build 0:6ae2f7bca550 4966 static TRANSFER_HANDLE transfer_create_internal(void)
Azure.IoT Build 0:6ae2f7bca550 4967 {
Azure.IoT Build 0:6ae2f7bca550 4968 TRANSFER_INSTANCE* transfer_instance = (TRANSFER_INSTANCE*)amqpalloc_malloc(sizeof(TRANSFER_INSTANCE));
Azure.IoT Build 0:6ae2f7bca550 4969 if (transfer_instance != NULL)
Azure.IoT Build 0:6ae2f7bca550 4970 {
Azure.IoT Build 0:6ae2f7bca550 4971 transfer_instance->composite_value = NULL;
Azure.IoT Build 0:6ae2f7bca550 4972 }
Azure.IoT Build 0:6ae2f7bca550 4973
Azure.IoT Build 0:6ae2f7bca550 4974 return transfer_instance;
Azure.IoT Build 0:6ae2f7bca550 4975 }
Azure.IoT Build 0:6ae2f7bca550 4976
Azure.IoT Build 0:6ae2f7bca550 4977 TRANSFER_HANDLE transfer_create(handle handle_value)
Azure.IoT Build 0:6ae2f7bca550 4978 {
Azure.IoT Build 0:6ae2f7bca550 4979 TRANSFER_INSTANCE* transfer_instance = (TRANSFER_INSTANCE*)amqpalloc_malloc(sizeof(TRANSFER_INSTANCE));
Azure.IoT Build 0:6ae2f7bca550 4980 if (transfer_instance != NULL)
Azure.IoT Build 0:6ae2f7bca550 4981 {
Azure.IoT Build 0:6ae2f7bca550 4982 transfer_instance->composite_value = amqpvalue_create_composite_with_ulong_descriptor(20);
Azure.IoT Build 0:6ae2f7bca550 4983 if (transfer_instance->composite_value == NULL)
Azure.IoT Build 0:6ae2f7bca550 4984 {
Azure.IoT Build 0:6ae2f7bca550 4985 amqpalloc_free(transfer_instance);
Azure.IoT Build 0:6ae2f7bca550 4986 transfer_instance = NULL;
Azure.IoT Build 0:6ae2f7bca550 4987 }
Azure.IoT Build 0:6ae2f7bca550 4988 else
Azure.IoT Build 0:6ae2f7bca550 4989 {
Azure.IoT Build 0:6ae2f7bca550 4990 AMQP_VALUE handle_amqp_value;
Azure.IoT Build 0:6ae2f7bca550 4991 int result = 0;
Azure.IoT Build 0:6ae2f7bca550 4992
Azure.IoT Build 0:6ae2f7bca550 4993 handle_amqp_value = amqpvalue_create_handle(handle_value);
Azure.IoT Build 0:6ae2f7bca550 4994 if ((result == 0) && (amqpvalue_set_composite_item(transfer_instance->composite_value, 0, handle_amqp_value) != 0))
Azure.IoT Build 0:6ae2f7bca550 4995 {
Azure.IoT Build 0:6ae2f7bca550 4996 result = __LINE__;
Azure.IoT Build 0:6ae2f7bca550 4997 }
Azure.IoT Build 0:6ae2f7bca550 4998
Azure.IoT Build 0:6ae2f7bca550 4999 amqpvalue_destroy(handle_amqp_value);
Azure.IoT Build 0:6ae2f7bca550 5000 }
Azure.IoT Build 0:6ae2f7bca550 5001 }
Azure.IoT Build 0:6ae2f7bca550 5002
Azure.IoT Build 0:6ae2f7bca550 5003 return transfer_instance;
Azure.IoT Build 0:6ae2f7bca550 5004 }
Azure.IoT Build 0:6ae2f7bca550 5005
Azure.IoT Build 0:6ae2f7bca550 5006 TRANSFER_HANDLE transfer_clone(TRANSFER_HANDLE value)
Azure.IoT Build 0:6ae2f7bca550 5007 {
Azure.IoT Build 0:6ae2f7bca550 5008 TRANSFER_INSTANCE* transfer_instance = (TRANSFER_INSTANCE*)amqpalloc_malloc(sizeof(TRANSFER_INSTANCE));
Azure.IoT Build 0:6ae2f7bca550 5009 if (transfer_instance != NULL)
Azure.IoT Build 0:6ae2f7bca550 5010 {
Azure.IoT Build 0:6ae2f7bca550 5011 transfer_instance->composite_value = amqpvalue_clone(((TRANSFER_INSTANCE*)value)->composite_value);
Azure.IoT Build 0:6ae2f7bca550 5012 if (transfer_instance->composite_value == NULL)
Azure.IoT Build 0:6ae2f7bca550 5013 {
Azure.IoT Build 0:6ae2f7bca550 5014 amqpalloc_free(transfer_instance);
Azure.IoT Build 0:6ae2f7bca550 5015 transfer_instance = NULL;
Azure.IoT Build 0:6ae2f7bca550 5016 }
Azure.IoT Build 0:6ae2f7bca550 5017 }
Azure.IoT Build 0:6ae2f7bca550 5018
Azure.IoT Build 0:6ae2f7bca550 5019 return transfer_instance;
Azure.IoT Build 0:6ae2f7bca550 5020 }
Azure.IoT Build 0:6ae2f7bca550 5021
Azure.IoT Build 0:6ae2f7bca550 5022 void transfer_destroy(TRANSFER_HANDLE transfer)
Azure.IoT Build 0:6ae2f7bca550 5023 {
Azure.IoT Build 0:6ae2f7bca550 5024 if (transfer != NULL)
Azure.IoT Build 0:6ae2f7bca550 5025 {
Azure.IoT Build 0:6ae2f7bca550 5026 TRANSFER_INSTANCE* transfer_instance = (TRANSFER_INSTANCE*)transfer;
Azure.IoT Build 0:6ae2f7bca550 5027 amqpvalue_destroy(transfer_instance->composite_value);
Azure.IoT Build 0:6ae2f7bca550 5028 amqpalloc_free(transfer_instance);
Azure.IoT Build 0:6ae2f7bca550 5029 }
Azure.IoT Build 0:6ae2f7bca550 5030 }
Azure.IoT Build 0:6ae2f7bca550 5031
Azure.IoT Build 0:6ae2f7bca550 5032 AMQP_VALUE amqpvalue_create_transfer(TRANSFER_HANDLE transfer)
Azure.IoT Build 0:6ae2f7bca550 5033 {
Azure.IoT Build 0:6ae2f7bca550 5034 AMQP_VALUE result;
Azure.IoT Build 0:6ae2f7bca550 5035
Azure.IoT Build 0:6ae2f7bca550 5036 if (transfer == NULL)
Azure.IoT Build 0:6ae2f7bca550 5037 {
Azure.IoT Build 0:6ae2f7bca550 5038 result = NULL;
Azure.IoT Build 0:6ae2f7bca550 5039 }
Azure.IoT Build 0:6ae2f7bca550 5040 else
Azure.IoT Build 0:6ae2f7bca550 5041 {
Azure.IoT Build 0:6ae2f7bca550 5042 TRANSFER_INSTANCE* transfer_instance = (TRANSFER_INSTANCE*)transfer;
Azure.IoT Build 0:6ae2f7bca550 5043 result = amqpvalue_clone(transfer_instance->composite_value);
Azure.IoT Build 0:6ae2f7bca550 5044 }
Azure.IoT Build 0:6ae2f7bca550 5045
Azure.IoT Build 0:6ae2f7bca550 5046 return result;
Azure.IoT Build 0:6ae2f7bca550 5047 }
Azure.IoT Build 0:6ae2f7bca550 5048
Azure.IoT Build 0:6ae2f7bca550 5049 bool is_transfer_type_by_descriptor(AMQP_VALUE descriptor)
Azure.IoT Build 0:6ae2f7bca550 5050 {
Azure.IoT Build 0:6ae2f7bca550 5051 bool result;
Azure.IoT Build 0:6ae2f7bca550 5052
Azure.IoT Build 0:6ae2f7bca550 5053 uint64_t descriptor_ulong;
Azure.IoT Build 0:6ae2f7bca550 5054 if ((amqpvalue_get_ulong(descriptor, &descriptor_ulong) == 0) &&
Azure.IoT Build 0:6ae2f7bca550 5055 (descriptor_ulong == 20))
Azure.IoT Build 0:6ae2f7bca550 5056 {
Azure.IoT Build 0:6ae2f7bca550 5057 result = true;
Azure.IoT Build 0:6ae2f7bca550 5058 }
Azure.IoT Build 0:6ae2f7bca550 5059 else
Azure.IoT Build 0:6ae2f7bca550 5060 {
Azure.IoT Build 0:6ae2f7bca550 5061 result = false;
Azure.IoT Build 0:6ae2f7bca550 5062 }
Azure.IoT Build 0:6ae2f7bca550 5063
Azure.IoT Build 0:6ae2f7bca550 5064 return result;
Azure.IoT Build 0:6ae2f7bca550 5065 }
Azure.IoT Build 0:6ae2f7bca550 5066
Azure.IoT Build 0:6ae2f7bca550 5067
Azure.IoT Build 0:6ae2f7bca550 5068 int amqpvalue_get_transfer(AMQP_VALUE value, TRANSFER_HANDLE* transfer_handle)
Azure.IoT Build 0:6ae2f7bca550 5069 {
Azure.IoT Build 0:6ae2f7bca550 5070 int result;
Azure.IoT Build 0:6ae2f7bca550 5071 TRANSFER_INSTANCE* transfer_instance = (TRANSFER_INSTANCE*)transfer_create_internal();
Azure.IoT Build 0:6ae2f7bca550 5072 *transfer_handle = transfer_instance;
Azure.IoT Build 0:6ae2f7bca550 5073 if (*transfer_handle == NULL)
Azure.IoT Build 0:6ae2f7bca550 5074 {
Azure.IoT Build 0:6ae2f7bca550 5075 result = __LINE__;
Azure.IoT Build 0:6ae2f7bca550 5076 }
Azure.IoT Build 0:6ae2f7bca550 5077 else
Azure.IoT Build 0:6ae2f7bca550 5078 {
Azure.IoT Build 0:6ae2f7bca550 5079 AMQP_VALUE list_value = amqpvalue_get_inplace_described_value(value);
Azure.IoT Build 0:6ae2f7bca550 5080 if (list_value == NULL)
Azure.IoT Build 0:6ae2f7bca550 5081 {
Azure.IoT Build 0:6ae2f7bca550 5082 transfer_destroy(*transfer_handle);
Azure.IoT Build 0:6ae2f7bca550 5083 result = __LINE__;
Azure.IoT Build 0:6ae2f7bca550 5084 }
Azure.IoT Build 0:6ae2f7bca550 5085 else
Azure.IoT Build 0:6ae2f7bca550 5086 {
Azure.IoT Build 0:6ae2f7bca550 5087 do
Azure.IoT Build 0:6ae2f7bca550 5088 {
Azure.IoT Build 0:6ae2f7bca550 5089 AMQP_VALUE item_value;
Azure.IoT Build 0:6ae2f7bca550 5090 /* handle */
Azure.IoT Build 0:6ae2f7bca550 5091 item_value = amqpvalue_get_list_item(list_value, 0);
Azure.IoT Build 0:6ae2f7bca550 5092 if (item_value == NULL)
Azure.IoT Build 0:6ae2f7bca550 5093 {
Azure.IoT Build 0:6ae2f7bca550 5094 {
Azure.IoT Build 0:6ae2f7bca550 5095 transfer_destroy(*transfer_handle);
Azure.IoT Build 0:6ae2f7bca550 5096 result = __LINE__;
Azure.IoT Build 0:6ae2f7bca550 5097 break;
Azure.IoT Build 0:6ae2f7bca550 5098 }
Azure.IoT Build 0:6ae2f7bca550 5099 }
Azure.IoT Build 0:6ae2f7bca550 5100 else
Azure.IoT Build 0:6ae2f7bca550 5101 {
Azure.IoT Build 0:6ae2f7bca550 5102 handle handle;
Azure.IoT Build 0:6ae2f7bca550 5103 if (amqpvalue_get_handle(item_value, &handle) != 0)
Azure.IoT Build 0:6ae2f7bca550 5104 {
Azure.IoT Build 0:6ae2f7bca550 5105 transfer_destroy(*transfer_handle);
Azure.IoT Build 0:6ae2f7bca550 5106 result = __LINE__;
Azure.IoT Build 0:6ae2f7bca550 5107 break;
Azure.IoT Build 0:6ae2f7bca550 5108 }
Azure.IoT Build 0:6ae2f7bca550 5109
Azure.IoT Build 0:6ae2f7bca550 5110 amqpvalue_destroy(item_value);
Azure.IoT Build 0:6ae2f7bca550 5111 }
Azure.IoT Build 0:6ae2f7bca550 5112 /* delivery-id */
Azure.IoT Build 0:6ae2f7bca550 5113 item_value = amqpvalue_get_list_item(list_value, 1);
Azure.IoT Build 0:6ae2f7bca550 5114 if (item_value == NULL)
Azure.IoT Build 0:6ae2f7bca550 5115 {
Azure.IoT Build 0:6ae2f7bca550 5116 /* do nothing */
Azure.IoT Build 0:6ae2f7bca550 5117 }
Azure.IoT Build 0:6ae2f7bca550 5118 else
Azure.IoT Build 0:6ae2f7bca550 5119 {
Azure.IoT Build 0:6ae2f7bca550 5120 delivery_number delivery_id;
Azure.IoT Build 0:6ae2f7bca550 5121 if (amqpvalue_get_delivery_number(item_value, &delivery_id) != 0)
Azure.IoT Build 0:6ae2f7bca550 5122 {
Azure.IoT Build 0:6ae2f7bca550 5123 if (amqpvalue_get_type(item_value) != AMQP_TYPE_NULL)
Azure.IoT Build 0:6ae2f7bca550 5124 {
Azure.IoT Build 0:6ae2f7bca550 5125 transfer_destroy(*transfer_handle);
Azure.IoT Build 0:6ae2f7bca550 5126 result = __LINE__;
Azure.IoT Build 0:6ae2f7bca550 5127 break;
Azure.IoT Build 0:6ae2f7bca550 5128 }
Azure.IoT Build 0:6ae2f7bca550 5129 }
Azure.IoT Build 0:6ae2f7bca550 5130
Azure.IoT Build 0:6ae2f7bca550 5131 amqpvalue_destroy(item_value);
Azure.IoT Build 0:6ae2f7bca550 5132 }
Azure.IoT Build 0:6ae2f7bca550 5133 /* delivery-tag */
Azure.IoT Build 0:6ae2f7bca550 5134 item_value = amqpvalue_get_list_item(list_value, 2);
Azure.IoT Build 0:6ae2f7bca550 5135 if (item_value == NULL)
Azure.IoT Build 0:6ae2f7bca550 5136 {
Azure.IoT Build 0:6ae2f7bca550 5137 /* do nothing */
Azure.IoT Build 0:6ae2f7bca550 5138 }
Azure.IoT Build 0:6ae2f7bca550 5139 else
Azure.IoT Build 0:6ae2f7bca550 5140 {
Azure.IoT Build 0:6ae2f7bca550 5141 delivery_tag delivery_tag;
Azure.IoT Build 0:6ae2f7bca550 5142 if (amqpvalue_get_delivery_tag(item_value, &delivery_tag) != 0)
Azure.IoT Build 0:6ae2f7bca550 5143 {
Azure.IoT Build 0:6ae2f7bca550 5144 if (amqpvalue_get_type(item_value) != AMQP_TYPE_NULL)
Azure.IoT Build 0:6ae2f7bca550 5145 {
Azure.IoT Build 0:6ae2f7bca550 5146 transfer_destroy(*transfer_handle);
Azure.IoT Build 0:6ae2f7bca550 5147 result = __LINE__;
Azure.IoT Build 0:6ae2f7bca550 5148 break;
Azure.IoT Build 0:6ae2f7bca550 5149 }
Azure.IoT Build 0:6ae2f7bca550 5150 }
Azure.IoT Build 0:6ae2f7bca550 5151
Azure.IoT Build 0:6ae2f7bca550 5152 amqpvalue_destroy(item_value);
Azure.IoT Build 0:6ae2f7bca550 5153 }
Azure.IoT Build 0:6ae2f7bca550 5154 /* message-format */
Azure.IoT Build 0:6ae2f7bca550 5155 item_value = amqpvalue_get_list_item(list_value, 3);
Azure.IoT Build 0:6ae2f7bca550 5156 if (item_value == NULL)
Azure.IoT Build 0:6ae2f7bca550 5157 {
Azure.IoT Build 0:6ae2f7bca550 5158 /* do nothing */
Azure.IoT Build 0:6ae2f7bca550 5159 }
Azure.IoT Build 0:6ae2f7bca550 5160 else
Azure.IoT Build 0:6ae2f7bca550 5161 {
Azure.IoT Build 0:6ae2f7bca550 5162 message_format message_format;
Azure.IoT Build 0:6ae2f7bca550 5163 if (amqpvalue_get_message_format(item_value, &message_format) != 0)
Azure.IoT Build 0:6ae2f7bca550 5164 {
Azure.IoT Build 0:6ae2f7bca550 5165 if (amqpvalue_get_type(item_value) != AMQP_TYPE_NULL)
Azure.IoT Build 0:6ae2f7bca550 5166 {
Azure.IoT Build 0:6ae2f7bca550 5167 transfer_destroy(*transfer_handle);
Azure.IoT Build 0:6ae2f7bca550 5168 result = __LINE__;
Azure.IoT Build 0:6ae2f7bca550 5169 break;
Azure.IoT Build 0:6ae2f7bca550 5170 }
Azure.IoT Build 0:6ae2f7bca550 5171 }
Azure.IoT Build 0:6ae2f7bca550 5172
Azure.IoT Build 0:6ae2f7bca550 5173 amqpvalue_destroy(item_value);
Azure.IoT Build 0:6ae2f7bca550 5174 }
Azure.IoT Build 0:6ae2f7bca550 5175 /* settled */
Azure.IoT Build 0:6ae2f7bca550 5176 item_value = amqpvalue_get_list_item(list_value, 4);
Azure.IoT Build 0:6ae2f7bca550 5177 if (item_value == NULL)
Azure.IoT Build 0:6ae2f7bca550 5178 {
Azure.IoT Build 0:6ae2f7bca550 5179 /* do nothing */
Azure.IoT Build 0:6ae2f7bca550 5180 }
Azure.IoT Build 0:6ae2f7bca550 5181 else
Azure.IoT Build 0:6ae2f7bca550 5182 {
Azure.IoT Build 0:6ae2f7bca550 5183 bool settled;
Azure.IoT Build 0:6ae2f7bca550 5184 if (amqpvalue_get_boolean(item_value, &settled) != 0)
Azure.IoT Build 0:6ae2f7bca550 5185 {
Azure.IoT Build 0:6ae2f7bca550 5186 if (amqpvalue_get_type(item_value) != AMQP_TYPE_NULL)
Azure.IoT Build 0:6ae2f7bca550 5187 {
Azure.IoT Build 0:6ae2f7bca550 5188 transfer_destroy(*transfer_handle);
Azure.IoT Build 0:6ae2f7bca550 5189 result = __LINE__;
Azure.IoT Build 0:6ae2f7bca550 5190 break;
Azure.IoT Build 0:6ae2f7bca550 5191 }
Azure.IoT Build 0:6ae2f7bca550 5192 }
Azure.IoT Build 0:6ae2f7bca550 5193
Azure.IoT Build 0:6ae2f7bca550 5194 amqpvalue_destroy(item_value);
Azure.IoT Build 0:6ae2f7bca550 5195 }
Azure.IoT Build 0:6ae2f7bca550 5196 /* more */
Azure.IoT Build 0:6ae2f7bca550 5197 item_value = amqpvalue_get_list_item(list_value, 5);
Azure.IoT Build 0:6ae2f7bca550 5198 if (item_value == NULL)
Azure.IoT Build 0:6ae2f7bca550 5199 {
Azure.IoT Build 0:6ae2f7bca550 5200 /* do nothing */
Azure.IoT Build 0:6ae2f7bca550 5201 }
Azure.IoT Build 0:6ae2f7bca550 5202 else
Azure.IoT Build 0:6ae2f7bca550 5203 {
Azure.IoT Build 0:6ae2f7bca550 5204 bool more;
Azure.IoT Build 0:6ae2f7bca550 5205 if (amqpvalue_get_boolean(item_value, &more) != 0)
Azure.IoT Build 0:6ae2f7bca550 5206 {
Azure.IoT Build 0:6ae2f7bca550 5207 if (amqpvalue_get_type(item_value) != AMQP_TYPE_NULL)
Azure.IoT Build 0:6ae2f7bca550 5208 {
Azure.IoT Build 0:6ae2f7bca550 5209 transfer_destroy(*transfer_handle);
Azure.IoT Build 0:6ae2f7bca550 5210 result = __LINE__;
Azure.IoT Build 0:6ae2f7bca550 5211 break;
Azure.IoT Build 0:6ae2f7bca550 5212 }
Azure.IoT Build 0:6ae2f7bca550 5213 }
Azure.IoT Build 0:6ae2f7bca550 5214
Azure.IoT Build 0:6ae2f7bca550 5215 amqpvalue_destroy(item_value);
Azure.IoT Build 0:6ae2f7bca550 5216 }
Azure.IoT Build 0:6ae2f7bca550 5217 /* rcv-settle-mode */
Azure.IoT Build 0:6ae2f7bca550 5218 item_value = amqpvalue_get_list_item(list_value, 6);
Azure.IoT Build 0:6ae2f7bca550 5219 if (item_value == NULL)
Azure.IoT Build 0:6ae2f7bca550 5220 {
Azure.IoT Build 0:6ae2f7bca550 5221 /* do nothing */
Azure.IoT Build 0:6ae2f7bca550 5222 }
Azure.IoT Build 0:6ae2f7bca550 5223 else
Azure.IoT Build 0:6ae2f7bca550 5224 {
Azure.IoT Build 0:6ae2f7bca550 5225 receiver_settle_mode rcv_settle_mode;
Azure.IoT Build 0:6ae2f7bca550 5226 if (amqpvalue_get_receiver_settle_mode(item_value, &rcv_settle_mode) != 0)
Azure.IoT Build 0:6ae2f7bca550 5227 {
Azure.IoT Build 0:6ae2f7bca550 5228 if (amqpvalue_get_type(item_value) != AMQP_TYPE_NULL)
Azure.IoT Build 0:6ae2f7bca550 5229 {
Azure.IoT Build 0:6ae2f7bca550 5230 transfer_destroy(*transfer_handle);
Azure.IoT Build 0:6ae2f7bca550 5231 result = __LINE__;
Azure.IoT Build 0:6ae2f7bca550 5232 break;
Azure.IoT Build 0:6ae2f7bca550 5233 }
Azure.IoT Build 0:6ae2f7bca550 5234 }
Azure.IoT Build 0:6ae2f7bca550 5235
Azure.IoT Build 0:6ae2f7bca550 5236 amqpvalue_destroy(item_value);
Azure.IoT Build 0:6ae2f7bca550 5237 }
Azure.IoT Build 0:6ae2f7bca550 5238 /* state */
Azure.IoT Build 0:6ae2f7bca550 5239 item_value = amqpvalue_get_list_item(list_value, 7);
Azure.IoT Build 0:6ae2f7bca550 5240 if (item_value == NULL)
Azure.IoT Build 0:6ae2f7bca550 5241 {
Azure.IoT Build 0:6ae2f7bca550 5242 /* do nothing */
Azure.IoT Build 0:6ae2f7bca550 5243 }
Azure.IoT Build 0:6ae2f7bca550 5244 else
Azure.IoT Build 0:6ae2f7bca550 5245 {
Azure.IoT Build 0:6ae2f7bca550 5246 amqpvalue_destroy(item_value);
Azure.IoT Build 0:6ae2f7bca550 5247 }
Azure.IoT Build 0:6ae2f7bca550 5248 /* resume */
Azure.IoT Build 0:6ae2f7bca550 5249 item_value = amqpvalue_get_list_item(list_value, 8);
Azure.IoT Build 0:6ae2f7bca550 5250 if (item_value == NULL)
Azure.IoT Build 0:6ae2f7bca550 5251 {
Azure.IoT Build 0:6ae2f7bca550 5252 /* do nothing */
Azure.IoT Build 0:6ae2f7bca550 5253 }
Azure.IoT Build 0:6ae2f7bca550 5254 else
Azure.IoT Build 0:6ae2f7bca550 5255 {
Azure.IoT Build 0:6ae2f7bca550 5256 bool resume;
Azure.IoT Build 0:6ae2f7bca550 5257 if (amqpvalue_get_boolean(item_value, &resume) != 0)
Azure.IoT Build 0:6ae2f7bca550 5258 {
Azure.IoT Build 0:6ae2f7bca550 5259 if (amqpvalue_get_type(item_value) != AMQP_TYPE_NULL)
Azure.IoT Build 0:6ae2f7bca550 5260 {
Azure.IoT Build 0:6ae2f7bca550 5261 transfer_destroy(*transfer_handle);
Azure.IoT Build 0:6ae2f7bca550 5262 result = __LINE__;
Azure.IoT Build 0:6ae2f7bca550 5263 break;
Azure.IoT Build 0:6ae2f7bca550 5264 }
Azure.IoT Build 0:6ae2f7bca550 5265 }
Azure.IoT Build 0:6ae2f7bca550 5266
Azure.IoT Build 0:6ae2f7bca550 5267 amqpvalue_destroy(item_value);
Azure.IoT Build 0:6ae2f7bca550 5268 }
Azure.IoT Build 0:6ae2f7bca550 5269 /* aborted */
Azure.IoT Build 0:6ae2f7bca550 5270 item_value = amqpvalue_get_list_item(list_value, 9);
Azure.IoT Build 0:6ae2f7bca550 5271 if (item_value == NULL)
Azure.IoT Build 0:6ae2f7bca550 5272 {
Azure.IoT Build 0:6ae2f7bca550 5273 /* do nothing */
Azure.IoT Build 0:6ae2f7bca550 5274 }
Azure.IoT Build 0:6ae2f7bca550 5275 else
Azure.IoT Build 0:6ae2f7bca550 5276 {
Azure.IoT Build 0:6ae2f7bca550 5277 bool aborted;
Azure.IoT Build 0:6ae2f7bca550 5278 if (amqpvalue_get_boolean(item_value, &aborted) != 0)
Azure.IoT Build 0:6ae2f7bca550 5279 {
Azure.IoT Build 0:6ae2f7bca550 5280 if (amqpvalue_get_type(item_value) != AMQP_TYPE_NULL)
Azure.IoT Build 0:6ae2f7bca550 5281 {
Azure.IoT Build 0:6ae2f7bca550 5282 transfer_destroy(*transfer_handle);
Azure.IoT Build 0:6ae2f7bca550 5283 result = __LINE__;
Azure.IoT Build 0:6ae2f7bca550 5284 break;
Azure.IoT Build 0:6ae2f7bca550 5285 }
Azure.IoT Build 0:6ae2f7bca550 5286 }
Azure.IoT Build 0:6ae2f7bca550 5287
Azure.IoT Build 0:6ae2f7bca550 5288 amqpvalue_destroy(item_value);
Azure.IoT Build 0:6ae2f7bca550 5289 }
Azure.IoT Build 0:6ae2f7bca550 5290 /* batchable */
Azure.IoT Build 0:6ae2f7bca550 5291 item_value = amqpvalue_get_list_item(list_value, 10);
Azure.IoT Build 0:6ae2f7bca550 5292 if (item_value == NULL)
Azure.IoT Build 0:6ae2f7bca550 5293 {
Azure.IoT Build 0:6ae2f7bca550 5294 /* do nothing */
Azure.IoT Build 0:6ae2f7bca550 5295 }
Azure.IoT Build 0:6ae2f7bca550 5296 else
Azure.IoT Build 0:6ae2f7bca550 5297 {
Azure.IoT Build 0:6ae2f7bca550 5298 bool batchable;
Azure.IoT Build 0:6ae2f7bca550 5299 if (amqpvalue_get_boolean(item_value, &batchable) != 0)
Azure.IoT Build 0:6ae2f7bca550 5300 {
Azure.IoT Build 0:6ae2f7bca550 5301 if (amqpvalue_get_type(item_value) != AMQP_TYPE_NULL)
Azure.IoT Build 0:6ae2f7bca550 5302 {
Azure.IoT Build 0:6ae2f7bca550 5303 transfer_destroy(*transfer_handle);
Azure.IoT Build 0:6ae2f7bca550 5304 result = __LINE__;
Azure.IoT Build 0:6ae2f7bca550 5305 break;
Azure.IoT Build 0:6ae2f7bca550 5306 }
Azure.IoT Build 0:6ae2f7bca550 5307 }
Azure.IoT Build 0:6ae2f7bca550 5308
Azure.IoT Build 0:6ae2f7bca550 5309 amqpvalue_destroy(item_value);
Azure.IoT Build 0:6ae2f7bca550 5310 }
Azure.IoT Build 0:6ae2f7bca550 5311
Azure.IoT Build 0:6ae2f7bca550 5312 transfer_instance->composite_value = amqpvalue_clone(value);
Azure.IoT Build 0:6ae2f7bca550 5313
Azure.IoT Build 0:6ae2f7bca550 5314 result = 0;
Azure.IoT Build 0:6ae2f7bca550 5315 } while (0);
Azure.IoT Build 0:6ae2f7bca550 5316 }
Azure.IoT Build 0:6ae2f7bca550 5317 }
Azure.IoT Build 0:6ae2f7bca550 5318
Azure.IoT Build 0:6ae2f7bca550 5319 return result;
Azure.IoT Build 0:6ae2f7bca550 5320 }
Azure.IoT Build 0:6ae2f7bca550 5321
Azure.IoT Build 0:6ae2f7bca550 5322 int transfer_get_handle(TRANSFER_HANDLE transfer, handle* handle_value)
Azure.IoT Build 0:6ae2f7bca550 5323 {
Azure.IoT Build 0:6ae2f7bca550 5324 int result;
Azure.IoT Build 0:6ae2f7bca550 5325
Azure.IoT Build 0:6ae2f7bca550 5326 if (transfer == NULL)
Azure.IoT Build 0:6ae2f7bca550 5327 {
Azure.IoT Build 0:6ae2f7bca550 5328 result = __LINE__;
Azure.IoT Build 0:6ae2f7bca550 5329 }
Azure.IoT Build 0:6ae2f7bca550 5330 else
Azure.IoT Build 0:6ae2f7bca550 5331 {
Azure.IoT Build 0:6ae2f7bca550 5332 TRANSFER_INSTANCE* transfer_instance = (TRANSFER_INSTANCE*)transfer;
Azure.IoT Build 0:6ae2f7bca550 5333 AMQP_VALUE item_value = amqpvalue_get_composite_item_in_place(transfer_instance->composite_value, 0);
Azure.IoT Build 0:6ae2f7bca550 5334 if (item_value == NULL)
Azure.IoT Build 0:6ae2f7bca550 5335 {
Azure.IoT Build 0:6ae2f7bca550 5336 result = __LINE__;
Azure.IoT Build 0:6ae2f7bca550 5337 }
Azure.IoT Build 0:6ae2f7bca550 5338 else
Azure.IoT Build 0:6ae2f7bca550 5339 {
Azure.IoT Build 0:6ae2f7bca550 5340 if (amqpvalue_get_handle(item_value, handle_value) != 0)
Azure.IoT Build 0:6ae2f7bca550 5341 {
AzureIoTClient 16:22a72cf8e416 5342 result = __LINE__;
Azure.IoT Build 0:6ae2f7bca550 5343 }
Azure.IoT Build 0:6ae2f7bca550 5344 else
Azure.IoT Build 0:6ae2f7bca550 5345 {
Azure.IoT Build 0:6ae2f7bca550 5346 result = 0;
Azure.IoT Build 0:6ae2f7bca550 5347 }
Azure.IoT Build 0:6ae2f7bca550 5348 }
Azure.IoT Build 0:6ae2f7bca550 5349 }
Azure.IoT Build 0:6ae2f7bca550 5350
Azure.IoT Build 0:6ae2f7bca550 5351 return result;
Azure.IoT Build 0:6ae2f7bca550 5352 }
Azure.IoT Build 0:6ae2f7bca550 5353
Azure.IoT Build 0:6ae2f7bca550 5354 int transfer_set_handle(TRANSFER_HANDLE transfer, handle handle_value)
Azure.IoT Build 0:6ae2f7bca550 5355 {
Azure.IoT Build 0:6ae2f7bca550 5356 int result;
Azure.IoT Build 0:6ae2f7bca550 5357
Azure.IoT Build 0:6ae2f7bca550 5358 if (transfer == NULL)
Azure.IoT Build 0:6ae2f7bca550 5359 {
Azure.IoT Build 0:6ae2f7bca550 5360 result = __LINE__;
Azure.IoT Build 0:6ae2f7bca550 5361 }
Azure.IoT Build 0:6ae2f7bca550 5362 else
Azure.IoT Build 0:6ae2f7bca550 5363 {
Azure.IoT Build 0:6ae2f7bca550 5364 TRANSFER_INSTANCE* transfer_instance = (TRANSFER_INSTANCE*)transfer;
Azure.IoT Build 0:6ae2f7bca550 5365 AMQP_VALUE handle_amqp_value = amqpvalue_create_handle(handle_value);
Azure.IoT Build 0:6ae2f7bca550 5366 if (handle_amqp_value == NULL)
Azure.IoT Build 0:6ae2f7bca550 5367 {
Azure.IoT Build 0:6ae2f7bca550 5368 result = __LINE__;
Azure.IoT Build 0:6ae2f7bca550 5369 }
Azure.IoT Build 0:6ae2f7bca550 5370 else
Azure.IoT Build 0:6ae2f7bca550 5371 {
Azure.IoT Build 0:6ae2f7bca550 5372 if (amqpvalue_set_composite_item(transfer_instance->composite_value, 0, handle_amqp_value) != 0)
Azure.IoT Build 0:6ae2f7bca550 5373 {
Azure.IoT Build 0:6ae2f7bca550 5374 result = __LINE__;
Azure.IoT Build 0:6ae2f7bca550 5375 }
Azure.IoT Build 0:6ae2f7bca550 5376 else
Azure.IoT Build 0:6ae2f7bca550 5377 {
Azure.IoT Build 0:6ae2f7bca550 5378 result = 0;
Azure.IoT Build 0:6ae2f7bca550 5379 }
Azure.IoT Build 0:6ae2f7bca550 5380
Azure.IoT Build 0:6ae2f7bca550 5381 amqpvalue_destroy(handle_amqp_value);
Azure.IoT Build 0:6ae2f7bca550 5382 }
Azure.IoT Build 0:6ae2f7bca550 5383 }
Azure.IoT Build 0:6ae2f7bca550 5384
Azure.IoT Build 0:6ae2f7bca550 5385 return result;
Azure.IoT Build 0:6ae2f7bca550 5386 }
Azure.IoT Build 0:6ae2f7bca550 5387
Azure.IoT Build 0:6ae2f7bca550 5388 int transfer_get_delivery_id(TRANSFER_HANDLE transfer, delivery_number* delivery_id_value)
Azure.IoT Build 0:6ae2f7bca550 5389 {
Azure.IoT Build 0:6ae2f7bca550 5390 int result;
Azure.IoT Build 0:6ae2f7bca550 5391
Azure.IoT Build 0:6ae2f7bca550 5392 if (transfer == NULL)
Azure.IoT Build 0:6ae2f7bca550 5393 {
Azure.IoT Build 0:6ae2f7bca550 5394 result = __LINE__;
Azure.IoT Build 0:6ae2f7bca550 5395 }
Azure.IoT Build 0:6ae2f7bca550 5396 else
Azure.IoT Build 0:6ae2f7bca550 5397 {
Azure.IoT Build 0:6ae2f7bca550 5398 TRANSFER_INSTANCE* transfer_instance = (TRANSFER_INSTANCE*)transfer;
Azure.IoT Build 0:6ae2f7bca550 5399 AMQP_VALUE item_value = amqpvalue_get_composite_item_in_place(transfer_instance->composite_value, 1);
Azure.IoT Build 0:6ae2f7bca550 5400 if (item_value == NULL)
Azure.IoT Build 0:6ae2f7bca550 5401 {
Azure.IoT Build 0:6ae2f7bca550 5402 result = __LINE__;
Azure.IoT Build 0:6ae2f7bca550 5403 }
Azure.IoT Build 0:6ae2f7bca550 5404 else
Azure.IoT Build 0:6ae2f7bca550 5405 {
Azure.IoT Build 0:6ae2f7bca550 5406 if (amqpvalue_get_delivery_number(item_value, delivery_id_value) != 0)
Azure.IoT Build 0:6ae2f7bca550 5407 {
AzureIoTClient 16:22a72cf8e416 5408 result = __LINE__;
Azure.IoT Build 0:6ae2f7bca550 5409 }
Azure.IoT Build 0:6ae2f7bca550 5410 else
Azure.IoT Build 0:6ae2f7bca550 5411 {
Azure.IoT Build 0:6ae2f7bca550 5412 result = 0;
Azure.IoT Build 0:6ae2f7bca550 5413 }
Azure.IoT Build 0:6ae2f7bca550 5414 }
Azure.IoT Build 0:6ae2f7bca550 5415 }
Azure.IoT Build 0:6ae2f7bca550 5416
Azure.IoT Build 0:6ae2f7bca550 5417 return result;
Azure.IoT Build 0:6ae2f7bca550 5418 }
Azure.IoT Build 0:6ae2f7bca550 5419
Azure.IoT Build 0:6ae2f7bca550 5420 int transfer_set_delivery_id(TRANSFER_HANDLE transfer, delivery_number delivery_id_value)
Azure.IoT Build 0:6ae2f7bca550 5421 {
Azure.IoT Build 0:6ae2f7bca550 5422 int result;
Azure.IoT Build 0:6ae2f7bca550 5423
Azure.IoT Build 0:6ae2f7bca550 5424 if (transfer == NULL)
Azure.IoT Build 0:6ae2f7bca550 5425 {
Azure.IoT Build 0:6ae2f7bca550 5426 result = __LINE__;
Azure.IoT Build 0:6ae2f7bca550 5427 }
Azure.IoT Build 0:6ae2f7bca550 5428 else
Azure.IoT Build 0:6ae2f7bca550 5429 {
Azure.IoT Build 0:6ae2f7bca550 5430 TRANSFER_INSTANCE* transfer_instance = (TRANSFER_INSTANCE*)transfer;
Azure.IoT Build 0:6ae2f7bca550 5431 AMQP_VALUE delivery_id_amqp_value = amqpvalue_create_delivery_number(delivery_id_value);
Azure.IoT Build 0:6ae2f7bca550 5432 if (delivery_id_amqp_value == NULL)
Azure.IoT Build 0:6ae2f7bca550 5433 {
Azure.IoT Build 0:6ae2f7bca550 5434 result = __LINE__;
Azure.IoT Build 0:6ae2f7bca550 5435 }
Azure.IoT Build 0:6ae2f7bca550 5436 else
Azure.IoT Build 0:6ae2f7bca550 5437 {
Azure.IoT Build 0:6ae2f7bca550 5438 if (amqpvalue_set_composite_item(transfer_instance->composite_value, 1, delivery_id_amqp_value) != 0)
Azure.IoT Build 0:6ae2f7bca550 5439 {
Azure.IoT Build 0:6ae2f7bca550 5440 result = __LINE__;
Azure.IoT Build 0:6ae2f7bca550 5441 }
Azure.IoT Build 0:6ae2f7bca550 5442 else
Azure.IoT Build 0:6ae2f7bca550 5443 {
Azure.IoT Build 0:6ae2f7bca550 5444 result = 0;
Azure.IoT Build 0:6ae2f7bca550 5445 }
Azure.IoT Build 0:6ae2f7bca550 5446
Azure.IoT Build 0:6ae2f7bca550 5447 amqpvalue_destroy(delivery_id_amqp_value);
Azure.IoT Build 0:6ae2f7bca550 5448 }
Azure.IoT Build 0:6ae2f7bca550 5449 }
Azure.IoT Build 0:6ae2f7bca550 5450
Azure.IoT Build 0:6ae2f7bca550 5451 return result;
Azure.IoT Build 0:6ae2f7bca550 5452 }
Azure.IoT Build 0:6ae2f7bca550 5453
Azure.IoT Build 0:6ae2f7bca550 5454 int transfer_get_delivery_tag(TRANSFER_HANDLE transfer, delivery_tag* delivery_tag_value)
Azure.IoT Build 0:6ae2f7bca550 5455 {
Azure.IoT Build 0:6ae2f7bca550 5456 int result;
Azure.IoT Build 0:6ae2f7bca550 5457
Azure.IoT Build 0:6ae2f7bca550 5458 if (transfer == NULL)
Azure.IoT Build 0:6ae2f7bca550 5459 {
Azure.IoT Build 0:6ae2f7bca550 5460 result = __LINE__;
Azure.IoT Build 0:6ae2f7bca550 5461 }
Azure.IoT Build 0:6ae2f7bca550 5462 else
Azure.IoT Build 0:6ae2f7bca550 5463 {
Azure.IoT Build 0:6ae2f7bca550 5464 TRANSFER_INSTANCE* transfer_instance = (TRANSFER_INSTANCE*)transfer;
Azure.IoT Build 0:6ae2f7bca550 5465 AMQP_VALUE item_value = amqpvalue_get_composite_item_in_place(transfer_instance->composite_value, 2);
Azure.IoT Build 0:6ae2f7bca550 5466 if (item_value == NULL)
Azure.IoT Build 0:6ae2f7bca550 5467 {
Azure.IoT Build 0:6ae2f7bca550 5468 result = __LINE__;
Azure.IoT Build 0:6ae2f7bca550 5469 }
Azure.IoT Build 0:6ae2f7bca550 5470 else
Azure.IoT Build 0:6ae2f7bca550 5471 {
Azure.IoT Build 0:6ae2f7bca550 5472 if (amqpvalue_get_delivery_tag(item_value, delivery_tag_value) != 0)
Azure.IoT Build 0:6ae2f7bca550 5473 {
AzureIoTClient 16:22a72cf8e416 5474 result = __LINE__;
Azure.IoT Build 0:6ae2f7bca550 5475 }
Azure.IoT Build 0:6ae2f7bca550 5476 else
Azure.IoT Build 0:6ae2f7bca550 5477 {
Azure.IoT Build 0:6ae2f7bca550 5478 result = 0;
Azure.IoT Build 0:6ae2f7bca550 5479 }
Azure.IoT Build 0:6ae2f7bca550 5480 }
Azure.IoT Build 0:6ae2f7bca550 5481 }
Azure.IoT Build 0:6ae2f7bca550 5482
Azure.IoT Build 0:6ae2f7bca550 5483 return result;
Azure.IoT Build 0:6ae2f7bca550 5484 }
Azure.IoT Build 0:6ae2f7bca550 5485
Azure.IoT Build 0:6ae2f7bca550 5486 int transfer_set_delivery_tag(TRANSFER_HANDLE transfer, delivery_tag delivery_tag_value)
Azure.IoT Build 0:6ae2f7bca550 5487 {
Azure.IoT Build 0:6ae2f7bca550 5488 int result;
Azure.IoT Build 0:6ae2f7bca550 5489
Azure.IoT Build 0:6ae2f7bca550 5490 if (transfer == NULL)
Azure.IoT Build 0:6ae2f7bca550 5491 {
Azure.IoT Build 0:6ae2f7bca550 5492 result = __LINE__;
Azure.IoT Build 0:6ae2f7bca550 5493 }
Azure.IoT Build 0:6ae2f7bca550 5494 else
Azure.IoT Build 0:6ae2f7bca550 5495 {
Azure.IoT Build 0:6ae2f7bca550 5496 TRANSFER_INSTANCE* transfer_instance = (TRANSFER_INSTANCE*)transfer;
Azure.IoT Build 0:6ae2f7bca550 5497 AMQP_VALUE delivery_tag_amqp_value = amqpvalue_create_delivery_tag(delivery_tag_value);
Azure.IoT Build 0:6ae2f7bca550 5498 if (delivery_tag_amqp_value == NULL)
Azure.IoT Build 0:6ae2f7bca550 5499 {
Azure.IoT Build 0:6ae2f7bca550 5500 result = __LINE__;
Azure.IoT Build 0:6ae2f7bca550 5501 }
Azure.IoT Build 0:6ae2f7bca550 5502 else
Azure.IoT Build 0:6ae2f7bca550 5503 {
Azure.IoT Build 0:6ae2f7bca550 5504 if (amqpvalue_set_composite_item(transfer_instance->composite_value, 2, delivery_tag_amqp_value) != 0)
Azure.IoT Build 0:6ae2f7bca550 5505 {
Azure.IoT Build 0:6ae2f7bca550 5506 result = __LINE__;
Azure.IoT Build 0:6ae2f7bca550 5507 }
Azure.IoT Build 0:6ae2f7bca550 5508 else
Azure.IoT Build 0:6ae2f7bca550 5509 {
Azure.IoT Build 0:6ae2f7bca550 5510 result = 0;
Azure.IoT Build 0:6ae2f7bca550 5511 }
Azure.IoT Build 0:6ae2f7bca550 5512
Azure.IoT Build 0:6ae2f7bca550 5513 amqpvalue_destroy(delivery_tag_amqp_value);
Azure.IoT Build 0:6ae2f7bca550 5514 }
Azure.IoT Build 0:6ae2f7bca550 5515 }
Azure.IoT Build 0:6ae2f7bca550 5516
Azure.IoT Build 0:6ae2f7bca550 5517 return result;
Azure.IoT Build 0:6ae2f7bca550 5518 }
Azure.IoT Build 0:6ae2f7bca550 5519
Azure.IoT Build 0:6ae2f7bca550 5520 int transfer_get_message_format(TRANSFER_HANDLE transfer, message_format* message_format_value)
Azure.IoT Build 0:6ae2f7bca550 5521 {
Azure.IoT Build 0:6ae2f7bca550 5522 int result;
Azure.IoT Build 0:6ae2f7bca550 5523
Azure.IoT Build 0:6ae2f7bca550 5524 if (transfer == NULL)
Azure.IoT Build 0:6ae2f7bca550 5525 {
Azure.IoT Build 0:6ae2f7bca550 5526 result = __LINE__;
Azure.IoT Build 0:6ae2f7bca550 5527 }
Azure.IoT Build 0:6ae2f7bca550 5528 else
Azure.IoT Build 0:6ae2f7bca550 5529 {
Azure.IoT Build 0:6ae2f7bca550 5530 TRANSFER_INSTANCE* transfer_instance = (TRANSFER_INSTANCE*)transfer;
Azure.IoT Build 0:6ae2f7bca550 5531 AMQP_VALUE item_value = amqpvalue_get_composite_item_in_place(transfer_instance->composite_value, 3);
Azure.IoT Build 0:6ae2f7bca550 5532 if (item_value == NULL)
Azure.IoT Build 0:6ae2f7bca550 5533 {
Azure.IoT Build 0:6ae2f7bca550 5534 result = __LINE__;
Azure.IoT Build 0:6ae2f7bca550 5535 }
Azure.IoT Build 0:6ae2f7bca550 5536 else
Azure.IoT Build 0:6ae2f7bca550 5537 {
Azure.IoT Build 0:6ae2f7bca550 5538 if (amqpvalue_get_message_format(item_value, message_format_value) != 0)
Azure.IoT Build 0:6ae2f7bca550 5539 {
AzureIoTClient 16:22a72cf8e416 5540 result = __LINE__;
Azure.IoT Build 0:6ae2f7bca550 5541 }
Azure.IoT Build 0:6ae2f7bca550 5542 else
Azure.IoT Build 0:6ae2f7bca550 5543 {
Azure.IoT Build 0:6ae2f7bca550 5544 result = 0;
Azure.IoT Build 0:6ae2f7bca550 5545 }
Azure.IoT Build 0:6ae2f7bca550 5546 }
Azure.IoT Build 0:6ae2f7bca550 5547 }
Azure.IoT Build 0:6ae2f7bca550 5548
Azure.IoT Build 0:6ae2f7bca550 5549 return result;
Azure.IoT Build 0:6ae2f7bca550 5550 }
Azure.IoT Build 0:6ae2f7bca550 5551
Azure.IoT Build 0:6ae2f7bca550 5552 int transfer_set_message_format(TRANSFER_HANDLE transfer, message_format message_format_value)
Azure.IoT Build 0:6ae2f7bca550 5553 {
Azure.IoT Build 0:6ae2f7bca550 5554 int result;
Azure.IoT Build 0:6ae2f7bca550 5555
Azure.IoT Build 0:6ae2f7bca550 5556 if (transfer == NULL)
Azure.IoT Build 0:6ae2f7bca550 5557 {
Azure.IoT Build 0:6ae2f7bca550 5558 result = __LINE__;
Azure.IoT Build 0:6ae2f7bca550 5559 }
Azure.IoT Build 0:6ae2f7bca550 5560 else
Azure.IoT Build 0:6ae2f7bca550 5561 {
Azure.IoT Build 0:6ae2f7bca550 5562 TRANSFER_INSTANCE* transfer_instance = (TRANSFER_INSTANCE*)transfer;
Azure.IoT Build 0:6ae2f7bca550 5563 AMQP_VALUE message_format_amqp_value = amqpvalue_create_message_format(message_format_value);
Azure.IoT Build 0:6ae2f7bca550 5564 if (message_format_amqp_value == NULL)
Azure.IoT Build 0:6ae2f7bca550 5565 {
Azure.IoT Build 0:6ae2f7bca550 5566 result = __LINE__;
Azure.IoT Build 0:6ae2f7bca550 5567 }
Azure.IoT Build 0:6ae2f7bca550 5568 else
Azure.IoT Build 0:6ae2f7bca550 5569 {
Azure.IoT Build 0:6ae2f7bca550 5570 if (amqpvalue_set_composite_item(transfer_instance->composite_value, 3, message_format_amqp_value) != 0)
Azure.IoT Build 0:6ae2f7bca550 5571 {
Azure.IoT Build 0:6ae2f7bca550 5572 result = __LINE__;
Azure.IoT Build 0:6ae2f7bca550 5573 }
Azure.IoT Build 0:6ae2f7bca550 5574 else
Azure.IoT Build 0:6ae2f7bca550 5575 {
Azure.IoT Build 0:6ae2f7bca550 5576 result = 0;
Azure.IoT Build 0:6ae2f7bca550 5577 }
Azure.IoT Build 0:6ae2f7bca550 5578
Azure.IoT Build 0:6ae2f7bca550 5579 amqpvalue_destroy(message_format_amqp_value);
Azure.IoT Build 0:6ae2f7bca550 5580 }
Azure.IoT Build 0:6ae2f7bca550 5581 }
Azure.IoT Build 0:6ae2f7bca550 5582
Azure.IoT Build 0:6ae2f7bca550 5583 return result;
Azure.IoT Build 0:6ae2f7bca550 5584 }
Azure.IoT Build 0:6ae2f7bca550 5585
Azure.IoT Build 0:6ae2f7bca550 5586 int transfer_get_settled(TRANSFER_HANDLE transfer, bool* settled_value)
Azure.IoT Build 0:6ae2f7bca550 5587 {
Azure.IoT Build 0:6ae2f7bca550 5588 int result;
Azure.IoT Build 0:6ae2f7bca550 5589
Azure.IoT Build 0:6ae2f7bca550 5590 if (transfer == NULL)
Azure.IoT Build 0:6ae2f7bca550 5591 {
Azure.IoT Build 0:6ae2f7bca550 5592 result = __LINE__;
Azure.IoT Build 0:6ae2f7bca550 5593 }
Azure.IoT Build 0:6ae2f7bca550 5594 else
Azure.IoT Build 0:6ae2f7bca550 5595 {
Azure.IoT Build 0:6ae2f7bca550 5596 TRANSFER_INSTANCE* transfer_instance = (TRANSFER_INSTANCE*)transfer;
Azure.IoT Build 0:6ae2f7bca550 5597 AMQP_VALUE item_value = amqpvalue_get_composite_item_in_place(transfer_instance->composite_value, 4);
Azure.IoT Build 0:6ae2f7bca550 5598 if (item_value == NULL)
Azure.IoT Build 0:6ae2f7bca550 5599 {
Azure.IoT Build 0:6ae2f7bca550 5600 result = __LINE__;
Azure.IoT Build 0:6ae2f7bca550 5601 }
Azure.IoT Build 0:6ae2f7bca550 5602 else
Azure.IoT Build 0:6ae2f7bca550 5603 {
Azure.IoT Build 0:6ae2f7bca550 5604 if (amqpvalue_get_boolean(item_value, settled_value) != 0)
Azure.IoT Build 0:6ae2f7bca550 5605 {
AzureIoTClient 16:22a72cf8e416 5606 result = __LINE__;
Azure.IoT Build 0:6ae2f7bca550 5607 }
Azure.IoT Build 0:6ae2f7bca550 5608 else
Azure.IoT Build 0:6ae2f7bca550 5609 {
Azure.IoT Build 0:6ae2f7bca550 5610 result = 0;
Azure.IoT Build 0:6ae2f7bca550 5611 }
Azure.IoT Build 0:6ae2f7bca550 5612 }
Azure.IoT Build 0:6ae2f7bca550 5613 }
Azure.IoT Build 0:6ae2f7bca550 5614
Azure.IoT Build 0:6ae2f7bca550 5615 return result;
Azure.IoT Build 0:6ae2f7bca550 5616 }
Azure.IoT Build 0:6ae2f7bca550 5617
Azure.IoT Build 0:6ae2f7bca550 5618 int transfer_set_settled(TRANSFER_HANDLE transfer, bool settled_value)
Azure.IoT Build 0:6ae2f7bca550 5619 {
Azure.IoT Build 0:6ae2f7bca550 5620 int result;
Azure.IoT Build 0:6ae2f7bca550 5621
Azure.IoT Build 0:6ae2f7bca550 5622 if (transfer == NULL)
Azure.IoT Build 0:6ae2f7bca550 5623 {
Azure.IoT Build 0:6ae2f7bca550 5624 result = __LINE__;
Azure.IoT Build 0:6ae2f7bca550 5625 }
Azure.IoT Build 0:6ae2f7bca550 5626 else
Azure.IoT Build 0:6ae2f7bca550 5627 {
Azure.IoT Build 0:6ae2f7bca550 5628 TRANSFER_INSTANCE* transfer_instance = (TRANSFER_INSTANCE*)transfer;
Azure.IoT Build 0:6ae2f7bca550 5629 AMQP_VALUE settled_amqp_value = amqpvalue_create_boolean(settled_value);
Azure.IoT Build 0:6ae2f7bca550 5630 if (settled_amqp_value == NULL)
Azure.IoT Build 0:6ae2f7bca550 5631 {
Azure.IoT Build 0:6ae2f7bca550 5632 result = __LINE__;
Azure.IoT Build 0:6ae2f7bca550 5633 }
Azure.IoT Build 0:6ae2f7bca550 5634 else
Azure.IoT Build 0:6ae2f7bca550 5635 {
Azure.IoT Build 0:6ae2f7bca550 5636 if (amqpvalue_set_composite_item(transfer_instance->composite_value, 4, settled_amqp_value) != 0)
Azure.IoT Build 0:6ae2f7bca550 5637 {
Azure.IoT Build 0:6ae2f7bca550 5638 result = __LINE__;
Azure.IoT Build 0:6ae2f7bca550 5639 }
Azure.IoT Build 0:6ae2f7bca550 5640 else
Azure.IoT Build 0:6ae2f7bca550 5641 {
Azure.IoT Build 0:6ae2f7bca550 5642 result = 0;
Azure.IoT Build 0:6ae2f7bca550 5643 }
Azure.IoT Build 0:6ae2f7bca550 5644
Azure.IoT Build 0:6ae2f7bca550 5645 amqpvalue_destroy(settled_amqp_value);
Azure.IoT Build 0:6ae2f7bca550 5646 }
Azure.IoT Build 0:6ae2f7bca550 5647 }
Azure.IoT Build 0:6ae2f7bca550 5648
Azure.IoT Build 0:6ae2f7bca550 5649 return result;
Azure.IoT Build 0:6ae2f7bca550 5650 }
Azure.IoT Build 0:6ae2f7bca550 5651
Azure.IoT Build 0:6ae2f7bca550 5652 int transfer_get_more(TRANSFER_HANDLE transfer, bool* more_value)
Azure.IoT Build 0:6ae2f7bca550 5653 {
Azure.IoT Build 0:6ae2f7bca550 5654 int result;
Azure.IoT Build 0:6ae2f7bca550 5655
Azure.IoT Build 0:6ae2f7bca550 5656 if (transfer == NULL)
Azure.IoT Build 0:6ae2f7bca550 5657 {
Azure.IoT Build 0:6ae2f7bca550 5658 result = __LINE__;
Azure.IoT Build 0:6ae2f7bca550 5659 }
Azure.IoT Build 0:6ae2f7bca550 5660 else
Azure.IoT Build 0:6ae2f7bca550 5661 {
Azure.IoT Build 0:6ae2f7bca550 5662 TRANSFER_INSTANCE* transfer_instance = (TRANSFER_INSTANCE*)transfer;
Azure.IoT Build 0:6ae2f7bca550 5663 AMQP_VALUE item_value = amqpvalue_get_composite_item_in_place(transfer_instance->composite_value, 5);
Azure.IoT Build 0:6ae2f7bca550 5664 if (item_value == NULL)
Azure.IoT Build 0:6ae2f7bca550 5665 {
AzureIoTClient 16:22a72cf8e416 5666 *more_value = false;
AzureIoTClient 16:22a72cf8e416 5667 result = 0;
Azure.IoT Build 0:6ae2f7bca550 5668 }
Azure.IoT Build 0:6ae2f7bca550 5669 else
Azure.IoT Build 0:6ae2f7bca550 5670 {
Azure.IoT Build 0:6ae2f7bca550 5671 if (amqpvalue_get_boolean(item_value, more_value) != 0)
Azure.IoT Build 0:6ae2f7bca550 5672 {
AzureIoTClient 16:22a72cf8e416 5673 if (amqpvalue_get_type(item_value) == AMQP_TYPE_NULL)
AzureIoTClient 16:22a72cf8e416 5674 {
AzureIoTClient 16:22a72cf8e416 5675 result = __LINE__;
AzureIoTClient 16:22a72cf8e416 5676 }
AzureIoTClient 16:22a72cf8e416 5677 else
AzureIoTClient 16:22a72cf8e416 5678 {
AzureIoTClient 16:22a72cf8e416 5679 *more_value = false;
AzureIoTClient 16:22a72cf8e416 5680 result = 0;
AzureIoTClient 16:22a72cf8e416 5681 }
Azure.IoT Build 0:6ae2f7bca550 5682 }
Azure.IoT Build 0:6ae2f7bca550 5683 else
Azure.IoT Build 0:6ae2f7bca550 5684 {
Azure.IoT Build 0:6ae2f7bca550 5685 result = 0;
Azure.IoT Build 0:6ae2f7bca550 5686 }
Azure.IoT Build 0:6ae2f7bca550 5687 }
Azure.IoT Build 0:6ae2f7bca550 5688 }
Azure.IoT Build 0:6ae2f7bca550 5689
Azure.IoT Build 0:6ae2f7bca550 5690 return result;
Azure.IoT Build 0:6ae2f7bca550 5691 }
Azure.IoT Build 0:6ae2f7bca550 5692
Azure.IoT Build 0:6ae2f7bca550 5693 int transfer_set_more(TRANSFER_HANDLE transfer, bool more_value)
Azure.IoT Build 0:6ae2f7bca550 5694 {
Azure.IoT Build 0:6ae2f7bca550 5695 int result;
Azure.IoT Build 0:6ae2f7bca550 5696
Azure.IoT Build 0:6ae2f7bca550 5697 if (transfer == NULL)
Azure.IoT Build 0:6ae2f7bca550 5698 {
Azure.IoT Build 0:6ae2f7bca550 5699 result = __LINE__;
Azure.IoT Build 0:6ae2f7bca550 5700 }
Azure.IoT Build 0:6ae2f7bca550 5701 else
Azure.IoT Build 0:6ae2f7bca550 5702 {
Azure.IoT Build 0:6ae2f7bca550 5703 TRANSFER_INSTANCE* transfer_instance = (TRANSFER_INSTANCE*)transfer;
Azure.IoT Build 0:6ae2f7bca550 5704 AMQP_VALUE more_amqp_value = amqpvalue_create_boolean(more_value);
Azure.IoT Build 0:6ae2f7bca550 5705 if (more_amqp_value == NULL)
Azure.IoT Build 0:6ae2f7bca550 5706 {
Azure.IoT Build 0:6ae2f7bca550 5707 result = __LINE__;
Azure.IoT Build 0:6ae2f7bca550 5708 }
Azure.IoT Build 0:6ae2f7bca550 5709 else
Azure.IoT Build 0:6ae2f7bca550 5710 {
Azure.IoT Build 0:6ae2f7bca550 5711 if (amqpvalue_set_composite_item(transfer_instance->composite_value, 5, more_amqp_value) != 0)
Azure.IoT Build 0:6ae2f7bca550 5712 {
Azure.IoT Build 0:6ae2f7bca550 5713 result = __LINE__;
Azure.IoT Build 0:6ae2f7bca550 5714 }
Azure.IoT Build 0:6ae2f7bca550 5715 else
Azure.IoT Build 0:6ae2f7bca550 5716 {
Azure.IoT Build 0:6ae2f7bca550 5717 result = 0;
Azure.IoT Build 0:6ae2f7bca550 5718 }
Azure.IoT Build 0:6ae2f7bca550 5719
Azure.IoT Build 0:6ae2f7bca550 5720 amqpvalue_destroy(more_amqp_value);
Azure.IoT Build 0:6ae2f7bca550 5721 }
Azure.IoT Build 0:6ae2f7bca550 5722 }
Azure.IoT Build 0:6ae2f7bca550 5723
Azure.IoT Build 0:6ae2f7bca550 5724 return result;
Azure.IoT Build 0:6ae2f7bca550 5725 }
Azure.IoT Build 0:6ae2f7bca550 5726
Azure.IoT Build 0:6ae2f7bca550 5727 int transfer_get_rcv_settle_mode(TRANSFER_HANDLE transfer, receiver_settle_mode* rcv_settle_mode_value)
Azure.IoT Build 0:6ae2f7bca550 5728 {
Azure.IoT Build 0:6ae2f7bca550 5729 int result;
Azure.IoT Build 0:6ae2f7bca550 5730
Azure.IoT Build 0:6ae2f7bca550 5731 if (transfer == NULL)
Azure.IoT Build 0:6ae2f7bca550 5732 {
Azure.IoT Build 0:6ae2f7bca550 5733 result = __LINE__;
Azure.IoT Build 0:6ae2f7bca550 5734 }
Azure.IoT Build 0:6ae2f7bca550 5735 else
Azure.IoT Build 0:6ae2f7bca550 5736 {
Azure.IoT Build 0:6ae2f7bca550 5737 TRANSFER_INSTANCE* transfer_instance = (TRANSFER_INSTANCE*)transfer;
Azure.IoT Build 0:6ae2f7bca550 5738 AMQP_VALUE item_value = amqpvalue_get_composite_item_in_place(transfer_instance->composite_value, 6);
Azure.IoT Build 0:6ae2f7bca550 5739 if (item_value == NULL)
Azure.IoT Build 0:6ae2f7bca550 5740 {
Azure.IoT Build 0:6ae2f7bca550 5741 result = __LINE__;
Azure.IoT Build 0:6ae2f7bca550 5742 }
Azure.IoT Build 0:6ae2f7bca550 5743 else
Azure.IoT Build 0:6ae2f7bca550 5744 {
Azure.IoT Build 0:6ae2f7bca550 5745 if (amqpvalue_get_receiver_settle_mode(item_value, rcv_settle_mode_value) != 0)
Azure.IoT Build 0:6ae2f7bca550 5746 {
AzureIoTClient 16:22a72cf8e416 5747 result = __LINE__;
Azure.IoT Build 0:6ae2f7bca550 5748 }
Azure.IoT Build 0:6ae2f7bca550 5749 else
Azure.IoT Build 0:6ae2f7bca550 5750 {
Azure.IoT Build 0:6ae2f7bca550 5751 result = 0;
Azure.IoT Build 0:6ae2f7bca550 5752 }
Azure.IoT Build 0:6ae2f7bca550 5753 }
Azure.IoT Build 0:6ae2f7bca550 5754 }
Azure.IoT Build 0:6ae2f7bca550 5755
Azure.IoT Build 0:6ae2f7bca550 5756 return result;
Azure.IoT Build 0:6ae2f7bca550 5757 }
Azure.IoT Build 0:6ae2f7bca550 5758
Azure.IoT Build 0:6ae2f7bca550 5759 int transfer_set_rcv_settle_mode(TRANSFER_HANDLE transfer, receiver_settle_mode rcv_settle_mode_value)
Azure.IoT Build 0:6ae2f7bca550 5760 {
Azure.IoT Build 0:6ae2f7bca550 5761 int result;
Azure.IoT Build 0:6ae2f7bca550 5762
Azure.IoT Build 0:6ae2f7bca550 5763 if (transfer == NULL)
Azure.IoT Build 0:6ae2f7bca550 5764 {
Azure.IoT Build 0:6ae2f7bca550 5765 result = __LINE__;
Azure.IoT Build 0:6ae2f7bca550 5766 }
Azure.IoT Build 0:6ae2f7bca550 5767 else
Azure.IoT Build 0:6ae2f7bca550 5768 {
Azure.IoT Build 0:6ae2f7bca550 5769 TRANSFER_INSTANCE* transfer_instance = (TRANSFER_INSTANCE*)transfer;
Azure.IoT Build 0:6ae2f7bca550 5770 AMQP_VALUE rcv_settle_mode_amqp_value = amqpvalue_create_receiver_settle_mode(rcv_settle_mode_value);
Azure.IoT Build 0:6ae2f7bca550 5771 if (rcv_settle_mode_amqp_value == NULL)
Azure.IoT Build 0:6ae2f7bca550 5772 {
Azure.IoT Build 0:6ae2f7bca550 5773 result = __LINE__;
Azure.IoT Build 0:6ae2f7bca550 5774 }
Azure.IoT Build 0:6ae2f7bca550 5775 else
Azure.IoT Build 0:6ae2f7bca550 5776 {
Azure.IoT Build 0:6ae2f7bca550 5777 if (amqpvalue_set_composite_item(transfer_instance->composite_value, 6, rcv_settle_mode_amqp_value) != 0)
Azure.IoT Build 0:6ae2f7bca550 5778 {
Azure.IoT Build 0:6ae2f7bca550 5779 result = __LINE__;
Azure.IoT Build 0:6ae2f7bca550 5780 }
Azure.IoT Build 0:6ae2f7bca550 5781 else
Azure.IoT Build 0:6ae2f7bca550 5782 {
Azure.IoT Build 0:6ae2f7bca550 5783 result = 0;
Azure.IoT Build 0:6ae2f7bca550 5784 }
Azure.IoT Build 0:6ae2f7bca550 5785
Azure.IoT Build 0:6ae2f7bca550 5786 amqpvalue_destroy(rcv_settle_mode_amqp_value);
Azure.IoT Build 0:6ae2f7bca550 5787 }
Azure.IoT Build 0:6ae2f7bca550 5788 }
Azure.IoT Build 0:6ae2f7bca550 5789
Azure.IoT Build 0:6ae2f7bca550 5790 return result;
Azure.IoT Build 0:6ae2f7bca550 5791 }
Azure.IoT Build 0:6ae2f7bca550 5792
Azure.IoT Build 0:6ae2f7bca550 5793 int transfer_get_state(TRANSFER_HANDLE transfer, AMQP_VALUE* state_value)
Azure.IoT Build 0:6ae2f7bca550 5794 {
Azure.IoT Build 0:6ae2f7bca550 5795 int result;
Azure.IoT Build 0:6ae2f7bca550 5796
Azure.IoT Build 0:6ae2f7bca550 5797 if (transfer == NULL)
Azure.IoT Build 0:6ae2f7bca550 5798 {
Azure.IoT Build 0:6ae2f7bca550 5799 result = __LINE__;
Azure.IoT Build 0:6ae2f7bca550 5800 }
Azure.IoT Build 0:6ae2f7bca550 5801 else
Azure.IoT Build 0:6ae2f7bca550 5802 {
Azure.IoT Build 0:6ae2f7bca550 5803 TRANSFER_INSTANCE* transfer_instance = (TRANSFER_INSTANCE*)transfer;
Azure.IoT Build 0:6ae2f7bca550 5804 AMQP_VALUE item_value = amqpvalue_get_composite_item_in_place(transfer_instance->composite_value, 7);
Azure.IoT Build 0:6ae2f7bca550 5805 if (item_value == NULL)
Azure.IoT Build 0:6ae2f7bca550 5806 {
Azure.IoT Build 0:6ae2f7bca550 5807 result = __LINE__;
Azure.IoT Build 0:6ae2f7bca550 5808 }
Azure.IoT Build 0:6ae2f7bca550 5809 else
Azure.IoT Build 0:6ae2f7bca550 5810 {
Azure.IoT Build 0:6ae2f7bca550 5811 *state_value = item_value;
Azure.IoT Build 0:6ae2f7bca550 5812 result = 0;
Azure.IoT Build 0:6ae2f7bca550 5813 }
Azure.IoT Build 0:6ae2f7bca550 5814 }
Azure.IoT Build 0:6ae2f7bca550 5815
Azure.IoT Build 0:6ae2f7bca550 5816 return result;
Azure.IoT Build 0:6ae2f7bca550 5817 }
Azure.IoT Build 0:6ae2f7bca550 5818
Azure.IoT Build 0:6ae2f7bca550 5819 int transfer_set_state(TRANSFER_HANDLE transfer, AMQP_VALUE state_value)
Azure.IoT Build 0:6ae2f7bca550 5820 {
Azure.IoT Build 0:6ae2f7bca550 5821 int result;
Azure.IoT Build 0:6ae2f7bca550 5822
Azure.IoT Build 0:6ae2f7bca550 5823 if (transfer == NULL)
Azure.IoT Build 0:6ae2f7bca550 5824 {
Azure.IoT Build 0:6ae2f7bca550 5825 result = __LINE__;
Azure.IoT Build 0:6ae2f7bca550 5826 }
Azure.IoT Build 0:6ae2f7bca550 5827 else
Azure.IoT Build 0:6ae2f7bca550 5828 {
Azure.IoT Build 0:6ae2f7bca550 5829 TRANSFER_INSTANCE* transfer_instance = (TRANSFER_INSTANCE*)transfer;
Azure.IoT Build 0:6ae2f7bca550 5830 AMQP_VALUE state_amqp_value = amqpvalue_clone(state_value);
Azure.IoT Build 0:6ae2f7bca550 5831 if (state_amqp_value == NULL)
Azure.IoT Build 0:6ae2f7bca550 5832 {
Azure.IoT Build 0:6ae2f7bca550 5833 result = __LINE__;
Azure.IoT Build 0:6ae2f7bca550 5834 }
Azure.IoT Build 0:6ae2f7bca550 5835 else
Azure.IoT Build 0:6ae2f7bca550 5836 {
Azure.IoT Build 0:6ae2f7bca550 5837 if (amqpvalue_set_composite_item(transfer_instance->composite_value, 7, state_amqp_value) != 0)
Azure.IoT Build 0:6ae2f7bca550 5838 {
Azure.IoT Build 0:6ae2f7bca550 5839 result = __LINE__;
Azure.IoT Build 0:6ae2f7bca550 5840 }
Azure.IoT Build 0:6ae2f7bca550 5841 else
Azure.IoT Build 0:6ae2f7bca550 5842 {
Azure.IoT Build 0:6ae2f7bca550 5843 result = 0;
Azure.IoT Build 0:6ae2f7bca550 5844 }
Azure.IoT Build 0:6ae2f7bca550 5845
Azure.IoT Build 0:6ae2f7bca550 5846 amqpvalue_destroy(state_amqp_value);
Azure.IoT Build 0:6ae2f7bca550 5847 }
Azure.IoT Build 0:6ae2f7bca550 5848 }
Azure.IoT Build 0:6ae2f7bca550 5849
Azure.IoT Build 0:6ae2f7bca550 5850 return result;
Azure.IoT Build 0:6ae2f7bca550 5851 }
Azure.IoT Build 0:6ae2f7bca550 5852
Azure.IoT Build 0:6ae2f7bca550 5853 int transfer_get_resume(TRANSFER_HANDLE transfer, bool* resume_value)
Azure.IoT Build 0:6ae2f7bca550 5854 {
Azure.IoT Build 0:6ae2f7bca550 5855 int result;
Azure.IoT Build 0:6ae2f7bca550 5856
Azure.IoT Build 0:6ae2f7bca550 5857 if (transfer == NULL)
Azure.IoT Build 0:6ae2f7bca550 5858 {
Azure.IoT Build 0:6ae2f7bca550 5859 result = __LINE__;
Azure.IoT Build 0:6ae2f7bca550 5860 }
Azure.IoT Build 0:6ae2f7bca550 5861 else
Azure.IoT Build 0:6ae2f7bca550 5862 {
Azure.IoT Build 0:6ae2f7bca550 5863 TRANSFER_INSTANCE* transfer_instance = (TRANSFER_INSTANCE*)transfer;
Azure.IoT Build 0:6ae2f7bca550 5864 AMQP_VALUE item_value = amqpvalue_get_composite_item_in_place(transfer_instance->composite_value, 8);
Azure.IoT Build 0:6ae2f7bca550 5865 if (item_value == NULL)
Azure.IoT Build 0:6ae2f7bca550 5866 {
AzureIoTClient 16:22a72cf8e416 5867 *resume_value = false;
AzureIoTClient 16:22a72cf8e416 5868 result = 0;
Azure.IoT Build 0:6ae2f7bca550 5869 }
Azure.IoT Build 0:6ae2f7bca550 5870 else
Azure.IoT Build 0:6ae2f7bca550 5871 {
Azure.IoT Build 0:6ae2f7bca550 5872 if (amqpvalue_get_boolean(item_value, resume_value) != 0)
Azure.IoT Build 0:6ae2f7bca550 5873 {
AzureIoTClient 16:22a72cf8e416 5874 if (amqpvalue_get_type(item_value) == AMQP_TYPE_NULL)
AzureIoTClient 16:22a72cf8e416 5875 {
AzureIoTClient 16:22a72cf8e416 5876 result = __LINE__;
AzureIoTClient 16:22a72cf8e416 5877 }
AzureIoTClient 16:22a72cf8e416 5878 else
AzureIoTClient 16:22a72cf8e416 5879 {
AzureIoTClient 16:22a72cf8e416 5880 *resume_value = false;
AzureIoTClient 16:22a72cf8e416 5881 result = 0;
AzureIoTClient 16:22a72cf8e416 5882 }
Azure.IoT Build 0:6ae2f7bca550 5883 }
Azure.IoT Build 0:6ae2f7bca550 5884 else
Azure.IoT Build 0:6ae2f7bca550 5885 {
Azure.IoT Build 0:6ae2f7bca550 5886 result = 0;
Azure.IoT Build 0:6ae2f7bca550 5887 }
Azure.IoT Build 0:6ae2f7bca550 5888 }
Azure.IoT Build 0:6ae2f7bca550 5889 }
Azure.IoT Build 0:6ae2f7bca550 5890
Azure.IoT Build 0:6ae2f7bca550 5891 return result;
Azure.IoT Build 0:6ae2f7bca550 5892 }
Azure.IoT Build 0:6ae2f7bca550 5893
Azure.IoT Build 0:6ae2f7bca550 5894 int transfer_set_resume(TRANSFER_HANDLE transfer, bool resume_value)
Azure.IoT Build 0:6ae2f7bca550 5895 {
Azure.IoT Build 0:6ae2f7bca550 5896 int result;
Azure.IoT Build 0:6ae2f7bca550 5897
Azure.IoT Build 0:6ae2f7bca550 5898 if (transfer == NULL)
Azure.IoT Build 0:6ae2f7bca550 5899 {
Azure.IoT Build 0:6ae2f7bca550 5900 result = __LINE__;
Azure.IoT Build 0:6ae2f7bca550 5901 }
Azure.IoT Build 0:6ae2f7bca550 5902 else
Azure.IoT Build 0:6ae2f7bca550 5903 {
Azure.IoT Build 0:6ae2f7bca550 5904 TRANSFER_INSTANCE* transfer_instance = (TRANSFER_INSTANCE*)transfer;
Azure.IoT Build 0:6ae2f7bca550 5905 AMQP_VALUE resume_amqp_value = amqpvalue_create_boolean(resume_value);
Azure.IoT Build 0:6ae2f7bca550 5906 if (resume_amqp_value == NULL)
Azure.IoT Build 0:6ae2f7bca550 5907 {
Azure.IoT Build 0:6ae2f7bca550 5908 result = __LINE__;
Azure.IoT Build 0:6ae2f7bca550 5909 }
Azure.IoT Build 0:6ae2f7bca550 5910 else
Azure.IoT Build 0:6ae2f7bca550 5911 {
Azure.IoT Build 0:6ae2f7bca550 5912 if (amqpvalue_set_composite_item(transfer_instance->composite_value, 8, resume_amqp_value) != 0)
Azure.IoT Build 0:6ae2f7bca550 5913 {
Azure.IoT Build 0:6ae2f7bca550 5914 result = __LINE__;
Azure.IoT Build 0:6ae2f7bca550 5915 }
Azure.IoT Build 0:6ae2f7bca550 5916 else
Azure.IoT Build 0:6ae2f7bca550 5917 {
Azure.IoT Build 0:6ae2f7bca550 5918 result = 0;
Azure.IoT Build 0:6ae2f7bca550 5919 }
Azure.IoT Build 0:6ae2f7bca550 5920
Azure.IoT Build 0:6ae2f7bca550 5921 amqpvalue_destroy(resume_amqp_value);
Azure.IoT Build 0:6ae2f7bca550 5922 }
Azure.IoT Build 0:6ae2f7bca550 5923 }
Azure.IoT Build 0:6ae2f7bca550 5924
Azure.IoT Build 0:6ae2f7bca550 5925 return result;
Azure.IoT Build 0:6ae2f7bca550 5926 }
Azure.IoT Build 0:6ae2f7bca550 5927
Azure.IoT Build 0:6ae2f7bca550 5928 int transfer_get_aborted(TRANSFER_HANDLE transfer, bool* aborted_value)
Azure.IoT Build 0:6ae2f7bca550 5929 {
Azure.IoT Build 0:6ae2f7bca550 5930 int result;
Azure.IoT Build 0:6ae2f7bca550 5931
Azure.IoT Build 0:6ae2f7bca550 5932 if (transfer == NULL)
Azure.IoT Build 0:6ae2f7bca550 5933 {
Azure.IoT Build 0:6ae2f7bca550 5934 result = __LINE__;
Azure.IoT Build 0:6ae2f7bca550 5935 }
Azure.IoT Build 0:6ae2f7bca550 5936 else
Azure.IoT Build 0:6ae2f7bca550 5937 {
Azure.IoT Build 0:6ae2f7bca550 5938 TRANSFER_INSTANCE* transfer_instance = (TRANSFER_INSTANCE*)transfer;
Azure.IoT Build 0:6ae2f7bca550 5939 AMQP_VALUE item_value = amqpvalue_get_composite_item_in_place(transfer_instance->composite_value, 9);
Azure.IoT Build 0:6ae2f7bca550 5940 if (item_value == NULL)
Azure.IoT Build 0:6ae2f7bca550 5941 {
AzureIoTClient 16:22a72cf8e416 5942 *aborted_value = false;
AzureIoTClient 16:22a72cf8e416 5943 result = 0;
Azure.IoT Build 0:6ae2f7bca550 5944 }
Azure.IoT Build 0:6ae2f7bca550 5945 else
Azure.IoT Build 0:6ae2f7bca550 5946 {
Azure.IoT Build 0:6ae2f7bca550 5947 if (amqpvalue_get_boolean(item_value, aborted_value) != 0)
Azure.IoT Build 0:6ae2f7bca550 5948 {
AzureIoTClient 16:22a72cf8e416 5949 if (amqpvalue_get_type(item_value) == AMQP_TYPE_NULL)
AzureIoTClient 16:22a72cf8e416 5950 {
AzureIoTClient 16:22a72cf8e416 5951 result = __LINE__;
AzureIoTClient 16:22a72cf8e416 5952 }
AzureIoTClient 16:22a72cf8e416 5953 else
AzureIoTClient 16:22a72cf8e416 5954 {
AzureIoTClient 16:22a72cf8e416 5955 *aborted_value = false;
AzureIoTClient 16:22a72cf8e416 5956 result = 0;
AzureIoTClient 16:22a72cf8e416 5957 }
Azure.IoT Build 0:6ae2f7bca550 5958 }
Azure.IoT Build 0:6ae2f7bca550 5959 else
Azure.IoT Build 0:6ae2f7bca550 5960 {
Azure.IoT Build 0:6ae2f7bca550 5961 result = 0;
Azure.IoT Build 0:6ae2f7bca550 5962 }
Azure.IoT Build 0:6ae2f7bca550 5963 }
Azure.IoT Build 0:6ae2f7bca550 5964 }
Azure.IoT Build 0:6ae2f7bca550 5965
Azure.IoT Build 0:6ae2f7bca550 5966 return result;
Azure.IoT Build 0:6ae2f7bca550 5967 }
Azure.IoT Build 0:6ae2f7bca550 5968
Azure.IoT Build 0:6ae2f7bca550 5969 int transfer_set_aborted(TRANSFER_HANDLE transfer, bool aborted_value)
Azure.IoT Build 0:6ae2f7bca550 5970 {
Azure.IoT Build 0:6ae2f7bca550 5971 int result;
Azure.IoT Build 0:6ae2f7bca550 5972
Azure.IoT Build 0:6ae2f7bca550 5973 if (transfer == NULL)
Azure.IoT Build 0:6ae2f7bca550 5974 {
Azure.IoT Build 0:6ae2f7bca550 5975 result = __LINE__;
Azure.IoT Build 0:6ae2f7bca550 5976 }
Azure.IoT Build 0:6ae2f7bca550 5977 else
Azure.IoT Build 0:6ae2f7bca550 5978 {
Azure.IoT Build 0:6ae2f7bca550 5979 TRANSFER_INSTANCE* transfer_instance = (TRANSFER_INSTANCE*)transfer;
Azure.IoT Build 0:6ae2f7bca550 5980 AMQP_VALUE aborted_amqp_value = amqpvalue_create_boolean(aborted_value);
Azure.IoT Build 0:6ae2f7bca550 5981 if (aborted_amqp_value == NULL)
Azure.IoT Build 0:6ae2f7bca550 5982 {
Azure.IoT Build 0:6ae2f7bca550 5983 result = __LINE__;
Azure.IoT Build 0:6ae2f7bca550 5984 }
Azure.IoT Build 0:6ae2f7bca550 5985 else
Azure.IoT Build 0:6ae2f7bca550 5986 {
Azure.IoT Build 0:6ae2f7bca550 5987 if (amqpvalue_set_composite_item(transfer_instance->composite_value, 9, aborted_amqp_value) != 0)
Azure.IoT Build 0:6ae2f7bca550 5988 {
Azure.IoT Build 0:6ae2f7bca550 5989 result = __LINE__;
Azure.IoT Build 0:6ae2f7bca550 5990 }
Azure.IoT Build 0:6ae2f7bca550 5991 else
Azure.IoT Build 0:6ae2f7bca550 5992 {
Azure.IoT Build 0:6ae2f7bca550 5993 result = 0;
Azure.IoT Build 0:6ae2f7bca550 5994 }
Azure.IoT Build 0:6ae2f7bca550 5995
Azure.IoT Build 0:6ae2f7bca550 5996 amqpvalue_destroy(aborted_amqp_value);
Azure.IoT Build 0:6ae2f7bca550 5997 }
Azure.IoT Build 0:6ae2f7bca550 5998 }
Azure.IoT Build 0:6ae2f7bca550 5999
Azure.IoT Build 0:6ae2f7bca550 6000 return result;
Azure.IoT Build 0:6ae2f7bca550 6001 }
Azure.IoT Build 0:6ae2f7bca550 6002
Azure.IoT Build 0:6ae2f7bca550 6003 int transfer_get_batchable(TRANSFER_HANDLE transfer, bool* batchable_value)
Azure.IoT Build 0:6ae2f7bca550 6004 {
Azure.IoT Build 0:6ae2f7bca550 6005 int result;
Azure.IoT Build 0:6ae2f7bca550 6006
Azure.IoT Build 0:6ae2f7bca550 6007 if (transfer == NULL)
Azure.IoT Build 0:6ae2f7bca550 6008 {
Azure.IoT Build 0:6ae2f7bca550 6009 result = __LINE__;
Azure.IoT Build 0:6ae2f7bca550 6010 }
Azure.IoT Build 0:6ae2f7bca550 6011 else
Azure.IoT Build 0:6ae2f7bca550 6012 {
Azure.IoT Build 0:6ae2f7bca550 6013 TRANSFER_INSTANCE* transfer_instance = (TRANSFER_INSTANCE*)transfer;
Azure.IoT Build 0:6ae2f7bca550 6014 AMQP_VALUE item_value = amqpvalue_get_composite_item_in_place(transfer_instance->composite_value, 10);
Azure.IoT Build 0:6ae2f7bca550 6015 if (item_value == NULL)
Azure.IoT Build 0:6ae2f7bca550 6016 {
AzureIoTClient 16:22a72cf8e416 6017 *batchable_value = false;
AzureIoTClient 16:22a72cf8e416 6018 result = 0;
Azure.IoT Build 0:6ae2f7bca550 6019 }
Azure.IoT Build 0:6ae2f7bca550 6020 else
Azure.IoT Build 0:6ae2f7bca550 6021 {
Azure.IoT Build 0:6ae2f7bca550 6022 if (amqpvalue_get_boolean(item_value, batchable_value) != 0)
Azure.IoT Build 0:6ae2f7bca550 6023 {
AzureIoTClient 16:22a72cf8e416 6024 if (amqpvalue_get_type(item_value) == AMQP_TYPE_NULL)
AzureIoTClient 16:22a72cf8e416 6025 {
AzureIoTClient 16:22a72cf8e416 6026 result = __LINE__;
AzureIoTClient 16:22a72cf8e416 6027 }
AzureIoTClient 16:22a72cf8e416 6028 else
AzureIoTClient 16:22a72cf8e416 6029 {
AzureIoTClient 16:22a72cf8e416 6030 *batchable_value = false;
AzureIoTClient 16:22a72cf8e416 6031 result = 0;
AzureIoTClient 16:22a72cf8e416 6032 }
Azure.IoT Build 0:6ae2f7bca550 6033 }
Azure.IoT Build 0:6ae2f7bca550 6034 else
Azure.IoT Build 0:6ae2f7bca550 6035 {
Azure.IoT Build 0:6ae2f7bca550 6036 result = 0;
Azure.IoT Build 0:6ae2f7bca550 6037 }
Azure.IoT Build 0:6ae2f7bca550 6038 }
Azure.IoT Build 0:6ae2f7bca550 6039 }
Azure.IoT Build 0:6ae2f7bca550 6040
Azure.IoT Build 0:6ae2f7bca550 6041 return result;
Azure.IoT Build 0:6ae2f7bca550 6042 }
Azure.IoT Build 0:6ae2f7bca550 6043
Azure.IoT Build 0:6ae2f7bca550 6044 int transfer_set_batchable(TRANSFER_HANDLE transfer, bool batchable_value)
Azure.IoT Build 0:6ae2f7bca550 6045 {
Azure.IoT Build 0:6ae2f7bca550 6046 int result;
Azure.IoT Build 0:6ae2f7bca550 6047
Azure.IoT Build 0:6ae2f7bca550 6048 if (transfer == NULL)
Azure.IoT Build 0:6ae2f7bca550 6049 {
Azure.IoT Build 0:6ae2f7bca550 6050 result = __LINE__;
Azure.IoT Build 0:6ae2f7bca550 6051 }
Azure.IoT Build 0:6ae2f7bca550 6052 else
Azure.IoT Build 0:6ae2f7bca550 6053 {
Azure.IoT Build 0:6ae2f7bca550 6054 TRANSFER_INSTANCE* transfer_instance = (TRANSFER_INSTANCE*)transfer;
Azure.IoT Build 0:6ae2f7bca550 6055 AMQP_VALUE batchable_amqp_value = amqpvalue_create_boolean(batchable_value);
Azure.IoT Build 0:6ae2f7bca550 6056 if (batchable_amqp_value == NULL)
Azure.IoT Build 0:6ae2f7bca550 6057 {
Azure.IoT Build 0:6ae2f7bca550 6058 result = __LINE__;
Azure.IoT Build 0:6ae2f7bca550 6059 }
Azure.IoT Build 0:6ae2f7bca550 6060 else
Azure.IoT Build 0:6ae2f7bca550 6061 {
Azure.IoT Build 0:6ae2f7bca550 6062 if (amqpvalue_set_composite_item(transfer_instance->composite_value, 10, batchable_amqp_value) != 0)
Azure.IoT Build 0:6ae2f7bca550 6063 {
Azure.IoT Build 0:6ae2f7bca550 6064 result = __LINE__;
Azure.IoT Build 0:6ae2f7bca550 6065 }
Azure.IoT Build 0:6ae2f7bca550 6066 else
Azure.IoT Build 0:6ae2f7bca550 6067 {
Azure.IoT Build 0:6ae2f7bca550 6068 result = 0;
Azure.IoT Build 0:6ae2f7bca550 6069 }
Azure.IoT Build 0:6ae2f7bca550 6070
Azure.IoT Build 0:6ae2f7bca550 6071 amqpvalue_destroy(batchable_amqp_value);
Azure.IoT Build 0:6ae2f7bca550 6072 }
Azure.IoT Build 0:6ae2f7bca550 6073 }
Azure.IoT Build 0:6ae2f7bca550 6074
Azure.IoT Build 0:6ae2f7bca550 6075 return result;
Azure.IoT Build 0:6ae2f7bca550 6076 }
Azure.IoT Build 0:6ae2f7bca550 6077
Azure.IoT Build 0:6ae2f7bca550 6078
Azure.IoT Build 0:6ae2f7bca550 6079 /* disposition */
Azure.IoT Build 0:6ae2f7bca550 6080
Azure.IoT Build 0:6ae2f7bca550 6081 typedef struct DISPOSITION_INSTANCE_TAG
Azure.IoT Build 0:6ae2f7bca550 6082 {
Azure.IoT Build 0:6ae2f7bca550 6083 AMQP_VALUE composite_value;
Azure.IoT Build 0:6ae2f7bca550 6084 } DISPOSITION_INSTANCE;
Azure.IoT Build 0:6ae2f7bca550 6085
Azure.IoT Build 0:6ae2f7bca550 6086 static DISPOSITION_HANDLE disposition_create_internal(void)
Azure.IoT Build 0:6ae2f7bca550 6087 {
Azure.IoT Build 0:6ae2f7bca550 6088 DISPOSITION_INSTANCE* disposition_instance = (DISPOSITION_INSTANCE*)amqpalloc_malloc(sizeof(DISPOSITION_INSTANCE));
Azure.IoT Build 0:6ae2f7bca550 6089 if (disposition_instance != NULL)
Azure.IoT Build 0:6ae2f7bca550 6090 {
Azure.IoT Build 0:6ae2f7bca550 6091 disposition_instance->composite_value = NULL;
Azure.IoT Build 0:6ae2f7bca550 6092 }
Azure.IoT Build 0:6ae2f7bca550 6093
Azure.IoT Build 0:6ae2f7bca550 6094 return disposition_instance;
Azure.IoT Build 0:6ae2f7bca550 6095 }
Azure.IoT Build 0:6ae2f7bca550 6096
Azure.IoT Build 0:6ae2f7bca550 6097 DISPOSITION_HANDLE disposition_create(role role_value, delivery_number first_value)
Azure.IoT Build 0:6ae2f7bca550 6098 {
Azure.IoT Build 0:6ae2f7bca550 6099 DISPOSITION_INSTANCE* disposition_instance = (DISPOSITION_INSTANCE*)amqpalloc_malloc(sizeof(DISPOSITION_INSTANCE));
Azure.IoT Build 0:6ae2f7bca550 6100 if (disposition_instance != NULL)
Azure.IoT Build 0:6ae2f7bca550 6101 {
Azure.IoT Build 0:6ae2f7bca550 6102 disposition_instance->composite_value = amqpvalue_create_composite_with_ulong_descriptor(21);
Azure.IoT Build 0:6ae2f7bca550 6103 if (disposition_instance->composite_value == NULL)
Azure.IoT Build 0:6ae2f7bca550 6104 {
Azure.IoT Build 0:6ae2f7bca550 6105 amqpalloc_free(disposition_instance);
Azure.IoT Build 0:6ae2f7bca550 6106 disposition_instance = NULL;
Azure.IoT Build 0:6ae2f7bca550 6107 }
Azure.IoT Build 0:6ae2f7bca550 6108 else
Azure.IoT Build 0:6ae2f7bca550 6109 {
Azure.IoT Build 0:6ae2f7bca550 6110 AMQP_VALUE role_amqp_value;
Azure.IoT Build 0:6ae2f7bca550 6111 AMQP_VALUE first_amqp_value;
Azure.IoT Build 0:6ae2f7bca550 6112 int result = 0;
Azure.IoT Build 0:6ae2f7bca550 6113
Azure.IoT Build 0:6ae2f7bca550 6114 role_amqp_value = amqpvalue_create_role(role_value);
Azure.IoT Build 0:6ae2f7bca550 6115 if ((result == 0) && (amqpvalue_set_composite_item(disposition_instance->composite_value, 0, role_amqp_value) != 0))
Azure.IoT Build 0:6ae2f7bca550 6116 {
Azure.IoT Build 0:6ae2f7bca550 6117 result = __LINE__;
Azure.IoT Build 0:6ae2f7bca550 6118 }
Azure.IoT Build 0:6ae2f7bca550 6119 first_amqp_value = amqpvalue_create_delivery_number(first_value);
Azure.IoT Build 0:6ae2f7bca550 6120 if ((result == 0) && (amqpvalue_set_composite_item(disposition_instance->composite_value, 1, first_amqp_value) != 0))
Azure.IoT Build 0:6ae2f7bca550 6121 {
Azure.IoT Build 0:6ae2f7bca550 6122 result = __LINE__;
Azure.IoT Build 0:6ae2f7bca550 6123 }
Azure.IoT Build 0:6ae2f7bca550 6124
Azure.IoT Build 0:6ae2f7bca550 6125 amqpvalue_destroy(role_amqp_value);
Azure.IoT Build 0:6ae2f7bca550 6126 amqpvalue_destroy(first_amqp_value);
Azure.IoT Build 0:6ae2f7bca550 6127 }
Azure.IoT Build 0:6ae2f7bca550 6128 }
Azure.IoT Build 0:6ae2f7bca550 6129
Azure.IoT Build 0:6ae2f7bca550 6130 return disposition_instance;
Azure.IoT Build 0:6ae2f7bca550 6131 }
Azure.IoT Build 0:6ae2f7bca550 6132
Azure.IoT Build 0:6ae2f7bca550 6133 DISPOSITION_HANDLE disposition_clone(DISPOSITION_HANDLE value)
Azure.IoT Build 0:6ae2f7bca550 6134 {
Azure.IoT Build 0:6ae2f7bca550 6135 DISPOSITION_INSTANCE* disposition_instance = (DISPOSITION_INSTANCE*)amqpalloc_malloc(sizeof(DISPOSITION_INSTANCE));
Azure.IoT Build 0:6ae2f7bca550 6136 if (disposition_instance != NULL)
Azure.IoT Build 0:6ae2f7bca550 6137 {
Azure.IoT Build 0:6ae2f7bca550 6138 disposition_instance->composite_value = amqpvalue_clone(((DISPOSITION_INSTANCE*)value)->composite_value);
Azure.IoT Build 0:6ae2f7bca550 6139 if (disposition_instance->composite_value == NULL)
Azure.IoT Build 0:6ae2f7bca550 6140 {
Azure.IoT Build 0:6ae2f7bca550 6141 amqpalloc_free(disposition_instance);
Azure.IoT Build 0:6ae2f7bca550 6142 disposition_instance = NULL;
Azure.IoT Build 0:6ae2f7bca550 6143 }
Azure.IoT Build 0:6ae2f7bca550 6144 }
Azure.IoT Build 0:6ae2f7bca550 6145
Azure.IoT Build 0:6ae2f7bca550 6146 return disposition_instance;
Azure.IoT Build 0:6ae2f7bca550 6147 }
Azure.IoT Build 0:6ae2f7bca550 6148
Azure.IoT Build 0:6ae2f7bca550 6149 void disposition_destroy(DISPOSITION_HANDLE disposition)
Azure.IoT Build 0:6ae2f7bca550 6150 {
Azure.IoT Build 0:6ae2f7bca550 6151 if (disposition != NULL)
Azure.IoT Build 0:6ae2f7bca550 6152 {
Azure.IoT Build 0:6ae2f7bca550 6153 DISPOSITION_INSTANCE* disposition_instance = (DISPOSITION_INSTANCE*)disposition;
Azure.IoT Build 0:6ae2f7bca550 6154 amqpvalue_destroy(disposition_instance->composite_value);
Azure.IoT Build 0:6ae2f7bca550 6155 amqpalloc_free(disposition_instance);
Azure.IoT Build 0:6ae2f7bca550 6156 }
Azure.IoT Build 0:6ae2f7bca550 6157 }
Azure.IoT Build 0:6ae2f7bca550 6158
Azure.IoT Build 0:6ae2f7bca550 6159 AMQP_VALUE amqpvalue_create_disposition(DISPOSITION_HANDLE disposition)
Azure.IoT Build 0:6ae2f7bca550 6160 {
Azure.IoT Build 0:6ae2f7bca550 6161 AMQP_VALUE result;
Azure.IoT Build 0:6ae2f7bca550 6162
Azure.IoT Build 0:6ae2f7bca550 6163 if (disposition == NULL)
Azure.IoT Build 0:6ae2f7bca550 6164 {
Azure.IoT Build 0:6ae2f7bca550 6165 result = NULL;
Azure.IoT Build 0:6ae2f7bca550 6166 }
Azure.IoT Build 0:6ae2f7bca550 6167 else
Azure.IoT Build 0:6ae2f7bca550 6168 {
Azure.IoT Build 0:6ae2f7bca550 6169 DISPOSITION_INSTANCE* disposition_instance = (DISPOSITION_INSTANCE*)disposition;
Azure.IoT Build 0:6ae2f7bca550 6170 result = amqpvalue_clone(disposition_instance->composite_value);
Azure.IoT Build 0:6ae2f7bca550 6171 }
Azure.IoT Build 0:6ae2f7bca550 6172
Azure.IoT Build 0:6ae2f7bca550 6173 return result;
Azure.IoT Build 0:6ae2f7bca550 6174 }
Azure.IoT Build 0:6ae2f7bca550 6175
Azure.IoT Build 0:6ae2f7bca550 6176 bool is_disposition_type_by_descriptor(AMQP_VALUE descriptor)
Azure.IoT Build 0:6ae2f7bca550 6177 {
Azure.IoT Build 0:6ae2f7bca550 6178 bool result;
Azure.IoT Build 0:6ae2f7bca550 6179
Azure.IoT Build 0:6ae2f7bca550 6180 uint64_t descriptor_ulong;
Azure.IoT Build 0:6ae2f7bca550 6181 if ((amqpvalue_get_ulong(descriptor, &descriptor_ulong) == 0) &&
Azure.IoT Build 0:6ae2f7bca550 6182 (descriptor_ulong == 21))
Azure.IoT Build 0:6ae2f7bca550 6183 {
Azure.IoT Build 0:6ae2f7bca550 6184 result = true;
Azure.IoT Build 0:6ae2f7bca550 6185 }
Azure.IoT Build 0:6ae2f7bca550 6186 else
Azure.IoT Build 0:6ae2f7bca550 6187 {
Azure.IoT Build 0:6ae2f7bca550 6188 result = false;
Azure.IoT Build 0:6ae2f7bca550 6189 }
Azure.IoT Build 0:6ae2f7bca550 6190
Azure.IoT Build 0:6ae2f7bca550 6191 return result;
Azure.IoT Build 0:6ae2f7bca550 6192 }
Azure.IoT Build 0:6ae2f7bca550 6193
Azure.IoT Build 0:6ae2f7bca550 6194
Azure.IoT Build 0:6ae2f7bca550 6195 int amqpvalue_get_disposition(AMQP_VALUE value, DISPOSITION_HANDLE* disposition_handle)
Azure.IoT Build 0:6ae2f7bca550 6196 {
Azure.IoT Build 0:6ae2f7bca550 6197 int result;
Azure.IoT Build 0:6ae2f7bca550 6198 DISPOSITION_INSTANCE* disposition_instance = (DISPOSITION_INSTANCE*)disposition_create_internal();
Azure.IoT Build 0:6ae2f7bca550 6199 *disposition_handle = disposition_instance;
Azure.IoT Build 0:6ae2f7bca550 6200 if (*disposition_handle == NULL)
Azure.IoT Build 0:6ae2f7bca550 6201 {
Azure.IoT Build 0:6ae2f7bca550 6202 result = __LINE__;
Azure.IoT Build 0:6ae2f7bca550 6203 }
Azure.IoT Build 0:6ae2f7bca550 6204 else
Azure.IoT Build 0:6ae2f7bca550 6205 {
Azure.IoT Build 0:6ae2f7bca550 6206 AMQP_VALUE list_value = amqpvalue_get_inplace_described_value(value);
Azure.IoT Build 0:6ae2f7bca550 6207 if (list_value == NULL)
Azure.IoT Build 0:6ae2f7bca550 6208 {
Azure.IoT Build 0:6ae2f7bca550 6209 disposition_destroy(*disposition_handle);
Azure.IoT Build 0:6ae2f7bca550 6210 result = __LINE__;
Azure.IoT Build 0:6ae2f7bca550 6211 }
Azure.IoT Build 0:6ae2f7bca550 6212 else
Azure.IoT Build 0:6ae2f7bca550 6213 {
Azure.IoT Build 0:6ae2f7bca550 6214 do
Azure.IoT Build 0:6ae2f7bca550 6215 {
Azure.IoT Build 0:6ae2f7bca550 6216 AMQP_VALUE item_value;
Azure.IoT Build 0:6ae2f7bca550 6217 /* role */
Azure.IoT Build 0:6ae2f7bca550 6218 item_value = amqpvalue_get_list_item(list_value, 0);
Azure.IoT Build 0:6ae2f7bca550 6219 if (item_value == NULL)
Azure.IoT Build 0:6ae2f7bca550 6220 {
Azure.IoT Build 0:6ae2f7bca550 6221 {
Azure.IoT Build 0:6ae2f7bca550 6222 disposition_destroy(*disposition_handle);
Azure.IoT Build 0:6ae2f7bca550 6223 result = __LINE__;
Azure.IoT Build 0:6ae2f7bca550 6224 break;
Azure.IoT Build 0:6ae2f7bca550 6225 }
Azure.IoT Build 0:6ae2f7bca550 6226 }
Azure.IoT Build 0:6ae2f7bca550 6227 else
Azure.IoT Build 0:6ae2f7bca550 6228 {
Azure.IoT Build 0:6ae2f7bca550 6229 role role;
Azure.IoT Build 0:6ae2f7bca550 6230 if (amqpvalue_get_role(item_value, &role) != 0)
Azure.IoT Build 0:6ae2f7bca550 6231 {
Azure.IoT Build 0:6ae2f7bca550 6232 disposition_destroy(*disposition_handle);
Azure.IoT Build 0:6ae2f7bca550 6233 result = __LINE__;
Azure.IoT Build 0:6ae2f7bca550 6234 break;
Azure.IoT Build 0:6ae2f7bca550 6235 }
Azure.IoT Build 0:6ae2f7bca550 6236
Azure.IoT Build 0:6ae2f7bca550 6237 amqpvalue_destroy(item_value);
Azure.IoT Build 0:6ae2f7bca550 6238 }
Azure.IoT Build 0:6ae2f7bca550 6239 /* first */
Azure.IoT Build 0:6ae2f7bca550 6240 item_value = amqpvalue_get_list_item(list_value, 1);
Azure.IoT Build 0:6ae2f7bca550 6241 if (item_value == NULL)
Azure.IoT Build 0:6ae2f7bca550 6242 {
Azure.IoT Build 0:6ae2f7bca550 6243 {
Azure.IoT Build 0:6ae2f7bca550 6244 disposition_destroy(*disposition_handle);
Azure.IoT Build 0:6ae2f7bca550 6245 result = __LINE__;
Azure.IoT Build 0:6ae2f7bca550 6246 break;
Azure.IoT Build 0:6ae2f7bca550 6247 }
Azure.IoT Build 0:6ae2f7bca550 6248 }
Azure.IoT Build 0:6ae2f7bca550 6249 else
Azure.IoT Build 0:6ae2f7bca550 6250 {
Azure.IoT Build 0:6ae2f7bca550 6251 delivery_number first;
Azure.IoT Build 0:6ae2f7bca550 6252 if (amqpvalue_get_delivery_number(item_value, &first) != 0)
Azure.IoT Build 0:6ae2f7bca550 6253 {
Azure.IoT Build 0:6ae2f7bca550 6254 disposition_destroy(*disposition_handle);
Azure.IoT Build 0:6ae2f7bca550 6255 result = __LINE__;
Azure.IoT Build 0:6ae2f7bca550 6256 break;
Azure.IoT Build 0:6ae2f7bca550 6257 }
Azure.IoT Build 0:6ae2f7bca550 6258
Azure.IoT Build 0:6ae2f7bca550 6259 amqpvalue_destroy(item_value);
Azure.IoT Build 0:6ae2f7bca550 6260 }
Azure.IoT Build 0:6ae2f7bca550 6261 /* last */
Azure.IoT Build 0:6ae2f7bca550 6262 item_value = amqpvalue_get_list_item(list_value, 2);
Azure.IoT Build 0:6ae2f7bca550 6263 if (item_value == NULL)
Azure.IoT Build 0:6ae2f7bca550 6264 {
Azure.IoT Build 0:6ae2f7bca550 6265 /* do nothing */
Azure.IoT Build 0:6ae2f7bca550 6266 }
Azure.IoT Build 0:6ae2f7bca550 6267 else
Azure.IoT Build 0:6ae2f7bca550 6268 {
Azure.IoT Build 0:6ae2f7bca550 6269 delivery_number last;
Azure.IoT Build 0:6ae2f7bca550 6270 if (amqpvalue_get_delivery_number(item_value, &last) != 0)
Azure.IoT Build 0:6ae2f7bca550 6271 {
Azure.IoT Build 0:6ae2f7bca550 6272 if (amqpvalue_get_type(item_value) != AMQP_TYPE_NULL)
Azure.IoT Build 0:6ae2f7bca550 6273 {
Azure.IoT Build 0:6ae2f7bca550 6274 disposition_destroy(*disposition_handle);
Azure.IoT Build 0:6ae2f7bca550 6275 result = __LINE__;
Azure.IoT Build 0:6ae2f7bca550 6276 break;
Azure.IoT Build 0:6ae2f7bca550 6277 }
Azure.IoT Build 0:6ae2f7bca550 6278 }
Azure.IoT Build 0:6ae2f7bca550 6279
Azure.IoT Build 0:6ae2f7bca550 6280 amqpvalue_destroy(item_value);
Azure.IoT Build 0:6ae2f7bca550 6281 }
Azure.IoT Build 0:6ae2f7bca550 6282 /* settled */
Azure.IoT Build 0:6ae2f7bca550 6283 item_value = amqpvalue_get_list_item(list_value, 3);
Azure.IoT Build 0:6ae2f7bca550 6284 if (item_value == NULL)
Azure.IoT Build 0:6ae2f7bca550 6285 {
Azure.IoT Build 0:6ae2f7bca550 6286 /* do nothing */
Azure.IoT Build 0:6ae2f7bca550 6287 }
Azure.IoT Build 0:6ae2f7bca550 6288 else
Azure.IoT Build 0:6ae2f7bca550 6289 {
Azure.IoT Build 0:6ae2f7bca550 6290 bool settled;
Azure.IoT Build 0:6ae2f7bca550 6291 if (amqpvalue_get_boolean(item_value, &settled) != 0)
Azure.IoT Build 0:6ae2f7bca550 6292 {
Azure.IoT Build 0:6ae2f7bca550 6293 if (amqpvalue_get_type(item_value) != AMQP_TYPE_NULL)
Azure.IoT Build 0:6ae2f7bca550 6294 {
Azure.IoT Build 0:6ae2f7bca550 6295 disposition_destroy(*disposition_handle);
Azure.IoT Build 0:6ae2f7bca550 6296 result = __LINE__;
Azure.IoT Build 0:6ae2f7bca550 6297 break;
Azure.IoT Build 0:6ae2f7bca550 6298 }
Azure.IoT Build 0:6ae2f7bca550 6299 }
Azure.IoT Build 0:6ae2f7bca550 6300
Azure.IoT Build 0:6ae2f7bca550 6301 amqpvalue_destroy(item_value);
Azure.IoT Build 0:6ae2f7bca550 6302 }
Azure.IoT Build 0:6ae2f7bca550 6303 /* state */
Azure.IoT Build 0:6ae2f7bca550 6304 item_value = amqpvalue_get_list_item(list_value, 4);
Azure.IoT Build 0:6ae2f7bca550 6305 if (item_value == NULL)
Azure.IoT Build 0:6ae2f7bca550 6306 {
Azure.IoT Build 0:6ae2f7bca550 6307 /* do nothing */
Azure.IoT Build 0:6ae2f7bca550 6308 }
Azure.IoT Build 0:6ae2f7bca550 6309 else
Azure.IoT Build 0:6ae2f7bca550 6310 {
Azure.IoT Build 0:6ae2f7bca550 6311 amqpvalue_destroy(item_value);
Azure.IoT Build 0:6ae2f7bca550 6312 }
Azure.IoT Build 0:6ae2f7bca550 6313 /* batchable */
Azure.IoT Build 0:6ae2f7bca550 6314 item_value = amqpvalue_get_list_item(list_value, 5);
Azure.IoT Build 0:6ae2f7bca550 6315 if (item_value == NULL)
Azure.IoT Build 0:6ae2f7bca550 6316 {
Azure.IoT Build 0:6ae2f7bca550 6317 /* do nothing */
Azure.IoT Build 0:6ae2f7bca550 6318 }
Azure.IoT Build 0:6ae2f7bca550 6319 else
Azure.IoT Build 0:6ae2f7bca550 6320 {
Azure.IoT Build 0:6ae2f7bca550 6321 bool batchable;
Azure.IoT Build 0:6ae2f7bca550 6322 if (amqpvalue_get_boolean(item_value, &batchable) != 0)
Azure.IoT Build 0:6ae2f7bca550 6323 {
Azure.IoT Build 0:6ae2f7bca550 6324 if (amqpvalue_get_type(item_value) != AMQP_TYPE_NULL)
Azure.IoT Build 0:6ae2f7bca550 6325 {
Azure.IoT Build 0:6ae2f7bca550 6326 disposition_destroy(*disposition_handle);
Azure.IoT Build 0:6ae2f7bca550 6327 result = __LINE__;
Azure.IoT Build 0:6ae2f7bca550 6328 break;
Azure.IoT Build 0:6ae2f7bca550 6329 }
Azure.IoT Build 0:6ae2f7bca550 6330 }
Azure.IoT Build 0:6ae2f7bca550 6331
Azure.IoT Build 0:6ae2f7bca550 6332 amqpvalue_destroy(item_value);
Azure.IoT Build 0:6ae2f7bca550 6333 }
Azure.IoT Build 0:6ae2f7bca550 6334
Azure.IoT Build 0:6ae2f7bca550 6335 disposition_instance->composite_value = amqpvalue_clone(value);
Azure.IoT Build 0:6ae2f7bca550 6336
Azure.IoT Build 0:6ae2f7bca550 6337 result = 0;
Azure.IoT Build 0:6ae2f7bca550 6338 } while (0);
Azure.IoT Build 0:6ae2f7bca550 6339 }
Azure.IoT Build 0:6ae2f7bca550 6340 }
Azure.IoT Build 0:6ae2f7bca550 6341
Azure.IoT Build 0:6ae2f7bca550 6342 return result;
Azure.IoT Build 0:6ae2f7bca550 6343 }
Azure.IoT Build 0:6ae2f7bca550 6344
Azure.IoT Build 0:6ae2f7bca550 6345 int disposition_get_role(DISPOSITION_HANDLE disposition, role* role_value)
Azure.IoT Build 0:6ae2f7bca550 6346 {
Azure.IoT Build 0:6ae2f7bca550 6347 int result;
Azure.IoT Build 0:6ae2f7bca550 6348
Azure.IoT Build 0:6ae2f7bca550 6349 if (disposition == NULL)
Azure.IoT Build 0:6ae2f7bca550 6350 {
Azure.IoT Build 0:6ae2f7bca550 6351 result = __LINE__;
Azure.IoT Build 0:6ae2f7bca550 6352 }
Azure.IoT Build 0:6ae2f7bca550 6353 else
Azure.IoT Build 0:6ae2f7bca550 6354 {
Azure.IoT Build 0:6ae2f7bca550 6355 DISPOSITION_INSTANCE* disposition_instance = (DISPOSITION_INSTANCE*)disposition;
Azure.IoT Build 0:6ae2f7bca550 6356 AMQP_VALUE item_value = amqpvalue_get_composite_item_in_place(disposition_instance->composite_value, 0);
Azure.IoT Build 0:6ae2f7bca550 6357 if (item_value == NULL)
Azure.IoT Build 0:6ae2f7bca550 6358 {
Azure.IoT Build 0:6ae2f7bca550 6359 result = __LINE__;
Azure.IoT Build 0:6ae2f7bca550 6360 }
Azure.IoT Build 0:6ae2f7bca550 6361 else
Azure.IoT Build 0:6ae2f7bca550 6362 {
Azure.IoT Build 0:6ae2f7bca550 6363 if (amqpvalue_get_role(item_value, role_value) != 0)
Azure.IoT Build 0:6ae2f7bca550 6364 {
AzureIoTClient 16:22a72cf8e416 6365 result = __LINE__;
Azure.IoT Build 0:6ae2f7bca550 6366 }
Azure.IoT Build 0:6ae2f7bca550 6367 else
Azure.IoT Build 0:6ae2f7bca550 6368 {
Azure.IoT Build 0:6ae2f7bca550 6369 result = 0;
Azure.IoT Build 0:6ae2f7bca550 6370 }
Azure.IoT Build 0:6ae2f7bca550 6371 }
Azure.IoT Build 0:6ae2f7bca550 6372 }
Azure.IoT Build 0:6ae2f7bca550 6373
Azure.IoT Build 0:6ae2f7bca550 6374 return result;
Azure.IoT Build 0:6ae2f7bca550 6375 }
Azure.IoT Build 0:6ae2f7bca550 6376
Azure.IoT Build 0:6ae2f7bca550 6377 int disposition_set_role(DISPOSITION_HANDLE disposition, role role_value)
Azure.IoT Build 0:6ae2f7bca550 6378 {
Azure.IoT Build 0:6ae2f7bca550 6379 int result;
Azure.IoT Build 0:6ae2f7bca550 6380
Azure.IoT Build 0:6ae2f7bca550 6381 if (disposition == NULL)
Azure.IoT Build 0:6ae2f7bca550 6382 {
Azure.IoT Build 0:6ae2f7bca550 6383 result = __LINE__;
Azure.IoT Build 0:6ae2f7bca550 6384 }
Azure.IoT Build 0:6ae2f7bca550 6385 else
Azure.IoT Build 0:6ae2f7bca550 6386 {
Azure.IoT Build 0:6ae2f7bca550 6387 DISPOSITION_INSTANCE* disposition_instance = (DISPOSITION_INSTANCE*)disposition;
Azure.IoT Build 0:6ae2f7bca550 6388 AMQP_VALUE role_amqp_value = amqpvalue_create_role(role_value);
Azure.IoT Build 0:6ae2f7bca550 6389 if (role_amqp_value == NULL)
Azure.IoT Build 0:6ae2f7bca550 6390 {
Azure.IoT Build 0:6ae2f7bca550 6391 result = __LINE__;
Azure.IoT Build 0:6ae2f7bca550 6392 }
Azure.IoT Build 0:6ae2f7bca550 6393 else
Azure.IoT Build 0:6ae2f7bca550 6394 {
Azure.IoT Build 0:6ae2f7bca550 6395 if (amqpvalue_set_composite_item(disposition_instance->composite_value, 0, role_amqp_value) != 0)
Azure.IoT Build 0:6ae2f7bca550 6396 {
Azure.IoT Build 0:6ae2f7bca550 6397 result = __LINE__;
Azure.IoT Build 0:6ae2f7bca550 6398 }
Azure.IoT Build 0:6ae2f7bca550 6399 else
Azure.IoT Build 0:6ae2f7bca550 6400 {
Azure.IoT Build 0:6ae2f7bca550 6401 result = 0;
Azure.IoT Build 0:6ae2f7bca550 6402 }
Azure.IoT Build 0:6ae2f7bca550 6403
Azure.IoT Build 0:6ae2f7bca550 6404 amqpvalue_destroy(role_amqp_value);
Azure.IoT Build 0:6ae2f7bca550 6405 }
Azure.IoT Build 0:6ae2f7bca550 6406 }
Azure.IoT Build 0:6ae2f7bca550 6407
Azure.IoT Build 0:6ae2f7bca550 6408 return result;
Azure.IoT Build 0:6ae2f7bca550 6409 }
Azure.IoT Build 0:6ae2f7bca550 6410
Azure.IoT Build 0:6ae2f7bca550 6411 int disposition_get_first(DISPOSITION_HANDLE disposition, delivery_number* first_value)
Azure.IoT Build 0:6ae2f7bca550 6412 {
Azure.IoT Build 0:6ae2f7bca550 6413 int result;
Azure.IoT Build 0:6ae2f7bca550 6414
Azure.IoT Build 0:6ae2f7bca550 6415 if (disposition == NULL)
Azure.IoT Build 0:6ae2f7bca550 6416 {
Azure.IoT Build 0:6ae2f7bca550 6417 result = __LINE__;
Azure.IoT Build 0:6ae2f7bca550 6418 }
Azure.IoT Build 0:6ae2f7bca550 6419 else
Azure.IoT Build 0:6ae2f7bca550 6420 {
Azure.IoT Build 0:6ae2f7bca550 6421 DISPOSITION_INSTANCE* disposition_instance = (DISPOSITION_INSTANCE*)disposition;
Azure.IoT Build 0:6ae2f7bca550 6422 AMQP_VALUE item_value = amqpvalue_get_composite_item_in_place(disposition_instance->composite_value, 1);
Azure.IoT Build 0:6ae2f7bca550 6423 if (item_value == NULL)
Azure.IoT Build 0:6ae2f7bca550 6424 {
Azure.IoT Build 0:6ae2f7bca550 6425 result = __LINE__;
Azure.IoT Build 0:6ae2f7bca550 6426 }
Azure.IoT Build 0:6ae2f7bca550 6427 else
Azure.IoT Build 0:6ae2f7bca550 6428 {
Azure.IoT Build 0:6ae2f7bca550 6429 if (amqpvalue_get_delivery_number(item_value, first_value) != 0)
Azure.IoT Build 0:6ae2f7bca550 6430 {
AzureIoTClient 16:22a72cf8e416 6431 result = __LINE__;
Azure.IoT Build 0:6ae2f7bca550 6432 }
Azure.IoT Build 0:6ae2f7bca550 6433 else
Azure.IoT Build 0:6ae2f7bca550 6434 {
Azure.IoT Build 0:6ae2f7bca550 6435 result = 0;
Azure.IoT Build 0:6ae2f7bca550 6436 }
Azure.IoT Build 0:6ae2f7bca550 6437 }
Azure.IoT Build 0:6ae2f7bca550 6438 }
Azure.IoT Build 0:6ae2f7bca550 6439
Azure.IoT Build 0:6ae2f7bca550 6440 return result;
Azure.IoT Build 0:6ae2f7bca550 6441 }
Azure.IoT Build 0:6ae2f7bca550 6442
Azure.IoT Build 0:6ae2f7bca550 6443 int disposition_set_first(DISPOSITION_HANDLE disposition, delivery_number first_value)
Azure.IoT Build 0:6ae2f7bca550 6444 {
Azure.IoT Build 0:6ae2f7bca550 6445 int result;
Azure.IoT Build 0:6ae2f7bca550 6446
Azure.IoT Build 0:6ae2f7bca550 6447 if (disposition == NULL)
Azure.IoT Build 0:6ae2f7bca550 6448 {
Azure.IoT Build 0:6ae2f7bca550 6449 result = __LINE__;
Azure.IoT Build 0:6ae2f7bca550 6450 }
Azure.IoT Build 0:6ae2f7bca550 6451 else
Azure.IoT Build 0:6ae2f7bca550 6452 {
Azure.IoT Build 0:6ae2f7bca550 6453 DISPOSITION_INSTANCE* disposition_instance = (DISPOSITION_INSTANCE*)disposition;
Azure.IoT Build 0:6ae2f7bca550 6454 AMQP_VALUE first_amqp_value = amqpvalue_create_delivery_number(first_value);
Azure.IoT Build 0:6ae2f7bca550 6455 if (first_amqp_value == NULL)
Azure.IoT Build 0:6ae2f7bca550 6456 {
Azure.IoT Build 0:6ae2f7bca550 6457 result = __LINE__;
Azure.IoT Build 0:6ae2f7bca550 6458 }
Azure.IoT Build 0:6ae2f7bca550 6459 else
Azure.IoT Build 0:6ae2f7bca550 6460 {
Azure.IoT Build 0:6ae2f7bca550 6461 if (amqpvalue_set_composite_item(disposition_instance->composite_value, 1, first_amqp_value) != 0)
Azure.IoT Build 0:6ae2f7bca550 6462 {
Azure.IoT Build 0:6ae2f7bca550 6463 result = __LINE__;
Azure.IoT Build 0:6ae2f7bca550 6464 }
Azure.IoT Build 0:6ae2f7bca550 6465 else
Azure.IoT Build 0:6ae2f7bca550 6466 {
Azure.IoT Build 0:6ae2f7bca550 6467 result = 0;
Azure.IoT Build 0:6ae2f7bca550 6468 }
Azure.IoT Build 0:6ae2f7bca550 6469
Azure.IoT Build 0:6ae2f7bca550 6470 amqpvalue_destroy(first_amqp_value);
Azure.IoT Build 0:6ae2f7bca550 6471 }
Azure.IoT Build 0:6ae2f7bca550 6472 }
Azure.IoT Build 0:6ae2f7bca550 6473
Azure.IoT Build 0:6ae2f7bca550 6474 return result;
Azure.IoT Build 0:6ae2f7bca550 6475 }
Azure.IoT Build 0:6ae2f7bca550 6476
Azure.IoT Build 0:6ae2f7bca550 6477 int disposition_get_last(DISPOSITION_HANDLE disposition, delivery_number* last_value)
Azure.IoT Build 0:6ae2f7bca550 6478 {
Azure.IoT Build 0:6ae2f7bca550 6479 int result;
Azure.IoT Build 0:6ae2f7bca550 6480
Azure.IoT Build 0:6ae2f7bca550 6481 if (disposition == NULL)
Azure.IoT Build 0:6ae2f7bca550 6482 {
Azure.IoT Build 0:6ae2f7bca550 6483 result = __LINE__;
Azure.IoT Build 0:6ae2f7bca550 6484 }
Azure.IoT Build 0:6ae2f7bca550 6485 else
Azure.IoT Build 0:6ae2f7bca550 6486 {
Azure.IoT Build 0:6ae2f7bca550 6487 DISPOSITION_INSTANCE* disposition_instance = (DISPOSITION_INSTANCE*)disposition;
Azure.IoT Build 0:6ae2f7bca550 6488 AMQP_VALUE item_value = amqpvalue_get_composite_item_in_place(disposition_instance->composite_value, 2);
Azure.IoT Build 0:6ae2f7bca550 6489 if (item_value == NULL)
Azure.IoT Build 0:6ae2f7bca550 6490 {
Azure.IoT Build 0:6ae2f7bca550 6491 result = __LINE__;
Azure.IoT Build 0:6ae2f7bca550 6492 }
Azure.IoT Build 0:6ae2f7bca550 6493 else
Azure.IoT Build 0:6ae2f7bca550 6494 {
Azure.IoT Build 0:6ae2f7bca550 6495 if (amqpvalue_get_delivery_number(item_value, last_value) != 0)
Azure.IoT Build 0:6ae2f7bca550 6496 {
AzureIoTClient 16:22a72cf8e416 6497 result = __LINE__;
Azure.IoT Build 0:6ae2f7bca550 6498 }
Azure.IoT Build 0:6ae2f7bca550 6499 else
Azure.IoT Build 0:6ae2f7bca550 6500 {
Azure.IoT Build 0:6ae2f7bca550 6501 result = 0;
Azure.IoT Build 0:6ae2f7bca550 6502 }
Azure.IoT Build 0:6ae2f7bca550 6503 }
Azure.IoT Build 0:6ae2f7bca550 6504 }
Azure.IoT Build 0:6ae2f7bca550 6505
Azure.IoT Build 0:6ae2f7bca550 6506 return result;
Azure.IoT Build 0:6ae2f7bca550 6507 }
Azure.IoT Build 0:6ae2f7bca550 6508
Azure.IoT Build 0:6ae2f7bca550 6509 int disposition_set_last(DISPOSITION_HANDLE disposition, delivery_number last_value)
Azure.IoT Build 0:6ae2f7bca550 6510 {
Azure.IoT Build 0:6ae2f7bca550 6511 int result;
Azure.IoT Build 0:6ae2f7bca550 6512
Azure.IoT Build 0:6ae2f7bca550 6513 if (disposition == NULL)
Azure.IoT Build 0:6ae2f7bca550 6514 {
Azure.IoT Build 0:6ae2f7bca550 6515 result = __LINE__;
Azure.IoT Build 0:6ae2f7bca550 6516 }
Azure.IoT Build 0:6ae2f7bca550 6517 else
Azure.IoT Build 0:6ae2f7bca550 6518 {
Azure.IoT Build 0:6ae2f7bca550 6519 DISPOSITION_INSTANCE* disposition_instance = (DISPOSITION_INSTANCE*)disposition;
Azure.IoT Build 0:6ae2f7bca550 6520 AMQP_VALUE last_amqp_value = amqpvalue_create_delivery_number(last_value);
Azure.IoT Build 0:6ae2f7bca550 6521 if (last_amqp_value == NULL)
Azure.IoT Build 0:6ae2f7bca550 6522 {
Azure.IoT Build 0:6ae2f7bca550 6523 result = __LINE__;
Azure.IoT Build 0:6ae2f7bca550 6524 }
Azure.IoT Build 0:6ae2f7bca550 6525 else
Azure.IoT Build 0:6ae2f7bca550 6526 {
Azure.IoT Build 0:6ae2f7bca550 6527 if (amqpvalue_set_composite_item(disposition_instance->composite_value, 2, last_amqp_value) != 0)
Azure.IoT Build 0:6ae2f7bca550 6528 {
Azure.IoT Build 0:6ae2f7bca550 6529 result = __LINE__;
Azure.IoT Build 0:6ae2f7bca550 6530 }
Azure.IoT Build 0:6ae2f7bca550 6531 else
Azure.IoT Build 0:6ae2f7bca550 6532 {
Azure.IoT Build 0:6ae2f7bca550 6533 result = 0;
Azure.IoT Build 0:6ae2f7bca550 6534 }
Azure.IoT Build 0:6ae2f7bca550 6535
Azure.IoT Build 0:6ae2f7bca550 6536 amqpvalue_destroy(last_amqp_value);
Azure.IoT Build 0:6ae2f7bca550 6537 }
Azure.IoT Build 0:6ae2f7bca550 6538 }
Azure.IoT Build 0:6ae2f7bca550 6539
Azure.IoT Build 0:6ae2f7bca550 6540 return result;
Azure.IoT Build 0:6ae2f7bca550 6541 }
Azure.IoT Build 0:6ae2f7bca550 6542
Azure.IoT Build 0:6ae2f7bca550 6543 int disposition_get_settled(DISPOSITION_HANDLE disposition, bool* settled_value)
Azure.IoT Build 0:6ae2f7bca550 6544 {
Azure.IoT Build 0:6ae2f7bca550 6545 int result;
Azure.IoT Build 0:6ae2f7bca550 6546
Azure.IoT Build 0:6ae2f7bca550 6547 if (disposition == NULL)
Azure.IoT Build 0:6ae2f7bca550 6548 {
Azure.IoT Build 0:6ae2f7bca550 6549 result = __LINE__;
Azure.IoT Build 0:6ae2f7bca550 6550 }
Azure.IoT Build 0:6ae2f7bca550 6551 else
Azure.IoT Build 0:6ae2f7bca550 6552 {
Azure.IoT Build 0:6ae2f7bca550 6553 DISPOSITION_INSTANCE* disposition_instance = (DISPOSITION_INSTANCE*)disposition;
Azure.IoT Build 0:6ae2f7bca550 6554 AMQP_VALUE item_value = amqpvalue_get_composite_item_in_place(disposition_instance->composite_value, 3);
Azure.IoT Build 0:6ae2f7bca550 6555 if (item_value == NULL)
Azure.IoT Build 0:6ae2f7bca550 6556 {
AzureIoTClient 16:22a72cf8e416 6557 *settled_value = false;
AzureIoTClient 16:22a72cf8e416 6558 result = 0;
Azure.IoT Build 0:6ae2f7bca550 6559 }
Azure.IoT Build 0:6ae2f7bca550 6560 else
Azure.IoT Build 0:6ae2f7bca550 6561 {
Azure.IoT Build 0:6ae2f7bca550 6562 if (amqpvalue_get_boolean(item_value, settled_value) != 0)
Azure.IoT Build 0:6ae2f7bca550 6563 {
AzureIoTClient 16:22a72cf8e416 6564 if (amqpvalue_get_type(item_value) == AMQP_TYPE_NULL)
AzureIoTClient 16:22a72cf8e416 6565 {
AzureIoTClient 16:22a72cf8e416 6566 result = __LINE__;
AzureIoTClient 16:22a72cf8e416 6567 }
AzureIoTClient 16:22a72cf8e416 6568 else
AzureIoTClient 16:22a72cf8e416 6569 {
AzureIoTClient 16:22a72cf8e416 6570 *settled_value = false;
AzureIoTClient 16:22a72cf8e416 6571 result = 0;
AzureIoTClient 16:22a72cf8e416 6572 }
Azure.IoT Build 0:6ae2f7bca550 6573 }
Azure.IoT Build 0:6ae2f7bca550 6574 else
Azure.IoT Build 0:6ae2f7bca550 6575 {
Azure.IoT Build 0:6ae2f7bca550 6576 result = 0;
Azure.IoT Build 0:6ae2f7bca550 6577 }
Azure.IoT Build 0:6ae2f7bca550 6578 }
Azure.IoT Build 0:6ae2f7bca550 6579 }
Azure.IoT Build 0:6ae2f7bca550 6580
Azure.IoT Build 0:6ae2f7bca550 6581 return result;
Azure.IoT Build 0:6ae2f7bca550 6582 }
Azure.IoT Build 0:6ae2f7bca550 6583
Azure.IoT Build 0:6ae2f7bca550 6584 int disposition_set_settled(DISPOSITION_HANDLE disposition, bool settled_value)
Azure.IoT Build 0:6ae2f7bca550 6585 {
Azure.IoT Build 0:6ae2f7bca550 6586 int result;
Azure.IoT Build 0:6ae2f7bca550 6587
Azure.IoT Build 0:6ae2f7bca550 6588 if (disposition == NULL)
Azure.IoT Build 0:6ae2f7bca550 6589 {
Azure.IoT Build 0:6ae2f7bca550 6590 result = __LINE__;
Azure.IoT Build 0:6ae2f7bca550 6591 }
Azure.IoT Build 0:6ae2f7bca550 6592 else
Azure.IoT Build 0:6ae2f7bca550 6593 {
Azure.IoT Build 0:6ae2f7bca550 6594 DISPOSITION_INSTANCE* disposition_instance = (DISPOSITION_INSTANCE*)disposition;
Azure.IoT Build 0:6ae2f7bca550 6595 AMQP_VALUE settled_amqp_value = amqpvalue_create_boolean(settled_value);
Azure.IoT Build 0:6ae2f7bca550 6596 if (settled_amqp_value == NULL)
Azure.IoT Build 0:6ae2f7bca550 6597 {
Azure.IoT Build 0:6ae2f7bca550 6598 result = __LINE__;
Azure.IoT Build 0:6ae2f7bca550 6599 }
Azure.IoT Build 0:6ae2f7bca550 6600 else
Azure.IoT Build 0:6ae2f7bca550 6601 {
Azure.IoT Build 0:6ae2f7bca550 6602 if (amqpvalue_set_composite_item(disposition_instance->composite_value, 3, settled_amqp_value) != 0)
Azure.IoT Build 0:6ae2f7bca550 6603 {
Azure.IoT Build 0:6ae2f7bca550 6604 result = __LINE__;
Azure.IoT Build 0:6ae2f7bca550 6605 }
Azure.IoT Build 0:6ae2f7bca550 6606 else
Azure.IoT Build 0:6ae2f7bca550 6607 {
Azure.IoT Build 0:6ae2f7bca550 6608 result = 0;
Azure.IoT Build 0:6ae2f7bca550 6609 }
Azure.IoT Build 0:6ae2f7bca550 6610
Azure.IoT Build 0:6ae2f7bca550 6611 amqpvalue_destroy(settled_amqp_value);
Azure.IoT Build 0:6ae2f7bca550 6612 }
Azure.IoT Build 0:6ae2f7bca550 6613 }
Azure.IoT Build 0:6ae2f7bca550 6614
Azure.IoT Build 0:6ae2f7bca550 6615 return result;
Azure.IoT Build 0:6ae2f7bca550 6616 }
Azure.IoT Build 0:6ae2f7bca550 6617
Azure.IoT Build 0:6ae2f7bca550 6618 int disposition_get_state(DISPOSITION_HANDLE disposition, AMQP_VALUE* state_value)
Azure.IoT Build 0:6ae2f7bca550 6619 {
Azure.IoT Build 0:6ae2f7bca550 6620 int result;
Azure.IoT Build 0:6ae2f7bca550 6621
Azure.IoT Build 0:6ae2f7bca550 6622 if (disposition == NULL)
Azure.IoT Build 0:6ae2f7bca550 6623 {
Azure.IoT Build 0:6ae2f7bca550 6624 result = __LINE__;
Azure.IoT Build 0:6ae2f7bca550 6625 }
Azure.IoT Build 0:6ae2f7bca550 6626 else
Azure.IoT Build 0:6ae2f7bca550 6627 {
Azure.IoT Build 0:6ae2f7bca550 6628 DISPOSITION_INSTANCE* disposition_instance = (DISPOSITION_INSTANCE*)disposition;
Azure.IoT Build 0:6ae2f7bca550 6629 AMQP_VALUE item_value = amqpvalue_get_composite_item_in_place(disposition_instance->composite_value, 4);
Azure.IoT Build 0:6ae2f7bca550 6630 if (item_value == NULL)
Azure.IoT Build 0:6ae2f7bca550 6631 {
Azure.IoT Build 0:6ae2f7bca550 6632 result = __LINE__;
Azure.IoT Build 0:6ae2f7bca550 6633 }
Azure.IoT Build 0:6ae2f7bca550 6634 else
Azure.IoT Build 0:6ae2f7bca550 6635 {
Azure.IoT Build 0:6ae2f7bca550 6636 *state_value = item_value;
Azure.IoT Build 0:6ae2f7bca550 6637 result = 0;
Azure.IoT Build 0:6ae2f7bca550 6638 }
Azure.IoT Build 0:6ae2f7bca550 6639 }
Azure.IoT Build 0:6ae2f7bca550 6640
Azure.IoT Build 0:6ae2f7bca550 6641 return result;
Azure.IoT Build 0:6ae2f7bca550 6642 }
Azure.IoT Build 0:6ae2f7bca550 6643
Azure.IoT Build 0:6ae2f7bca550 6644 int disposition_set_state(DISPOSITION_HANDLE disposition, AMQP_VALUE state_value)
Azure.IoT Build 0:6ae2f7bca550 6645 {
Azure.IoT Build 0:6ae2f7bca550 6646 int result;
Azure.IoT Build 0:6ae2f7bca550 6647
Azure.IoT Build 0:6ae2f7bca550 6648 if (disposition == NULL)
Azure.IoT Build 0:6ae2f7bca550 6649 {
Azure.IoT Build 0:6ae2f7bca550 6650 result = __LINE__;
Azure.IoT Build 0:6ae2f7bca550 6651 }
Azure.IoT Build 0:6ae2f7bca550 6652 else
Azure.IoT Build 0:6ae2f7bca550 6653 {
Azure.IoT Build 0:6ae2f7bca550 6654 DISPOSITION_INSTANCE* disposition_instance = (DISPOSITION_INSTANCE*)disposition;
Azure.IoT Build 0:6ae2f7bca550 6655 AMQP_VALUE state_amqp_value = amqpvalue_clone(state_value);
Azure.IoT Build 0:6ae2f7bca550 6656 if (state_amqp_value == NULL)
Azure.IoT Build 0:6ae2f7bca550 6657 {
Azure.IoT Build 0:6ae2f7bca550 6658 result = __LINE__;
Azure.IoT Build 0:6ae2f7bca550 6659 }
Azure.IoT Build 0:6ae2f7bca550 6660 else
Azure.IoT Build 0:6ae2f7bca550 6661 {
Azure.IoT Build 0:6ae2f7bca550 6662 if (amqpvalue_set_composite_item(disposition_instance->composite_value, 4, state_amqp_value) != 0)
Azure.IoT Build 0:6ae2f7bca550 6663 {
Azure.IoT Build 0:6ae2f7bca550 6664 result = __LINE__;
Azure.IoT Build 0:6ae2f7bca550 6665 }
Azure.IoT Build 0:6ae2f7bca550 6666 else
Azure.IoT Build 0:6ae2f7bca550 6667 {
Azure.IoT Build 0:6ae2f7bca550 6668 result = 0;
Azure.IoT Build 0:6ae2f7bca550 6669 }
Azure.IoT Build 0:6ae2f7bca550 6670
Azure.IoT Build 0:6ae2f7bca550 6671 amqpvalue_destroy(state_amqp_value);
Azure.IoT Build 0:6ae2f7bca550 6672 }
Azure.IoT Build 0:6ae2f7bca550 6673 }
Azure.IoT Build 0:6ae2f7bca550 6674
Azure.IoT Build 0:6ae2f7bca550 6675 return result;
Azure.IoT Build 0:6ae2f7bca550 6676 }
Azure.IoT Build 0:6ae2f7bca550 6677
Azure.IoT Build 0:6ae2f7bca550 6678 int disposition_get_batchable(DISPOSITION_HANDLE disposition, bool* batchable_value)
Azure.IoT Build 0:6ae2f7bca550 6679 {
Azure.IoT Build 0:6ae2f7bca550 6680 int result;
Azure.IoT Build 0:6ae2f7bca550 6681
Azure.IoT Build 0:6ae2f7bca550 6682 if (disposition == NULL)
Azure.IoT Build 0:6ae2f7bca550 6683 {
Azure.IoT Build 0:6ae2f7bca550 6684 result = __LINE__;
Azure.IoT Build 0:6ae2f7bca550 6685 }
Azure.IoT Build 0:6ae2f7bca550 6686 else
Azure.IoT Build 0:6ae2f7bca550 6687 {
Azure.IoT Build 0:6ae2f7bca550 6688 DISPOSITION_INSTANCE* disposition_instance = (DISPOSITION_INSTANCE*)disposition;
Azure.IoT Build 0:6ae2f7bca550 6689 AMQP_VALUE item_value = amqpvalue_get_composite_item_in_place(disposition_instance->composite_value, 5);
Azure.IoT Build 0:6ae2f7bca550 6690 if (item_value == NULL)
Azure.IoT Build 0:6ae2f7bca550 6691 {
AzureIoTClient 16:22a72cf8e416 6692 *batchable_value = false;
AzureIoTClient 16:22a72cf8e416 6693 result = 0;
Azure.IoT Build 0:6ae2f7bca550 6694 }
Azure.IoT Build 0:6ae2f7bca550 6695 else
Azure.IoT Build 0:6ae2f7bca550 6696 {
Azure.IoT Build 0:6ae2f7bca550 6697 if (amqpvalue_get_boolean(item_value, batchable_value) != 0)
Azure.IoT Build 0:6ae2f7bca550 6698 {
AzureIoTClient 16:22a72cf8e416 6699 if (amqpvalue_get_type(item_value) == AMQP_TYPE_NULL)
AzureIoTClient 16:22a72cf8e416 6700 {
AzureIoTClient 16:22a72cf8e416 6701 result = __LINE__;
AzureIoTClient 16:22a72cf8e416 6702 }
AzureIoTClient 16:22a72cf8e416 6703 else
AzureIoTClient 16:22a72cf8e416 6704 {
AzureIoTClient 16:22a72cf8e416 6705 *batchable_value = false;
AzureIoTClient 16:22a72cf8e416 6706 result = 0;
AzureIoTClient 16:22a72cf8e416 6707 }
Azure.IoT Build 0:6ae2f7bca550 6708 }
Azure.IoT Build 0:6ae2f7bca550 6709 else
Azure.IoT Build 0:6ae2f7bca550 6710 {
Azure.IoT Build 0:6ae2f7bca550 6711 result = 0;
Azure.IoT Build 0:6ae2f7bca550 6712 }
Azure.IoT Build 0:6ae2f7bca550 6713 }
Azure.IoT Build 0:6ae2f7bca550 6714 }
Azure.IoT Build 0:6ae2f7bca550 6715
Azure.IoT Build 0:6ae2f7bca550 6716 return result;
Azure.IoT Build 0:6ae2f7bca550 6717 }
Azure.IoT Build 0:6ae2f7bca550 6718
Azure.IoT Build 0:6ae2f7bca550 6719 int disposition_set_batchable(DISPOSITION_HANDLE disposition, bool batchable_value)
Azure.IoT Build 0:6ae2f7bca550 6720 {
Azure.IoT Build 0:6ae2f7bca550 6721 int result;
Azure.IoT Build 0:6ae2f7bca550 6722
Azure.IoT Build 0:6ae2f7bca550 6723 if (disposition == NULL)
Azure.IoT Build 0:6ae2f7bca550 6724 {
Azure.IoT Build 0:6ae2f7bca550 6725 result = __LINE__;
Azure.IoT Build 0:6ae2f7bca550 6726 }
Azure.IoT Build 0:6ae2f7bca550 6727 else
Azure.IoT Build 0:6ae2f7bca550 6728 {
Azure.IoT Build 0:6ae2f7bca550 6729 DISPOSITION_INSTANCE* disposition_instance = (DISPOSITION_INSTANCE*)disposition;
Azure.IoT Build 0:6ae2f7bca550 6730 AMQP_VALUE batchable_amqp_value = amqpvalue_create_boolean(batchable_value);
Azure.IoT Build 0:6ae2f7bca550 6731 if (batchable_amqp_value == NULL)
Azure.IoT Build 0:6ae2f7bca550 6732 {
Azure.IoT Build 0:6ae2f7bca550 6733 result = __LINE__;
Azure.IoT Build 0:6ae2f7bca550 6734 }
Azure.IoT Build 0:6ae2f7bca550 6735 else
Azure.IoT Build 0:6ae2f7bca550 6736 {
Azure.IoT Build 0:6ae2f7bca550 6737 if (amqpvalue_set_composite_item(disposition_instance->composite_value, 5, batchable_amqp_value) != 0)
Azure.IoT Build 0:6ae2f7bca550 6738 {
Azure.IoT Build 0:6ae2f7bca550 6739 result = __LINE__;
Azure.IoT Build 0:6ae2f7bca550 6740 }
Azure.IoT Build 0:6ae2f7bca550 6741 else
Azure.IoT Build 0:6ae2f7bca550 6742 {
Azure.IoT Build 0:6ae2f7bca550 6743 result = 0;
Azure.IoT Build 0:6ae2f7bca550 6744 }
Azure.IoT Build 0:6ae2f7bca550 6745
Azure.IoT Build 0:6ae2f7bca550 6746 amqpvalue_destroy(batchable_amqp_value);
Azure.IoT Build 0:6ae2f7bca550 6747 }
Azure.IoT Build 0:6ae2f7bca550 6748 }
Azure.IoT Build 0:6ae2f7bca550 6749
Azure.IoT Build 0:6ae2f7bca550 6750 return result;
Azure.IoT Build 0:6ae2f7bca550 6751 }
Azure.IoT Build 0:6ae2f7bca550 6752
Azure.IoT Build 0:6ae2f7bca550 6753
Azure.IoT Build 0:6ae2f7bca550 6754 /* detach */
Azure.IoT Build 0:6ae2f7bca550 6755
Azure.IoT Build 0:6ae2f7bca550 6756 typedef struct DETACH_INSTANCE_TAG
Azure.IoT Build 0:6ae2f7bca550 6757 {
Azure.IoT Build 0:6ae2f7bca550 6758 AMQP_VALUE composite_value;
Azure.IoT Build 0:6ae2f7bca550 6759 } DETACH_INSTANCE;
Azure.IoT Build 0:6ae2f7bca550 6760
Azure.IoT Build 0:6ae2f7bca550 6761 static DETACH_HANDLE detach_create_internal(void)
Azure.IoT Build 0:6ae2f7bca550 6762 {
Azure.IoT Build 0:6ae2f7bca550 6763 DETACH_INSTANCE* detach_instance = (DETACH_INSTANCE*)amqpalloc_malloc(sizeof(DETACH_INSTANCE));
Azure.IoT Build 0:6ae2f7bca550 6764 if (detach_instance != NULL)
Azure.IoT Build 0:6ae2f7bca550 6765 {
Azure.IoT Build 0:6ae2f7bca550 6766 detach_instance->composite_value = NULL;
Azure.IoT Build 0:6ae2f7bca550 6767 }
Azure.IoT Build 0:6ae2f7bca550 6768
Azure.IoT Build 0:6ae2f7bca550 6769 return detach_instance;
Azure.IoT Build 0:6ae2f7bca550 6770 }
Azure.IoT Build 0:6ae2f7bca550 6771
Azure.IoT Build 0:6ae2f7bca550 6772 DETACH_HANDLE detach_create(handle handle_value)
Azure.IoT Build 0:6ae2f7bca550 6773 {
Azure.IoT Build 0:6ae2f7bca550 6774 DETACH_INSTANCE* detach_instance = (DETACH_INSTANCE*)amqpalloc_malloc(sizeof(DETACH_INSTANCE));
Azure.IoT Build 0:6ae2f7bca550 6775 if (detach_instance != NULL)
Azure.IoT Build 0:6ae2f7bca550 6776 {
Azure.IoT Build 0:6ae2f7bca550 6777 detach_instance->composite_value = amqpvalue_create_composite_with_ulong_descriptor(22);
Azure.IoT Build 0:6ae2f7bca550 6778 if (detach_instance->composite_value == NULL)
Azure.IoT Build 0:6ae2f7bca550 6779 {
Azure.IoT Build 0:6ae2f7bca550 6780 amqpalloc_free(detach_instance);
Azure.IoT Build 0:6ae2f7bca550 6781 detach_instance = NULL;
Azure.IoT Build 0:6ae2f7bca550 6782 }
Azure.IoT Build 0:6ae2f7bca550 6783 else
Azure.IoT Build 0:6ae2f7bca550 6784 {
Azure.IoT Build 0:6ae2f7bca550 6785 AMQP_VALUE handle_amqp_value;
Azure.IoT Build 0:6ae2f7bca550 6786 int result = 0;
Azure.IoT Build 0:6ae2f7bca550 6787
Azure.IoT Build 0:6ae2f7bca550 6788 handle_amqp_value = amqpvalue_create_handle(handle_value);
Azure.IoT Build 0:6ae2f7bca550 6789 if ((result == 0) && (amqpvalue_set_composite_item(detach_instance->composite_value, 0, handle_amqp_value) != 0))
Azure.IoT Build 0:6ae2f7bca550 6790 {
Azure.IoT Build 0:6ae2f7bca550 6791 result = __LINE__;
Azure.IoT Build 0:6ae2f7bca550 6792 }
Azure.IoT Build 0:6ae2f7bca550 6793
Azure.IoT Build 0:6ae2f7bca550 6794 amqpvalue_destroy(handle_amqp_value);
Azure.IoT Build 0:6ae2f7bca550 6795 }
Azure.IoT Build 0:6ae2f7bca550 6796 }
Azure.IoT Build 0:6ae2f7bca550 6797
Azure.IoT Build 0:6ae2f7bca550 6798 return detach_instance;
Azure.IoT Build 0:6ae2f7bca550 6799 }
Azure.IoT Build 0:6ae2f7bca550 6800
Azure.IoT Build 0:6ae2f7bca550 6801 DETACH_HANDLE detach_clone(DETACH_HANDLE value)
Azure.IoT Build 0:6ae2f7bca550 6802 {
Azure.IoT Build 0:6ae2f7bca550 6803 DETACH_INSTANCE* detach_instance = (DETACH_INSTANCE*)amqpalloc_malloc(sizeof(DETACH_INSTANCE));
Azure.IoT Build 0:6ae2f7bca550 6804 if (detach_instance != NULL)
Azure.IoT Build 0:6ae2f7bca550 6805 {
Azure.IoT Build 0:6ae2f7bca550 6806 detach_instance->composite_value = amqpvalue_clone(((DETACH_INSTANCE*)value)->composite_value);
Azure.IoT Build 0:6ae2f7bca550 6807 if (detach_instance->composite_value == NULL)
Azure.IoT Build 0:6ae2f7bca550 6808 {
Azure.IoT Build 0:6ae2f7bca550 6809 amqpalloc_free(detach_instance);
Azure.IoT Build 0:6ae2f7bca550 6810 detach_instance = NULL;
Azure.IoT Build 0:6ae2f7bca550 6811 }
Azure.IoT Build 0:6ae2f7bca550 6812 }
Azure.IoT Build 0:6ae2f7bca550 6813
Azure.IoT Build 0:6ae2f7bca550 6814 return detach_instance;
Azure.IoT Build 0:6ae2f7bca550 6815 }
Azure.IoT Build 0:6ae2f7bca550 6816
Azure.IoT Build 0:6ae2f7bca550 6817 void detach_destroy(DETACH_HANDLE detach)
Azure.IoT Build 0:6ae2f7bca550 6818 {
Azure.IoT Build 0:6ae2f7bca550 6819 if (detach != NULL)
Azure.IoT Build 0:6ae2f7bca550 6820 {
Azure.IoT Build 0:6ae2f7bca550 6821 DETACH_INSTANCE* detach_instance = (DETACH_INSTANCE*)detach;
Azure.IoT Build 0:6ae2f7bca550 6822 amqpvalue_destroy(detach_instance->composite_value);
Azure.IoT Build 0:6ae2f7bca550 6823 amqpalloc_free(detach_instance);
Azure.IoT Build 0:6ae2f7bca550 6824 }
Azure.IoT Build 0:6ae2f7bca550 6825 }
Azure.IoT Build 0:6ae2f7bca550 6826
Azure.IoT Build 0:6ae2f7bca550 6827 AMQP_VALUE amqpvalue_create_detach(DETACH_HANDLE detach)
Azure.IoT Build 0:6ae2f7bca550 6828 {
Azure.IoT Build 0:6ae2f7bca550 6829 AMQP_VALUE result;
Azure.IoT Build 0:6ae2f7bca550 6830
Azure.IoT Build 0:6ae2f7bca550 6831 if (detach == NULL)
Azure.IoT Build 0:6ae2f7bca550 6832 {
Azure.IoT Build 0:6ae2f7bca550 6833 result = NULL;
Azure.IoT Build 0:6ae2f7bca550 6834 }
Azure.IoT Build 0:6ae2f7bca550 6835 else
Azure.IoT Build 0:6ae2f7bca550 6836 {
Azure.IoT Build 0:6ae2f7bca550 6837 DETACH_INSTANCE* detach_instance = (DETACH_INSTANCE*)detach;
Azure.IoT Build 0:6ae2f7bca550 6838 result = amqpvalue_clone(detach_instance->composite_value);
Azure.IoT Build 0:6ae2f7bca550 6839 }
Azure.IoT Build 0:6ae2f7bca550 6840
Azure.IoT Build 0:6ae2f7bca550 6841 return result;
Azure.IoT Build 0:6ae2f7bca550 6842 }
Azure.IoT Build 0:6ae2f7bca550 6843
Azure.IoT Build 0:6ae2f7bca550 6844 bool is_detach_type_by_descriptor(AMQP_VALUE descriptor)
Azure.IoT Build 0:6ae2f7bca550 6845 {
Azure.IoT Build 0:6ae2f7bca550 6846 bool result;
Azure.IoT Build 0:6ae2f7bca550 6847
Azure.IoT Build 0:6ae2f7bca550 6848 uint64_t descriptor_ulong;
Azure.IoT Build 0:6ae2f7bca550 6849 if ((amqpvalue_get_ulong(descriptor, &descriptor_ulong) == 0) &&
Azure.IoT Build 0:6ae2f7bca550 6850 (descriptor_ulong == 22))
Azure.IoT Build 0:6ae2f7bca550 6851 {
Azure.IoT Build 0:6ae2f7bca550 6852 result = true;
Azure.IoT Build 0:6ae2f7bca550 6853 }
Azure.IoT Build 0:6ae2f7bca550 6854 else
Azure.IoT Build 0:6ae2f7bca550 6855 {
Azure.IoT Build 0:6ae2f7bca550 6856 result = false;
Azure.IoT Build 0:6ae2f7bca550 6857 }
Azure.IoT Build 0:6ae2f7bca550 6858
Azure.IoT Build 0:6ae2f7bca550 6859 return result;
Azure.IoT Build 0:6ae2f7bca550 6860 }
Azure.IoT Build 0:6ae2f7bca550 6861
Azure.IoT Build 0:6ae2f7bca550 6862
Azure.IoT Build 0:6ae2f7bca550 6863 int amqpvalue_get_detach(AMQP_VALUE value, DETACH_HANDLE* detach_handle)
Azure.IoT Build 0:6ae2f7bca550 6864 {
Azure.IoT Build 0:6ae2f7bca550 6865 int result;
Azure.IoT Build 0:6ae2f7bca550 6866 DETACH_INSTANCE* detach_instance = (DETACH_INSTANCE*)detach_create_internal();
Azure.IoT Build 0:6ae2f7bca550 6867 *detach_handle = detach_instance;
Azure.IoT Build 0:6ae2f7bca550 6868 if (*detach_handle == NULL)
Azure.IoT Build 0:6ae2f7bca550 6869 {
Azure.IoT Build 0:6ae2f7bca550 6870 result = __LINE__;
Azure.IoT Build 0:6ae2f7bca550 6871 }
Azure.IoT Build 0:6ae2f7bca550 6872 else
Azure.IoT Build 0:6ae2f7bca550 6873 {
Azure.IoT Build 0:6ae2f7bca550 6874 AMQP_VALUE list_value = amqpvalue_get_inplace_described_value(value);
Azure.IoT Build 0:6ae2f7bca550 6875 if (list_value == NULL)
Azure.IoT Build 0:6ae2f7bca550 6876 {
Azure.IoT Build 0:6ae2f7bca550 6877 detach_destroy(*detach_handle);
Azure.IoT Build 0:6ae2f7bca550 6878 result = __LINE__;
Azure.IoT Build 0:6ae2f7bca550 6879 }
Azure.IoT Build 0:6ae2f7bca550 6880 else
Azure.IoT Build 0:6ae2f7bca550 6881 {
Azure.IoT Build 0:6ae2f7bca550 6882 do
Azure.IoT Build 0:6ae2f7bca550 6883 {
Azure.IoT Build 0:6ae2f7bca550 6884 AMQP_VALUE item_value;
Azure.IoT Build 0:6ae2f7bca550 6885 /* handle */
Azure.IoT Build 0:6ae2f7bca550 6886 item_value = amqpvalue_get_list_item(list_value, 0);
Azure.IoT Build 0:6ae2f7bca550 6887 if (item_value == NULL)
Azure.IoT Build 0:6ae2f7bca550 6888 {
Azure.IoT Build 0:6ae2f7bca550 6889 {
Azure.IoT Build 0:6ae2f7bca550 6890 detach_destroy(*detach_handle);
Azure.IoT Build 0:6ae2f7bca550 6891 result = __LINE__;
Azure.IoT Build 0:6ae2f7bca550 6892 break;
Azure.IoT Build 0:6ae2f7bca550 6893 }
Azure.IoT Build 0:6ae2f7bca550 6894 }
Azure.IoT Build 0:6ae2f7bca550 6895 else
Azure.IoT Build 0:6ae2f7bca550 6896 {
Azure.IoT Build 0:6ae2f7bca550 6897 handle handle;
Azure.IoT Build 0:6ae2f7bca550 6898 if (amqpvalue_get_handle(item_value, &handle) != 0)
Azure.IoT Build 0:6ae2f7bca550 6899 {
Azure.IoT Build 0:6ae2f7bca550 6900 detach_destroy(*detach_handle);
Azure.IoT Build 0:6ae2f7bca550 6901 result = __LINE__;
Azure.IoT Build 0:6ae2f7bca550 6902 break;
Azure.IoT Build 0:6ae2f7bca550 6903 }
Azure.IoT Build 0:6ae2f7bca550 6904
Azure.IoT Build 0:6ae2f7bca550 6905 amqpvalue_destroy(item_value);
Azure.IoT Build 0:6ae2f7bca550 6906 }
Azure.IoT Build 0:6ae2f7bca550 6907 /* closed */
Azure.IoT Build 0:6ae2f7bca550 6908 item_value = amqpvalue_get_list_item(list_value, 1);
Azure.IoT Build 0:6ae2f7bca550 6909 if (item_value == NULL)
Azure.IoT Build 0:6ae2f7bca550 6910 {
Azure.IoT Build 0:6ae2f7bca550 6911 /* do nothing */
Azure.IoT Build 0:6ae2f7bca550 6912 }
Azure.IoT Build 0:6ae2f7bca550 6913 else
Azure.IoT Build 0:6ae2f7bca550 6914 {
Azure.IoT Build 0:6ae2f7bca550 6915 bool closed;
Azure.IoT Build 0:6ae2f7bca550 6916 if (amqpvalue_get_boolean(item_value, &closed) != 0)
Azure.IoT Build 0:6ae2f7bca550 6917 {
Azure.IoT Build 0:6ae2f7bca550 6918 if (amqpvalue_get_type(item_value) != AMQP_TYPE_NULL)
Azure.IoT Build 0:6ae2f7bca550 6919 {
Azure.IoT Build 0:6ae2f7bca550 6920 detach_destroy(*detach_handle);
Azure.IoT Build 0:6ae2f7bca550 6921 result = __LINE__;
Azure.IoT Build 0:6ae2f7bca550 6922 break;
Azure.IoT Build 0:6ae2f7bca550 6923 }
Azure.IoT Build 0:6ae2f7bca550 6924 }
Azure.IoT Build 0:6ae2f7bca550 6925
Azure.IoT Build 0:6ae2f7bca550 6926 amqpvalue_destroy(item_value);
Azure.IoT Build 0:6ae2f7bca550 6927 }
Azure.IoT Build 0:6ae2f7bca550 6928 /* error */
Azure.IoT Build 0:6ae2f7bca550 6929 item_value = amqpvalue_get_list_item(list_value, 2);
Azure.IoT Build 0:6ae2f7bca550 6930 if (item_value == NULL)
Azure.IoT Build 0:6ae2f7bca550 6931 {
Azure.IoT Build 0:6ae2f7bca550 6932 /* do nothing */
Azure.IoT Build 0:6ae2f7bca550 6933 }
Azure.IoT Build 0:6ae2f7bca550 6934 else
Azure.IoT Build 0:6ae2f7bca550 6935 {
Azure.IoT Build 0:6ae2f7bca550 6936 ERROR_HANDLE error;
Azure.IoT Build 0:6ae2f7bca550 6937 if (amqpvalue_get_error(item_value, &error) != 0)
Azure.IoT Build 0:6ae2f7bca550 6938 {
Azure.IoT Build 0:6ae2f7bca550 6939 if (amqpvalue_get_type(item_value) != AMQP_TYPE_NULL)
Azure.IoT Build 0:6ae2f7bca550 6940 {
Azure.IoT Build 0:6ae2f7bca550 6941 detach_destroy(*detach_handle);
Azure.IoT Build 0:6ae2f7bca550 6942 result = __LINE__;
Azure.IoT Build 0:6ae2f7bca550 6943 break;
Azure.IoT Build 0:6ae2f7bca550 6944 }
Azure.IoT Build 0:6ae2f7bca550 6945 }
Azure.IoT Build 0:6ae2f7bca550 6946
Azure.IoT Build 0:6ae2f7bca550 6947 amqpvalue_destroy(item_value);
Azure.IoT Build 0:6ae2f7bca550 6948 }
Azure.IoT Build 0:6ae2f7bca550 6949
Azure.IoT Build 0:6ae2f7bca550 6950 detach_instance->composite_value = amqpvalue_clone(value);
Azure.IoT Build 0:6ae2f7bca550 6951
Azure.IoT Build 0:6ae2f7bca550 6952 result = 0;
Azure.IoT Build 0:6ae2f7bca550 6953 } while (0);
Azure.IoT Build 0:6ae2f7bca550 6954 }
Azure.IoT Build 0:6ae2f7bca550 6955 }
Azure.IoT Build 0:6ae2f7bca550 6956
Azure.IoT Build 0:6ae2f7bca550 6957 return result;
Azure.IoT Build 0:6ae2f7bca550 6958 }
Azure.IoT Build 0:6ae2f7bca550 6959
Azure.IoT Build 0:6ae2f7bca550 6960 int detach_get_handle(DETACH_HANDLE detach, handle* handle_value)
Azure.IoT Build 0:6ae2f7bca550 6961 {
Azure.IoT Build 0:6ae2f7bca550 6962 int result;
Azure.IoT Build 0:6ae2f7bca550 6963
Azure.IoT Build 0:6ae2f7bca550 6964 if (detach == NULL)
Azure.IoT Build 0:6ae2f7bca550 6965 {
Azure.IoT Build 0:6ae2f7bca550 6966 result = __LINE__;
Azure.IoT Build 0:6ae2f7bca550 6967 }
Azure.IoT Build 0:6ae2f7bca550 6968 else
Azure.IoT Build 0:6ae2f7bca550 6969 {
Azure.IoT Build 0:6ae2f7bca550 6970 DETACH_INSTANCE* detach_instance = (DETACH_INSTANCE*)detach;
Azure.IoT Build 0:6ae2f7bca550 6971 AMQP_VALUE item_value = amqpvalue_get_composite_item_in_place(detach_instance->composite_value, 0);
Azure.IoT Build 0:6ae2f7bca550 6972 if (item_value == NULL)
Azure.IoT Build 0:6ae2f7bca550 6973 {
Azure.IoT Build 0:6ae2f7bca550 6974 result = __LINE__;
Azure.IoT Build 0:6ae2f7bca550 6975 }
Azure.IoT Build 0:6ae2f7bca550 6976 else
Azure.IoT Build 0:6ae2f7bca550 6977 {
Azure.IoT Build 0:6ae2f7bca550 6978 if (amqpvalue_get_handle(item_value, handle_value) != 0)
Azure.IoT Build 0:6ae2f7bca550 6979 {
AzureIoTClient 16:22a72cf8e416 6980 result = __LINE__;
Azure.IoT Build 0:6ae2f7bca550 6981 }
Azure.IoT Build 0:6ae2f7bca550 6982 else
Azure.IoT Build 0:6ae2f7bca550 6983 {
Azure.IoT Build 0:6ae2f7bca550 6984 result = 0;
Azure.IoT Build 0:6ae2f7bca550 6985 }
Azure.IoT Build 0:6ae2f7bca550 6986 }
Azure.IoT Build 0:6ae2f7bca550 6987 }
Azure.IoT Build 0:6ae2f7bca550 6988
Azure.IoT Build 0:6ae2f7bca550 6989 return result;
Azure.IoT Build 0:6ae2f7bca550 6990 }
Azure.IoT Build 0:6ae2f7bca550 6991
Azure.IoT Build 0:6ae2f7bca550 6992 int detach_set_handle(DETACH_HANDLE detach, handle handle_value)
Azure.IoT Build 0:6ae2f7bca550 6993 {
Azure.IoT Build 0:6ae2f7bca550 6994 int result;
Azure.IoT Build 0:6ae2f7bca550 6995
Azure.IoT Build 0:6ae2f7bca550 6996 if (detach == NULL)
Azure.IoT Build 0:6ae2f7bca550 6997 {
Azure.IoT Build 0:6ae2f7bca550 6998 result = __LINE__;
Azure.IoT Build 0:6ae2f7bca550 6999 }
Azure.IoT Build 0:6ae2f7bca550 7000 else
Azure.IoT Build 0:6ae2f7bca550 7001 {
Azure.IoT Build 0:6ae2f7bca550 7002 DETACH_INSTANCE* detach_instance = (DETACH_INSTANCE*)detach;
Azure.IoT Build 0:6ae2f7bca550 7003 AMQP_VALUE handle_amqp_value = amqpvalue_create_handle(handle_value);
Azure.IoT Build 0:6ae2f7bca550 7004 if (handle_amqp_value == NULL)
Azure.IoT Build 0:6ae2f7bca550 7005 {
Azure.IoT Build 0:6ae2f7bca550 7006 result = __LINE__;
Azure.IoT Build 0:6ae2f7bca550 7007 }
Azure.IoT Build 0:6ae2f7bca550 7008 else
Azure.IoT Build 0:6ae2f7bca550 7009 {
Azure.IoT Build 0:6ae2f7bca550 7010 if (amqpvalue_set_composite_item(detach_instance->composite_value, 0, handle_amqp_value) != 0)
Azure.IoT Build 0:6ae2f7bca550 7011 {
Azure.IoT Build 0:6ae2f7bca550 7012 result = __LINE__;
Azure.IoT Build 0:6ae2f7bca550 7013 }
Azure.IoT Build 0:6ae2f7bca550 7014 else
Azure.IoT Build 0:6ae2f7bca550 7015 {
Azure.IoT Build 0:6ae2f7bca550 7016 result = 0;
Azure.IoT Build 0:6ae2f7bca550 7017 }
Azure.IoT Build 0:6ae2f7bca550 7018
Azure.IoT Build 0:6ae2f7bca550 7019 amqpvalue_destroy(handle_amqp_value);
Azure.IoT Build 0:6ae2f7bca550 7020 }
Azure.IoT Build 0:6ae2f7bca550 7021 }
Azure.IoT Build 0:6ae2f7bca550 7022
Azure.IoT Build 0:6ae2f7bca550 7023 return result;
Azure.IoT Build 0:6ae2f7bca550 7024 }
Azure.IoT Build 0:6ae2f7bca550 7025
Azure.IoT Build 0:6ae2f7bca550 7026 int detach_get_closed(DETACH_HANDLE detach, bool* closed_value)
Azure.IoT Build 0:6ae2f7bca550 7027 {
Azure.IoT Build 0:6ae2f7bca550 7028 int result;
Azure.IoT Build 0:6ae2f7bca550 7029
Azure.IoT Build 0:6ae2f7bca550 7030 if (detach == NULL)
Azure.IoT Build 0:6ae2f7bca550 7031 {
Azure.IoT Build 0:6ae2f7bca550 7032 result = __LINE__;
Azure.IoT Build 0:6ae2f7bca550 7033 }
Azure.IoT Build 0:6ae2f7bca550 7034 else
Azure.IoT Build 0:6ae2f7bca550 7035 {
Azure.IoT Build 0:6ae2f7bca550 7036 DETACH_INSTANCE* detach_instance = (DETACH_INSTANCE*)detach;
Azure.IoT Build 0:6ae2f7bca550 7037 AMQP_VALUE item_value = amqpvalue_get_composite_item_in_place(detach_instance->composite_value, 1);
Azure.IoT Build 0:6ae2f7bca550 7038 if (item_value == NULL)
Azure.IoT Build 0:6ae2f7bca550 7039 {
AzureIoTClient 16:22a72cf8e416 7040 *closed_value = false;
AzureIoTClient 16:22a72cf8e416 7041 result = 0;
Azure.IoT Build 0:6ae2f7bca550 7042 }
Azure.IoT Build 0:6ae2f7bca550 7043 else
Azure.IoT Build 0:6ae2f7bca550 7044 {
Azure.IoT Build 0:6ae2f7bca550 7045 if (amqpvalue_get_boolean(item_value, closed_value) != 0)
Azure.IoT Build 0:6ae2f7bca550 7046 {
AzureIoTClient 16:22a72cf8e416 7047 if (amqpvalue_get_type(item_value) == AMQP_TYPE_NULL)
AzureIoTClient 16:22a72cf8e416 7048 {
AzureIoTClient 16:22a72cf8e416 7049 result = __LINE__;
AzureIoTClient 16:22a72cf8e416 7050 }
AzureIoTClient 16:22a72cf8e416 7051 else
AzureIoTClient 16:22a72cf8e416 7052 {
AzureIoTClient 16:22a72cf8e416 7053 *closed_value = false;
AzureIoTClient 16:22a72cf8e416 7054 result = 0;
AzureIoTClient 16:22a72cf8e416 7055 }
Azure.IoT Build 0:6ae2f7bca550 7056 }
Azure.IoT Build 0:6ae2f7bca550 7057 else
Azure.IoT Build 0:6ae2f7bca550 7058 {
Azure.IoT Build 0:6ae2f7bca550 7059 result = 0;
Azure.IoT Build 0:6ae2f7bca550 7060 }
Azure.IoT Build 0:6ae2f7bca550 7061 }
Azure.IoT Build 0:6ae2f7bca550 7062 }
Azure.IoT Build 0:6ae2f7bca550 7063
Azure.IoT Build 0:6ae2f7bca550 7064 return result;
Azure.IoT Build 0:6ae2f7bca550 7065 }
Azure.IoT Build 0:6ae2f7bca550 7066
Azure.IoT Build 0:6ae2f7bca550 7067 int detach_set_closed(DETACH_HANDLE detach, bool closed_value)
Azure.IoT Build 0:6ae2f7bca550 7068 {
Azure.IoT Build 0:6ae2f7bca550 7069 int result;
Azure.IoT Build 0:6ae2f7bca550 7070
Azure.IoT Build 0:6ae2f7bca550 7071 if (detach == NULL)
Azure.IoT Build 0:6ae2f7bca550 7072 {
Azure.IoT Build 0:6ae2f7bca550 7073 result = __LINE__;
Azure.IoT Build 0:6ae2f7bca550 7074 }
Azure.IoT Build 0:6ae2f7bca550 7075 else
Azure.IoT Build 0:6ae2f7bca550 7076 {
Azure.IoT Build 0:6ae2f7bca550 7077 DETACH_INSTANCE* detach_instance = (DETACH_INSTANCE*)detach;
Azure.IoT Build 0:6ae2f7bca550 7078 AMQP_VALUE closed_amqp_value = amqpvalue_create_boolean(closed_value);
Azure.IoT Build 0:6ae2f7bca550 7079 if (closed_amqp_value == NULL)
Azure.IoT Build 0:6ae2f7bca550 7080 {
Azure.IoT Build 0:6ae2f7bca550 7081 result = __LINE__;
Azure.IoT Build 0:6ae2f7bca550 7082 }
Azure.IoT Build 0:6ae2f7bca550 7083 else
Azure.IoT Build 0:6ae2f7bca550 7084 {
Azure.IoT Build 0:6ae2f7bca550 7085 if (amqpvalue_set_composite_item(detach_instance->composite_value, 1, closed_amqp_value) != 0)
Azure.IoT Build 0:6ae2f7bca550 7086 {
Azure.IoT Build 0:6ae2f7bca550 7087 result = __LINE__;
Azure.IoT Build 0:6ae2f7bca550 7088 }
Azure.IoT Build 0:6ae2f7bca550 7089 else
Azure.IoT Build 0:6ae2f7bca550 7090 {
Azure.IoT Build 0:6ae2f7bca550 7091 result = 0;
Azure.IoT Build 0:6ae2f7bca550 7092 }
Azure.IoT Build 0:6ae2f7bca550 7093
Azure.IoT Build 0:6ae2f7bca550 7094 amqpvalue_destroy(closed_amqp_value);
Azure.IoT Build 0:6ae2f7bca550 7095 }
Azure.IoT Build 0:6ae2f7bca550 7096 }
Azure.IoT Build 0:6ae2f7bca550 7097
Azure.IoT Build 0:6ae2f7bca550 7098 return result;
Azure.IoT Build 0:6ae2f7bca550 7099 }
Azure.IoT Build 0:6ae2f7bca550 7100
Azure.IoT Build 0:6ae2f7bca550 7101 int detach_get_error(DETACH_HANDLE detach, ERROR_HANDLE* error_value)
Azure.IoT Build 0:6ae2f7bca550 7102 {
Azure.IoT Build 0:6ae2f7bca550 7103 int result;
Azure.IoT Build 0:6ae2f7bca550 7104
Azure.IoT Build 0:6ae2f7bca550 7105 if (detach == NULL)
Azure.IoT Build 0:6ae2f7bca550 7106 {
Azure.IoT Build 0:6ae2f7bca550 7107 result = __LINE__;
Azure.IoT Build 0:6ae2f7bca550 7108 }
Azure.IoT Build 0:6ae2f7bca550 7109 else
Azure.IoT Build 0:6ae2f7bca550 7110 {
Azure.IoT Build 0:6ae2f7bca550 7111 DETACH_INSTANCE* detach_instance = (DETACH_INSTANCE*)detach;
Azure.IoT Build 0:6ae2f7bca550 7112 AMQP_VALUE item_value = amqpvalue_get_composite_item_in_place(detach_instance->composite_value, 2);
Azure.IoT Build 0:6ae2f7bca550 7113 if (item_value == NULL)
Azure.IoT Build 0:6ae2f7bca550 7114 {
Azure.IoT Build 0:6ae2f7bca550 7115 result = __LINE__;
Azure.IoT Build 0:6ae2f7bca550 7116 }
Azure.IoT Build 0:6ae2f7bca550 7117 else
Azure.IoT Build 0:6ae2f7bca550 7118 {
Azure.IoT Build 0:6ae2f7bca550 7119 if (amqpvalue_get_error(item_value, error_value) != 0)
Azure.IoT Build 0:6ae2f7bca550 7120 {
AzureIoTClient 16:22a72cf8e416 7121 result = __LINE__;
Azure.IoT Build 0:6ae2f7bca550 7122 }
Azure.IoT Build 0:6ae2f7bca550 7123 else
Azure.IoT Build 0:6ae2f7bca550 7124 {
Azure.IoT Build 0:6ae2f7bca550 7125 result = 0;
Azure.IoT Build 0:6ae2f7bca550 7126 }
Azure.IoT Build 0:6ae2f7bca550 7127 }
Azure.IoT Build 0:6ae2f7bca550 7128 }
Azure.IoT Build 0:6ae2f7bca550 7129
Azure.IoT Build 0:6ae2f7bca550 7130 return result;
Azure.IoT Build 0:6ae2f7bca550 7131 }
Azure.IoT Build 0:6ae2f7bca550 7132
Azure.IoT Build 0:6ae2f7bca550 7133 int detach_set_error(DETACH_HANDLE detach, ERROR_HANDLE error_value)
Azure.IoT Build 0:6ae2f7bca550 7134 {
Azure.IoT Build 0:6ae2f7bca550 7135 int result;
Azure.IoT Build 0:6ae2f7bca550 7136
Azure.IoT Build 0:6ae2f7bca550 7137 if (detach == NULL)
Azure.IoT Build 0:6ae2f7bca550 7138 {
Azure.IoT Build 0:6ae2f7bca550 7139 result = __LINE__;
Azure.IoT Build 0:6ae2f7bca550 7140 }
Azure.IoT Build 0:6ae2f7bca550 7141 else
Azure.IoT Build 0:6ae2f7bca550 7142 {
Azure.IoT Build 0:6ae2f7bca550 7143 DETACH_INSTANCE* detach_instance = (DETACH_INSTANCE*)detach;
Azure.IoT Build 0:6ae2f7bca550 7144 AMQP_VALUE error_amqp_value = amqpvalue_create_error(error_value);
Azure.IoT Build 0:6ae2f7bca550 7145 if (error_amqp_value == NULL)
Azure.IoT Build 0:6ae2f7bca550 7146 {
Azure.IoT Build 0:6ae2f7bca550 7147 result = __LINE__;
Azure.IoT Build 0:6ae2f7bca550 7148 }
Azure.IoT Build 0:6ae2f7bca550 7149 else
Azure.IoT Build 0:6ae2f7bca550 7150 {
Azure.IoT Build 0:6ae2f7bca550 7151 if (amqpvalue_set_composite_item(detach_instance->composite_value, 2, error_amqp_value) != 0)
Azure.IoT Build 0:6ae2f7bca550 7152 {
Azure.IoT Build 0:6ae2f7bca550 7153 result = __LINE__;
Azure.IoT Build 0:6ae2f7bca550 7154 }
Azure.IoT Build 0:6ae2f7bca550 7155 else
Azure.IoT Build 0:6ae2f7bca550 7156 {
Azure.IoT Build 0:6ae2f7bca550 7157 result = 0;
Azure.IoT Build 0:6ae2f7bca550 7158 }
Azure.IoT Build 0:6ae2f7bca550 7159
Azure.IoT Build 0:6ae2f7bca550 7160 amqpvalue_destroy(error_amqp_value);
Azure.IoT Build 0:6ae2f7bca550 7161 }
Azure.IoT Build 0:6ae2f7bca550 7162 }
Azure.IoT Build 0:6ae2f7bca550 7163
Azure.IoT Build 0:6ae2f7bca550 7164 return result;
Azure.IoT Build 0:6ae2f7bca550 7165 }
Azure.IoT Build 0:6ae2f7bca550 7166
Azure.IoT Build 0:6ae2f7bca550 7167
Azure.IoT Build 0:6ae2f7bca550 7168 /* end */
Azure.IoT Build 0:6ae2f7bca550 7169
Azure.IoT Build 0:6ae2f7bca550 7170 typedef struct END_INSTANCE_TAG
Azure.IoT Build 0:6ae2f7bca550 7171 {
Azure.IoT Build 0:6ae2f7bca550 7172 AMQP_VALUE composite_value;
Azure.IoT Build 0:6ae2f7bca550 7173 } END_INSTANCE;
Azure.IoT Build 0:6ae2f7bca550 7174
Azure.IoT Build 0:6ae2f7bca550 7175 static END_HANDLE end_create_internal(void)
Azure.IoT Build 0:6ae2f7bca550 7176 {
Azure.IoT Build 0:6ae2f7bca550 7177 END_INSTANCE* end_instance = (END_INSTANCE*)amqpalloc_malloc(sizeof(END_INSTANCE));
Azure.IoT Build 0:6ae2f7bca550 7178 if (end_instance != NULL)
Azure.IoT Build 0:6ae2f7bca550 7179 {
Azure.IoT Build 0:6ae2f7bca550 7180 end_instance->composite_value = NULL;
Azure.IoT Build 0:6ae2f7bca550 7181 }
Azure.IoT Build 0:6ae2f7bca550 7182
Azure.IoT Build 0:6ae2f7bca550 7183 return end_instance;
Azure.IoT Build 0:6ae2f7bca550 7184 }
Azure.IoT Build 0:6ae2f7bca550 7185
Azure.IoT Build 0:6ae2f7bca550 7186 END_HANDLE end_create(void)
Azure.IoT Build 0:6ae2f7bca550 7187 {
Azure.IoT Build 0:6ae2f7bca550 7188 END_INSTANCE* end_instance = (END_INSTANCE*)amqpalloc_malloc(sizeof(END_INSTANCE));
Azure.IoT Build 0:6ae2f7bca550 7189 if (end_instance != NULL)
Azure.IoT Build 0:6ae2f7bca550 7190 {
Azure.IoT Build 0:6ae2f7bca550 7191 end_instance->composite_value = amqpvalue_create_composite_with_ulong_descriptor(23);
Azure.IoT Build 0:6ae2f7bca550 7192 if (end_instance->composite_value == NULL)
Azure.IoT Build 0:6ae2f7bca550 7193 {
Azure.IoT Build 0:6ae2f7bca550 7194 amqpalloc_free(end_instance);
Azure.IoT Build 0:6ae2f7bca550 7195 end_instance = NULL;
Azure.IoT Build 0:6ae2f7bca550 7196 }
Azure.IoT Build 0:6ae2f7bca550 7197 }
Azure.IoT Build 0:6ae2f7bca550 7198
Azure.IoT Build 0:6ae2f7bca550 7199 return end_instance;
Azure.IoT Build 0:6ae2f7bca550 7200 }
Azure.IoT Build 0:6ae2f7bca550 7201
Azure.IoT Build 0:6ae2f7bca550 7202 END_HANDLE end_clone(END_HANDLE value)
Azure.IoT Build 0:6ae2f7bca550 7203 {
Azure.IoT Build 0:6ae2f7bca550 7204 END_INSTANCE* end_instance = (END_INSTANCE*)amqpalloc_malloc(sizeof(END_INSTANCE));
Azure.IoT Build 0:6ae2f7bca550 7205 if (end_instance != NULL)
Azure.IoT Build 0:6ae2f7bca550 7206 {
Azure.IoT Build 0:6ae2f7bca550 7207 end_instance->composite_value = amqpvalue_clone(((END_INSTANCE*)value)->composite_value);
Azure.IoT Build 0:6ae2f7bca550 7208 if (end_instance->composite_value == NULL)
Azure.IoT Build 0:6ae2f7bca550 7209 {
Azure.IoT Build 0:6ae2f7bca550 7210 amqpalloc_free(end_instance);
Azure.IoT Build 0:6ae2f7bca550 7211 end_instance = NULL;
Azure.IoT Build 0:6ae2f7bca550 7212 }
Azure.IoT Build 0:6ae2f7bca550 7213 }
Azure.IoT Build 0:6ae2f7bca550 7214
Azure.IoT Build 0:6ae2f7bca550 7215 return end_instance;
Azure.IoT Build 0:6ae2f7bca550 7216 }
Azure.IoT Build 0:6ae2f7bca550 7217
Azure.IoT Build 0:6ae2f7bca550 7218 void end_destroy(END_HANDLE end)
Azure.IoT Build 0:6ae2f7bca550 7219 {
Azure.IoT Build 0:6ae2f7bca550 7220 if (end != NULL)
Azure.IoT Build 0:6ae2f7bca550 7221 {
Azure.IoT Build 0:6ae2f7bca550 7222 END_INSTANCE* end_instance = (END_INSTANCE*)end;
Azure.IoT Build 0:6ae2f7bca550 7223 amqpvalue_destroy(end_instance->composite_value);
Azure.IoT Build 0:6ae2f7bca550 7224 amqpalloc_free(end_instance);
Azure.IoT Build 0:6ae2f7bca550 7225 }
Azure.IoT Build 0:6ae2f7bca550 7226 }
Azure.IoT Build 0:6ae2f7bca550 7227
Azure.IoT Build 0:6ae2f7bca550 7228 AMQP_VALUE amqpvalue_create_end(END_HANDLE end)
Azure.IoT Build 0:6ae2f7bca550 7229 {
Azure.IoT Build 0:6ae2f7bca550 7230 AMQP_VALUE result;
Azure.IoT Build 0:6ae2f7bca550 7231
Azure.IoT Build 0:6ae2f7bca550 7232 if (end == NULL)
Azure.IoT Build 0:6ae2f7bca550 7233 {
Azure.IoT Build 0:6ae2f7bca550 7234 result = NULL;
Azure.IoT Build 0:6ae2f7bca550 7235 }
Azure.IoT Build 0:6ae2f7bca550 7236 else
Azure.IoT Build 0:6ae2f7bca550 7237 {
Azure.IoT Build 0:6ae2f7bca550 7238 END_INSTANCE* end_instance = (END_INSTANCE*)end;
Azure.IoT Build 0:6ae2f7bca550 7239 result = amqpvalue_clone(end_instance->composite_value);
Azure.IoT Build 0:6ae2f7bca550 7240 }
Azure.IoT Build 0:6ae2f7bca550 7241
Azure.IoT Build 0:6ae2f7bca550 7242 return result;
Azure.IoT Build 0:6ae2f7bca550 7243 }
Azure.IoT Build 0:6ae2f7bca550 7244
Azure.IoT Build 0:6ae2f7bca550 7245 bool is_end_type_by_descriptor(AMQP_VALUE descriptor)
Azure.IoT Build 0:6ae2f7bca550 7246 {
Azure.IoT Build 0:6ae2f7bca550 7247 bool result;
Azure.IoT Build 0:6ae2f7bca550 7248
Azure.IoT Build 0:6ae2f7bca550 7249 uint64_t descriptor_ulong;
Azure.IoT Build 0:6ae2f7bca550 7250 if ((amqpvalue_get_ulong(descriptor, &descriptor_ulong) == 0) &&
Azure.IoT Build 0:6ae2f7bca550 7251 (descriptor_ulong == 23))
Azure.IoT Build 0:6ae2f7bca550 7252 {
Azure.IoT Build 0:6ae2f7bca550 7253 result = true;
Azure.IoT Build 0:6ae2f7bca550 7254 }
Azure.IoT Build 0:6ae2f7bca550 7255 else
Azure.IoT Build 0:6ae2f7bca550 7256 {
Azure.IoT Build 0:6ae2f7bca550 7257 result = false;
Azure.IoT Build 0:6ae2f7bca550 7258 }
Azure.IoT Build 0:6ae2f7bca550 7259
Azure.IoT Build 0:6ae2f7bca550 7260 return result;
Azure.IoT Build 0:6ae2f7bca550 7261 }
Azure.IoT Build 0:6ae2f7bca550 7262
Azure.IoT Build 0:6ae2f7bca550 7263
Azure.IoT Build 0:6ae2f7bca550 7264 int amqpvalue_get_end(AMQP_VALUE value, END_HANDLE* end_handle)
Azure.IoT Build 0:6ae2f7bca550 7265 {
Azure.IoT Build 0:6ae2f7bca550 7266 int result;
Azure.IoT Build 0:6ae2f7bca550 7267 END_INSTANCE* end_instance = (END_INSTANCE*)end_create_internal();
Azure.IoT Build 0:6ae2f7bca550 7268 *end_handle = end_instance;
Azure.IoT Build 0:6ae2f7bca550 7269 if (*end_handle == NULL)
Azure.IoT Build 0:6ae2f7bca550 7270 {
Azure.IoT Build 0:6ae2f7bca550 7271 result = __LINE__;
Azure.IoT Build 0:6ae2f7bca550 7272 }
Azure.IoT Build 0:6ae2f7bca550 7273 else
Azure.IoT Build 0:6ae2f7bca550 7274 {
Azure.IoT Build 0:6ae2f7bca550 7275 AMQP_VALUE list_value = amqpvalue_get_inplace_described_value(value);
Azure.IoT Build 0:6ae2f7bca550 7276 if (list_value == NULL)
Azure.IoT Build 0:6ae2f7bca550 7277 {
Azure.IoT Build 0:6ae2f7bca550 7278 end_destroy(*end_handle);
Azure.IoT Build 0:6ae2f7bca550 7279 result = __LINE__;
Azure.IoT Build 0:6ae2f7bca550 7280 }
Azure.IoT Build 0:6ae2f7bca550 7281 else
Azure.IoT Build 0:6ae2f7bca550 7282 {
Azure.IoT Build 0:6ae2f7bca550 7283 do
Azure.IoT Build 0:6ae2f7bca550 7284 {
Azure.IoT Build 0:6ae2f7bca550 7285 AMQP_VALUE item_value;
Azure.IoT Build 0:6ae2f7bca550 7286 /* error */
Azure.IoT Build 0:6ae2f7bca550 7287 item_value = amqpvalue_get_list_item(list_value, 0);
Azure.IoT Build 0:6ae2f7bca550 7288 if (item_value == NULL)
Azure.IoT Build 0:6ae2f7bca550 7289 {
Azure.IoT Build 0:6ae2f7bca550 7290 /* do nothing */
Azure.IoT Build 0:6ae2f7bca550 7291 }
Azure.IoT Build 0:6ae2f7bca550 7292 else
Azure.IoT Build 0:6ae2f7bca550 7293 {
Azure.IoT Build 0:6ae2f7bca550 7294 ERROR_HANDLE error;
Azure.IoT Build 0:6ae2f7bca550 7295 if (amqpvalue_get_error(item_value, &error) != 0)
Azure.IoT Build 0:6ae2f7bca550 7296 {
Azure.IoT Build 0:6ae2f7bca550 7297 if (amqpvalue_get_type(item_value) != AMQP_TYPE_NULL)
Azure.IoT Build 0:6ae2f7bca550 7298 {
Azure.IoT Build 0:6ae2f7bca550 7299 end_destroy(*end_handle);
Azure.IoT Build 0:6ae2f7bca550 7300 result = __LINE__;
Azure.IoT Build 0:6ae2f7bca550 7301 break;
Azure.IoT Build 0:6ae2f7bca550 7302 }
Azure.IoT Build 0:6ae2f7bca550 7303 }
Azure.IoT Build 0:6ae2f7bca550 7304
Azure.IoT Build 0:6ae2f7bca550 7305 amqpvalue_destroy(item_value);
Azure.IoT Build 0:6ae2f7bca550 7306 }
Azure.IoT Build 0:6ae2f7bca550 7307
Azure.IoT Build 0:6ae2f7bca550 7308 end_instance->composite_value = amqpvalue_clone(value);
Azure.IoT Build 0:6ae2f7bca550 7309
Azure.IoT Build 0:6ae2f7bca550 7310 result = 0;
Azure.IoT Build 0:6ae2f7bca550 7311 } while (0);
Azure.IoT Build 0:6ae2f7bca550 7312 }
Azure.IoT Build 0:6ae2f7bca550 7313 }
Azure.IoT Build 0:6ae2f7bca550 7314
Azure.IoT Build 0:6ae2f7bca550 7315 return result;
Azure.IoT Build 0:6ae2f7bca550 7316 }
Azure.IoT Build 0:6ae2f7bca550 7317
Azure.IoT Build 0:6ae2f7bca550 7318 int end_get_error(END_HANDLE end, ERROR_HANDLE* error_value)
Azure.IoT Build 0:6ae2f7bca550 7319 {
Azure.IoT Build 0:6ae2f7bca550 7320 int result;
Azure.IoT Build 0:6ae2f7bca550 7321
Azure.IoT Build 0:6ae2f7bca550 7322 if (end == NULL)
Azure.IoT Build 0:6ae2f7bca550 7323 {
Azure.IoT Build 0:6ae2f7bca550 7324 result = __LINE__;
Azure.IoT Build 0:6ae2f7bca550 7325 }
Azure.IoT Build 0:6ae2f7bca550 7326 else
Azure.IoT Build 0:6ae2f7bca550 7327 {
Azure.IoT Build 0:6ae2f7bca550 7328 END_INSTANCE* end_instance = (END_INSTANCE*)end;
Azure.IoT Build 0:6ae2f7bca550 7329 AMQP_VALUE item_value = amqpvalue_get_composite_item_in_place(end_instance->composite_value, 0);
Azure.IoT Build 0:6ae2f7bca550 7330 if (item_value == NULL)
Azure.IoT Build 0:6ae2f7bca550 7331 {
Azure.IoT Build 0:6ae2f7bca550 7332 result = __LINE__;
Azure.IoT Build 0:6ae2f7bca550 7333 }
Azure.IoT Build 0:6ae2f7bca550 7334 else
Azure.IoT Build 0:6ae2f7bca550 7335 {
Azure.IoT Build 0:6ae2f7bca550 7336 if (amqpvalue_get_error(item_value, error_value) != 0)
Azure.IoT Build 0:6ae2f7bca550 7337 {
AzureIoTClient 16:22a72cf8e416 7338 result = __LINE__;
Azure.IoT Build 0:6ae2f7bca550 7339 }
Azure.IoT Build 0:6ae2f7bca550 7340 else
Azure.IoT Build 0:6ae2f7bca550 7341 {
Azure.IoT Build 0:6ae2f7bca550 7342 result = 0;
Azure.IoT Build 0:6ae2f7bca550 7343 }
Azure.IoT Build 0:6ae2f7bca550 7344 }
Azure.IoT Build 0:6ae2f7bca550 7345 }
Azure.IoT Build 0:6ae2f7bca550 7346
Azure.IoT Build 0:6ae2f7bca550 7347 return result;
Azure.IoT Build 0:6ae2f7bca550 7348 }
Azure.IoT Build 0:6ae2f7bca550 7349
Azure.IoT Build 0:6ae2f7bca550 7350 int end_set_error(END_HANDLE end, ERROR_HANDLE error_value)
Azure.IoT Build 0:6ae2f7bca550 7351 {
Azure.IoT Build 0:6ae2f7bca550 7352 int result;
Azure.IoT Build 0:6ae2f7bca550 7353
Azure.IoT Build 0:6ae2f7bca550 7354 if (end == NULL)
Azure.IoT Build 0:6ae2f7bca550 7355 {
Azure.IoT Build 0:6ae2f7bca550 7356 result = __LINE__;
Azure.IoT Build 0:6ae2f7bca550 7357 }
Azure.IoT Build 0:6ae2f7bca550 7358 else
Azure.IoT Build 0:6ae2f7bca550 7359 {
Azure.IoT Build 0:6ae2f7bca550 7360 END_INSTANCE* end_instance = (END_INSTANCE*)end;
Azure.IoT Build 0:6ae2f7bca550 7361 AMQP_VALUE error_amqp_value = amqpvalue_create_error(error_value);
Azure.IoT Build 0:6ae2f7bca550 7362 if (error_amqp_value == NULL)
Azure.IoT Build 0:6ae2f7bca550 7363 {
Azure.IoT Build 0:6ae2f7bca550 7364 result = __LINE__;
Azure.IoT Build 0:6ae2f7bca550 7365 }
Azure.IoT Build 0:6ae2f7bca550 7366 else
Azure.IoT Build 0:6ae2f7bca550 7367 {
Azure.IoT Build 0:6ae2f7bca550 7368 if (amqpvalue_set_composite_item(end_instance->composite_value, 0, error_amqp_value) != 0)
Azure.IoT Build 0:6ae2f7bca550 7369 {
Azure.IoT Build 0:6ae2f7bca550 7370 result = __LINE__;
Azure.IoT Build 0:6ae2f7bca550 7371 }
Azure.IoT Build 0:6ae2f7bca550 7372 else
Azure.IoT Build 0:6ae2f7bca550 7373 {
Azure.IoT Build 0:6ae2f7bca550 7374 result = 0;
Azure.IoT Build 0:6ae2f7bca550 7375 }
Azure.IoT Build 0:6ae2f7bca550 7376
Azure.IoT Build 0:6ae2f7bca550 7377 amqpvalue_destroy(error_amqp_value);
Azure.IoT Build 0:6ae2f7bca550 7378 }
Azure.IoT Build 0:6ae2f7bca550 7379 }
Azure.IoT Build 0:6ae2f7bca550 7380
Azure.IoT Build 0:6ae2f7bca550 7381 return result;
Azure.IoT Build 0:6ae2f7bca550 7382 }
Azure.IoT Build 0:6ae2f7bca550 7383
Azure.IoT Build 0:6ae2f7bca550 7384
Azure.IoT Build 0:6ae2f7bca550 7385 /* close */
Azure.IoT Build 0:6ae2f7bca550 7386
Azure.IoT Build 0:6ae2f7bca550 7387 typedef struct CLOSE_INSTANCE_TAG
Azure.IoT Build 0:6ae2f7bca550 7388 {
Azure.IoT Build 0:6ae2f7bca550 7389 AMQP_VALUE composite_value;
Azure.IoT Build 0:6ae2f7bca550 7390 } CLOSE_INSTANCE;
Azure.IoT Build 0:6ae2f7bca550 7391
Azure.IoT Build 0:6ae2f7bca550 7392 static CLOSE_HANDLE close_create_internal(void)
Azure.IoT Build 0:6ae2f7bca550 7393 {
Azure.IoT Build 0:6ae2f7bca550 7394 CLOSE_INSTANCE* close_instance = (CLOSE_INSTANCE*)amqpalloc_malloc(sizeof(CLOSE_INSTANCE));
Azure.IoT Build 0:6ae2f7bca550 7395 if (close_instance != NULL)
Azure.IoT Build 0:6ae2f7bca550 7396 {
Azure.IoT Build 0:6ae2f7bca550 7397 close_instance->composite_value = NULL;
Azure.IoT Build 0:6ae2f7bca550 7398 }
Azure.IoT Build 0:6ae2f7bca550 7399
Azure.IoT Build 0:6ae2f7bca550 7400 return close_instance;
Azure.IoT Build 0:6ae2f7bca550 7401 }
Azure.IoT Build 0:6ae2f7bca550 7402
Azure.IoT Build 0:6ae2f7bca550 7403 CLOSE_HANDLE close_create(void)
Azure.IoT Build 0:6ae2f7bca550 7404 {
Azure.IoT Build 0:6ae2f7bca550 7405 CLOSE_INSTANCE* close_instance = (CLOSE_INSTANCE*)amqpalloc_malloc(sizeof(CLOSE_INSTANCE));
Azure.IoT Build 0:6ae2f7bca550 7406 if (close_instance != NULL)
Azure.IoT Build 0:6ae2f7bca550 7407 {
Azure.IoT Build 0:6ae2f7bca550 7408 close_instance->composite_value = amqpvalue_create_composite_with_ulong_descriptor(24);
Azure.IoT Build 0:6ae2f7bca550 7409 if (close_instance->composite_value == NULL)
Azure.IoT Build 0:6ae2f7bca550 7410 {
Azure.IoT Build 0:6ae2f7bca550 7411 amqpalloc_free(close_instance);
Azure.IoT Build 0:6ae2f7bca550 7412 close_instance = NULL;
Azure.IoT Build 0:6ae2f7bca550 7413 }
Azure.IoT Build 0:6ae2f7bca550 7414 }
Azure.IoT Build 0:6ae2f7bca550 7415
Azure.IoT Build 0:6ae2f7bca550 7416 return close_instance;
Azure.IoT Build 0:6ae2f7bca550 7417 }
Azure.IoT Build 0:6ae2f7bca550 7418
Azure.IoT Build 0:6ae2f7bca550 7419 CLOSE_HANDLE close_clone(CLOSE_HANDLE value)
Azure.IoT Build 0:6ae2f7bca550 7420 {
Azure.IoT Build 0:6ae2f7bca550 7421 CLOSE_INSTANCE* close_instance = (CLOSE_INSTANCE*)amqpalloc_malloc(sizeof(CLOSE_INSTANCE));
Azure.IoT Build 0:6ae2f7bca550 7422 if (close_instance != NULL)
Azure.IoT Build 0:6ae2f7bca550 7423 {
Azure.IoT Build 0:6ae2f7bca550 7424 close_instance->composite_value = amqpvalue_clone(((CLOSE_INSTANCE*)value)->composite_value);
Azure.IoT Build 0:6ae2f7bca550 7425 if (close_instance->composite_value == NULL)
Azure.IoT Build 0:6ae2f7bca550 7426 {
Azure.IoT Build 0:6ae2f7bca550 7427 amqpalloc_free(close_instance);
Azure.IoT Build 0:6ae2f7bca550 7428 close_instance = NULL;
Azure.IoT Build 0:6ae2f7bca550 7429 }
Azure.IoT Build 0:6ae2f7bca550 7430 }
Azure.IoT Build 0:6ae2f7bca550 7431
Azure.IoT Build 0:6ae2f7bca550 7432 return close_instance;
Azure.IoT Build 0:6ae2f7bca550 7433 }
Azure.IoT Build 0:6ae2f7bca550 7434
Azure.IoT Build 0:6ae2f7bca550 7435 void close_destroy(CLOSE_HANDLE close)
Azure.IoT Build 0:6ae2f7bca550 7436 {
Azure.IoT Build 0:6ae2f7bca550 7437 if (close != NULL)
Azure.IoT Build 0:6ae2f7bca550 7438 {
Azure.IoT Build 0:6ae2f7bca550 7439 CLOSE_INSTANCE* close_instance = (CLOSE_INSTANCE*)close;
Azure.IoT Build 0:6ae2f7bca550 7440 amqpvalue_destroy(close_instance->composite_value);
Azure.IoT Build 0:6ae2f7bca550 7441 amqpalloc_free(close_instance);
Azure.IoT Build 0:6ae2f7bca550 7442 }
Azure.IoT Build 0:6ae2f7bca550 7443 }
Azure.IoT Build 0:6ae2f7bca550 7444
Azure.IoT Build 0:6ae2f7bca550 7445 AMQP_VALUE amqpvalue_create_close(CLOSE_HANDLE close)
Azure.IoT Build 0:6ae2f7bca550 7446 {
Azure.IoT Build 0:6ae2f7bca550 7447 AMQP_VALUE result;
Azure.IoT Build 0:6ae2f7bca550 7448
Azure.IoT Build 0:6ae2f7bca550 7449 if (close == NULL)
Azure.IoT Build 0:6ae2f7bca550 7450 {
Azure.IoT Build 0:6ae2f7bca550 7451 result = NULL;
Azure.IoT Build 0:6ae2f7bca550 7452 }
Azure.IoT Build 0:6ae2f7bca550 7453 else
Azure.IoT Build 0:6ae2f7bca550 7454 {
Azure.IoT Build 0:6ae2f7bca550 7455 CLOSE_INSTANCE* close_instance = (CLOSE_INSTANCE*)close;
Azure.IoT Build 0:6ae2f7bca550 7456 result = amqpvalue_clone(close_instance->composite_value);
Azure.IoT Build 0:6ae2f7bca550 7457 }
Azure.IoT Build 0:6ae2f7bca550 7458
Azure.IoT Build 0:6ae2f7bca550 7459 return result;
Azure.IoT Build 0:6ae2f7bca550 7460 }
Azure.IoT Build 0:6ae2f7bca550 7461
Azure.IoT Build 0:6ae2f7bca550 7462 bool is_close_type_by_descriptor(AMQP_VALUE descriptor)
Azure.IoT Build 0:6ae2f7bca550 7463 {
Azure.IoT Build 0:6ae2f7bca550 7464 bool result;
Azure.IoT Build 0:6ae2f7bca550 7465
Azure.IoT Build 0:6ae2f7bca550 7466 uint64_t descriptor_ulong;
Azure.IoT Build 0:6ae2f7bca550 7467 if ((amqpvalue_get_ulong(descriptor, &descriptor_ulong) == 0) &&
Azure.IoT Build 0:6ae2f7bca550 7468 (descriptor_ulong == 24))
Azure.IoT Build 0:6ae2f7bca550 7469 {
Azure.IoT Build 0:6ae2f7bca550 7470 result = true;
Azure.IoT Build 0:6ae2f7bca550 7471 }
Azure.IoT Build 0:6ae2f7bca550 7472 else
Azure.IoT Build 0:6ae2f7bca550 7473 {
Azure.IoT Build 0:6ae2f7bca550 7474 result = false;
Azure.IoT Build 0:6ae2f7bca550 7475 }
Azure.IoT Build 0:6ae2f7bca550 7476
Azure.IoT Build 0:6ae2f7bca550 7477 return result;
Azure.IoT Build 0:6ae2f7bca550 7478 }
Azure.IoT Build 0:6ae2f7bca550 7479
Azure.IoT Build 0:6ae2f7bca550 7480
Azure.IoT Build 0:6ae2f7bca550 7481 int amqpvalue_get_close(AMQP_VALUE value, CLOSE_HANDLE* close_handle)
Azure.IoT Build 0:6ae2f7bca550 7482 {
Azure.IoT Build 0:6ae2f7bca550 7483 int result;
Azure.IoT Build 0:6ae2f7bca550 7484 CLOSE_INSTANCE* close_instance = (CLOSE_INSTANCE*)close_create_internal();
Azure.IoT Build 0:6ae2f7bca550 7485 *close_handle = close_instance;
Azure.IoT Build 0:6ae2f7bca550 7486 if (*close_handle == NULL)
Azure.IoT Build 0:6ae2f7bca550 7487 {
Azure.IoT Build 0:6ae2f7bca550 7488 result = __LINE__;
Azure.IoT Build 0:6ae2f7bca550 7489 }
Azure.IoT Build 0:6ae2f7bca550 7490 else
Azure.IoT Build 0:6ae2f7bca550 7491 {
Azure.IoT Build 0:6ae2f7bca550 7492 AMQP_VALUE list_value = amqpvalue_get_inplace_described_value(value);
Azure.IoT Build 0:6ae2f7bca550 7493 if (list_value == NULL)
Azure.IoT Build 0:6ae2f7bca550 7494 {
Azure.IoT Build 0:6ae2f7bca550 7495 close_destroy(*close_handle);
Azure.IoT Build 0:6ae2f7bca550 7496 result = __LINE__;
Azure.IoT Build 0:6ae2f7bca550 7497 }
Azure.IoT Build 0:6ae2f7bca550 7498 else
Azure.IoT Build 0:6ae2f7bca550 7499 {
Azure.IoT Build 0:6ae2f7bca550 7500 do
Azure.IoT Build 0:6ae2f7bca550 7501 {
Azure.IoT Build 0:6ae2f7bca550 7502 AMQP_VALUE item_value;
Azure.IoT Build 0:6ae2f7bca550 7503 /* error */
Azure.IoT Build 0:6ae2f7bca550 7504 item_value = amqpvalue_get_list_item(list_value, 0);
Azure.IoT Build 0:6ae2f7bca550 7505 if (item_value == NULL)
Azure.IoT Build 0:6ae2f7bca550 7506 {
Azure.IoT Build 0:6ae2f7bca550 7507 /* do nothing */
Azure.IoT Build 0:6ae2f7bca550 7508 }
Azure.IoT Build 0:6ae2f7bca550 7509 else
Azure.IoT Build 0:6ae2f7bca550 7510 {
Azure.IoT Build 0:6ae2f7bca550 7511 ERROR_HANDLE error;
Azure.IoT Build 0:6ae2f7bca550 7512 if (amqpvalue_get_error(item_value, &error) != 0)
Azure.IoT Build 0:6ae2f7bca550 7513 {
Azure.IoT Build 0:6ae2f7bca550 7514 if (amqpvalue_get_type(item_value) != AMQP_TYPE_NULL)
Azure.IoT Build 0:6ae2f7bca550 7515 {
Azure.IoT Build 0:6ae2f7bca550 7516 close_destroy(*close_handle);
Azure.IoT Build 0:6ae2f7bca550 7517 result = __LINE__;
Azure.IoT Build 0:6ae2f7bca550 7518 break;
Azure.IoT Build 0:6ae2f7bca550 7519 }
Azure.IoT Build 0:6ae2f7bca550 7520 }
Azure.IoT Build 0:6ae2f7bca550 7521
Azure.IoT Build 0:6ae2f7bca550 7522 amqpvalue_destroy(item_value);
Azure.IoT Build 0:6ae2f7bca550 7523 }
Azure.IoT Build 0:6ae2f7bca550 7524
Azure.IoT Build 0:6ae2f7bca550 7525 close_instance->composite_value = amqpvalue_clone(value);
Azure.IoT Build 0:6ae2f7bca550 7526
Azure.IoT Build 0:6ae2f7bca550 7527 result = 0;
Azure.IoT Build 0:6ae2f7bca550 7528 } while (0);
Azure.IoT Build 0:6ae2f7bca550 7529 }
Azure.IoT Build 0:6ae2f7bca550 7530 }
Azure.IoT Build 0:6ae2f7bca550 7531
Azure.IoT Build 0:6ae2f7bca550 7532 return result;
Azure.IoT Build 0:6ae2f7bca550 7533 }
Azure.IoT Build 0:6ae2f7bca550 7534
Azure.IoT Build 0:6ae2f7bca550 7535 int close_get_error(CLOSE_HANDLE close, ERROR_HANDLE* error_value)
Azure.IoT Build 0:6ae2f7bca550 7536 {
Azure.IoT Build 0:6ae2f7bca550 7537 int result;
Azure.IoT Build 0:6ae2f7bca550 7538
Azure.IoT Build 0:6ae2f7bca550 7539 if (close == NULL)
Azure.IoT Build 0:6ae2f7bca550 7540 {
Azure.IoT Build 0:6ae2f7bca550 7541 result = __LINE__;
Azure.IoT Build 0:6ae2f7bca550 7542 }
Azure.IoT Build 0:6ae2f7bca550 7543 else
Azure.IoT Build 0:6ae2f7bca550 7544 {
Azure.IoT Build 0:6ae2f7bca550 7545 CLOSE_INSTANCE* close_instance = (CLOSE_INSTANCE*)close;
Azure.IoT Build 0:6ae2f7bca550 7546 AMQP_VALUE item_value = amqpvalue_get_composite_item_in_place(close_instance->composite_value, 0);
Azure.IoT Build 0:6ae2f7bca550 7547 if (item_value == NULL)
Azure.IoT Build 0:6ae2f7bca550 7548 {
Azure.IoT Build 0:6ae2f7bca550 7549 result = __LINE__;
Azure.IoT Build 0:6ae2f7bca550 7550 }
Azure.IoT Build 0:6ae2f7bca550 7551 else
Azure.IoT Build 0:6ae2f7bca550 7552 {
Azure.IoT Build 0:6ae2f7bca550 7553 if (amqpvalue_get_error(item_value, error_value) != 0)
Azure.IoT Build 0:6ae2f7bca550 7554 {
AzureIoTClient 16:22a72cf8e416 7555 result = __LINE__;
Azure.IoT Build 0:6ae2f7bca550 7556 }
Azure.IoT Build 0:6ae2f7bca550 7557 else
Azure.IoT Build 0:6ae2f7bca550 7558 {
Azure.IoT Build 0:6ae2f7bca550 7559 result = 0;
Azure.IoT Build 0:6ae2f7bca550 7560 }
Azure.IoT Build 0:6ae2f7bca550 7561 }
Azure.IoT Build 0:6ae2f7bca550 7562 }
Azure.IoT Build 0:6ae2f7bca550 7563
Azure.IoT Build 0:6ae2f7bca550 7564 return result;
Azure.IoT Build 0:6ae2f7bca550 7565 }
Azure.IoT Build 0:6ae2f7bca550 7566
Azure.IoT Build 0:6ae2f7bca550 7567 int close_set_error(CLOSE_HANDLE close, ERROR_HANDLE error_value)
Azure.IoT Build 0:6ae2f7bca550 7568 {
Azure.IoT Build 0:6ae2f7bca550 7569 int result;
Azure.IoT Build 0:6ae2f7bca550 7570
Azure.IoT Build 0:6ae2f7bca550 7571 if (close == NULL)
Azure.IoT Build 0:6ae2f7bca550 7572 {
Azure.IoT Build 0:6ae2f7bca550 7573 result = __LINE__;
Azure.IoT Build 0:6ae2f7bca550 7574 }
Azure.IoT Build 0:6ae2f7bca550 7575 else
Azure.IoT Build 0:6ae2f7bca550 7576 {
Azure.IoT Build 0:6ae2f7bca550 7577 CLOSE_INSTANCE* close_instance = (CLOSE_INSTANCE*)close;
Azure.IoT Build 0:6ae2f7bca550 7578 AMQP_VALUE error_amqp_value = amqpvalue_create_error(error_value);
Azure.IoT Build 0:6ae2f7bca550 7579 if (error_amqp_value == NULL)
Azure.IoT Build 0:6ae2f7bca550 7580 {
Azure.IoT Build 0:6ae2f7bca550 7581 result = __LINE__;
Azure.IoT Build 0:6ae2f7bca550 7582 }
Azure.IoT Build 0:6ae2f7bca550 7583 else
Azure.IoT Build 0:6ae2f7bca550 7584 {
Azure.IoT Build 0:6ae2f7bca550 7585 if (amqpvalue_set_composite_item(close_instance->composite_value, 0, error_amqp_value) != 0)
Azure.IoT Build 0:6ae2f7bca550 7586 {
Azure.IoT Build 0:6ae2f7bca550 7587 result = __LINE__;
Azure.IoT Build 0:6ae2f7bca550 7588 }
Azure.IoT Build 0:6ae2f7bca550 7589 else
Azure.IoT Build 0:6ae2f7bca550 7590 {
Azure.IoT Build 0:6ae2f7bca550 7591 result = 0;
Azure.IoT Build 0:6ae2f7bca550 7592 }
Azure.IoT Build 0:6ae2f7bca550 7593
Azure.IoT Build 0:6ae2f7bca550 7594 amqpvalue_destroy(error_amqp_value);
Azure.IoT Build 0:6ae2f7bca550 7595 }
Azure.IoT Build 0:6ae2f7bca550 7596 }
Azure.IoT Build 0:6ae2f7bca550 7597
Azure.IoT Build 0:6ae2f7bca550 7598 return result;
Azure.IoT Build 0:6ae2f7bca550 7599 }
Azure.IoT Build 0:6ae2f7bca550 7600
Azure.IoT Build 0:6ae2f7bca550 7601
Azure.IoT Build 0:6ae2f7bca550 7602 /* sasl-code */
Azure.IoT Build 0:6ae2f7bca550 7603
Azure.IoT Build 0:6ae2f7bca550 7604 AMQP_VALUE amqpvalue_create_sasl_code(sasl_code value)
Azure.IoT Build 0:6ae2f7bca550 7605 {
Azure.IoT Build 0:6ae2f7bca550 7606 return amqpvalue_create_ubyte(value);
Azure.IoT Build 0:6ae2f7bca550 7607 }
Azure.IoT Build 0:6ae2f7bca550 7608
Azure.IoT Build 0:6ae2f7bca550 7609 /* sasl-mechanisms */
Azure.IoT Build 0:6ae2f7bca550 7610
Azure.IoT Build 0:6ae2f7bca550 7611 typedef struct SASL_MECHANISMS_INSTANCE_TAG
Azure.IoT Build 0:6ae2f7bca550 7612 {
Azure.IoT Build 0:6ae2f7bca550 7613 AMQP_VALUE composite_value;
Azure.IoT Build 0:6ae2f7bca550 7614 } SASL_MECHANISMS_INSTANCE;
Azure.IoT Build 0:6ae2f7bca550 7615
Azure.IoT Build 0:6ae2f7bca550 7616 static SASL_MECHANISMS_HANDLE sasl_mechanisms_create_internal(void)
Azure.IoT Build 0:6ae2f7bca550 7617 {
Azure.IoT Build 0:6ae2f7bca550 7618 SASL_MECHANISMS_INSTANCE* sasl_mechanisms_instance = (SASL_MECHANISMS_INSTANCE*)amqpalloc_malloc(sizeof(SASL_MECHANISMS_INSTANCE));
Azure.IoT Build 0:6ae2f7bca550 7619 if (sasl_mechanisms_instance != NULL)
Azure.IoT Build 0:6ae2f7bca550 7620 {
Azure.IoT Build 0:6ae2f7bca550 7621 sasl_mechanisms_instance->composite_value = NULL;
Azure.IoT Build 0:6ae2f7bca550 7622 }
Azure.IoT Build 0:6ae2f7bca550 7623
Azure.IoT Build 0:6ae2f7bca550 7624 return sasl_mechanisms_instance;
Azure.IoT Build 0:6ae2f7bca550 7625 }
Azure.IoT Build 0:6ae2f7bca550 7626
Azure.IoT Build 0:6ae2f7bca550 7627 SASL_MECHANISMS_HANDLE sasl_mechanisms_create(AMQP_VALUE sasl_server_mechanisms_value)
Azure.IoT Build 0:6ae2f7bca550 7628 {
Azure.IoT Build 0:6ae2f7bca550 7629 SASL_MECHANISMS_INSTANCE* sasl_mechanisms_instance = (SASL_MECHANISMS_INSTANCE*)amqpalloc_malloc(sizeof(SASL_MECHANISMS_INSTANCE));
Azure.IoT Build 0:6ae2f7bca550 7630 if (sasl_mechanisms_instance != NULL)
Azure.IoT Build 0:6ae2f7bca550 7631 {
Azure.IoT Build 0:6ae2f7bca550 7632 sasl_mechanisms_instance->composite_value = amqpvalue_create_composite_with_ulong_descriptor(64);
Azure.IoT Build 0:6ae2f7bca550 7633 if (sasl_mechanisms_instance->composite_value == NULL)
Azure.IoT Build 0:6ae2f7bca550 7634 {
Azure.IoT Build 0:6ae2f7bca550 7635 amqpalloc_free(sasl_mechanisms_instance);
Azure.IoT Build 0:6ae2f7bca550 7636 sasl_mechanisms_instance = NULL;
Azure.IoT Build 0:6ae2f7bca550 7637 }
Azure.IoT Build 0:6ae2f7bca550 7638 else
Azure.IoT Build 0:6ae2f7bca550 7639 {
Azure.IoT Build 0:6ae2f7bca550 7640 AMQP_VALUE sasl_server_mechanisms_amqp_value;
Azure.IoT Build 0:6ae2f7bca550 7641 int result = 0;
Azure.IoT Build 0:6ae2f7bca550 7642
Azure.IoT Build 0:6ae2f7bca550 7643 sasl_server_mechanisms_amqp_value = sasl_server_mechanisms_value;
Azure.IoT Build 0:6ae2f7bca550 7644 if ((result == 0) && (amqpvalue_set_composite_item(sasl_mechanisms_instance->composite_value, 0, sasl_server_mechanisms_amqp_value) != 0))
Azure.IoT Build 0:6ae2f7bca550 7645 {
Azure.IoT Build 0:6ae2f7bca550 7646 result = __LINE__;
Azure.IoT Build 0:6ae2f7bca550 7647 }
Azure.IoT Build 0:6ae2f7bca550 7648
Azure.IoT Build 0:6ae2f7bca550 7649 amqpvalue_destroy(sasl_server_mechanisms_amqp_value);
Azure.IoT Build 0:6ae2f7bca550 7650 }
Azure.IoT Build 0:6ae2f7bca550 7651 }
Azure.IoT Build 0:6ae2f7bca550 7652
Azure.IoT Build 0:6ae2f7bca550 7653 return sasl_mechanisms_instance;
Azure.IoT Build 0:6ae2f7bca550 7654 }
Azure.IoT Build 0:6ae2f7bca550 7655
Azure.IoT Build 0:6ae2f7bca550 7656 SASL_MECHANISMS_HANDLE sasl_mechanisms_clone(SASL_MECHANISMS_HANDLE value)
Azure.IoT Build 0:6ae2f7bca550 7657 {
Azure.IoT Build 0:6ae2f7bca550 7658 SASL_MECHANISMS_INSTANCE* sasl_mechanisms_instance = (SASL_MECHANISMS_INSTANCE*)amqpalloc_malloc(sizeof(SASL_MECHANISMS_INSTANCE));
Azure.IoT Build 0:6ae2f7bca550 7659 if (sasl_mechanisms_instance != NULL)
Azure.IoT Build 0:6ae2f7bca550 7660 {
Azure.IoT Build 0:6ae2f7bca550 7661 sasl_mechanisms_instance->composite_value = amqpvalue_clone(((SASL_MECHANISMS_INSTANCE*)value)->composite_value);
Azure.IoT Build 0:6ae2f7bca550 7662 if (sasl_mechanisms_instance->composite_value == NULL)
Azure.IoT Build 0:6ae2f7bca550 7663 {
Azure.IoT Build 0:6ae2f7bca550 7664 amqpalloc_free(sasl_mechanisms_instance);
Azure.IoT Build 0:6ae2f7bca550 7665 sasl_mechanisms_instance = NULL;
Azure.IoT Build 0:6ae2f7bca550 7666 }
Azure.IoT Build 0:6ae2f7bca550 7667 }
Azure.IoT Build 0:6ae2f7bca550 7668
Azure.IoT Build 0:6ae2f7bca550 7669 return sasl_mechanisms_instance;
Azure.IoT Build 0:6ae2f7bca550 7670 }
Azure.IoT Build 0:6ae2f7bca550 7671
Azure.IoT Build 0:6ae2f7bca550 7672 void sasl_mechanisms_destroy(SASL_MECHANISMS_HANDLE sasl_mechanisms)
Azure.IoT Build 0:6ae2f7bca550 7673 {
Azure.IoT Build 0:6ae2f7bca550 7674 if (sasl_mechanisms != NULL)
Azure.IoT Build 0:6ae2f7bca550 7675 {
Azure.IoT Build 0:6ae2f7bca550 7676 SASL_MECHANISMS_INSTANCE* sasl_mechanisms_instance = (SASL_MECHANISMS_INSTANCE*)sasl_mechanisms;
Azure.IoT Build 0:6ae2f7bca550 7677 amqpvalue_destroy(sasl_mechanisms_instance->composite_value);
Azure.IoT Build 0:6ae2f7bca550 7678 amqpalloc_free(sasl_mechanisms_instance);
Azure.IoT Build 0:6ae2f7bca550 7679 }
Azure.IoT Build 0:6ae2f7bca550 7680 }
Azure.IoT Build 0:6ae2f7bca550 7681
Azure.IoT Build 0:6ae2f7bca550 7682 AMQP_VALUE amqpvalue_create_sasl_mechanisms(SASL_MECHANISMS_HANDLE sasl_mechanisms)
Azure.IoT Build 0:6ae2f7bca550 7683 {
Azure.IoT Build 0:6ae2f7bca550 7684 AMQP_VALUE result;
Azure.IoT Build 0:6ae2f7bca550 7685
Azure.IoT Build 0:6ae2f7bca550 7686 if (sasl_mechanisms == NULL)
Azure.IoT Build 0:6ae2f7bca550 7687 {
Azure.IoT Build 0:6ae2f7bca550 7688 result = NULL;
Azure.IoT Build 0:6ae2f7bca550 7689 }
Azure.IoT Build 0:6ae2f7bca550 7690 else
Azure.IoT Build 0:6ae2f7bca550 7691 {
Azure.IoT Build 0:6ae2f7bca550 7692 SASL_MECHANISMS_INSTANCE* sasl_mechanisms_instance = (SASL_MECHANISMS_INSTANCE*)sasl_mechanisms;
Azure.IoT Build 0:6ae2f7bca550 7693 result = amqpvalue_clone(sasl_mechanisms_instance->composite_value);
Azure.IoT Build 0:6ae2f7bca550 7694 }
Azure.IoT Build 0:6ae2f7bca550 7695
Azure.IoT Build 0:6ae2f7bca550 7696 return result;
Azure.IoT Build 0:6ae2f7bca550 7697 }
Azure.IoT Build 0:6ae2f7bca550 7698
Azure.IoT Build 0:6ae2f7bca550 7699 bool is_sasl_mechanisms_type_by_descriptor(AMQP_VALUE descriptor)
Azure.IoT Build 0:6ae2f7bca550 7700 {
Azure.IoT Build 0:6ae2f7bca550 7701 bool result;
Azure.IoT Build 0:6ae2f7bca550 7702
Azure.IoT Build 0:6ae2f7bca550 7703 uint64_t descriptor_ulong;
Azure.IoT Build 0:6ae2f7bca550 7704 if ((amqpvalue_get_ulong(descriptor, &descriptor_ulong) == 0) &&
Azure.IoT Build 0:6ae2f7bca550 7705 (descriptor_ulong == 64))
Azure.IoT Build 0:6ae2f7bca550 7706 {
Azure.IoT Build 0:6ae2f7bca550 7707 result = true;
Azure.IoT Build 0:6ae2f7bca550 7708 }
Azure.IoT Build 0:6ae2f7bca550 7709 else
Azure.IoT Build 0:6ae2f7bca550 7710 {
Azure.IoT Build 0:6ae2f7bca550 7711 result = false;
Azure.IoT Build 0:6ae2f7bca550 7712 }
Azure.IoT Build 0:6ae2f7bca550 7713
Azure.IoT Build 0:6ae2f7bca550 7714 return result;
Azure.IoT Build 0:6ae2f7bca550 7715 }
Azure.IoT Build 0:6ae2f7bca550 7716
Azure.IoT Build 0:6ae2f7bca550 7717
Azure.IoT Build 0:6ae2f7bca550 7718 int amqpvalue_get_sasl_mechanisms(AMQP_VALUE value, SASL_MECHANISMS_HANDLE* sasl_mechanisms_handle)
Azure.IoT Build 0:6ae2f7bca550 7719 {
Azure.IoT Build 0:6ae2f7bca550 7720 int result;
Azure.IoT Build 0:6ae2f7bca550 7721 SASL_MECHANISMS_INSTANCE* sasl_mechanisms_instance = (SASL_MECHANISMS_INSTANCE*)sasl_mechanisms_create_internal();
Azure.IoT Build 0:6ae2f7bca550 7722 *sasl_mechanisms_handle = sasl_mechanisms_instance;
Azure.IoT Build 0:6ae2f7bca550 7723 if (*sasl_mechanisms_handle == NULL)
Azure.IoT Build 0:6ae2f7bca550 7724 {
Azure.IoT Build 0:6ae2f7bca550 7725 result = __LINE__;
Azure.IoT Build 0:6ae2f7bca550 7726 }
Azure.IoT Build 0:6ae2f7bca550 7727 else
Azure.IoT Build 0:6ae2f7bca550 7728 {
Azure.IoT Build 0:6ae2f7bca550 7729 AMQP_VALUE list_value = amqpvalue_get_inplace_described_value(value);
Azure.IoT Build 0:6ae2f7bca550 7730 if (list_value == NULL)
Azure.IoT Build 0:6ae2f7bca550 7731 {
Azure.IoT Build 0:6ae2f7bca550 7732 sasl_mechanisms_destroy(*sasl_mechanisms_handle);
Azure.IoT Build 0:6ae2f7bca550 7733 result = __LINE__;
Azure.IoT Build 0:6ae2f7bca550 7734 }
Azure.IoT Build 0:6ae2f7bca550 7735 else
Azure.IoT Build 0:6ae2f7bca550 7736 {
Azure.IoT Build 0:6ae2f7bca550 7737 do
Azure.IoT Build 0:6ae2f7bca550 7738 {
Azure.IoT Build 0:6ae2f7bca550 7739 AMQP_VALUE item_value;
Azure.IoT Build 0:6ae2f7bca550 7740 /* sasl-server-mechanisms */
Azure.IoT Build 0:6ae2f7bca550 7741 item_value = amqpvalue_get_list_item(list_value, 0);
Azure.IoT Build 0:6ae2f7bca550 7742 if (item_value == NULL)
Azure.IoT Build 0:6ae2f7bca550 7743 {
Azure.IoT Build 0:6ae2f7bca550 7744 {
Azure.IoT Build 0:6ae2f7bca550 7745 sasl_mechanisms_destroy(*sasl_mechanisms_handle);
Azure.IoT Build 0:6ae2f7bca550 7746 result = __LINE__;
Azure.IoT Build 0:6ae2f7bca550 7747 break;
Azure.IoT Build 0:6ae2f7bca550 7748 }
Azure.IoT Build 0:6ae2f7bca550 7749 }
Azure.IoT Build 0:6ae2f7bca550 7750 else
Azure.IoT Build 0:6ae2f7bca550 7751 {
Azure.IoT Build 0:6ae2f7bca550 7752 const char* sasl_server_mechanisms;
Azure.IoT Build 0:6ae2f7bca550 7753 AMQP_VALUE sasl_server_mechanisms_array;
Azure.IoT Build 0:6ae2f7bca550 7754 if ((amqpvalue_get_array(item_value, &sasl_server_mechanisms_array) != 0) &&
Azure.IoT Build 0:6ae2f7bca550 7755 (amqpvalue_get_symbol(item_value, &sasl_server_mechanisms) != 0))
Azure.IoT Build 0:6ae2f7bca550 7756 {
Azure.IoT Build 0:6ae2f7bca550 7757 sasl_mechanisms_destroy(*sasl_mechanisms_handle);
Azure.IoT Build 0:6ae2f7bca550 7758 result = __LINE__;
Azure.IoT Build 0:6ae2f7bca550 7759 break;
Azure.IoT Build 0:6ae2f7bca550 7760 }
Azure.IoT Build 0:6ae2f7bca550 7761
Azure.IoT Build 0:6ae2f7bca550 7762 amqpvalue_destroy(item_value);
Azure.IoT Build 0:6ae2f7bca550 7763 }
Azure.IoT Build 0:6ae2f7bca550 7764
Azure.IoT Build 0:6ae2f7bca550 7765 sasl_mechanisms_instance->composite_value = amqpvalue_clone(value);
Azure.IoT Build 0:6ae2f7bca550 7766
Azure.IoT Build 0:6ae2f7bca550 7767 result = 0;
Azure.IoT Build 0:6ae2f7bca550 7768 } while (0);
Azure.IoT Build 0:6ae2f7bca550 7769 }
Azure.IoT Build 0:6ae2f7bca550 7770 }
Azure.IoT Build 0:6ae2f7bca550 7771
Azure.IoT Build 0:6ae2f7bca550 7772 return result;
Azure.IoT Build 0:6ae2f7bca550 7773 }
Azure.IoT Build 0:6ae2f7bca550 7774
Azure.IoT Build 0:6ae2f7bca550 7775 int sasl_mechanisms_get_sasl_server_mechanisms(SASL_MECHANISMS_HANDLE sasl_mechanisms, AMQP_VALUE* sasl_server_mechanisms_value)
Azure.IoT Build 0:6ae2f7bca550 7776 {
Azure.IoT Build 0:6ae2f7bca550 7777 int result;
Azure.IoT Build 0:6ae2f7bca550 7778
Azure.IoT Build 0:6ae2f7bca550 7779 if (sasl_mechanisms == NULL)
Azure.IoT Build 0:6ae2f7bca550 7780 {
Azure.IoT Build 0:6ae2f7bca550 7781 result = __LINE__;
Azure.IoT Build 0:6ae2f7bca550 7782 }
Azure.IoT Build 0:6ae2f7bca550 7783 else
Azure.IoT Build 0:6ae2f7bca550 7784 {
Azure.IoT Build 0:6ae2f7bca550 7785 SASL_MECHANISMS_INSTANCE* sasl_mechanisms_instance = (SASL_MECHANISMS_INSTANCE*)sasl_mechanisms;
Azure.IoT Build 0:6ae2f7bca550 7786 AMQP_VALUE item_value = amqpvalue_get_composite_item_in_place(sasl_mechanisms_instance->composite_value, 0);
Azure.IoT Build 0:6ae2f7bca550 7787 if (item_value == NULL)
Azure.IoT Build 0:6ae2f7bca550 7788 {
Azure.IoT Build 0:6ae2f7bca550 7789 result = __LINE__;
Azure.IoT Build 0:6ae2f7bca550 7790 }
Azure.IoT Build 0:6ae2f7bca550 7791 else
Azure.IoT Build 0:6ae2f7bca550 7792 {
Azure.IoT Build 0:6ae2f7bca550 7793 if (amqpvalue_get_array(item_value, sasl_server_mechanisms_value) != 0)
Azure.IoT Build 0:6ae2f7bca550 7794 {
AzureIoTClient 16:22a72cf8e416 7795 result = __LINE__;
Azure.IoT Build 0:6ae2f7bca550 7796 }
Azure.IoT Build 0:6ae2f7bca550 7797 else
Azure.IoT Build 0:6ae2f7bca550 7798 {
Azure.IoT Build 0:6ae2f7bca550 7799 result = 0;
Azure.IoT Build 0:6ae2f7bca550 7800 }
Azure.IoT Build 0:6ae2f7bca550 7801 }
Azure.IoT Build 0:6ae2f7bca550 7802 }
Azure.IoT Build 0:6ae2f7bca550 7803
Azure.IoT Build 0:6ae2f7bca550 7804 return result;
Azure.IoT Build 0:6ae2f7bca550 7805 }
Azure.IoT Build 0:6ae2f7bca550 7806
Azure.IoT Build 0:6ae2f7bca550 7807 int sasl_mechanisms_set_sasl_server_mechanisms(SASL_MECHANISMS_HANDLE sasl_mechanisms, AMQP_VALUE sasl_server_mechanisms_value)
Azure.IoT Build 0:6ae2f7bca550 7808 {
Azure.IoT Build 0:6ae2f7bca550 7809 int result;
Azure.IoT Build 0:6ae2f7bca550 7810
Azure.IoT Build 0:6ae2f7bca550 7811 if (sasl_mechanisms == NULL)
Azure.IoT Build 0:6ae2f7bca550 7812 {
Azure.IoT Build 0:6ae2f7bca550 7813 result = __LINE__;
Azure.IoT Build 0:6ae2f7bca550 7814 }
Azure.IoT Build 0:6ae2f7bca550 7815 else
Azure.IoT Build 0:6ae2f7bca550 7816 {
Azure.IoT Build 0:6ae2f7bca550 7817 SASL_MECHANISMS_INSTANCE* sasl_mechanisms_instance = (SASL_MECHANISMS_INSTANCE*)sasl_mechanisms;
Azure.IoT Build 0:6ae2f7bca550 7818 AMQP_VALUE sasl_server_mechanisms_amqp_value = amqpvalue_clone(sasl_server_mechanisms_value);
Azure.IoT Build 0:6ae2f7bca550 7819 if (sasl_server_mechanisms_amqp_value == NULL)
Azure.IoT Build 0:6ae2f7bca550 7820 {
Azure.IoT Build 0:6ae2f7bca550 7821 result = __LINE__;
Azure.IoT Build 0:6ae2f7bca550 7822 }
Azure.IoT Build 0:6ae2f7bca550 7823 else
Azure.IoT Build 0:6ae2f7bca550 7824 {
Azure.IoT Build 0:6ae2f7bca550 7825 if (amqpvalue_set_composite_item(sasl_mechanisms_instance->composite_value, 0, sasl_server_mechanisms_amqp_value) != 0)
Azure.IoT Build 0:6ae2f7bca550 7826 {
Azure.IoT Build 0:6ae2f7bca550 7827 result = __LINE__;
Azure.IoT Build 0:6ae2f7bca550 7828 }
Azure.IoT Build 0:6ae2f7bca550 7829 else
Azure.IoT Build 0:6ae2f7bca550 7830 {
Azure.IoT Build 0:6ae2f7bca550 7831 result = 0;
Azure.IoT Build 0:6ae2f7bca550 7832 }
Azure.IoT Build 0:6ae2f7bca550 7833
Azure.IoT Build 0:6ae2f7bca550 7834 amqpvalue_destroy(sasl_server_mechanisms_amqp_value);
Azure.IoT Build 0:6ae2f7bca550 7835 }
Azure.IoT Build 0:6ae2f7bca550 7836 }
Azure.IoT Build 0:6ae2f7bca550 7837
Azure.IoT Build 0:6ae2f7bca550 7838 return result;
Azure.IoT Build 0:6ae2f7bca550 7839 }
Azure.IoT Build 0:6ae2f7bca550 7840
Azure.IoT Build 0:6ae2f7bca550 7841
Azure.IoT Build 0:6ae2f7bca550 7842 /* sasl-init */
Azure.IoT Build 0:6ae2f7bca550 7843
Azure.IoT Build 0:6ae2f7bca550 7844 typedef struct SASL_INIT_INSTANCE_TAG
Azure.IoT Build 0:6ae2f7bca550 7845 {
Azure.IoT Build 0:6ae2f7bca550 7846 AMQP_VALUE composite_value;
Azure.IoT Build 0:6ae2f7bca550 7847 } SASL_INIT_INSTANCE;
Azure.IoT Build 0:6ae2f7bca550 7848
Azure.IoT Build 0:6ae2f7bca550 7849 static SASL_INIT_HANDLE sasl_init_create_internal(void)
Azure.IoT Build 0:6ae2f7bca550 7850 {
Azure.IoT Build 0:6ae2f7bca550 7851 SASL_INIT_INSTANCE* sasl_init_instance = (SASL_INIT_INSTANCE*)amqpalloc_malloc(sizeof(SASL_INIT_INSTANCE));
Azure.IoT Build 0:6ae2f7bca550 7852 if (sasl_init_instance != NULL)
Azure.IoT Build 0:6ae2f7bca550 7853 {
Azure.IoT Build 0:6ae2f7bca550 7854 sasl_init_instance->composite_value = NULL;
Azure.IoT Build 0:6ae2f7bca550 7855 }
Azure.IoT Build 0:6ae2f7bca550 7856
Azure.IoT Build 0:6ae2f7bca550 7857 return sasl_init_instance;
Azure.IoT Build 0:6ae2f7bca550 7858 }
Azure.IoT Build 0:6ae2f7bca550 7859
Azure.IoT Build 0:6ae2f7bca550 7860 SASL_INIT_HANDLE sasl_init_create(const char* mechanism_value)
Azure.IoT Build 0:6ae2f7bca550 7861 {
Azure.IoT Build 0:6ae2f7bca550 7862 SASL_INIT_INSTANCE* sasl_init_instance = (SASL_INIT_INSTANCE*)amqpalloc_malloc(sizeof(SASL_INIT_INSTANCE));
Azure.IoT Build 0:6ae2f7bca550 7863 if (sasl_init_instance != NULL)
Azure.IoT Build 0:6ae2f7bca550 7864 {
Azure.IoT Build 0:6ae2f7bca550 7865 sasl_init_instance->composite_value = amqpvalue_create_composite_with_ulong_descriptor(65);
Azure.IoT Build 0:6ae2f7bca550 7866 if (sasl_init_instance->composite_value == NULL)
Azure.IoT Build 0:6ae2f7bca550 7867 {
Azure.IoT Build 0:6ae2f7bca550 7868 amqpalloc_free(sasl_init_instance);
Azure.IoT Build 0:6ae2f7bca550 7869 sasl_init_instance = NULL;
Azure.IoT Build 0:6ae2f7bca550 7870 }
Azure.IoT Build 0:6ae2f7bca550 7871 else
Azure.IoT Build 0:6ae2f7bca550 7872 {
Azure.IoT Build 0:6ae2f7bca550 7873 AMQP_VALUE mechanism_amqp_value;
Azure.IoT Build 0:6ae2f7bca550 7874 int result = 0;
Azure.IoT Build 0:6ae2f7bca550 7875
Azure.IoT Build 0:6ae2f7bca550 7876 mechanism_amqp_value = amqpvalue_create_symbol(mechanism_value);
Azure.IoT Build 0:6ae2f7bca550 7877 if ((result == 0) && (amqpvalue_set_composite_item(sasl_init_instance->composite_value, 0, mechanism_amqp_value) != 0))
Azure.IoT Build 0:6ae2f7bca550 7878 {
Azure.IoT Build 0:6ae2f7bca550 7879 result = __LINE__;
Azure.IoT Build 0:6ae2f7bca550 7880 }
Azure.IoT Build 0:6ae2f7bca550 7881
Azure.IoT Build 0:6ae2f7bca550 7882 amqpvalue_destroy(mechanism_amqp_value);
Azure.IoT Build 0:6ae2f7bca550 7883 }
Azure.IoT Build 0:6ae2f7bca550 7884 }
Azure.IoT Build 0:6ae2f7bca550 7885
Azure.IoT Build 0:6ae2f7bca550 7886 return sasl_init_instance;
Azure.IoT Build 0:6ae2f7bca550 7887 }
Azure.IoT Build 0:6ae2f7bca550 7888
Azure.IoT Build 0:6ae2f7bca550 7889 SASL_INIT_HANDLE sasl_init_clone(SASL_INIT_HANDLE value)
Azure.IoT Build 0:6ae2f7bca550 7890 {
Azure.IoT Build 0:6ae2f7bca550 7891 SASL_INIT_INSTANCE* sasl_init_instance = (SASL_INIT_INSTANCE*)amqpalloc_malloc(sizeof(SASL_INIT_INSTANCE));
Azure.IoT Build 0:6ae2f7bca550 7892 if (sasl_init_instance != NULL)
Azure.IoT Build 0:6ae2f7bca550 7893 {
Azure.IoT Build 0:6ae2f7bca550 7894 sasl_init_instance->composite_value = amqpvalue_clone(((SASL_INIT_INSTANCE*)value)->composite_value);
Azure.IoT Build 0:6ae2f7bca550 7895 if (sasl_init_instance->composite_value == NULL)
Azure.IoT Build 0:6ae2f7bca550 7896 {
Azure.IoT Build 0:6ae2f7bca550 7897 amqpalloc_free(sasl_init_instance);
Azure.IoT Build 0:6ae2f7bca550 7898 sasl_init_instance = NULL;
Azure.IoT Build 0:6ae2f7bca550 7899 }
Azure.IoT Build 0:6ae2f7bca550 7900 }
Azure.IoT Build 0:6ae2f7bca550 7901
Azure.IoT Build 0:6ae2f7bca550 7902 return sasl_init_instance;
Azure.IoT Build 0:6ae2f7bca550 7903 }
Azure.IoT Build 0:6ae2f7bca550 7904
Azure.IoT Build 0:6ae2f7bca550 7905 void sasl_init_destroy(SASL_INIT_HANDLE sasl_init)
Azure.IoT Build 0:6ae2f7bca550 7906 {
Azure.IoT Build 0:6ae2f7bca550 7907 if (sasl_init != NULL)
Azure.IoT Build 0:6ae2f7bca550 7908 {
Azure.IoT Build 0:6ae2f7bca550 7909 SASL_INIT_INSTANCE* sasl_init_instance = (SASL_INIT_INSTANCE*)sasl_init;
Azure.IoT Build 0:6ae2f7bca550 7910 amqpvalue_destroy(sasl_init_instance->composite_value);
Azure.IoT Build 0:6ae2f7bca550 7911 amqpalloc_free(sasl_init_instance);
Azure.IoT Build 0:6ae2f7bca550 7912 }
Azure.IoT Build 0:6ae2f7bca550 7913 }
Azure.IoT Build 0:6ae2f7bca550 7914
Azure.IoT Build 0:6ae2f7bca550 7915 AMQP_VALUE amqpvalue_create_sasl_init(SASL_INIT_HANDLE sasl_init)
Azure.IoT Build 0:6ae2f7bca550 7916 {
Azure.IoT Build 0:6ae2f7bca550 7917 AMQP_VALUE result;
Azure.IoT Build 0:6ae2f7bca550 7918
Azure.IoT Build 0:6ae2f7bca550 7919 if (sasl_init == NULL)
Azure.IoT Build 0:6ae2f7bca550 7920 {
Azure.IoT Build 0:6ae2f7bca550 7921 result = NULL;
Azure.IoT Build 0:6ae2f7bca550 7922 }
Azure.IoT Build 0:6ae2f7bca550 7923 else
Azure.IoT Build 0:6ae2f7bca550 7924 {
Azure.IoT Build 0:6ae2f7bca550 7925 SASL_INIT_INSTANCE* sasl_init_instance = (SASL_INIT_INSTANCE*)sasl_init;
Azure.IoT Build 0:6ae2f7bca550 7926 result = amqpvalue_clone(sasl_init_instance->composite_value);
Azure.IoT Build 0:6ae2f7bca550 7927 }
Azure.IoT Build 0:6ae2f7bca550 7928
Azure.IoT Build 0:6ae2f7bca550 7929 return result;
Azure.IoT Build 0:6ae2f7bca550 7930 }
Azure.IoT Build 0:6ae2f7bca550 7931
Azure.IoT Build 0:6ae2f7bca550 7932 bool is_sasl_init_type_by_descriptor(AMQP_VALUE descriptor)
Azure.IoT Build 0:6ae2f7bca550 7933 {
Azure.IoT Build 0:6ae2f7bca550 7934 bool result;
Azure.IoT Build 0:6ae2f7bca550 7935
Azure.IoT Build 0:6ae2f7bca550 7936 uint64_t descriptor_ulong;
Azure.IoT Build 0:6ae2f7bca550 7937 if ((amqpvalue_get_ulong(descriptor, &descriptor_ulong) == 0) &&
Azure.IoT Build 0:6ae2f7bca550 7938 (descriptor_ulong == 65))
Azure.IoT Build 0:6ae2f7bca550 7939 {
Azure.IoT Build 0:6ae2f7bca550 7940 result = true;
Azure.IoT Build 0:6ae2f7bca550 7941 }
Azure.IoT Build 0:6ae2f7bca550 7942 else
Azure.IoT Build 0:6ae2f7bca550 7943 {
Azure.IoT Build 0:6ae2f7bca550 7944 result = false;
Azure.IoT Build 0:6ae2f7bca550 7945 }
Azure.IoT Build 0:6ae2f7bca550 7946
Azure.IoT Build 0:6ae2f7bca550 7947 return result;
Azure.IoT Build 0:6ae2f7bca550 7948 }
Azure.IoT Build 0:6ae2f7bca550 7949
Azure.IoT Build 0:6ae2f7bca550 7950
Azure.IoT Build 0:6ae2f7bca550 7951 int amqpvalue_get_sasl_init(AMQP_VALUE value, SASL_INIT_HANDLE* sasl_init_handle)
Azure.IoT Build 0:6ae2f7bca550 7952 {
Azure.IoT Build 0:6ae2f7bca550 7953 int result;
Azure.IoT Build 0:6ae2f7bca550 7954 SASL_INIT_INSTANCE* sasl_init_instance = (SASL_INIT_INSTANCE*)sasl_init_create_internal();
Azure.IoT Build 0:6ae2f7bca550 7955 *sasl_init_handle = sasl_init_instance;
Azure.IoT Build 0:6ae2f7bca550 7956 if (*sasl_init_handle == NULL)
Azure.IoT Build 0:6ae2f7bca550 7957 {
Azure.IoT Build 0:6ae2f7bca550 7958 result = __LINE__;
Azure.IoT Build 0:6ae2f7bca550 7959 }
Azure.IoT Build 0:6ae2f7bca550 7960 else
Azure.IoT Build 0:6ae2f7bca550 7961 {
Azure.IoT Build 0:6ae2f7bca550 7962 AMQP_VALUE list_value = amqpvalue_get_inplace_described_value(value);
Azure.IoT Build 0:6ae2f7bca550 7963 if (list_value == NULL)
Azure.IoT Build 0:6ae2f7bca550 7964 {
Azure.IoT Build 0:6ae2f7bca550 7965 sasl_init_destroy(*sasl_init_handle);
Azure.IoT Build 0:6ae2f7bca550 7966 result = __LINE__;
Azure.IoT Build 0:6ae2f7bca550 7967 }
Azure.IoT Build 0:6ae2f7bca550 7968 else
Azure.IoT Build 0:6ae2f7bca550 7969 {
Azure.IoT Build 0:6ae2f7bca550 7970 do
Azure.IoT Build 0:6ae2f7bca550 7971 {
Azure.IoT Build 0:6ae2f7bca550 7972 AMQP_VALUE item_value;
Azure.IoT Build 0:6ae2f7bca550 7973 /* mechanism */
Azure.IoT Build 0:6ae2f7bca550 7974 item_value = amqpvalue_get_list_item(list_value, 0);
Azure.IoT Build 0:6ae2f7bca550 7975 if (item_value == NULL)
Azure.IoT Build 0:6ae2f7bca550 7976 {
Azure.IoT Build 0:6ae2f7bca550 7977 {
Azure.IoT Build 0:6ae2f7bca550 7978 sasl_init_destroy(*sasl_init_handle);
Azure.IoT Build 0:6ae2f7bca550 7979 result = __LINE__;
Azure.IoT Build 0:6ae2f7bca550 7980 break;
Azure.IoT Build 0:6ae2f7bca550 7981 }
Azure.IoT Build 0:6ae2f7bca550 7982 }
Azure.IoT Build 0:6ae2f7bca550 7983 else
Azure.IoT Build 0:6ae2f7bca550 7984 {
Azure.IoT Build 0:6ae2f7bca550 7985 const char* mechanism;
Azure.IoT Build 0:6ae2f7bca550 7986 if (amqpvalue_get_symbol(item_value, &mechanism) != 0)
Azure.IoT Build 0:6ae2f7bca550 7987 {
Azure.IoT Build 0:6ae2f7bca550 7988 sasl_init_destroy(*sasl_init_handle);
Azure.IoT Build 0:6ae2f7bca550 7989 result = __LINE__;
Azure.IoT Build 0:6ae2f7bca550 7990 break;
Azure.IoT Build 0:6ae2f7bca550 7991 }
Azure.IoT Build 0:6ae2f7bca550 7992
Azure.IoT Build 0:6ae2f7bca550 7993 amqpvalue_destroy(item_value);
Azure.IoT Build 0:6ae2f7bca550 7994 }
Azure.IoT Build 0:6ae2f7bca550 7995 /* initial-response */
Azure.IoT Build 0:6ae2f7bca550 7996 item_value = amqpvalue_get_list_item(list_value, 1);
Azure.IoT Build 0:6ae2f7bca550 7997 if (item_value == NULL)
Azure.IoT Build 0:6ae2f7bca550 7998 {
Azure.IoT Build 0:6ae2f7bca550 7999 /* do nothing */
Azure.IoT Build 0:6ae2f7bca550 8000 }
Azure.IoT Build 0:6ae2f7bca550 8001 else
Azure.IoT Build 0:6ae2f7bca550 8002 {
Azure.IoT Build 0:6ae2f7bca550 8003 amqp_binary initial_response;
Azure.IoT Build 0:6ae2f7bca550 8004 if (amqpvalue_get_binary(item_value, &initial_response) != 0)
Azure.IoT Build 0:6ae2f7bca550 8005 {
Azure.IoT Build 0:6ae2f7bca550 8006 if (amqpvalue_get_type(item_value) != AMQP_TYPE_NULL)
Azure.IoT Build 0:6ae2f7bca550 8007 {
Azure.IoT Build 0:6ae2f7bca550 8008 sasl_init_destroy(*sasl_init_handle);
Azure.IoT Build 0:6ae2f7bca550 8009 result = __LINE__;
Azure.IoT Build 0:6ae2f7bca550 8010 break;
Azure.IoT Build 0:6ae2f7bca550 8011 }
Azure.IoT Build 0:6ae2f7bca550 8012 }
Azure.IoT Build 0:6ae2f7bca550 8013
Azure.IoT Build 0:6ae2f7bca550 8014 amqpvalue_destroy(item_value);
Azure.IoT Build 0:6ae2f7bca550 8015 }
Azure.IoT Build 0:6ae2f7bca550 8016 /* hostname */
Azure.IoT Build 0:6ae2f7bca550 8017 item_value = amqpvalue_get_list_item(list_value, 2);
Azure.IoT Build 0:6ae2f7bca550 8018 if (item_value == NULL)
Azure.IoT Build 0:6ae2f7bca550 8019 {
Azure.IoT Build 0:6ae2f7bca550 8020 /* do nothing */
Azure.IoT Build 0:6ae2f7bca550 8021 }
Azure.IoT Build 0:6ae2f7bca550 8022 else
Azure.IoT Build 0:6ae2f7bca550 8023 {
Azure.IoT Build 0:6ae2f7bca550 8024 const char* hostname;
Azure.IoT Build 0:6ae2f7bca550 8025 if (amqpvalue_get_string(item_value, &hostname) != 0)
Azure.IoT Build 0:6ae2f7bca550 8026 {
Azure.IoT Build 0:6ae2f7bca550 8027 if (amqpvalue_get_type(item_value) != AMQP_TYPE_NULL)
Azure.IoT Build 0:6ae2f7bca550 8028 {
Azure.IoT Build 0:6ae2f7bca550 8029 sasl_init_destroy(*sasl_init_handle);
Azure.IoT Build 0:6ae2f7bca550 8030 result = __LINE__;
Azure.IoT Build 0:6ae2f7bca550 8031 break;
Azure.IoT Build 0:6ae2f7bca550 8032 }
Azure.IoT Build 0:6ae2f7bca550 8033 }
Azure.IoT Build 0:6ae2f7bca550 8034
Azure.IoT Build 0:6ae2f7bca550 8035 amqpvalue_destroy(item_value);
Azure.IoT Build 0:6ae2f7bca550 8036 }
Azure.IoT Build 0:6ae2f7bca550 8037
Azure.IoT Build 0:6ae2f7bca550 8038 sasl_init_instance->composite_value = amqpvalue_clone(value);
Azure.IoT Build 0:6ae2f7bca550 8039
Azure.IoT Build 0:6ae2f7bca550 8040 result = 0;
Azure.IoT Build 0:6ae2f7bca550 8041 } while (0);
Azure.IoT Build 0:6ae2f7bca550 8042 }
Azure.IoT Build 0:6ae2f7bca550 8043 }
Azure.IoT Build 0:6ae2f7bca550 8044
Azure.IoT Build 0:6ae2f7bca550 8045 return result;
Azure.IoT Build 0:6ae2f7bca550 8046 }
Azure.IoT Build 0:6ae2f7bca550 8047
Azure.IoT Build 0:6ae2f7bca550 8048 int sasl_init_get_mechanism(SASL_INIT_HANDLE sasl_init, const char** mechanism_value)
Azure.IoT Build 0:6ae2f7bca550 8049 {
Azure.IoT Build 0:6ae2f7bca550 8050 int result;
Azure.IoT Build 0:6ae2f7bca550 8051
Azure.IoT Build 0:6ae2f7bca550 8052 if (sasl_init == NULL)
Azure.IoT Build 0:6ae2f7bca550 8053 {
Azure.IoT Build 0:6ae2f7bca550 8054 result = __LINE__;
Azure.IoT Build 0:6ae2f7bca550 8055 }
Azure.IoT Build 0:6ae2f7bca550 8056 else
Azure.IoT Build 0:6ae2f7bca550 8057 {
Azure.IoT Build 0:6ae2f7bca550 8058 SASL_INIT_INSTANCE* sasl_init_instance = (SASL_INIT_INSTANCE*)sasl_init;
Azure.IoT Build 0:6ae2f7bca550 8059 AMQP_VALUE item_value = amqpvalue_get_composite_item_in_place(sasl_init_instance->composite_value, 0);
Azure.IoT Build 0:6ae2f7bca550 8060 if (item_value == NULL)
Azure.IoT Build 0:6ae2f7bca550 8061 {
Azure.IoT Build 0:6ae2f7bca550 8062 result = __LINE__;
Azure.IoT Build 0:6ae2f7bca550 8063 }
Azure.IoT Build 0:6ae2f7bca550 8064 else
Azure.IoT Build 0:6ae2f7bca550 8065 {
Azure.IoT Build 0:6ae2f7bca550 8066 if (amqpvalue_get_symbol(item_value, mechanism_value) != 0)
Azure.IoT Build 0:6ae2f7bca550 8067 {
AzureIoTClient 16:22a72cf8e416 8068 result = __LINE__;
Azure.IoT Build 0:6ae2f7bca550 8069 }
Azure.IoT Build 0:6ae2f7bca550 8070 else
Azure.IoT Build 0:6ae2f7bca550 8071 {
Azure.IoT Build 0:6ae2f7bca550 8072 result = 0;
Azure.IoT Build 0:6ae2f7bca550 8073 }
Azure.IoT Build 0:6ae2f7bca550 8074 }
Azure.IoT Build 0:6ae2f7bca550 8075 }
Azure.IoT Build 0:6ae2f7bca550 8076
Azure.IoT Build 0:6ae2f7bca550 8077 return result;
Azure.IoT Build 0:6ae2f7bca550 8078 }
Azure.IoT Build 0:6ae2f7bca550 8079
Azure.IoT Build 0:6ae2f7bca550 8080 int sasl_init_set_mechanism(SASL_INIT_HANDLE sasl_init, const char* mechanism_value)
Azure.IoT Build 0:6ae2f7bca550 8081 {
Azure.IoT Build 0:6ae2f7bca550 8082 int result;
Azure.IoT Build 0:6ae2f7bca550 8083
Azure.IoT Build 0:6ae2f7bca550 8084 if (sasl_init == NULL)
Azure.IoT Build 0:6ae2f7bca550 8085 {
Azure.IoT Build 0:6ae2f7bca550 8086 result = __LINE__;
Azure.IoT Build 0:6ae2f7bca550 8087 }
Azure.IoT Build 0:6ae2f7bca550 8088 else
Azure.IoT Build 0:6ae2f7bca550 8089 {
Azure.IoT Build 0:6ae2f7bca550 8090 SASL_INIT_INSTANCE* sasl_init_instance = (SASL_INIT_INSTANCE*)sasl_init;
Azure.IoT Build 0:6ae2f7bca550 8091 AMQP_VALUE mechanism_amqp_value = amqpvalue_create_symbol(mechanism_value);
Azure.IoT Build 0:6ae2f7bca550 8092 if (mechanism_amqp_value == NULL)
Azure.IoT Build 0:6ae2f7bca550 8093 {
Azure.IoT Build 0:6ae2f7bca550 8094 result = __LINE__;
Azure.IoT Build 0:6ae2f7bca550 8095 }
Azure.IoT Build 0:6ae2f7bca550 8096 else
Azure.IoT Build 0:6ae2f7bca550 8097 {
Azure.IoT Build 0:6ae2f7bca550 8098 if (amqpvalue_set_composite_item(sasl_init_instance->composite_value, 0, mechanism_amqp_value) != 0)
Azure.IoT Build 0:6ae2f7bca550 8099 {
Azure.IoT Build 0:6ae2f7bca550 8100 result = __LINE__;
Azure.IoT Build 0:6ae2f7bca550 8101 }
Azure.IoT Build 0:6ae2f7bca550 8102 else
Azure.IoT Build 0:6ae2f7bca550 8103 {
Azure.IoT Build 0:6ae2f7bca550 8104 result = 0;
Azure.IoT Build 0:6ae2f7bca550 8105 }
Azure.IoT Build 0:6ae2f7bca550 8106
Azure.IoT Build 0:6ae2f7bca550 8107 amqpvalue_destroy(mechanism_amqp_value);
Azure.IoT Build 0:6ae2f7bca550 8108 }
Azure.IoT Build 0:6ae2f7bca550 8109 }
Azure.IoT Build 0:6ae2f7bca550 8110
Azure.IoT Build 0:6ae2f7bca550 8111 return result;
Azure.IoT Build 0:6ae2f7bca550 8112 }
Azure.IoT Build 0:6ae2f7bca550 8113
Azure.IoT Build 0:6ae2f7bca550 8114 int sasl_init_get_initial_response(SASL_INIT_HANDLE sasl_init, amqp_binary* initial_response_value)
Azure.IoT Build 0:6ae2f7bca550 8115 {
Azure.IoT Build 0:6ae2f7bca550 8116 int result;
Azure.IoT Build 0:6ae2f7bca550 8117
Azure.IoT Build 0:6ae2f7bca550 8118 if (sasl_init == NULL)
Azure.IoT Build 0:6ae2f7bca550 8119 {
Azure.IoT Build 0:6ae2f7bca550 8120 result = __LINE__;
Azure.IoT Build 0:6ae2f7bca550 8121 }
Azure.IoT Build 0:6ae2f7bca550 8122 else
Azure.IoT Build 0:6ae2f7bca550 8123 {
Azure.IoT Build 0:6ae2f7bca550 8124 SASL_INIT_INSTANCE* sasl_init_instance = (SASL_INIT_INSTANCE*)sasl_init;
Azure.IoT Build 0:6ae2f7bca550 8125 AMQP_VALUE item_value = amqpvalue_get_composite_item_in_place(sasl_init_instance->composite_value, 1);
Azure.IoT Build 0:6ae2f7bca550 8126 if (item_value == NULL)
Azure.IoT Build 0:6ae2f7bca550 8127 {
Azure.IoT Build 0:6ae2f7bca550 8128 result = __LINE__;
Azure.IoT Build 0:6ae2f7bca550 8129 }
Azure.IoT Build 0:6ae2f7bca550 8130 else
Azure.IoT Build 0:6ae2f7bca550 8131 {
Azure.IoT Build 0:6ae2f7bca550 8132 if (amqpvalue_get_binary(item_value, initial_response_value) != 0)
Azure.IoT Build 0:6ae2f7bca550 8133 {
AzureIoTClient 16:22a72cf8e416 8134 result = __LINE__;
Azure.IoT Build 0:6ae2f7bca550 8135 }
Azure.IoT Build 0:6ae2f7bca550 8136 else
Azure.IoT Build 0:6ae2f7bca550 8137 {
Azure.IoT Build 0:6ae2f7bca550 8138 result = 0;
Azure.IoT Build 0:6ae2f7bca550 8139 }
Azure.IoT Build 0:6ae2f7bca550 8140 }
Azure.IoT Build 0:6ae2f7bca550 8141 }
Azure.IoT Build 0:6ae2f7bca550 8142
Azure.IoT Build 0:6ae2f7bca550 8143 return result;
Azure.IoT Build 0:6ae2f7bca550 8144 }
Azure.IoT Build 0:6ae2f7bca550 8145
Azure.IoT Build 0:6ae2f7bca550 8146 int sasl_init_set_initial_response(SASL_INIT_HANDLE sasl_init, amqp_binary initial_response_value)
Azure.IoT Build 0:6ae2f7bca550 8147 {
Azure.IoT Build 0:6ae2f7bca550 8148 int result;
Azure.IoT Build 0:6ae2f7bca550 8149
Azure.IoT Build 0:6ae2f7bca550 8150 if (sasl_init == NULL)
Azure.IoT Build 0:6ae2f7bca550 8151 {
Azure.IoT Build 0:6ae2f7bca550 8152 result = __LINE__;
Azure.IoT Build 0:6ae2f7bca550 8153 }
Azure.IoT Build 0:6ae2f7bca550 8154 else
Azure.IoT Build 0:6ae2f7bca550 8155 {
Azure.IoT Build 0:6ae2f7bca550 8156 SASL_INIT_INSTANCE* sasl_init_instance = (SASL_INIT_INSTANCE*)sasl_init;
Azure.IoT Build 0:6ae2f7bca550 8157 AMQP_VALUE initial_response_amqp_value = amqpvalue_create_binary(initial_response_value);
Azure.IoT Build 0:6ae2f7bca550 8158 if (initial_response_amqp_value == NULL)
Azure.IoT Build 0:6ae2f7bca550 8159 {
Azure.IoT Build 0:6ae2f7bca550 8160 result = __LINE__;
Azure.IoT Build 0:6ae2f7bca550 8161 }
Azure.IoT Build 0:6ae2f7bca550 8162 else
Azure.IoT Build 0:6ae2f7bca550 8163 {
Azure.IoT Build 0:6ae2f7bca550 8164 if (amqpvalue_set_composite_item(sasl_init_instance->composite_value, 1, initial_response_amqp_value) != 0)
Azure.IoT Build 0:6ae2f7bca550 8165 {
Azure.IoT Build 0:6ae2f7bca550 8166 result = __LINE__;
Azure.IoT Build 0:6ae2f7bca550 8167 }
Azure.IoT Build 0:6ae2f7bca550 8168 else
Azure.IoT Build 0:6ae2f7bca550 8169 {
Azure.IoT Build 0:6ae2f7bca550 8170 result = 0;
Azure.IoT Build 0:6ae2f7bca550 8171 }
Azure.IoT Build 0:6ae2f7bca550 8172
Azure.IoT Build 0:6ae2f7bca550 8173 amqpvalue_destroy(initial_response_amqp_value);
Azure.IoT Build 0:6ae2f7bca550 8174 }
Azure.IoT Build 0:6ae2f7bca550 8175 }
Azure.IoT Build 0:6ae2f7bca550 8176
Azure.IoT Build 0:6ae2f7bca550 8177 return result;
Azure.IoT Build 0:6ae2f7bca550 8178 }
Azure.IoT Build 0:6ae2f7bca550 8179
Azure.IoT Build 0:6ae2f7bca550 8180 int sasl_init_get_hostname(SASL_INIT_HANDLE sasl_init, const char** hostname_value)
Azure.IoT Build 0:6ae2f7bca550 8181 {
Azure.IoT Build 0:6ae2f7bca550 8182 int result;
Azure.IoT Build 0:6ae2f7bca550 8183
Azure.IoT Build 0:6ae2f7bca550 8184 if (sasl_init == NULL)
Azure.IoT Build 0:6ae2f7bca550 8185 {
Azure.IoT Build 0:6ae2f7bca550 8186 result = __LINE__;
Azure.IoT Build 0:6ae2f7bca550 8187 }
Azure.IoT Build 0:6ae2f7bca550 8188 else
Azure.IoT Build 0:6ae2f7bca550 8189 {
Azure.IoT Build 0:6ae2f7bca550 8190 SASL_INIT_INSTANCE* sasl_init_instance = (SASL_INIT_INSTANCE*)sasl_init;
Azure.IoT Build 0:6ae2f7bca550 8191 AMQP_VALUE item_value = amqpvalue_get_composite_item_in_place(sasl_init_instance->composite_value, 2);
Azure.IoT Build 0:6ae2f7bca550 8192 if (item_value == NULL)
Azure.IoT Build 0:6ae2f7bca550 8193 {
Azure.IoT Build 0:6ae2f7bca550 8194 result = __LINE__;
Azure.IoT Build 0:6ae2f7bca550 8195 }
Azure.IoT Build 0:6ae2f7bca550 8196 else
Azure.IoT Build 0:6ae2f7bca550 8197 {
Azure.IoT Build 0:6ae2f7bca550 8198 if (amqpvalue_get_string(item_value, hostname_value) != 0)
Azure.IoT Build 0:6ae2f7bca550 8199 {
AzureIoTClient 16:22a72cf8e416 8200 result = __LINE__;
Azure.IoT Build 0:6ae2f7bca550 8201 }
Azure.IoT Build 0:6ae2f7bca550 8202 else
Azure.IoT Build 0:6ae2f7bca550 8203 {
Azure.IoT Build 0:6ae2f7bca550 8204 result = 0;
Azure.IoT Build 0:6ae2f7bca550 8205 }
Azure.IoT Build 0:6ae2f7bca550 8206 }
Azure.IoT Build 0:6ae2f7bca550 8207 }
Azure.IoT Build 0:6ae2f7bca550 8208
Azure.IoT Build 0:6ae2f7bca550 8209 return result;
Azure.IoT Build 0:6ae2f7bca550 8210 }
Azure.IoT Build 0:6ae2f7bca550 8211
Azure.IoT Build 0:6ae2f7bca550 8212 int sasl_init_set_hostname(SASL_INIT_HANDLE sasl_init, const char* hostname_value)
Azure.IoT Build 0:6ae2f7bca550 8213 {
Azure.IoT Build 0:6ae2f7bca550 8214 int result;
Azure.IoT Build 0:6ae2f7bca550 8215
Azure.IoT Build 0:6ae2f7bca550 8216 if (sasl_init == NULL)
Azure.IoT Build 0:6ae2f7bca550 8217 {
Azure.IoT Build 0:6ae2f7bca550 8218 result = __LINE__;
Azure.IoT Build 0:6ae2f7bca550 8219 }
Azure.IoT Build 0:6ae2f7bca550 8220 else
Azure.IoT Build 0:6ae2f7bca550 8221 {
Azure.IoT Build 0:6ae2f7bca550 8222 SASL_INIT_INSTANCE* sasl_init_instance = (SASL_INIT_INSTANCE*)sasl_init;
Azure.IoT Build 0:6ae2f7bca550 8223 AMQP_VALUE hostname_amqp_value = amqpvalue_create_string(hostname_value);
Azure.IoT Build 0:6ae2f7bca550 8224 if (hostname_amqp_value == NULL)
Azure.IoT Build 0:6ae2f7bca550 8225 {
Azure.IoT Build 0:6ae2f7bca550 8226 result = __LINE__;
Azure.IoT Build 0:6ae2f7bca550 8227 }
Azure.IoT Build 0:6ae2f7bca550 8228 else
Azure.IoT Build 0:6ae2f7bca550 8229 {
Azure.IoT Build 0:6ae2f7bca550 8230 if (amqpvalue_set_composite_item(sasl_init_instance->composite_value, 2, hostname_amqp_value) != 0)
Azure.IoT Build 0:6ae2f7bca550 8231 {
Azure.IoT Build 0:6ae2f7bca550 8232 result = __LINE__;
Azure.IoT Build 0:6ae2f7bca550 8233 }
Azure.IoT Build 0:6ae2f7bca550 8234 else
Azure.IoT Build 0:6ae2f7bca550 8235 {
Azure.IoT Build 0:6ae2f7bca550 8236 result = 0;
Azure.IoT Build 0:6ae2f7bca550 8237 }
Azure.IoT Build 0:6ae2f7bca550 8238
Azure.IoT Build 0:6ae2f7bca550 8239 amqpvalue_destroy(hostname_amqp_value);
Azure.IoT Build 0:6ae2f7bca550 8240 }
Azure.IoT Build 0:6ae2f7bca550 8241 }
Azure.IoT Build 0:6ae2f7bca550 8242
Azure.IoT Build 0:6ae2f7bca550 8243 return result;
Azure.IoT Build 0:6ae2f7bca550 8244 }
Azure.IoT Build 0:6ae2f7bca550 8245
Azure.IoT Build 0:6ae2f7bca550 8246
Azure.IoT Build 0:6ae2f7bca550 8247 /* sasl-challenge */
Azure.IoT Build 0:6ae2f7bca550 8248
Azure.IoT Build 0:6ae2f7bca550 8249 typedef struct SASL_CHALLENGE_INSTANCE_TAG
Azure.IoT Build 0:6ae2f7bca550 8250 {
Azure.IoT Build 0:6ae2f7bca550 8251 AMQP_VALUE composite_value;
Azure.IoT Build 0:6ae2f7bca550 8252 } SASL_CHALLENGE_INSTANCE;
Azure.IoT Build 0:6ae2f7bca550 8253
Azure.IoT Build 0:6ae2f7bca550 8254 static SASL_CHALLENGE_HANDLE sasl_challenge_create_internal(void)
Azure.IoT Build 0:6ae2f7bca550 8255 {
Azure.IoT Build 0:6ae2f7bca550 8256 SASL_CHALLENGE_INSTANCE* sasl_challenge_instance = (SASL_CHALLENGE_INSTANCE*)amqpalloc_malloc(sizeof(SASL_CHALLENGE_INSTANCE));
Azure.IoT Build 0:6ae2f7bca550 8257 if (sasl_challenge_instance != NULL)
Azure.IoT Build 0:6ae2f7bca550 8258 {
Azure.IoT Build 0:6ae2f7bca550 8259 sasl_challenge_instance->composite_value = NULL;
Azure.IoT Build 0:6ae2f7bca550 8260 }
Azure.IoT Build 0:6ae2f7bca550 8261
Azure.IoT Build 0:6ae2f7bca550 8262 return sasl_challenge_instance;
Azure.IoT Build 0:6ae2f7bca550 8263 }
Azure.IoT Build 0:6ae2f7bca550 8264
Azure.IoT Build 0:6ae2f7bca550 8265 SASL_CHALLENGE_HANDLE sasl_challenge_create(amqp_binary challenge_value)
Azure.IoT Build 0:6ae2f7bca550 8266 {
Azure.IoT Build 0:6ae2f7bca550 8267 SASL_CHALLENGE_INSTANCE* sasl_challenge_instance = (SASL_CHALLENGE_INSTANCE*)amqpalloc_malloc(sizeof(SASL_CHALLENGE_INSTANCE));
Azure.IoT Build 0:6ae2f7bca550 8268 if (sasl_challenge_instance != NULL)
Azure.IoT Build 0:6ae2f7bca550 8269 {
Azure.IoT Build 0:6ae2f7bca550 8270 sasl_challenge_instance->composite_value = amqpvalue_create_composite_with_ulong_descriptor(66);
Azure.IoT Build 0:6ae2f7bca550 8271 if (sasl_challenge_instance->composite_value == NULL)
Azure.IoT Build 0:6ae2f7bca550 8272 {
Azure.IoT Build 0:6ae2f7bca550 8273 amqpalloc_free(sasl_challenge_instance);
Azure.IoT Build 0:6ae2f7bca550 8274 sasl_challenge_instance = NULL;
Azure.IoT Build 0:6ae2f7bca550 8275 }
Azure.IoT Build 0:6ae2f7bca550 8276 else
Azure.IoT Build 0:6ae2f7bca550 8277 {
Azure.IoT Build 0:6ae2f7bca550 8278 AMQP_VALUE challenge_amqp_value;
Azure.IoT Build 0:6ae2f7bca550 8279 int result = 0;
Azure.IoT Build 0:6ae2f7bca550 8280
Azure.IoT Build 0:6ae2f7bca550 8281 challenge_amqp_value = amqpvalue_create_binary(challenge_value);
Azure.IoT Build 0:6ae2f7bca550 8282 if ((result == 0) && (amqpvalue_set_composite_item(sasl_challenge_instance->composite_value, 0, challenge_amqp_value) != 0))
Azure.IoT Build 0:6ae2f7bca550 8283 {
Azure.IoT Build 0:6ae2f7bca550 8284 result = __LINE__;
Azure.IoT Build 0:6ae2f7bca550 8285 }
Azure.IoT Build 0:6ae2f7bca550 8286
Azure.IoT Build 0:6ae2f7bca550 8287 amqpvalue_destroy(challenge_amqp_value);
Azure.IoT Build 0:6ae2f7bca550 8288 }
Azure.IoT Build 0:6ae2f7bca550 8289 }
Azure.IoT Build 0:6ae2f7bca550 8290
Azure.IoT Build 0:6ae2f7bca550 8291 return sasl_challenge_instance;
Azure.IoT Build 0:6ae2f7bca550 8292 }
Azure.IoT Build 0:6ae2f7bca550 8293
Azure.IoT Build 0:6ae2f7bca550 8294 SASL_CHALLENGE_HANDLE sasl_challenge_clone(SASL_CHALLENGE_HANDLE value)
Azure.IoT Build 0:6ae2f7bca550 8295 {
Azure.IoT Build 0:6ae2f7bca550 8296 SASL_CHALLENGE_INSTANCE* sasl_challenge_instance = (SASL_CHALLENGE_INSTANCE*)amqpalloc_malloc(sizeof(SASL_CHALLENGE_INSTANCE));
Azure.IoT Build 0:6ae2f7bca550 8297 if (sasl_challenge_instance != NULL)
Azure.IoT Build 0:6ae2f7bca550 8298 {
Azure.IoT Build 0:6ae2f7bca550 8299 sasl_challenge_instance->composite_value = amqpvalue_clone(((SASL_CHALLENGE_INSTANCE*)value)->composite_value);
Azure.IoT Build 0:6ae2f7bca550 8300 if (sasl_challenge_instance->composite_value == NULL)
Azure.IoT Build 0:6ae2f7bca550 8301 {
Azure.IoT Build 0:6ae2f7bca550 8302 amqpalloc_free(sasl_challenge_instance);
Azure.IoT Build 0:6ae2f7bca550 8303 sasl_challenge_instance = NULL;
Azure.IoT Build 0:6ae2f7bca550 8304 }
Azure.IoT Build 0:6ae2f7bca550 8305 }
Azure.IoT Build 0:6ae2f7bca550 8306
Azure.IoT Build 0:6ae2f7bca550 8307 return sasl_challenge_instance;
Azure.IoT Build 0:6ae2f7bca550 8308 }
Azure.IoT Build 0:6ae2f7bca550 8309
Azure.IoT Build 0:6ae2f7bca550 8310 void sasl_challenge_destroy(SASL_CHALLENGE_HANDLE sasl_challenge)
Azure.IoT Build 0:6ae2f7bca550 8311 {
Azure.IoT Build 0:6ae2f7bca550 8312 if (sasl_challenge != NULL)
Azure.IoT Build 0:6ae2f7bca550 8313 {
Azure.IoT Build 0:6ae2f7bca550 8314 SASL_CHALLENGE_INSTANCE* sasl_challenge_instance = (SASL_CHALLENGE_INSTANCE*)sasl_challenge;
Azure.IoT Build 0:6ae2f7bca550 8315 amqpvalue_destroy(sasl_challenge_instance->composite_value);
Azure.IoT Build 0:6ae2f7bca550 8316 amqpalloc_free(sasl_challenge_instance);
Azure.IoT Build 0:6ae2f7bca550 8317 }
Azure.IoT Build 0:6ae2f7bca550 8318 }
Azure.IoT Build 0:6ae2f7bca550 8319
Azure.IoT Build 0:6ae2f7bca550 8320 AMQP_VALUE amqpvalue_create_sasl_challenge(SASL_CHALLENGE_HANDLE sasl_challenge)
Azure.IoT Build 0:6ae2f7bca550 8321 {
Azure.IoT Build 0:6ae2f7bca550 8322 AMQP_VALUE result;
Azure.IoT Build 0:6ae2f7bca550 8323
Azure.IoT Build 0:6ae2f7bca550 8324 if (sasl_challenge == NULL)
Azure.IoT Build 0:6ae2f7bca550 8325 {
Azure.IoT Build 0:6ae2f7bca550 8326 result = NULL;
Azure.IoT Build 0:6ae2f7bca550 8327 }
Azure.IoT Build 0:6ae2f7bca550 8328 else
Azure.IoT Build 0:6ae2f7bca550 8329 {
Azure.IoT Build 0:6ae2f7bca550 8330 SASL_CHALLENGE_INSTANCE* sasl_challenge_instance = (SASL_CHALLENGE_INSTANCE*)sasl_challenge;
Azure.IoT Build 0:6ae2f7bca550 8331 result = amqpvalue_clone(sasl_challenge_instance->composite_value);
Azure.IoT Build 0:6ae2f7bca550 8332 }
Azure.IoT Build 0:6ae2f7bca550 8333
Azure.IoT Build 0:6ae2f7bca550 8334 return result;
Azure.IoT Build 0:6ae2f7bca550 8335 }
Azure.IoT Build 0:6ae2f7bca550 8336
Azure.IoT Build 0:6ae2f7bca550 8337 bool is_sasl_challenge_type_by_descriptor(AMQP_VALUE descriptor)
Azure.IoT Build 0:6ae2f7bca550 8338 {
Azure.IoT Build 0:6ae2f7bca550 8339 bool result;
Azure.IoT Build 0:6ae2f7bca550 8340
Azure.IoT Build 0:6ae2f7bca550 8341 uint64_t descriptor_ulong;
Azure.IoT Build 0:6ae2f7bca550 8342 if ((amqpvalue_get_ulong(descriptor, &descriptor_ulong) == 0) &&
Azure.IoT Build 0:6ae2f7bca550 8343 (descriptor_ulong == 66))
Azure.IoT Build 0:6ae2f7bca550 8344 {
Azure.IoT Build 0:6ae2f7bca550 8345 result = true;
Azure.IoT Build 0:6ae2f7bca550 8346 }
Azure.IoT Build 0:6ae2f7bca550 8347 else
Azure.IoT Build 0:6ae2f7bca550 8348 {
Azure.IoT Build 0:6ae2f7bca550 8349 result = false;
Azure.IoT Build 0:6ae2f7bca550 8350 }
Azure.IoT Build 0:6ae2f7bca550 8351
Azure.IoT Build 0:6ae2f7bca550 8352 return result;
Azure.IoT Build 0:6ae2f7bca550 8353 }
Azure.IoT Build 0:6ae2f7bca550 8354
Azure.IoT Build 0:6ae2f7bca550 8355
Azure.IoT Build 0:6ae2f7bca550 8356 int amqpvalue_get_sasl_challenge(AMQP_VALUE value, SASL_CHALLENGE_HANDLE* sasl_challenge_handle)
Azure.IoT Build 0:6ae2f7bca550 8357 {
Azure.IoT Build 0:6ae2f7bca550 8358 int result;
Azure.IoT Build 0:6ae2f7bca550 8359 SASL_CHALLENGE_INSTANCE* sasl_challenge_instance = (SASL_CHALLENGE_INSTANCE*)sasl_challenge_create_internal();
Azure.IoT Build 0:6ae2f7bca550 8360 *sasl_challenge_handle = sasl_challenge_instance;
Azure.IoT Build 0:6ae2f7bca550 8361 if (*sasl_challenge_handle == NULL)
Azure.IoT Build 0:6ae2f7bca550 8362 {
Azure.IoT Build 0:6ae2f7bca550 8363 result = __LINE__;
Azure.IoT Build 0:6ae2f7bca550 8364 }
Azure.IoT Build 0:6ae2f7bca550 8365 else
Azure.IoT Build 0:6ae2f7bca550 8366 {
Azure.IoT Build 0:6ae2f7bca550 8367 AMQP_VALUE list_value = amqpvalue_get_inplace_described_value(value);
Azure.IoT Build 0:6ae2f7bca550 8368 if (list_value == NULL)
Azure.IoT Build 0:6ae2f7bca550 8369 {
Azure.IoT Build 0:6ae2f7bca550 8370 sasl_challenge_destroy(*sasl_challenge_handle);
Azure.IoT Build 0:6ae2f7bca550 8371 result = __LINE__;
Azure.IoT Build 0:6ae2f7bca550 8372 }
Azure.IoT Build 0:6ae2f7bca550 8373 else
Azure.IoT Build 0:6ae2f7bca550 8374 {
Azure.IoT Build 0:6ae2f7bca550 8375 do
Azure.IoT Build 0:6ae2f7bca550 8376 {
Azure.IoT Build 0:6ae2f7bca550 8377 AMQP_VALUE item_value;
Azure.IoT Build 0:6ae2f7bca550 8378 /* challenge */
Azure.IoT Build 0:6ae2f7bca550 8379 item_value = amqpvalue_get_list_item(list_value, 0);
Azure.IoT Build 0:6ae2f7bca550 8380 if (item_value == NULL)
Azure.IoT Build 0:6ae2f7bca550 8381 {
Azure.IoT Build 0:6ae2f7bca550 8382 {
Azure.IoT Build 0:6ae2f7bca550 8383 sasl_challenge_destroy(*sasl_challenge_handle);
Azure.IoT Build 0:6ae2f7bca550 8384 result = __LINE__;
Azure.IoT Build 0:6ae2f7bca550 8385 break;
Azure.IoT Build 0:6ae2f7bca550 8386 }
Azure.IoT Build 0:6ae2f7bca550 8387 }
Azure.IoT Build 0:6ae2f7bca550 8388 else
Azure.IoT Build 0:6ae2f7bca550 8389 {
Azure.IoT Build 0:6ae2f7bca550 8390 amqp_binary challenge;
Azure.IoT Build 0:6ae2f7bca550 8391 if (amqpvalue_get_binary(item_value, &challenge) != 0)
Azure.IoT Build 0:6ae2f7bca550 8392 {
Azure.IoT Build 0:6ae2f7bca550 8393 sasl_challenge_destroy(*sasl_challenge_handle);
Azure.IoT Build 0:6ae2f7bca550 8394 result = __LINE__;
Azure.IoT Build 0:6ae2f7bca550 8395 break;
Azure.IoT Build 0:6ae2f7bca550 8396 }
Azure.IoT Build 0:6ae2f7bca550 8397
Azure.IoT Build 0:6ae2f7bca550 8398 amqpvalue_destroy(item_value);
Azure.IoT Build 0:6ae2f7bca550 8399 }
Azure.IoT Build 0:6ae2f7bca550 8400
Azure.IoT Build 0:6ae2f7bca550 8401 sasl_challenge_instance->composite_value = amqpvalue_clone(value);
Azure.IoT Build 0:6ae2f7bca550 8402
Azure.IoT Build 0:6ae2f7bca550 8403 result = 0;
Azure.IoT Build 0:6ae2f7bca550 8404 } while (0);
Azure.IoT Build 0:6ae2f7bca550 8405 }
Azure.IoT Build 0:6ae2f7bca550 8406 }
Azure.IoT Build 0:6ae2f7bca550 8407
Azure.IoT Build 0:6ae2f7bca550 8408 return result;
Azure.IoT Build 0:6ae2f7bca550 8409 }
Azure.IoT Build 0:6ae2f7bca550 8410
Azure.IoT Build 0:6ae2f7bca550 8411 int sasl_challenge_get_challenge(SASL_CHALLENGE_HANDLE sasl_challenge, amqp_binary* challenge_value)
Azure.IoT Build 0:6ae2f7bca550 8412 {
Azure.IoT Build 0:6ae2f7bca550 8413 int result;
Azure.IoT Build 0:6ae2f7bca550 8414
Azure.IoT Build 0:6ae2f7bca550 8415 if (sasl_challenge == NULL)
Azure.IoT Build 0:6ae2f7bca550 8416 {
Azure.IoT Build 0:6ae2f7bca550 8417 result = __LINE__;
Azure.IoT Build 0:6ae2f7bca550 8418 }
Azure.IoT Build 0:6ae2f7bca550 8419 else
Azure.IoT Build 0:6ae2f7bca550 8420 {
Azure.IoT Build 0:6ae2f7bca550 8421 SASL_CHALLENGE_INSTANCE* sasl_challenge_instance = (SASL_CHALLENGE_INSTANCE*)sasl_challenge;
Azure.IoT Build 0:6ae2f7bca550 8422 AMQP_VALUE item_value = amqpvalue_get_composite_item_in_place(sasl_challenge_instance->composite_value, 0);
Azure.IoT Build 0:6ae2f7bca550 8423 if (item_value == NULL)
Azure.IoT Build 0:6ae2f7bca550 8424 {
Azure.IoT Build 0:6ae2f7bca550 8425 result = __LINE__;
Azure.IoT Build 0:6ae2f7bca550 8426 }
Azure.IoT Build 0:6ae2f7bca550 8427 else
Azure.IoT Build 0:6ae2f7bca550 8428 {
Azure.IoT Build 0:6ae2f7bca550 8429 if (amqpvalue_get_binary(item_value, challenge_value) != 0)
Azure.IoT Build 0:6ae2f7bca550 8430 {
AzureIoTClient 16:22a72cf8e416 8431 result = __LINE__;
Azure.IoT Build 0:6ae2f7bca550 8432 }
Azure.IoT Build 0:6ae2f7bca550 8433 else
Azure.IoT Build 0:6ae2f7bca550 8434 {
Azure.IoT Build 0:6ae2f7bca550 8435 result = 0;
Azure.IoT Build 0:6ae2f7bca550 8436 }
Azure.IoT Build 0:6ae2f7bca550 8437 }
Azure.IoT Build 0:6ae2f7bca550 8438 }
Azure.IoT Build 0:6ae2f7bca550 8439
Azure.IoT Build 0:6ae2f7bca550 8440 return result;
Azure.IoT Build 0:6ae2f7bca550 8441 }
Azure.IoT Build 0:6ae2f7bca550 8442
Azure.IoT Build 0:6ae2f7bca550 8443 int sasl_challenge_set_challenge(SASL_CHALLENGE_HANDLE sasl_challenge, amqp_binary challenge_value)
Azure.IoT Build 0:6ae2f7bca550 8444 {
Azure.IoT Build 0:6ae2f7bca550 8445 int result;
Azure.IoT Build 0:6ae2f7bca550 8446
Azure.IoT Build 0:6ae2f7bca550 8447 if (sasl_challenge == NULL)
Azure.IoT Build 0:6ae2f7bca550 8448 {
Azure.IoT Build 0:6ae2f7bca550 8449 result = __LINE__;
Azure.IoT Build 0:6ae2f7bca550 8450 }
Azure.IoT Build 0:6ae2f7bca550 8451 else
Azure.IoT Build 0:6ae2f7bca550 8452 {
Azure.IoT Build 0:6ae2f7bca550 8453 SASL_CHALLENGE_INSTANCE* sasl_challenge_instance = (SASL_CHALLENGE_INSTANCE*)sasl_challenge;
Azure.IoT Build 0:6ae2f7bca550 8454 AMQP_VALUE challenge_amqp_value = amqpvalue_create_binary(challenge_value);
Azure.IoT Build 0:6ae2f7bca550 8455 if (challenge_amqp_value == NULL)
Azure.IoT Build 0:6ae2f7bca550 8456 {
Azure.IoT Build 0:6ae2f7bca550 8457 result = __LINE__;
Azure.IoT Build 0:6ae2f7bca550 8458 }
Azure.IoT Build 0:6ae2f7bca550 8459 else
Azure.IoT Build 0:6ae2f7bca550 8460 {
Azure.IoT Build 0:6ae2f7bca550 8461 if (amqpvalue_set_composite_item(sasl_challenge_instance->composite_value, 0, challenge_amqp_value) != 0)
Azure.IoT Build 0:6ae2f7bca550 8462 {
Azure.IoT Build 0:6ae2f7bca550 8463 result = __LINE__;
Azure.IoT Build 0:6ae2f7bca550 8464 }
Azure.IoT Build 0:6ae2f7bca550 8465 else
Azure.IoT Build 0:6ae2f7bca550 8466 {
Azure.IoT Build 0:6ae2f7bca550 8467 result = 0;
Azure.IoT Build 0:6ae2f7bca550 8468 }
Azure.IoT Build 0:6ae2f7bca550 8469
Azure.IoT Build 0:6ae2f7bca550 8470 amqpvalue_destroy(challenge_amqp_value);
Azure.IoT Build 0:6ae2f7bca550 8471 }
Azure.IoT Build 0:6ae2f7bca550 8472 }
Azure.IoT Build 0:6ae2f7bca550 8473
Azure.IoT Build 0:6ae2f7bca550 8474 return result;
Azure.IoT Build 0:6ae2f7bca550 8475 }
Azure.IoT Build 0:6ae2f7bca550 8476
Azure.IoT Build 0:6ae2f7bca550 8477
Azure.IoT Build 0:6ae2f7bca550 8478 /* sasl-response */
Azure.IoT Build 0:6ae2f7bca550 8479
Azure.IoT Build 0:6ae2f7bca550 8480 typedef struct SASL_RESPONSE_INSTANCE_TAG
Azure.IoT Build 0:6ae2f7bca550 8481 {
Azure.IoT Build 0:6ae2f7bca550 8482 AMQP_VALUE composite_value;
Azure.IoT Build 0:6ae2f7bca550 8483 } SASL_RESPONSE_INSTANCE;
Azure.IoT Build 0:6ae2f7bca550 8484
Azure.IoT Build 0:6ae2f7bca550 8485 static SASL_RESPONSE_HANDLE sasl_response_create_internal(void)
Azure.IoT Build 0:6ae2f7bca550 8486 {
Azure.IoT Build 0:6ae2f7bca550 8487 SASL_RESPONSE_INSTANCE* sasl_response_instance = (SASL_RESPONSE_INSTANCE*)amqpalloc_malloc(sizeof(SASL_RESPONSE_INSTANCE));
Azure.IoT Build 0:6ae2f7bca550 8488 if (sasl_response_instance != NULL)
Azure.IoT Build 0:6ae2f7bca550 8489 {
Azure.IoT Build 0:6ae2f7bca550 8490 sasl_response_instance->composite_value = NULL;
Azure.IoT Build 0:6ae2f7bca550 8491 }
Azure.IoT Build 0:6ae2f7bca550 8492
Azure.IoT Build 0:6ae2f7bca550 8493 return sasl_response_instance;
Azure.IoT Build 0:6ae2f7bca550 8494 }
Azure.IoT Build 0:6ae2f7bca550 8495
Azure.IoT Build 0:6ae2f7bca550 8496 SASL_RESPONSE_HANDLE sasl_response_create(amqp_binary response_value)
Azure.IoT Build 0:6ae2f7bca550 8497 {
Azure.IoT Build 0:6ae2f7bca550 8498 SASL_RESPONSE_INSTANCE* sasl_response_instance = (SASL_RESPONSE_INSTANCE*)amqpalloc_malloc(sizeof(SASL_RESPONSE_INSTANCE));
Azure.IoT Build 0:6ae2f7bca550 8499 if (sasl_response_instance != NULL)
Azure.IoT Build 0:6ae2f7bca550 8500 {
Azure.IoT Build 0:6ae2f7bca550 8501 sasl_response_instance->composite_value = amqpvalue_create_composite_with_ulong_descriptor(67);
Azure.IoT Build 0:6ae2f7bca550 8502 if (sasl_response_instance->composite_value == NULL)
Azure.IoT Build 0:6ae2f7bca550 8503 {
Azure.IoT Build 0:6ae2f7bca550 8504 amqpalloc_free(sasl_response_instance);
Azure.IoT Build 0:6ae2f7bca550 8505 sasl_response_instance = NULL;
Azure.IoT Build 0:6ae2f7bca550 8506 }
Azure.IoT Build 0:6ae2f7bca550 8507 else
Azure.IoT Build 0:6ae2f7bca550 8508 {
Azure.IoT Build 0:6ae2f7bca550 8509 AMQP_VALUE response_amqp_value;
Azure.IoT Build 0:6ae2f7bca550 8510 int result = 0;
Azure.IoT Build 0:6ae2f7bca550 8511
Azure.IoT Build 0:6ae2f7bca550 8512 response_amqp_value = amqpvalue_create_binary(response_value);
Azure.IoT Build 0:6ae2f7bca550 8513 if ((result == 0) && (amqpvalue_set_composite_item(sasl_response_instance->composite_value, 0, response_amqp_value) != 0))
Azure.IoT Build 0:6ae2f7bca550 8514 {
Azure.IoT Build 0:6ae2f7bca550 8515 result = __LINE__;
Azure.IoT Build 0:6ae2f7bca550 8516 }
Azure.IoT Build 0:6ae2f7bca550 8517
Azure.IoT Build 0:6ae2f7bca550 8518 amqpvalue_destroy(response_amqp_value);
Azure.IoT Build 0:6ae2f7bca550 8519 }
Azure.IoT Build 0:6ae2f7bca550 8520 }
Azure.IoT Build 0:6ae2f7bca550 8521
Azure.IoT Build 0:6ae2f7bca550 8522 return sasl_response_instance;
Azure.IoT Build 0:6ae2f7bca550 8523 }
Azure.IoT Build 0:6ae2f7bca550 8524
Azure.IoT Build 0:6ae2f7bca550 8525 SASL_RESPONSE_HANDLE sasl_response_clone(SASL_RESPONSE_HANDLE value)
Azure.IoT Build 0:6ae2f7bca550 8526 {
Azure.IoT Build 0:6ae2f7bca550 8527 SASL_RESPONSE_INSTANCE* sasl_response_instance = (SASL_RESPONSE_INSTANCE*)amqpalloc_malloc(sizeof(SASL_RESPONSE_INSTANCE));
Azure.IoT Build 0:6ae2f7bca550 8528 if (sasl_response_instance != NULL)
Azure.IoT Build 0:6ae2f7bca550 8529 {
Azure.IoT Build 0:6ae2f7bca550 8530 sasl_response_instance->composite_value = amqpvalue_clone(((SASL_RESPONSE_INSTANCE*)value)->composite_value);
Azure.IoT Build 0:6ae2f7bca550 8531 if (sasl_response_instance->composite_value == NULL)
Azure.IoT Build 0:6ae2f7bca550 8532 {
Azure.IoT Build 0:6ae2f7bca550 8533 amqpalloc_free(sasl_response_instance);
Azure.IoT Build 0:6ae2f7bca550 8534 sasl_response_instance = NULL;
Azure.IoT Build 0:6ae2f7bca550 8535 }
Azure.IoT Build 0:6ae2f7bca550 8536 }
Azure.IoT Build 0:6ae2f7bca550 8537
Azure.IoT Build 0:6ae2f7bca550 8538 return sasl_response_instance;
Azure.IoT Build 0:6ae2f7bca550 8539 }
Azure.IoT Build 0:6ae2f7bca550 8540
Azure.IoT Build 0:6ae2f7bca550 8541 void sasl_response_destroy(SASL_RESPONSE_HANDLE sasl_response)
Azure.IoT Build 0:6ae2f7bca550 8542 {
Azure.IoT Build 0:6ae2f7bca550 8543 if (sasl_response != NULL)
Azure.IoT Build 0:6ae2f7bca550 8544 {
Azure.IoT Build 0:6ae2f7bca550 8545 SASL_RESPONSE_INSTANCE* sasl_response_instance = (SASL_RESPONSE_INSTANCE*)sasl_response;
Azure.IoT Build 0:6ae2f7bca550 8546 amqpvalue_destroy(sasl_response_instance->composite_value);
Azure.IoT Build 0:6ae2f7bca550 8547 amqpalloc_free(sasl_response_instance);
Azure.IoT Build 0:6ae2f7bca550 8548 }
Azure.IoT Build 0:6ae2f7bca550 8549 }
Azure.IoT Build 0:6ae2f7bca550 8550
Azure.IoT Build 0:6ae2f7bca550 8551 AMQP_VALUE amqpvalue_create_sasl_response(SASL_RESPONSE_HANDLE sasl_response)
Azure.IoT Build 0:6ae2f7bca550 8552 {
Azure.IoT Build 0:6ae2f7bca550 8553 AMQP_VALUE result;
Azure.IoT Build 0:6ae2f7bca550 8554
Azure.IoT Build 0:6ae2f7bca550 8555 if (sasl_response == NULL)
Azure.IoT Build 0:6ae2f7bca550 8556 {
Azure.IoT Build 0:6ae2f7bca550 8557 result = NULL;
Azure.IoT Build 0:6ae2f7bca550 8558 }
Azure.IoT Build 0:6ae2f7bca550 8559 else
Azure.IoT Build 0:6ae2f7bca550 8560 {
Azure.IoT Build 0:6ae2f7bca550 8561 SASL_RESPONSE_INSTANCE* sasl_response_instance = (SASL_RESPONSE_INSTANCE*)sasl_response;
Azure.IoT Build 0:6ae2f7bca550 8562 result = amqpvalue_clone(sasl_response_instance->composite_value);
Azure.IoT Build 0:6ae2f7bca550 8563 }
Azure.IoT Build 0:6ae2f7bca550 8564
Azure.IoT Build 0:6ae2f7bca550 8565 return result;
Azure.IoT Build 0:6ae2f7bca550 8566 }
Azure.IoT Build 0:6ae2f7bca550 8567
Azure.IoT Build 0:6ae2f7bca550 8568 bool is_sasl_response_type_by_descriptor(AMQP_VALUE descriptor)
Azure.IoT Build 0:6ae2f7bca550 8569 {
Azure.IoT Build 0:6ae2f7bca550 8570 bool result;
Azure.IoT Build 0:6ae2f7bca550 8571
Azure.IoT Build 0:6ae2f7bca550 8572 uint64_t descriptor_ulong;
Azure.IoT Build 0:6ae2f7bca550 8573 if ((amqpvalue_get_ulong(descriptor, &descriptor_ulong) == 0) &&
Azure.IoT Build 0:6ae2f7bca550 8574 (descriptor_ulong == 67))
Azure.IoT Build 0:6ae2f7bca550 8575 {
Azure.IoT Build 0:6ae2f7bca550 8576 result = true;
Azure.IoT Build 0:6ae2f7bca550 8577 }
Azure.IoT Build 0:6ae2f7bca550 8578 else
Azure.IoT Build 0:6ae2f7bca550 8579 {
Azure.IoT Build 0:6ae2f7bca550 8580 result = false;
Azure.IoT Build 0:6ae2f7bca550 8581 }
Azure.IoT Build 0:6ae2f7bca550 8582
Azure.IoT Build 0:6ae2f7bca550 8583 return result;
Azure.IoT Build 0:6ae2f7bca550 8584 }
Azure.IoT Build 0:6ae2f7bca550 8585
Azure.IoT Build 0:6ae2f7bca550 8586
Azure.IoT Build 0:6ae2f7bca550 8587 int amqpvalue_get_sasl_response(AMQP_VALUE value, SASL_RESPONSE_HANDLE* sasl_response_handle)
Azure.IoT Build 0:6ae2f7bca550 8588 {
Azure.IoT Build 0:6ae2f7bca550 8589 int result;
Azure.IoT Build 0:6ae2f7bca550 8590 SASL_RESPONSE_INSTANCE* sasl_response_instance = (SASL_RESPONSE_INSTANCE*)sasl_response_create_internal();
Azure.IoT Build 0:6ae2f7bca550 8591 *sasl_response_handle = sasl_response_instance;
Azure.IoT Build 0:6ae2f7bca550 8592 if (*sasl_response_handle == NULL)
Azure.IoT Build 0:6ae2f7bca550 8593 {
Azure.IoT Build 0:6ae2f7bca550 8594 result = __LINE__;
Azure.IoT Build 0:6ae2f7bca550 8595 }
Azure.IoT Build 0:6ae2f7bca550 8596 else
Azure.IoT Build 0:6ae2f7bca550 8597 {
Azure.IoT Build 0:6ae2f7bca550 8598 AMQP_VALUE list_value = amqpvalue_get_inplace_described_value(value);
Azure.IoT Build 0:6ae2f7bca550 8599 if (list_value == NULL)
Azure.IoT Build 0:6ae2f7bca550 8600 {
Azure.IoT Build 0:6ae2f7bca550 8601 sasl_response_destroy(*sasl_response_handle);
Azure.IoT Build 0:6ae2f7bca550 8602 result = __LINE__;
Azure.IoT Build 0:6ae2f7bca550 8603 }
Azure.IoT Build 0:6ae2f7bca550 8604 else
Azure.IoT Build 0:6ae2f7bca550 8605 {
Azure.IoT Build 0:6ae2f7bca550 8606 do
Azure.IoT Build 0:6ae2f7bca550 8607 {
Azure.IoT Build 0:6ae2f7bca550 8608 AMQP_VALUE item_value;
Azure.IoT Build 0:6ae2f7bca550 8609 /* response */
Azure.IoT Build 0:6ae2f7bca550 8610 item_value = amqpvalue_get_list_item(list_value, 0);
Azure.IoT Build 0:6ae2f7bca550 8611 if (item_value == NULL)
Azure.IoT Build 0:6ae2f7bca550 8612 {
Azure.IoT Build 0:6ae2f7bca550 8613 {
Azure.IoT Build 0:6ae2f7bca550 8614 sasl_response_destroy(*sasl_response_handle);
Azure.IoT Build 0:6ae2f7bca550 8615 result = __LINE__;
Azure.IoT Build 0:6ae2f7bca550 8616 break;
Azure.IoT Build 0:6ae2f7bca550 8617 }
Azure.IoT Build 0:6ae2f7bca550 8618 }
Azure.IoT Build 0:6ae2f7bca550 8619 else
Azure.IoT Build 0:6ae2f7bca550 8620 {
Azure.IoT Build 0:6ae2f7bca550 8621 amqp_binary response;
Azure.IoT Build 0:6ae2f7bca550 8622 if (amqpvalue_get_binary(item_value, &response) != 0)
Azure.IoT Build 0:6ae2f7bca550 8623 {
Azure.IoT Build 0:6ae2f7bca550 8624 sasl_response_destroy(*sasl_response_handle);
Azure.IoT Build 0:6ae2f7bca550 8625 result = __LINE__;
Azure.IoT Build 0:6ae2f7bca550 8626 break;
Azure.IoT Build 0:6ae2f7bca550 8627 }
Azure.IoT Build 0:6ae2f7bca550 8628
Azure.IoT Build 0:6ae2f7bca550 8629 amqpvalue_destroy(item_value);
Azure.IoT Build 0:6ae2f7bca550 8630 }
Azure.IoT Build 0:6ae2f7bca550 8631
Azure.IoT Build 0:6ae2f7bca550 8632 sasl_response_instance->composite_value = amqpvalue_clone(value);
Azure.IoT Build 0:6ae2f7bca550 8633
Azure.IoT Build 0:6ae2f7bca550 8634 result = 0;
Azure.IoT Build 0:6ae2f7bca550 8635 } while (0);
Azure.IoT Build 0:6ae2f7bca550 8636 }
Azure.IoT Build 0:6ae2f7bca550 8637 }
Azure.IoT Build 0:6ae2f7bca550 8638
Azure.IoT Build 0:6ae2f7bca550 8639 return result;
Azure.IoT Build 0:6ae2f7bca550 8640 }
Azure.IoT Build 0:6ae2f7bca550 8641
Azure.IoT Build 0:6ae2f7bca550 8642 int sasl_response_get_response(SASL_RESPONSE_HANDLE sasl_response, amqp_binary* response_value)
Azure.IoT Build 0:6ae2f7bca550 8643 {
Azure.IoT Build 0:6ae2f7bca550 8644 int result;
Azure.IoT Build 0:6ae2f7bca550 8645
Azure.IoT Build 0:6ae2f7bca550 8646 if (sasl_response == NULL)
Azure.IoT Build 0:6ae2f7bca550 8647 {
Azure.IoT Build 0:6ae2f7bca550 8648 result = __LINE__;
Azure.IoT Build 0:6ae2f7bca550 8649 }
Azure.IoT Build 0:6ae2f7bca550 8650 else
Azure.IoT Build 0:6ae2f7bca550 8651 {
Azure.IoT Build 0:6ae2f7bca550 8652 SASL_RESPONSE_INSTANCE* sasl_response_instance = (SASL_RESPONSE_INSTANCE*)sasl_response;
Azure.IoT Build 0:6ae2f7bca550 8653 AMQP_VALUE item_value = amqpvalue_get_composite_item_in_place(sasl_response_instance->composite_value, 0);
Azure.IoT Build 0:6ae2f7bca550 8654 if (item_value == NULL)
Azure.IoT Build 0:6ae2f7bca550 8655 {
Azure.IoT Build 0:6ae2f7bca550 8656 result = __LINE__;
Azure.IoT Build 0:6ae2f7bca550 8657 }
Azure.IoT Build 0:6ae2f7bca550 8658 else
Azure.IoT Build 0:6ae2f7bca550 8659 {
Azure.IoT Build 0:6ae2f7bca550 8660 if (amqpvalue_get_binary(item_value, response_value) != 0)
Azure.IoT Build 0:6ae2f7bca550 8661 {
AzureIoTClient 16:22a72cf8e416 8662 result = __LINE__;
Azure.IoT Build 0:6ae2f7bca550 8663 }
Azure.IoT Build 0:6ae2f7bca550 8664 else
Azure.IoT Build 0:6ae2f7bca550 8665 {
Azure.IoT Build 0:6ae2f7bca550 8666 result = 0;
Azure.IoT Build 0:6ae2f7bca550 8667 }
Azure.IoT Build 0:6ae2f7bca550 8668 }
Azure.IoT Build 0:6ae2f7bca550 8669 }
Azure.IoT Build 0:6ae2f7bca550 8670
Azure.IoT Build 0:6ae2f7bca550 8671 return result;
Azure.IoT Build 0:6ae2f7bca550 8672 }
Azure.IoT Build 0:6ae2f7bca550 8673
Azure.IoT Build 0:6ae2f7bca550 8674 int sasl_response_set_response(SASL_RESPONSE_HANDLE sasl_response, amqp_binary response_value)
Azure.IoT Build 0:6ae2f7bca550 8675 {
Azure.IoT Build 0:6ae2f7bca550 8676 int result;
Azure.IoT Build 0:6ae2f7bca550 8677
Azure.IoT Build 0:6ae2f7bca550 8678 if (sasl_response == NULL)
Azure.IoT Build 0:6ae2f7bca550 8679 {
Azure.IoT Build 0:6ae2f7bca550 8680 result = __LINE__;
Azure.IoT Build 0:6ae2f7bca550 8681 }
Azure.IoT Build 0:6ae2f7bca550 8682 else
Azure.IoT Build 0:6ae2f7bca550 8683 {
Azure.IoT Build 0:6ae2f7bca550 8684 SASL_RESPONSE_INSTANCE* sasl_response_instance = (SASL_RESPONSE_INSTANCE*)sasl_response;
Azure.IoT Build 0:6ae2f7bca550 8685 AMQP_VALUE response_amqp_value = amqpvalue_create_binary(response_value);
Azure.IoT Build 0:6ae2f7bca550 8686 if (response_amqp_value == NULL)
Azure.IoT Build 0:6ae2f7bca550 8687 {
Azure.IoT Build 0:6ae2f7bca550 8688 result = __LINE__;
Azure.IoT Build 0:6ae2f7bca550 8689 }
Azure.IoT Build 0:6ae2f7bca550 8690 else
Azure.IoT Build 0:6ae2f7bca550 8691 {
Azure.IoT Build 0:6ae2f7bca550 8692 if (amqpvalue_set_composite_item(sasl_response_instance->composite_value, 0, response_amqp_value) != 0)
Azure.IoT Build 0:6ae2f7bca550 8693 {
Azure.IoT Build 0:6ae2f7bca550 8694 result = __LINE__;
Azure.IoT Build 0:6ae2f7bca550 8695 }
Azure.IoT Build 0:6ae2f7bca550 8696 else
Azure.IoT Build 0:6ae2f7bca550 8697 {
Azure.IoT Build 0:6ae2f7bca550 8698 result = 0;
Azure.IoT Build 0:6ae2f7bca550 8699 }
Azure.IoT Build 0:6ae2f7bca550 8700
Azure.IoT Build 0:6ae2f7bca550 8701 amqpvalue_destroy(response_amqp_value);
Azure.IoT Build 0:6ae2f7bca550 8702 }
Azure.IoT Build 0:6ae2f7bca550 8703 }
Azure.IoT Build 0:6ae2f7bca550 8704
Azure.IoT Build 0:6ae2f7bca550 8705 return result;
Azure.IoT Build 0:6ae2f7bca550 8706 }
Azure.IoT Build 0:6ae2f7bca550 8707
Azure.IoT Build 0:6ae2f7bca550 8708
Azure.IoT Build 0:6ae2f7bca550 8709 /* sasl-outcome */
Azure.IoT Build 0:6ae2f7bca550 8710
Azure.IoT Build 0:6ae2f7bca550 8711 typedef struct SASL_OUTCOME_INSTANCE_TAG
Azure.IoT Build 0:6ae2f7bca550 8712 {
Azure.IoT Build 0:6ae2f7bca550 8713 AMQP_VALUE composite_value;
Azure.IoT Build 0:6ae2f7bca550 8714 } SASL_OUTCOME_INSTANCE;
Azure.IoT Build 0:6ae2f7bca550 8715
Azure.IoT Build 0:6ae2f7bca550 8716 static SASL_OUTCOME_HANDLE sasl_outcome_create_internal(void)
Azure.IoT Build 0:6ae2f7bca550 8717 {
Azure.IoT Build 0:6ae2f7bca550 8718 SASL_OUTCOME_INSTANCE* sasl_outcome_instance = (SASL_OUTCOME_INSTANCE*)amqpalloc_malloc(sizeof(SASL_OUTCOME_INSTANCE));
Azure.IoT Build 0:6ae2f7bca550 8719 if (sasl_outcome_instance != NULL)
Azure.IoT Build 0:6ae2f7bca550 8720 {
Azure.IoT Build 0:6ae2f7bca550 8721 sasl_outcome_instance->composite_value = NULL;
Azure.IoT Build 0:6ae2f7bca550 8722 }
Azure.IoT Build 0:6ae2f7bca550 8723
Azure.IoT Build 0:6ae2f7bca550 8724 return sasl_outcome_instance;
Azure.IoT Build 0:6ae2f7bca550 8725 }
Azure.IoT Build 0:6ae2f7bca550 8726
Azure.IoT Build 0:6ae2f7bca550 8727 SASL_OUTCOME_HANDLE sasl_outcome_create(sasl_code code_value)
Azure.IoT Build 0:6ae2f7bca550 8728 {
Azure.IoT Build 0:6ae2f7bca550 8729 SASL_OUTCOME_INSTANCE* sasl_outcome_instance = (SASL_OUTCOME_INSTANCE*)amqpalloc_malloc(sizeof(SASL_OUTCOME_INSTANCE));
Azure.IoT Build 0:6ae2f7bca550 8730 if (sasl_outcome_instance != NULL)
Azure.IoT Build 0:6ae2f7bca550 8731 {
Azure.IoT Build 0:6ae2f7bca550 8732 sasl_outcome_instance->composite_value = amqpvalue_create_composite_with_ulong_descriptor(68);
Azure.IoT Build 0:6ae2f7bca550 8733 if (sasl_outcome_instance->composite_value == NULL)
Azure.IoT Build 0:6ae2f7bca550 8734 {
Azure.IoT Build 0:6ae2f7bca550 8735 amqpalloc_free(sasl_outcome_instance);
Azure.IoT Build 0:6ae2f7bca550 8736 sasl_outcome_instance = NULL;
Azure.IoT Build 0:6ae2f7bca550 8737 }
Azure.IoT Build 0:6ae2f7bca550 8738 else
Azure.IoT Build 0:6ae2f7bca550 8739 {
Azure.IoT Build 0:6ae2f7bca550 8740 AMQP_VALUE code_amqp_value;
Azure.IoT Build 0:6ae2f7bca550 8741 int result = 0;
Azure.IoT Build 0:6ae2f7bca550 8742
Azure.IoT Build 0:6ae2f7bca550 8743 code_amqp_value = amqpvalue_create_sasl_code(code_value);
Azure.IoT Build 0:6ae2f7bca550 8744 if ((result == 0) && (amqpvalue_set_composite_item(sasl_outcome_instance->composite_value, 0, code_amqp_value) != 0))
Azure.IoT Build 0:6ae2f7bca550 8745 {
Azure.IoT Build 0:6ae2f7bca550 8746 result = __LINE__;
Azure.IoT Build 0:6ae2f7bca550 8747 }
Azure.IoT Build 0:6ae2f7bca550 8748
Azure.IoT Build 0:6ae2f7bca550 8749 amqpvalue_destroy(code_amqp_value);
Azure.IoT Build 0:6ae2f7bca550 8750 }
Azure.IoT Build 0:6ae2f7bca550 8751 }
Azure.IoT Build 0:6ae2f7bca550 8752
Azure.IoT Build 0:6ae2f7bca550 8753 return sasl_outcome_instance;
Azure.IoT Build 0:6ae2f7bca550 8754 }
Azure.IoT Build 0:6ae2f7bca550 8755
Azure.IoT Build 0:6ae2f7bca550 8756 SASL_OUTCOME_HANDLE sasl_outcome_clone(SASL_OUTCOME_HANDLE value)
Azure.IoT Build 0:6ae2f7bca550 8757 {
Azure.IoT Build 0:6ae2f7bca550 8758 SASL_OUTCOME_INSTANCE* sasl_outcome_instance = (SASL_OUTCOME_INSTANCE*)amqpalloc_malloc(sizeof(SASL_OUTCOME_INSTANCE));
Azure.IoT Build 0:6ae2f7bca550 8759 if (sasl_outcome_instance != NULL)
Azure.IoT Build 0:6ae2f7bca550 8760 {
Azure.IoT Build 0:6ae2f7bca550 8761 sasl_outcome_instance->composite_value = amqpvalue_clone(((SASL_OUTCOME_INSTANCE*)value)->composite_value);
Azure.IoT Build 0:6ae2f7bca550 8762 if (sasl_outcome_instance->composite_value == NULL)
Azure.IoT Build 0:6ae2f7bca550 8763 {
Azure.IoT Build 0:6ae2f7bca550 8764 amqpalloc_free(sasl_outcome_instance);
Azure.IoT Build 0:6ae2f7bca550 8765 sasl_outcome_instance = NULL;
Azure.IoT Build 0:6ae2f7bca550 8766 }
Azure.IoT Build 0:6ae2f7bca550 8767 }
Azure.IoT Build 0:6ae2f7bca550 8768
Azure.IoT Build 0:6ae2f7bca550 8769 return sasl_outcome_instance;
Azure.IoT Build 0:6ae2f7bca550 8770 }
Azure.IoT Build 0:6ae2f7bca550 8771
Azure.IoT Build 0:6ae2f7bca550 8772 void sasl_outcome_destroy(SASL_OUTCOME_HANDLE sasl_outcome)
Azure.IoT Build 0:6ae2f7bca550 8773 {
Azure.IoT Build 0:6ae2f7bca550 8774 if (sasl_outcome != NULL)
Azure.IoT Build 0:6ae2f7bca550 8775 {
Azure.IoT Build 0:6ae2f7bca550 8776 SASL_OUTCOME_INSTANCE* sasl_outcome_instance = (SASL_OUTCOME_INSTANCE*)sasl_outcome;
Azure.IoT Build 0:6ae2f7bca550 8777 amqpvalue_destroy(sasl_outcome_instance->composite_value);
Azure.IoT Build 0:6ae2f7bca550 8778 amqpalloc_free(sasl_outcome_instance);
Azure.IoT Build 0:6ae2f7bca550 8779 }
Azure.IoT Build 0:6ae2f7bca550 8780 }
Azure.IoT Build 0:6ae2f7bca550 8781
Azure.IoT Build 0:6ae2f7bca550 8782 AMQP_VALUE amqpvalue_create_sasl_outcome(SASL_OUTCOME_HANDLE sasl_outcome)
Azure.IoT Build 0:6ae2f7bca550 8783 {
Azure.IoT Build 0:6ae2f7bca550 8784 AMQP_VALUE result;
Azure.IoT Build 0:6ae2f7bca550 8785
Azure.IoT Build 0:6ae2f7bca550 8786 if (sasl_outcome == NULL)
Azure.IoT Build 0:6ae2f7bca550 8787 {
Azure.IoT Build 0:6ae2f7bca550 8788 result = NULL;
Azure.IoT Build 0:6ae2f7bca550 8789 }
Azure.IoT Build 0:6ae2f7bca550 8790 else
Azure.IoT Build 0:6ae2f7bca550 8791 {
Azure.IoT Build 0:6ae2f7bca550 8792 SASL_OUTCOME_INSTANCE* sasl_outcome_instance = (SASL_OUTCOME_INSTANCE*)sasl_outcome;
Azure.IoT Build 0:6ae2f7bca550 8793 result = amqpvalue_clone(sasl_outcome_instance->composite_value);
Azure.IoT Build 0:6ae2f7bca550 8794 }
Azure.IoT Build 0:6ae2f7bca550 8795
Azure.IoT Build 0:6ae2f7bca550 8796 return result;
Azure.IoT Build 0:6ae2f7bca550 8797 }
Azure.IoT Build 0:6ae2f7bca550 8798
Azure.IoT Build 0:6ae2f7bca550 8799 bool is_sasl_outcome_type_by_descriptor(AMQP_VALUE descriptor)
Azure.IoT Build 0:6ae2f7bca550 8800 {
Azure.IoT Build 0:6ae2f7bca550 8801 bool result;
Azure.IoT Build 0:6ae2f7bca550 8802
Azure.IoT Build 0:6ae2f7bca550 8803 uint64_t descriptor_ulong;
Azure.IoT Build 0:6ae2f7bca550 8804 if ((amqpvalue_get_ulong(descriptor, &descriptor_ulong) == 0) &&
Azure.IoT Build 0:6ae2f7bca550 8805 (descriptor_ulong == 68))
Azure.IoT Build 0:6ae2f7bca550 8806 {
Azure.IoT Build 0:6ae2f7bca550 8807 result = true;
Azure.IoT Build 0:6ae2f7bca550 8808 }
Azure.IoT Build 0:6ae2f7bca550 8809 else
Azure.IoT Build 0:6ae2f7bca550 8810 {
Azure.IoT Build 0:6ae2f7bca550 8811 result = false;
Azure.IoT Build 0:6ae2f7bca550 8812 }
Azure.IoT Build 0:6ae2f7bca550 8813
Azure.IoT Build 0:6ae2f7bca550 8814 return result;
Azure.IoT Build 0:6ae2f7bca550 8815 }
Azure.IoT Build 0:6ae2f7bca550 8816
Azure.IoT Build 0:6ae2f7bca550 8817
Azure.IoT Build 0:6ae2f7bca550 8818 int amqpvalue_get_sasl_outcome(AMQP_VALUE value, SASL_OUTCOME_HANDLE* sasl_outcome_handle)
Azure.IoT Build 0:6ae2f7bca550 8819 {
Azure.IoT Build 0:6ae2f7bca550 8820 int result;
Azure.IoT Build 0:6ae2f7bca550 8821 SASL_OUTCOME_INSTANCE* sasl_outcome_instance = (SASL_OUTCOME_INSTANCE*)sasl_outcome_create_internal();
Azure.IoT Build 0:6ae2f7bca550 8822 *sasl_outcome_handle = sasl_outcome_instance;
Azure.IoT Build 0:6ae2f7bca550 8823 if (*sasl_outcome_handle == NULL)
Azure.IoT Build 0:6ae2f7bca550 8824 {
Azure.IoT Build 0:6ae2f7bca550 8825 result = __LINE__;
Azure.IoT Build 0:6ae2f7bca550 8826 }
Azure.IoT Build 0:6ae2f7bca550 8827 else
Azure.IoT Build 0:6ae2f7bca550 8828 {
Azure.IoT Build 0:6ae2f7bca550 8829 AMQP_VALUE list_value = amqpvalue_get_inplace_described_value(value);
Azure.IoT Build 0:6ae2f7bca550 8830 if (list_value == NULL)
Azure.IoT Build 0:6ae2f7bca550 8831 {
Azure.IoT Build 0:6ae2f7bca550 8832 sasl_outcome_destroy(*sasl_outcome_handle);
Azure.IoT Build 0:6ae2f7bca550 8833 result = __LINE__;
Azure.IoT Build 0:6ae2f7bca550 8834 }
Azure.IoT Build 0:6ae2f7bca550 8835 else
Azure.IoT Build 0:6ae2f7bca550 8836 {
Azure.IoT Build 0:6ae2f7bca550 8837 do
Azure.IoT Build 0:6ae2f7bca550 8838 {
Azure.IoT Build 0:6ae2f7bca550 8839 AMQP_VALUE item_value;
Azure.IoT Build 0:6ae2f7bca550 8840 /* code */
Azure.IoT Build 0:6ae2f7bca550 8841 item_value = amqpvalue_get_list_item(list_value, 0);
Azure.IoT Build 0:6ae2f7bca550 8842 if (item_value == NULL)
Azure.IoT Build 0:6ae2f7bca550 8843 {
Azure.IoT Build 0:6ae2f7bca550 8844 {
Azure.IoT Build 0:6ae2f7bca550 8845 sasl_outcome_destroy(*sasl_outcome_handle);
Azure.IoT Build 0:6ae2f7bca550 8846 result = __LINE__;
Azure.IoT Build 0:6ae2f7bca550 8847 break;
Azure.IoT Build 0:6ae2f7bca550 8848 }
Azure.IoT Build 0:6ae2f7bca550 8849 }
Azure.IoT Build 0:6ae2f7bca550 8850 else
Azure.IoT Build 0:6ae2f7bca550 8851 {
Azure.IoT Build 0:6ae2f7bca550 8852 sasl_code code;
Azure.IoT Build 0:6ae2f7bca550 8853 if (amqpvalue_get_sasl_code(item_value, &code) != 0)
Azure.IoT Build 0:6ae2f7bca550 8854 {
Azure.IoT Build 0:6ae2f7bca550 8855 sasl_outcome_destroy(*sasl_outcome_handle);
Azure.IoT Build 0:6ae2f7bca550 8856 result = __LINE__;
Azure.IoT Build 0:6ae2f7bca550 8857 break;
Azure.IoT Build 0:6ae2f7bca550 8858 }
Azure.IoT Build 0:6ae2f7bca550 8859
Azure.IoT Build 0:6ae2f7bca550 8860 amqpvalue_destroy(item_value);
Azure.IoT Build 0:6ae2f7bca550 8861 }
Azure.IoT Build 0:6ae2f7bca550 8862 /* additional-data */
Azure.IoT Build 0:6ae2f7bca550 8863 item_value = amqpvalue_get_list_item(list_value, 1);
Azure.IoT Build 0:6ae2f7bca550 8864 if (item_value == NULL)
Azure.IoT Build 0:6ae2f7bca550 8865 {
Azure.IoT Build 0:6ae2f7bca550 8866 /* do nothing */
Azure.IoT Build 0:6ae2f7bca550 8867 }
Azure.IoT Build 0:6ae2f7bca550 8868 else
Azure.IoT Build 0:6ae2f7bca550 8869 {
Azure.IoT Build 0:6ae2f7bca550 8870 amqp_binary additional_data;
Azure.IoT Build 0:6ae2f7bca550 8871 if (amqpvalue_get_binary(item_value, &additional_data) != 0)
Azure.IoT Build 0:6ae2f7bca550 8872 {
Azure.IoT Build 0:6ae2f7bca550 8873 if (amqpvalue_get_type(item_value) != AMQP_TYPE_NULL)
Azure.IoT Build 0:6ae2f7bca550 8874 {
Azure.IoT Build 0:6ae2f7bca550 8875 sasl_outcome_destroy(*sasl_outcome_handle);
Azure.IoT Build 0:6ae2f7bca550 8876 result = __LINE__;
Azure.IoT Build 0:6ae2f7bca550 8877 break;
Azure.IoT Build 0:6ae2f7bca550 8878 }
Azure.IoT Build 0:6ae2f7bca550 8879 }
Azure.IoT Build 0:6ae2f7bca550 8880
Azure.IoT Build 0:6ae2f7bca550 8881 amqpvalue_destroy(item_value);
Azure.IoT Build 0:6ae2f7bca550 8882 }
Azure.IoT Build 0:6ae2f7bca550 8883
Azure.IoT Build 0:6ae2f7bca550 8884 sasl_outcome_instance->composite_value = amqpvalue_clone(value);
Azure.IoT Build 0:6ae2f7bca550 8885
Azure.IoT Build 0:6ae2f7bca550 8886 result = 0;
Azure.IoT Build 0:6ae2f7bca550 8887 } while (0);
Azure.IoT Build 0:6ae2f7bca550 8888 }
Azure.IoT Build 0:6ae2f7bca550 8889 }
Azure.IoT Build 0:6ae2f7bca550 8890
Azure.IoT Build 0:6ae2f7bca550 8891 return result;
Azure.IoT Build 0:6ae2f7bca550 8892 }
Azure.IoT Build 0:6ae2f7bca550 8893
Azure.IoT Build 0:6ae2f7bca550 8894 int sasl_outcome_get_code(SASL_OUTCOME_HANDLE sasl_outcome, sasl_code* code_value)
Azure.IoT Build 0:6ae2f7bca550 8895 {
Azure.IoT Build 0:6ae2f7bca550 8896 int result;
Azure.IoT Build 0:6ae2f7bca550 8897
Azure.IoT Build 0:6ae2f7bca550 8898 if (sasl_outcome == NULL)
Azure.IoT Build 0:6ae2f7bca550 8899 {
Azure.IoT Build 0:6ae2f7bca550 8900 result = __LINE__;
Azure.IoT Build 0:6ae2f7bca550 8901 }
Azure.IoT Build 0:6ae2f7bca550 8902 else
Azure.IoT Build 0:6ae2f7bca550 8903 {
Azure.IoT Build 0:6ae2f7bca550 8904 SASL_OUTCOME_INSTANCE* sasl_outcome_instance = (SASL_OUTCOME_INSTANCE*)sasl_outcome;
Azure.IoT Build 0:6ae2f7bca550 8905 AMQP_VALUE item_value = amqpvalue_get_composite_item_in_place(sasl_outcome_instance->composite_value, 0);
Azure.IoT Build 0:6ae2f7bca550 8906 if (item_value == NULL)
Azure.IoT Build 0:6ae2f7bca550 8907 {
Azure.IoT Build 0:6ae2f7bca550 8908 result = __LINE__;
Azure.IoT Build 0:6ae2f7bca550 8909 }
Azure.IoT Build 0:6ae2f7bca550 8910 else
Azure.IoT Build 0:6ae2f7bca550 8911 {
Azure.IoT Build 0:6ae2f7bca550 8912 if (amqpvalue_get_sasl_code(item_value, code_value) != 0)
Azure.IoT Build 0:6ae2f7bca550 8913 {
AzureIoTClient 16:22a72cf8e416 8914 result = __LINE__;
Azure.IoT Build 0:6ae2f7bca550 8915 }
Azure.IoT Build 0:6ae2f7bca550 8916 else
Azure.IoT Build 0:6ae2f7bca550 8917 {
Azure.IoT Build 0:6ae2f7bca550 8918 result = 0;
Azure.IoT Build 0:6ae2f7bca550 8919 }
Azure.IoT Build 0:6ae2f7bca550 8920 }
Azure.IoT Build 0:6ae2f7bca550 8921 }
Azure.IoT Build 0:6ae2f7bca550 8922
Azure.IoT Build 0:6ae2f7bca550 8923 return result;
Azure.IoT Build 0:6ae2f7bca550 8924 }
Azure.IoT Build 0:6ae2f7bca550 8925
Azure.IoT Build 0:6ae2f7bca550 8926 int sasl_outcome_set_code(SASL_OUTCOME_HANDLE sasl_outcome, sasl_code code_value)
Azure.IoT Build 0:6ae2f7bca550 8927 {
Azure.IoT Build 0:6ae2f7bca550 8928 int result;
Azure.IoT Build 0:6ae2f7bca550 8929
Azure.IoT Build 0:6ae2f7bca550 8930 if (sasl_outcome == NULL)
Azure.IoT Build 0:6ae2f7bca550 8931 {
Azure.IoT Build 0:6ae2f7bca550 8932 result = __LINE__;
Azure.IoT Build 0:6ae2f7bca550 8933 }
Azure.IoT Build 0:6ae2f7bca550 8934 else
Azure.IoT Build 0:6ae2f7bca550 8935 {
Azure.IoT Build 0:6ae2f7bca550 8936 SASL_OUTCOME_INSTANCE* sasl_outcome_instance = (SASL_OUTCOME_INSTANCE*)sasl_outcome;
Azure.IoT Build 0:6ae2f7bca550 8937 AMQP_VALUE code_amqp_value = amqpvalue_create_sasl_code(code_value);
Azure.IoT Build 0:6ae2f7bca550 8938 if (code_amqp_value == NULL)
Azure.IoT Build 0:6ae2f7bca550 8939 {
Azure.IoT Build 0:6ae2f7bca550 8940 result = __LINE__;
Azure.IoT Build 0:6ae2f7bca550 8941 }
Azure.IoT Build 0:6ae2f7bca550 8942 else
Azure.IoT Build 0:6ae2f7bca550 8943 {
Azure.IoT Build 0:6ae2f7bca550 8944 if (amqpvalue_set_composite_item(sasl_outcome_instance->composite_value, 0, code_amqp_value) != 0)
Azure.IoT Build 0:6ae2f7bca550 8945 {
Azure.IoT Build 0:6ae2f7bca550 8946 result = __LINE__;
Azure.IoT Build 0:6ae2f7bca550 8947 }
Azure.IoT Build 0:6ae2f7bca550 8948 else
Azure.IoT Build 0:6ae2f7bca550 8949 {
Azure.IoT Build 0:6ae2f7bca550 8950 result = 0;
Azure.IoT Build 0:6ae2f7bca550 8951 }
Azure.IoT Build 0:6ae2f7bca550 8952
Azure.IoT Build 0:6ae2f7bca550 8953 amqpvalue_destroy(code_amqp_value);
Azure.IoT Build 0:6ae2f7bca550 8954 }
Azure.IoT Build 0:6ae2f7bca550 8955 }
Azure.IoT Build 0:6ae2f7bca550 8956
Azure.IoT Build 0:6ae2f7bca550 8957 return result;
Azure.IoT Build 0:6ae2f7bca550 8958 }
Azure.IoT Build 0:6ae2f7bca550 8959
Azure.IoT Build 0:6ae2f7bca550 8960 int sasl_outcome_get_additional_data(SASL_OUTCOME_HANDLE sasl_outcome, amqp_binary* additional_data_value)
Azure.IoT Build 0:6ae2f7bca550 8961 {
Azure.IoT Build 0:6ae2f7bca550 8962 int result;
Azure.IoT Build 0:6ae2f7bca550 8963
Azure.IoT Build 0:6ae2f7bca550 8964 if (sasl_outcome == NULL)
Azure.IoT Build 0:6ae2f7bca550 8965 {
Azure.IoT Build 0:6ae2f7bca550 8966 result = __LINE__;
Azure.IoT Build 0:6ae2f7bca550 8967 }
Azure.IoT Build 0:6ae2f7bca550 8968 else
Azure.IoT Build 0:6ae2f7bca550 8969 {
Azure.IoT Build 0:6ae2f7bca550 8970 SASL_OUTCOME_INSTANCE* sasl_outcome_instance = (SASL_OUTCOME_INSTANCE*)sasl_outcome;
Azure.IoT Build 0:6ae2f7bca550 8971 AMQP_VALUE item_value = amqpvalue_get_composite_item_in_place(sasl_outcome_instance->composite_value, 1);
Azure.IoT Build 0:6ae2f7bca550 8972 if (item_value == NULL)
Azure.IoT Build 0:6ae2f7bca550 8973 {
Azure.IoT Build 0:6ae2f7bca550 8974 result = __LINE__;
Azure.IoT Build 0:6ae2f7bca550 8975 }
Azure.IoT Build 0:6ae2f7bca550 8976 else
Azure.IoT Build 0:6ae2f7bca550 8977 {
Azure.IoT Build 0:6ae2f7bca550 8978 if (amqpvalue_get_binary(item_value, additional_data_value) != 0)
Azure.IoT Build 0:6ae2f7bca550 8979 {
AzureIoTClient 16:22a72cf8e416 8980 result = __LINE__;
Azure.IoT Build 0:6ae2f7bca550 8981 }
Azure.IoT Build 0:6ae2f7bca550 8982 else
Azure.IoT Build 0:6ae2f7bca550 8983 {
Azure.IoT Build 0:6ae2f7bca550 8984 result = 0;
Azure.IoT Build 0:6ae2f7bca550 8985 }
Azure.IoT Build 0:6ae2f7bca550 8986 }
Azure.IoT Build 0:6ae2f7bca550 8987 }
Azure.IoT Build 0:6ae2f7bca550 8988
Azure.IoT Build 0:6ae2f7bca550 8989 return result;
Azure.IoT Build 0:6ae2f7bca550 8990 }
Azure.IoT Build 0:6ae2f7bca550 8991
Azure.IoT Build 0:6ae2f7bca550 8992 int sasl_outcome_set_additional_data(SASL_OUTCOME_HANDLE sasl_outcome, amqp_binary additional_data_value)
Azure.IoT Build 0:6ae2f7bca550 8993 {
Azure.IoT Build 0:6ae2f7bca550 8994 int result;
Azure.IoT Build 0:6ae2f7bca550 8995
Azure.IoT Build 0:6ae2f7bca550 8996 if (sasl_outcome == NULL)
Azure.IoT Build 0:6ae2f7bca550 8997 {
Azure.IoT Build 0:6ae2f7bca550 8998 result = __LINE__;
Azure.IoT Build 0:6ae2f7bca550 8999 }
Azure.IoT Build 0:6ae2f7bca550 9000 else
Azure.IoT Build 0:6ae2f7bca550 9001 {
Azure.IoT Build 0:6ae2f7bca550 9002 SASL_OUTCOME_INSTANCE* sasl_outcome_instance = (SASL_OUTCOME_INSTANCE*)sasl_outcome;
Azure.IoT Build 0:6ae2f7bca550 9003 AMQP_VALUE additional_data_amqp_value = amqpvalue_create_binary(additional_data_value);
Azure.IoT Build 0:6ae2f7bca550 9004 if (additional_data_amqp_value == NULL)
Azure.IoT Build 0:6ae2f7bca550 9005 {
Azure.IoT Build 0:6ae2f7bca550 9006 result = __LINE__;
Azure.IoT Build 0:6ae2f7bca550 9007 }
Azure.IoT Build 0:6ae2f7bca550 9008 else
Azure.IoT Build 0:6ae2f7bca550 9009 {
Azure.IoT Build 0:6ae2f7bca550 9010 if (amqpvalue_set_composite_item(sasl_outcome_instance->composite_value, 1, additional_data_amqp_value) != 0)
Azure.IoT Build 0:6ae2f7bca550 9011 {
Azure.IoT Build 0:6ae2f7bca550 9012 result = __LINE__;
Azure.IoT Build 0:6ae2f7bca550 9013 }
Azure.IoT Build 0:6ae2f7bca550 9014 else
Azure.IoT Build 0:6ae2f7bca550 9015 {
Azure.IoT Build 0:6ae2f7bca550 9016 result = 0;
Azure.IoT Build 0:6ae2f7bca550 9017 }
Azure.IoT Build 0:6ae2f7bca550 9018
Azure.IoT Build 0:6ae2f7bca550 9019 amqpvalue_destroy(additional_data_amqp_value);
Azure.IoT Build 0:6ae2f7bca550 9020 }
Azure.IoT Build 0:6ae2f7bca550 9021 }
Azure.IoT Build 0:6ae2f7bca550 9022
Azure.IoT Build 0:6ae2f7bca550 9023 return result;
Azure.IoT Build 0:6ae2f7bca550 9024 }
Azure.IoT Build 0:6ae2f7bca550 9025
Azure.IoT Build 0:6ae2f7bca550 9026
Azure.IoT Build 0:6ae2f7bca550 9027 /* terminus-durability */
Azure.IoT Build 0:6ae2f7bca550 9028
Azure.IoT Build 0:6ae2f7bca550 9029 AMQP_VALUE amqpvalue_create_terminus_durability(terminus_durability value)
Azure.IoT Build 0:6ae2f7bca550 9030 {
Azure.IoT Build 0:6ae2f7bca550 9031 return amqpvalue_create_uint(value);
Azure.IoT Build 0:6ae2f7bca550 9032 }
Azure.IoT Build 0:6ae2f7bca550 9033
Azure.IoT Build 0:6ae2f7bca550 9034 /* terminus-expiry-policy */
Azure.IoT Build 0:6ae2f7bca550 9035
Azure.IoT Build 0:6ae2f7bca550 9036 AMQP_VALUE amqpvalue_create_terminus_expiry_policy(terminus_expiry_policy value)
Azure.IoT Build 0:6ae2f7bca550 9037 {
Azure.IoT Build 0:6ae2f7bca550 9038 return amqpvalue_create_symbol(value);
Azure.IoT Build 0:6ae2f7bca550 9039 }
Azure.IoT Build 0:6ae2f7bca550 9040
Azure.IoT Build 0:6ae2f7bca550 9041 /* node-properties */
Azure.IoT Build 0:6ae2f7bca550 9042
Azure.IoT Build 0:6ae2f7bca550 9043 AMQP_VALUE amqpvalue_create_node_properties(node_properties value)
Azure.IoT Build 0:6ae2f7bca550 9044 {
Azure.IoT Build 0:6ae2f7bca550 9045 return amqpvalue_create_fields(value);
Azure.IoT Build 0:6ae2f7bca550 9046 }
Azure.IoT Build 0:6ae2f7bca550 9047
Azure.IoT Build 0:6ae2f7bca550 9048 /* filter-set */
Azure.IoT Build 0:6ae2f7bca550 9049
Azure.IoT Build 0:6ae2f7bca550 9050 AMQP_VALUE amqpvalue_create_filter_set(AMQP_VALUE value)
Azure.IoT Build 0:6ae2f7bca550 9051 {
Azure.IoT Build 0:6ae2f7bca550 9052 return amqpvalue_clone(value);
Azure.IoT Build 0:6ae2f7bca550 9053 }
Azure.IoT Build 0:6ae2f7bca550 9054
Azure.IoT Build 0:6ae2f7bca550 9055 /* source */
Azure.IoT Build 0:6ae2f7bca550 9056
Azure.IoT Build 0:6ae2f7bca550 9057 typedef struct SOURCE_INSTANCE_TAG
Azure.IoT Build 0:6ae2f7bca550 9058 {
Azure.IoT Build 0:6ae2f7bca550 9059 AMQP_VALUE composite_value;
Azure.IoT Build 0:6ae2f7bca550 9060 } SOURCE_INSTANCE;
Azure.IoT Build 0:6ae2f7bca550 9061
Azure.IoT Build 0:6ae2f7bca550 9062 static SOURCE_HANDLE source_create_internal(void)
Azure.IoT Build 0:6ae2f7bca550 9063 {
Azure.IoT Build 0:6ae2f7bca550 9064 SOURCE_INSTANCE* source_instance = (SOURCE_INSTANCE*)amqpalloc_malloc(sizeof(SOURCE_INSTANCE));
Azure.IoT Build 0:6ae2f7bca550 9065 if (source_instance != NULL)
Azure.IoT Build 0:6ae2f7bca550 9066 {
Azure.IoT Build 0:6ae2f7bca550 9067 source_instance->composite_value = NULL;
Azure.IoT Build 0:6ae2f7bca550 9068 }
Azure.IoT Build 0:6ae2f7bca550 9069
Azure.IoT Build 0:6ae2f7bca550 9070 return source_instance;
Azure.IoT Build 0:6ae2f7bca550 9071 }
Azure.IoT Build 0:6ae2f7bca550 9072
Azure.IoT Build 0:6ae2f7bca550 9073 SOURCE_HANDLE source_create(void)
Azure.IoT Build 0:6ae2f7bca550 9074 {
Azure.IoT Build 0:6ae2f7bca550 9075 SOURCE_INSTANCE* source_instance = (SOURCE_INSTANCE*)amqpalloc_malloc(sizeof(SOURCE_INSTANCE));
Azure.IoT Build 0:6ae2f7bca550 9076 if (source_instance != NULL)
Azure.IoT Build 0:6ae2f7bca550 9077 {
Azure.IoT Build 0:6ae2f7bca550 9078 source_instance->composite_value = amqpvalue_create_composite_with_ulong_descriptor(40);
Azure.IoT Build 0:6ae2f7bca550 9079 if (source_instance->composite_value == NULL)
Azure.IoT Build 0:6ae2f7bca550 9080 {
Azure.IoT Build 0:6ae2f7bca550 9081 amqpalloc_free(source_instance);
Azure.IoT Build 0:6ae2f7bca550 9082 source_instance = NULL;
Azure.IoT Build 0:6ae2f7bca550 9083 }
Azure.IoT Build 0:6ae2f7bca550 9084 }
Azure.IoT Build 0:6ae2f7bca550 9085
Azure.IoT Build 0:6ae2f7bca550 9086 return source_instance;
Azure.IoT Build 0:6ae2f7bca550 9087 }
Azure.IoT Build 0:6ae2f7bca550 9088
Azure.IoT Build 0:6ae2f7bca550 9089 SOURCE_HANDLE source_clone(SOURCE_HANDLE value)
Azure.IoT Build 0:6ae2f7bca550 9090 {
Azure.IoT Build 0:6ae2f7bca550 9091 SOURCE_INSTANCE* source_instance = (SOURCE_INSTANCE*)amqpalloc_malloc(sizeof(SOURCE_INSTANCE));
Azure.IoT Build 0:6ae2f7bca550 9092 if (source_instance != NULL)
Azure.IoT Build 0:6ae2f7bca550 9093 {
Azure.IoT Build 0:6ae2f7bca550 9094 source_instance->composite_value = amqpvalue_clone(((SOURCE_INSTANCE*)value)->composite_value);
Azure.IoT Build 0:6ae2f7bca550 9095 if (source_instance->composite_value == NULL)
Azure.IoT Build 0:6ae2f7bca550 9096 {
Azure.IoT Build 0:6ae2f7bca550 9097 amqpalloc_free(source_instance);
Azure.IoT Build 0:6ae2f7bca550 9098 source_instance = NULL;
Azure.IoT Build 0:6ae2f7bca550 9099 }
Azure.IoT Build 0:6ae2f7bca550 9100 }
Azure.IoT Build 0:6ae2f7bca550 9101
Azure.IoT Build 0:6ae2f7bca550 9102 return source_instance;
Azure.IoT Build 0:6ae2f7bca550 9103 }
Azure.IoT Build 0:6ae2f7bca550 9104
Azure.IoT Build 0:6ae2f7bca550 9105 void source_destroy(SOURCE_HANDLE source)
Azure.IoT Build 0:6ae2f7bca550 9106 {
Azure.IoT Build 0:6ae2f7bca550 9107 if (source != NULL)
Azure.IoT Build 0:6ae2f7bca550 9108 {
Azure.IoT Build 0:6ae2f7bca550 9109 SOURCE_INSTANCE* source_instance = (SOURCE_INSTANCE*)source;
Azure.IoT Build 0:6ae2f7bca550 9110 amqpvalue_destroy(source_instance->composite_value);
Azure.IoT Build 0:6ae2f7bca550 9111 amqpalloc_free(source_instance);
Azure.IoT Build 0:6ae2f7bca550 9112 }
Azure.IoT Build 0:6ae2f7bca550 9113 }
Azure.IoT Build 0:6ae2f7bca550 9114
Azure.IoT Build 0:6ae2f7bca550 9115 AMQP_VALUE amqpvalue_create_source(SOURCE_HANDLE source)
Azure.IoT Build 0:6ae2f7bca550 9116 {
Azure.IoT Build 0:6ae2f7bca550 9117 AMQP_VALUE result;
Azure.IoT Build 0:6ae2f7bca550 9118
Azure.IoT Build 0:6ae2f7bca550 9119 if (source == NULL)
Azure.IoT Build 0:6ae2f7bca550 9120 {
Azure.IoT Build 0:6ae2f7bca550 9121 result = NULL;
Azure.IoT Build 0:6ae2f7bca550 9122 }
Azure.IoT Build 0:6ae2f7bca550 9123 else
Azure.IoT Build 0:6ae2f7bca550 9124 {
Azure.IoT Build 0:6ae2f7bca550 9125 SOURCE_INSTANCE* source_instance = (SOURCE_INSTANCE*)source;
Azure.IoT Build 0:6ae2f7bca550 9126 result = amqpvalue_clone(source_instance->composite_value);
Azure.IoT Build 0:6ae2f7bca550 9127 }
Azure.IoT Build 0:6ae2f7bca550 9128
Azure.IoT Build 0:6ae2f7bca550 9129 return result;
Azure.IoT Build 0:6ae2f7bca550 9130 }
Azure.IoT Build 0:6ae2f7bca550 9131
Azure.IoT Build 0:6ae2f7bca550 9132 bool is_source_type_by_descriptor(AMQP_VALUE descriptor)
Azure.IoT Build 0:6ae2f7bca550 9133 {
Azure.IoT Build 0:6ae2f7bca550 9134 bool result;
Azure.IoT Build 0:6ae2f7bca550 9135
Azure.IoT Build 0:6ae2f7bca550 9136 uint64_t descriptor_ulong;
Azure.IoT Build 0:6ae2f7bca550 9137 if ((amqpvalue_get_ulong(descriptor, &descriptor_ulong) == 0) &&
Azure.IoT Build 0:6ae2f7bca550 9138 (descriptor_ulong == 40))
Azure.IoT Build 0:6ae2f7bca550 9139 {
Azure.IoT Build 0:6ae2f7bca550 9140 result = true;
Azure.IoT Build 0:6ae2f7bca550 9141 }
Azure.IoT Build 0:6ae2f7bca550 9142 else
Azure.IoT Build 0:6ae2f7bca550 9143 {
Azure.IoT Build 0:6ae2f7bca550 9144 result = false;
Azure.IoT Build 0:6ae2f7bca550 9145 }
Azure.IoT Build 0:6ae2f7bca550 9146
Azure.IoT Build 0:6ae2f7bca550 9147 return result;
Azure.IoT Build 0:6ae2f7bca550 9148 }
Azure.IoT Build 0:6ae2f7bca550 9149
Azure.IoT Build 0:6ae2f7bca550 9150
Azure.IoT Build 0:6ae2f7bca550 9151 int amqpvalue_get_source(AMQP_VALUE value, SOURCE_HANDLE* source_handle)
Azure.IoT Build 0:6ae2f7bca550 9152 {
Azure.IoT Build 0:6ae2f7bca550 9153 int result;
Azure.IoT Build 0:6ae2f7bca550 9154 SOURCE_INSTANCE* source_instance = (SOURCE_INSTANCE*)source_create_internal();
Azure.IoT Build 0:6ae2f7bca550 9155 *source_handle = source_instance;
Azure.IoT Build 0:6ae2f7bca550 9156 if (*source_handle == NULL)
Azure.IoT Build 0:6ae2f7bca550 9157 {
Azure.IoT Build 0:6ae2f7bca550 9158 result = __LINE__;
Azure.IoT Build 0:6ae2f7bca550 9159 }
Azure.IoT Build 0:6ae2f7bca550 9160 else
Azure.IoT Build 0:6ae2f7bca550 9161 {
Azure.IoT Build 0:6ae2f7bca550 9162 AMQP_VALUE list_value = amqpvalue_get_inplace_described_value(value);
Azure.IoT Build 0:6ae2f7bca550 9163 if (list_value == NULL)
Azure.IoT Build 0:6ae2f7bca550 9164 {
Azure.IoT Build 0:6ae2f7bca550 9165 source_destroy(*source_handle);
Azure.IoT Build 0:6ae2f7bca550 9166 result = __LINE__;
Azure.IoT Build 0:6ae2f7bca550 9167 }
Azure.IoT Build 0:6ae2f7bca550 9168 else
Azure.IoT Build 0:6ae2f7bca550 9169 {
Azure.IoT Build 0:6ae2f7bca550 9170 do
Azure.IoT Build 0:6ae2f7bca550 9171 {
Azure.IoT Build 0:6ae2f7bca550 9172 AMQP_VALUE item_value;
Azure.IoT Build 0:6ae2f7bca550 9173 /* address */
Azure.IoT Build 0:6ae2f7bca550 9174 item_value = amqpvalue_get_list_item(list_value, 0);
Azure.IoT Build 0:6ae2f7bca550 9175 if (item_value == NULL)
Azure.IoT Build 0:6ae2f7bca550 9176 {
Azure.IoT Build 0:6ae2f7bca550 9177 /* do nothing */
Azure.IoT Build 0:6ae2f7bca550 9178 }
Azure.IoT Build 0:6ae2f7bca550 9179 else
Azure.IoT Build 0:6ae2f7bca550 9180 {
Azure.IoT Build 0:6ae2f7bca550 9181 amqpvalue_destroy(item_value);
Azure.IoT Build 0:6ae2f7bca550 9182 }
Azure.IoT Build 0:6ae2f7bca550 9183 /* durable */
Azure.IoT Build 0:6ae2f7bca550 9184 item_value = amqpvalue_get_list_item(list_value, 1);
Azure.IoT Build 0:6ae2f7bca550 9185 if (item_value == NULL)
Azure.IoT Build 0:6ae2f7bca550 9186 {
Azure.IoT Build 0:6ae2f7bca550 9187 /* do nothing */
Azure.IoT Build 0:6ae2f7bca550 9188 }
Azure.IoT Build 0:6ae2f7bca550 9189 else
Azure.IoT Build 0:6ae2f7bca550 9190 {
Azure.IoT Build 0:6ae2f7bca550 9191 terminus_durability durable;
Azure.IoT Build 0:6ae2f7bca550 9192 if (amqpvalue_get_terminus_durability(item_value, &durable) != 0)
Azure.IoT Build 0:6ae2f7bca550 9193 {
Azure.IoT Build 0:6ae2f7bca550 9194 if (amqpvalue_get_type(item_value) != AMQP_TYPE_NULL)
Azure.IoT Build 0:6ae2f7bca550 9195 {
Azure.IoT Build 0:6ae2f7bca550 9196 source_destroy(*source_handle);
Azure.IoT Build 0:6ae2f7bca550 9197 result = __LINE__;
Azure.IoT Build 0:6ae2f7bca550 9198 break;
Azure.IoT Build 0:6ae2f7bca550 9199 }
Azure.IoT Build 0:6ae2f7bca550 9200 }
Azure.IoT Build 0:6ae2f7bca550 9201
Azure.IoT Build 0:6ae2f7bca550 9202 amqpvalue_destroy(item_value);
Azure.IoT Build 0:6ae2f7bca550 9203 }
Azure.IoT Build 0:6ae2f7bca550 9204 /* expiry-policy */
Azure.IoT Build 0:6ae2f7bca550 9205 item_value = amqpvalue_get_list_item(list_value, 2);
Azure.IoT Build 0:6ae2f7bca550 9206 if (item_value == NULL)
Azure.IoT Build 0:6ae2f7bca550 9207 {
Azure.IoT Build 0:6ae2f7bca550 9208 /* do nothing */
Azure.IoT Build 0:6ae2f7bca550 9209 }
Azure.IoT Build 0:6ae2f7bca550 9210 else
Azure.IoT Build 0:6ae2f7bca550 9211 {
Azure.IoT Build 0:6ae2f7bca550 9212 terminus_expiry_policy expiry_policy;
Azure.IoT Build 0:6ae2f7bca550 9213 if (amqpvalue_get_terminus_expiry_policy(item_value, &expiry_policy) != 0)
Azure.IoT Build 0:6ae2f7bca550 9214 {
Azure.IoT Build 0:6ae2f7bca550 9215 if (amqpvalue_get_type(item_value) != AMQP_TYPE_NULL)
Azure.IoT Build 0:6ae2f7bca550 9216 {
Azure.IoT Build 0:6ae2f7bca550 9217 source_destroy(*source_handle);
Azure.IoT Build 0:6ae2f7bca550 9218 result = __LINE__;
Azure.IoT Build 0:6ae2f7bca550 9219 break;
Azure.IoT Build 0:6ae2f7bca550 9220 }
Azure.IoT Build 0:6ae2f7bca550 9221 }
Azure.IoT Build 0:6ae2f7bca550 9222
Azure.IoT Build 0:6ae2f7bca550 9223 amqpvalue_destroy(item_value);
Azure.IoT Build 0:6ae2f7bca550 9224 }
Azure.IoT Build 0:6ae2f7bca550 9225 /* timeout */
Azure.IoT Build 0:6ae2f7bca550 9226 item_value = amqpvalue_get_list_item(list_value, 3);
Azure.IoT Build 0:6ae2f7bca550 9227 if (item_value == NULL)
Azure.IoT Build 0:6ae2f7bca550 9228 {
Azure.IoT Build 0:6ae2f7bca550 9229 /* do nothing */
Azure.IoT Build 0:6ae2f7bca550 9230 }
Azure.IoT Build 0:6ae2f7bca550 9231 else
Azure.IoT Build 0:6ae2f7bca550 9232 {
Azure.IoT Build 0:6ae2f7bca550 9233 seconds timeout;
Azure.IoT Build 0:6ae2f7bca550 9234 if (amqpvalue_get_seconds(item_value, &timeout) != 0)
Azure.IoT Build 0:6ae2f7bca550 9235 {
Azure.IoT Build 0:6ae2f7bca550 9236 if (amqpvalue_get_type(item_value) != AMQP_TYPE_NULL)
Azure.IoT Build 0:6ae2f7bca550 9237 {
Azure.IoT Build 0:6ae2f7bca550 9238 source_destroy(*source_handle);
Azure.IoT Build 0:6ae2f7bca550 9239 result = __LINE__;
Azure.IoT Build 0:6ae2f7bca550 9240 break;
Azure.IoT Build 0:6ae2f7bca550 9241 }
Azure.IoT Build 0:6ae2f7bca550 9242 }
Azure.IoT Build 0:6ae2f7bca550 9243
Azure.IoT Build 0:6ae2f7bca550 9244 amqpvalue_destroy(item_value);
Azure.IoT Build 0:6ae2f7bca550 9245 }
Azure.IoT Build 0:6ae2f7bca550 9246 /* dynamic */
Azure.IoT Build 0:6ae2f7bca550 9247 item_value = amqpvalue_get_list_item(list_value, 4);
Azure.IoT Build 0:6ae2f7bca550 9248 if (item_value == NULL)
Azure.IoT Build 0:6ae2f7bca550 9249 {
Azure.IoT Build 0:6ae2f7bca550 9250 /* do nothing */
Azure.IoT Build 0:6ae2f7bca550 9251 }
Azure.IoT Build 0:6ae2f7bca550 9252 else
Azure.IoT Build 0:6ae2f7bca550 9253 {
Azure.IoT Build 0:6ae2f7bca550 9254 bool dynamic;
Azure.IoT Build 0:6ae2f7bca550 9255 if (amqpvalue_get_boolean(item_value, &dynamic) != 0)
Azure.IoT Build 0:6ae2f7bca550 9256 {
Azure.IoT Build 0:6ae2f7bca550 9257 if (amqpvalue_get_type(item_value) != AMQP_TYPE_NULL)
Azure.IoT Build 0:6ae2f7bca550 9258 {
Azure.IoT Build 0:6ae2f7bca550 9259 source_destroy(*source_handle);
Azure.IoT Build 0:6ae2f7bca550 9260 result = __LINE__;
Azure.IoT Build 0:6ae2f7bca550 9261 break;
Azure.IoT Build 0:6ae2f7bca550 9262 }
Azure.IoT Build 0:6ae2f7bca550 9263 }
Azure.IoT Build 0:6ae2f7bca550 9264
Azure.IoT Build 0:6ae2f7bca550 9265 amqpvalue_destroy(item_value);
Azure.IoT Build 0:6ae2f7bca550 9266 }
Azure.IoT Build 0:6ae2f7bca550 9267 /* dynamic-node-properties */
Azure.IoT Build 0:6ae2f7bca550 9268 item_value = amqpvalue_get_list_item(list_value, 5);
Azure.IoT Build 0:6ae2f7bca550 9269 if (item_value == NULL)
Azure.IoT Build 0:6ae2f7bca550 9270 {
Azure.IoT Build 0:6ae2f7bca550 9271 /* do nothing */
Azure.IoT Build 0:6ae2f7bca550 9272 }
Azure.IoT Build 0:6ae2f7bca550 9273 else
Azure.IoT Build 0:6ae2f7bca550 9274 {
Azure.IoT Build 0:6ae2f7bca550 9275 node_properties dynamic_node_properties;
Azure.IoT Build 0:6ae2f7bca550 9276 if (amqpvalue_get_node_properties(item_value, &dynamic_node_properties) != 0)
Azure.IoT Build 0:6ae2f7bca550 9277 {
Azure.IoT Build 0:6ae2f7bca550 9278 if (amqpvalue_get_type(item_value) != AMQP_TYPE_NULL)
Azure.IoT Build 0:6ae2f7bca550 9279 {
Azure.IoT Build 0:6ae2f7bca550 9280 source_destroy(*source_handle);
Azure.IoT Build 0:6ae2f7bca550 9281 result = __LINE__;
Azure.IoT Build 0:6ae2f7bca550 9282 break;
Azure.IoT Build 0:6ae2f7bca550 9283 }
Azure.IoT Build 0:6ae2f7bca550 9284 }
Azure.IoT Build 0:6ae2f7bca550 9285
Azure.IoT Build 0:6ae2f7bca550 9286 amqpvalue_destroy(item_value);
Azure.IoT Build 0:6ae2f7bca550 9287 }
Azure.IoT Build 0:6ae2f7bca550 9288 /* distribution-mode */
Azure.IoT Build 0:6ae2f7bca550 9289 item_value = amqpvalue_get_list_item(list_value, 6);
Azure.IoT Build 0:6ae2f7bca550 9290 if (item_value == NULL)
Azure.IoT Build 0:6ae2f7bca550 9291 {
Azure.IoT Build 0:6ae2f7bca550 9292 /* do nothing */
Azure.IoT Build 0:6ae2f7bca550 9293 }
Azure.IoT Build 0:6ae2f7bca550 9294 else
Azure.IoT Build 0:6ae2f7bca550 9295 {
Azure.IoT Build 0:6ae2f7bca550 9296 const char* distribution_mode;
Azure.IoT Build 0:6ae2f7bca550 9297 if (amqpvalue_get_symbol(item_value, &distribution_mode) != 0)
Azure.IoT Build 0:6ae2f7bca550 9298 {
Azure.IoT Build 0:6ae2f7bca550 9299 if (amqpvalue_get_type(item_value) != AMQP_TYPE_NULL)
Azure.IoT Build 0:6ae2f7bca550 9300 {
Azure.IoT Build 0:6ae2f7bca550 9301 source_destroy(*source_handle);
Azure.IoT Build 0:6ae2f7bca550 9302 result = __LINE__;
Azure.IoT Build 0:6ae2f7bca550 9303 break;
Azure.IoT Build 0:6ae2f7bca550 9304 }
Azure.IoT Build 0:6ae2f7bca550 9305 }
Azure.IoT Build 0:6ae2f7bca550 9306
Azure.IoT Build 0:6ae2f7bca550 9307 amqpvalue_destroy(item_value);
Azure.IoT Build 0:6ae2f7bca550 9308 }
Azure.IoT Build 0:6ae2f7bca550 9309 /* filter */
Azure.IoT Build 0:6ae2f7bca550 9310 item_value = amqpvalue_get_list_item(list_value, 7);
Azure.IoT Build 0:6ae2f7bca550 9311 if (item_value == NULL)
Azure.IoT Build 0:6ae2f7bca550 9312 {
Azure.IoT Build 0:6ae2f7bca550 9313 /* do nothing */
Azure.IoT Build 0:6ae2f7bca550 9314 }
Azure.IoT Build 0:6ae2f7bca550 9315 else
Azure.IoT Build 0:6ae2f7bca550 9316 {
Azure.IoT Build 0:6ae2f7bca550 9317 filter_set filter;
Azure.IoT Build 0:6ae2f7bca550 9318 if (amqpvalue_get_filter_set(item_value, &filter) != 0)
Azure.IoT Build 0:6ae2f7bca550 9319 {
Azure.IoT Build 0:6ae2f7bca550 9320 if (amqpvalue_get_type(item_value) != AMQP_TYPE_NULL)
Azure.IoT Build 0:6ae2f7bca550 9321 {
Azure.IoT Build 0:6ae2f7bca550 9322 source_destroy(*source_handle);
Azure.IoT Build 0:6ae2f7bca550 9323 result = __LINE__;
Azure.IoT Build 0:6ae2f7bca550 9324 break;
Azure.IoT Build 0:6ae2f7bca550 9325 }
Azure.IoT Build 0:6ae2f7bca550 9326 }
Azure.IoT Build 0:6ae2f7bca550 9327
Azure.IoT Build 0:6ae2f7bca550 9328 amqpvalue_destroy(item_value);
Azure.IoT Build 0:6ae2f7bca550 9329 }
Azure.IoT Build 0:6ae2f7bca550 9330 /* default-outcome */
Azure.IoT Build 0:6ae2f7bca550 9331 item_value = amqpvalue_get_list_item(list_value, 8);
Azure.IoT Build 0:6ae2f7bca550 9332 if (item_value == NULL)
Azure.IoT Build 0:6ae2f7bca550 9333 {
Azure.IoT Build 0:6ae2f7bca550 9334 /* do nothing */
Azure.IoT Build 0:6ae2f7bca550 9335 }
Azure.IoT Build 0:6ae2f7bca550 9336 else
Azure.IoT Build 0:6ae2f7bca550 9337 {
Azure.IoT Build 0:6ae2f7bca550 9338 amqpvalue_destroy(item_value);
Azure.IoT Build 0:6ae2f7bca550 9339 }
Azure.IoT Build 0:6ae2f7bca550 9340 /* outcomes */
Azure.IoT Build 0:6ae2f7bca550 9341 item_value = amqpvalue_get_list_item(list_value, 9);
Azure.IoT Build 0:6ae2f7bca550 9342 if (item_value == NULL)
Azure.IoT Build 0:6ae2f7bca550 9343 {
Azure.IoT Build 0:6ae2f7bca550 9344 /* do nothing */
Azure.IoT Build 0:6ae2f7bca550 9345 }
Azure.IoT Build 0:6ae2f7bca550 9346 else
Azure.IoT Build 0:6ae2f7bca550 9347 {
Azure.IoT Build 0:6ae2f7bca550 9348 const char* outcomes;
Azure.IoT Build 0:6ae2f7bca550 9349 AMQP_VALUE outcomes_array;
Azure.IoT Build 0:6ae2f7bca550 9350 if ((amqpvalue_get_array(item_value, &outcomes_array) != 0) &&
Azure.IoT Build 0:6ae2f7bca550 9351 (amqpvalue_get_symbol(item_value, &outcomes) != 0))
Azure.IoT Build 0:6ae2f7bca550 9352 {
Azure.IoT Build 0:6ae2f7bca550 9353 if (amqpvalue_get_type(item_value) != AMQP_TYPE_NULL)
Azure.IoT Build 0:6ae2f7bca550 9354 {
Azure.IoT Build 0:6ae2f7bca550 9355 source_destroy(*source_handle);
Azure.IoT Build 0:6ae2f7bca550 9356 result = __LINE__;
Azure.IoT Build 0:6ae2f7bca550 9357 break;
Azure.IoT Build 0:6ae2f7bca550 9358 }
Azure.IoT Build 0:6ae2f7bca550 9359 }
Azure.IoT Build 0:6ae2f7bca550 9360
Azure.IoT Build 0:6ae2f7bca550 9361 amqpvalue_destroy(item_value);
Azure.IoT Build 0:6ae2f7bca550 9362 }
Azure.IoT Build 0:6ae2f7bca550 9363 /* capabilities */
Azure.IoT Build 0:6ae2f7bca550 9364 item_value = amqpvalue_get_list_item(list_value, 10);
Azure.IoT Build 0:6ae2f7bca550 9365 if (item_value == NULL)
Azure.IoT Build 0:6ae2f7bca550 9366 {
Azure.IoT Build 0:6ae2f7bca550 9367 /* do nothing */
Azure.IoT Build 0:6ae2f7bca550 9368 }
Azure.IoT Build 0:6ae2f7bca550 9369 else
Azure.IoT Build 0:6ae2f7bca550 9370 {
Azure.IoT Build 0:6ae2f7bca550 9371 const char* capabilities;
Azure.IoT Build 0:6ae2f7bca550 9372 AMQP_VALUE capabilities_array;
Azure.IoT Build 0:6ae2f7bca550 9373 if ((amqpvalue_get_array(item_value, &capabilities_array) != 0) &&
Azure.IoT Build 0:6ae2f7bca550 9374 (amqpvalue_get_symbol(item_value, &capabilities) != 0))
Azure.IoT Build 0:6ae2f7bca550 9375 {
Azure.IoT Build 0:6ae2f7bca550 9376 if (amqpvalue_get_type(item_value) != AMQP_TYPE_NULL)
Azure.IoT Build 0:6ae2f7bca550 9377 {
Azure.IoT Build 0:6ae2f7bca550 9378 source_destroy(*source_handle);
Azure.IoT Build 0:6ae2f7bca550 9379 result = __LINE__;
Azure.IoT Build 0:6ae2f7bca550 9380 break;
Azure.IoT Build 0:6ae2f7bca550 9381 }
Azure.IoT Build 0:6ae2f7bca550 9382 }
Azure.IoT Build 0:6ae2f7bca550 9383
Azure.IoT Build 0:6ae2f7bca550 9384 amqpvalue_destroy(item_value);
Azure.IoT Build 0:6ae2f7bca550 9385 }
Azure.IoT Build 0:6ae2f7bca550 9386
Azure.IoT Build 0:6ae2f7bca550 9387 source_instance->composite_value = amqpvalue_clone(value);
Azure.IoT Build 0:6ae2f7bca550 9388
Azure.IoT Build 0:6ae2f7bca550 9389 result = 0;
Azure.IoT Build 0:6ae2f7bca550 9390 } while (0);
Azure.IoT Build 0:6ae2f7bca550 9391 }
Azure.IoT Build 0:6ae2f7bca550 9392 }
Azure.IoT Build 0:6ae2f7bca550 9393
Azure.IoT Build 0:6ae2f7bca550 9394 return result;
Azure.IoT Build 0:6ae2f7bca550 9395 }
Azure.IoT Build 0:6ae2f7bca550 9396
Azure.IoT Build 0:6ae2f7bca550 9397 int source_get_address(SOURCE_HANDLE source, AMQP_VALUE* address_value)
Azure.IoT Build 0:6ae2f7bca550 9398 {
Azure.IoT Build 0:6ae2f7bca550 9399 int result;
Azure.IoT Build 0:6ae2f7bca550 9400
Azure.IoT Build 0:6ae2f7bca550 9401 if (source == NULL)
Azure.IoT Build 0:6ae2f7bca550 9402 {
Azure.IoT Build 0:6ae2f7bca550 9403 result = __LINE__;
Azure.IoT Build 0:6ae2f7bca550 9404 }
Azure.IoT Build 0:6ae2f7bca550 9405 else
Azure.IoT Build 0:6ae2f7bca550 9406 {
Azure.IoT Build 0:6ae2f7bca550 9407 SOURCE_INSTANCE* source_instance = (SOURCE_INSTANCE*)source;
Azure.IoT Build 0:6ae2f7bca550 9408 AMQP_VALUE item_value = amqpvalue_get_composite_item_in_place(source_instance->composite_value, 0);
Azure.IoT Build 0:6ae2f7bca550 9409 if (item_value == NULL)
Azure.IoT Build 0:6ae2f7bca550 9410 {
Azure.IoT Build 0:6ae2f7bca550 9411 result = __LINE__;
Azure.IoT Build 0:6ae2f7bca550 9412 }
Azure.IoT Build 0:6ae2f7bca550 9413 else
Azure.IoT Build 0:6ae2f7bca550 9414 {
Azure.IoT Build 0:6ae2f7bca550 9415 *address_value = item_value;
Azure.IoT Build 0:6ae2f7bca550 9416 result = 0;
Azure.IoT Build 0:6ae2f7bca550 9417 }
Azure.IoT Build 0:6ae2f7bca550 9418 }
Azure.IoT Build 0:6ae2f7bca550 9419
Azure.IoT Build 0:6ae2f7bca550 9420 return result;
Azure.IoT Build 0:6ae2f7bca550 9421 }
Azure.IoT Build 0:6ae2f7bca550 9422
Azure.IoT Build 0:6ae2f7bca550 9423 int source_set_address(SOURCE_HANDLE source, AMQP_VALUE address_value)
Azure.IoT Build 0:6ae2f7bca550 9424 {
Azure.IoT Build 0:6ae2f7bca550 9425 int result;
Azure.IoT Build 0:6ae2f7bca550 9426
Azure.IoT Build 0:6ae2f7bca550 9427 if (source == NULL)
Azure.IoT Build 0:6ae2f7bca550 9428 {
Azure.IoT Build 0:6ae2f7bca550 9429 result = __LINE__;
Azure.IoT Build 0:6ae2f7bca550 9430 }
Azure.IoT Build 0:6ae2f7bca550 9431 else
Azure.IoT Build 0:6ae2f7bca550 9432 {
Azure.IoT Build 0:6ae2f7bca550 9433 SOURCE_INSTANCE* source_instance = (SOURCE_INSTANCE*)source;
Azure.IoT Build 0:6ae2f7bca550 9434 AMQP_VALUE address_amqp_value = amqpvalue_clone(address_value);
Azure.IoT Build 0:6ae2f7bca550 9435 if (address_amqp_value == NULL)
Azure.IoT Build 0:6ae2f7bca550 9436 {
Azure.IoT Build 0:6ae2f7bca550 9437 result = __LINE__;
Azure.IoT Build 0:6ae2f7bca550 9438 }
Azure.IoT Build 0:6ae2f7bca550 9439 else
Azure.IoT Build 0:6ae2f7bca550 9440 {
Azure.IoT Build 0:6ae2f7bca550 9441 if (amqpvalue_set_composite_item(source_instance->composite_value, 0, address_amqp_value) != 0)
Azure.IoT Build 0:6ae2f7bca550 9442 {
Azure.IoT Build 0:6ae2f7bca550 9443 result = __LINE__;
Azure.IoT Build 0:6ae2f7bca550 9444 }
Azure.IoT Build 0:6ae2f7bca550 9445 else
Azure.IoT Build 0:6ae2f7bca550 9446 {
Azure.IoT Build 0:6ae2f7bca550 9447 result = 0;
Azure.IoT Build 0:6ae2f7bca550 9448 }
Azure.IoT Build 0:6ae2f7bca550 9449
Azure.IoT Build 0:6ae2f7bca550 9450 amqpvalue_destroy(address_amqp_value);
Azure.IoT Build 0:6ae2f7bca550 9451 }
Azure.IoT Build 0:6ae2f7bca550 9452 }
Azure.IoT Build 0:6ae2f7bca550 9453
Azure.IoT Build 0:6ae2f7bca550 9454 return result;
Azure.IoT Build 0:6ae2f7bca550 9455 }
Azure.IoT Build 0:6ae2f7bca550 9456
Azure.IoT Build 0:6ae2f7bca550 9457 int source_get_durable(SOURCE_HANDLE source, terminus_durability* durable_value)
Azure.IoT Build 0:6ae2f7bca550 9458 {
Azure.IoT Build 0:6ae2f7bca550 9459 int result;
Azure.IoT Build 0:6ae2f7bca550 9460
Azure.IoT Build 0:6ae2f7bca550 9461 if (source == NULL)
Azure.IoT Build 0:6ae2f7bca550 9462 {
Azure.IoT Build 0:6ae2f7bca550 9463 result = __LINE__;
Azure.IoT Build 0:6ae2f7bca550 9464 }
Azure.IoT Build 0:6ae2f7bca550 9465 else
Azure.IoT Build 0:6ae2f7bca550 9466 {
Azure.IoT Build 0:6ae2f7bca550 9467 SOURCE_INSTANCE* source_instance = (SOURCE_INSTANCE*)source;
Azure.IoT Build 0:6ae2f7bca550 9468 AMQP_VALUE item_value = amqpvalue_get_composite_item_in_place(source_instance->composite_value, 1);
Azure.IoT Build 0:6ae2f7bca550 9469 if (item_value == NULL)
Azure.IoT Build 0:6ae2f7bca550 9470 {
AzureIoTClient 16:22a72cf8e416 9471 *durable_value = terminus_durability_none;
AzureIoTClient 16:22a72cf8e416 9472 result = 0;
Azure.IoT Build 0:6ae2f7bca550 9473 }
Azure.IoT Build 0:6ae2f7bca550 9474 else
Azure.IoT Build 0:6ae2f7bca550 9475 {
Azure.IoT Build 0:6ae2f7bca550 9476 if (amqpvalue_get_terminus_durability(item_value, durable_value) != 0)
Azure.IoT Build 0:6ae2f7bca550 9477 {
AzureIoTClient 16:22a72cf8e416 9478 if (amqpvalue_get_type(item_value) == AMQP_TYPE_NULL)
AzureIoTClient 16:22a72cf8e416 9479 {
AzureIoTClient 16:22a72cf8e416 9480 result = __LINE__;
AzureIoTClient 16:22a72cf8e416 9481 }
AzureIoTClient 16:22a72cf8e416 9482 else
AzureIoTClient 16:22a72cf8e416 9483 {
AzureIoTClient 16:22a72cf8e416 9484 *durable_value = terminus_durability_none;
AzureIoTClient 16:22a72cf8e416 9485 result = 0;
AzureIoTClient 16:22a72cf8e416 9486 }
Azure.IoT Build 0:6ae2f7bca550 9487 }
Azure.IoT Build 0:6ae2f7bca550 9488 else
Azure.IoT Build 0:6ae2f7bca550 9489 {
Azure.IoT Build 0:6ae2f7bca550 9490 result = 0;
Azure.IoT Build 0:6ae2f7bca550 9491 }
Azure.IoT Build 0:6ae2f7bca550 9492 }
Azure.IoT Build 0:6ae2f7bca550 9493 }
Azure.IoT Build 0:6ae2f7bca550 9494
Azure.IoT Build 0:6ae2f7bca550 9495 return result;
Azure.IoT Build 0:6ae2f7bca550 9496 }
Azure.IoT Build 0:6ae2f7bca550 9497
Azure.IoT Build 0:6ae2f7bca550 9498 int source_set_durable(SOURCE_HANDLE source, terminus_durability durable_value)
Azure.IoT Build 0:6ae2f7bca550 9499 {
Azure.IoT Build 0:6ae2f7bca550 9500 int result;
Azure.IoT Build 0:6ae2f7bca550 9501
Azure.IoT Build 0:6ae2f7bca550 9502 if (source == NULL)
Azure.IoT Build 0:6ae2f7bca550 9503 {
Azure.IoT Build 0:6ae2f7bca550 9504 result = __LINE__;
Azure.IoT Build 0:6ae2f7bca550 9505 }
Azure.IoT Build 0:6ae2f7bca550 9506 else
Azure.IoT Build 0:6ae2f7bca550 9507 {
Azure.IoT Build 0:6ae2f7bca550 9508 SOURCE_INSTANCE* source_instance = (SOURCE_INSTANCE*)source;
Azure.IoT Build 0:6ae2f7bca550 9509 AMQP_VALUE durable_amqp_value = amqpvalue_create_terminus_durability(durable_value);
Azure.IoT Build 0:6ae2f7bca550 9510 if (durable_amqp_value == NULL)
Azure.IoT Build 0:6ae2f7bca550 9511 {
Azure.IoT Build 0:6ae2f7bca550 9512 result = __LINE__;
Azure.IoT Build 0:6ae2f7bca550 9513 }
Azure.IoT Build 0:6ae2f7bca550 9514 else
Azure.IoT Build 0:6ae2f7bca550 9515 {
Azure.IoT Build 0:6ae2f7bca550 9516 if (amqpvalue_set_composite_item(source_instance->composite_value, 1, durable_amqp_value) != 0)
Azure.IoT Build 0:6ae2f7bca550 9517 {
Azure.IoT Build 0:6ae2f7bca550 9518 result = __LINE__;
Azure.IoT Build 0:6ae2f7bca550 9519 }
Azure.IoT Build 0:6ae2f7bca550 9520 else
Azure.IoT Build 0:6ae2f7bca550 9521 {
Azure.IoT Build 0:6ae2f7bca550 9522 result = 0;
Azure.IoT Build 0:6ae2f7bca550 9523 }
Azure.IoT Build 0:6ae2f7bca550 9524
Azure.IoT Build 0:6ae2f7bca550 9525 amqpvalue_destroy(durable_amqp_value);
Azure.IoT Build 0:6ae2f7bca550 9526 }
Azure.IoT Build 0:6ae2f7bca550 9527 }
Azure.IoT Build 0:6ae2f7bca550 9528
Azure.IoT Build 0:6ae2f7bca550 9529 return result;
Azure.IoT Build 0:6ae2f7bca550 9530 }
Azure.IoT Build 0:6ae2f7bca550 9531
Azure.IoT Build 0:6ae2f7bca550 9532 int source_get_expiry_policy(SOURCE_HANDLE source, terminus_expiry_policy* expiry_policy_value)
Azure.IoT Build 0:6ae2f7bca550 9533 {
Azure.IoT Build 0:6ae2f7bca550 9534 int result;
Azure.IoT Build 0:6ae2f7bca550 9535
Azure.IoT Build 0:6ae2f7bca550 9536 if (source == NULL)
Azure.IoT Build 0:6ae2f7bca550 9537 {
Azure.IoT Build 0:6ae2f7bca550 9538 result = __LINE__;
Azure.IoT Build 0:6ae2f7bca550 9539 }
Azure.IoT Build 0:6ae2f7bca550 9540 else
Azure.IoT Build 0:6ae2f7bca550 9541 {
Azure.IoT Build 0:6ae2f7bca550 9542 SOURCE_INSTANCE* source_instance = (SOURCE_INSTANCE*)source;
Azure.IoT Build 0:6ae2f7bca550 9543 AMQP_VALUE item_value = amqpvalue_get_composite_item_in_place(source_instance->composite_value, 2);
Azure.IoT Build 0:6ae2f7bca550 9544 if (item_value == NULL)
Azure.IoT Build 0:6ae2f7bca550 9545 {
AzureIoTClient 16:22a72cf8e416 9546 *expiry_policy_value = terminus_expiry_policy_session_end;
AzureIoTClient 16:22a72cf8e416 9547 result = 0;
Azure.IoT Build 0:6ae2f7bca550 9548 }
Azure.IoT Build 0:6ae2f7bca550 9549 else
Azure.IoT Build 0:6ae2f7bca550 9550 {
Azure.IoT Build 0:6ae2f7bca550 9551 if (amqpvalue_get_terminus_expiry_policy(item_value, expiry_policy_value) != 0)
Azure.IoT Build 0:6ae2f7bca550 9552 {
AzureIoTClient 16:22a72cf8e416 9553 if (amqpvalue_get_type(item_value) == AMQP_TYPE_NULL)
AzureIoTClient 16:22a72cf8e416 9554 {
AzureIoTClient 16:22a72cf8e416 9555 result = __LINE__;
AzureIoTClient 16:22a72cf8e416 9556 }
AzureIoTClient 16:22a72cf8e416 9557 else
AzureIoTClient 16:22a72cf8e416 9558 {
AzureIoTClient 16:22a72cf8e416 9559 *expiry_policy_value = terminus_expiry_policy_session_end;
AzureIoTClient 16:22a72cf8e416 9560 result = 0;
AzureIoTClient 16:22a72cf8e416 9561 }
Azure.IoT Build 0:6ae2f7bca550 9562 }
Azure.IoT Build 0:6ae2f7bca550 9563 else
Azure.IoT Build 0:6ae2f7bca550 9564 {
Azure.IoT Build 0:6ae2f7bca550 9565 result = 0;
Azure.IoT Build 0:6ae2f7bca550 9566 }
Azure.IoT Build 0:6ae2f7bca550 9567 }
Azure.IoT Build 0:6ae2f7bca550 9568 }
Azure.IoT Build 0:6ae2f7bca550 9569
Azure.IoT Build 0:6ae2f7bca550 9570 return result;
Azure.IoT Build 0:6ae2f7bca550 9571 }
Azure.IoT Build 0:6ae2f7bca550 9572
Azure.IoT Build 0:6ae2f7bca550 9573 int source_set_expiry_policy(SOURCE_HANDLE source, terminus_expiry_policy expiry_policy_value)
Azure.IoT Build 0:6ae2f7bca550 9574 {
Azure.IoT Build 0:6ae2f7bca550 9575 int result;
Azure.IoT Build 0:6ae2f7bca550 9576
Azure.IoT Build 0:6ae2f7bca550 9577 if (source == NULL)
Azure.IoT Build 0:6ae2f7bca550 9578 {
Azure.IoT Build 0:6ae2f7bca550 9579 result = __LINE__;
Azure.IoT Build 0:6ae2f7bca550 9580 }
Azure.IoT Build 0:6ae2f7bca550 9581 else
Azure.IoT Build 0:6ae2f7bca550 9582 {
Azure.IoT Build 0:6ae2f7bca550 9583 SOURCE_INSTANCE* source_instance = (SOURCE_INSTANCE*)source;
Azure.IoT Build 0:6ae2f7bca550 9584 AMQP_VALUE expiry_policy_amqp_value = amqpvalue_create_terminus_expiry_policy(expiry_policy_value);
Azure.IoT Build 0:6ae2f7bca550 9585 if (expiry_policy_amqp_value == NULL)
Azure.IoT Build 0:6ae2f7bca550 9586 {
Azure.IoT Build 0:6ae2f7bca550 9587 result = __LINE__;
Azure.IoT Build 0:6ae2f7bca550 9588 }
Azure.IoT Build 0:6ae2f7bca550 9589 else
Azure.IoT Build 0:6ae2f7bca550 9590 {
Azure.IoT Build 0:6ae2f7bca550 9591 if (amqpvalue_set_composite_item(source_instance->composite_value, 2, expiry_policy_amqp_value) != 0)
Azure.IoT Build 0:6ae2f7bca550 9592 {
Azure.IoT Build 0:6ae2f7bca550 9593 result = __LINE__;
Azure.IoT Build 0:6ae2f7bca550 9594 }
Azure.IoT Build 0:6ae2f7bca550 9595 else
Azure.IoT Build 0:6ae2f7bca550 9596 {
Azure.IoT Build 0:6ae2f7bca550 9597 result = 0;
Azure.IoT Build 0:6ae2f7bca550 9598 }
Azure.IoT Build 0:6ae2f7bca550 9599
Azure.IoT Build 0:6ae2f7bca550 9600 amqpvalue_destroy(expiry_policy_amqp_value);
Azure.IoT Build 0:6ae2f7bca550 9601 }
Azure.IoT Build 0:6ae2f7bca550 9602 }
Azure.IoT Build 0:6ae2f7bca550 9603
Azure.IoT Build 0:6ae2f7bca550 9604 return result;
Azure.IoT Build 0:6ae2f7bca550 9605 }
Azure.IoT Build 0:6ae2f7bca550 9606
Azure.IoT Build 0:6ae2f7bca550 9607 int source_get_timeout(SOURCE_HANDLE source, seconds* timeout_value)
Azure.IoT Build 0:6ae2f7bca550 9608 {
Azure.IoT Build 0:6ae2f7bca550 9609 int result;
Azure.IoT Build 0:6ae2f7bca550 9610
Azure.IoT Build 0:6ae2f7bca550 9611 if (source == NULL)
Azure.IoT Build 0:6ae2f7bca550 9612 {
Azure.IoT Build 0:6ae2f7bca550 9613 result = __LINE__;
Azure.IoT Build 0:6ae2f7bca550 9614 }
Azure.IoT Build 0:6ae2f7bca550 9615 else
Azure.IoT Build 0:6ae2f7bca550 9616 {
Azure.IoT Build 0:6ae2f7bca550 9617 SOURCE_INSTANCE* source_instance = (SOURCE_INSTANCE*)source;
Azure.IoT Build 0:6ae2f7bca550 9618 AMQP_VALUE item_value = amqpvalue_get_composite_item_in_place(source_instance->composite_value, 3);
Azure.IoT Build 0:6ae2f7bca550 9619 if (item_value == NULL)
Azure.IoT Build 0:6ae2f7bca550 9620 {
AzureIoTClient 16:22a72cf8e416 9621 *timeout_value = 0;
AzureIoTClient 16:22a72cf8e416 9622 result = 0;
Azure.IoT Build 0:6ae2f7bca550 9623 }
Azure.IoT Build 0:6ae2f7bca550 9624 else
Azure.IoT Build 0:6ae2f7bca550 9625 {
Azure.IoT Build 0:6ae2f7bca550 9626 if (amqpvalue_get_seconds(item_value, timeout_value) != 0)
Azure.IoT Build 0:6ae2f7bca550 9627 {
AzureIoTClient 16:22a72cf8e416 9628 if (amqpvalue_get_type(item_value) == AMQP_TYPE_NULL)
AzureIoTClient 16:22a72cf8e416 9629 {
AzureIoTClient 16:22a72cf8e416 9630 result = __LINE__;
AzureIoTClient 16:22a72cf8e416 9631 }
AzureIoTClient 16:22a72cf8e416 9632 else
AzureIoTClient 16:22a72cf8e416 9633 {
AzureIoTClient 16:22a72cf8e416 9634 *timeout_value = 0;
AzureIoTClient 16:22a72cf8e416 9635 result = 0;
AzureIoTClient 16:22a72cf8e416 9636 }
Azure.IoT Build 0:6ae2f7bca550 9637 }
Azure.IoT Build 0:6ae2f7bca550 9638 else
Azure.IoT Build 0:6ae2f7bca550 9639 {
Azure.IoT Build 0:6ae2f7bca550 9640 result = 0;
Azure.IoT Build 0:6ae2f7bca550 9641 }
Azure.IoT Build 0:6ae2f7bca550 9642 }
Azure.IoT Build 0:6ae2f7bca550 9643 }
Azure.IoT Build 0:6ae2f7bca550 9644
Azure.IoT Build 0:6ae2f7bca550 9645 return result;
Azure.IoT Build 0:6ae2f7bca550 9646 }
Azure.IoT Build 0:6ae2f7bca550 9647
Azure.IoT Build 0:6ae2f7bca550 9648 int source_set_timeout(SOURCE_HANDLE source, seconds timeout_value)
Azure.IoT Build 0:6ae2f7bca550 9649 {
Azure.IoT Build 0:6ae2f7bca550 9650 int result;
Azure.IoT Build 0:6ae2f7bca550 9651
Azure.IoT Build 0:6ae2f7bca550 9652 if (source == NULL)
Azure.IoT Build 0:6ae2f7bca550 9653 {
Azure.IoT Build 0:6ae2f7bca550 9654 result = __LINE__;
Azure.IoT Build 0:6ae2f7bca550 9655 }
Azure.IoT Build 0:6ae2f7bca550 9656 else
Azure.IoT Build 0:6ae2f7bca550 9657 {
Azure.IoT Build 0:6ae2f7bca550 9658 SOURCE_INSTANCE* source_instance = (SOURCE_INSTANCE*)source;
Azure.IoT Build 0:6ae2f7bca550 9659 AMQP_VALUE timeout_amqp_value = amqpvalue_create_seconds(timeout_value);
Azure.IoT Build 0:6ae2f7bca550 9660 if (timeout_amqp_value == NULL)
Azure.IoT Build 0:6ae2f7bca550 9661 {
Azure.IoT Build 0:6ae2f7bca550 9662 result = __LINE__;
Azure.IoT Build 0:6ae2f7bca550 9663 }
Azure.IoT Build 0:6ae2f7bca550 9664 else
Azure.IoT Build 0:6ae2f7bca550 9665 {
Azure.IoT Build 0:6ae2f7bca550 9666 if (amqpvalue_set_composite_item(source_instance->composite_value, 3, timeout_amqp_value) != 0)
Azure.IoT Build 0:6ae2f7bca550 9667 {
Azure.IoT Build 0:6ae2f7bca550 9668 result = __LINE__;
Azure.IoT Build 0:6ae2f7bca550 9669 }
Azure.IoT Build 0:6ae2f7bca550 9670 else
Azure.IoT Build 0:6ae2f7bca550 9671 {
Azure.IoT Build 0:6ae2f7bca550 9672 result = 0;
Azure.IoT Build 0:6ae2f7bca550 9673 }
Azure.IoT Build 0:6ae2f7bca550 9674
Azure.IoT Build 0:6ae2f7bca550 9675 amqpvalue_destroy(timeout_amqp_value);
Azure.IoT Build 0:6ae2f7bca550 9676 }
Azure.IoT Build 0:6ae2f7bca550 9677 }
Azure.IoT Build 0:6ae2f7bca550 9678
Azure.IoT Build 0:6ae2f7bca550 9679 return result;
Azure.IoT Build 0:6ae2f7bca550 9680 }
Azure.IoT Build 0:6ae2f7bca550 9681
Azure.IoT Build 0:6ae2f7bca550 9682 int source_get_dynamic(SOURCE_HANDLE source, bool* dynamic_value)
Azure.IoT Build 0:6ae2f7bca550 9683 {
Azure.IoT Build 0:6ae2f7bca550 9684 int result;
Azure.IoT Build 0:6ae2f7bca550 9685
Azure.IoT Build 0:6ae2f7bca550 9686 if (source == NULL)
Azure.IoT Build 0:6ae2f7bca550 9687 {
Azure.IoT Build 0:6ae2f7bca550 9688 result = __LINE__;
Azure.IoT Build 0:6ae2f7bca550 9689 }
Azure.IoT Build 0:6ae2f7bca550 9690 else
Azure.IoT Build 0:6ae2f7bca550 9691 {
Azure.IoT Build 0:6ae2f7bca550 9692 SOURCE_INSTANCE* source_instance = (SOURCE_INSTANCE*)source;
Azure.IoT Build 0:6ae2f7bca550 9693 AMQP_VALUE item_value = amqpvalue_get_composite_item_in_place(source_instance->composite_value, 4);
Azure.IoT Build 0:6ae2f7bca550 9694 if (item_value == NULL)
Azure.IoT Build 0:6ae2f7bca550 9695 {
AzureIoTClient 16:22a72cf8e416 9696 *dynamic_value = false;
AzureIoTClient 16:22a72cf8e416 9697 result = 0;
Azure.IoT Build 0:6ae2f7bca550 9698 }
Azure.IoT Build 0:6ae2f7bca550 9699 else
Azure.IoT Build 0:6ae2f7bca550 9700 {
Azure.IoT Build 0:6ae2f7bca550 9701 if (amqpvalue_get_boolean(item_value, dynamic_value) != 0)
Azure.IoT Build 0:6ae2f7bca550 9702 {
AzureIoTClient 16:22a72cf8e416 9703 if (amqpvalue_get_type(item_value) == AMQP_TYPE_NULL)
AzureIoTClient 16:22a72cf8e416 9704 {
AzureIoTClient 16:22a72cf8e416 9705 result = __LINE__;
AzureIoTClient 16:22a72cf8e416 9706 }
AzureIoTClient 16:22a72cf8e416 9707 else
AzureIoTClient 16:22a72cf8e416 9708 {
AzureIoTClient 16:22a72cf8e416 9709 *dynamic_value = false;
AzureIoTClient 16:22a72cf8e416 9710 result = 0;
AzureIoTClient 16:22a72cf8e416 9711 }
Azure.IoT Build 0:6ae2f7bca550 9712 }
Azure.IoT Build 0:6ae2f7bca550 9713 else
Azure.IoT Build 0:6ae2f7bca550 9714 {
Azure.IoT Build 0:6ae2f7bca550 9715 result = 0;
Azure.IoT Build 0:6ae2f7bca550 9716 }
Azure.IoT Build 0:6ae2f7bca550 9717 }
Azure.IoT Build 0:6ae2f7bca550 9718 }
Azure.IoT Build 0:6ae2f7bca550 9719
Azure.IoT Build 0:6ae2f7bca550 9720 return result;
Azure.IoT Build 0:6ae2f7bca550 9721 }
Azure.IoT Build 0:6ae2f7bca550 9722
Azure.IoT Build 0:6ae2f7bca550 9723 int source_set_dynamic(SOURCE_HANDLE source, bool dynamic_value)
Azure.IoT Build 0:6ae2f7bca550 9724 {
Azure.IoT Build 0:6ae2f7bca550 9725 int result;
Azure.IoT Build 0:6ae2f7bca550 9726
Azure.IoT Build 0:6ae2f7bca550 9727 if (source == NULL)
Azure.IoT Build 0:6ae2f7bca550 9728 {
Azure.IoT Build 0:6ae2f7bca550 9729 result = __LINE__;
Azure.IoT Build 0:6ae2f7bca550 9730 }
Azure.IoT Build 0:6ae2f7bca550 9731 else
Azure.IoT Build 0:6ae2f7bca550 9732 {
Azure.IoT Build 0:6ae2f7bca550 9733 SOURCE_INSTANCE* source_instance = (SOURCE_INSTANCE*)source;
Azure.IoT Build 0:6ae2f7bca550 9734 AMQP_VALUE dynamic_amqp_value = amqpvalue_create_boolean(dynamic_value);
Azure.IoT Build 0:6ae2f7bca550 9735 if (dynamic_amqp_value == NULL)
Azure.IoT Build 0:6ae2f7bca550 9736 {
Azure.IoT Build 0:6ae2f7bca550 9737 result = __LINE__;
Azure.IoT Build 0:6ae2f7bca550 9738 }
Azure.IoT Build 0:6ae2f7bca550 9739 else
Azure.IoT Build 0:6ae2f7bca550 9740 {
Azure.IoT Build 0:6ae2f7bca550 9741 if (amqpvalue_set_composite_item(source_instance->composite_value, 4, dynamic_amqp_value) != 0)
Azure.IoT Build 0:6ae2f7bca550 9742 {
Azure.IoT Build 0:6ae2f7bca550 9743 result = __LINE__;
Azure.IoT Build 0:6ae2f7bca550 9744 }
Azure.IoT Build 0:6ae2f7bca550 9745 else
Azure.IoT Build 0:6ae2f7bca550 9746 {
Azure.IoT Build 0:6ae2f7bca550 9747 result = 0;
Azure.IoT Build 0:6ae2f7bca550 9748 }
Azure.IoT Build 0:6ae2f7bca550 9749
Azure.IoT Build 0:6ae2f7bca550 9750 amqpvalue_destroy(dynamic_amqp_value);
Azure.IoT Build 0:6ae2f7bca550 9751 }
Azure.IoT Build 0:6ae2f7bca550 9752 }
Azure.IoT Build 0:6ae2f7bca550 9753
Azure.IoT Build 0:6ae2f7bca550 9754 return result;
Azure.IoT Build 0:6ae2f7bca550 9755 }
Azure.IoT Build 0:6ae2f7bca550 9756
Azure.IoT Build 0:6ae2f7bca550 9757 int source_get_dynamic_node_properties(SOURCE_HANDLE source, node_properties* dynamic_node_properties_value)
Azure.IoT Build 0:6ae2f7bca550 9758 {
Azure.IoT Build 0:6ae2f7bca550 9759 int result;
Azure.IoT Build 0:6ae2f7bca550 9760
Azure.IoT Build 0:6ae2f7bca550 9761 if (source == NULL)
Azure.IoT Build 0:6ae2f7bca550 9762 {
Azure.IoT Build 0:6ae2f7bca550 9763 result = __LINE__;
Azure.IoT Build 0:6ae2f7bca550 9764 }
Azure.IoT Build 0:6ae2f7bca550 9765 else
Azure.IoT Build 0:6ae2f7bca550 9766 {
Azure.IoT Build 0:6ae2f7bca550 9767 SOURCE_INSTANCE* source_instance = (SOURCE_INSTANCE*)source;
Azure.IoT Build 0:6ae2f7bca550 9768 AMQP_VALUE item_value = amqpvalue_get_composite_item_in_place(source_instance->composite_value, 5);
Azure.IoT Build 0:6ae2f7bca550 9769 if (item_value == NULL)
Azure.IoT Build 0:6ae2f7bca550 9770 {
Azure.IoT Build 0:6ae2f7bca550 9771 result = __LINE__;
Azure.IoT Build 0:6ae2f7bca550 9772 }
Azure.IoT Build 0:6ae2f7bca550 9773 else
Azure.IoT Build 0:6ae2f7bca550 9774 {
Azure.IoT Build 0:6ae2f7bca550 9775 if (amqpvalue_get_node_properties(item_value, dynamic_node_properties_value) != 0)
Azure.IoT Build 0:6ae2f7bca550 9776 {
AzureIoTClient 16:22a72cf8e416 9777 result = __LINE__;
Azure.IoT Build 0:6ae2f7bca550 9778 }
Azure.IoT Build 0:6ae2f7bca550 9779 else
Azure.IoT Build 0:6ae2f7bca550 9780 {
Azure.IoT Build 0:6ae2f7bca550 9781 result = 0;
Azure.IoT Build 0:6ae2f7bca550 9782 }
Azure.IoT Build 0:6ae2f7bca550 9783 }
Azure.IoT Build 0:6ae2f7bca550 9784 }
Azure.IoT Build 0:6ae2f7bca550 9785
Azure.IoT Build 0:6ae2f7bca550 9786 return result;
Azure.IoT Build 0:6ae2f7bca550 9787 }
Azure.IoT Build 0:6ae2f7bca550 9788
Azure.IoT Build 0:6ae2f7bca550 9789 int source_set_dynamic_node_properties(SOURCE_HANDLE source, node_properties dynamic_node_properties_value)
Azure.IoT Build 0:6ae2f7bca550 9790 {
Azure.IoT Build 0:6ae2f7bca550 9791 int result;
Azure.IoT Build 0:6ae2f7bca550 9792
Azure.IoT Build 0:6ae2f7bca550 9793 if (source == NULL)
Azure.IoT Build 0:6ae2f7bca550 9794 {
Azure.IoT Build 0:6ae2f7bca550 9795 result = __LINE__;
Azure.IoT Build 0:6ae2f7bca550 9796 }
Azure.IoT Build 0:6ae2f7bca550 9797 else
Azure.IoT Build 0:6ae2f7bca550 9798 {
Azure.IoT Build 0:6ae2f7bca550 9799 SOURCE_INSTANCE* source_instance = (SOURCE_INSTANCE*)source;
Azure.IoT Build 0:6ae2f7bca550 9800 AMQP_VALUE dynamic_node_properties_amqp_value = amqpvalue_create_node_properties(dynamic_node_properties_value);
Azure.IoT Build 0:6ae2f7bca550 9801 if (dynamic_node_properties_amqp_value == NULL)
Azure.IoT Build 0:6ae2f7bca550 9802 {
Azure.IoT Build 0:6ae2f7bca550 9803 result = __LINE__;
Azure.IoT Build 0:6ae2f7bca550 9804 }
Azure.IoT Build 0:6ae2f7bca550 9805 else
Azure.IoT Build 0:6ae2f7bca550 9806 {
Azure.IoT Build 0:6ae2f7bca550 9807 if (amqpvalue_set_composite_item(source_instance->composite_value, 5, dynamic_node_properties_amqp_value) != 0)
Azure.IoT Build 0:6ae2f7bca550 9808 {
Azure.IoT Build 0:6ae2f7bca550 9809 result = __LINE__;
Azure.IoT Build 0:6ae2f7bca550 9810 }
Azure.IoT Build 0:6ae2f7bca550 9811 else
Azure.IoT Build 0:6ae2f7bca550 9812 {
Azure.IoT Build 0:6ae2f7bca550 9813 result = 0;
Azure.IoT Build 0:6ae2f7bca550 9814 }
Azure.IoT Build 0:6ae2f7bca550 9815
Azure.IoT Build 0:6ae2f7bca550 9816 amqpvalue_destroy(dynamic_node_properties_amqp_value);
Azure.IoT Build 0:6ae2f7bca550 9817 }
Azure.IoT Build 0:6ae2f7bca550 9818 }
Azure.IoT Build 0:6ae2f7bca550 9819
Azure.IoT Build 0:6ae2f7bca550 9820 return result;
Azure.IoT Build 0:6ae2f7bca550 9821 }
Azure.IoT Build 0:6ae2f7bca550 9822
Azure.IoT Build 0:6ae2f7bca550 9823 int source_get_distribution_mode(SOURCE_HANDLE source, const char** distribution_mode_value)
Azure.IoT Build 0:6ae2f7bca550 9824 {
Azure.IoT Build 0:6ae2f7bca550 9825 int result;
Azure.IoT Build 0:6ae2f7bca550 9826
Azure.IoT Build 0:6ae2f7bca550 9827 if (source == NULL)
Azure.IoT Build 0:6ae2f7bca550 9828 {
Azure.IoT Build 0:6ae2f7bca550 9829 result = __LINE__;
Azure.IoT Build 0:6ae2f7bca550 9830 }
Azure.IoT Build 0:6ae2f7bca550 9831 else
Azure.IoT Build 0:6ae2f7bca550 9832 {
Azure.IoT Build 0:6ae2f7bca550 9833 SOURCE_INSTANCE* source_instance = (SOURCE_INSTANCE*)source;
Azure.IoT Build 0:6ae2f7bca550 9834 AMQP_VALUE item_value = amqpvalue_get_composite_item_in_place(source_instance->composite_value, 6);
Azure.IoT Build 0:6ae2f7bca550 9835 if (item_value == NULL)
Azure.IoT Build 0:6ae2f7bca550 9836 {
Azure.IoT Build 0:6ae2f7bca550 9837 result = __LINE__;
Azure.IoT Build 0:6ae2f7bca550 9838 }
Azure.IoT Build 0:6ae2f7bca550 9839 else
Azure.IoT Build 0:6ae2f7bca550 9840 {
Azure.IoT Build 0:6ae2f7bca550 9841 if (amqpvalue_get_symbol(item_value, distribution_mode_value) != 0)
Azure.IoT Build 0:6ae2f7bca550 9842 {
AzureIoTClient 16:22a72cf8e416 9843 result = __LINE__;
Azure.IoT Build 0:6ae2f7bca550 9844 }
Azure.IoT Build 0:6ae2f7bca550 9845 else
Azure.IoT Build 0:6ae2f7bca550 9846 {
Azure.IoT Build 0:6ae2f7bca550 9847 result = 0;
Azure.IoT Build 0:6ae2f7bca550 9848 }
Azure.IoT Build 0:6ae2f7bca550 9849 }
Azure.IoT Build 0:6ae2f7bca550 9850 }
Azure.IoT Build 0:6ae2f7bca550 9851
Azure.IoT Build 0:6ae2f7bca550 9852 return result;
Azure.IoT Build 0:6ae2f7bca550 9853 }
Azure.IoT Build 0:6ae2f7bca550 9854
Azure.IoT Build 0:6ae2f7bca550 9855 int source_set_distribution_mode(SOURCE_HANDLE source, const char* distribution_mode_value)
Azure.IoT Build 0:6ae2f7bca550 9856 {
Azure.IoT Build 0:6ae2f7bca550 9857 int result;
Azure.IoT Build 0:6ae2f7bca550 9858
Azure.IoT Build 0:6ae2f7bca550 9859 if (source == NULL)
Azure.IoT Build 0:6ae2f7bca550 9860 {
Azure.IoT Build 0:6ae2f7bca550 9861 result = __LINE__;
Azure.IoT Build 0:6ae2f7bca550 9862 }
Azure.IoT Build 0:6ae2f7bca550 9863 else
Azure.IoT Build 0:6ae2f7bca550 9864 {
Azure.IoT Build 0:6ae2f7bca550 9865 SOURCE_INSTANCE* source_instance = (SOURCE_INSTANCE*)source;
Azure.IoT Build 0:6ae2f7bca550 9866 AMQP_VALUE distribution_mode_amqp_value = amqpvalue_create_symbol(distribution_mode_value);
Azure.IoT Build 0:6ae2f7bca550 9867 if (distribution_mode_amqp_value == NULL)
Azure.IoT Build 0:6ae2f7bca550 9868 {
Azure.IoT Build 0:6ae2f7bca550 9869 result = __LINE__;
Azure.IoT Build 0:6ae2f7bca550 9870 }
Azure.IoT Build 0:6ae2f7bca550 9871 else
Azure.IoT Build 0:6ae2f7bca550 9872 {
Azure.IoT Build 0:6ae2f7bca550 9873 if (amqpvalue_set_composite_item(source_instance->composite_value, 6, distribution_mode_amqp_value) != 0)
Azure.IoT Build 0:6ae2f7bca550 9874 {
Azure.IoT Build 0:6ae2f7bca550 9875 result = __LINE__;
Azure.IoT Build 0:6ae2f7bca550 9876 }
Azure.IoT Build 0:6ae2f7bca550 9877 else
Azure.IoT Build 0:6ae2f7bca550 9878 {
Azure.IoT Build 0:6ae2f7bca550 9879 result = 0;
Azure.IoT Build 0:6ae2f7bca550 9880 }
Azure.IoT Build 0:6ae2f7bca550 9881
Azure.IoT Build 0:6ae2f7bca550 9882 amqpvalue_destroy(distribution_mode_amqp_value);
Azure.IoT Build 0:6ae2f7bca550 9883 }
Azure.IoT Build 0:6ae2f7bca550 9884 }
Azure.IoT Build 0:6ae2f7bca550 9885
Azure.IoT Build 0:6ae2f7bca550 9886 return result;
Azure.IoT Build 0:6ae2f7bca550 9887 }
Azure.IoT Build 0:6ae2f7bca550 9888
Azure.IoT Build 0:6ae2f7bca550 9889 int source_get_filter(SOURCE_HANDLE source, filter_set* filter_value)
Azure.IoT Build 0:6ae2f7bca550 9890 {
Azure.IoT Build 0:6ae2f7bca550 9891 int result;
Azure.IoT Build 0:6ae2f7bca550 9892
Azure.IoT Build 0:6ae2f7bca550 9893 if (source == NULL)
Azure.IoT Build 0:6ae2f7bca550 9894 {
Azure.IoT Build 0:6ae2f7bca550 9895 result = __LINE__;
Azure.IoT Build 0:6ae2f7bca550 9896 }
Azure.IoT Build 0:6ae2f7bca550 9897 else
Azure.IoT Build 0:6ae2f7bca550 9898 {
Azure.IoT Build 0:6ae2f7bca550 9899 SOURCE_INSTANCE* source_instance = (SOURCE_INSTANCE*)source;
Azure.IoT Build 0:6ae2f7bca550 9900 AMQP_VALUE item_value = amqpvalue_get_composite_item_in_place(source_instance->composite_value, 7);
Azure.IoT Build 0:6ae2f7bca550 9901 if (item_value == NULL)
Azure.IoT Build 0:6ae2f7bca550 9902 {
Azure.IoT Build 0:6ae2f7bca550 9903 result = __LINE__;
Azure.IoT Build 0:6ae2f7bca550 9904 }
Azure.IoT Build 0:6ae2f7bca550 9905 else
Azure.IoT Build 0:6ae2f7bca550 9906 {
Azure.IoT Build 0:6ae2f7bca550 9907 if (amqpvalue_get_filter_set(item_value, filter_value) != 0)
Azure.IoT Build 0:6ae2f7bca550 9908 {
AzureIoTClient 16:22a72cf8e416 9909 result = __LINE__;
Azure.IoT Build 0:6ae2f7bca550 9910 }
Azure.IoT Build 0:6ae2f7bca550 9911 else
Azure.IoT Build 0:6ae2f7bca550 9912 {
Azure.IoT Build 0:6ae2f7bca550 9913 result = 0;
Azure.IoT Build 0:6ae2f7bca550 9914 }
Azure.IoT Build 0:6ae2f7bca550 9915 }
Azure.IoT Build 0:6ae2f7bca550 9916 }
Azure.IoT Build 0:6ae2f7bca550 9917
Azure.IoT Build 0:6ae2f7bca550 9918 return result;
Azure.IoT Build 0:6ae2f7bca550 9919 }
Azure.IoT Build 0:6ae2f7bca550 9920
Azure.IoT Build 0:6ae2f7bca550 9921 int source_set_filter(SOURCE_HANDLE source, filter_set filter_value)
Azure.IoT Build 0:6ae2f7bca550 9922 {
Azure.IoT Build 0:6ae2f7bca550 9923 int result;
Azure.IoT Build 0:6ae2f7bca550 9924
Azure.IoT Build 0:6ae2f7bca550 9925 if (source == NULL)
Azure.IoT Build 0:6ae2f7bca550 9926 {
Azure.IoT Build 0:6ae2f7bca550 9927 result = __LINE__;
Azure.IoT Build 0:6ae2f7bca550 9928 }
Azure.IoT Build 0:6ae2f7bca550 9929 else
Azure.IoT Build 0:6ae2f7bca550 9930 {
Azure.IoT Build 0:6ae2f7bca550 9931 SOURCE_INSTANCE* source_instance = (SOURCE_INSTANCE*)source;
Azure.IoT Build 0:6ae2f7bca550 9932 AMQP_VALUE filter_amqp_value = amqpvalue_create_filter_set(filter_value);
Azure.IoT Build 0:6ae2f7bca550 9933 if (filter_amqp_value == NULL)
Azure.IoT Build 0:6ae2f7bca550 9934 {
Azure.IoT Build 0:6ae2f7bca550 9935 result = __LINE__;
Azure.IoT Build 0:6ae2f7bca550 9936 }
Azure.IoT Build 0:6ae2f7bca550 9937 else
Azure.IoT Build 0:6ae2f7bca550 9938 {
Azure.IoT Build 0:6ae2f7bca550 9939 if (amqpvalue_set_composite_item(source_instance->composite_value, 7, filter_amqp_value) != 0)
Azure.IoT Build 0:6ae2f7bca550 9940 {
Azure.IoT Build 0:6ae2f7bca550 9941 result = __LINE__;
Azure.IoT Build 0:6ae2f7bca550 9942 }
Azure.IoT Build 0:6ae2f7bca550 9943 else
Azure.IoT Build 0:6ae2f7bca550 9944 {
Azure.IoT Build 0:6ae2f7bca550 9945 result = 0;
Azure.IoT Build 0:6ae2f7bca550 9946 }
Azure.IoT Build 0:6ae2f7bca550 9947
Azure.IoT Build 0:6ae2f7bca550 9948 amqpvalue_destroy(filter_amqp_value);
Azure.IoT Build 0:6ae2f7bca550 9949 }
Azure.IoT Build 0:6ae2f7bca550 9950 }
Azure.IoT Build 0:6ae2f7bca550 9951
Azure.IoT Build 0:6ae2f7bca550 9952 return result;
Azure.IoT Build 0:6ae2f7bca550 9953 }
Azure.IoT Build 0:6ae2f7bca550 9954
Azure.IoT Build 0:6ae2f7bca550 9955 int source_get_default_outcome(SOURCE_HANDLE source, AMQP_VALUE* default_outcome_value)
Azure.IoT Build 0:6ae2f7bca550 9956 {
Azure.IoT Build 0:6ae2f7bca550 9957 int result;
Azure.IoT Build 0:6ae2f7bca550 9958
Azure.IoT Build 0:6ae2f7bca550 9959 if (source == NULL)
Azure.IoT Build 0:6ae2f7bca550 9960 {
Azure.IoT Build 0:6ae2f7bca550 9961 result = __LINE__;
Azure.IoT Build 0:6ae2f7bca550 9962 }
Azure.IoT Build 0:6ae2f7bca550 9963 else
Azure.IoT Build 0:6ae2f7bca550 9964 {
Azure.IoT Build 0:6ae2f7bca550 9965 SOURCE_INSTANCE* source_instance = (SOURCE_INSTANCE*)source;
Azure.IoT Build 0:6ae2f7bca550 9966 AMQP_VALUE item_value = amqpvalue_get_composite_item_in_place(source_instance->composite_value, 8);
Azure.IoT Build 0:6ae2f7bca550 9967 if (item_value == NULL)
Azure.IoT Build 0:6ae2f7bca550 9968 {
Azure.IoT Build 0:6ae2f7bca550 9969 result = __LINE__;
Azure.IoT Build 0:6ae2f7bca550 9970 }
Azure.IoT Build 0:6ae2f7bca550 9971 else
Azure.IoT Build 0:6ae2f7bca550 9972 {
Azure.IoT Build 0:6ae2f7bca550 9973 *default_outcome_value = item_value;
Azure.IoT Build 0:6ae2f7bca550 9974 result = 0;
Azure.IoT Build 0:6ae2f7bca550 9975 }
Azure.IoT Build 0:6ae2f7bca550 9976 }
Azure.IoT Build 0:6ae2f7bca550 9977
Azure.IoT Build 0:6ae2f7bca550 9978 return result;
Azure.IoT Build 0:6ae2f7bca550 9979 }
Azure.IoT Build 0:6ae2f7bca550 9980
Azure.IoT Build 0:6ae2f7bca550 9981 int source_set_default_outcome(SOURCE_HANDLE source, AMQP_VALUE default_outcome_value)
Azure.IoT Build 0:6ae2f7bca550 9982 {
Azure.IoT Build 0:6ae2f7bca550 9983 int result;
Azure.IoT Build 0:6ae2f7bca550 9984
Azure.IoT Build 0:6ae2f7bca550 9985 if (source == NULL)
Azure.IoT Build 0:6ae2f7bca550 9986 {
Azure.IoT Build 0:6ae2f7bca550 9987 result = __LINE__;
Azure.IoT Build 0:6ae2f7bca550 9988 }
Azure.IoT Build 0:6ae2f7bca550 9989 else
Azure.IoT Build 0:6ae2f7bca550 9990 {
Azure.IoT Build 0:6ae2f7bca550 9991 SOURCE_INSTANCE* source_instance = (SOURCE_INSTANCE*)source;
Azure.IoT Build 0:6ae2f7bca550 9992 AMQP_VALUE default_outcome_amqp_value = amqpvalue_clone(default_outcome_value);
Azure.IoT Build 0:6ae2f7bca550 9993 if (default_outcome_amqp_value == NULL)
Azure.IoT Build 0:6ae2f7bca550 9994 {
Azure.IoT Build 0:6ae2f7bca550 9995 result = __LINE__;
Azure.IoT Build 0:6ae2f7bca550 9996 }
Azure.IoT Build 0:6ae2f7bca550 9997 else
Azure.IoT Build 0:6ae2f7bca550 9998 {
Azure.IoT Build 0:6ae2f7bca550 9999 if (amqpvalue_set_composite_item(source_instance->composite_value, 8, default_outcome_amqp_value) != 0)
Azure.IoT Build 0:6ae2f7bca550 10000 {
Azure.IoT Build 0:6ae2f7bca550 10001 result = __LINE__;
Azure.IoT Build 0:6ae2f7bca550 10002 }
Azure.IoT Build 0:6ae2f7bca550 10003 else
Azure.IoT Build 0:6ae2f7bca550 10004 {
Azure.IoT Build 0:6ae2f7bca550 10005 result = 0;
Azure.IoT Build 0:6ae2f7bca550 10006 }
Azure.IoT Build 0:6ae2f7bca550 10007
Azure.IoT Build 0:6ae2f7bca550 10008 amqpvalue_destroy(default_outcome_amqp_value);
Azure.IoT Build 0:6ae2f7bca550 10009 }
Azure.IoT Build 0:6ae2f7bca550 10010 }
Azure.IoT Build 0:6ae2f7bca550 10011
Azure.IoT Build 0:6ae2f7bca550 10012 return result;
Azure.IoT Build 0:6ae2f7bca550 10013 }
Azure.IoT Build 0:6ae2f7bca550 10014
Azure.IoT Build 0:6ae2f7bca550 10015 int source_get_outcomes(SOURCE_HANDLE source, AMQP_VALUE* outcomes_value)
Azure.IoT Build 0:6ae2f7bca550 10016 {
Azure.IoT Build 0:6ae2f7bca550 10017 int result;
Azure.IoT Build 0:6ae2f7bca550 10018
Azure.IoT Build 0:6ae2f7bca550 10019 if (source == NULL)
Azure.IoT Build 0:6ae2f7bca550 10020 {
Azure.IoT Build 0:6ae2f7bca550 10021 result = __LINE__;
Azure.IoT Build 0:6ae2f7bca550 10022 }
Azure.IoT Build 0:6ae2f7bca550 10023 else
Azure.IoT Build 0:6ae2f7bca550 10024 {
Azure.IoT Build 0:6ae2f7bca550 10025 SOURCE_INSTANCE* source_instance = (SOURCE_INSTANCE*)source;
Azure.IoT Build 0:6ae2f7bca550 10026 AMQP_VALUE item_value = amqpvalue_get_composite_item_in_place(source_instance->composite_value, 9);
Azure.IoT Build 0:6ae2f7bca550 10027 if (item_value == NULL)
Azure.IoT Build 0:6ae2f7bca550 10028 {
Azure.IoT Build 0:6ae2f7bca550 10029 result = __LINE__;
Azure.IoT Build 0:6ae2f7bca550 10030 }
Azure.IoT Build 0:6ae2f7bca550 10031 else
Azure.IoT Build 0:6ae2f7bca550 10032 {
Azure.IoT Build 0:6ae2f7bca550 10033 if (amqpvalue_get_array(item_value, outcomes_value) != 0)
Azure.IoT Build 0:6ae2f7bca550 10034 {
AzureIoTClient 16:22a72cf8e416 10035 result = __LINE__;
Azure.IoT Build 0:6ae2f7bca550 10036 }
Azure.IoT Build 0:6ae2f7bca550 10037 else
Azure.IoT Build 0:6ae2f7bca550 10038 {
Azure.IoT Build 0:6ae2f7bca550 10039 result = 0;
Azure.IoT Build 0:6ae2f7bca550 10040 }
Azure.IoT Build 0:6ae2f7bca550 10041 }
Azure.IoT Build 0:6ae2f7bca550 10042 }
Azure.IoT Build 0:6ae2f7bca550 10043
Azure.IoT Build 0:6ae2f7bca550 10044 return result;
Azure.IoT Build 0:6ae2f7bca550 10045 }
Azure.IoT Build 0:6ae2f7bca550 10046
Azure.IoT Build 0:6ae2f7bca550 10047 int source_set_outcomes(SOURCE_HANDLE source, AMQP_VALUE outcomes_value)
Azure.IoT Build 0:6ae2f7bca550 10048 {
Azure.IoT Build 0:6ae2f7bca550 10049 int result;
Azure.IoT Build 0:6ae2f7bca550 10050
Azure.IoT Build 0:6ae2f7bca550 10051 if (source == NULL)
Azure.IoT Build 0:6ae2f7bca550 10052 {
Azure.IoT Build 0:6ae2f7bca550 10053 result = __LINE__;
Azure.IoT Build 0:6ae2f7bca550 10054 }
Azure.IoT Build 0:6ae2f7bca550 10055 else
Azure.IoT Build 0:6ae2f7bca550 10056 {
Azure.IoT Build 0:6ae2f7bca550 10057 SOURCE_INSTANCE* source_instance = (SOURCE_INSTANCE*)source;
Azure.IoT Build 0:6ae2f7bca550 10058 AMQP_VALUE outcomes_amqp_value = amqpvalue_clone(outcomes_value);
Azure.IoT Build 0:6ae2f7bca550 10059 if (outcomes_amqp_value == NULL)
Azure.IoT Build 0:6ae2f7bca550 10060 {
Azure.IoT Build 0:6ae2f7bca550 10061 result = __LINE__;
Azure.IoT Build 0:6ae2f7bca550 10062 }
Azure.IoT Build 0:6ae2f7bca550 10063 else
Azure.IoT Build 0:6ae2f7bca550 10064 {
Azure.IoT Build 0:6ae2f7bca550 10065 if (amqpvalue_set_composite_item(source_instance->composite_value, 9, outcomes_amqp_value) != 0)
Azure.IoT Build 0:6ae2f7bca550 10066 {
Azure.IoT Build 0:6ae2f7bca550 10067 result = __LINE__;
Azure.IoT Build 0:6ae2f7bca550 10068 }
Azure.IoT Build 0:6ae2f7bca550 10069 else
Azure.IoT Build 0:6ae2f7bca550 10070 {
Azure.IoT Build 0:6ae2f7bca550 10071 result = 0;
Azure.IoT Build 0:6ae2f7bca550 10072 }
Azure.IoT Build 0:6ae2f7bca550 10073
Azure.IoT Build 0:6ae2f7bca550 10074 amqpvalue_destroy(outcomes_amqp_value);
Azure.IoT Build 0:6ae2f7bca550 10075 }
Azure.IoT Build 0:6ae2f7bca550 10076 }
Azure.IoT Build 0:6ae2f7bca550 10077
Azure.IoT Build 0:6ae2f7bca550 10078 return result;
Azure.IoT Build 0:6ae2f7bca550 10079 }
Azure.IoT Build 0:6ae2f7bca550 10080
Azure.IoT Build 0:6ae2f7bca550 10081 int source_get_capabilities(SOURCE_HANDLE source, AMQP_VALUE* capabilities_value)
Azure.IoT Build 0:6ae2f7bca550 10082 {
Azure.IoT Build 0:6ae2f7bca550 10083 int result;
Azure.IoT Build 0:6ae2f7bca550 10084
Azure.IoT Build 0:6ae2f7bca550 10085 if (source == NULL)
Azure.IoT Build 0:6ae2f7bca550 10086 {
Azure.IoT Build 0:6ae2f7bca550 10087 result = __LINE__;
Azure.IoT Build 0:6ae2f7bca550 10088 }
Azure.IoT Build 0:6ae2f7bca550 10089 else
Azure.IoT Build 0:6ae2f7bca550 10090 {
Azure.IoT Build 0:6ae2f7bca550 10091 SOURCE_INSTANCE* source_instance = (SOURCE_INSTANCE*)source;
Azure.IoT Build 0:6ae2f7bca550 10092 AMQP_VALUE item_value = amqpvalue_get_composite_item_in_place(source_instance->composite_value, 10);
Azure.IoT Build 0:6ae2f7bca550 10093 if (item_value == NULL)
Azure.IoT Build 0:6ae2f7bca550 10094 {
Azure.IoT Build 0:6ae2f7bca550 10095 result = __LINE__;
Azure.IoT Build 0:6ae2f7bca550 10096 }
Azure.IoT Build 0:6ae2f7bca550 10097 else
Azure.IoT Build 0:6ae2f7bca550 10098 {
Azure.IoT Build 0:6ae2f7bca550 10099 if (amqpvalue_get_array(item_value, capabilities_value) != 0)
Azure.IoT Build 0:6ae2f7bca550 10100 {
AzureIoTClient 16:22a72cf8e416 10101 result = __LINE__;
Azure.IoT Build 0:6ae2f7bca550 10102 }
Azure.IoT Build 0:6ae2f7bca550 10103 else
Azure.IoT Build 0:6ae2f7bca550 10104 {
Azure.IoT Build 0:6ae2f7bca550 10105 result = 0;
Azure.IoT Build 0:6ae2f7bca550 10106 }
Azure.IoT Build 0:6ae2f7bca550 10107 }
Azure.IoT Build 0:6ae2f7bca550 10108 }
Azure.IoT Build 0:6ae2f7bca550 10109
Azure.IoT Build 0:6ae2f7bca550 10110 return result;
Azure.IoT Build 0:6ae2f7bca550 10111 }
Azure.IoT Build 0:6ae2f7bca550 10112
Azure.IoT Build 0:6ae2f7bca550 10113 int source_set_capabilities(SOURCE_HANDLE source, AMQP_VALUE capabilities_value)
Azure.IoT Build 0:6ae2f7bca550 10114 {
Azure.IoT Build 0:6ae2f7bca550 10115 int result;
Azure.IoT Build 0:6ae2f7bca550 10116
Azure.IoT Build 0:6ae2f7bca550 10117 if (source == NULL)
Azure.IoT Build 0:6ae2f7bca550 10118 {
Azure.IoT Build 0:6ae2f7bca550 10119 result = __LINE__;
Azure.IoT Build 0:6ae2f7bca550 10120 }
Azure.IoT Build 0:6ae2f7bca550 10121 else
Azure.IoT Build 0:6ae2f7bca550 10122 {
Azure.IoT Build 0:6ae2f7bca550 10123 SOURCE_INSTANCE* source_instance = (SOURCE_INSTANCE*)source;
Azure.IoT Build 0:6ae2f7bca550 10124 AMQP_VALUE capabilities_amqp_value = amqpvalue_clone(capabilities_value);
Azure.IoT Build 0:6ae2f7bca550 10125 if (capabilities_amqp_value == NULL)
Azure.IoT Build 0:6ae2f7bca550 10126 {
Azure.IoT Build 0:6ae2f7bca550 10127 result = __LINE__;
Azure.IoT Build 0:6ae2f7bca550 10128 }
Azure.IoT Build 0:6ae2f7bca550 10129 else
Azure.IoT Build 0:6ae2f7bca550 10130 {
Azure.IoT Build 0:6ae2f7bca550 10131 if (amqpvalue_set_composite_item(source_instance->composite_value, 10, capabilities_amqp_value) != 0)
Azure.IoT Build 0:6ae2f7bca550 10132 {
Azure.IoT Build 0:6ae2f7bca550 10133 result = __LINE__;
Azure.IoT Build 0:6ae2f7bca550 10134 }
Azure.IoT Build 0:6ae2f7bca550 10135 else
Azure.IoT Build 0:6ae2f7bca550 10136 {
Azure.IoT Build 0:6ae2f7bca550 10137 result = 0;
Azure.IoT Build 0:6ae2f7bca550 10138 }
Azure.IoT Build 0:6ae2f7bca550 10139
Azure.IoT Build 0:6ae2f7bca550 10140 amqpvalue_destroy(capabilities_amqp_value);
Azure.IoT Build 0:6ae2f7bca550 10141 }
Azure.IoT Build 0:6ae2f7bca550 10142 }
Azure.IoT Build 0:6ae2f7bca550 10143
Azure.IoT Build 0:6ae2f7bca550 10144 return result;
Azure.IoT Build 0:6ae2f7bca550 10145 }
Azure.IoT Build 0:6ae2f7bca550 10146
Azure.IoT Build 0:6ae2f7bca550 10147
Azure.IoT Build 0:6ae2f7bca550 10148 /* target */
Azure.IoT Build 0:6ae2f7bca550 10149
Azure.IoT Build 0:6ae2f7bca550 10150 typedef struct TARGET_INSTANCE_TAG
Azure.IoT Build 0:6ae2f7bca550 10151 {
Azure.IoT Build 0:6ae2f7bca550 10152 AMQP_VALUE composite_value;
Azure.IoT Build 0:6ae2f7bca550 10153 } TARGET_INSTANCE;
Azure.IoT Build 0:6ae2f7bca550 10154
Azure.IoT Build 0:6ae2f7bca550 10155 static TARGET_HANDLE target_create_internal(void)
Azure.IoT Build 0:6ae2f7bca550 10156 {
Azure.IoT Build 0:6ae2f7bca550 10157 TARGET_INSTANCE* target_instance = (TARGET_INSTANCE*)amqpalloc_malloc(sizeof(TARGET_INSTANCE));
Azure.IoT Build 0:6ae2f7bca550 10158 if (target_instance != NULL)
Azure.IoT Build 0:6ae2f7bca550 10159 {
Azure.IoT Build 0:6ae2f7bca550 10160 target_instance->composite_value = NULL;
Azure.IoT Build 0:6ae2f7bca550 10161 }
Azure.IoT Build 0:6ae2f7bca550 10162
Azure.IoT Build 0:6ae2f7bca550 10163 return target_instance;
Azure.IoT Build 0:6ae2f7bca550 10164 }
Azure.IoT Build 0:6ae2f7bca550 10165
Azure.IoT Build 0:6ae2f7bca550 10166 TARGET_HANDLE target_create(void)
Azure.IoT Build 0:6ae2f7bca550 10167 {
Azure.IoT Build 0:6ae2f7bca550 10168 TARGET_INSTANCE* target_instance = (TARGET_INSTANCE*)amqpalloc_malloc(sizeof(TARGET_INSTANCE));
Azure.IoT Build 0:6ae2f7bca550 10169 if (target_instance != NULL)
Azure.IoT Build 0:6ae2f7bca550 10170 {
Azure.IoT Build 0:6ae2f7bca550 10171 target_instance->composite_value = amqpvalue_create_composite_with_ulong_descriptor(41);
Azure.IoT Build 0:6ae2f7bca550 10172 if (target_instance->composite_value == NULL)
Azure.IoT Build 0:6ae2f7bca550 10173 {
Azure.IoT Build 0:6ae2f7bca550 10174 amqpalloc_free(target_instance);
Azure.IoT Build 0:6ae2f7bca550 10175 target_instance = NULL;
Azure.IoT Build 0:6ae2f7bca550 10176 }
Azure.IoT Build 0:6ae2f7bca550 10177 }
Azure.IoT Build 0:6ae2f7bca550 10178
Azure.IoT Build 0:6ae2f7bca550 10179 return target_instance;
Azure.IoT Build 0:6ae2f7bca550 10180 }
Azure.IoT Build 0:6ae2f7bca550 10181
Azure.IoT Build 0:6ae2f7bca550 10182 TARGET_HANDLE target_clone(TARGET_HANDLE value)
Azure.IoT Build 0:6ae2f7bca550 10183 {
Azure.IoT Build 0:6ae2f7bca550 10184 TARGET_INSTANCE* target_instance = (TARGET_INSTANCE*)amqpalloc_malloc(sizeof(TARGET_INSTANCE));
Azure.IoT Build 0:6ae2f7bca550 10185 if (target_instance != NULL)
Azure.IoT Build 0:6ae2f7bca550 10186 {
Azure.IoT Build 0:6ae2f7bca550 10187 target_instance->composite_value = amqpvalue_clone(((TARGET_INSTANCE*)value)->composite_value);
Azure.IoT Build 0:6ae2f7bca550 10188 if (target_instance->composite_value == NULL)
Azure.IoT Build 0:6ae2f7bca550 10189 {
Azure.IoT Build 0:6ae2f7bca550 10190 amqpalloc_free(target_instance);
Azure.IoT Build 0:6ae2f7bca550 10191 target_instance = NULL;
Azure.IoT Build 0:6ae2f7bca550 10192 }
Azure.IoT Build 0:6ae2f7bca550 10193 }
Azure.IoT Build 0:6ae2f7bca550 10194
Azure.IoT Build 0:6ae2f7bca550 10195 return target_instance;
Azure.IoT Build 0:6ae2f7bca550 10196 }
Azure.IoT Build 0:6ae2f7bca550 10197
Azure.IoT Build 0:6ae2f7bca550 10198 void target_destroy(TARGET_HANDLE target)
Azure.IoT Build 0:6ae2f7bca550 10199 {
Azure.IoT Build 0:6ae2f7bca550 10200 if (target != NULL)
Azure.IoT Build 0:6ae2f7bca550 10201 {
Azure.IoT Build 0:6ae2f7bca550 10202 TARGET_INSTANCE* target_instance = (TARGET_INSTANCE*)target;
Azure.IoT Build 0:6ae2f7bca550 10203 amqpvalue_destroy(target_instance->composite_value);
Azure.IoT Build 0:6ae2f7bca550 10204 amqpalloc_free(target_instance);
Azure.IoT Build 0:6ae2f7bca550 10205 }
Azure.IoT Build 0:6ae2f7bca550 10206 }
Azure.IoT Build 0:6ae2f7bca550 10207
Azure.IoT Build 0:6ae2f7bca550 10208 AMQP_VALUE amqpvalue_create_target(TARGET_HANDLE target)
Azure.IoT Build 0:6ae2f7bca550 10209 {
Azure.IoT Build 0:6ae2f7bca550 10210 AMQP_VALUE result;
Azure.IoT Build 0:6ae2f7bca550 10211
Azure.IoT Build 0:6ae2f7bca550 10212 if (target == NULL)
Azure.IoT Build 0:6ae2f7bca550 10213 {
Azure.IoT Build 0:6ae2f7bca550 10214 result = NULL;
Azure.IoT Build 0:6ae2f7bca550 10215 }
Azure.IoT Build 0:6ae2f7bca550 10216 else
Azure.IoT Build 0:6ae2f7bca550 10217 {
Azure.IoT Build 0:6ae2f7bca550 10218 TARGET_INSTANCE* target_instance = (TARGET_INSTANCE*)target;
Azure.IoT Build 0:6ae2f7bca550 10219 result = amqpvalue_clone(target_instance->composite_value);
Azure.IoT Build 0:6ae2f7bca550 10220 }
Azure.IoT Build 0:6ae2f7bca550 10221
Azure.IoT Build 0:6ae2f7bca550 10222 return result;
Azure.IoT Build 0:6ae2f7bca550 10223 }
Azure.IoT Build 0:6ae2f7bca550 10224
Azure.IoT Build 0:6ae2f7bca550 10225 bool is_target_type_by_descriptor(AMQP_VALUE descriptor)
Azure.IoT Build 0:6ae2f7bca550 10226 {
Azure.IoT Build 0:6ae2f7bca550 10227 bool result;
Azure.IoT Build 0:6ae2f7bca550 10228
Azure.IoT Build 0:6ae2f7bca550 10229 uint64_t descriptor_ulong;
Azure.IoT Build 0:6ae2f7bca550 10230 if ((amqpvalue_get_ulong(descriptor, &descriptor_ulong) == 0) &&
Azure.IoT Build 0:6ae2f7bca550 10231 (descriptor_ulong == 41))
Azure.IoT Build 0:6ae2f7bca550 10232 {
Azure.IoT Build 0:6ae2f7bca550 10233 result = true;
Azure.IoT Build 0:6ae2f7bca550 10234 }
Azure.IoT Build 0:6ae2f7bca550 10235 else
Azure.IoT Build 0:6ae2f7bca550 10236 {
Azure.IoT Build 0:6ae2f7bca550 10237 result = false;
Azure.IoT Build 0:6ae2f7bca550 10238 }
Azure.IoT Build 0:6ae2f7bca550 10239
Azure.IoT Build 0:6ae2f7bca550 10240 return result;
Azure.IoT Build 0:6ae2f7bca550 10241 }
Azure.IoT Build 0:6ae2f7bca550 10242
Azure.IoT Build 0:6ae2f7bca550 10243
Azure.IoT Build 0:6ae2f7bca550 10244 int amqpvalue_get_target(AMQP_VALUE value, TARGET_HANDLE* target_handle)
Azure.IoT Build 0:6ae2f7bca550 10245 {
Azure.IoT Build 0:6ae2f7bca550 10246 int result;
Azure.IoT Build 0:6ae2f7bca550 10247 TARGET_INSTANCE* target_instance = (TARGET_INSTANCE*)target_create_internal();
Azure.IoT Build 0:6ae2f7bca550 10248 *target_handle = target_instance;
Azure.IoT Build 0:6ae2f7bca550 10249 if (*target_handle == NULL)
Azure.IoT Build 0:6ae2f7bca550 10250 {
Azure.IoT Build 0:6ae2f7bca550 10251 result = __LINE__;
Azure.IoT Build 0:6ae2f7bca550 10252 }
Azure.IoT Build 0:6ae2f7bca550 10253 else
Azure.IoT Build 0:6ae2f7bca550 10254 {
Azure.IoT Build 0:6ae2f7bca550 10255 AMQP_VALUE list_value = amqpvalue_get_inplace_described_value(value);
Azure.IoT Build 0:6ae2f7bca550 10256 if (list_value == NULL)
Azure.IoT Build 0:6ae2f7bca550 10257 {
Azure.IoT Build 0:6ae2f7bca550 10258 target_destroy(*target_handle);
Azure.IoT Build 0:6ae2f7bca550 10259 result = __LINE__;
Azure.IoT Build 0:6ae2f7bca550 10260 }
Azure.IoT Build 0:6ae2f7bca550 10261 else
Azure.IoT Build 0:6ae2f7bca550 10262 {
Azure.IoT Build 0:6ae2f7bca550 10263 do
Azure.IoT Build 0:6ae2f7bca550 10264 {
Azure.IoT Build 0:6ae2f7bca550 10265 AMQP_VALUE item_value;
Azure.IoT Build 0:6ae2f7bca550 10266 /* address */
Azure.IoT Build 0:6ae2f7bca550 10267 item_value = amqpvalue_get_list_item(list_value, 0);
Azure.IoT Build 0:6ae2f7bca550 10268 if (item_value == NULL)
Azure.IoT Build 0:6ae2f7bca550 10269 {
Azure.IoT Build 0:6ae2f7bca550 10270 /* do nothing */
Azure.IoT Build 0:6ae2f7bca550 10271 }
Azure.IoT Build 0:6ae2f7bca550 10272 else
Azure.IoT Build 0:6ae2f7bca550 10273 {
Azure.IoT Build 0:6ae2f7bca550 10274 amqpvalue_destroy(item_value);
Azure.IoT Build 0:6ae2f7bca550 10275 }
Azure.IoT Build 0:6ae2f7bca550 10276 /* durable */
Azure.IoT Build 0:6ae2f7bca550 10277 item_value = amqpvalue_get_list_item(list_value, 1);
Azure.IoT Build 0:6ae2f7bca550 10278 if (item_value == NULL)
Azure.IoT Build 0:6ae2f7bca550 10279 {
Azure.IoT Build 0:6ae2f7bca550 10280 /* do nothing */
Azure.IoT Build 0:6ae2f7bca550 10281 }
Azure.IoT Build 0:6ae2f7bca550 10282 else
Azure.IoT Build 0:6ae2f7bca550 10283 {
Azure.IoT Build 0:6ae2f7bca550 10284 terminus_durability durable;
Azure.IoT Build 0:6ae2f7bca550 10285 if (amqpvalue_get_terminus_durability(item_value, &durable) != 0)
Azure.IoT Build 0:6ae2f7bca550 10286 {
Azure.IoT Build 0:6ae2f7bca550 10287 if (amqpvalue_get_type(item_value) != AMQP_TYPE_NULL)
Azure.IoT Build 0:6ae2f7bca550 10288 {
Azure.IoT Build 0:6ae2f7bca550 10289 target_destroy(*target_handle);
Azure.IoT Build 0:6ae2f7bca550 10290 result = __LINE__;
Azure.IoT Build 0:6ae2f7bca550 10291 break;
Azure.IoT Build 0:6ae2f7bca550 10292 }
Azure.IoT Build 0:6ae2f7bca550 10293 }
Azure.IoT Build 0:6ae2f7bca550 10294
Azure.IoT Build 0:6ae2f7bca550 10295 amqpvalue_destroy(item_value);
Azure.IoT Build 0:6ae2f7bca550 10296 }
Azure.IoT Build 0:6ae2f7bca550 10297 /* expiry-policy */
Azure.IoT Build 0:6ae2f7bca550 10298 item_value = amqpvalue_get_list_item(list_value, 2);
Azure.IoT Build 0:6ae2f7bca550 10299 if (item_value == NULL)
Azure.IoT Build 0:6ae2f7bca550 10300 {
Azure.IoT Build 0:6ae2f7bca550 10301 /* do nothing */
Azure.IoT Build 0:6ae2f7bca550 10302 }
Azure.IoT Build 0:6ae2f7bca550 10303 else
Azure.IoT Build 0:6ae2f7bca550 10304 {
Azure.IoT Build 0:6ae2f7bca550 10305 terminus_expiry_policy expiry_policy;
Azure.IoT Build 0:6ae2f7bca550 10306 if (amqpvalue_get_terminus_expiry_policy(item_value, &expiry_policy) != 0)
Azure.IoT Build 0:6ae2f7bca550 10307 {
Azure.IoT Build 0:6ae2f7bca550 10308 if (amqpvalue_get_type(item_value) != AMQP_TYPE_NULL)
Azure.IoT Build 0:6ae2f7bca550 10309 {
Azure.IoT Build 0:6ae2f7bca550 10310 target_destroy(*target_handle);
Azure.IoT Build 0:6ae2f7bca550 10311 result = __LINE__;
Azure.IoT Build 0:6ae2f7bca550 10312 break;
Azure.IoT Build 0:6ae2f7bca550 10313 }
Azure.IoT Build 0:6ae2f7bca550 10314 }
Azure.IoT Build 0:6ae2f7bca550 10315
Azure.IoT Build 0:6ae2f7bca550 10316 amqpvalue_destroy(item_value);
Azure.IoT Build 0:6ae2f7bca550 10317 }
Azure.IoT Build 0:6ae2f7bca550 10318 /* timeout */
Azure.IoT Build 0:6ae2f7bca550 10319 item_value = amqpvalue_get_list_item(list_value, 3);
Azure.IoT Build 0:6ae2f7bca550 10320 if (item_value == NULL)
Azure.IoT Build 0:6ae2f7bca550 10321 {
Azure.IoT Build 0:6ae2f7bca550 10322 /* do nothing */
Azure.IoT Build 0:6ae2f7bca550 10323 }
Azure.IoT Build 0:6ae2f7bca550 10324 else
Azure.IoT Build 0:6ae2f7bca550 10325 {
Azure.IoT Build 0:6ae2f7bca550 10326 seconds timeout;
Azure.IoT Build 0:6ae2f7bca550 10327 if (amqpvalue_get_seconds(item_value, &timeout) != 0)
Azure.IoT Build 0:6ae2f7bca550 10328 {
Azure.IoT Build 0:6ae2f7bca550 10329 if (amqpvalue_get_type(item_value) != AMQP_TYPE_NULL)
Azure.IoT Build 0:6ae2f7bca550 10330 {
Azure.IoT Build 0:6ae2f7bca550 10331 target_destroy(*target_handle);
Azure.IoT Build 0:6ae2f7bca550 10332 result = __LINE__;
Azure.IoT Build 0:6ae2f7bca550 10333 break;
Azure.IoT Build 0:6ae2f7bca550 10334 }
Azure.IoT Build 0:6ae2f7bca550 10335 }
Azure.IoT Build 0:6ae2f7bca550 10336
Azure.IoT Build 0:6ae2f7bca550 10337 amqpvalue_destroy(item_value);
Azure.IoT Build 0:6ae2f7bca550 10338 }
Azure.IoT Build 0:6ae2f7bca550 10339 /* dynamic */
Azure.IoT Build 0:6ae2f7bca550 10340 item_value = amqpvalue_get_list_item(list_value, 4);
Azure.IoT Build 0:6ae2f7bca550 10341 if (item_value == NULL)
Azure.IoT Build 0:6ae2f7bca550 10342 {
Azure.IoT Build 0:6ae2f7bca550 10343 /* do nothing */
Azure.IoT Build 0:6ae2f7bca550 10344 }
Azure.IoT Build 0:6ae2f7bca550 10345 else
Azure.IoT Build 0:6ae2f7bca550 10346 {
Azure.IoT Build 0:6ae2f7bca550 10347 bool dynamic;
Azure.IoT Build 0:6ae2f7bca550 10348 if (amqpvalue_get_boolean(item_value, &dynamic) != 0)
Azure.IoT Build 0:6ae2f7bca550 10349 {
Azure.IoT Build 0:6ae2f7bca550 10350 if (amqpvalue_get_type(item_value) != AMQP_TYPE_NULL)
Azure.IoT Build 0:6ae2f7bca550 10351 {
Azure.IoT Build 0:6ae2f7bca550 10352 target_destroy(*target_handle);
Azure.IoT Build 0:6ae2f7bca550 10353 result = __LINE__;
Azure.IoT Build 0:6ae2f7bca550 10354 break;
Azure.IoT Build 0:6ae2f7bca550 10355 }
Azure.IoT Build 0:6ae2f7bca550 10356 }
Azure.IoT Build 0:6ae2f7bca550 10357
Azure.IoT Build 0:6ae2f7bca550 10358 amqpvalue_destroy(item_value);
Azure.IoT Build 0:6ae2f7bca550 10359 }
Azure.IoT Build 0:6ae2f7bca550 10360 /* dynamic-node-properties */
Azure.IoT Build 0:6ae2f7bca550 10361 item_value = amqpvalue_get_list_item(list_value, 5);
Azure.IoT Build 0:6ae2f7bca550 10362 if (item_value == NULL)
Azure.IoT Build 0:6ae2f7bca550 10363 {
Azure.IoT Build 0:6ae2f7bca550 10364 /* do nothing */
Azure.IoT Build 0:6ae2f7bca550 10365 }
Azure.IoT Build 0:6ae2f7bca550 10366 else
Azure.IoT Build 0:6ae2f7bca550 10367 {
Azure.IoT Build 0:6ae2f7bca550 10368 node_properties dynamic_node_properties;
Azure.IoT Build 0:6ae2f7bca550 10369 if (amqpvalue_get_node_properties(item_value, &dynamic_node_properties) != 0)
Azure.IoT Build 0:6ae2f7bca550 10370 {
Azure.IoT Build 0:6ae2f7bca550 10371 if (amqpvalue_get_type(item_value) != AMQP_TYPE_NULL)
Azure.IoT Build 0:6ae2f7bca550 10372 {
Azure.IoT Build 0:6ae2f7bca550 10373 target_destroy(*target_handle);
Azure.IoT Build 0:6ae2f7bca550 10374 result = __LINE__;
Azure.IoT Build 0:6ae2f7bca550 10375 break;
Azure.IoT Build 0:6ae2f7bca550 10376 }
Azure.IoT Build 0:6ae2f7bca550 10377 }
Azure.IoT Build 0:6ae2f7bca550 10378
Azure.IoT Build 0:6ae2f7bca550 10379 amqpvalue_destroy(item_value);
Azure.IoT Build 0:6ae2f7bca550 10380 }
Azure.IoT Build 0:6ae2f7bca550 10381 /* capabilities */
Azure.IoT Build 0:6ae2f7bca550 10382 item_value = amqpvalue_get_list_item(list_value, 6);
Azure.IoT Build 0:6ae2f7bca550 10383 if (item_value == NULL)
Azure.IoT Build 0:6ae2f7bca550 10384 {
Azure.IoT Build 0:6ae2f7bca550 10385 /* do nothing */
Azure.IoT Build 0:6ae2f7bca550 10386 }
Azure.IoT Build 0:6ae2f7bca550 10387 else
Azure.IoT Build 0:6ae2f7bca550 10388 {
Azure.IoT Build 0:6ae2f7bca550 10389 const char* capabilities;
Azure.IoT Build 0:6ae2f7bca550 10390 AMQP_VALUE capabilities_array;
Azure.IoT Build 0:6ae2f7bca550 10391 if ((amqpvalue_get_array(item_value, &capabilities_array) != 0) &&
Azure.IoT Build 0:6ae2f7bca550 10392 (amqpvalue_get_symbol(item_value, &capabilities) != 0))
Azure.IoT Build 0:6ae2f7bca550 10393 {
Azure.IoT Build 0:6ae2f7bca550 10394 if (amqpvalue_get_type(item_value) != AMQP_TYPE_NULL)
Azure.IoT Build 0:6ae2f7bca550 10395 {
Azure.IoT Build 0:6ae2f7bca550 10396 target_destroy(*target_handle);
Azure.IoT Build 0:6ae2f7bca550 10397 result = __LINE__;
Azure.IoT Build 0:6ae2f7bca550 10398 break;
Azure.IoT Build 0:6ae2f7bca550 10399 }
Azure.IoT Build 0:6ae2f7bca550 10400 }
Azure.IoT Build 0:6ae2f7bca550 10401
Azure.IoT Build 0:6ae2f7bca550 10402 amqpvalue_destroy(item_value);
Azure.IoT Build 0:6ae2f7bca550 10403 }
Azure.IoT Build 0:6ae2f7bca550 10404
Azure.IoT Build 0:6ae2f7bca550 10405 target_instance->composite_value = amqpvalue_clone(value);
Azure.IoT Build 0:6ae2f7bca550 10406
Azure.IoT Build 0:6ae2f7bca550 10407 result = 0;
Azure.IoT Build 0:6ae2f7bca550 10408 } while (0);
Azure.IoT Build 0:6ae2f7bca550 10409 }
Azure.IoT Build 0:6ae2f7bca550 10410 }
Azure.IoT Build 0:6ae2f7bca550 10411
Azure.IoT Build 0:6ae2f7bca550 10412 return result;
Azure.IoT Build 0:6ae2f7bca550 10413 }
Azure.IoT Build 0:6ae2f7bca550 10414
Azure.IoT Build 0:6ae2f7bca550 10415 int target_get_address(TARGET_HANDLE target, AMQP_VALUE* address_value)
Azure.IoT Build 0:6ae2f7bca550 10416 {
Azure.IoT Build 0:6ae2f7bca550 10417 int result;
Azure.IoT Build 0:6ae2f7bca550 10418
Azure.IoT Build 0:6ae2f7bca550 10419 if (target == NULL)
Azure.IoT Build 0:6ae2f7bca550 10420 {
Azure.IoT Build 0:6ae2f7bca550 10421 result = __LINE__;
Azure.IoT Build 0:6ae2f7bca550 10422 }
Azure.IoT Build 0:6ae2f7bca550 10423 else
Azure.IoT Build 0:6ae2f7bca550 10424 {
Azure.IoT Build 0:6ae2f7bca550 10425 TARGET_INSTANCE* target_instance = (TARGET_INSTANCE*)target;
Azure.IoT Build 0:6ae2f7bca550 10426 AMQP_VALUE item_value = amqpvalue_get_composite_item_in_place(target_instance->composite_value, 0);
Azure.IoT Build 0:6ae2f7bca550 10427 if (item_value == NULL)
Azure.IoT Build 0:6ae2f7bca550 10428 {
Azure.IoT Build 0:6ae2f7bca550 10429 result = __LINE__;
Azure.IoT Build 0:6ae2f7bca550 10430 }
Azure.IoT Build 0:6ae2f7bca550 10431 else
Azure.IoT Build 0:6ae2f7bca550 10432 {
Azure.IoT Build 0:6ae2f7bca550 10433 *address_value = item_value;
Azure.IoT Build 0:6ae2f7bca550 10434 result = 0;
Azure.IoT Build 0:6ae2f7bca550 10435 }
Azure.IoT Build 0:6ae2f7bca550 10436 }
Azure.IoT Build 0:6ae2f7bca550 10437
Azure.IoT Build 0:6ae2f7bca550 10438 return result;
Azure.IoT Build 0:6ae2f7bca550 10439 }
Azure.IoT Build 0:6ae2f7bca550 10440
Azure.IoT Build 0:6ae2f7bca550 10441 int target_set_address(TARGET_HANDLE target, AMQP_VALUE address_value)
Azure.IoT Build 0:6ae2f7bca550 10442 {
Azure.IoT Build 0:6ae2f7bca550 10443 int result;
Azure.IoT Build 0:6ae2f7bca550 10444
Azure.IoT Build 0:6ae2f7bca550 10445 if (target == NULL)
Azure.IoT Build 0:6ae2f7bca550 10446 {
Azure.IoT Build 0:6ae2f7bca550 10447 result = __LINE__;
Azure.IoT Build 0:6ae2f7bca550 10448 }
Azure.IoT Build 0:6ae2f7bca550 10449 else
Azure.IoT Build 0:6ae2f7bca550 10450 {
Azure.IoT Build 0:6ae2f7bca550 10451 TARGET_INSTANCE* target_instance = (TARGET_INSTANCE*)target;
Azure.IoT Build 0:6ae2f7bca550 10452 AMQP_VALUE address_amqp_value = amqpvalue_clone(address_value);
Azure.IoT Build 0:6ae2f7bca550 10453 if (address_amqp_value == NULL)
Azure.IoT Build 0:6ae2f7bca550 10454 {
Azure.IoT Build 0:6ae2f7bca550 10455 result = __LINE__;
Azure.IoT Build 0:6ae2f7bca550 10456 }
Azure.IoT Build 0:6ae2f7bca550 10457 else
Azure.IoT Build 0:6ae2f7bca550 10458 {
Azure.IoT Build 0:6ae2f7bca550 10459 if (amqpvalue_set_composite_item(target_instance->composite_value, 0, address_amqp_value) != 0)
Azure.IoT Build 0:6ae2f7bca550 10460 {
Azure.IoT Build 0:6ae2f7bca550 10461 result = __LINE__;
Azure.IoT Build 0:6ae2f7bca550 10462 }
Azure.IoT Build 0:6ae2f7bca550 10463 else
Azure.IoT Build 0:6ae2f7bca550 10464 {
Azure.IoT Build 0:6ae2f7bca550 10465 result = 0;
Azure.IoT Build 0:6ae2f7bca550 10466 }
Azure.IoT Build 0:6ae2f7bca550 10467
Azure.IoT Build 0:6ae2f7bca550 10468 amqpvalue_destroy(address_amqp_value);
Azure.IoT Build 0:6ae2f7bca550 10469 }
Azure.IoT Build 0:6ae2f7bca550 10470 }
Azure.IoT Build 0:6ae2f7bca550 10471
Azure.IoT Build 0:6ae2f7bca550 10472 return result;
Azure.IoT Build 0:6ae2f7bca550 10473 }
Azure.IoT Build 0:6ae2f7bca550 10474
Azure.IoT Build 0:6ae2f7bca550 10475 int target_get_durable(TARGET_HANDLE target, terminus_durability* durable_value)
Azure.IoT Build 0:6ae2f7bca550 10476 {
Azure.IoT Build 0:6ae2f7bca550 10477 int result;
Azure.IoT Build 0:6ae2f7bca550 10478
Azure.IoT Build 0:6ae2f7bca550 10479 if (target == NULL)
Azure.IoT Build 0:6ae2f7bca550 10480 {
Azure.IoT Build 0:6ae2f7bca550 10481 result = __LINE__;
Azure.IoT Build 0:6ae2f7bca550 10482 }
Azure.IoT Build 0:6ae2f7bca550 10483 else
Azure.IoT Build 0:6ae2f7bca550 10484 {
Azure.IoT Build 0:6ae2f7bca550 10485 TARGET_INSTANCE* target_instance = (TARGET_INSTANCE*)target;
Azure.IoT Build 0:6ae2f7bca550 10486 AMQP_VALUE item_value = amqpvalue_get_composite_item_in_place(target_instance->composite_value, 1);
Azure.IoT Build 0:6ae2f7bca550 10487 if (item_value == NULL)
Azure.IoT Build 0:6ae2f7bca550 10488 {
AzureIoTClient 16:22a72cf8e416 10489 *durable_value = terminus_durability_none;
AzureIoTClient 16:22a72cf8e416 10490 result = 0;
Azure.IoT Build 0:6ae2f7bca550 10491 }
Azure.IoT Build 0:6ae2f7bca550 10492 else
Azure.IoT Build 0:6ae2f7bca550 10493 {
Azure.IoT Build 0:6ae2f7bca550 10494 if (amqpvalue_get_terminus_durability(item_value, durable_value) != 0)
Azure.IoT Build 0:6ae2f7bca550 10495 {
AzureIoTClient 16:22a72cf8e416 10496 if (amqpvalue_get_type(item_value) == AMQP_TYPE_NULL)
AzureIoTClient 16:22a72cf8e416 10497 {
AzureIoTClient 16:22a72cf8e416 10498 result = __LINE__;
AzureIoTClient 16:22a72cf8e416 10499 }
AzureIoTClient 16:22a72cf8e416 10500 else
AzureIoTClient 16:22a72cf8e416 10501 {
AzureIoTClient 16:22a72cf8e416 10502 *durable_value = terminus_durability_none;
AzureIoTClient 16:22a72cf8e416 10503 result = 0;
AzureIoTClient 16:22a72cf8e416 10504 }
Azure.IoT Build 0:6ae2f7bca550 10505 }
Azure.IoT Build 0:6ae2f7bca550 10506 else
Azure.IoT Build 0:6ae2f7bca550 10507 {
Azure.IoT Build 0:6ae2f7bca550 10508 result = 0;
Azure.IoT Build 0:6ae2f7bca550 10509 }
Azure.IoT Build 0:6ae2f7bca550 10510 }
Azure.IoT Build 0:6ae2f7bca550 10511 }
Azure.IoT Build 0:6ae2f7bca550 10512
Azure.IoT Build 0:6ae2f7bca550 10513 return result;
Azure.IoT Build 0:6ae2f7bca550 10514 }
Azure.IoT Build 0:6ae2f7bca550 10515
Azure.IoT Build 0:6ae2f7bca550 10516 int target_set_durable(TARGET_HANDLE target, terminus_durability durable_value)
Azure.IoT Build 0:6ae2f7bca550 10517 {
Azure.IoT Build 0:6ae2f7bca550 10518 int result;
Azure.IoT Build 0:6ae2f7bca550 10519
Azure.IoT Build 0:6ae2f7bca550 10520 if (target == NULL)
Azure.IoT Build 0:6ae2f7bca550 10521 {
Azure.IoT Build 0:6ae2f7bca550 10522 result = __LINE__;
Azure.IoT Build 0:6ae2f7bca550 10523 }
Azure.IoT Build 0:6ae2f7bca550 10524 else
Azure.IoT Build 0:6ae2f7bca550 10525 {
Azure.IoT Build 0:6ae2f7bca550 10526 TARGET_INSTANCE* target_instance = (TARGET_INSTANCE*)target;
Azure.IoT Build 0:6ae2f7bca550 10527 AMQP_VALUE durable_amqp_value = amqpvalue_create_terminus_durability(durable_value);
Azure.IoT Build 0:6ae2f7bca550 10528 if (durable_amqp_value == NULL)
Azure.IoT Build 0:6ae2f7bca550 10529 {
Azure.IoT Build 0:6ae2f7bca550 10530 result = __LINE__;
Azure.IoT Build 0:6ae2f7bca550 10531 }
Azure.IoT Build 0:6ae2f7bca550 10532 else
Azure.IoT Build 0:6ae2f7bca550 10533 {
Azure.IoT Build 0:6ae2f7bca550 10534 if (amqpvalue_set_composite_item(target_instance->composite_value, 1, durable_amqp_value) != 0)
Azure.IoT Build 0:6ae2f7bca550 10535 {
Azure.IoT Build 0:6ae2f7bca550 10536 result = __LINE__;
Azure.IoT Build 0:6ae2f7bca550 10537 }
Azure.IoT Build 0:6ae2f7bca550 10538 else
Azure.IoT Build 0:6ae2f7bca550 10539 {
Azure.IoT Build 0:6ae2f7bca550 10540 result = 0;
Azure.IoT Build 0:6ae2f7bca550 10541 }
Azure.IoT Build 0:6ae2f7bca550 10542
Azure.IoT Build 0:6ae2f7bca550 10543 amqpvalue_destroy(durable_amqp_value);
Azure.IoT Build 0:6ae2f7bca550 10544 }
Azure.IoT Build 0:6ae2f7bca550 10545 }
Azure.IoT Build 0:6ae2f7bca550 10546
Azure.IoT Build 0:6ae2f7bca550 10547 return result;
Azure.IoT Build 0:6ae2f7bca550 10548 }
Azure.IoT Build 0:6ae2f7bca550 10549
Azure.IoT Build 0:6ae2f7bca550 10550 int target_get_expiry_policy(TARGET_HANDLE target, terminus_expiry_policy* expiry_policy_value)
Azure.IoT Build 0:6ae2f7bca550 10551 {
Azure.IoT Build 0:6ae2f7bca550 10552 int result;
Azure.IoT Build 0:6ae2f7bca550 10553
Azure.IoT Build 0:6ae2f7bca550 10554 if (target == NULL)
Azure.IoT Build 0:6ae2f7bca550 10555 {
Azure.IoT Build 0:6ae2f7bca550 10556 result = __LINE__;
Azure.IoT Build 0:6ae2f7bca550 10557 }
Azure.IoT Build 0:6ae2f7bca550 10558 else
Azure.IoT Build 0:6ae2f7bca550 10559 {
Azure.IoT Build 0:6ae2f7bca550 10560 TARGET_INSTANCE* target_instance = (TARGET_INSTANCE*)target;
Azure.IoT Build 0:6ae2f7bca550 10561 AMQP_VALUE item_value = amqpvalue_get_composite_item_in_place(target_instance->composite_value, 2);
Azure.IoT Build 0:6ae2f7bca550 10562 if (item_value == NULL)
Azure.IoT Build 0:6ae2f7bca550 10563 {
AzureIoTClient 16:22a72cf8e416 10564 *expiry_policy_value = terminus_expiry_policy_session_end;
AzureIoTClient 16:22a72cf8e416 10565 result = 0;
Azure.IoT Build 0:6ae2f7bca550 10566 }
Azure.IoT Build 0:6ae2f7bca550 10567 else
Azure.IoT Build 0:6ae2f7bca550 10568 {
Azure.IoT Build 0:6ae2f7bca550 10569 if (amqpvalue_get_terminus_expiry_policy(item_value, expiry_policy_value) != 0)
Azure.IoT Build 0:6ae2f7bca550 10570 {
AzureIoTClient 16:22a72cf8e416 10571 if (amqpvalue_get_type(item_value) == AMQP_TYPE_NULL)
AzureIoTClient 16:22a72cf8e416 10572 {
AzureIoTClient 16:22a72cf8e416 10573 result = __LINE__;
AzureIoTClient 16:22a72cf8e416 10574 }
AzureIoTClient 16:22a72cf8e416 10575 else
AzureIoTClient 16:22a72cf8e416 10576 {
AzureIoTClient 16:22a72cf8e416 10577 *expiry_policy_value = terminus_expiry_policy_session_end;
AzureIoTClient 16:22a72cf8e416 10578 result = 0;
AzureIoTClient 16:22a72cf8e416 10579 }
Azure.IoT Build 0:6ae2f7bca550 10580 }
Azure.IoT Build 0:6ae2f7bca550 10581 else
Azure.IoT Build 0:6ae2f7bca550 10582 {
Azure.IoT Build 0:6ae2f7bca550 10583 result = 0;
Azure.IoT Build 0:6ae2f7bca550 10584 }
Azure.IoT Build 0:6ae2f7bca550 10585 }
Azure.IoT Build 0:6ae2f7bca550 10586 }
Azure.IoT Build 0:6ae2f7bca550 10587
Azure.IoT Build 0:6ae2f7bca550 10588 return result;
Azure.IoT Build 0:6ae2f7bca550 10589 }
Azure.IoT Build 0:6ae2f7bca550 10590
Azure.IoT Build 0:6ae2f7bca550 10591 int target_set_expiry_policy(TARGET_HANDLE target, terminus_expiry_policy expiry_policy_value)
Azure.IoT Build 0:6ae2f7bca550 10592 {
Azure.IoT Build 0:6ae2f7bca550 10593 int result;
Azure.IoT Build 0:6ae2f7bca550 10594
Azure.IoT Build 0:6ae2f7bca550 10595 if (target == NULL)
Azure.IoT Build 0:6ae2f7bca550 10596 {
Azure.IoT Build 0:6ae2f7bca550 10597 result = __LINE__;
Azure.IoT Build 0:6ae2f7bca550 10598 }
Azure.IoT Build 0:6ae2f7bca550 10599 else
Azure.IoT Build 0:6ae2f7bca550 10600 {
Azure.IoT Build 0:6ae2f7bca550 10601 TARGET_INSTANCE* target_instance = (TARGET_INSTANCE*)target;
Azure.IoT Build 0:6ae2f7bca550 10602 AMQP_VALUE expiry_policy_amqp_value = amqpvalue_create_terminus_expiry_policy(expiry_policy_value);
Azure.IoT Build 0:6ae2f7bca550 10603 if (expiry_policy_amqp_value == NULL)
Azure.IoT Build 0:6ae2f7bca550 10604 {
Azure.IoT Build 0:6ae2f7bca550 10605 result = __LINE__;
Azure.IoT Build 0:6ae2f7bca550 10606 }
Azure.IoT Build 0:6ae2f7bca550 10607 else
Azure.IoT Build 0:6ae2f7bca550 10608 {
Azure.IoT Build 0:6ae2f7bca550 10609 if (amqpvalue_set_composite_item(target_instance->composite_value, 2, expiry_policy_amqp_value) != 0)
Azure.IoT Build 0:6ae2f7bca550 10610 {
Azure.IoT Build 0:6ae2f7bca550 10611 result = __LINE__;
Azure.IoT Build 0:6ae2f7bca550 10612 }
Azure.IoT Build 0:6ae2f7bca550 10613 else
Azure.IoT Build 0:6ae2f7bca550 10614 {
Azure.IoT Build 0:6ae2f7bca550 10615 result = 0;
Azure.IoT Build 0:6ae2f7bca550 10616 }
Azure.IoT Build 0:6ae2f7bca550 10617
Azure.IoT Build 0:6ae2f7bca550 10618 amqpvalue_destroy(expiry_policy_amqp_value);
Azure.IoT Build 0:6ae2f7bca550 10619 }
Azure.IoT Build 0:6ae2f7bca550 10620 }
Azure.IoT Build 0:6ae2f7bca550 10621
Azure.IoT Build 0:6ae2f7bca550 10622 return result;
Azure.IoT Build 0:6ae2f7bca550 10623 }
Azure.IoT Build 0:6ae2f7bca550 10624
Azure.IoT Build 0:6ae2f7bca550 10625 int target_get_timeout(TARGET_HANDLE target, seconds* timeout_value)
Azure.IoT Build 0:6ae2f7bca550 10626 {
Azure.IoT Build 0:6ae2f7bca550 10627 int result;
Azure.IoT Build 0:6ae2f7bca550 10628
Azure.IoT Build 0:6ae2f7bca550 10629 if (target == NULL)
Azure.IoT Build 0:6ae2f7bca550 10630 {
Azure.IoT Build 0:6ae2f7bca550 10631 result = __LINE__;
Azure.IoT Build 0:6ae2f7bca550 10632 }
Azure.IoT Build 0:6ae2f7bca550 10633 else
Azure.IoT Build 0:6ae2f7bca550 10634 {
Azure.IoT Build 0:6ae2f7bca550 10635 TARGET_INSTANCE* target_instance = (TARGET_INSTANCE*)target;
Azure.IoT Build 0:6ae2f7bca550 10636 AMQP_VALUE item_value = amqpvalue_get_composite_item_in_place(target_instance->composite_value, 3);
Azure.IoT Build 0:6ae2f7bca550 10637 if (item_value == NULL)
Azure.IoT Build 0:6ae2f7bca550 10638 {
AzureIoTClient 16:22a72cf8e416 10639 *timeout_value = 0;
AzureIoTClient 16:22a72cf8e416 10640 result = 0;
Azure.IoT Build 0:6ae2f7bca550 10641 }
Azure.IoT Build 0:6ae2f7bca550 10642 else
Azure.IoT Build 0:6ae2f7bca550 10643 {
Azure.IoT Build 0:6ae2f7bca550 10644 if (amqpvalue_get_seconds(item_value, timeout_value) != 0)
Azure.IoT Build 0:6ae2f7bca550 10645 {
AzureIoTClient 16:22a72cf8e416 10646 if (amqpvalue_get_type(item_value) == AMQP_TYPE_NULL)
AzureIoTClient 16:22a72cf8e416 10647 {
AzureIoTClient 16:22a72cf8e416 10648 result = __LINE__;
AzureIoTClient 16:22a72cf8e416 10649 }
AzureIoTClient 16:22a72cf8e416 10650 else
AzureIoTClient 16:22a72cf8e416 10651 {
AzureIoTClient 16:22a72cf8e416 10652 *timeout_value = 0;
AzureIoTClient 16:22a72cf8e416 10653 result = 0;
AzureIoTClient 16:22a72cf8e416 10654 }
Azure.IoT Build 0:6ae2f7bca550 10655 }
Azure.IoT Build 0:6ae2f7bca550 10656 else
Azure.IoT Build 0:6ae2f7bca550 10657 {
Azure.IoT Build 0:6ae2f7bca550 10658 result = 0;
Azure.IoT Build 0:6ae2f7bca550 10659 }
Azure.IoT Build 0:6ae2f7bca550 10660 }
Azure.IoT Build 0:6ae2f7bca550 10661 }
Azure.IoT Build 0:6ae2f7bca550 10662
Azure.IoT Build 0:6ae2f7bca550 10663 return result;
Azure.IoT Build 0:6ae2f7bca550 10664 }
Azure.IoT Build 0:6ae2f7bca550 10665
Azure.IoT Build 0:6ae2f7bca550 10666 int target_set_timeout(TARGET_HANDLE target, seconds timeout_value)
Azure.IoT Build 0:6ae2f7bca550 10667 {
Azure.IoT Build 0:6ae2f7bca550 10668 int result;
Azure.IoT Build 0:6ae2f7bca550 10669
Azure.IoT Build 0:6ae2f7bca550 10670 if (target == NULL)
Azure.IoT Build 0:6ae2f7bca550 10671 {
Azure.IoT Build 0:6ae2f7bca550 10672 result = __LINE__;
Azure.IoT Build 0:6ae2f7bca550 10673 }
Azure.IoT Build 0:6ae2f7bca550 10674 else
Azure.IoT Build 0:6ae2f7bca550 10675 {
Azure.IoT Build 0:6ae2f7bca550 10676 TARGET_INSTANCE* target_instance = (TARGET_INSTANCE*)target;
Azure.IoT Build 0:6ae2f7bca550 10677 AMQP_VALUE timeout_amqp_value = amqpvalue_create_seconds(timeout_value);
Azure.IoT Build 0:6ae2f7bca550 10678 if (timeout_amqp_value == NULL)
Azure.IoT Build 0:6ae2f7bca550 10679 {
Azure.IoT Build 0:6ae2f7bca550 10680 result = __LINE__;
Azure.IoT Build 0:6ae2f7bca550 10681 }
Azure.IoT Build 0:6ae2f7bca550 10682 else
Azure.IoT Build 0:6ae2f7bca550 10683 {
Azure.IoT Build 0:6ae2f7bca550 10684 if (amqpvalue_set_composite_item(target_instance->composite_value, 3, timeout_amqp_value) != 0)
Azure.IoT Build 0:6ae2f7bca550 10685 {
Azure.IoT Build 0:6ae2f7bca550 10686 result = __LINE__;
Azure.IoT Build 0:6ae2f7bca550 10687 }
Azure.IoT Build 0:6ae2f7bca550 10688 else
Azure.IoT Build 0:6ae2f7bca550 10689 {
Azure.IoT Build 0:6ae2f7bca550 10690 result = 0;
Azure.IoT Build 0:6ae2f7bca550 10691 }
Azure.IoT Build 0:6ae2f7bca550 10692
Azure.IoT Build 0:6ae2f7bca550 10693 amqpvalue_destroy(timeout_amqp_value);
Azure.IoT Build 0:6ae2f7bca550 10694 }
Azure.IoT Build 0:6ae2f7bca550 10695 }
Azure.IoT Build 0:6ae2f7bca550 10696
Azure.IoT Build 0:6ae2f7bca550 10697 return result;
Azure.IoT Build 0:6ae2f7bca550 10698 }
Azure.IoT Build 0:6ae2f7bca550 10699
Azure.IoT Build 0:6ae2f7bca550 10700 int target_get_dynamic(TARGET_HANDLE target, bool* dynamic_value)
Azure.IoT Build 0:6ae2f7bca550 10701 {
Azure.IoT Build 0:6ae2f7bca550 10702 int result;
Azure.IoT Build 0:6ae2f7bca550 10703
Azure.IoT Build 0:6ae2f7bca550 10704 if (target == NULL)
Azure.IoT Build 0:6ae2f7bca550 10705 {
Azure.IoT Build 0:6ae2f7bca550 10706 result = __LINE__;
Azure.IoT Build 0:6ae2f7bca550 10707 }
Azure.IoT Build 0:6ae2f7bca550 10708 else
Azure.IoT Build 0:6ae2f7bca550 10709 {
Azure.IoT Build 0:6ae2f7bca550 10710 TARGET_INSTANCE* target_instance = (TARGET_INSTANCE*)target;
Azure.IoT Build 0:6ae2f7bca550 10711 AMQP_VALUE item_value = amqpvalue_get_composite_item_in_place(target_instance->composite_value, 4);
Azure.IoT Build 0:6ae2f7bca550 10712 if (item_value == NULL)
Azure.IoT Build 0:6ae2f7bca550 10713 {
AzureIoTClient 16:22a72cf8e416 10714 *dynamic_value = false;
AzureIoTClient 16:22a72cf8e416 10715 result = 0;
Azure.IoT Build 0:6ae2f7bca550 10716 }
Azure.IoT Build 0:6ae2f7bca550 10717 else
Azure.IoT Build 0:6ae2f7bca550 10718 {
Azure.IoT Build 0:6ae2f7bca550 10719 if (amqpvalue_get_boolean(item_value, dynamic_value) != 0)
Azure.IoT Build 0:6ae2f7bca550 10720 {
AzureIoTClient 16:22a72cf8e416 10721 if (amqpvalue_get_type(item_value) == AMQP_TYPE_NULL)
AzureIoTClient 16:22a72cf8e416 10722 {
AzureIoTClient 16:22a72cf8e416 10723 result = __LINE__;
AzureIoTClient 16:22a72cf8e416 10724 }
AzureIoTClient 16:22a72cf8e416 10725 else
AzureIoTClient 16:22a72cf8e416 10726 {
AzureIoTClient 16:22a72cf8e416 10727 *dynamic_value = false;
AzureIoTClient 16:22a72cf8e416 10728 result = 0;
AzureIoTClient 16:22a72cf8e416 10729 }
Azure.IoT Build 0:6ae2f7bca550 10730 }
Azure.IoT Build 0:6ae2f7bca550 10731 else
Azure.IoT Build 0:6ae2f7bca550 10732 {
Azure.IoT Build 0:6ae2f7bca550 10733 result = 0;
Azure.IoT Build 0:6ae2f7bca550 10734 }
Azure.IoT Build 0:6ae2f7bca550 10735 }
Azure.IoT Build 0:6ae2f7bca550 10736 }
Azure.IoT Build 0:6ae2f7bca550 10737
Azure.IoT Build 0:6ae2f7bca550 10738 return result;
Azure.IoT Build 0:6ae2f7bca550 10739 }
Azure.IoT Build 0:6ae2f7bca550 10740
Azure.IoT Build 0:6ae2f7bca550 10741 int target_set_dynamic(TARGET_HANDLE target, bool dynamic_value)
Azure.IoT Build 0:6ae2f7bca550 10742 {
Azure.IoT Build 0:6ae2f7bca550 10743 int result;
Azure.IoT Build 0:6ae2f7bca550 10744
Azure.IoT Build 0:6ae2f7bca550 10745 if (target == NULL)
Azure.IoT Build 0:6ae2f7bca550 10746 {
Azure.IoT Build 0:6ae2f7bca550 10747 result = __LINE__;
Azure.IoT Build 0:6ae2f7bca550 10748 }
Azure.IoT Build 0:6ae2f7bca550 10749 else
Azure.IoT Build 0:6ae2f7bca550 10750 {
Azure.IoT Build 0:6ae2f7bca550 10751 TARGET_INSTANCE* target_instance = (TARGET_INSTANCE*)target;
Azure.IoT Build 0:6ae2f7bca550 10752 AMQP_VALUE dynamic_amqp_value = amqpvalue_create_boolean(dynamic_value);
Azure.IoT Build 0:6ae2f7bca550 10753 if (dynamic_amqp_value == NULL)
Azure.IoT Build 0:6ae2f7bca550 10754 {
Azure.IoT Build 0:6ae2f7bca550 10755 result = __LINE__;
Azure.IoT Build 0:6ae2f7bca550 10756 }
Azure.IoT Build 0:6ae2f7bca550 10757 else
Azure.IoT Build 0:6ae2f7bca550 10758 {
Azure.IoT Build 0:6ae2f7bca550 10759 if (amqpvalue_set_composite_item(target_instance->composite_value, 4, dynamic_amqp_value) != 0)
Azure.IoT Build 0:6ae2f7bca550 10760 {
Azure.IoT Build 0:6ae2f7bca550 10761 result = __LINE__;
Azure.IoT Build 0:6ae2f7bca550 10762 }
Azure.IoT Build 0:6ae2f7bca550 10763 else
Azure.IoT Build 0:6ae2f7bca550 10764 {
Azure.IoT Build 0:6ae2f7bca550 10765 result = 0;
Azure.IoT Build 0:6ae2f7bca550 10766 }
Azure.IoT Build 0:6ae2f7bca550 10767
Azure.IoT Build 0:6ae2f7bca550 10768 amqpvalue_destroy(dynamic_amqp_value);
Azure.IoT Build 0:6ae2f7bca550 10769 }
Azure.IoT Build 0:6ae2f7bca550 10770 }
Azure.IoT Build 0:6ae2f7bca550 10771
Azure.IoT Build 0:6ae2f7bca550 10772 return result;
Azure.IoT Build 0:6ae2f7bca550 10773 }
Azure.IoT Build 0:6ae2f7bca550 10774
Azure.IoT Build 0:6ae2f7bca550 10775 int target_get_dynamic_node_properties(TARGET_HANDLE target, node_properties* dynamic_node_properties_value)
Azure.IoT Build 0:6ae2f7bca550 10776 {
Azure.IoT Build 0:6ae2f7bca550 10777 int result;
Azure.IoT Build 0:6ae2f7bca550 10778
Azure.IoT Build 0:6ae2f7bca550 10779 if (target == NULL)
Azure.IoT Build 0:6ae2f7bca550 10780 {
Azure.IoT Build 0:6ae2f7bca550 10781 result = __LINE__;
Azure.IoT Build 0:6ae2f7bca550 10782 }
Azure.IoT Build 0:6ae2f7bca550 10783 else
Azure.IoT Build 0:6ae2f7bca550 10784 {
Azure.IoT Build 0:6ae2f7bca550 10785 TARGET_INSTANCE* target_instance = (TARGET_INSTANCE*)target;
Azure.IoT Build 0:6ae2f7bca550 10786 AMQP_VALUE item_value = amqpvalue_get_composite_item_in_place(target_instance->composite_value, 5);
Azure.IoT Build 0:6ae2f7bca550 10787 if (item_value == NULL)
Azure.IoT Build 0:6ae2f7bca550 10788 {
Azure.IoT Build 0:6ae2f7bca550 10789 result = __LINE__;
Azure.IoT Build 0:6ae2f7bca550 10790 }
Azure.IoT Build 0:6ae2f7bca550 10791 else
Azure.IoT Build 0:6ae2f7bca550 10792 {
Azure.IoT Build 0:6ae2f7bca550 10793 if (amqpvalue_get_node_properties(item_value, dynamic_node_properties_value) != 0)
Azure.IoT Build 0:6ae2f7bca550 10794 {
AzureIoTClient 16:22a72cf8e416 10795 result = __LINE__;
Azure.IoT Build 0:6ae2f7bca550 10796 }
Azure.IoT Build 0:6ae2f7bca550 10797 else
Azure.IoT Build 0:6ae2f7bca550 10798 {
Azure.IoT Build 0:6ae2f7bca550 10799 result = 0;
Azure.IoT Build 0:6ae2f7bca550 10800 }
Azure.IoT Build 0:6ae2f7bca550 10801 }
Azure.IoT Build 0:6ae2f7bca550 10802 }
Azure.IoT Build 0:6ae2f7bca550 10803
Azure.IoT Build 0:6ae2f7bca550 10804 return result;
Azure.IoT Build 0:6ae2f7bca550 10805 }
Azure.IoT Build 0:6ae2f7bca550 10806
Azure.IoT Build 0:6ae2f7bca550 10807 int target_set_dynamic_node_properties(TARGET_HANDLE target, node_properties dynamic_node_properties_value)
Azure.IoT Build 0:6ae2f7bca550 10808 {
Azure.IoT Build 0:6ae2f7bca550 10809 int result;
Azure.IoT Build 0:6ae2f7bca550 10810
Azure.IoT Build 0:6ae2f7bca550 10811 if (target == NULL)
Azure.IoT Build 0:6ae2f7bca550 10812 {
Azure.IoT Build 0:6ae2f7bca550 10813 result = __LINE__;
Azure.IoT Build 0:6ae2f7bca550 10814 }
Azure.IoT Build 0:6ae2f7bca550 10815 else
Azure.IoT Build 0:6ae2f7bca550 10816 {
Azure.IoT Build 0:6ae2f7bca550 10817 TARGET_INSTANCE* target_instance = (TARGET_INSTANCE*)target;
Azure.IoT Build 0:6ae2f7bca550 10818 AMQP_VALUE dynamic_node_properties_amqp_value = amqpvalue_create_node_properties(dynamic_node_properties_value);
Azure.IoT Build 0:6ae2f7bca550 10819 if (dynamic_node_properties_amqp_value == NULL)
Azure.IoT Build 0:6ae2f7bca550 10820 {
Azure.IoT Build 0:6ae2f7bca550 10821 result = __LINE__;
Azure.IoT Build 0:6ae2f7bca550 10822 }
Azure.IoT Build 0:6ae2f7bca550 10823 else
Azure.IoT Build 0:6ae2f7bca550 10824 {
Azure.IoT Build 0:6ae2f7bca550 10825 if (amqpvalue_set_composite_item(target_instance->composite_value, 5, dynamic_node_properties_amqp_value) != 0)
Azure.IoT Build 0:6ae2f7bca550 10826 {
Azure.IoT Build 0:6ae2f7bca550 10827 result = __LINE__;
Azure.IoT Build 0:6ae2f7bca550 10828 }
Azure.IoT Build 0:6ae2f7bca550 10829 else
Azure.IoT Build 0:6ae2f7bca550 10830 {
Azure.IoT Build 0:6ae2f7bca550 10831 result = 0;
Azure.IoT Build 0:6ae2f7bca550 10832 }
Azure.IoT Build 0:6ae2f7bca550 10833
Azure.IoT Build 0:6ae2f7bca550 10834 amqpvalue_destroy(dynamic_node_properties_amqp_value);
Azure.IoT Build 0:6ae2f7bca550 10835 }
Azure.IoT Build 0:6ae2f7bca550 10836 }
Azure.IoT Build 0:6ae2f7bca550 10837
Azure.IoT Build 0:6ae2f7bca550 10838 return result;
Azure.IoT Build 0:6ae2f7bca550 10839 }
Azure.IoT Build 0:6ae2f7bca550 10840
Azure.IoT Build 0:6ae2f7bca550 10841 int target_get_capabilities(TARGET_HANDLE target, AMQP_VALUE* capabilities_value)
Azure.IoT Build 0:6ae2f7bca550 10842 {
Azure.IoT Build 0:6ae2f7bca550 10843 int result;
Azure.IoT Build 0:6ae2f7bca550 10844
Azure.IoT Build 0:6ae2f7bca550 10845 if (target == NULL)
Azure.IoT Build 0:6ae2f7bca550 10846 {
Azure.IoT Build 0:6ae2f7bca550 10847 result = __LINE__;
Azure.IoT Build 0:6ae2f7bca550 10848 }
Azure.IoT Build 0:6ae2f7bca550 10849 else
Azure.IoT Build 0:6ae2f7bca550 10850 {
Azure.IoT Build 0:6ae2f7bca550 10851 TARGET_INSTANCE* target_instance = (TARGET_INSTANCE*)target;
Azure.IoT Build 0:6ae2f7bca550 10852 AMQP_VALUE item_value = amqpvalue_get_composite_item_in_place(target_instance->composite_value, 6);
Azure.IoT Build 0:6ae2f7bca550 10853 if (item_value == NULL)
Azure.IoT Build 0:6ae2f7bca550 10854 {
Azure.IoT Build 0:6ae2f7bca550 10855 result = __LINE__;
Azure.IoT Build 0:6ae2f7bca550 10856 }
Azure.IoT Build 0:6ae2f7bca550 10857 else
Azure.IoT Build 0:6ae2f7bca550 10858 {
Azure.IoT Build 0:6ae2f7bca550 10859 if (amqpvalue_get_array(item_value, capabilities_value) != 0)
Azure.IoT Build 0:6ae2f7bca550 10860 {
AzureIoTClient 16:22a72cf8e416 10861 result = __LINE__;
Azure.IoT Build 0:6ae2f7bca550 10862 }
Azure.IoT Build 0:6ae2f7bca550 10863 else
Azure.IoT Build 0:6ae2f7bca550 10864 {
Azure.IoT Build 0:6ae2f7bca550 10865 result = 0;
Azure.IoT Build 0:6ae2f7bca550 10866 }
Azure.IoT Build 0:6ae2f7bca550 10867 }
Azure.IoT Build 0:6ae2f7bca550 10868 }
Azure.IoT Build 0:6ae2f7bca550 10869
Azure.IoT Build 0:6ae2f7bca550 10870 return result;
Azure.IoT Build 0:6ae2f7bca550 10871 }
Azure.IoT Build 0:6ae2f7bca550 10872
Azure.IoT Build 0:6ae2f7bca550 10873 int target_set_capabilities(TARGET_HANDLE target, AMQP_VALUE capabilities_value)
Azure.IoT Build 0:6ae2f7bca550 10874 {
Azure.IoT Build 0:6ae2f7bca550 10875 int result;
Azure.IoT Build 0:6ae2f7bca550 10876
Azure.IoT Build 0:6ae2f7bca550 10877 if (target == NULL)
Azure.IoT Build 0:6ae2f7bca550 10878 {
Azure.IoT Build 0:6ae2f7bca550 10879 result = __LINE__;
Azure.IoT Build 0:6ae2f7bca550 10880 }
Azure.IoT Build 0:6ae2f7bca550 10881 else
Azure.IoT Build 0:6ae2f7bca550 10882 {
Azure.IoT Build 0:6ae2f7bca550 10883 TARGET_INSTANCE* target_instance = (TARGET_INSTANCE*)target;
Azure.IoT Build 0:6ae2f7bca550 10884 AMQP_VALUE capabilities_amqp_value = amqpvalue_clone(capabilities_value);
Azure.IoT Build 0:6ae2f7bca550 10885 if (capabilities_amqp_value == NULL)
Azure.IoT Build 0:6ae2f7bca550 10886 {
Azure.IoT Build 0:6ae2f7bca550 10887 result = __LINE__;
Azure.IoT Build 0:6ae2f7bca550 10888 }
Azure.IoT Build 0:6ae2f7bca550 10889 else
Azure.IoT Build 0:6ae2f7bca550 10890 {
Azure.IoT Build 0:6ae2f7bca550 10891 if (amqpvalue_set_composite_item(target_instance->composite_value, 6, capabilities_amqp_value) != 0)
Azure.IoT Build 0:6ae2f7bca550 10892 {
Azure.IoT Build 0:6ae2f7bca550 10893 result = __LINE__;
Azure.IoT Build 0:6ae2f7bca550 10894 }
Azure.IoT Build 0:6ae2f7bca550 10895 else
Azure.IoT Build 0:6ae2f7bca550 10896 {
Azure.IoT Build 0:6ae2f7bca550 10897 result = 0;
Azure.IoT Build 0:6ae2f7bca550 10898 }
Azure.IoT Build 0:6ae2f7bca550 10899
Azure.IoT Build 0:6ae2f7bca550 10900 amqpvalue_destroy(capabilities_amqp_value);
Azure.IoT Build 0:6ae2f7bca550 10901 }
Azure.IoT Build 0:6ae2f7bca550 10902 }
Azure.IoT Build 0:6ae2f7bca550 10903
Azure.IoT Build 0:6ae2f7bca550 10904 return result;
Azure.IoT Build 0:6ae2f7bca550 10905 }
Azure.IoT Build 0:6ae2f7bca550 10906
Azure.IoT Build 0:6ae2f7bca550 10907
Azure.IoT Build 0:6ae2f7bca550 10908 /* annotations */
Azure.IoT Build 0:6ae2f7bca550 10909
Azure.IoT Build 0:6ae2f7bca550 10910 AMQP_VALUE amqpvalue_create_annotations(AMQP_VALUE value)
Azure.IoT Build 0:6ae2f7bca550 10911 {
Azure.IoT Build 0:6ae2f7bca550 10912 return amqpvalue_clone(value);
Azure.IoT Build 0:6ae2f7bca550 10913 }
Azure.IoT Build 0:6ae2f7bca550 10914
Azure.IoT Build 0:6ae2f7bca550 10915 /* message-id-ulong */
Azure.IoT Build 0:6ae2f7bca550 10916
Azure.IoT Build 0:6ae2f7bca550 10917 AMQP_VALUE amqpvalue_create_message_id_ulong(message_id_ulong value)
Azure.IoT Build 0:6ae2f7bca550 10918 {
Azure.IoT Build 0:6ae2f7bca550 10919 return amqpvalue_create_ulong(value);
Azure.IoT Build 0:6ae2f7bca550 10920 }
Azure.IoT Build 0:6ae2f7bca550 10921
Azure.IoT Build 0:6ae2f7bca550 10922 /* message-id-uuid */
Azure.IoT Build 0:6ae2f7bca550 10923
Azure.IoT Build 0:6ae2f7bca550 10924 AMQP_VALUE amqpvalue_create_message_id_uuid(message_id_uuid value)
Azure.IoT Build 0:6ae2f7bca550 10925 {
Azure.IoT Build 0:6ae2f7bca550 10926 return amqpvalue_create_uuid(value);
Azure.IoT Build 0:6ae2f7bca550 10927 }
Azure.IoT Build 0:6ae2f7bca550 10928
Azure.IoT Build 0:6ae2f7bca550 10929 /* message-id-binary */
Azure.IoT Build 0:6ae2f7bca550 10930
Azure.IoT Build 0:6ae2f7bca550 10931 AMQP_VALUE amqpvalue_create_message_id_binary(message_id_binary value)
Azure.IoT Build 0:6ae2f7bca550 10932 {
Azure.IoT Build 0:6ae2f7bca550 10933 return amqpvalue_create_binary(value);
Azure.IoT Build 0:6ae2f7bca550 10934 }
Azure.IoT Build 0:6ae2f7bca550 10935
Azure.IoT Build 0:6ae2f7bca550 10936 /* message-id-string */
Azure.IoT Build 0:6ae2f7bca550 10937
Azure.IoT Build 0:6ae2f7bca550 10938 AMQP_VALUE amqpvalue_create_message_id_string(message_id_string value)
Azure.IoT Build 0:6ae2f7bca550 10939 {
Azure.IoT Build 0:6ae2f7bca550 10940 return amqpvalue_create_string(value);
Azure.IoT Build 0:6ae2f7bca550 10941 }
Azure.IoT Build 0:6ae2f7bca550 10942
Azure.IoT Build 0:6ae2f7bca550 10943 /* address-string */
Azure.IoT Build 0:6ae2f7bca550 10944
Azure.IoT Build 0:6ae2f7bca550 10945 AMQP_VALUE amqpvalue_create_address_string(address_string value)
Azure.IoT Build 0:6ae2f7bca550 10946 {
Azure.IoT Build 0:6ae2f7bca550 10947 return amqpvalue_create_string(value);
Azure.IoT Build 0:6ae2f7bca550 10948 }
Azure.IoT Build 0:6ae2f7bca550 10949
Azure.IoT Build 0:6ae2f7bca550 10950 /* header */
Azure.IoT Build 0:6ae2f7bca550 10951
Azure.IoT Build 0:6ae2f7bca550 10952 typedef struct HEADER_INSTANCE_TAG
Azure.IoT Build 0:6ae2f7bca550 10953 {
Azure.IoT Build 0:6ae2f7bca550 10954 AMQP_VALUE composite_value;
Azure.IoT Build 0:6ae2f7bca550 10955 } HEADER_INSTANCE;
Azure.IoT Build 0:6ae2f7bca550 10956
Azure.IoT Build 0:6ae2f7bca550 10957 static HEADER_HANDLE header_create_internal(void)
Azure.IoT Build 0:6ae2f7bca550 10958 {
Azure.IoT Build 0:6ae2f7bca550 10959 HEADER_INSTANCE* header_instance = (HEADER_INSTANCE*)amqpalloc_malloc(sizeof(HEADER_INSTANCE));
Azure.IoT Build 0:6ae2f7bca550 10960 if (header_instance != NULL)
Azure.IoT Build 0:6ae2f7bca550 10961 {
Azure.IoT Build 0:6ae2f7bca550 10962 header_instance->composite_value = NULL;
Azure.IoT Build 0:6ae2f7bca550 10963 }
Azure.IoT Build 0:6ae2f7bca550 10964
Azure.IoT Build 0:6ae2f7bca550 10965 return header_instance;
Azure.IoT Build 0:6ae2f7bca550 10966 }
Azure.IoT Build 0:6ae2f7bca550 10967
Azure.IoT Build 0:6ae2f7bca550 10968 HEADER_HANDLE header_create(void)
Azure.IoT Build 0:6ae2f7bca550 10969 {
Azure.IoT Build 0:6ae2f7bca550 10970 HEADER_INSTANCE* header_instance = (HEADER_INSTANCE*)amqpalloc_malloc(sizeof(HEADER_INSTANCE));
Azure.IoT Build 0:6ae2f7bca550 10971 if (header_instance != NULL)
Azure.IoT Build 0:6ae2f7bca550 10972 {
Azure.IoT Build 0:6ae2f7bca550 10973 header_instance->composite_value = amqpvalue_create_composite_with_ulong_descriptor(112);
Azure.IoT Build 0:6ae2f7bca550 10974 if (header_instance->composite_value == NULL)
Azure.IoT Build 0:6ae2f7bca550 10975 {
Azure.IoT Build 0:6ae2f7bca550 10976 amqpalloc_free(header_instance);
Azure.IoT Build 0:6ae2f7bca550 10977 header_instance = NULL;
Azure.IoT Build 0:6ae2f7bca550 10978 }
Azure.IoT Build 0:6ae2f7bca550 10979 }
Azure.IoT Build 0:6ae2f7bca550 10980
Azure.IoT Build 0:6ae2f7bca550 10981 return header_instance;
Azure.IoT Build 0:6ae2f7bca550 10982 }
Azure.IoT Build 0:6ae2f7bca550 10983
Azure.IoT Build 0:6ae2f7bca550 10984 HEADER_HANDLE header_clone(HEADER_HANDLE value)
Azure.IoT Build 0:6ae2f7bca550 10985 {
Azure.IoT Build 0:6ae2f7bca550 10986 HEADER_INSTANCE* header_instance = (HEADER_INSTANCE*)amqpalloc_malloc(sizeof(HEADER_INSTANCE));
Azure.IoT Build 0:6ae2f7bca550 10987 if (header_instance != NULL)
Azure.IoT Build 0:6ae2f7bca550 10988 {
Azure.IoT Build 0:6ae2f7bca550 10989 header_instance->composite_value = amqpvalue_clone(((HEADER_INSTANCE*)value)->composite_value);
Azure.IoT Build 0:6ae2f7bca550 10990 if (header_instance->composite_value == NULL)
Azure.IoT Build 0:6ae2f7bca550 10991 {
Azure.IoT Build 0:6ae2f7bca550 10992 amqpalloc_free(header_instance);
Azure.IoT Build 0:6ae2f7bca550 10993 header_instance = NULL;
Azure.IoT Build 0:6ae2f7bca550 10994 }
Azure.IoT Build 0:6ae2f7bca550 10995 }
Azure.IoT Build 0:6ae2f7bca550 10996
Azure.IoT Build 0:6ae2f7bca550 10997 return header_instance;
Azure.IoT Build 0:6ae2f7bca550 10998 }
Azure.IoT Build 0:6ae2f7bca550 10999
Azure.IoT Build 0:6ae2f7bca550 11000 void header_destroy(HEADER_HANDLE header)
Azure.IoT Build 0:6ae2f7bca550 11001 {
Azure.IoT Build 0:6ae2f7bca550 11002 if (header != NULL)
Azure.IoT Build 0:6ae2f7bca550 11003 {
Azure.IoT Build 0:6ae2f7bca550 11004 HEADER_INSTANCE* header_instance = (HEADER_INSTANCE*)header;
Azure.IoT Build 0:6ae2f7bca550 11005 amqpvalue_destroy(header_instance->composite_value);
Azure.IoT Build 0:6ae2f7bca550 11006 amqpalloc_free(header_instance);
Azure.IoT Build 0:6ae2f7bca550 11007 }
Azure.IoT Build 0:6ae2f7bca550 11008 }
Azure.IoT Build 0:6ae2f7bca550 11009
Azure.IoT Build 0:6ae2f7bca550 11010 AMQP_VALUE amqpvalue_create_header(HEADER_HANDLE header)
Azure.IoT Build 0:6ae2f7bca550 11011 {
Azure.IoT Build 0:6ae2f7bca550 11012 AMQP_VALUE result;
Azure.IoT Build 0:6ae2f7bca550 11013
Azure.IoT Build 0:6ae2f7bca550 11014 if (header == NULL)
Azure.IoT Build 0:6ae2f7bca550 11015 {
Azure.IoT Build 0:6ae2f7bca550 11016 result = NULL;
Azure.IoT Build 0:6ae2f7bca550 11017 }
Azure.IoT Build 0:6ae2f7bca550 11018 else
Azure.IoT Build 0:6ae2f7bca550 11019 {
Azure.IoT Build 0:6ae2f7bca550 11020 HEADER_INSTANCE* header_instance = (HEADER_INSTANCE*)header;
Azure.IoT Build 0:6ae2f7bca550 11021 result = amqpvalue_clone(header_instance->composite_value);
Azure.IoT Build 0:6ae2f7bca550 11022 }
Azure.IoT Build 0:6ae2f7bca550 11023
Azure.IoT Build 0:6ae2f7bca550 11024 return result;
Azure.IoT Build 0:6ae2f7bca550 11025 }
Azure.IoT Build 0:6ae2f7bca550 11026
Azure.IoT Build 0:6ae2f7bca550 11027 bool is_header_type_by_descriptor(AMQP_VALUE descriptor)
Azure.IoT Build 0:6ae2f7bca550 11028 {
Azure.IoT Build 0:6ae2f7bca550 11029 bool result;
Azure.IoT Build 0:6ae2f7bca550 11030
Azure.IoT Build 0:6ae2f7bca550 11031 uint64_t descriptor_ulong;
Azure.IoT Build 0:6ae2f7bca550 11032 if ((amqpvalue_get_ulong(descriptor, &descriptor_ulong) == 0) &&
Azure.IoT Build 0:6ae2f7bca550 11033 (descriptor_ulong == 112))
Azure.IoT Build 0:6ae2f7bca550 11034 {
Azure.IoT Build 0:6ae2f7bca550 11035 result = true;
Azure.IoT Build 0:6ae2f7bca550 11036 }
Azure.IoT Build 0:6ae2f7bca550 11037 else
Azure.IoT Build 0:6ae2f7bca550 11038 {
Azure.IoT Build 0:6ae2f7bca550 11039 result = false;
Azure.IoT Build 0:6ae2f7bca550 11040 }
Azure.IoT Build 0:6ae2f7bca550 11041
Azure.IoT Build 0:6ae2f7bca550 11042 return result;
Azure.IoT Build 0:6ae2f7bca550 11043 }
Azure.IoT Build 0:6ae2f7bca550 11044
Azure.IoT Build 0:6ae2f7bca550 11045
Azure.IoT Build 0:6ae2f7bca550 11046 int amqpvalue_get_header(AMQP_VALUE value, HEADER_HANDLE* header_handle)
Azure.IoT Build 0:6ae2f7bca550 11047 {
Azure.IoT Build 0:6ae2f7bca550 11048 int result;
Azure.IoT Build 0:6ae2f7bca550 11049 HEADER_INSTANCE* header_instance = (HEADER_INSTANCE*)header_create_internal();
Azure.IoT Build 0:6ae2f7bca550 11050 *header_handle = header_instance;
Azure.IoT Build 0:6ae2f7bca550 11051 if (*header_handle == NULL)
Azure.IoT Build 0:6ae2f7bca550 11052 {
Azure.IoT Build 0:6ae2f7bca550 11053 result = __LINE__;
Azure.IoT Build 0:6ae2f7bca550 11054 }
Azure.IoT Build 0:6ae2f7bca550 11055 else
Azure.IoT Build 0:6ae2f7bca550 11056 {
Azure.IoT Build 0:6ae2f7bca550 11057 AMQP_VALUE list_value = amqpvalue_get_inplace_described_value(value);
Azure.IoT Build 0:6ae2f7bca550 11058 if (list_value == NULL)
Azure.IoT Build 0:6ae2f7bca550 11059 {
Azure.IoT Build 0:6ae2f7bca550 11060 header_destroy(*header_handle);
Azure.IoT Build 0:6ae2f7bca550 11061 result = __LINE__;
Azure.IoT Build 0:6ae2f7bca550 11062 }
Azure.IoT Build 0:6ae2f7bca550 11063 else
Azure.IoT Build 0:6ae2f7bca550 11064 {
Azure.IoT Build 0:6ae2f7bca550 11065 do
Azure.IoT Build 0:6ae2f7bca550 11066 {
Azure.IoT Build 0:6ae2f7bca550 11067 AMQP_VALUE item_value;
Azure.IoT Build 0:6ae2f7bca550 11068 /* durable */
Azure.IoT Build 0:6ae2f7bca550 11069 item_value = amqpvalue_get_list_item(list_value, 0);
Azure.IoT Build 0:6ae2f7bca550 11070 if (item_value == NULL)
Azure.IoT Build 0:6ae2f7bca550 11071 {
Azure.IoT Build 0:6ae2f7bca550 11072 /* do nothing */
Azure.IoT Build 0:6ae2f7bca550 11073 }
Azure.IoT Build 0:6ae2f7bca550 11074 else
Azure.IoT Build 0:6ae2f7bca550 11075 {
Azure.IoT Build 0:6ae2f7bca550 11076 bool durable;
Azure.IoT Build 0:6ae2f7bca550 11077 if (amqpvalue_get_boolean(item_value, &durable) != 0)
Azure.IoT Build 0:6ae2f7bca550 11078 {
Azure.IoT Build 0:6ae2f7bca550 11079 if (amqpvalue_get_type(item_value) != AMQP_TYPE_NULL)
Azure.IoT Build 0:6ae2f7bca550 11080 {
Azure.IoT Build 0:6ae2f7bca550 11081 header_destroy(*header_handle);
Azure.IoT Build 0:6ae2f7bca550 11082 result = __LINE__;
Azure.IoT Build 0:6ae2f7bca550 11083 break;
Azure.IoT Build 0:6ae2f7bca550 11084 }
Azure.IoT Build 0:6ae2f7bca550 11085 }
Azure.IoT Build 0:6ae2f7bca550 11086
Azure.IoT Build 0:6ae2f7bca550 11087 amqpvalue_destroy(item_value);
Azure.IoT Build 0:6ae2f7bca550 11088 }
Azure.IoT Build 0:6ae2f7bca550 11089 /* priority */
Azure.IoT Build 0:6ae2f7bca550 11090 item_value = amqpvalue_get_list_item(list_value, 1);
Azure.IoT Build 0:6ae2f7bca550 11091 if (item_value == NULL)
Azure.IoT Build 0:6ae2f7bca550 11092 {
Azure.IoT Build 0:6ae2f7bca550 11093 /* do nothing */
Azure.IoT Build 0:6ae2f7bca550 11094 }
Azure.IoT Build 0:6ae2f7bca550 11095 else
Azure.IoT Build 0:6ae2f7bca550 11096 {
Azure.IoT Build 0:6ae2f7bca550 11097 uint8_t priority;
Azure.IoT Build 0:6ae2f7bca550 11098 if (amqpvalue_get_ubyte(item_value, &priority) != 0)
Azure.IoT Build 0:6ae2f7bca550 11099 {
Azure.IoT Build 0:6ae2f7bca550 11100 if (amqpvalue_get_type(item_value) != AMQP_TYPE_NULL)
Azure.IoT Build 0:6ae2f7bca550 11101 {
Azure.IoT Build 0:6ae2f7bca550 11102 header_destroy(*header_handle);
Azure.IoT Build 0:6ae2f7bca550 11103 result = __LINE__;
Azure.IoT Build 0:6ae2f7bca550 11104 break;
Azure.IoT Build 0:6ae2f7bca550 11105 }
Azure.IoT Build 0:6ae2f7bca550 11106 }
Azure.IoT Build 0:6ae2f7bca550 11107
Azure.IoT Build 0:6ae2f7bca550 11108 amqpvalue_destroy(item_value);
Azure.IoT Build 0:6ae2f7bca550 11109 }
Azure.IoT Build 0:6ae2f7bca550 11110 /* ttl */
Azure.IoT Build 0:6ae2f7bca550 11111 item_value = amqpvalue_get_list_item(list_value, 2);
Azure.IoT Build 0:6ae2f7bca550 11112 if (item_value == NULL)
Azure.IoT Build 0:6ae2f7bca550 11113 {
Azure.IoT Build 0:6ae2f7bca550 11114 /* do nothing */
Azure.IoT Build 0:6ae2f7bca550 11115 }
Azure.IoT Build 0:6ae2f7bca550 11116 else
Azure.IoT Build 0:6ae2f7bca550 11117 {
Azure.IoT Build 0:6ae2f7bca550 11118 milliseconds ttl;
Azure.IoT Build 0:6ae2f7bca550 11119 if (amqpvalue_get_milliseconds(item_value, &ttl) != 0)
Azure.IoT Build 0:6ae2f7bca550 11120 {
Azure.IoT Build 0:6ae2f7bca550 11121 if (amqpvalue_get_type(item_value) != AMQP_TYPE_NULL)
Azure.IoT Build 0:6ae2f7bca550 11122 {
Azure.IoT Build 0:6ae2f7bca550 11123 header_destroy(*header_handle);
Azure.IoT Build 0:6ae2f7bca550 11124 result = __LINE__;
Azure.IoT Build 0:6ae2f7bca550 11125 break;
Azure.IoT Build 0:6ae2f7bca550 11126 }
Azure.IoT Build 0:6ae2f7bca550 11127 }
Azure.IoT Build 0:6ae2f7bca550 11128
Azure.IoT Build 0:6ae2f7bca550 11129 amqpvalue_destroy(item_value);
Azure.IoT Build 0:6ae2f7bca550 11130 }
Azure.IoT Build 0:6ae2f7bca550 11131 /* first-acquirer */
Azure.IoT Build 0:6ae2f7bca550 11132 item_value = amqpvalue_get_list_item(list_value, 3);
Azure.IoT Build 0:6ae2f7bca550 11133 if (item_value == NULL)
Azure.IoT Build 0:6ae2f7bca550 11134 {
Azure.IoT Build 0:6ae2f7bca550 11135 /* do nothing */
Azure.IoT Build 0:6ae2f7bca550 11136 }
Azure.IoT Build 0:6ae2f7bca550 11137 else
Azure.IoT Build 0:6ae2f7bca550 11138 {
Azure.IoT Build 0:6ae2f7bca550 11139 bool first_acquirer;
Azure.IoT Build 0:6ae2f7bca550 11140 if (amqpvalue_get_boolean(item_value, &first_acquirer) != 0)
Azure.IoT Build 0:6ae2f7bca550 11141 {
Azure.IoT Build 0:6ae2f7bca550 11142 if (amqpvalue_get_type(item_value) != AMQP_TYPE_NULL)
Azure.IoT Build 0:6ae2f7bca550 11143 {
Azure.IoT Build 0:6ae2f7bca550 11144 header_destroy(*header_handle);
Azure.IoT Build 0:6ae2f7bca550 11145 result = __LINE__;
Azure.IoT Build 0:6ae2f7bca550 11146 break;
Azure.IoT Build 0:6ae2f7bca550 11147 }
Azure.IoT Build 0:6ae2f7bca550 11148 }
Azure.IoT Build 0:6ae2f7bca550 11149
Azure.IoT Build 0:6ae2f7bca550 11150 amqpvalue_destroy(item_value);
Azure.IoT Build 0:6ae2f7bca550 11151 }
Azure.IoT Build 0:6ae2f7bca550 11152 /* delivery-count */
Azure.IoT Build 0:6ae2f7bca550 11153 item_value = amqpvalue_get_list_item(list_value, 4);
Azure.IoT Build 0:6ae2f7bca550 11154 if (item_value == NULL)
Azure.IoT Build 0:6ae2f7bca550 11155 {
Azure.IoT Build 0:6ae2f7bca550 11156 /* do nothing */
Azure.IoT Build 0:6ae2f7bca550 11157 }
Azure.IoT Build 0:6ae2f7bca550 11158 else
Azure.IoT Build 0:6ae2f7bca550 11159 {
Azure.IoT Build 0:6ae2f7bca550 11160 uint32_t delivery_count;
Azure.IoT Build 0:6ae2f7bca550 11161 if (amqpvalue_get_uint(item_value, &delivery_count) != 0)
Azure.IoT Build 0:6ae2f7bca550 11162 {
Azure.IoT Build 0:6ae2f7bca550 11163 if (amqpvalue_get_type(item_value) != AMQP_TYPE_NULL)
Azure.IoT Build 0:6ae2f7bca550 11164 {
Azure.IoT Build 0:6ae2f7bca550 11165 header_destroy(*header_handle);
Azure.IoT Build 0:6ae2f7bca550 11166 result = __LINE__;
Azure.IoT Build 0:6ae2f7bca550 11167 break;
Azure.IoT Build 0:6ae2f7bca550 11168 }
Azure.IoT Build 0:6ae2f7bca550 11169 }
Azure.IoT Build 0:6ae2f7bca550 11170
Azure.IoT Build 0:6ae2f7bca550 11171 amqpvalue_destroy(item_value);
Azure.IoT Build 0:6ae2f7bca550 11172 }
Azure.IoT Build 0:6ae2f7bca550 11173
Azure.IoT Build 0:6ae2f7bca550 11174 header_instance->composite_value = amqpvalue_clone(value);
Azure.IoT Build 0:6ae2f7bca550 11175
Azure.IoT Build 0:6ae2f7bca550 11176 result = 0;
Azure.IoT Build 0:6ae2f7bca550 11177 } while (0);
Azure.IoT Build 0:6ae2f7bca550 11178 }
Azure.IoT Build 0:6ae2f7bca550 11179 }
Azure.IoT Build 0:6ae2f7bca550 11180
Azure.IoT Build 0:6ae2f7bca550 11181 return result;
Azure.IoT Build 0:6ae2f7bca550 11182 }
Azure.IoT Build 0:6ae2f7bca550 11183
Azure.IoT Build 0:6ae2f7bca550 11184 int header_get_durable(HEADER_HANDLE header, bool* durable_value)
Azure.IoT Build 0:6ae2f7bca550 11185 {
Azure.IoT Build 0:6ae2f7bca550 11186 int result;
Azure.IoT Build 0:6ae2f7bca550 11187
Azure.IoT Build 0:6ae2f7bca550 11188 if (header == NULL)
Azure.IoT Build 0:6ae2f7bca550 11189 {
Azure.IoT Build 0:6ae2f7bca550 11190 result = __LINE__;
Azure.IoT Build 0:6ae2f7bca550 11191 }
Azure.IoT Build 0:6ae2f7bca550 11192 else
Azure.IoT Build 0:6ae2f7bca550 11193 {
Azure.IoT Build 0:6ae2f7bca550 11194 HEADER_INSTANCE* header_instance = (HEADER_INSTANCE*)header;
Azure.IoT Build 0:6ae2f7bca550 11195 AMQP_VALUE item_value = amqpvalue_get_composite_item_in_place(header_instance->composite_value, 0);
Azure.IoT Build 0:6ae2f7bca550 11196 if (item_value == NULL)
Azure.IoT Build 0:6ae2f7bca550 11197 {
AzureIoTClient 16:22a72cf8e416 11198 *durable_value = false;
AzureIoTClient 16:22a72cf8e416 11199 result = 0;
Azure.IoT Build 0:6ae2f7bca550 11200 }
Azure.IoT Build 0:6ae2f7bca550 11201 else
Azure.IoT Build 0:6ae2f7bca550 11202 {
Azure.IoT Build 0:6ae2f7bca550 11203 if (amqpvalue_get_boolean(item_value, durable_value) != 0)
Azure.IoT Build 0:6ae2f7bca550 11204 {
AzureIoTClient 16:22a72cf8e416 11205 if (amqpvalue_get_type(item_value) == AMQP_TYPE_NULL)
AzureIoTClient 16:22a72cf8e416 11206 {
AzureIoTClient 16:22a72cf8e416 11207 result = __LINE__;
AzureIoTClient 16:22a72cf8e416 11208 }
AzureIoTClient 16:22a72cf8e416 11209 else
AzureIoTClient 16:22a72cf8e416 11210 {
AzureIoTClient 16:22a72cf8e416 11211 *durable_value = false;
AzureIoTClient 16:22a72cf8e416 11212 result = 0;
AzureIoTClient 16:22a72cf8e416 11213 }
Azure.IoT Build 0:6ae2f7bca550 11214 }
Azure.IoT Build 0:6ae2f7bca550 11215 else
Azure.IoT Build 0:6ae2f7bca550 11216 {
Azure.IoT Build 0:6ae2f7bca550 11217 result = 0;
Azure.IoT Build 0:6ae2f7bca550 11218 }
Azure.IoT Build 0:6ae2f7bca550 11219 }
Azure.IoT Build 0:6ae2f7bca550 11220 }
Azure.IoT Build 0:6ae2f7bca550 11221
Azure.IoT Build 0:6ae2f7bca550 11222 return result;
Azure.IoT Build 0:6ae2f7bca550 11223 }
Azure.IoT Build 0:6ae2f7bca550 11224
Azure.IoT Build 0:6ae2f7bca550 11225 int header_set_durable(HEADER_HANDLE header, bool durable_value)
Azure.IoT Build 0:6ae2f7bca550 11226 {
Azure.IoT Build 0:6ae2f7bca550 11227 int result;
Azure.IoT Build 0:6ae2f7bca550 11228
Azure.IoT Build 0:6ae2f7bca550 11229 if (header == NULL)
Azure.IoT Build 0:6ae2f7bca550 11230 {
Azure.IoT Build 0:6ae2f7bca550 11231 result = __LINE__;
Azure.IoT Build 0:6ae2f7bca550 11232 }
Azure.IoT Build 0:6ae2f7bca550 11233 else
Azure.IoT Build 0:6ae2f7bca550 11234 {
Azure.IoT Build 0:6ae2f7bca550 11235 HEADER_INSTANCE* header_instance = (HEADER_INSTANCE*)header;
Azure.IoT Build 0:6ae2f7bca550 11236 AMQP_VALUE durable_amqp_value = amqpvalue_create_boolean(durable_value);
Azure.IoT Build 0:6ae2f7bca550 11237 if (durable_amqp_value == NULL)
Azure.IoT Build 0:6ae2f7bca550 11238 {
Azure.IoT Build 0:6ae2f7bca550 11239 result = __LINE__;
Azure.IoT Build 0:6ae2f7bca550 11240 }
Azure.IoT Build 0:6ae2f7bca550 11241 else
Azure.IoT Build 0:6ae2f7bca550 11242 {
Azure.IoT Build 0:6ae2f7bca550 11243 if (amqpvalue_set_composite_item(header_instance->composite_value, 0, durable_amqp_value) != 0)
Azure.IoT Build 0:6ae2f7bca550 11244 {
Azure.IoT Build 0:6ae2f7bca550 11245 result = __LINE__;
Azure.IoT Build 0:6ae2f7bca550 11246 }
Azure.IoT Build 0:6ae2f7bca550 11247 else
Azure.IoT Build 0:6ae2f7bca550 11248 {
Azure.IoT Build 0:6ae2f7bca550 11249 result = 0;
Azure.IoT Build 0:6ae2f7bca550 11250 }
Azure.IoT Build 0:6ae2f7bca550 11251
Azure.IoT Build 0:6ae2f7bca550 11252 amqpvalue_destroy(durable_amqp_value);
Azure.IoT Build 0:6ae2f7bca550 11253 }
Azure.IoT Build 0:6ae2f7bca550 11254 }
Azure.IoT Build 0:6ae2f7bca550 11255
Azure.IoT Build 0:6ae2f7bca550 11256 return result;
Azure.IoT Build 0:6ae2f7bca550 11257 }
Azure.IoT Build 0:6ae2f7bca550 11258
Azure.IoT Build 0:6ae2f7bca550 11259 int header_get_priority(HEADER_HANDLE header, uint8_t* priority_value)
Azure.IoT Build 0:6ae2f7bca550 11260 {
Azure.IoT Build 0:6ae2f7bca550 11261 int result;
Azure.IoT Build 0:6ae2f7bca550 11262
Azure.IoT Build 0:6ae2f7bca550 11263 if (header == NULL)
Azure.IoT Build 0:6ae2f7bca550 11264 {
Azure.IoT Build 0:6ae2f7bca550 11265 result = __LINE__;
Azure.IoT Build 0:6ae2f7bca550 11266 }
Azure.IoT Build 0:6ae2f7bca550 11267 else
Azure.IoT Build 0:6ae2f7bca550 11268 {
Azure.IoT Build 0:6ae2f7bca550 11269 HEADER_INSTANCE* header_instance = (HEADER_INSTANCE*)header;
Azure.IoT Build 0:6ae2f7bca550 11270 AMQP_VALUE item_value = amqpvalue_get_composite_item_in_place(header_instance->composite_value, 1);
Azure.IoT Build 0:6ae2f7bca550 11271 if (item_value == NULL)
Azure.IoT Build 0:6ae2f7bca550 11272 {
AzureIoTClient 16:22a72cf8e416 11273 *priority_value = 4;
AzureIoTClient 16:22a72cf8e416 11274 result = 0;
Azure.IoT Build 0:6ae2f7bca550 11275 }
Azure.IoT Build 0:6ae2f7bca550 11276 else
Azure.IoT Build 0:6ae2f7bca550 11277 {
Azure.IoT Build 0:6ae2f7bca550 11278 if (amqpvalue_get_ubyte(item_value, priority_value) != 0)
Azure.IoT Build 0:6ae2f7bca550 11279 {
AzureIoTClient 16:22a72cf8e416 11280 if (amqpvalue_get_type(item_value) == AMQP_TYPE_NULL)
AzureIoTClient 16:22a72cf8e416 11281 {
AzureIoTClient 16:22a72cf8e416 11282 result = __LINE__;
AzureIoTClient 16:22a72cf8e416 11283 }
AzureIoTClient 16:22a72cf8e416 11284 else
AzureIoTClient 16:22a72cf8e416 11285 {
AzureIoTClient 16:22a72cf8e416 11286 *priority_value = 4;
AzureIoTClient 16:22a72cf8e416 11287 result = 0;
AzureIoTClient 16:22a72cf8e416 11288 }
Azure.IoT Build 0:6ae2f7bca550 11289 }
Azure.IoT Build 0:6ae2f7bca550 11290 else
Azure.IoT Build 0:6ae2f7bca550 11291 {
Azure.IoT Build 0:6ae2f7bca550 11292 result = 0;
Azure.IoT Build 0:6ae2f7bca550 11293 }
Azure.IoT Build 0:6ae2f7bca550 11294 }
Azure.IoT Build 0:6ae2f7bca550 11295 }
Azure.IoT Build 0:6ae2f7bca550 11296
Azure.IoT Build 0:6ae2f7bca550 11297 return result;
Azure.IoT Build 0:6ae2f7bca550 11298 }
Azure.IoT Build 0:6ae2f7bca550 11299
Azure.IoT Build 0:6ae2f7bca550 11300 int header_set_priority(HEADER_HANDLE header, uint8_t priority_value)
Azure.IoT Build 0:6ae2f7bca550 11301 {
Azure.IoT Build 0:6ae2f7bca550 11302 int result;
Azure.IoT Build 0:6ae2f7bca550 11303
Azure.IoT Build 0:6ae2f7bca550 11304 if (header == NULL)
Azure.IoT Build 0:6ae2f7bca550 11305 {
Azure.IoT Build 0:6ae2f7bca550 11306 result = __LINE__;
Azure.IoT Build 0:6ae2f7bca550 11307 }
Azure.IoT Build 0:6ae2f7bca550 11308 else
Azure.IoT Build 0:6ae2f7bca550 11309 {
Azure.IoT Build 0:6ae2f7bca550 11310 HEADER_INSTANCE* header_instance = (HEADER_INSTANCE*)header;
Azure.IoT Build 0:6ae2f7bca550 11311 AMQP_VALUE priority_amqp_value = amqpvalue_create_ubyte(priority_value);
Azure.IoT Build 0:6ae2f7bca550 11312 if (priority_amqp_value == NULL)
Azure.IoT Build 0:6ae2f7bca550 11313 {
Azure.IoT Build 0:6ae2f7bca550 11314 result = __LINE__;
Azure.IoT Build 0:6ae2f7bca550 11315 }
Azure.IoT Build 0:6ae2f7bca550 11316 else
Azure.IoT Build 0:6ae2f7bca550 11317 {
Azure.IoT Build 0:6ae2f7bca550 11318 if (amqpvalue_set_composite_item(header_instance->composite_value, 1, priority_amqp_value) != 0)
Azure.IoT Build 0:6ae2f7bca550 11319 {
Azure.IoT Build 0:6ae2f7bca550 11320 result = __LINE__;
Azure.IoT Build 0:6ae2f7bca550 11321 }
Azure.IoT Build 0:6ae2f7bca550 11322 else
Azure.IoT Build 0:6ae2f7bca550 11323 {
Azure.IoT Build 0:6ae2f7bca550 11324 result = 0;
Azure.IoT Build 0:6ae2f7bca550 11325 }
Azure.IoT Build 0:6ae2f7bca550 11326
Azure.IoT Build 0:6ae2f7bca550 11327 amqpvalue_destroy(priority_amqp_value);
Azure.IoT Build 0:6ae2f7bca550 11328 }
Azure.IoT Build 0:6ae2f7bca550 11329 }
Azure.IoT Build 0:6ae2f7bca550 11330
Azure.IoT Build 0:6ae2f7bca550 11331 return result;
Azure.IoT Build 0:6ae2f7bca550 11332 }
Azure.IoT Build 0:6ae2f7bca550 11333
Azure.IoT Build 0:6ae2f7bca550 11334 int header_get_ttl(HEADER_HANDLE header, milliseconds* ttl_value)
Azure.IoT Build 0:6ae2f7bca550 11335 {
Azure.IoT Build 0:6ae2f7bca550 11336 int result;
Azure.IoT Build 0:6ae2f7bca550 11337
Azure.IoT Build 0:6ae2f7bca550 11338 if (header == NULL)
Azure.IoT Build 0:6ae2f7bca550 11339 {
Azure.IoT Build 0:6ae2f7bca550 11340 result = __LINE__;
Azure.IoT Build 0:6ae2f7bca550 11341 }
Azure.IoT Build 0:6ae2f7bca550 11342 else
Azure.IoT Build 0:6ae2f7bca550 11343 {
Azure.IoT Build 0:6ae2f7bca550 11344 HEADER_INSTANCE* header_instance = (HEADER_INSTANCE*)header;
Azure.IoT Build 0:6ae2f7bca550 11345 AMQP_VALUE item_value = amqpvalue_get_composite_item_in_place(header_instance->composite_value, 2);
Azure.IoT Build 0:6ae2f7bca550 11346 if (item_value == NULL)
Azure.IoT Build 0:6ae2f7bca550 11347 {
Azure.IoT Build 0:6ae2f7bca550 11348 result = __LINE__;
Azure.IoT Build 0:6ae2f7bca550 11349 }
Azure.IoT Build 0:6ae2f7bca550 11350 else
Azure.IoT Build 0:6ae2f7bca550 11351 {
Azure.IoT Build 0:6ae2f7bca550 11352 if (amqpvalue_get_milliseconds(item_value, ttl_value) != 0)
Azure.IoT Build 0:6ae2f7bca550 11353 {
AzureIoTClient 16:22a72cf8e416 11354 result = __LINE__;
Azure.IoT Build 0:6ae2f7bca550 11355 }
Azure.IoT Build 0:6ae2f7bca550 11356 else
Azure.IoT Build 0:6ae2f7bca550 11357 {
Azure.IoT Build 0:6ae2f7bca550 11358 result = 0;
Azure.IoT Build 0:6ae2f7bca550 11359 }
Azure.IoT Build 0:6ae2f7bca550 11360 }
Azure.IoT Build 0:6ae2f7bca550 11361 }
Azure.IoT Build 0:6ae2f7bca550 11362
Azure.IoT Build 0:6ae2f7bca550 11363 return result;
Azure.IoT Build 0:6ae2f7bca550 11364 }
Azure.IoT Build 0:6ae2f7bca550 11365
Azure.IoT Build 0:6ae2f7bca550 11366 int header_set_ttl(HEADER_HANDLE header, milliseconds ttl_value)
Azure.IoT Build 0:6ae2f7bca550 11367 {
Azure.IoT Build 0:6ae2f7bca550 11368 int result;
Azure.IoT Build 0:6ae2f7bca550 11369
Azure.IoT Build 0:6ae2f7bca550 11370 if (header == NULL)
Azure.IoT Build 0:6ae2f7bca550 11371 {
Azure.IoT Build 0:6ae2f7bca550 11372 result = __LINE__;
Azure.IoT Build 0:6ae2f7bca550 11373 }
Azure.IoT Build 0:6ae2f7bca550 11374 else
Azure.IoT Build 0:6ae2f7bca550 11375 {
Azure.IoT Build 0:6ae2f7bca550 11376 HEADER_INSTANCE* header_instance = (HEADER_INSTANCE*)header;
Azure.IoT Build 0:6ae2f7bca550 11377 AMQP_VALUE ttl_amqp_value = amqpvalue_create_milliseconds(ttl_value);
Azure.IoT Build 0:6ae2f7bca550 11378 if (ttl_amqp_value == NULL)
Azure.IoT Build 0:6ae2f7bca550 11379 {
Azure.IoT Build 0:6ae2f7bca550 11380 result = __LINE__;
Azure.IoT Build 0:6ae2f7bca550 11381 }
Azure.IoT Build 0:6ae2f7bca550 11382 else
Azure.IoT Build 0:6ae2f7bca550 11383 {
Azure.IoT Build 0:6ae2f7bca550 11384 if (amqpvalue_set_composite_item(header_instance->composite_value, 2, ttl_amqp_value) != 0)
Azure.IoT Build 0:6ae2f7bca550 11385 {
Azure.IoT Build 0:6ae2f7bca550 11386 result = __LINE__;
Azure.IoT Build 0:6ae2f7bca550 11387 }
Azure.IoT Build 0:6ae2f7bca550 11388 else
Azure.IoT Build 0:6ae2f7bca550 11389 {
Azure.IoT Build 0:6ae2f7bca550 11390 result = 0;
Azure.IoT Build 0:6ae2f7bca550 11391 }
Azure.IoT Build 0:6ae2f7bca550 11392
Azure.IoT Build 0:6ae2f7bca550 11393 amqpvalue_destroy(ttl_amqp_value);
Azure.IoT Build 0:6ae2f7bca550 11394 }
Azure.IoT Build 0:6ae2f7bca550 11395 }
Azure.IoT Build 0:6ae2f7bca550 11396
Azure.IoT Build 0:6ae2f7bca550 11397 return result;
Azure.IoT Build 0:6ae2f7bca550 11398 }
Azure.IoT Build 0:6ae2f7bca550 11399
Azure.IoT Build 0:6ae2f7bca550 11400 int header_get_first_acquirer(HEADER_HANDLE header, bool* first_acquirer_value)
Azure.IoT Build 0:6ae2f7bca550 11401 {
Azure.IoT Build 0:6ae2f7bca550 11402 int result;
Azure.IoT Build 0:6ae2f7bca550 11403
Azure.IoT Build 0:6ae2f7bca550 11404 if (header == NULL)
Azure.IoT Build 0:6ae2f7bca550 11405 {
Azure.IoT Build 0:6ae2f7bca550 11406 result = __LINE__;
Azure.IoT Build 0:6ae2f7bca550 11407 }
Azure.IoT Build 0:6ae2f7bca550 11408 else
Azure.IoT Build 0:6ae2f7bca550 11409 {
Azure.IoT Build 0:6ae2f7bca550 11410 HEADER_INSTANCE* header_instance = (HEADER_INSTANCE*)header;
Azure.IoT Build 0:6ae2f7bca550 11411 AMQP_VALUE item_value = amqpvalue_get_composite_item_in_place(header_instance->composite_value, 3);
Azure.IoT Build 0:6ae2f7bca550 11412 if (item_value == NULL)
Azure.IoT Build 0:6ae2f7bca550 11413 {
AzureIoTClient 16:22a72cf8e416 11414 *first_acquirer_value = false;
AzureIoTClient 16:22a72cf8e416 11415 result = 0;
Azure.IoT Build 0:6ae2f7bca550 11416 }
Azure.IoT Build 0:6ae2f7bca550 11417 else
Azure.IoT Build 0:6ae2f7bca550 11418 {
Azure.IoT Build 0:6ae2f7bca550 11419 if (amqpvalue_get_boolean(item_value, first_acquirer_value) != 0)
Azure.IoT Build 0:6ae2f7bca550 11420 {
AzureIoTClient 16:22a72cf8e416 11421 if (amqpvalue_get_type(item_value) == AMQP_TYPE_NULL)
AzureIoTClient 16:22a72cf8e416 11422 {
AzureIoTClient 16:22a72cf8e416 11423 result = __LINE__;
AzureIoTClient 16:22a72cf8e416 11424 }
AzureIoTClient 16:22a72cf8e416 11425 else
AzureIoTClient 16:22a72cf8e416 11426 {
AzureIoTClient 16:22a72cf8e416 11427 *first_acquirer_value = false;
AzureIoTClient 16:22a72cf8e416 11428 result = 0;
AzureIoTClient 16:22a72cf8e416 11429 }
Azure.IoT Build 0:6ae2f7bca550 11430 }
Azure.IoT Build 0:6ae2f7bca550 11431 else
Azure.IoT Build 0:6ae2f7bca550 11432 {
Azure.IoT Build 0:6ae2f7bca550 11433 result = 0;
Azure.IoT Build 0:6ae2f7bca550 11434 }
Azure.IoT Build 0:6ae2f7bca550 11435 }
Azure.IoT Build 0:6ae2f7bca550 11436 }
Azure.IoT Build 0:6ae2f7bca550 11437
Azure.IoT Build 0:6ae2f7bca550 11438 return result;
Azure.IoT Build 0:6ae2f7bca550 11439 }
Azure.IoT Build 0:6ae2f7bca550 11440
Azure.IoT Build 0:6ae2f7bca550 11441 int header_set_first_acquirer(HEADER_HANDLE header, bool first_acquirer_value)
Azure.IoT Build 0:6ae2f7bca550 11442 {
Azure.IoT Build 0:6ae2f7bca550 11443 int result;
Azure.IoT Build 0:6ae2f7bca550 11444
Azure.IoT Build 0:6ae2f7bca550 11445 if (header == NULL)
Azure.IoT Build 0:6ae2f7bca550 11446 {
Azure.IoT Build 0:6ae2f7bca550 11447 result = __LINE__;
Azure.IoT Build 0:6ae2f7bca550 11448 }
Azure.IoT Build 0:6ae2f7bca550 11449 else
Azure.IoT Build 0:6ae2f7bca550 11450 {
Azure.IoT Build 0:6ae2f7bca550 11451 HEADER_INSTANCE* header_instance = (HEADER_INSTANCE*)header;
Azure.IoT Build 0:6ae2f7bca550 11452 AMQP_VALUE first_acquirer_amqp_value = amqpvalue_create_boolean(first_acquirer_value);
Azure.IoT Build 0:6ae2f7bca550 11453 if (first_acquirer_amqp_value == NULL)
Azure.IoT Build 0:6ae2f7bca550 11454 {
Azure.IoT Build 0:6ae2f7bca550 11455 result = __LINE__;
Azure.IoT Build 0:6ae2f7bca550 11456 }
Azure.IoT Build 0:6ae2f7bca550 11457 else
Azure.IoT Build 0:6ae2f7bca550 11458 {
Azure.IoT Build 0:6ae2f7bca550 11459 if (amqpvalue_set_composite_item(header_instance->composite_value, 3, first_acquirer_amqp_value) != 0)
Azure.IoT Build 0:6ae2f7bca550 11460 {
Azure.IoT Build 0:6ae2f7bca550 11461 result = __LINE__;
Azure.IoT Build 0:6ae2f7bca550 11462 }
Azure.IoT Build 0:6ae2f7bca550 11463 else
Azure.IoT Build 0:6ae2f7bca550 11464 {
Azure.IoT Build 0:6ae2f7bca550 11465 result = 0;
Azure.IoT Build 0:6ae2f7bca550 11466 }
Azure.IoT Build 0:6ae2f7bca550 11467
Azure.IoT Build 0:6ae2f7bca550 11468 amqpvalue_destroy(first_acquirer_amqp_value);
Azure.IoT Build 0:6ae2f7bca550 11469 }
Azure.IoT Build 0:6ae2f7bca550 11470 }
Azure.IoT Build 0:6ae2f7bca550 11471
Azure.IoT Build 0:6ae2f7bca550 11472 return result;
Azure.IoT Build 0:6ae2f7bca550 11473 }
Azure.IoT Build 0:6ae2f7bca550 11474
Azure.IoT Build 0:6ae2f7bca550 11475 int header_get_delivery_count(HEADER_HANDLE header, uint32_t* delivery_count_value)
Azure.IoT Build 0:6ae2f7bca550 11476 {
Azure.IoT Build 0:6ae2f7bca550 11477 int result;
Azure.IoT Build 0:6ae2f7bca550 11478
Azure.IoT Build 0:6ae2f7bca550 11479 if (header == NULL)
Azure.IoT Build 0:6ae2f7bca550 11480 {
Azure.IoT Build 0:6ae2f7bca550 11481 result = __LINE__;
Azure.IoT Build 0:6ae2f7bca550 11482 }
Azure.IoT Build 0:6ae2f7bca550 11483 else
Azure.IoT Build 0:6ae2f7bca550 11484 {
Azure.IoT Build 0:6ae2f7bca550 11485 HEADER_INSTANCE* header_instance = (HEADER_INSTANCE*)header;
Azure.IoT Build 0:6ae2f7bca550 11486 AMQP_VALUE item_value = amqpvalue_get_composite_item_in_place(header_instance->composite_value, 4);
Azure.IoT Build 0:6ae2f7bca550 11487 if (item_value == NULL)
Azure.IoT Build 0:6ae2f7bca550 11488 {
AzureIoTClient 16:22a72cf8e416 11489 *delivery_count_value = 0;
AzureIoTClient 16:22a72cf8e416 11490 result = 0;
Azure.IoT Build 0:6ae2f7bca550 11491 }
Azure.IoT Build 0:6ae2f7bca550 11492 else
Azure.IoT Build 0:6ae2f7bca550 11493 {
Azure.IoT Build 0:6ae2f7bca550 11494 if (amqpvalue_get_uint(item_value, delivery_count_value) != 0)
Azure.IoT Build 0:6ae2f7bca550 11495 {
AzureIoTClient 16:22a72cf8e416 11496 if (amqpvalue_get_type(item_value) == AMQP_TYPE_NULL)
AzureIoTClient 16:22a72cf8e416 11497 {
AzureIoTClient 16:22a72cf8e416 11498 result = __LINE__;
AzureIoTClient 16:22a72cf8e416 11499 }
AzureIoTClient 16:22a72cf8e416 11500 else
AzureIoTClient 16:22a72cf8e416 11501 {
AzureIoTClient 16:22a72cf8e416 11502 *delivery_count_value = 0;
AzureIoTClient 16:22a72cf8e416 11503 result = 0;
AzureIoTClient 16:22a72cf8e416 11504 }
Azure.IoT Build 0:6ae2f7bca550 11505 }
Azure.IoT Build 0:6ae2f7bca550 11506 else
Azure.IoT Build 0:6ae2f7bca550 11507 {
Azure.IoT Build 0:6ae2f7bca550 11508 result = 0;
Azure.IoT Build 0:6ae2f7bca550 11509 }
Azure.IoT Build 0:6ae2f7bca550 11510 }
Azure.IoT Build 0:6ae2f7bca550 11511 }
Azure.IoT Build 0:6ae2f7bca550 11512
Azure.IoT Build 0:6ae2f7bca550 11513 return result;
Azure.IoT Build 0:6ae2f7bca550 11514 }
Azure.IoT Build 0:6ae2f7bca550 11515
Azure.IoT Build 0:6ae2f7bca550 11516 int header_set_delivery_count(HEADER_HANDLE header, uint32_t delivery_count_value)
Azure.IoT Build 0:6ae2f7bca550 11517 {
Azure.IoT Build 0:6ae2f7bca550 11518 int result;
Azure.IoT Build 0:6ae2f7bca550 11519
Azure.IoT Build 0:6ae2f7bca550 11520 if (header == NULL)
Azure.IoT Build 0:6ae2f7bca550 11521 {
Azure.IoT Build 0:6ae2f7bca550 11522 result = __LINE__;
Azure.IoT Build 0:6ae2f7bca550 11523 }
Azure.IoT Build 0:6ae2f7bca550 11524 else
Azure.IoT Build 0:6ae2f7bca550 11525 {
Azure.IoT Build 0:6ae2f7bca550 11526 HEADER_INSTANCE* header_instance = (HEADER_INSTANCE*)header;
Azure.IoT Build 0:6ae2f7bca550 11527 AMQP_VALUE delivery_count_amqp_value = amqpvalue_create_uint(delivery_count_value);
Azure.IoT Build 0:6ae2f7bca550 11528 if (delivery_count_amqp_value == NULL)
Azure.IoT Build 0:6ae2f7bca550 11529 {
Azure.IoT Build 0:6ae2f7bca550 11530 result = __LINE__;
Azure.IoT Build 0:6ae2f7bca550 11531 }
Azure.IoT Build 0:6ae2f7bca550 11532 else
Azure.IoT Build 0:6ae2f7bca550 11533 {
Azure.IoT Build 0:6ae2f7bca550 11534 if (amqpvalue_set_composite_item(header_instance->composite_value, 4, delivery_count_amqp_value) != 0)
Azure.IoT Build 0:6ae2f7bca550 11535 {
Azure.IoT Build 0:6ae2f7bca550 11536 result = __LINE__;
Azure.IoT Build 0:6ae2f7bca550 11537 }
Azure.IoT Build 0:6ae2f7bca550 11538 else
Azure.IoT Build 0:6ae2f7bca550 11539 {
Azure.IoT Build 0:6ae2f7bca550 11540 result = 0;
Azure.IoT Build 0:6ae2f7bca550 11541 }
Azure.IoT Build 0:6ae2f7bca550 11542
Azure.IoT Build 0:6ae2f7bca550 11543 amqpvalue_destroy(delivery_count_amqp_value);
Azure.IoT Build 0:6ae2f7bca550 11544 }
Azure.IoT Build 0:6ae2f7bca550 11545 }
Azure.IoT Build 0:6ae2f7bca550 11546
Azure.IoT Build 0:6ae2f7bca550 11547 return result;
Azure.IoT Build 0:6ae2f7bca550 11548 }
Azure.IoT Build 0:6ae2f7bca550 11549
Azure.IoT Build 0:6ae2f7bca550 11550
Azure.IoT Build 0:6ae2f7bca550 11551 /* delivery-annotations */
Azure.IoT Build 0:6ae2f7bca550 11552
Azure.IoT Build 0:6ae2f7bca550 11553 AMQP_VALUE amqpvalue_create_delivery_annotations(delivery_annotations value)
Azure.IoT Build 0:6ae2f7bca550 11554 {
Azure.IoT Build 0:6ae2f7bca550 11555 AMQP_VALUE result;
Azure.IoT Build 0:6ae2f7bca550 11556 AMQP_VALUE described_value = amqpvalue_create_annotations(value);
Azure.IoT Build 0:6ae2f7bca550 11557 if (described_value == NULL)
Azure.IoT Build 0:6ae2f7bca550 11558 {
Azure.IoT Build 0:6ae2f7bca550 11559 result = NULL;
Azure.IoT Build 0:6ae2f7bca550 11560 }
Azure.IoT Build 0:6ae2f7bca550 11561 else
Azure.IoT Build 0:6ae2f7bca550 11562 {
Azure.IoT Build 0:6ae2f7bca550 11563 AMQP_VALUE descriptor = amqpvalue_create_ulong(113);
Azure.IoT Build 0:6ae2f7bca550 11564 if (descriptor == NULL)
Azure.IoT Build 0:6ae2f7bca550 11565 {
Azure.IoT Build 0:6ae2f7bca550 11566 result = NULL;
Azure.IoT Build 0:6ae2f7bca550 11567 }
Azure.IoT Build 0:6ae2f7bca550 11568 else
Azure.IoT Build 0:6ae2f7bca550 11569 {
Azure.IoT Build 0:6ae2f7bca550 11570 result = amqpvalue_create_described(amqpvalue_clone(descriptor), amqpvalue_clone(described_value));
Azure.IoT Build 0:6ae2f7bca550 11571
Azure.IoT Build 0:6ae2f7bca550 11572 amqpvalue_destroy(descriptor);
Azure.IoT Build 0:6ae2f7bca550 11573 }
Azure.IoT Build 0:6ae2f7bca550 11574
Azure.IoT Build 0:6ae2f7bca550 11575 amqpvalue_destroy(described_value);
Azure.IoT Build 0:6ae2f7bca550 11576 }
Azure.IoT Build 0:6ae2f7bca550 11577
Azure.IoT Build 0:6ae2f7bca550 11578 return result;
Azure.IoT Build 0:6ae2f7bca550 11579 }
Azure.IoT Build 0:6ae2f7bca550 11580
Azure.IoT Build 0:6ae2f7bca550 11581 bool is_delivery_annotations_type_by_descriptor(AMQP_VALUE descriptor)
Azure.IoT Build 0:6ae2f7bca550 11582 {
Azure.IoT Build 0:6ae2f7bca550 11583 bool result;
Azure.IoT Build 0:6ae2f7bca550 11584
Azure.IoT Build 0:6ae2f7bca550 11585 uint64_t descriptor_ulong;
Azure.IoT Build 0:6ae2f7bca550 11586 if ((amqpvalue_get_ulong(descriptor, &descriptor_ulong) == 0) &&
Azure.IoT Build 0:6ae2f7bca550 11587 (descriptor_ulong == 113))
Azure.IoT Build 0:6ae2f7bca550 11588 {
Azure.IoT Build 0:6ae2f7bca550 11589 result = true;
Azure.IoT Build 0:6ae2f7bca550 11590 }
Azure.IoT Build 0:6ae2f7bca550 11591 else
Azure.IoT Build 0:6ae2f7bca550 11592 {
Azure.IoT Build 0:6ae2f7bca550 11593 result = false;
Azure.IoT Build 0:6ae2f7bca550 11594 }
Azure.IoT Build 0:6ae2f7bca550 11595
Azure.IoT Build 0:6ae2f7bca550 11596 return result;
Azure.IoT Build 0:6ae2f7bca550 11597 }
Azure.IoT Build 0:6ae2f7bca550 11598
Azure.IoT Build 0:6ae2f7bca550 11599 /* message-annotations */
Azure.IoT Build 0:6ae2f7bca550 11600
Azure.IoT Build 0:6ae2f7bca550 11601 AMQP_VALUE amqpvalue_create_message_annotations(message_annotations value)
Azure.IoT Build 0:6ae2f7bca550 11602 {
Azure.IoT Build 0:6ae2f7bca550 11603 AMQP_VALUE result;
Azure.IoT Build 0:6ae2f7bca550 11604 AMQP_VALUE described_value = amqpvalue_create_annotations(value);
Azure.IoT Build 0:6ae2f7bca550 11605 if (described_value == NULL)
Azure.IoT Build 0:6ae2f7bca550 11606 {
Azure.IoT Build 0:6ae2f7bca550 11607 result = NULL;
Azure.IoT Build 0:6ae2f7bca550 11608 }
Azure.IoT Build 0:6ae2f7bca550 11609 else
Azure.IoT Build 0:6ae2f7bca550 11610 {
Azure.IoT Build 0:6ae2f7bca550 11611 AMQP_VALUE descriptor = amqpvalue_create_ulong(114);
Azure.IoT Build 0:6ae2f7bca550 11612 if (descriptor == NULL)
Azure.IoT Build 0:6ae2f7bca550 11613 {
Azure.IoT Build 0:6ae2f7bca550 11614 result = NULL;
Azure.IoT Build 0:6ae2f7bca550 11615 }
Azure.IoT Build 0:6ae2f7bca550 11616 else
Azure.IoT Build 0:6ae2f7bca550 11617 {
Azure.IoT Build 0:6ae2f7bca550 11618 result = amqpvalue_create_described(amqpvalue_clone(descriptor), amqpvalue_clone(described_value));
Azure.IoT Build 0:6ae2f7bca550 11619
Azure.IoT Build 0:6ae2f7bca550 11620 amqpvalue_destroy(descriptor);
Azure.IoT Build 0:6ae2f7bca550 11621 }
Azure.IoT Build 0:6ae2f7bca550 11622
Azure.IoT Build 0:6ae2f7bca550 11623 amqpvalue_destroy(described_value);
Azure.IoT Build 0:6ae2f7bca550 11624 }
Azure.IoT Build 0:6ae2f7bca550 11625
Azure.IoT Build 0:6ae2f7bca550 11626 return result;
Azure.IoT Build 0:6ae2f7bca550 11627 }
Azure.IoT Build 0:6ae2f7bca550 11628
Azure.IoT Build 0:6ae2f7bca550 11629 bool is_message_annotations_type_by_descriptor(AMQP_VALUE descriptor)
Azure.IoT Build 0:6ae2f7bca550 11630 {
Azure.IoT Build 0:6ae2f7bca550 11631 bool result;
Azure.IoT Build 0:6ae2f7bca550 11632
Azure.IoT Build 0:6ae2f7bca550 11633 uint64_t descriptor_ulong;
Azure.IoT Build 0:6ae2f7bca550 11634 if ((amqpvalue_get_ulong(descriptor, &descriptor_ulong) == 0) &&
Azure.IoT Build 0:6ae2f7bca550 11635 (descriptor_ulong == 114))
Azure.IoT Build 0:6ae2f7bca550 11636 {
Azure.IoT Build 0:6ae2f7bca550 11637 result = true;
Azure.IoT Build 0:6ae2f7bca550 11638 }
Azure.IoT Build 0:6ae2f7bca550 11639 else
Azure.IoT Build 0:6ae2f7bca550 11640 {
Azure.IoT Build 0:6ae2f7bca550 11641 result = false;
Azure.IoT Build 0:6ae2f7bca550 11642 }
Azure.IoT Build 0:6ae2f7bca550 11643
Azure.IoT Build 0:6ae2f7bca550 11644 return result;
Azure.IoT Build 0:6ae2f7bca550 11645 }
Azure.IoT Build 0:6ae2f7bca550 11646
Azure.IoT Build 0:6ae2f7bca550 11647 /* application-properties */
Azure.IoT Build 0:6ae2f7bca550 11648
Azure.IoT Build 0:6ae2f7bca550 11649 AMQP_VALUE amqpvalue_create_application_properties(AMQP_VALUE value)
Azure.IoT Build 0:6ae2f7bca550 11650 {
Azure.IoT Build 0:6ae2f7bca550 11651 AMQP_VALUE result;
Azure.IoT Build 0:6ae2f7bca550 11652 AMQP_VALUE described_value = amqpvalue_clone(value);
Azure.IoT Build 0:6ae2f7bca550 11653 if (described_value == NULL)
Azure.IoT Build 0:6ae2f7bca550 11654 {
Azure.IoT Build 0:6ae2f7bca550 11655 result = NULL;
Azure.IoT Build 0:6ae2f7bca550 11656 }
Azure.IoT Build 0:6ae2f7bca550 11657 else
Azure.IoT Build 0:6ae2f7bca550 11658 {
Azure.IoT Build 0:6ae2f7bca550 11659 AMQP_VALUE descriptor = amqpvalue_create_ulong(116);
Azure.IoT Build 0:6ae2f7bca550 11660 if (descriptor == NULL)
Azure.IoT Build 0:6ae2f7bca550 11661 {
Azure.IoT Build 0:6ae2f7bca550 11662 result = NULL;
Azure.IoT Build 0:6ae2f7bca550 11663 }
Azure.IoT Build 0:6ae2f7bca550 11664 else
Azure.IoT Build 0:6ae2f7bca550 11665 {
Azure.IoT Build 0:6ae2f7bca550 11666 result = amqpvalue_create_described(amqpvalue_clone(descriptor), amqpvalue_clone(described_value));
Azure.IoT Build 0:6ae2f7bca550 11667
Azure.IoT Build 0:6ae2f7bca550 11668 amqpvalue_destroy(descriptor);
Azure.IoT Build 0:6ae2f7bca550 11669 }
Azure.IoT Build 0:6ae2f7bca550 11670
Azure.IoT Build 0:6ae2f7bca550 11671 amqpvalue_destroy(described_value);
Azure.IoT Build 0:6ae2f7bca550 11672 }
Azure.IoT Build 0:6ae2f7bca550 11673
Azure.IoT Build 0:6ae2f7bca550 11674 return result;
Azure.IoT Build 0:6ae2f7bca550 11675 }
Azure.IoT Build 0:6ae2f7bca550 11676
Azure.IoT Build 0:6ae2f7bca550 11677 bool is_application_properties_type_by_descriptor(AMQP_VALUE descriptor)
Azure.IoT Build 0:6ae2f7bca550 11678 {
Azure.IoT Build 0:6ae2f7bca550 11679 bool result;
Azure.IoT Build 0:6ae2f7bca550 11680
Azure.IoT Build 0:6ae2f7bca550 11681 uint64_t descriptor_ulong;
Azure.IoT Build 0:6ae2f7bca550 11682 if ((amqpvalue_get_ulong(descriptor, &descriptor_ulong) == 0) &&
Azure.IoT Build 0:6ae2f7bca550 11683 (descriptor_ulong == 116))
Azure.IoT Build 0:6ae2f7bca550 11684 {
Azure.IoT Build 0:6ae2f7bca550 11685 result = true;
Azure.IoT Build 0:6ae2f7bca550 11686 }
Azure.IoT Build 0:6ae2f7bca550 11687 else
Azure.IoT Build 0:6ae2f7bca550 11688 {
Azure.IoT Build 0:6ae2f7bca550 11689 result = false;
Azure.IoT Build 0:6ae2f7bca550 11690 }
Azure.IoT Build 0:6ae2f7bca550 11691
Azure.IoT Build 0:6ae2f7bca550 11692 return result;
Azure.IoT Build 0:6ae2f7bca550 11693 }
Azure.IoT Build 0:6ae2f7bca550 11694
Azure.IoT Build 0:6ae2f7bca550 11695 /* data */
Azure.IoT Build 0:6ae2f7bca550 11696
Azure.IoT Build 0:6ae2f7bca550 11697 AMQP_VALUE amqpvalue_create_data(data value)
Azure.IoT Build 0:6ae2f7bca550 11698 {
Azure.IoT Build 0:6ae2f7bca550 11699 AMQP_VALUE result;
Azure.IoT Build 0:6ae2f7bca550 11700 AMQP_VALUE described_value = amqpvalue_create_binary(value);
Azure.IoT Build 0:6ae2f7bca550 11701 if (described_value == NULL)
Azure.IoT Build 0:6ae2f7bca550 11702 {
Azure.IoT Build 0:6ae2f7bca550 11703 result = NULL;
Azure.IoT Build 0:6ae2f7bca550 11704 }
Azure.IoT Build 0:6ae2f7bca550 11705 else
Azure.IoT Build 0:6ae2f7bca550 11706 {
Azure.IoT Build 0:6ae2f7bca550 11707 AMQP_VALUE descriptor = amqpvalue_create_ulong(117);
Azure.IoT Build 0:6ae2f7bca550 11708 if (descriptor == NULL)
Azure.IoT Build 0:6ae2f7bca550 11709 {
Azure.IoT Build 0:6ae2f7bca550 11710 result = NULL;
Azure.IoT Build 0:6ae2f7bca550 11711 }
Azure.IoT Build 0:6ae2f7bca550 11712 else
Azure.IoT Build 0:6ae2f7bca550 11713 {
Azure.IoT Build 0:6ae2f7bca550 11714 result = amqpvalue_create_described(amqpvalue_clone(descriptor), amqpvalue_clone(described_value));
Azure.IoT Build 0:6ae2f7bca550 11715
Azure.IoT Build 0:6ae2f7bca550 11716 amqpvalue_destroy(descriptor);
Azure.IoT Build 0:6ae2f7bca550 11717 }
Azure.IoT Build 0:6ae2f7bca550 11718
Azure.IoT Build 0:6ae2f7bca550 11719 amqpvalue_destroy(described_value);
Azure.IoT Build 0:6ae2f7bca550 11720 }
Azure.IoT Build 0:6ae2f7bca550 11721
Azure.IoT Build 0:6ae2f7bca550 11722 return result;
Azure.IoT Build 0:6ae2f7bca550 11723 }
Azure.IoT Build 0:6ae2f7bca550 11724
Azure.IoT Build 0:6ae2f7bca550 11725 bool is_data_type_by_descriptor(AMQP_VALUE descriptor)
Azure.IoT Build 0:6ae2f7bca550 11726 {
Azure.IoT Build 0:6ae2f7bca550 11727 bool result;
Azure.IoT Build 0:6ae2f7bca550 11728
Azure.IoT Build 0:6ae2f7bca550 11729 uint64_t descriptor_ulong;
Azure.IoT Build 0:6ae2f7bca550 11730 if ((amqpvalue_get_ulong(descriptor, &descriptor_ulong) == 0) &&
Azure.IoT Build 0:6ae2f7bca550 11731 (descriptor_ulong == 117))
Azure.IoT Build 0:6ae2f7bca550 11732 {
Azure.IoT Build 0:6ae2f7bca550 11733 result = true;
Azure.IoT Build 0:6ae2f7bca550 11734 }
Azure.IoT Build 0:6ae2f7bca550 11735 else
Azure.IoT Build 0:6ae2f7bca550 11736 {
Azure.IoT Build 0:6ae2f7bca550 11737 result = false;
Azure.IoT Build 0:6ae2f7bca550 11738 }
Azure.IoT Build 0:6ae2f7bca550 11739
Azure.IoT Build 0:6ae2f7bca550 11740 return result;
Azure.IoT Build 0:6ae2f7bca550 11741 }
Azure.IoT Build 0:6ae2f7bca550 11742
Azure.IoT Build 0:6ae2f7bca550 11743 /* amqp-sequence */
Azure.IoT Build 0:6ae2f7bca550 11744
Azure.IoT Build 0:6ae2f7bca550 11745 AMQP_VALUE amqpvalue_create_amqp_sequence(AMQP_VALUE value)
Azure.IoT Build 0:6ae2f7bca550 11746 {
Azure.IoT Build 0:6ae2f7bca550 11747 AMQP_VALUE result;
Azure.IoT Build 0:6ae2f7bca550 11748 AMQP_VALUE described_value = amqpvalue_clone(value);
Azure.IoT Build 0:6ae2f7bca550 11749 if (described_value == NULL)
Azure.IoT Build 0:6ae2f7bca550 11750 {
Azure.IoT Build 0:6ae2f7bca550 11751 result = NULL;
Azure.IoT Build 0:6ae2f7bca550 11752 }
Azure.IoT Build 0:6ae2f7bca550 11753 else
Azure.IoT Build 0:6ae2f7bca550 11754 {
Azure.IoT Build 0:6ae2f7bca550 11755 AMQP_VALUE descriptor = amqpvalue_create_ulong(118);
Azure.IoT Build 0:6ae2f7bca550 11756 if (descriptor == NULL)
Azure.IoT Build 0:6ae2f7bca550 11757 {
Azure.IoT Build 0:6ae2f7bca550 11758 result = NULL;
Azure.IoT Build 0:6ae2f7bca550 11759 }
Azure.IoT Build 0:6ae2f7bca550 11760 else
Azure.IoT Build 0:6ae2f7bca550 11761 {
Azure.IoT Build 0:6ae2f7bca550 11762 result = amqpvalue_create_described(amqpvalue_clone(descriptor), amqpvalue_clone(described_value));
Azure.IoT Build 0:6ae2f7bca550 11763
Azure.IoT Build 0:6ae2f7bca550 11764 amqpvalue_destroy(descriptor);
Azure.IoT Build 0:6ae2f7bca550 11765 }
Azure.IoT Build 0:6ae2f7bca550 11766
Azure.IoT Build 0:6ae2f7bca550 11767 amqpvalue_destroy(described_value);
Azure.IoT Build 0:6ae2f7bca550 11768 }
Azure.IoT Build 0:6ae2f7bca550 11769
Azure.IoT Build 0:6ae2f7bca550 11770 return result;
Azure.IoT Build 0:6ae2f7bca550 11771 }
Azure.IoT Build 0:6ae2f7bca550 11772
Azure.IoT Build 0:6ae2f7bca550 11773 bool is_amqp_sequence_type_by_descriptor(AMQP_VALUE descriptor)
Azure.IoT Build 0:6ae2f7bca550 11774 {
Azure.IoT Build 0:6ae2f7bca550 11775 bool result;
Azure.IoT Build 0:6ae2f7bca550 11776
Azure.IoT Build 0:6ae2f7bca550 11777 uint64_t descriptor_ulong;
Azure.IoT Build 0:6ae2f7bca550 11778 if ((amqpvalue_get_ulong(descriptor, &descriptor_ulong) == 0) &&
Azure.IoT Build 0:6ae2f7bca550 11779 (descriptor_ulong == 118))
Azure.IoT Build 0:6ae2f7bca550 11780 {
Azure.IoT Build 0:6ae2f7bca550 11781 result = true;
Azure.IoT Build 0:6ae2f7bca550 11782 }
Azure.IoT Build 0:6ae2f7bca550 11783 else
Azure.IoT Build 0:6ae2f7bca550 11784 {
Azure.IoT Build 0:6ae2f7bca550 11785 result = false;
Azure.IoT Build 0:6ae2f7bca550 11786 }
Azure.IoT Build 0:6ae2f7bca550 11787
Azure.IoT Build 0:6ae2f7bca550 11788 return result;
Azure.IoT Build 0:6ae2f7bca550 11789 }
Azure.IoT Build 0:6ae2f7bca550 11790
Azure.IoT Build 0:6ae2f7bca550 11791 /* amqp-value */
Azure.IoT Build 0:6ae2f7bca550 11792
Azure.IoT Build 0:6ae2f7bca550 11793 AMQP_VALUE amqpvalue_create_amqp_value(AMQP_VALUE value)
Azure.IoT Build 0:6ae2f7bca550 11794 {
Azure.IoT Build 0:6ae2f7bca550 11795 AMQP_VALUE result;
Azure.IoT Build 0:6ae2f7bca550 11796 AMQP_VALUE described_value = amqpvalue_clone(value);
Azure.IoT Build 0:6ae2f7bca550 11797 if (described_value == NULL)
Azure.IoT Build 0:6ae2f7bca550 11798 {
Azure.IoT Build 0:6ae2f7bca550 11799 result = NULL;
Azure.IoT Build 0:6ae2f7bca550 11800 }
Azure.IoT Build 0:6ae2f7bca550 11801 else
Azure.IoT Build 0:6ae2f7bca550 11802 {
Azure.IoT Build 0:6ae2f7bca550 11803 AMQP_VALUE descriptor = amqpvalue_create_ulong(119);
Azure.IoT Build 0:6ae2f7bca550 11804 if (descriptor == NULL)
Azure.IoT Build 0:6ae2f7bca550 11805 {
Azure.IoT Build 0:6ae2f7bca550 11806 result = NULL;
Azure.IoT Build 0:6ae2f7bca550 11807 }
Azure.IoT Build 0:6ae2f7bca550 11808 else
Azure.IoT Build 0:6ae2f7bca550 11809 {
Azure.IoT Build 0:6ae2f7bca550 11810 result = amqpvalue_create_described(amqpvalue_clone(descriptor), amqpvalue_clone(described_value));
Azure.IoT Build 0:6ae2f7bca550 11811
Azure.IoT Build 0:6ae2f7bca550 11812 amqpvalue_destroy(descriptor);
Azure.IoT Build 0:6ae2f7bca550 11813 }
Azure.IoT Build 0:6ae2f7bca550 11814
Azure.IoT Build 0:6ae2f7bca550 11815 amqpvalue_destroy(described_value);
Azure.IoT Build 0:6ae2f7bca550 11816 }
Azure.IoT Build 0:6ae2f7bca550 11817
Azure.IoT Build 0:6ae2f7bca550 11818 return result;
Azure.IoT Build 0:6ae2f7bca550 11819 }
Azure.IoT Build 0:6ae2f7bca550 11820
Azure.IoT Build 0:6ae2f7bca550 11821 bool is_amqp_value_type_by_descriptor(AMQP_VALUE descriptor)
Azure.IoT Build 0:6ae2f7bca550 11822 {
Azure.IoT Build 0:6ae2f7bca550 11823 bool result;
Azure.IoT Build 0:6ae2f7bca550 11824
Azure.IoT Build 0:6ae2f7bca550 11825 uint64_t descriptor_ulong;
Azure.IoT Build 0:6ae2f7bca550 11826 if ((amqpvalue_get_ulong(descriptor, &descriptor_ulong) == 0) &&
Azure.IoT Build 0:6ae2f7bca550 11827 (descriptor_ulong == 119))
Azure.IoT Build 0:6ae2f7bca550 11828 {
Azure.IoT Build 0:6ae2f7bca550 11829 result = true;
Azure.IoT Build 0:6ae2f7bca550 11830 }
Azure.IoT Build 0:6ae2f7bca550 11831 else
Azure.IoT Build 0:6ae2f7bca550 11832 {
Azure.IoT Build 0:6ae2f7bca550 11833 result = false;
Azure.IoT Build 0:6ae2f7bca550 11834 }
Azure.IoT Build 0:6ae2f7bca550 11835
Azure.IoT Build 0:6ae2f7bca550 11836 return result;
Azure.IoT Build 0:6ae2f7bca550 11837 }
Azure.IoT Build 0:6ae2f7bca550 11838
Azure.IoT Build 0:6ae2f7bca550 11839 /* footer */
Azure.IoT Build 0:6ae2f7bca550 11840
Azure.IoT Build 0:6ae2f7bca550 11841 AMQP_VALUE amqpvalue_create_footer(footer value)
Azure.IoT Build 0:6ae2f7bca550 11842 {
Azure.IoT Build 0:6ae2f7bca550 11843 AMQP_VALUE result;
Azure.IoT Build 0:6ae2f7bca550 11844 AMQP_VALUE described_value = amqpvalue_create_annotations(value);
Azure.IoT Build 0:6ae2f7bca550 11845 if (described_value == NULL)
Azure.IoT Build 0:6ae2f7bca550 11846 {
Azure.IoT Build 0:6ae2f7bca550 11847 result = NULL;
Azure.IoT Build 0:6ae2f7bca550 11848 }
Azure.IoT Build 0:6ae2f7bca550 11849 else
Azure.IoT Build 0:6ae2f7bca550 11850 {
Azure.IoT Build 0:6ae2f7bca550 11851 AMQP_VALUE descriptor = amqpvalue_create_ulong(120);
Azure.IoT Build 0:6ae2f7bca550 11852 if (descriptor == NULL)
Azure.IoT Build 0:6ae2f7bca550 11853 {
Azure.IoT Build 0:6ae2f7bca550 11854 result = NULL;
Azure.IoT Build 0:6ae2f7bca550 11855 }
Azure.IoT Build 0:6ae2f7bca550 11856 else
Azure.IoT Build 0:6ae2f7bca550 11857 {
Azure.IoT Build 0:6ae2f7bca550 11858 result = amqpvalue_create_described(amqpvalue_clone(descriptor), amqpvalue_clone(described_value));
Azure.IoT Build 0:6ae2f7bca550 11859
Azure.IoT Build 0:6ae2f7bca550 11860 amqpvalue_destroy(descriptor);
Azure.IoT Build 0:6ae2f7bca550 11861 }
Azure.IoT Build 0:6ae2f7bca550 11862
Azure.IoT Build 0:6ae2f7bca550 11863 amqpvalue_destroy(described_value);
Azure.IoT Build 0:6ae2f7bca550 11864 }
Azure.IoT Build 0:6ae2f7bca550 11865
Azure.IoT Build 0:6ae2f7bca550 11866 return result;
Azure.IoT Build 0:6ae2f7bca550 11867 }
Azure.IoT Build 0:6ae2f7bca550 11868
Azure.IoT Build 0:6ae2f7bca550 11869 bool is_footer_type_by_descriptor(AMQP_VALUE descriptor)
Azure.IoT Build 0:6ae2f7bca550 11870 {
Azure.IoT Build 0:6ae2f7bca550 11871 bool result;
Azure.IoT Build 0:6ae2f7bca550 11872
Azure.IoT Build 0:6ae2f7bca550 11873 uint64_t descriptor_ulong;
Azure.IoT Build 0:6ae2f7bca550 11874 if ((amqpvalue_get_ulong(descriptor, &descriptor_ulong) == 0) &&
Azure.IoT Build 0:6ae2f7bca550 11875 (descriptor_ulong == 120))
Azure.IoT Build 0:6ae2f7bca550 11876 {
Azure.IoT Build 0:6ae2f7bca550 11877 result = true;
Azure.IoT Build 0:6ae2f7bca550 11878 }
Azure.IoT Build 0:6ae2f7bca550 11879 else
Azure.IoT Build 0:6ae2f7bca550 11880 {
Azure.IoT Build 0:6ae2f7bca550 11881 result = false;
Azure.IoT Build 0:6ae2f7bca550 11882 }
Azure.IoT Build 0:6ae2f7bca550 11883
Azure.IoT Build 0:6ae2f7bca550 11884 return result;
Azure.IoT Build 0:6ae2f7bca550 11885 }
Azure.IoT Build 0:6ae2f7bca550 11886
Azure.IoT Build 0:6ae2f7bca550 11887 /* properties */
Azure.IoT Build 0:6ae2f7bca550 11888
Azure.IoT Build 0:6ae2f7bca550 11889 typedef struct PROPERTIES_INSTANCE_TAG
Azure.IoT Build 0:6ae2f7bca550 11890 {
Azure.IoT Build 0:6ae2f7bca550 11891 AMQP_VALUE composite_value;
Azure.IoT Build 0:6ae2f7bca550 11892 } PROPERTIES_INSTANCE;
Azure.IoT Build 0:6ae2f7bca550 11893
Azure.IoT Build 0:6ae2f7bca550 11894 static PROPERTIES_HANDLE properties_create_internal(void)
Azure.IoT Build 0:6ae2f7bca550 11895 {
Azure.IoT Build 0:6ae2f7bca550 11896 PROPERTIES_INSTANCE* properties_instance = (PROPERTIES_INSTANCE*)amqpalloc_malloc(sizeof(PROPERTIES_INSTANCE));
Azure.IoT Build 0:6ae2f7bca550 11897 if (properties_instance != NULL)
Azure.IoT Build 0:6ae2f7bca550 11898 {
Azure.IoT Build 0:6ae2f7bca550 11899 properties_instance->composite_value = NULL;
Azure.IoT Build 0:6ae2f7bca550 11900 }
Azure.IoT Build 0:6ae2f7bca550 11901
Azure.IoT Build 0:6ae2f7bca550 11902 return properties_instance;
Azure.IoT Build 0:6ae2f7bca550 11903 }
Azure.IoT Build 0:6ae2f7bca550 11904
Azure.IoT Build 0:6ae2f7bca550 11905 PROPERTIES_HANDLE properties_create(void)
Azure.IoT Build 0:6ae2f7bca550 11906 {
Azure.IoT Build 0:6ae2f7bca550 11907 PROPERTIES_INSTANCE* properties_instance = (PROPERTIES_INSTANCE*)amqpalloc_malloc(sizeof(PROPERTIES_INSTANCE));
Azure.IoT Build 0:6ae2f7bca550 11908 if (properties_instance != NULL)
Azure.IoT Build 0:6ae2f7bca550 11909 {
Azure.IoT Build 0:6ae2f7bca550 11910 properties_instance->composite_value = amqpvalue_create_composite_with_ulong_descriptor(115);
Azure.IoT Build 0:6ae2f7bca550 11911 if (properties_instance->composite_value == NULL)
Azure.IoT Build 0:6ae2f7bca550 11912 {
Azure.IoT Build 0:6ae2f7bca550 11913 amqpalloc_free(properties_instance);
Azure.IoT Build 0:6ae2f7bca550 11914 properties_instance = NULL;
Azure.IoT Build 0:6ae2f7bca550 11915 }
Azure.IoT Build 0:6ae2f7bca550 11916 }
Azure.IoT Build 0:6ae2f7bca550 11917
Azure.IoT Build 0:6ae2f7bca550 11918 return properties_instance;
Azure.IoT Build 0:6ae2f7bca550 11919 }
Azure.IoT Build 0:6ae2f7bca550 11920
Azure.IoT Build 0:6ae2f7bca550 11921 PROPERTIES_HANDLE properties_clone(PROPERTIES_HANDLE value)
Azure.IoT Build 0:6ae2f7bca550 11922 {
Azure.IoT Build 0:6ae2f7bca550 11923 PROPERTIES_INSTANCE* properties_instance = (PROPERTIES_INSTANCE*)amqpalloc_malloc(sizeof(PROPERTIES_INSTANCE));
Azure.IoT Build 0:6ae2f7bca550 11924 if (properties_instance != NULL)
Azure.IoT Build 0:6ae2f7bca550 11925 {
Azure.IoT Build 0:6ae2f7bca550 11926 properties_instance->composite_value = amqpvalue_clone(((PROPERTIES_INSTANCE*)value)->composite_value);
Azure.IoT Build 0:6ae2f7bca550 11927 if (properties_instance->composite_value == NULL)
Azure.IoT Build 0:6ae2f7bca550 11928 {
Azure.IoT Build 0:6ae2f7bca550 11929 amqpalloc_free(properties_instance);
Azure.IoT Build 0:6ae2f7bca550 11930 properties_instance = NULL;
Azure.IoT Build 0:6ae2f7bca550 11931 }
Azure.IoT Build 0:6ae2f7bca550 11932 }
Azure.IoT Build 0:6ae2f7bca550 11933
Azure.IoT Build 0:6ae2f7bca550 11934 return properties_instance;
Azure.IoT Build 0:6ae2f7bca550 11935 }
Azure.IoT Build 0:6ae2f7bca550 11936
Azure.IoT Build 0:6ae2f7bca550 11937 void properties_destroy(PROPERTIES_HANDLE properties)
Azure.IoT Build 0:6ae2f7bca550 11938 {
Azure.IoT Build 0:6ae2f7bca550 11939 if (properties != NULL)
Azure.IoT Build 0:6ae2f7bca550 11940 {
Azure.IoT Build 0:6ae2f7bca550 11941 PROPERTIES_INSTANCE* properties_instance = (PROPERTIES_INSTANCE*)properties;
Azure.IoT Build 0:6ae2f7bca550 11942 amqpvalue_destroy(properties_instance->composite_value);
Azure.IoT Build 0:6ae2f7bca550 11943 amqpalloc_free(properties_instance);
Azure.IoT Build 0:6ae2f7bca550 11944 }
Azure.IoT Build 0:6ae2f7bca550 11945 }
Azure.IoT Build 0:6ae2f7bca550 11946
Azure.IoT Build 0:6ae2f7bca550 11947 AMQP_VALUE amqpvalue_create_properties(PROPERTIES_HANDLE properties)
Azure.IoT Build 0:6ae2f7bca550 11948 {
Azure.IoT Build 0:6ae2f7bca550 11949 AMQP_VALUE result;
Azure.IoT Build 0:6ae2f7bca550 11950
Azure.IoT Build 0:6ae2f7bca550 11951 if (properties == NULL)
Azure.IoT Build 0:6ae2f7bca550 11952 {
Azure.IoT Build 0:6ae2f7bca550 11953 result = NULL;
Azure.IoT Build 0:6ae2f7bca550 11954 }
Azure.IoT Build 0:6ae2f7bca550 11955 else
Azure.IoT Build 0:6ae2f7bca550 11956 {
Azure.IoT Build 0:6ae2f7bca550 11957 PROPERTIES_INSTANCE* properties_instance = (PROPERTIES_INSTANCE*)properties;
Azure.IoT Build 0:6ae2f7bca550 11958 result = amqpvalue_clone(properties_instance->composite_value);
Azure.IoT Build 0:6ae2f7bca550 11959 }
Azure.IoT Build 0:6ae2f7bca550 11960
Azure.IoT Build 0:6ae2f7bca550 11961 return result;
Azure.IoT Build 0:6ae2f7bca550 11962 }
Azure.IoT Build 0:6ae2f7bca550 11963
Azure.IoT Build 0:6ae2f7bca550 11964 bool is_properties_type_by_descriptor(AMQP_VALUE descriptor)
Azure.IoT Build 0:6ae2f7bca550 11965 {
Azure.IoT Build 0:6ae2f7bca550 11966 bool result;
Azure.IoT Build 0:6ae2f7bca550 11967
Azure.IoT Build 0:6ae2f7bca550 11968 uint64_t descriptor_ulong;
Azure.IoT Build 0:6ae2f7bca550 11969 if ((amqpvalue_get_ulong(descriptor, &descriptor_ulong) == 0) &&
Azure.IoT Build 0:6ae2f7bca550 11970 (descriptor_ulong == 115))
Azure.IoT Build 0:6ae2f7bca550 11971 {
Azure.IoT Build 0:6ae2f7bca550 11972 result = true;
Azure.IoT Build 0:6ae2f7bca550 11973 }
Azure.IoT Build 0:6ae2f7bca550 11974 else
Azure.IoT Build 0:6ae2f7bca550 11975 {
Azure.IoT Build 0:6ae2f7bca550 11976 result = false;
Azure.IoT Build 0:6ae2f7bca550 11977 }
Azure.IoT Build 0:6ae2f7bca550 11978
Azure.IoT Build 0:6ae2f7bca550 11979 return result;
Azure.IoT Build 0:6ae2f7bca550 11980 }
Azure.IoT Build 0:6ae2f7bca550 11981
Azure.IoT Build 0:6ae2f7bca550 11982
Azure.IoT Build 0:6ae2f7bca550 11983 int amqpvalue_get_properties(AMQP_VALUE value, PROPERTIES_HANDLE* properties_handle)
Azure.IoT Build 0:6ae2f7bca550 11984 {
Azure.IoT Build 0:6ae2f7bca550 11985 int result;
Azure.IoT Build 0:6ae2f7bca550 11986 PROPERTIES_INSTANCE* properties_instance = (PROPERTIES_INSTANCE*)properties_create_internal();
Azure.IoT Build 0:6ae2f7bca550 11987 *properties_handle = properties_instance;
Azure.IoT Build 0:6ae2f7bca550 11988 if (*properties_handle == NULL)
Azure.IoT Build 0:6ae2f7bca550 11989 {
Azure.IoT Build 0:6ae2f7bca550 11990 result = __LINE__;
Azure.IoT Build 0:6ae2f7bca550 11991 }
Azure.IoT Build 0:6ae2f7bca550 11992 else
Azure.IoT Build 0:6ae2f7bca550 11993 {
Azure.IoT Build 0:6ae2f7bca550 11994 AMQP_VALUE list_value = amqpvalue_get_inplace_described_value(value);
Azure.IoT Build 0:6ae2f7bca550 11995 if (list_value == NULL)
Azure.IoT Build 0:6ae2f7bca550 11996 {
Azure.IoT Build 0:6ae2f7bca550 11997 properties_destroy(*properties_handle);
Azure.IoT Build 0:6ae2f7bca550 11998 result = __LINE__;
Azure.IoT Build 0:6ae2f7bca550 11999 }
Azure.IoT Build 0:6ae2f7bca550 12000 else
Azure.IoT Build 0:6ae2f7bca550 12001 {
Azure.IoT Build 0:6ae2f7bca550 12002 do
Azure.IoT Build 0:6ae2f7bca550 12003 {
Azure.IoT Build 0:6ae2f7bca550 12004 AMQP_VALUE item_value;
Azure.IoT Build 0:6ae2f7bca550 12005 /* message-id */
Azure.IoT Build 0:6ae2f7bca550 12006 item_value = amqpvalue_get_list_item(list_value, 0);
Azure.IoT Build 0:6ae2f7bca550 12007 if (item_value == NULL)
Azure.IoT Build 0:6ae2f7bca550 12008 {
Azure.IoT Build 0:6ae2f7bca550 12009 /* do nothing */
Azure.IoT Build 0:6ae2f7bca550 12010 }
Azure.IoT Build 0:6ae2f7bca550 12011 else
Azure.IoT Build 0:6ae2f7bca550 12012 {
Azure.IoT Build 0:6ae2f7bca550 12013 amqpvalue_destroy(item_value);
Azure.IoT Build 0:6ae2f7bca550 12014 }
Azure.IoT Build 0:6ae2f7bca550 12015 /* user-id */
Azure.IoT Build 0:6ae2f7bca550 12016 item_value = amqpvalue_get_list_item(list_value, 1);
Azure.IoT Build 0:6ae2f7bca550 12017 if (item_value == NULL)
Azure.IoT Build 0:6ae2f7bca550 12018 {
Azure.IoT Build 0:6ae2f7bca550 12019 /* do nothing */
Azure.IoT Build 0:6ae2f7bca550 12020 }
Azure.IoT Build 0:6ae2f7bca550 12021 else
Azure.IoT Build 0:6ae2f7bca550 12022 {
Azure.IoT Build 0:6ae2f7bca550 12023 amqp_binary user_id;
Azure.IoT Build 0:6ae2f7bca550 12024 if (amqpvalue_get_binary(item_value, &user_id) != 0)
Azure.IoT Build 0:6ae2f7bca550 12025 {
Azure.IoT Build 0:6ae2f7bca550 12026 if (amqpvalue_get_type(item_value) != AMQP_TYPE_NULL)
Azure.IoT Build 0:6ae2f7bca550 12027 {
Azure.IoT Build 0:6ae2f7bca550 12028 properties_destroy(*properties_handle);
Azure.IoT Build 0:6ae2f7bca550 12029 result = __LINE__;
Azure.IoT Build 0:6ae2f7bca550 12030 break;
Azure.IoT Build 0:6ae2f7bca550 12031 }
Azure.IoT Build 0:6ae2f7bca550 12032 }
Azure.IoT Build 0:6ae2f7bca550 12033
Azure.IoT Build 0:6ae2f7bca550 12034 amqpvalue_destroy(item_value);
Azure.IoT Build 0:6ae2f7bca550 12035 }
Azure.IoT Build 0:6ae2f7bca550 12036 /* to */
Azure.IoT Build 0:6ae2f7bca550 12037 item_value = amqpvalue_get_list_item(list_value, 2);
Azure.IoT Build 0:6ae2f7bca550 12038 if (item_value == NULL)
Azure.IoT Build 0:6ae2f7bca550 12039 {
Azure.IoT Build 0:6ae2f7bca550 12040 /* do nothing */
Azure.IoT Build 0:6ae2f7bca550 12041 }
Azure.IoT Build 0:6ae2f7bca550 12042 else
Azure.IoT Build 0:6ae2f7bca550 12043 {
Azure.IoT Build 0:6ae2f7bca550 12044 amqpvalue_destroy(item_value);
Azure.IoT Build 0:6ae2f7bca550 12045 }
Azure.IoT Build 0:6ae2f7bca550 12046 /* subject */
Azure.IoT Build 0:6ae2f7bca550 12047 item_value = amqpvalue_get_list_item(list_value, 3);
Azure.IoT Build 0:6ae2f7bca550 12048 if (item_value == NULL)
Azure.IoT Build 0:6ae2f7bca550 12049 {
Azure.IoT Build 0:6ae2f7bca550 12050 /* do nothing */
Azure.IoT Build 0:6ae2f7bca550 12051 }
Azure.IoT Build 0:6ae2f7bca550 12052 else
Azure.IoT Build 0:6ae2f7bca550 12053 {
Azure.IoT Build 0:6ae2f7bca550 12054 const char* subject;
Azure.IoT Build 0:6ae2f7bca550 12055 if (amqpvalue_get_string(item_value, &subject) != 0)
Azure.IoT Build 0:6ae2f7bca550 12056 {
Azure.IoT Build 0:6ae2f7bca550 12057 if (amqpvalue_get_type(item_value) != AMQP_TYPE_NULL)
Azure.IoT Build 0:6ae2f7bca550 12058 {
Azure.IoT Build 0:6ae2f7bca550 12059 properties_destroy(*properties_handle);
Azure.IoT Build 0:6ae2f7bca550 12060 result = __LINE__;
Azure.IoT Build 0:6ae2f7bca550 12061 break;
Azure.IoT Build 0:6ae2f7bca550 12062 }
Azure.IoT Build 0:6ae2f7bca550 12063 }
Azure.IoT Build 0:6ae2f7bca550 12064
Azure.IoT Build 0:6ae2f7bca550 12065 amqpvalue_destroy(item_value);
Azure.IoT Build 0:6ae2f7bca550 12066 }
Azure.IoT Build 0:6ae2f7bca550 12067 /* reply-to */
Azure.IoT Build 0:6ae2f7bca550 12068 item_value = amqpvalue_get_list_item(list_value, 4);
Azure.IoT Build 0:6ae2f7bca550 12069 if (item_value == NULL)
Azure.IoT Build 0:6ae2f7bca550 12070 {
Azure.IoT Build 0:6ae2f7bca550 12071 /* do nothing */
Azure.IoT Build 0:6ae2f7bca550 12072 }
Azure.IoT Build 0:6ae2f7bca550 12073 else
Azure.IoT Build 0:6ae2f7bca550 12074 {
Azure.IoT Build 0:6ae2f7bca550 12075 amqpvalue_destroy(item_value);
Azure.IoT Build 0:6ae2f7bca550 12076 }
Azure.IoT Build 0:6ae2f7bca550 12077 /* correlation-id */
Azure.IoT Build 0:6ae2f7bca550 12078 item_value = amqpvalue_get_list_item(list_value, 5);
Azure.IoT Build 0:6ae2f7bca550 12079 if (item_value == NULL)
Azure.IoT Build 0:6ae2f7bca550 12080 {
Azure.IoT Build 0:6ae2f7bca550 12081 /* do nothing */
Azure.IoT Build 0:6ae2f7bca550 12082 }
Azure.IoT Build 0:6ae2f7bca550 12083 else
Azure.IoT Build 0:6ae2f7bca550 12084 {
Azure.IoT Build 0:6ae2f7bca550 12085 amqpvalue_destroy(item_value);
Azure.IoT Build 0:6ae2f7bca550 12086 }
Azure.IoT Build 0:6ae2f7bca550 12087 /* content-type */
Azure.IoT Build 0:6ae2f7bca550 12088 item_value = amqpvalue_get_list_item(list_value, 6);
Azure.IoT Build 0:6ae2f7bca550 12089 if (item_value == NULL)
Azure.IoT Build 0:6ae2f7bca550 12090 {
Azure.IoT Build 0:6ae2f7bca550 12091 /* do nothing */
Azure.IoT Build 0:6ae2f7bca550 12092 }
Azure.IoT Build 0:6ae2f7bca550 12093 else
Azure.IoT Build 0:6ae2f7bca550 12094 {
Azure.IoT Build 0:6ae2f7bca550 12095 const char* content_type;
Azure.IoT Build 0:6ae2f7bca550 12096 if (amqpvalue_get_symbol(item_value, &content_type) != 0)
Azure.IoT Build 0:6ae2f7bca550 12097 {
Azure.IoT Build 0:6ae2f7bca550 12098 if (amqpvalue_get_type(item_value) != AMQP_TYPE_NULL)
Azure.IoT Build 0:6ae2f7bca550 12099 {
Azure.IoT Build 0:6ae2f7bca550 12100 properties_destroy(*properties_handle);
Azure.IoT Build 0:6ae2f7bca550 12101 result = __LINE__;
Azure.IoT Build 0:6ae2f7bca550 12102 break;
Azure.IoT Build 0:6ae2f7bca550 12103 }
Azure.IoT Build 0:6ae2f7bca550 12104 }
Azure.IoT Build 0:6ae2f7bca550 12105
Azure.IoT Build 0:6ae2f7bca550 12106 amqpvalue_destroy(item_value);
Azure.IoT Build 0:6ae2f7bca550 12107 }
Azure.IoT Build 0:6ae2f7bca550 12108 /* content-encoding */
Azure.IoT Build 0:6ae2f7bca550 12109 item_value = amqpvalue_get_list_item(list_value, 7);
Azure.IoT Build 0:6ae2f7bca550 12110 if (item_value == NULL)
Azure.IoT Build 0:6ae2f7bca550 12111 {
Azure.IoT Build 0:6ae2f7bca550 12112 /* do nothing */
Azure.IoT Build 0:6ae2f7bca550 12113 }
Azure.IoT Build 0:6ae2f7bca550 12114 else
Azure.IoT Build 0:6ae2f7bca550 12115 {
Azure.IoT Build 0:6ae2f7bca550 12116 const char* content_encoding;
Azure.IoT Build 0:6ae2f7bca550 12117 if (amqpvalue_get_symbol(item_value, &content_encoding) != 0)
Azure.IoT Build 0:6ae2f7bca550 12118 {
Azure.IoT Build 0:6ae2f7bca550 12119 if (amqpvalue_get_type(item_value) != AMQP_TYPE_NULL)
Azure.IoT Build 0:6ae2f7bca550 12120 {
Azure.IoT Build 0:6ae2f7bca550 12121 properties_destroy(*properties_handle);
Azure.IoT Build 0:6ae2f7bca550 12122 result = __LINE__;
Azure.IoT Build 0:6ae2f7bca550 12123 break;
Azure.IoT Build 0:6ae2f7bca550 12124 }
Azure.IoT Build 0:6ae2f7bca550 12125 }
Azure.IoT Build 0:6ae2f7bca550 12126
Azure.IoT Build 0:6ae2f7bca550 12127 amqpvalue_destroy(item_value);
Azure.IoT Build 0:6ae2f7bca550 12128 }
Azure.IoT Build 0:6ae2f7bca550 12129 /* absolute-expiry-time */
Azure.IoT Build 0:6ae2f7bca550 12130 item_value = amqpvalue_get_list_item(list_value, 8);
Azure.IoT Build 0:6ae2f7bca550 12131 if (item_value == NULL)
Azure.IoT Build 0:6ae2f7bca550 12132 {
Azure.IoT Build 0:6ae2f7bca550 12133 /* do nothing */
Azure.IoT Build 0:6ae2f7bca550 12134 }
Azure.IoT Build 0:6ae2f7bca550 12135 else
Azure.IoT Build 0:6ae2f7bca550 12136 {
Azure.IoT Build 0:6ae2f7bca550 12137 timestamp absolute_expiry_time;
Azure.IoT Build 0:6ae2f7bca550 12138 if (amqpvalue_get_timestamp(item_value, &absolute_expiry_time) != 0)
Azure.IoT Build 0:6ae2f7bca550 12139 {
Azure.IoT Build 0:6ae2f7bca550 12140 if (amqpvalue_get_type(item_value) != AMQP_TYPE_NULL)
Azure.IoT Build 0:6ae2f7bca550 12141 {
Azure.IoT Build 0:6ae2f7bca550 12142 properties_destroy(*properties_handle);
Azure.IoT Build 0:6ae2f7bca550 12143 result = __LINE__;
Azure.IoT Build 0:6ae2f7bca550 12144 break;
Azure.IoT Build 0:6ae2f7bca550 12145 }
Azure.IoT Build 0:6ae2f7bca550 12146 }
Azure.IoT Build 0:6ae2f7bca550 12147
Azure.IoT Build 0:6ae2f7bca550 12148 amqpvalue_destroy(item_value);
Azure.IoT Build 0:6ae2f7bca550 12149 }
Azure.IoT Build 0:6ae2f7bca550 12150 /* creation-time */
Azure.IoT Build 0:6ae2f7bca550 12151 item_value = amqpvalue_get_list_item(list_value, 9);
Azure.IoT Build 0:6ae2f7bca550 12152 if (item_value == NULL)
Azure.IoT Build 0:6ae2f7bca550 12153 {
Azure.IoT Build 0:6ae2f7bca550 12154 /* do nothing */
Azure.IoT Build 0:6ae2f7bca550 12155 }
Azure.IoT Build 0:6ae2f7bca550 12156 else
Azure.IoT Build 0:6ae2f7bca550 12157 {
Azure.IoT Build 0:6ae2f7bca550 12158 timestamp creation_time;
Azure.IoT Build 0:6ae2f7bca550 12159 if (amqpvalue_get_timestamp(item_value, &creation_time) != 0)
Azure.IoT Build 0:6ae2f7bca550 12160 {
Azure.IoT Build 0:6ae2f7bca550 12161 if (amqpvalue_get_type(item_value) != AMQP_TYPE_NULL)
Azure.IoT Build 0:6ae2f7bca550 12162 {
Azure.IoT Build 0:6ae2f7bca550 12163 properties_destroy(*properties_handle);
Azure.IoT Build 0:6ae2f7bca550 12164 result = __LINE__;
Azure.IoT Build 0:6ae2f7bca550 12165 break;
Azure.IoT Build 0:6ae2f7bca550 12166 }
Azure.IoT Build 0:6ae2f7bca550 12167 }
Azure.IoT Build 0:6ae2f7bca550 12168
Azure.IoT Build 0:6ae2f7bca550 12169 amqpvalue_destroy(item_value);
Azure.IoT Build 0:6ae2f7bca550 12170 }
Azure.IoT Build 0:6ae2f7bca550 12171 /* group-id */
Azure.IoT Build 0:6ae2f7bca550 12172 item_value = amqpvalue_get_list_item(list_value, 10);
Azure.IoT Build 0:6ae2f7bca550 12173 if (item_value == NULL)
Azure.IoT Build 0:6ae2f7bca550 12174 {
Azure.IoT Build 0:6ae2f7bca550 12175 /* do nothing */
Azure.IoT Build 0:6ae2f7bca550 12176 }
Azure.IoT Build 0:6ae2f7bca550 12177 else
Azure.IoT Build 0:6ae2f7bca550 12178 {
Azure.IoT Build 0:6ae2f7bca550 12179 const char* group_id;
Azure.IoT Build 0:6ae2f7bca550 12180 if (amqpvalue_get_string(item_value, &group_id) != 0)
Azure.IoT Build 0:6ae2f7bca550 12181 {
Azure.IoT Build 0:6ae2f7bca550 12182 if (amqpvalue_get_type(item_value) != AMQP_TYPE_NULL)
Azure.IoT Build 0:6ae2f7bca550 12183 {
Azure.IoT Build 0:6ae2f7bca550 12184 properties_destroy(*properties_handle);
Azure.IoT Build 0:6ae2f7bca550 12185 result = __LINE__;
Azure.IoT Build 0:6ae2f7bca550 12186 break;
Azure.IoT Build 0:6ae2f7bca550 12187 }
Azure.IoT Build 0:6ae2f7bca550 12188 }
Azure.IoT Build 0:6ae2f7bca550 12189
Azure.IoT Build 0:6ae2f7bca550 12190 amqpvalue_destroy(item_value);
Azure.IoT Build 0:6ae2f7bca550 12191 }
Azure.IoT Build 0:6ae2f7bca550 12192 /* group-sequence */
Azure.IoT Build 0:6ae2f7bca550 12193 item_value = amqpvalue_get_list_item(list_value, 11);
Azure.IoT Build 0:6ae2f7bca550 12194 if (item_value == NULL)
Azure.IoT Build 0:6ae2f7bca550 12195 {
Azure.IoT Build 0:6ae2f7bca550 12196 /* do nothing */
Azure.IoT Build 0:6ae2f7bca550 12197 }
Azure.IoT Build 0:6ae2f7bca550 12198 else
Azure.IoT Build 0:6ae2f7bca550 12199 {
Azure.IoT Build 0:6ae2f7bca550 12200 sequence_no group_sequence;
Azure.IoT Build 0:6ae2f7bca550 12201 if (amqpvalue_get_sequence_no(item_value, &group_sequence) != 0)
Azure.IoT Build 0:6ae2f7bca550 12202 {
Azure.IoT Build 0:6ae2f7bca550 12203 if (amqpvalue_get_type(item_value) != AMQP_TYPE_NULL)
Azure.IoT Build 0:6ae2f7bca550 12204 {
Azure.IoT Build 0:6ae2f7bca550 12205 properties_destroy(*properties_handle);
Azure.IoT Build 0:6ae2f7bca550 12206 result = __LINE__;
Azure.IoT Build 0:6ae2f7bca550 12207 break;
Azure.IoT Build 0:6ae2f7bca550 12208 }
Azure.IoT Build 0:6ae2f7bca550 12209 }
Azure.IoT Build 0:6ae2f7bca550 12210
Azure.IoT Build 0:6ae2f7bca550 12211 amqpvalue_destroy(item_value);
Azure.IoT Build 0:6ae2f7bca550 12212 }
Azure.IoT Build 0:6ae2f7bca550 12213 /* reply-to-group-id */
Azure.IoT Build 0:6ae2f7bca550 12214 item_value = amqpvalue_get_list_item(list_value, 12);
Azure.IoT Build 0:6ae2f7bca550 12215 if (item_value == NULL)
Azure.IoT Build 0:6ae2f7bca550 12216 {
Azure.IoT Build 0:6ae2f7bca550 12217 /* do nothing */
Azure.IoT Build 0:6ae2f7bca550 12218 }
Azure.IoT Build 0:6ae2f7bca550 12219 else
Azure.IoT Build 0:6ae2f7bca550 12220 {
Azure.IoT Build 0:6ae2f7bca550 12221 const char* reply_to_group_id;
Azure.IoT Build 0:6ae2f7bca550 12222 if (amqpvalue_get_string(item_value, &reply_to_group_id) != 0)
Azure.IoT Build 0:6ae2f7bca550 12223 {
Azure.IoT Build 0:6ae2f7bca550 12224 if (amqpvalue_get_type(item_value) != AMQP_TYPE_NULL)
Azure.IoT Build 0:6ae2f7bca550 12225 {
Azure.IoT Build 0:6ae2f7bca550 12226 properties_destroy(*properties_handle);
Azure.IoT Build 0:6ae2f7bca550 12227 result = __LINE__;
Azure.IoT Build 0:6ae2f7bca550 12228 break;
Azure.IoT Build 0:6ae2f7bca550 12229 }
Azure.IoT Build 0:6ae2f7bca550 12230 }
Azure.IoT Build 0:6ae2f7bca550 12231
Azure.IoT Build 0:6ae2f7bca550 12232 amqpvalue_destroy(item_value);
Azure.IoT Build 0:6ae2f7bca550 12233 }
Azure.IoT Build 0:6ae2f7bca550 12234
Azure.IoT Build 0:6ae2f7bca550 12235 properties_instance->composite_value = amqpvalue_clone(value);
Azure.IoT Build 0:6ae2f7bca550 12236
Azure.IoT Build 0:6ae2f7bca550 12237 result = 0;
Azure.IoT Build 0:6ae2f7bca550 12238 } while (0);
Azure.IoT Build 0:6ae2f7bca550 12239 }
Azure.IoT Build 0:6ae2f7bca550 12240 }
Azure.IoT Build 0:6ae2f7bca550 12241
Azure.IoT Build 0:6ae2f7bca550 12242 return result;
Azure.IoT Build 0:6ae2f7bca550 12243 }
Azure.IoT Build 0:6ae2f7bca550 12244
Azure.IoT Build 0:6ae2f7bca550 12245 int properties_get_message_id(PROPERTIES_HANDLE properties, AMQP_VALUE* message_id_value)
Azure.IoT Build 0:6ae2f7bca550 12246 {
Azure.IoT Build 0:6ae2f7bca550 12247 int result;
Azure.IoT Build 0:6ae2f7bca550 12248
Azure.IoT Build 0:6ae2f7bca550 12249 if (properties == NULL)
Azure.IoT Build 0:6ae2f7bca550 12250 {
Azure.IoT Build 0:6ae2f7bca550 12251 result = __LINE__;
Azure.IoT Build 0:6ae2f7bca550 12252 }
Azure.IoT Build 0:6ae2f7bca550 12253 else
Azure.IoT Build 0:6ae2f7bca550 12254 {
Azure.IoT Build 0:6ae2f7bca550 12255 PROPERTIES_INSTANCE* properties_instance = (PROPERTIES_INSTANCE*)properties;
Azure.IoT Build 0:6ae2f7bca550 12256 AMQP_VALUE item_value = amqpvalue_get_composite_item_in_place(properties_instance->composite_value, 0);
Azure.IoT Build 0:6ae2f7bca550 12257 if (item_value == NULL)
Azure.IoT Build 0:6ae2f7bca550 12258 {
Azure.IoT Build 0:6ae2f7bca550 12259 result = __LINE__;
Azure.IoT Build 0:6ae2f7bca550 12260 }
Azure.IoT Build 0:6ae2f7bca550 12261 else
Azure.IoT Build 0:6ae2f7bca550 12262 {
Azure.IoT Build 0:6ae2f7bca550 12263 *message_id_value = item_value;
Azure.IoT Build 0:6ae2f7bca550 12264 result = 0;
Azure.IoT Build 0:6ae2f7bca550 12265 }
Azure.IoT Build 0:6ae2f7bca550 12266 }
Azure.IoT Build 0:6ae2f7bca550 12267
Azure.IoT Build 0:6ae2f7bca550 12268 return result;
Azure.IoT Build 0:6ae2f7bca550 12269 }
Azure.IoT Build 0:6ae2f7bca550 12270
Azure.IoT Build 0:6ae2f7bca550 12271 int properties_set_message_id(PROPERTIES_HANDLE properties, AMQP_VALUE message_id_value)
Azure.IoT Build 0:6ae2f7bca550 12272 {
Azure.IoT Build 0:6ae2f7bca550 12273 int result;
Azure.IoT Build 0:6ae2f7bca550 12274
Azure.IoT Build 0:6ae2f7bca550 12275 if (properties == NULL)
Azure.IoT Build 0:6ae2f7bca550 12276 {
Azure.IoT Build 0:6ae2f7bca550 12277 result = __LINE__;
Azure.IoT Build 0:6ae2f7bca550 12278 }
Azure.IoT Build 0:6ae2f7bca550 12279 else
Azure.IoT Build 0:6ae2f7bca550 12280 {
Azure.IoT Build 0:6ae2f7bca550 12281 PROPERTIES_INSTANCE* properties_instance = (PROPERTIES_INSTANCE*)properties;
Azure.IoT Build 0:6ae2f7bca550 12282 AMQP_VALUE message_id_amqp_value = amqpvalue_clone(message_id_value);
Azure.IoT Build 0:6ae2f7bca550 12283 if (message_id_amqp_value == NULL)
Azure.IoT Build 0:6ae2f7bca550 12284 {
Azure.IoT Build 0:6ae2f7bca550 12285 result = __LINE__;
Azure.IoT Build 0:6ae2f7bca550 12286 }
Azure.IoT Build 0:6ae2f7bca550 12287 else
Azure.IoT Build 0:6ae2f7bca550 12288 {
Azure.IoT Build 0:6ae2f7bca550 12289 if (amqpvalue_set_composite_item(properties_instance->composite_value, 0, message_id_amqp_value) != 0)
Azure.IoT Build 0:6ae2f7bca550 12290 {
Azure.IoT Build 0:6ae2f7bca550 12291 result = __LINE__;
Azure.IoT Build 0:6ae2f7bca550 12292 }
Azure.IoT Build 0:6ae2f7bca550 12293 else
Azure.IoT Build 0:6ae2f7bca550 12294 {
Azure.IoT Build 0:6ae2f7bca550 12295 result = 0;
Azure.IoT Build 0:6ae2f7bca550 12296 }
Azure.IoT Build 0:6ae2f7bca550 12297
Azure.IoT Build 0:6ae2f7bca550 12298 amqpvalue_destroy(message_id_amqp_value);
Azure.IoT Build 0:6ae2f7bca550 12299 }
Azure.IoT Build 0:6ae2f7bca550 12300 }
Azure.IoT Build 0:6ae2f7bca550 12301
Azure.IoT Build 0:6ae2f7bca550 12302 return result;
Azure.IoT Build 0:6ae2f7bca550 12303 }
Azure.IoT Build 0:6ae2f7bca550 12304
Azure.IoT Build 0:6ae2f7bca550 12305 int properties_get_user_id(PROPERTIES_HANDLE properties, amqp_binary* user_id_value)
Azure.IoT Build 0:6ae2f7bca550 12306 {
Azure.IoT Build 0:6ae2f7bca550 12307 int result;
Azure.IoT Build 0:6ae2f7bca550 12308
Azure.IoT Build 0:6ae2f7bca550 12309 if (properties == NULL)
Azure.IoT Build 0:6ae2f7bca550 12310 {
Azure.IoT Build 0:6ae2f7bca550 12311 result = __LINE__;
Azure.IoT Build 0:6ae2f7bca550 12312 }
Azure.IoT Build 0:6ae2f7bca550 12313 else
Azure.IoT Build 0:6ae2f7bca550 12314 {
Azure.IoT Build 0:6ae2f7bca550 12315 PROPERTIES_INSTANCE* properties_instance = (PROPERTIES_INSTANCE*)properties;
Azure.IoT Build 0:6ae2f7bca550 12316 AMQP_VALUE item_value = amqpvalue_get_composite_item_in_place(properties_instance->composite_value, 1);
Azure.IoT Build 0:6ae2f7bca550 12317 if (item_value == NULL)
Azure.IoT Build 0:6ae2f7bca550 12318 {
Azure.IoT Build 0:6ae2f7bca550 12319 result = __LINE__;
Azure.IoT Build 0:6ae2f7bca550 12320 }
Azure.IoT Build 0:6ae2f7bca550 12321 else
Azure.IoT Build 0:6ae2f7bca550 12322 {
Azure.IoT Build 0:6ae2f7bca550 12323 if (amqpvalue_get_binary(item_value, user_id_value) != 0)
Azure.IoT Build 0:6ae2f7bca550 12324 {
AzureIoTClient 16:22a72cf8e416 12325 result = __LINE__;
Azure.IoT Build 0:6ae2f7bca550 12326 }
Azure.IoT Build 0:6ae2f7bca550 12327 else
Azure.IoT Build 0:6ae2f7bca550 12328 {
Azure.IoT Build 0:6ae2f7bca550 12329 result = 0;
Azure.IoT Build 0:6ae2f7bca550 12330 }
Azure.IoT Build 0:6ae2f7bca550 12331 }
Azure.IoT Build 0:6ae2f7bca550 12332 }
Azure.IoT Build 0:6ae2f7bca550 12333
Azure.IoT Build 0:6ae2f7bca550 12334 return result;
Azure.IoT Build 0:6ae2f7bca550 12335 }
Azure.IoT Build 0:6ae2f7bca550 12336
Azure.IoT Build 0:6ae2f7bca550 12337 int properties_set_user_id(PROPERTIES_HANDLE properties, amqp_binary user_id_value)
Azure.IoT Build 0:6ae2f7bca550 12338 {
Azure.IoT Build 0:6ae2f7bca550 12339 int result;
Azure.IoT Build 0:6ae2f7bca550 12340
Azure.IoT Build 0:6ae2f7bca550 12341 if (properties == NULL)
Azure.IoT Build 0:6ae2f7bca550 12342 {
Azure.IoT Build 0:6ae2f7bca550 12343 result = __LINE__;
Azure.IoT Build 0:6ae2f7bca550 12344 }
Azure.IoT Build 0:6ae2f7bca550 12345 else
Azure.IoT Build 0:6ae2f7bca550 12346 {
Azure.IoT Build 0:6ae2f7bca550 12347 PROPERTIES_INSTANCE* properties_instance = (PROPERTIES_INSTANCE*)properties;
Azure.IoT Build 0:6ae2f7bca550 12348 AMQP_VALUE user_id_amqp_value = amqpvalue_create_binary(user_id_value);
Azure.IoT Build 0:6ae2f7bca550 12349 if (user_id_amqp_value == NULL)
Azure.IoT Build 0:6ae2f7bca550 12350 {
Azure.IoT Build 0:6ae2f7bca550 12351 result = __LINE__;
Azure.IoT Build 0:6ae2f7bca550 12352 }
Azure.IoT Build 0:6ae2f7bca550 12353 else
Azure.IoT Build 0:6ae2f7bca550 12354 {
Azure.IoT Build 0:6ae2f7bca550 12355 if (amqpvalue_set_composite_item(properties_instance->composite_value, 1, user_id_amqp_value) != 0)
Azure.IoT Build 0:6ae2f7bca550 12356 {
Azure.IoT Build 0:6ae2f7bca550 12357 result = __LINE__;
Azure.IoT Build 0:6ae2f7bca550 12358 }
Azure.IoT Build 0:6ae2f7bca550 12359 else
Azure.IoT Build 0:6ae2f7bca550 12360 {
Azure.IoT Build 0:6ae2f7bca550 12361 result = 0;
Azure.IoT Build 0:6ae2f7bca550 12362 }
Azure.IoT Build 0:6ae2f7bca550 12363
Azure.IoT Build 0:6ae2f7bca550 12364 amqpvalue_destroy(user_id_amqp_value);
Azure.IoT Build 0:6ae2f7bca550 12365 }
Azure.IoT Build 0:6ae2f7bca550 12366 }
Azure.IoT Build 0:6ae2f7bca550 12367
Azure.IoT Build 0:6ae2f7bca550 12368 return result;
Azure.IoT Build 0:6ae2f7bca550 12369 }
Azure.IoT Build 0:6ae2f7bca550 12370
Azure.IoT Build 0:6ae2f7bca550 12371 int properties_get_to(PROPERTIES_HANDLE properties, AMQP_VALUE* to_value)
Azure.IoT Build 0:6ae2f7bca550 12372 {
Azure.IoT Build 0:6ae2f7bca550 12373 int result;
Azure.IoT Build 0:6ae2f7bca550 12374
Azure.IoT Build 0:6ae2f7bca550 12375 if (properties == NULL)
Azure.IoT Build 0:6ae2f7bca550 12376 {
Azure.IoT Build 0:6ae2f7bca550 12377 result = __LINE__;
Azure.IoT Build 0:6ae2f7bca550 12378 }
Azure.IoT Build 0:6ae2f7bca550 12379 else
Azure.IoT Build 0:6ae2f7bca550 12380 {
Azure.IoT Build 0:6ae2f7bca550 12381 PROPERTIES_INSTANCE* properties_instance = (PROPERTIES_INSTANCE*)properties;
Azure.IoT Build 0:6ae2f7bca550 12382 AMQP_VALUE item_value = amqpvalue_get_composite_item_in_place(properties_instance->composite_value, 2);
Azure.IoT Build 0:6ae2f7bca550 12383 if (item_value == NULL)
Azure.IoT Build 0:6ae2f7bca550 12384 {
Azure.IoT Build 0:6ae2f7bca550 12385 result = __LINE__;
Azure.IoT Build 0:6ae2f7bca550 12386 }
Azure.IoT Build 0:6ae2f7bca550 12387 else
Azure.IoT Build 0:6ae2f7bca550 12388 {
Azure.IoT Build 0:6ae2f7bca550 12389 *to_value = item_value;
Azure.IoT Build 0:6ae2f7bca550 12390 result = 0;
Azure.IoT Build 0:6ae2f7bca550 12391 }
Azure.IoT Build 0:6ae2f7bca550 12392 }
Azure.IoT Build 0:6ae2f7bca550 12393
Azure.IoT Build 0:6ae2f7bca550 12394 return result;
Azure.IoT Build 0:6ae2f7bca550 12395 }
Azure.IoT Build 0:6ae2f7bca550 12396
Azure.IoT Build 0:6ae2f7bca550 12397 int properties_set_to(PROPERTIES_HANDLE properties, AMQP_VALUE to_value)
Azure.IoT Build 0:6ae2f7bca550 12398 {
Azure.IoT Build 0:6ae2f7bca550 12399 int result;
Azure.IoT Build 0:6ae2f7bca550 12400
Azure.IoT Build 0:6ae2f7bca550 12401 if (properties == NULL)
Azure.IoT Build 0:6ae2f7bca550 12402 {
Azure.IoT Build 0:6ae2f7bca550 12403 result = __LINE__;
Azure.IoT Build 0:6ae2f7bca550 12404 }
Azure.IoT Build 0:6ae2f7bca550 12405 else
Azure.IoT Build 0:6ae2f7bca550 12406 {
Azure.IoT Build 0:6ae2f7bca550 12407 PROPERTIES_INSTANCE* properties_instance = (PROPERTIES_INSTANCE*)properties;
Azure.IoT Build 0:6ae2f7bca550 12408 AMQP_VALUE to_amqp_value = amqpvalue_clone(to_value);
Azure.IoT Build 0:6ae2f7bca550 12409 if (to_amqp_value == NULL)
Azure.IoT Build 0:6ae2f7bca550 12410 {
Azure.IoT Build 0:6ae2f7bca550 12411 result = __LINE__;
Azure.IoT Build 0:6ae2f7bca550 12412 }
Azure.IoT Build 0:6ae2f7bca550 12413 else
Azure.IoT Build 0:6ae2f7bca550 12414 {
Azure.IoT Build 0:6ae2f7bca550 12415 if (amqpvalue_set_composite_item(properties_instance->composite_value, 2, to_amqp_value) != 0)
Azure.IoT Build 0:6ae2f7bca550 12416 {
Azure.IoT Build 0:6ae2f7bca550 12417 result = __LINE__;
Azure.IoT Build 0:6ae2f7bca550 12418 }
Azure.IoT Build 0:6ae2f7bca550 12419 else
Azure.IoT Build 0:6ae2f7bca550 12420 {
Azure.IoT Build 0:6ae2f7bca550 12421 result = 0;
Azure.IoT Build 0:6ae2f7bca550 12422 }
Azure.IoT Build 0:6ae2f7bca550 12423
Azure.IoT Build 0:6ae2f7bca550 12424 amqpvalue_destroy(to_amqp_value);
Azure.IoT Build 0:6ae2f7bca550 12425 }
Azure.IoT Build 0:6ae2f7bca550 12426 }
Azure.IoT Build 0:6ae2f7bca550 12427
Azure.IoT Build 0:6ae2f7bca550 12428 return result;
Azure.IoT Build 0:6ae2f7bca550 12429 }
Azure.IoT Build 0:6ae2f7bca550 12430
Azure.IoT Build 0:6ae2f7bca550 12431 int properties_get_subject(PROPERTIES_HANDLE properties, const char** subject_value)
Azure.IoT Build 0:6ae2f7bca550 12432 {
Azure.IoT Build 0:6ae2f7bca550 12433 int result;
Azure.IoT Build 0:6ae2f7bca550 12434
Azure.IoT Build 0:6ae2f7bca550 12435 if (properties == NULL)
Azure.IoT Build 0:6ae2f7bca550 12436 {
Azure.IoT Build 0:6ae2f7bca550 12437 result = __LINE__;
Azure.IoT Build 0:6ae2f7bca550 12438 }
Azure.IoT Build 0:6ae2f7bca550 12439 else
Azure.IoT Build 0:6ae2f7bca550 12440 {
Azure.IoT Build 0:6ae2f7bca550 12441 PROPERTIES_INSTANCE* properties_instance = (PROPERTIES_INSTANCE*)properties;
Azure.IoT Build 0:6ae2f7bca550 12442 AMQP_VALUE item_value = amqpvalue_get_composite_item_in_place(properties_instance->composite_value, 3);
Azure.IoT Build 0:6ae2f7bca550 12443 if (item_value == NULL)
Azure.IoT Build 0:6ae2f7bca550 12444 {
Azure.IoT Build 0:6ae2f7bca550 12445 result = __LINE__;
Azure.IoT Build 0:6ae2f7bca550 12446 }
Azure.IoT Build 0:6ae2f7bca550 12447 else
Azure.IoT Build 0:6ae2f7bca550 12448 {
Azure.IoT Build 0:6ae2f7bca550 12449 if (amqpvalue_get_string(item_value, subject_value) != 0)
Azure.IoT Build 0:6ae2f7bca550 12450 {
AzureIoTClient 16:22a72cf8e416 12451 result = __LINE__;
Azure.IoT Build 0:6ae2f7bca550 12452 }
Azure.IoT Build 0:6ae2f7bca550 12453 else
Azure.IoT Build 0:6ae2f7bca550 12454 {
Azure.IoT Build 0:6ae2f7bca550 12455 result = 0;
Azure.IoT Build 0:6ae2f7bca550 12456 }
Azure.IoT Build 0:6ae2f7bca550 12457 }
Azure.IoT Build 0:6ae2f7bca550 12458 }
Azure.IoT Build 0:6ae2f7bca550 12459
Azure.IoT Build 0:6ae2f7bca550 12460 return result;
Azure.IoT Build 0:6ae2f7bca550 12461 }
Azure.IoT Build 0:6ae2f7bca550 12462
Azure.IoT Build 0:6ae2f7bca550 12463 int properties_set_subject(PROPERTIES_HANDLE properties, const char* subject_value)
Azure.IoT Build 0:6ae2f7bca550 12464 {
Azure.IoT Build 0:6ae2f7bca550 12465 int result;
Azure.IoT Build 0:6ae2f7bca550 12466
Azure.IoT Build 0:6ae2f7bca550 12467 if (properties == NULL)
Azure.IoT Build 0:6ae2f7bca550 12468 {
Azure.IoT Build 0:6ae2f7bca550 12469 result = __LINE__;
Azure.IoT Build 0:6ae2f7bca550 12470 }
Azure.IoT Build 0:6ae2f7bca550 12471 else
Azure.IoT Build 0:6ae2f7bca550 12472 {
Azure.IoT Build 0:6ae2f7bca550 12473 PROPERTIES_INSTANCE* properties_instance = (PROPERTIES_INSTANCE*)properties;
Azure.IoT Build 0:6ae2f7bca550 12474 AMQP_VALUE subject_amqp_value = amqpvalue_create_string(subject_value);
Azure.IoT Build 0:6ae2f7bca550 12475 if (subject_amqp_value == NULL)
Azure.IoT Build 0:6ae2f7bca550 12476 {
Azure.IoT Build 0:6ae2f7bca550 12477 result = __LINE__;
Azure.IoT Build 0:6ae2f7bca550 12478 }
Azure.IoT Build 0:6ae2f7bca550 12479 else
Azure.IoT Build 0:6ae2f7bca550 12480 {
Azure.IoT Build 0:6ae2f7bca550 12481 if (amqpvalue_set_composite_item(properties_instance->composite_value, 3, subject_amqp_value) != 0)
Azure.IoT Build 0:6ae2f7bca550 12482 {
Azure.IoT Build 0:6ae2f7bca550 12483 result = __LINE__;
Azure.IoT Build 0:6ae2f7bca550 12484 }
Azure.IoT Build 0:6ae2f7bca550 12485 else
Azure.IoT Build 0:6ae2f7bca550 12486 {
Azure.IoT Build 0:6ae2f7bca550 12487 result = 0;
Azure.IoT Build 0:6ae2f7bca550 12488 }
Azure.IoT Build 0:6ae2f7bca550 12489
Azure.IoT Build 0:6ae2f7bca550 12490 amqpvalue_destroy(subject_amqp_value);
Azure.IoT Build 0:6ae2f7bca550 12491 }
Azure.IoT Build 0:6ae2f7bca550 12492 }
Azure.IoT Build 0:6ae2f7bca550 12493
Azure.IoT Build 0:6ae2f7bca550 12494 return result;
Azure.IoT Build 0:6ae2f7bca550 12495 }
Azure.IoT Build 0:6ae2f7bca550 12496
Azure.IoT Build 0:6ae2f7bca550 12497 int properties_get_reply_to(PROPERTIES_HANDLE properties, AMQP_VALUE* reply_to_value)
Azure.IoT Build 0:6ae2f7bca550 12498 {
Azure.IoT Build 0:6ae2f7bca550 12499 int result;
Azure.IoT Build 0:6ae2f7bca550 12500
Azure.IoT Build 0:6ae2f7bca550 12501 if (properties == NULL)
Azure.IoT Build 0:6ae2f7bca550 12502 {
Azure.IoT Build 0:6ae2f7bca550 12503 result = __LINE__;
Azure.IoT Build 0:6ae2f7bca550 12504 }
Azure.IoT Build 0:6ae2f7bca550 12505 else
Azure.IoT Build 0:6ae2f7bca550 12506 {
Azure.IoT Build 0:6ae2f7bca550 12507 PROPERTIES_INSTANCE* properties_instance = (PROPERTIES_INSTANCE*)properties;
Azure.IoT Build 0:6ae2f7bca550 12508 AMQP_VALUE item_value = amqpvalue_get_composite_item_in_place(properties_instance->composite_value, 4);
Azure.IoT Build 0:6ae2f7bca550 12509 if (item_value == NULL)
Azure.IoT Build 0:6ae2f7bca550 12510 {
Azure.IoT Build 0:6ae2f7bca550 12511 result = __LINE__;
Azure.IoT Build 0:6ae2f7bca550 12512 }
Azure.IoT Build 0:6ae2f7bca550 12513 else
Azure.IoT Build 0:6ae2f7bca550 12514 {
Azure.IoT Build 0:6ae2f7bca550 12515 *reply_to_value = item_value;
Azure.IoT Build 0:6ae2f7bca550 12516 result = 0;
Azure.IoT Build 0:6ae2f7bca550 12517 }
Azure.IoT Build 0:6ae2f7bca550 12518 }
Azure.IoT Build 0:6ae2f7bca550 12519
Azure.IoT Build 0:6ae2f7bca550 12520 return result;
Azure.IoT Build 0:6ae2f7bca550 12521 }
Azure.IoT Build 0:6ae2f7bca550 12522
Azure.IoT Build 0:6ae2f7bca550 12523 int properties_set_reply_to(PROPERTIES_HANDLE properties, AMQP_VALUE reply_to_value)
Azure.IoT Build 0:6ae2f7bca550 12524 {
Azure.IoT Build 0:6ae2f7bca550 12525 int result;
Azure.IoT Build 0:6ae2f7bca550 12526
Azure.IoT Build 0:6ae2f7bca550 12527 if (properties == NULL)
Azure.IoT Build 0:6ae2f7bca550 12528 {
Azure.IoT Build 0:6ae2f7bca550 12529 result = __LINE__;
Azure.IoT Build 0:6ae2f7bca550 12530 }
Azure.IoT Build 0:6ae2f7bca550 12531 else
Azure.IoT Build 0:6ae2f7bca550 12532 {
Azure.IoT Build 0:6ae2f7bca550 12533 PROPERTIES_INSTANCE* properties_instance = (PROPERTIES_INSTANCE*)properties;
Azure.IoT Build 0:6ae2f7bca550 12534 AMQP_VALUE reply_to_amqp_value = amqpvalue_clone(reply_to_value);
Azure.IoT Build 0:6ae2f7bca550 12535 if (reply_to_amqp_value == NULL)
Azure.IoT Build 0:6ae2f7bca550 12536 {
Azure.IoT Build 0:6ae2f7bca550 12537 result = __LINE__;
Azure.IoT Build 0:6ae2f7bca550 12538 }
Azure.IoT Build 0:6ae2f7bca550 12539 else
Azure.IoT Build 0:6ae2f7bca550 12540 {
Azure.IoT Build 0:6ae2f7bca550 12541 if (amqpvalue_set_composite_item(properties_instance->composite_value, 4, reply_to_amqp_value) != 0)
Azure.IoT Build 0:6ae2f7bca550 12542 {
Azure.IoT Build 0:6ae2f7bca550 12543 result = __LINE__;
Azure.IoT Build 0:6ae2f7bca550 12544 }
Azure.IoT Build 0:6ae2f7bca550 12545 else
Azure.IoT Build 0:6ae2f7bca550 12546 {
Azure.IoT Build 0:6ae2f7bca550 12547 result = 0;
Azure.IoT Build 0:6ae2f7bca550 12548 }
Azure.IoT Build 0:6ae2f7bca550 12549
Azure.IoT Build 0:6ae2f7bca550 12550 amqpvalue_destroy(reply_to_amqp_value);
Azure.IoT Build 0:6ae2f7bca550 12551 }
Azure.IoT Build 0:6ae2f7bca550 12552 }
Azure.IoT Build 0:6ae2f7bca550 12553
Azure.IoT Build 0:6ae2f7bca550 12554 return result;
Azure.IoT Build 0:6ae2f7bca550 12555 }
Azure.IoT Build 0:6ae2f7bca550 12556
Azure.IoT Build 0:6ae2f7bca550 12557 int properties_get_correlation_id(PROPERTIES_HANDLE properties, AMQP_VALUE* correlation_id_value)
Azure.IoT Build 0:6ae2f7bca550 12558 {
Azure.IoT Build 0:6ae2f7bca550 12559 int result;
Azure.IoT Build 0:6ae2f7bca550 12560
Azure.IoT Build 0:6ae2f7bca550 12561 if (properties == NULL)
Azure.IoT Build 0:6ae2f7bca550 12562 {
Azure.IoT Build 0:6ae2f7bca550 12563 result = __LINE__;
Azure.IoT Build 0:6ae2f7bca550 12564 }
Azure.IoT Build 0:6ae2f7bca550 12565 else
Azure.IoT Build 0:6ae2f7bca550 12566 {
Azure.IoT Build 0:6ae2f7bca550 12567 PROPERTIES_INSTANCE* properties_instance = (PROPERTIES_INSTANCE*)properties;
Azure.IoT Build 0:6ae2f7bca550 12568 AMQP_VALUE item_value = amqpvalue_get_composite_item_in_place(properties_instance->composite_value, 5);
Azure.IoT Build 0:6ae2f7bca550 12569 if (item_value == NULL)
Azure.IoT Build 0:6ae2f7bca550 12570 {
Azure.IoT Build 0:6ae2f7bca550 12571 result = __LINE__;
Azure.IoT Build 0:6ae2f7bca550 12572 }
Azure.IoT Build 0:6ae2f7bca550 12573 else
Azure.IoT Build 0:6ae2f7bca550 12574 {
Azure.IoT Build 0:6ae2f7bca550 12575 *correlation_id_value = item_value;
Azure.IoT Build 0:6ae2f7bca550 12576 result = 0;
Azure.IoT Build 0:6ae2f7bca550 12577 }
Azure.IoT Build 0:6ae2f7bca550 12578 }
Azure.IoT Build 0:6ae2f7bca550 12579
Azure.IoT Build 0:6ae2f7bca550 12580 return result;
Azure.IoT Build 0:6ae2f7bca550 12581 }
Azure.IoT Build 0:6ae2f7bca550 12582
Azure.IoT Build 0:6ae2f7bca550 12583 int properties_set_correlation_id(PROPERTIES_HANDLE properties, AMQP_VALUE correlation_id_value)
Azure.IoT Build 0:6ae2f7bca550 12584 {
Azure.IoT Build 0:6ae2f7bca550 12585 int result;
Azure.IoT Build 0:6ae2f7bca550 12586
Azure.IoT Build 0:6ae2f7bca550 12587 if (properties == NULL)
Azure.IoT Build 0:6ae2f7bca550 12588 {
Azure.IoT Build 0:6ae2f7bca550 12589 result = __LINE__;
Azure.IoT Build 0:6ae2f7bca550 12590 }
Azure.IoT Build 0:6ae2f7bca550 12591 else
Azure.IoT Build 0:6ae2f7bca550 12592 {
Azure.IoT Build 0:6ae2f7bca550 12593 PROPERTIES_INSTANCE* properties_instance = (PROPERTIES_INSTANCE*)properties;
Azure.IoT Build 0:6ae2f7bca550 12594 AMQP_VALUE correlation_id_amqp_value = amqpvalue_clone(correlation_id_value);
Azure.IoT Build 0:6ae2f7bca550 12595 if (correlation_id_amqp_value == NULL)
Azure.IoT Build 0:6ae2f7bca550 12596 {
Azure.IoT Build 0:6ae2f7bca550 12597 result = __LINE__;
Azure.IoT Build 0:6ae2f7bca550 12598 }
Azure.IoT Build 0:6ae2f7bca550 12599 else
Azure.IoT Build 0:6ae2f7bca550 12600 {
Azure.IoT Build 0:6ae2f7bca550 12601 if (amqpvalue_set_composite_item(properties_instance->composite_value, 5, correlation_id_amqp_value) != 0)
Azure.IoT Build 0:6ae2f7bca550 12602 {
Azure.IoT Build 0:6ae2f7bca550 12603 result = __LINE__;
Azure.IoT Build 0:6ae2f7bca550 12604 }
Azure.IoT Build 0:6ae2f7bca550 12605 else
Azure.IoT Build 0:6ae2f7bca550 12606 {
Azure.IoT Build 0:6ae2f7bca550 12607 result = 0;
Azure.IoT Build 0:6ae2f7bca550 12608 }
Azure.IoT Build 0:6ae2f7bca550 12609
Azure.IoT Build 0:6ae2f7bca550 12610 amqpvalue_destroy(correlation_id_amqp_value);
Azure.IoT Build 0:6ae2f7bca550 12611 }
Azure.IoT Build 0:6ae2f7bca550 12612 }
Azure.IoT Build 0:6ae2f7bca550 12613
Azure.IoT Build 0:6ae2f7bca550 12614 return result;
Azure.IoT Build 0:6ae2f7bca550 12615 }
Azure.IoT Build 0:6ae2f7bca550 12616
Azure.IoT Build 0:6ae2f7bca550 12617 int properties_get_content_type(PROPERTIES_HANDLE properties, const char** content_type_value)
Azure.IoT Build 0:6ae2f7bca550 12618 {
Azure.IoT Build 0:6ae2f7bca550 12619 int result;
Azure.IoT Build 0:6ae2f7bca550 12620
Azure.IoT Build 0:6ae2f7bca550 12621 if (properties == NULL)
Azure.IoT Build 0:6ae2f7bca550 12622 {
Azure.IoT Build 0:6ae2f7bca550 12623 result = __LINE__;
Azure.IoT Build 0:6ae2f7bca550 12624 }
Azure.IoT Build 0:6ae2f7bca550 12625 else
Azure.IoT Build 0:6ae2f7bca550 12626 {
Azure.IoT Build 0:6ae2f7bca550 12627 PROPERTIES_INSTANCE* properties_instance = (PROPERTIES_INSTANCE*)properties;
Azure.IoT Build 0:6ae2f7bca550 12628 AMQP_VALUE item_value = amqpvalue_get_composite_item_in_place(properties_instance->composite_value, 6);
Azure.IoT Build 0:6ae2f7bca550 12629 if (item_value == NULL)
Azure.IoT Build 0:6ae2f7bca550 12630 {
Azure.IoT Build 0:6ae2f7bca550 12631 result = __LINE__;
Azure.IoT Build 0:6ae2f7bca550 12632 }
Azure.IoT Build 0:6ae2f7bca550 12633 else
Azure.IoT Build 0:6ae2f7bca550 12634 {
Azure.IoT Build 0:6ae2f7bca550 12635 if (amqpvalue_get_symbol(item_value, content_type_value) != 0)
Azure.IoT Build 0:6ae2f7bca550 12636 {
AzureIoTClient 16:22a72cf8e416 12637 result = __LINE__;
Azure.IoT Build 0:6ae2f7bca550 12638 }
Azure.IoT Build 0:6ae2f7bca550 12639 else
Azure.IoT Build 0:6ae2f7bca550 12640 {
Azure.IoT Build 0:6ae2f7bca550 12641 result = 0;
Azure.IoT Build 0:6ae2f7bca550 12642 }
Azure.IoT Build 0:6ae2f7bca550 12643 }
Azure.IoT Build 0:6ae2f7bca550 12644 }
Azure.IoT Build 0:6ae2f7bca550 12645
Azure.IoT Build 0:6ae2f7bca550 12646 return result;
Azure.IoT Build 0:6ae2f7bca550 12647 }
Azure.IoT Build 0:6ae2f7bca550 12648
Azure.IoT Build 0:6ae2f7bca550 12649 int properties_set_content_type(PROPERTIES_HANDLE properties, const char* content_type_value)
Azure.IoT Build 0:6ae2f7bca550 12650 {
Azure.IoT Build 0:6ae2f7bca550 12651 int result;
Azure.IoT Build 0:6ae2f7bca550 12652
Azure.IoT Build 0:6ae2f7bca550 12653 if (properties == NULL)
Azure.IoT Build 0:6ae2f7bca550 12654 {
Azure.IoT Build 0:6ae2f7bca550 12655 result = __LINE__;
Azure.IoT Build 0:6ae2f7bca550 12656 }
Azure.IoT Build 0:6ae2f7bca550 12657 else
Azure.IoT Build 0:6ae2f7bca550 12658 {
Azure.IoT Build 0:6ae2f7bca550 12659 PROPERTIES_INSTANCE* properties_instance = (PROPERTIES_INSTANCE*)properties;
Azure.IoT Build 0:6ae2f7bca550 12660 AMQP_VALUE content_type_amqp_value = amqpvalue_create_symbol(content_type_value);
Azure.IoT Build 0:6ae2f7bca550 12661 if (content_type_amqp_value == NULL)
Azure.IoT Build 0:6ae2f7bca550 12662 {
Azure.IoT Build 0:6ae2f7bca550 12663 result = __LINE__;
Azure.IoT Build 0:6ae2f7bca550 12664 }
Azure.IoT Build 0:6ae2f7bca550 12665 else
Azure.IoT Build 0:6ae2f7bca550 12666 {
Azure.IoT Build 0:6ae2f7bca550 12667 if (amqpvalue_set_composite_item(properties_instance->composite_value, 6, content_type_amqp_value) != 0)
Azure.IoT Build 0:6ae2f7bca550 12668 {
Azure.IoT Build 0:6ae2f7bca550 12669 result = __LINE__;
Azure.IoT Build 0:6ae2f7bca550 12670 }
Azure.IoT Build 0:6ae2f7bca550 12671 else
Azure.IoT Build 0:6ae2f7bca550 12672 {
Azure.IoT Build 0:6ae2f7bca550 12673 result = 0;
Azure.IoT Build 0:6ae2f7bca550 12674 }
Azure.IoT Build 0:6ae2f7bca550 12675
Azure.IoT Build 0:6ae2f7bca550 12676 amqpvalue_destroy(content_type_amqp_value);
Azure.IoT Build 0:6ae2f7bca550 12677 }
Azure.IoT Build 0:6ae2f7bca550 12678 }
Azure.IoT Build 0:6ae2f7bca550 12679
Azure.IoT Build 0:6ae2f7bca550 12680 return result;
Azure.IoT Build 0:6ae2f7bca550 12681 }
Azure.IoT Build 0:6ae2f7bca550 12682
Azure.IoT Build 0:6ae2f7bca550 12683 int properties_get_content_encoding(PROPERTIES_HANDLE properties, const char** content_encoding_value)
Azure.IoT Build 0:6ae2f7bca550 12684 {
Azure.IoT Build 0:6ae2f7bca550 12685 int result;
Azure.IoT Build 0:6ae2f7bca550 12686
Azure.IoT Build 0:6ae2f7bca550 12687 if (properties == NULL)
Azure.IoT Build 0:6ae2f7bca550 12688 {
Azure.IoT Build 0:6ae2f7bca550 12689 result = __LINE__;
Azure.IoT Build 0:6ae2f7bca550 12690 }
Azure.IoT Build 0:6ae2f7bca550 12691 else
Azure.IoT Build 0:6ae2f7bca550 12692 {
Azure.IoT Build 0:6ae2f7bca550 12693 PROPERTIES_INSTANCE* properties_instance = (PROPERTIES_INSTANCE*)properties;
Azure.IoT Build 0:6ae2f7bca550 12694 AMQP_VALUE item_value = amqpvalue_get_composite_item_in_place(properties_instance->composite_value, 7);
Azure.IoT Build 0:6ae2f7bca550 12695 if (item_value == NULL)
Azure.IoT Build 0:6ae2f7bca550 12696 {
Azure.IoT Build 0:6ae2f7bca550 12697 result = __LINE__;
Azure.IoT Build 0:6ae2f7bca550 12698 }
Azure.IoT Build 0:6ae2f7bca550 12699 else
Azure.IoT Build 0:6ae2f7bca550 12700 {
Azure.IoT Build 0:6ae2f7bca550 12701 if (amqpvalue_get_symbol(item_value, content_encoding_value) != 0)
Azure.IoT Build 0:6ae2f7bca550 12702 {
AzureIoTClient 16:22a72cf8e416 12703 result = __LINE__;
Azure.IoT Build 0:6ae2f7bca550 12704 }
Azure.IoT Build 0:6ae2f7bca550 12705 else
Azure.IoT Build 0:6ae2f7bca550 12706 {
Azure.IoT Build 0:6ae2f7bca550 12707 result = 0;
Azure.IoT Build 0:6ae2f7bca550 12708 }
Azure.IoT Build 0:6ae2f7bca550 12709 }
Azure.IoT Build 0:6ae2f7bca550 12710 }
Azure.IoT Build 0:6ae2f7bca550 12711
Azure.IoT Build 0:6ae2f7bca550 12712 return result;
Azure.IoT Build 0:6ae2f7bca550 12713 }
Azure.IoT Build 0:6ae2f7bca550 12714
Azure.IoT Build 0:6ae2f7bca550 12715 int properties_set_content_encoding(PROPERTIES_HANDLE properties, const char* content_encoding_value)
Azure.IoT Build 0:6ae2f7bca550 12716 {
Azure.IoT Build 0:6ae2f7bca550 12717 int result;
Azure.IoT Build 0:6ae2f7bca550 12718
Azure.IoT Build 0:6ae2f7bca550 12719 if (properties == NULL)
Azure.IoT Build 0:6ae2f7bca550 12720 {
Azure.IoT Build 0:6ae2f7bca550 12721 result = __LINE__;
Azure.IoT Build 0:6ae2f7bca550 12722 }
Azure.IoT Build 0:6ae2f7bca550 12723 else
Azure.IoT Build 0:6ae2f7bca550 12724 {
Azure.IoT Build 0:6ae2f7bca550 12725 PROPERTIES_INSTANCE* properties_instance = (PROPERTIES_INSTANCE*)properties;
Azure.IoT Build 0:6ae2f7bca550 12726 AMQP_VALUE content_encoding_amqp_value = amqpvalue_create_symbol(content_encoding_value);
Azure.IoT Build 0:6ae2f7bca550 12727 if (content_encoding_amqp_value == NULL)
Azure.IoT Build 0:6ae2f7bca550 12728 {
Azure.IoT Build 0:6ae2f7bca550 12729 result = __LINE__;
Azure.IoT Build 0:6ae2f7bca550 12730 }
Azure.IoT Build 0:6ae2f7bca550 12731 else
Azure.IoT Build 0:6ae2f7bca550 12732 {
Azure.IoT Build 0:6ae2f7bca550 12733 if (amqpvalue_set_composite_item(properties_instance->composite_value, 7, content_encoding_amqp_value) != 0)
Azure.IoT Build 0:6ae2f7bca550 12734 {
Azure.IoT Build 0:6ae2f7bca550 12735 result = __LINE__;
Azure.IoT Build 0:6ae2f7bca550 12736 }
Azure.IoT Build 0:6ae2f7bca550 12737 else
Azure.IoT Build 0:6ae2f7bca550 12738 {
Azure.IoT Build 0:6ae2f7bca550 12739 result = 0;
Azure.IoT Build 0:6ae2f7bca550 12740 }
Azure.IoT Build 0:6ae2f7bca550 12741
Azure.IoT Build 0:6ae2f7bca550 12742 amqpvalue_destroy(content_encoding_amqp_value);
Azure.IoT Build 0:6ae2f7bca550 12743 }
Azure.IoT Build 0:6ae2f7bca550 12744 }
Azure.IoT Build 0:6ae2f7bca550 12745
Azure.IoT Build 0:6ae2f7bca550 12746 return result;
Azure.IoT Build 0:6ae2f7bca550 12747 }
Azure.IoT Build 0:6ae2f7bca550 12748
Azure.IoT Build 0:6ae2f7bca550 12749 int properties_get_absolute_expiry_time(PROPERTIES_HANDLE properties, timestamp* absolute_expiry_time_value)
Azure.IoT Build 0:6ae2f7bca550 12750 {
Azure.IoT Build 0:6ae2f7bca550 12751 int result;
Azure.IoT Build 0:6ae2f7bca550 12752
Azure.IoT Build 0:6ae2f7bca550 12753 if (properties == NULL)
Azure.IoT Build 0:6ae2f7bca550 12754 {
Azure.IoT Build 0:6ae2f7bca550 12755 result = __LINE__;
Azure.IoT Build 0:6ae2f7bca550 12756 }
Azure.IoT Build 0:6ae2f7bca550 12757 else
Azure.IoT Build 0:6ae2f7bca550 12758 {
Azure.IoT Build 0:6ae2f7bca550 12759 PROPERTIES_INSTANCE* properties_instance = (PROPERTIES_INSTANCE*)properties;
Azure.IoT Build 0:6ae2f7bca550 12760 AMQP_VALUE item_value = amqpvalue_get_composite_item_in_place(properties_instance->composite_value, 8);
Azure.IoT Build 0:6ae2f7bca550 12761 if (item_value == NULL)
Azure.IoT Build 0:6ae2f7bca550 12762 {
Azure.IoT Build 0:6ae2f7bca550 12763 result = __LINE__;
Azure.IoT Build 0:6ae2f7bca550 12764 }
Azure.IoT Build 0:6ae2f7bca550 12765 else
Azure.IoT Build 0:6ae2f7bca550 12766 {
Azure.IoT Build 0:6ae2f7bca550 12767 if (amqpvalue_get_timestamp(item_value, absolute_expiry_time_value) != 0)
Azure.IoT Build 0:6ae2f7bca550 12768 {
AzureIoTClient 16:22a72cf8e416 12769 result = __LINE__;
Azure.IoT Build 0:6ae2f7bca550 12770 }
Azure.IoT Build 0:6ae2f7bca550 12771 else
Azure.IoT Build 0:6ae2f7bca550 12772 {
Azure.IoT Build 0:6ae2f7bca550 12773 result = 0;
Azure.IoT Build 0:6ae2f7bca550 12774 }
Azure.IoT Build 0:6ae2f7bca550 12775 }
Azure.IoT Build 0:6ae2f7bca550 12776 }
Azure.IoT Build 0:6ae2f7bca550 12777
Azure.IoT Build 0:6ae2f7bca550 12778 return result;
Azure.IoT Build 0:6ae2f7bca550 12779 }
Azure.IoT Build 0:6ae2f7bca550 12780
Azure.IoT Build 0:6ae2f7bca550 12781 int properties_set_absolute_expiry_time(PROPERTIES_HANDLE properties, timestamp absolute_expiry_time_value)
Azure.IoT Build 0:6ae2f7bca550 12782 {
Azure.IoT Build 0:6ae2f7bca550 12783 int result;
Azure.IoT Build 0:6ae2f7bca550 12784
Azure.IoT Build 0:6ae2f7bca550 12785 if (properties == NULL)
Azure.IoT Build 0:6ae2f7bca550 12786 {
Azure.IoT Build 0:6ae2f7bca550 12787 result = __LINE__;
Azure.IoT Build 0:6ae2f7bca550 12788 }
Azure.IoT Build 0:6ae2f7bca550 12789 else
Azure.IoT Build 0:6ae2f7bca550 12790 {
Azure.IoT Build 0:6ae2f7bca550 12791 PROPERTIES_INSTANCE* properties_instance = (PROPERTIES_INSTANCE*)properties;
Azure.IoT Build 0:6ae2f7bca550 12792 AMQP_VALUE absolute_expiry_time_amqp_value = amqpvalue_create_timestamp(absolute_expiry_time_value);
Azure.IoT Build 0:6ae2f7bca550 12793 if (absolute_expiry_time_amqp_value == NULL)
Azure.IoT Build 0:6ae2f7bca550 12794 {
Azure.IoT Build 0:6ae2f7bca550 12795 result = __LINE__;
Azure.IoT Build 0:6ae2f7bca550 12796 }
Azure.IoT Build 0:6ae2f7bca550 12797 else
Azure.IoT Build 0:6ae2f7bca550 12798 {
Azure.IoT Build 0:6ae2f7bca550 12799 if (amqpvalue_set_composite_item(properties_instance->composite_value, 8, absolute_expiry_time_amqp_value) != 0)
Azure.IoT Build 0:6ae2f7bca550 12800 {
Azure.IoT Build 0:6ae2f7bca550 12801 result = __LINE__;
Azure.IoT Build 0:6ae2f7bca550 12802 }
Azure.IoT Build 0:6ae2f7bca550 12803 else
Azure.IoT Build 0:6ae2f7bca550 12804 {
Azure.IoT Build 0:6ae2f7bca550 12805 result = 0;
Azure.IoT Build 0:6ae2f7bca550 12806 }
Azure.IoT Build 0:6ae2f7bca550 12807
Azure.IoT Build 0:6ae2f7bca550 12808 amqpvalue_destroy(absolute_expiry_time_amqp_value);
Azure.IoT Build 0:6ae2f7bca550 12809 }
Azure.IoT Build 0:6ae2f7bca550 12810 }
Azure.IoT Build 0:6ae2f7bca550 12811
Azure.IoT Build 0:6ae2f7bca550 12812 return result;
Azure.IoT Build 0:6ae2f7bca550 12813 }
Azure.IoT Build 0:6ae2f7bca550 12814
Azure.IoT Build 0:6ae2f7bca550 12815 int properties_get_creation_time(PROPERTIES_HANDLE properties, timestamp* creation_time_value)
Azure.IoT Build 0:6ae2f7bca550 12816 {
Azure.IoT Build 0:6ae2f7bca550 12817 int result;
Azure.IoT Build 0:6ae2f7bca550 12818
Azure.IoT Build 0:6ae2f7bca550 12819 if (properties == NULL)
Azure.IoT Build 0:6ae2f7bca550 12820 {
Azure.IoT Build 0:6ae2f7bca550 12821 result = __LINE__;
Azure.IoT Build 0:6ae2f7bca550 12822 }
Azure.IoT Build 0:6ae2f7bca550 12823 else
Azure.IoT Build 0:6ae2f7bca550 12824 {
Azure.IoT Build 0:6ae2f7bca550 12825 PROPERTIES_INSTANCE* properties_instance = (PROPERTIES_INSTANCE*)properties;
Azure.IoT Build 0:6ae2f7bca550 12826 AMQP_VALUE item_value = amqpvalue_get_composite_item_in_place(properties_instance->composite_value, 9);
Azure.IoT Build 0:6ae2f7bca550 12827 if (item_value == NULL)
Azure.IoT Build 0:6ae2f7bca550 12828 {
Azure.IoT Build 0:6ae2f7bca550 12829 result = __LINE__;
Azure.IoT Build 0:6ae2f7bca550 12830 }
Azure.IoT Build 0:6ae2f7bca550 12831 else
Azure.IoT Build 0:6ae2f7bca550 12832 {
Azure.IoT Build 0:6ae2f7bca550 12833 if (amqpvalue_get_timestamp(item_value, creation_time_value) != 0)
Azure.IoT Build 0:6ae2f7bca550 12834 {
AzureIoTClient 16:22a72cf8e416 12835 result = __LINE__;
Azure.IoT Build 0:6ae2f7bca550 12836 }
Azure.IoT Build 0:6ae2f7bca550 12837 else
Azure.IoT Build 0:6ae2f7bca550 12838 {
Azure.IoT Build 0:6ae2f7bca550 12839 result = 0;
Azure.IoT Build 0:6ae2f7bca550 12840 }
Azure.IoT Build 0:6ae2f7bca550 12841 }
Azure.IoT Build 0:6ae2f7bca550 12842 }
Azure.IoT Build 0:6ae2f7bca550 12843
Azure.IoT Build 0:6ae2f7bca550 12844 return result;
Azure.IoT Build 0:6ae2f7bca550 12845 }
Azure.IoT Build 0:6ae2f7bca550 12846
Azure.IoT Build 0:6ae2f7bca550 12847 int properties_set_creation_time(PROPERTIES_HANDLE properties, timestamp creation_time_value)
Azure.IoT Build 0:6ae2f7bca550 12848 {
Azure.IoT Build 0:6ae2f7bca550 12849 int result;
Azure.IoT Build 0:6ae2f7bca550 12850
Azure.IoT Build 0:6ae2f7bca550 12851 if (properties == NULL)
Azure.IoT Build 0:6ae2f7bca550 12852 {
Azure.IoT Build 0:6ae2f7bca550 12853 result = __LINE__;
Azure.IoT Build 0:6ae2f7bca550 12854 }
Azure.IoT Build 0:6ae2f7bca550 12855 else
Azure.IoT Build 0:6ae2f7bca550 12856 {
Azure.IoT Build 0:6ae2f7bca550 12857 PROPERTIES_INSTANCE* properties_instance = (PROPERTIES_INSTANCE*)properties;
Azure.IoT Build 0:6ae2f7bca550 12858 AMQP_VALUE creation_time_amqp_value = amqpvalue_create_timestamp(creation_time_value);
Azure.IoT Build 0:6ae2f7bca550 12859 if (creation_time_amqp_value == NULL)
Azure.IoT Build 0:6ae2f7bca550 12860 {
Azure.IoT Build 0:6ae2f7bca550 12861 result = __LINE__;
Azure.IoT Build 0:6ae2f7bca550 12862 }
Azure.IoT Build 0:6ae2f7bca550 12863 else
Azure.IoT Build 0:6ae2f7bca550 12864 {
Azure.IoT Build 0:6ae2f7bca550 12865 if (amqpvalue_set_composite_item(properties_instance->composite_value, 9, creation_time_amqp_value) != 0)
Azure.IoT Build 0:6ae2f7bca550 12866 {
Azure.IoT Build 0:6ae2f7bca550 12867 result = __LINE__;
Azure.IoT Build 0:6ae2f7bca550 12868 }
Azure.IoT Build 0:6ae2f7bca550 12869 else
Azure.IoT Build 0:6ae2f7bca550 12870 {
Azure.IoT Build 0:6ae2f7bca550 12871 result = 0;
Azure.IoT Build 0:6ae2f7bca550 12872 }
Azure.IoT Build 0:6ae2f7bca550 12873
Azure.IoT Build 0:6ae2f7bca550 12874 amqpvalue_destroy(creation_time_amqp_value);
Azure.IoT Build 0:6ae2f7bca550 12875 }
Azure.IoT Build 0:6ae2f7bca550 12876 }
Azure.IoT Build 0:6ae2f7bca550 12877
Azure.IoT Build 0:6ae2f7bca550 12878 return result;
Azure.IoT Build 0:6ae2f7bca550 12879 }
Azure.IoT Build 0:6ae2f7bca550 12880
Azure.IoT Build 0:6ae2f7bca550 12881 int properties_get_group_id(PROPERTIES_HANDLE properties, const char** group_id_value)
Azure.IoT Build 0:6ae2f7bca550 12882 {
Azure.IoT Build 0:6ae2f7bca550 12883 int result;
Azure.IoT Build 0:6ae2f7bca550 12884
Azure.IoT Build 0:6ae2f7bca550 12885 if (properties == NULL)
Azure.IoT Build 0:6ae2f7bca550 12886 {
Azure.IoT Build 0:6ae2f7bca550 12887 result = __LINE__;
Azure.IoT Build 0:6ae2f7bca550 12888 }
Azure.IoT Build 0:6ae2f7bca550 12889 else
Azure.IoT Build 0:6ae2f7bca550 12890 {
Azure.IoT Build 0:6ae2f7bca550 12891 PROPERTIES_INSTANCE* properties_instance = (PROPERTIES_INSTANCE*)properties;
Azure.IoT Build 0:6ae2f7bca550 12892 AMQP_VALUE item_value = amqpvalue_get_composite_item_in_place(properties_instance->composite_value, 10);
Azure.IoT Build 0:6ae2f7bca550 12893 if (item_value == NULL)
Azure.IoT Build 0:6ae2f7bca550 12894 {
Azure.IoT Build 0:6ae2f7bca550 12895 result = __LINE__;
Azure.IoT Build 0:6ae2f7bca550 12896 }
Azure.IoT Build 0:6ae2f7bca550 12897 else
Azure.IoT Build 0:6ae2f7bca550 12898 {
Azure.IoT Build 0:6ae2f7bca550 12899 if (amqpvalue_get_string(item_value, group_id_value) != 0)
Azure.IoT Build 0:6ae2f7bca550 12900 {
AzureIoTClient 16:22a72cf8e416 12901 result = __LINE__;
Azure.IoT Build 0:6ae2f7bca550 12902 }
Azure.IoT Build 0:6ae2f7bca550 12903 else
Azure.IoT Build 0:6ae2f7bca550 12904 {
Azure.IoT Build 0:6ae2f7bca550 12905 result = 0;
Azure.IoT Build 0:6ae2f7bca550 12906 }
Azure.IoT Build 0:6ae2f7bca550 12907 }
Azure.IoT Build 0:6ae2f7bca550 12908 }
Azure.IoT Build 0:6ae2f7bca550 12909
Azure.IoT Build 0:6ae2f7bca550 12910 return result;
Azure.IoT Build 0:6ae2f7bca550 12911 }
Azure.IoT Build 0:6ae2f7bca550 12912
Azure.IoT Build 0:6ae2f7bca550 12913 int properties_set_group_id(PROPERTIES_HANDLE properties, const char* group_id_value)
Azure.IoT Build 0:6ae2f7bca550 12914 {
Azure.IoT Build 0:6ae2f7bca550 12915 int result;
Azure.IoT Build 0:6ae2f7bca550 12916
Azure.IoT Build 0:6ae2f7bca550 12917 if (properties == NULL)
Azure.IoT Build 0:6ae2f7bca550 12918 {
Azure.IoT Build 0:6ae2f7bca550 12919 result = __LINE__;
Azure.IoT Build 0:6ae2f7bca550 12920 }
Azure.IoT Build 0:6ae2f7bca550 12921 else
Azure.IoT Build 0:6ae2f7bca550 12922 {
Azure.IoT Build 0:6ae2f7bca550 12923 PROPERTIES_INSTANCE* properties_instance = (PROPERTIES_INSTANCE*)properties;
Azure.IoT Build 0:6ae2f7bca550 12924 AMQP_VALUE group_id_amqp_value = amqpvalue_create_string(group_id_value);
Azure.IoT Build 0:6ae2f7bca550 12925 if (group_id_amqp_value == NULL)
Azure.IoT Build 0:6ae2f7bca550 12926 {
Azure.IoT Build 0:6ae2f7bca550 12927 result = __LINE__;
Azure.IoT Build 0:6ae2f7bca550 12928 }
Azure.IoT Build 0:6ae2f7bca550 12929 else
Azure.IoT Build 0:6ae2f7bca550 12930 {
Azure.IoT Build 0:6ae2f7bca550 12931 if (amqpvalue_set_composite_item(properties_instance->composite_value, 10, group_id_amqp_value) != 0)
Azure.IoT Build 0:6ae2f7bca550 12932 {
Azure.IoT Build 0:6ae2f7bca550 12933 result = __LINE__;
Azure.IoT Build 0:6ae2f7bca550 12934 }
Azure.IoT Build 0:6ae2f7bca550 12935 else
Azure.IoT Build 0:6ae2f7bca550 12936 {
Azure.IoT Build 0:6ae2f7bca550 12937 result = 0;
Azure.IoT Build 0:6ae2f7bca550 12938 }
Azure.IoT Build 0:6ae2f7bca550 12939
Azure.IoT Build 0:6ae2f7bca550 12940 amqpvalue_destroy(group_id_amqp_value);
Azure.IoT Build 0:6ae2f7bca550 12941 }
Azure.IoT Build 0:6ae2f7bca550 12942 }
Azure.IoT Build 0:6ae2f7bca550 12943
Azure.IoT Build 0:6ae2f7bca550 12944 return result;
Azure.IoT Build 0:6ae2f7bca550 12945 }
Azure.IoT Build 0:6ae2f7bca550 12946
Azure.IoT Build 0:6ae2f7bca550 12947 int properties_get_group_sequence(PROPERTIES_HANDLE properties, sequence_no* group_sequence_value)
Azure.IoT Build 0:6ae2f7bca550 12948 {
Azure.IoT Build 0:6ae2f7bca550 12949 int result;
Azure.IoT Build 0:6ae2f7bca550 12950
Azure.IoT Build 0:6ae2f7bca550 12951 if (properties == NULL)
Azure.IoT Build 0:6ae2f7bca550 12952 {
Azure.IoT Build 0:6ae2f7bca550 12953 result = __LINE__;
Azure.IoT Build 0:6ae2f7bca550 12954 }
Azure.IoT Build 0:6ae2f7bca550 12955 else
Azure.IoT Build 0:6ae2f7bca550 12956 {
Azure.IoT Build 0:6ae2f7bca550 12957 PROPERTIES_INSTANCE* properties_instance = (PROPERTIES_INSTANCE*)properties;
Azure.IoT Build 0:6ae2f7bca550 12958 AMQP_VALUE item_value = amqpvalue_get_composite_item_in_place(properties_instance->composite_value, 11);
Azure.IoT Build 0:6ae2f7bca550 12959 if (item_value == NULL)
Azure.IoT Build 0:6ae2f7bca550 12960 {
Azure.IoT Build 0:6ae2f7bca550 12961 result = __LINE__;
Azure.IoT Build 0:6ae2f7bca550 12962 }
Azure.IoT Build 0:6ae2f7bca550 12963 else
Azure.IoT Build 0:6ae2f7bca550 12964 {
Azure.IoT Build 0:6ae2f7bca550 12965 if (amqpvalue_get_sequence_no(item_value, group_sequence_value) != 0)
Azure.IoT Build 0:6ae2f7bca550 12966 {
AzureIoTClient 16:22a72cf8e416 12967 result = __LINE__;
Azure.IoT Build 0:6ae2f7bca550 12968 }
Azure.IoT Build 0:6ae2f7bca550 12969 else
Azure.IoT Build 0:6ae2f7bca550 12970 {
Azure.IoT Build 0:6ae2f7bca550 12971 result = 0;
Azure.IoT Build 0:6ae2f7bca550 12972 }
Azure.IoT Build 0:6ae2f7bca550 12973 }
Azure.IoT Build 0:6ae2f7bca550 12974 }
Azure.IoT Build 0:6ae2f7bca550 12975
Azure.IoT Build 0:6ae2f7bca550 12976 return result;
Azure.IoT Build 0:6ae2f7bca550 12977 }
Azure.IoT Build 0:6ae2f7bca550 12978
Azure.IoT Build 0:6ae2f7bca550 12979 int properties_set_group_sequence(PROPERTIES_HANDLE properties, sequence_no group_sequence_value)
Azure.IoT Build 0:6ae2f7bca550 12980 {
Azure.IoT Build 0:6ae2f7bca550 12981 int result;
Azure.IoT Build 0:6ae2f7bca550 12982
Azure.IoT Build 0:6ae2f7bca550 12983 if (properties == NULL)
Azure.IoT Build 0:6ae2f7bca550 12984 {
Azure.IoT Build 0:6ae2f7bca550 12985 result = __LINE__;
Azure.IoT Build 0:6ae2f7bca550 12986 }
Azure.IoT Build 0:6ae2f7bca550 12987 else
Azure.IoT Build 0:6ae2f7bca550 12988 {
Azure.IoT Build 0:6ae2f7bca550 12989 PROPERTIES_INSTANCE* properties_instance = (PROPERTIES_INSTANCE*)properties;
Azure.IoT Build 0:6ae2f7bca550 12990 AMQP_VALUE group_sequence_amqp_value = amqpvalue_create_sequence_no(group_sequence_value);
Azure.IoT Build 0:6ae2f7bca550 12991 if (group_sequence_amqp_value == NULL)
Azure.IoT Build 0:6ae2f7bca550 12992 {
Azure.IoT Build 0:6ae2f7bca550 12993 result = __LINE__;
Azure.IoT Build 0:6ae2f7bca550 12994 }
Azure.IoT Build 0:6ae2f7bca550 12995 else
Azure.IoT Build 0:6ae2f7bca550 12996 {
Azure.IoT Build 0:6ae2f7bca550 12997 if (amqpvalue_set_composite_item(properties_instance->composite_value, 11, group_sequence_amqp_value) != 0)
Azure.IoT Build 0:6ae2f7bca550 12998 {
Azure.IoT Build 0:6ae2f7bca550 12999 result = __LINE__;
Azure.IoT Build 0:6ae2f7bca550 13000 }
Azure.IoT Build 0:6ae2f7bca550 13001 else
Azure.IoT Build 0:6ae2f7bca550 13002 {
Azure.IoT Build 0:6ae2f7bca550 13003 result = 0;
Azure.IoT Build 0:6ae2f7bca550 13004 }
Azure.IoT Build 0:6ae2f7bca550 13005
Azure.IoT Build 0:6ae2f7bca550 13006 amqpvalue_destroy(group_sequence_amqp_value);
Azure.IoT Build 0:6ae2f7bca550 13007 }
Azure.IoT Build 0:6ae2f7bca550 13008 }
Azure.IoT Build 0:6ae2f7bca550 13009
Azure.IoT Build 0:6ae2f7bca550 13010 return result;
Azure.IoT Build 0:6ae2f7bca550 13011 }
Azure.IoT Build 0:6ae2f7bca550 13012
Azure.IoT Build 0:6ae2f7bca550 13013 int properties_get_reply_to_group_id(PROPERTIES_HANDLE properties, const char** reply_to_group_id_value)
Azure.IoT Build 0:6ae2f7bca550 13014 {
Azure.IoT Build 0:6ae2f7bca550 13015 int result;
Azure.IoT Build 0:6ae2f7bca550 13016
Azure.IoT Build 0:6ae2f7bca550 13017 if (properties == NULL)
Azure.IoT Build 0:6ae2f7bca550 13018 {
Azure.IoT Build 0:6ae2f7bca550 13019 result = __LINE__;
Azure.IoT Build 0:6ae2f7bca550 13020 }
Azure.IoT Build 0:6ae2f7bca550 13021 else
Azure.IoT Build 0:6ae2f7bca550 13022 {
Azure.IoT Build 0:6ae2f7bca550 13023 PROPERTIES_INSTANCE* properties_instance = (PROPERTIES_INSTANCE*)properties;
Azure.IoT Build 0:6ae2f7bca550 13024 AMQP_VALUE item_value = amqpvalue_get_composite_item_in_place(properties_instance->composite_value, 12);
Azure.IoT Build 0:6ae2f7bca550 13025 if (item_value == NULL)
Azure.IoT Build 0:6ae2f7bca550 13026 {
Azure.IoT Build 0:6ae2f7bca550 13027 result = __LINE__;
Azure.IoT Build 0:6ae2f7bca550 13028 }
Azure.IoT Build 0:6ae2f7bca550 13029 else
Azure.IoT Build 0:6ae2f7bca550 13030 {
Azure.IoT Build 0:6ae2f7bca550 13031 if (amqpvalue_get_string(item_value, reply_to_group_id_value) != 0)
Azure.IoT Build 0:6ae2f7bca550 13032 {
AzureIoTClient 16:22a72cf8e416 13033 result = __LINE__;
Azure.IoT Build 0:6ae2f7bca550 13034 }
Azure.IoT Build 0:6ae2f7bca550 13035 else
Azure.IoT Build 0:6ae2f7bca550 13036 {
Azure.IoT Build 0:6ae2f7bca550 13037 result = 0;
Azure.IoT Build 0:6ae2f7bca550 13038 }
Azure.IoT Build 0:6ae2f7bca550 13039 }
Azure.IoT Build 0:6ae2f7bca550 13040 }
Azure.IoT Build 0:6ae2f7bca550 13041
Azure.IoT Build 0:6ae2f7bca550 13042 return result;
Azure.IoT Build 0:6ae2f7bca550 13043 }
Azure.IoT Build 0:6ae2f7bca550 13044
Azure.IoT Build 0:6ae2f7bca550 13045 int properties_set_reply_to_group_id(PROPERTIES_HANDLE properties, const char* reply_to_group_id_value)
Azure.IoT Build 0:6ae2f7bca550 13046 {
Azure.IoT Build 0:6ae2f7bca550 13047 int result;
Azure.IoT Build 0:6ae2f7bca550 13048
Azure.IoT Build 0:6ae2f7bca550 13049 if (properties == NULL)
Azure.IoT Build 0:6ae2f7bca550 13050 {
Azure.IoT Build 0:6ae2f7bca550 13051 result = __LINE__;
Azure.IoT Build 0:6ae2f7bca550 13052 }
Azure.IoT Build 0:6ae2f7bca550 13053 else
Azure.IoT Build 0:6ae2f7bca550 13054 {
Azure.IoT Build 0:6ae2f7bca550 13055 PROPERTIES_INSTANCE* properties_instance = (PROPERTIES_INSTANCE*)properties;
Azure.IoT Build 0:6ae2f7bca550 13056 AMQP_VALUE reply_to_group_id_amqp_value = amqpvalue_create_string(reply_to_group_id_value);
Azure.IoT Build 0:6ae2f7bca550 13057 if (reply_to_group_id_amqp_value == NULL)
Azure.IoT Build 0:6ae2f7bca550 13058 {
Azure.IoT Build 0:6ae2f7bca550 13059 result = __LINE__;
Azure.IoT Build 0:6ae2f7bca550 13060 }
Azure.IoT Build 0:6ae2f7bca550 13061 else
Azure.IoT Build 0:6ae2f7bca550 13062 {
Azure.IoT Build 0:6ae2f7bca550 13063 if (amqpvalue_set_composite_item(properties_instance->composite_value, 12, reply_to_group_id_amqp_value) != 0)
Azure.IoT Build 0:6ae2f7bca550 13064 {
Azure.IoT Build 0:6ae2f7bca550 13065 result = __LINE__;
Azure.IoT Build 0:6ae2f7bca550 13066 }
Azure.IoT Build 0:6ae2f7bca550 13067 else
Azure.IoT Build 0:6ae2f7bca550 13068 {
Azure.IoT Build 0:6ae2f7bca550 13069 result = 0;
Azure.IoT Build 0:6ae2f7bca550 13070 }
Azure.IoT Build 0:6ae2f7bca550 13071
Azure.IoT Build 0:6ae2f7bca550 13072 amqpvalue_destroy(reply_to_group_id_amqp_value);
Azure.IoT Build 0:6ae2f7bca550 13073 }
Azure.IoT Build 0:6ae2f7bca550 13074 }
Azure.IoT Build 0:6ae2f7bca550 13075
Azure.IoT Build 0:6ae2f7bca550 13076 return result;
Azure.IoT Build 0:6ae2f7bca550 13077 }
Azure.IoT Build 0:6ae2f7bca550 13078
Azure.IoT Build 0:6ae2f7bca550 13079
Azure.IoT Build 0:6ae2f7bca550 13080 /* received */
Azure.IoT Build 0:6ae2f7bca550 13081
Azure.IoT Build 0:6ae2f7bca550 13082 typedef struct RECEIVED_INSTANCE_TAG
Azure.IoT Build 0:6ae2f7bca550 13083 {
Azure.IoT Build 0:6ae2f7bca550 13084 AMQP_VALUE composite_value;
Azure.IoT Build 0:6ae2f7bca550 13085 } RECEIVED_INSTANCE;
Azure.IoT Build 0:6ae2f7bca550 13086
Azure.IoT Build 0:6ae2f7bca550 13087 static RECEIVED_HANDLE received_create_internal(void)
Azure.IoT Build 0:6ae2f7bca550 13088 {
Azure.IoT Build 0:6ae2f7bca550 13089 RECEIVED_INSTANCE* received_instance = (RECEIVED_INSTANCE*)amqpalloc_malloc(sizeof(RECEIVED_INSTANCE));
Azure.IoT Build 0:6ae2f7bca550 13090 if (received_instance != NULL)
Azure.IoT Build 0:6ae2f7bca550 13091 {
Azure.IoT Build 0:6ae2f7bca550 13092 received_instance->composite_value = NULL;
Azure.IoT Build 0:6ae2f7bca550 13093 }
Azure.IoT Build 0:6ae2f7bca550 13094
Azure.IoT Build 0:6ae2f7bca550 13095 return received_instance;
Azure.IoT Build 0:6ae2f7bca550 13096 }
Azure.IoT Build 0:6ae2f7bca550 13097
Azure.IoT Build 0:6ae2f7bca550 13098 RECEIVED_HANDLE received_create(uint32_t section_number_value, uint64_t section_offset_value)
Azure.IoT Build 0:6ae2f7bca550 13099 {
Azure.IoT Build 0:6ae2f7bca550 13100 RECEIVED_INSTANCE* received_instance = (RECEIVED_INSTANCE*)amqpalloc_malloc(sizeof(RECEIVED_INSTANCE));
Azure.IoT Build 0:6ae2f7bca550 13101 if (received_instance != NULL)
Azure.IoT Build 0:6ae2f7bca550 13102 {
Azure.IoT Build 0:6ae2f7bca550 13103 received_instance->composite_value = amqpvalue_create_composite_with_ulong_descriptor(35);
Azure.IoT Build 0:6ae2f7bca550 13104 if (received_instance->composite_value == NULL)
Azure.IoT Build 0:6ae2f7bca550 13105 {
Azure.IoT Build 0:6ae2f7bca550 13106 amqpalloc_free(received_instance);
Azure.IoT Build 0:6ae2f7bca550 13107 received_instance = NULL;
Azure.IoT Build 0:6ae2f7bca550 13108 }
Azure.IoT Build 0:6ae2f7bca550 13109 else
Azure.IoT Build 0:6ae2f7bca550 13110 {
Azure.IoT Build 0:6ae2f7bca550 13111 AMQP_VALUE section_number_amqp_value;
Azure.IoT Build 0:6ae2f7bca550 13112 AMQP_VALUE section_offset_amqp_value;
Azure.IoT Build 0:6ae2f7bca550 13113 int result = 0;
Azure.IoT Build 0:6ae2f7bca550 13114
Azure.IoT Build 0:6ae2f7bca550 13115 section_number_amqp_value = amqpvalue_create_uint(section_number_value);
Azure.IoT Build 0:6ae2f7bca550 13116 if ((result == 0) && (amqpvalue_set_composite_item(received_instance->composite_value, 0, section_number_amqp_value) != 0))
Azure.IoT Build 0:6ae2f7bca550 13117 {
Azure.IoT Build 0:6ae2f7bca550 13118 result = __LINE__;
Azure.IoT Build 0:6ae2f7bca550 13119 }
Azure.IoT Build 0:6ae2f7bca550 13120 section_offset_amqp_value = amqpvalue_create_ulong(section_offset_value);
Azure.IoT Build 0:6ae2f7bca550 13121 if ((result == 0) && (amqpvalue_set_composite_item(received_instance->composite_value, 1, section_offset_amqp_value) != 0))
Azure.IoT Build 0:6ae2f7bca550 13122 {
Azure.IoT Build 0:6ae2f7bca550 13123 result = __LINE__;
Azure.IoT Build 0:6ae2f7bca550 13124 }
Azure.IoT Build 0:6ae2f7bca550 13125
Azure.IoT Build 0:6ae2f7bca550 13126 amqpvalue_destroy(section_number_amqp_value);
Azure.IoT Build 0:6ae2f7bca550 13127 amqpvalue_destroy(section_offset_amqp_value);
Azure.IoT Build 0:6ae2f7bca550 13128 }
Azure.IoT Build 0:6ae2f7bca550 13129 }
Azure.IoT Build 0:6ae2f7bca550 13130
Azure.IoT Build 0:6ae2f7bca550 13131 return received_instance;
Azure.IoT Build 0:6ae2f7bca550 13132 }
Azure.IoT Build 0:6ae2f7bca550 13133
Azure.IoT Build 0:6ae2f7bca550 13134 RECEIVED_HANDLE received_clone(RECEIVED_HANDLE value)
Azure.IoT Build 0:6ae2f7bca550 13135 {
Azure.IoT Build 0:6ae2f7bca550 13136 RECEIVED_INSTANCE* received_instance = (RECEIVED_INSTANCE*)amqpalloc_malloc(sizeof(RECEIVED_INSTANCE));
Azure.IoT Build 0:6ae2f7bca550 13137 if (received_instance != NULL)
Azure.IoT Build 0:6ae2f7bca550 13138 {
Azure.IoT Build 0:6ae2f7bca550 13139 received_instance->composite_value = amqpvalue_clone(((RECEIVED_INSTANCE*)value)->composite_value);
Azure.IoT Build 0:6ae2f7bca550 13140 if (received_instance->composite_value == NULL)
Azure.IoT Build 0:6ae2f7bca550 13141 {
Azure.IoT Build 0:6ae2f7bca550 13142 amqpalloc_free(received_instance);
Azure.IoT Build 0:6ae2f7bca550 13143 received_instance = NULL;
Azure.IoT Build 0:6ae2f7bca550 13144 }
Azure.IoT Build 0:6ae2f7bca550 13145 }
Azure.IoT Build 0:6ae2f7bca550 13146
Azure.IoT Build 0:6ae2f7bca550 13147 return received_instance;
Azure.IoT Build 0:6ae2f7bca550 13148 }
Azure.IoT Build 0:6ae2f7bca550 13149
Azure.IoT Build 0:6ae2f7bca550 13150 void received_destroy(RECEIVED_HANDLE received)
Azure.IoT Build 0:6ae2f7bca550 13151 {
Azure.IoT Build 0:6ae2f7bca550 13152 if (received != NULL)
Azure.IoT Build 0:6ae2f7bca550 13153 {
Azure.IoT Build 0:6ae2f7bca550 13154 RECEIVED_INSTANCE* received_instance = (RECEIVED_INSTANCE*)received;
Azure.IoT Build 0:6ae2f7bca550 13155 amqpvalue_destroy(received_instance->composite_value);
Azure.IoT Build 0:6ae2f7bca550 13156 amqpalloc_free(received_instance);
Azure.IoT Build 0:6ae2f7bca550 13157 }
Azure.IoT Build 0:6ae2f7bca550 13158 }
Azure.IoT Build 0:6ae2f7bca550 13159
Azure.IoT Build 0:6ae2f7bca550 13160 AMQP_VALUE amqpvalue_create_received(RECEIVED_HANDLE received)
Azure.IoT Build 0:6ae2f7bca550 13161 {
Azure.IoT Build 0:6ae2f7bca550 13162 AMQP_VALUE result;
Azure.IoT Build 0:6ae2f7bca550 13163
Azure.IoT Build 0:6ae2f7bca550 13164 if (received == NULL)
Azure.IoT Build 0:6ae2f7bca550 13165 {
Azure.IoT Build 0:6ae2f7bca550 13166 result = NULL;
Azure.IoT Build 0:6ae2f7bca550 13167 }
Azure.IoT Build 0:6ae2f7bca550 13168 else
Azure.IoT Build 0:6ae2f7bca550 13169 {
Azure.IoT Build 0:6ae2f7bca550 13170 RECEIVED_INSTANCE* received_instance = (RECEIVED_INSTANCE*)received;
Azure.IoT Build 0:6ae2f7bca550 13171 result = amqpvalue_clone(received_instance->composite_value);
Azure.IoT Build 0:6ae2f7bca550 13172 }
Azure.IoT Build 0:6ae2f7bca550 13173
Azure.IoT Build 0:6ae2f7bca550 13174 return result;
Azure.IoT Build 0:6ae2f7bca550 13175 }
Azure.IoT Build 0:6ae2f7bca550 13176
Azure.IoT Build 0:6ae2f7bca550 13177 bool is_received_type_by_descriptor(AMQP_VALUE descriptor)
Azure.IoT Build 0:6ae2f7bca550 13178 {
Azure.IoT Build 0:6ae2f7bca550 13179 bool result;
Azure.IoT Build 0:6ae2f7bca550 13180
Azure.IoT Build 0:6ae2f7bca550 13181 uint64_t descriptor_ulong;
Azure.IoT Build 0:6ae2f7bca550 13182 if ((amqpvalue_get_ulong(descriptor, &descriptor_ulong) == 0) &&
Azure.IoT Build 0:6ae2f7bca550 13183 (descriptor_ulong == 35))
Azure.IoT Build 0:6ae2f7bca550 13184 {
Azure.IoT Build 0:6ae2f7bca550 13185 result = true;
Azure.IoT Build 0:6ae2f7bca550 13186 }
Azure.IoT Build 0:6ae2f7bca550 13187 else
Azure.IoT Build 0:6ae2f7bca550 13188 {
Azure.IoT Build 0:6ae2f7bca550 13189 result = false;
Azure.IoT Build 0:6ae2f7bca550 13190 }
Azure.IoT Build 0:6ae2f7bca550 13191
Azure.IoT Build 0:6ae2f7bca550 13192 return result;
Azure.IoT Build 0:6ae2f7bca550 13193 }
Azure.IoT Build 0:6ae2f7bca550 13194
Azure.IoT Build 0:6ae2f7bca550 13195
Azure.IoT Build 0:6ae2f7bca550 13196 int amqpvalue_get_received(AMQP_VALUE value, RECEIVED_HANDLE* received_handle)
Azure.IoT Build 0:6ae2f7bca550 13197 {
Azure.IoT Build 0:6ae2f7bca550 13198 int result;
Azure.IoT Build 0:6ae2f7bca550 13199 RECEIVED_INSTANCE* received_instance = (RECEIVED_INSTANCE*)received_create_internal();
Azure.IoT Build 0:6ae2f7bca550 13200 *received_handle = received_instance;
Azure.IoT Build 0:6ae2f7bca550 13201 if (*received_handle == NULL)
Azure.IoT Build 0:6ae2f7bca550 13202 {
Azure.IoT Build 0:6ae2f7bca550 13203 result = __LINE__;
Azure.IoT Build 0:6ae2f7bca550 13204 }
Azure.IoT Build 0:6ae2f7bca550 13205 else
Azure.IoT Build 0:6ae2f7bca550 13206 {
Azure.IoT Build 0:6ae2f7bca550 13207 AMQP_VALUE list_value = amqpvalue_get_inplace_described_value(value);
Azure.IoT Build 0:6ae2f7bca550 13208 if (list_value == NULL)
Azure.IoT Build 0:6ae2f7bca550 13209 {
Azure.IoT Build 0:6ae2f7bca550 13210 received_destroy(*received_handle);
Azure.IoT Build 0:6ae2f7bca550 13211 result = __LINE__;
Azure.IoT Build 0:6ae2f7bca550 13212 }
Azure.IoT Build 0:6ae2f7bca550 13213 else
Azure.IoT Build 0:6ae2f7bca550 13214 {
Azure.IoT Build 0:6ae2f7bca550 13215 do
Azure.IoT Build 0:6ae2f7bca550 13216 {
Azure.IoT Build 0:6ae2f7bca550 13217 AMQP_VALUE item_value;
Azure.IoT Build 0:6ae2f7bca550 13218 /* section-number */
Azure.IoT Build 0:6ae2f7bca550 13219 item_value = amqpvalue_get_list_item(list_value, 0);
Azure.IoT Build 0:6ae2f7bca550 13220 if (item_value == NULL)
Azure.IoT Build 0:6ae2f7bca550 13221 {
Azure.IoT Build 0:6ae2f7bca550 13222 {
Azure.IoT Build 0:6ae2f7bca550 13223 received_destroy(*received_handle);
Azure.IoT Build 0:6ae2f7bca550 13224 result = __LINE__;
Azure.IoT Build 0:6ae2f7bca550 13225 break;
Azure.IoT Build 0:6ae2f7bca550 13226 }
Azure.IoT Build 0:6ae2f7bca550 13227 }
Azure.IoT Build 0:6ae2f7bca550 13228 else
Azure.IoT Build 0:6ae2f7bca550 13229 {
Azure.IoT Build 0:6ae2f7bca550 13230 uint32_t section_number;
Azure.IoT Build 0:6ae2f7bca550 13231 if (amqpvalue_get_uint(item_value, &section_number) != 0)
Azure.IoT Build 0:6ae2f7bca550 13232 {
Azure.IoT Build 0:6ae2f7bca550 13233 received_destroy(*received_handle);
Azure.IoT Build 0:6ae2f7bca550 13234 result = __LINE__;
Azure.IoT Build 0:6ae2f7bca550 13235 break;
Azure.IoT Build 0:6ae2f7bca550 13236 }
Azure.IoT Build 0:6ae2f7bca550 13237
Azure.IoT Build 0:6ae2f7bca550 13238 amqpvalue_destroy(item_value);
Azure.IoT Build 0:6ae2f7bca550 13239 }
Azure.IoT Build 0:6ae2f7bca550 13240 /* section-offset */
Azure.IoT Build 0:6ae2f7bca550 13241 item_value = amqpvalue_get_list_item(list_value, 1);
Azure.IoT Build 0:6ae2f7bca550 13242 if (item_value == NULL)
Azure.IoT Build 0:6ae2f7bca550 13243 {
Azure.IoT Build 0:6ae2f7bca550 13244 {
Azure.IoT Build 0:6ae2f7bca550 13245 received_destroy(*received_handle);
Azure.IoT Build 0:6ae2f7bca550 13246 result = __LINE__;
Azure.IoT Build 0:6ae2f7bca550 13247 break;
Azure.IoT Build 0:6ae2f7bca550 13248 }
Azure.IoT Build 0:6ae2f7bca550 13249 }
Azure.IoT Build 0:6ae2f7bca550 13250 else
Azure.IoT Build 0:6ae2f7bca550 13251 {
Azure.IoT Build 0:6ae2f7bca550 13252 uint64_t section_offset;
Azure.IoT Build 0:6ae2f7bca550 13253 if (amqpvalue_get_ulong(item_value, &section_offset) != 0)
Azure.IoT Build 0:6ae2f7bca550 13254 {
Azure.IoT Build 0:6ae2f7bca550 13255 received_destroy(*received_handle);
Azure.IoT Build 0:6ae2f7bca550 13256 result = __LINE__;
Azure.IoT Build 0:6ae2f7bca550 13257 break;
Azure.IoT Build 0:6ae2f7bca550 13258 }
Azure.IoT Build 0:6ae2f7bca550 13259
Azure.IoT Build 0:6ae2f7bca550 13260 amqpvalue_destroy(item_value);
Azure.IoT Build 0:6ae2f7bca550 13261 }
Azure.IoT Build 0:6ae2f7bca550 13262
Azure.IoT Build 0:6ae2f7bca550 13263 received_instance->composite_value = amqpvalue_clone(value);
Azure.IoT Build 0:6ae2f7bca550 13264
Azure.IoT Build 0:6ae2f7bca550 13265 result = 0;
Azure.IoT Build 0:6ae2f7bca550 13266 } while (0);
Azure.IoT Build 0:6ae2f7bca550 13267 }
Azure.IoT Build 0:6ae2f7bca550 13268 }
Azure.IoT Build 0:6ae2f7bca550 13269
Azure.IoT Build 0:6ae2f7bca550 13270 return result;
Azure.IoT Build 0:6ae2f7bca550 13271 }
Azure.IoT Build 0:6ae2f7bca550 13272
Azure.IoT Build 0:6ae2f7bca550 13273 int received_get_section_number(RECEIVED_HANDLE received, uint32_t* section_number_value)
Azure.IoT Build 0:6ae2f7bca550 13274 {
Azure.IoT Build 0:6ae2f7bca550 13275 int result;
Azure.IoT Build 0:6ae2f7bca550 13276
Azure.IoT Build 0:6ae2f7bca550 13277 if (received == NULL)
Azure.IoT Build 0:6ae2f7bca550 13278 {
Azure.IoT Build 0:6ae2f7bca550 13279 result = __LINE__;
Azure.IoT Build 0:6ae2f7bca550 13280 }
Azure.IoT Build 0:6ae2f7bca550 13281 else
Azure.IoT Build 0:6ae2f7bca550 13282 {
Azure.IoT Build 0:6ae2f7bca550 13283 RECEIVED_INSTANCE* received_instance = (RECEIVED_INSTANCE*)received;
Azure.IoT Build 0:6ae2f7bca550 13284 AMQP_VALUE item_value = amqpvalue_get_composite_item_in_place(received_instance->composite_value, 0);
Azure.IoT Build 0:6ae2f7bca550 13285 if (item_value == NULL)
Azure.IoT Build 0:6ae2f7bca550 13286 {
Azure.IoT Build 0:6ae2f7bca550 13287 result = __LINE__;
Azure.IoT Build 0:6ae2f7bca550 13288 }
Azure.IoT Build 0:6ae2f7bca550 13289 else
Azure.IoT Build 0:6ae2f7bca550 13290 {
Azure.IoT Build 0:6ae2f7bca550 13291 if (amqpvalue_get_uint(item_value, section_number_value) != 0)
Azure.IoT Build 0:6ae2f7bca550 13292 {
AzureIoTClient 16:22a72cf8e416 13293 result = __LINE__;
Azure.IoT Build 0:6ae2f7bca550 13294 }
Azure.IoT Build 0:6ae2f7bca550 13295 else
Azure.IoT Build 0:6ae2f7bca550 13296 {
Azure.IoT Build 0:6ae2f7bca550 13297 result = 0;
Azure.IoT Build 0:6ae2f7bca550 13298 }
Azure.IoT Build 0:6ae2f7bca550 13299 }
Azure.IoT Build 0:6ae2f7bca550 13300 }
Azure.IoT Build 0:6ae2f7bca550 13301
Azure.IoT Build 0:6ae2f7bca550 13302 return result;
Azure.IoT Build 0:6ae2f7bca550 13303 }
Azure.IoT Build 0:6ae2f7bca550 13304
Azure.IoT Build 0:6ae2f7bca550 13305 int received_set_section_number(RECEIVED_HANDLE received, uint32_t section_number_value)
Azure.IoT Build 0:6ae2f7bca550 13306 {
Azure.IoT Build 0:6ae2f7bca550 13307 int result;
Azure.IoT Build 0:6ae2f7bca550 13308
Azure.IoT Build 0:6ae2f7bca550 13309 if (received == NULL)
Azure.IoT Build 0:6ae2f7bca550 13310 {
Azure.IoT Build 0:6ae2f7bca550 13311 result = __LINE__;
Azure.IoT Build 0:6ae2f7bca550 13312 }
Azure.IoT Build 0:6ae2f7bca550 13313 else
Azure.IoT Build 0:6ae2f7bca550 13314 {
Azure.IoT Build 0:6ae2f7bca550 13315 RECEIVED_INSTANCE* received_instance = (RECEIVED_INSTANCE*)received;
Azure.IoT Build 0:6ae2f7bca550 13316 AMQP_VALUE section_number_amqp_value = amqpvalue_create_uint(section_number_value);
Azure.IoT Build 0:6ae2f7bca550 13317 if (section_number_amqp_value == NULL)
Azure.IoT Build 0:6ae2f7bca550 13318 {
Azure.IoT Build 0:6ae2f7bca550 13319 result = __LINE__;
Azure.IoT Build 0:6ae2f7bca550 13320 }
Azure.IoT Build 0:6ae2f7bca550 13321 else
Azure.IoT Build 0:6ae2f7bca550 13322 {
Azure.IoT Build 0:6ae2f7bca550 13323 if (amqpvalue_set_composite_item(received_instance->composite_value, 0, section_number_amqp_value) != 0)
Azure.IoT Build 0:6ae2f7bca550 13324 {
Azure.IoT Build 0:6ae2f7bca550 13325 result = __LINE__;
Azure.IoT Build 0:6ae2f7bca550 13326 }
Azure.IoT Build 0:6ae2f7bca550 13327 else
Azure.IoT Build 0:6ae2f7bca550 13328 {
Azure.IoT Build 0:6ae2f7bca550 13329 result = 0;
Azure.IoT Build 0:6ae2f7bca550 13330 }
Azure.IoT Build 0:6ae2f7bca550 13331
Azure.IoT Build 0:6ae2f7bca550 13332 amqpvalue_destroy(section_number_amqp_value);
Azure.IoT Build 0:6ae2f7bca550 13333 }
Azure.IoT Build 0:6ae2f7bca550 13334 }
Azure.IoT Build 0:6ae2f7bca550 13335
Azure.IoT Build 0:6ae2f7bca550 13336 return result;
Azure.IoT Build 0:6ae2f7bca550 13337 }
Azure.IoT Build 0:6ae2f7bca550 13338
Azure.IoT Build 0:6ae2f7bca550 13339 int received_get_section_offset(RECEIVED_HANDLE received, uint64_t* section_offset_value)
Azure.IoT Build 0:6ae2f7bca550 13340 {
Azure.IoT Build 0:6ae2f7bca550 13341 int result;
Azure.IoT Build 0:6ae2f7bca550 13342
Azure.IoT Build 0:6ae2f7bca550 13343 if (received == NULL)
Azure.IoT Build 0:6ae2f7bca550 13344 {
Azure.IoT Build 0:6ae2f7bca550 13345 result = __LINE__;
Azure.IoT Build 0:6ae2f7bca550 13346 }
Azure.IoT Build 0:6ae2f7bca550 13347 else
Azure.IoT Build 0:6ae2f7bca550 13348 {
Azure.IoT Build 0:6ae2f7bca550 13349 RECEIVED_INSTANCE* received_instance = (RECEIVED_INSTANCE*)received;
Azure.IoT Build 0:6ae2f7bca550 13350 AMQP_VALUE item_value = amqpvalue_get_composite_item_in_place(received_instance->composite_value, 1);
Azure.IoT Build 0:6ae2f7bca550 13351 if (item_value == NULL)
Azure.IoT Build 0:6ae2f7bca550 13352 {
Azure.IoT Build 0:6ae2f7bca550 13353 result = __LINE__;
Azure.IoT Build 0:6ae2f7bca550 13354 }
Azure.IoT Build 0:6ae2f7bca550 13355 else
Azure.IoT Build 0:6ae2f7bca550 13356 {
Azure.IoT Build 0:6ae2f7bca550 13357 if (amqpvalue_get_ulong(item_value, section_offset_value) != 0)
Azure.IoT Build 0:6ae2f7bca550 13358 {
AzureIoTClient 16:22a72cf8e416 13359 result = __LINE__;
Azure.IoT Build 0:6ae2f7bca550 13360 }
Azure.IoT Build 0:6ae2f7bca550 13361 else
Azure.IoT Build 0:6ae2f7bca550 13362 {
Azure.IoT Build 0:6ae2f7bca550 13363 result = 0;
Azure.IoT Build 0:6ae2f7bca550 13364 }
Azure.IoT Build 0:6ae2f7bca550 13365 }
Azure.IoT Build 0:6ae2f7bca550 13366 }
Azure.IoT Build 0:6ae2f7bca550 13367
Azure.IoT Build 0:6ae2f7bca550 13368 return result;
Azure.IoT Build 0:6ae2f7bca550 13369 }
Azure.IoT Build 0:6ae2f7bca550 13370
Azure.IoT Build 0:6ae2f7bca550 13371 int received_set_section_offset(RECEIVED_HANDLE received, uint64_t section_offset_value)
Azure.IoT Build 0:6ae2f7bca550 13372 {
Azure.IoT Build 0:6ae2f7bca550 13373 int result;
Azure.IoT Build 0:6ae2f7bca550 13374
Azure.IoT Build 0:6ae2f7bca550 13375 if (received == NULL)
Azure.IoT Build 0:6ae2f7bca550 13376 {
Azure.IoT Build 0:6ae2f7bca550 13377 result = __LINE__;
Azure.IoT Build 0:6ae2f7bca550 13378 }
Azure.IoT Build 0:6ae2f7bca550 13379 else
Azure.IoT Build 0:6ae2f7bca550 13380 {
Azure.IoT Build 0:6ae2f7bca550 13381 RECEIVED_INSTANCE* received_instance = (RECEIVED_INSTANCE*)received;
Azure.IoT Build 0:6ae2f7bca550 13382 AMQP_VALUE section_offset_amqp_value = amqpvalue_create_ulong(section_offset_value);
Azure.IoT Build 0:6ae2f7bca550 13383 if (section_offset_amqp_value == NULL)
Azure.IoT Build 0:6ae2f7bca550 13384 {
Azure.IoT Build 0:6ae2f7bca550 13385 result = __LINE__;
Azure.IoT Build 0:6ae2f7bca550 13386 }
Azure.IoT Build 0:6ae2f7bca550 13387 else
Azure.IoT Build 0:6ae2f7bca550 13388 {
Azure.IoT Build 0:6ae2f7bca550 13389 if (amqpvalue_set_composite_item(received_instance->composite_value, 1, section_offset_amqp_value) != 0)
Azure.IoT Build 0:6ae2f7bca550 13390 {
Azure.IoT Build 0:6ae2f7bca550 13391 result = __LINE__;
Azure.IoT Build 0:6ae2f7bca550 13392 }
Azure.IoT Build 0:6ae2f7bca550 13393 else
Azure.IoT Build 0:6ae2f7bca550 13394 {
Azure.IoT Build 0:6ae2f7bca550 13395 result = 0;
Azure.IoT Build 0:6ae2f7bca550 13396 }
Azure.IoT Build 0:6ae2f7bca550 13397
Azure.IoT Build 0:6ae2f7bca550 13398 amqpvalue_destroy(section_offset_amqp_value);
Azure.IoT Build 0:6ae2f7bca550 13399 }
Azure.IoT Build 0:6ae2f7bca550 13400 }
Azure.IoT Build 0:6ae2f7bca550 13401
Azure.IoT Build 0:6ae2f7bca550 13402 return result;
Azure.IoT Build 0:6ae2f7bca550 13403 }
Azure.IoT Build 0:6ae2f7bca550 13404
Azure.IoT Build 0:6ae2f7bca550 13405
Azure.IoT Build 0:6ae2f7bca550 13406 /* accepted */
Azure.IoT Build 0:6ae2f7bca550 13407
Azure.IoT Build 0:6ae2f7bca550 13408 typedef struct ACCEPTED_INSTANCE_TAG
Azure.IoT Build 0:6ae2f7bca550 13409 {
Azure.IoT Build 0:6ae2f7bca550 13410 AMQP_VALUE composite_value;
Azure.IoT Build 0:6ae2f7bca550 13411 } ACCEPTED_INSTANCE;
Azure.IoT Build 0:6ae2f7bca550 13412
Azure.IoT Build 0:6ae2f7bca550 13413 static ACCEPTED_HANDLE accepted_create_internal(void)
Azure.IoT Build 0:6ae2f7bca550 13414 {
Azure.IoT Build 0:6ae2f7bca550 13415 ACCEPTED_INSTANCE* accepted_instance = (ACCEPTED_INSTANCE*)amqpalloc_malloc(sizeof(ACCEPTED_INSTANCE));
Azure.IoT Build 0:6ae2f7bca550 13416 if (accepted_instance != NULL)
Azure.IoT Build 0:6ae2f7bca550 13417 {
Azure.IoT Build 0:6ae2f7bca550 13418 accepted_instance->composite_value = NULL;
Azure.IoT Build 0:6ae2f7bca550 13419 }
Azure.IoT Build 0:6ae2f7bca550 13420
Azure.IoT Build 0:6ae2f7bca550 13421 return accepted_instance;
Azure.IoT Build 0:6ae2f7bca550 13422 }
Azure.IoT Build 0:6ae2f7bca550 13423
Azure.IoT Build 0:6ae2f7bca550 13424 ACCEPTED_HANDLE accepted_create(void)
Azure.IoT Build 0:6ae2f7bca550 13425 {
Azure.IoT Build 0:6ae2f7bca550 13426 ACCEPTED_INSTANCE* accepted_instance = (ACCEPTED_INSTANCE*)amqpalloc_malloc(sizeof(ACCEPTED_INSTANCE));
Azure.IoT Build 0:6ae2f7bca550 13427 if (accepted_instance != NULL)
Azure.IoT Build 0:6ae2f7bca550 13428 {
Azure.IoT Build 0:6ae2f7bca550 13429 accepted_instance->composite_value = amqpvalue_create_composite_with_ulong_descriptor(36);
Azure.IoT Build 0:6ae2f7bca550 13430 if (accepted_instance->composite_value == NULL)
Azure.IoT Build 0:6ae2f7bca550 13431 {
Azure.IoT Build 0:6ae2f7bca550 13432 amqpalloc_free(accepted_instance);
Azure.IoT Build 0:6ae2f7bca550 13433 accepted_instance = NULL;
Azure.IoT Build 0:6ae2f7bca550 13434 }
Azure.IoT Build 0:6ae2f7bca550 13435 }
Azure.IoT Build 0:6ae2f7bca550 13436
Azure.IoT Build 0:6ae2f7bca550 13437 return accepted_instance;
Azure.IoT Build 0:6ae2f7bca550 13438 }
Azure.IoT Build 0:6ae2f7bca550 13439
Azure.IoT Build 0:6ae2f7bca550 13440 ACCEPTED_HANDLE accepted_clone(ACCEPTED_HANDLE value)
Azure.IoT Build 0:6ae2f7bca550 13441 {
Azure.IoT Build 0:6ae2f7bca550 13442 ACCEPTED_INSTANCE* accepted_instance = (ACCEPTED_INSTANCE*)amqpalloc_malloc(sizeof(ACCEPTED_INSTANCE));
Azure.IoT Build 0:6ae2f7bca550 13443 if (accepted_instance != NULL)
Azure.IoT Build 0:6ae2f7bca550 13444 {
Azure.IoT Build 0:6ae2f7bca550 13445 accepted_instance->composite_value = amqpvalue_clone(((ACCEPTED_INSTANCE*)value)->composite_value);
Azure.IoT Build 0:6ae2f7bca550 13446 if (accepted_instance->composite_value == NULL)
Azure.IoT Build 0:6ae2f7bca550 13447 {
Azure.IoT Build 0:6ae2f7bca550 13448 amqpalloc_free(accepted_instance);
Azure.IoT Build 0:6ae2f7bca550 13449 accepted_instance = NULL;
Azure.IoT Build 0:6ae2f7bca550 13450 }
Azure.IoT Build 0:6ae2f7bca550 13451 }
Azure.IoT Build 0:6ae2f7bca550 13452
Azure.IoT Build 0:6ae2f7bca550 13453 return accepted_instance;
Azure.IoT Build 0:6ae2f7bca550 13454 }
Azure.IoT Build 0:6ae2f7bca550 13455
Azure.IoT Build 0:6ae2f7bca550 13456 void accepted_destroy(ACCEPTED_HANDLE accepted)
Azure.IoT Build 0:6ae2f7bca550 13457 {
Azure.IoT Build 0:6ae2f7bca550 13458 if (accepted != NULL)
Azure.IoT Build 0:6ae2f7bca550 13459 {
Azure.IoT Build 0:6ae2f7bca550 13460 ACCEPTED_INSTANCE* accepted_instance = (ACCEPTED_INSTANCE*)accepted;
Azure.IoT Build 0:6ae2f7bca550 13461 amqpvalue_destroy(accepted_instance->composite_value);
Azure.IoT Build 0:6ae2f7bca550 13462 amqpalloc_free(accepted_instance);
Azure.IoT Build 0:6ae2f7bca550 13463 }
Azure.IoT Build 0:6ae2f7bca550 13464 }
Azure.IoT Build 0:6ae2f7bca550 13465
Azure.IoT Build 0:6ae2f7bca550 13466 AMQP_VALUE amqpvalue_create_accepted(ACCEPTED_HANDLE accepted)
Azure.IoT Build 0:6ae2f7bca550 13467 {
Azure.IoT Build 0:6ae2f7bca550 13468 AMQP_VALUE result;
Azure.IoT Build 0:6ae2f7bca550 13469
Azure.IoT Build 0:6ae2f7bca550 13470 if (accepted == NULL)
Azure.IoT Build 0:6ae2f7bca550 13471 {
Azure.IoT Build 0:6ae2f7bca550 13472 result = NULL;
Azure.IoT Build 0:6ae2f7bca550 13473 }
Azure.IoT Build 0:6ae2f7bca550 13474 else
Azure.IoT Build 0:6ae2f7bca550 13475 {
Azure.IoT Build 0:6ae2f7bca550 13476 ACCEPTED_INSTANCE* accepted_instance = (ACCEPTED_INSTANCE*)accepted;
Azure.IoT Build 0:6ae2f7bca550 13477 result = amqpvalue_clone(accepted_instance->composite_value);
Azure.IoT Build 0:6ae2f7bca550 13478 }
Azure.IoT Build 0:6ae2f7bca550 13479
Azure.IoT Build 0:6ae2f7bca550 13480 return result;
Azure.IoT Build 0:6ae2f7bca550 13481 }
Azure.IoT Build 0:6ae2f7bca550 13482
Azure.IoT Build 0:6ae2f7bca550 13483 bool is_accepted_type_by_descriptor(AMQP_VALUE descriptor)
Azure.IoT Build 0:6ae2f7bca550 13484 {
Azure.IoT Build 0:6ae2f7bca550 13485 bool result;
Azure.IoT Build 0:6ae2f7bca550 13486
Azure.IoT Build 0:6ae2f7bca550 13487 uint64_t descriptor_ulong;
Azure.IoT Build 0:6ae2f7bca550 13488 if ((amqpvalue_get_ulong(descriptor, &descriptor_ulong) == 0) &&
Azure.IoT Build 0:6ae2f7bca550 13489 (descriptor_ulong == 36))
Azure.IoT Build 0:6ae2f7bca550 13490 {
Azure.IoT Build 0:6ae2f7bca550 13491 result = true;
Azure.IoT Build 0:6ae2f7bca550 13492 }
Azure.IoT Build 0:6ae2f7bca550 13493 else
Azure.IoT Build 0:6ae2f7bca550 13494 {
Azure.IoT Build 0:6ae2f7bca550 13495 result = false;
Azure.IoT Build 0:6ae2f7bca550 13496 }
Azure.IoT Build 0:6ae2f7bca550 13497
Azure.IoT Build 0:6ae2f7bca550 13498 return result;
Azure.IoT Build 0:6ae2f7bca550 13499 }
Azure.IoT Build 0:6ae2f7bca550 13500
Azure.IoT Build 0:6ae2f7bca550 13501
Azure.IoT Build 0:6ae2f7bca550 13502 int amqpvalue_get_accepted(AMQP_VALUE value, ACCEPTED_HANDLE* accepted_handle)
Azure.IoT Build 0:6ae2f7bca550 13503 {
Azure.IoT Build 0:6ae2f7bca550 13504 int result;
Azure.IoT Build 0:6ae2f7bca550 13505 ACCEPTED_INSTANCE* accepted_instance = (ACCEPTED_INSTANCE*)accepted_create_internal();
Azure.IoT Build 0:6ae2f7bca550 13506 *accepted_handle = accepted_instance;
Azure.IoT Build 0:6ae2f7bca550 13507 if (*accepted_handle == NULL)
Azure.IoT Build 0:6ae2f7bca550 13508 {
Azure.IoT Build 0:6ae2f7bca550 13509 result = __LINE__;
Azure.IoT Build 0:6ae2f7bca550 13510 }
Azure.IoT Build 0:6ae2f7bca550 13511 else
Azure.IoT Build 0:6ae2f7bca550 13512 {
Azure.IoT Build 0:6ae2f7bca550 13513 AMQP_VALUE list_value = amqpvalue_get_inplace_described_value(value);
Azure.IoT Build 0:6ae2f7bca550 13514 if (list_value == NULL)
Azure.IoT Build 0:6ae2f7bca550 13515 {
Azure.IoT Build 0:6ae2f7bca550 13516 accepted_destroy(*accepted_handle);
Azure.IoT Build 0:6ae2f7bca550 13517 result = __LINE__;
Azure.IoT Build 0:6ae2f7bca550 13518 }
Azure.IoT Build 0:6ae2f7bca550 13519 else
Azure.IoT Build 0:6ae2f7bca550 13520 {
Azure.IoT Build 0:6ae2f7bca550 13521 do
Azure.IoT Build 0:6ae2f7bca550 13522 {
Azure.IoT Build 0:6ae2f7bca550 13523
Azure.IoT Build 0:6ae2f7bca550 13524 accepted_instance->composite_value = amqpvalue_clone(value);
Azure.IoT Build 0:6ae2f7bca550 13525
Azure.IoT Build 0:6ae2f7bca550 13526 result = 0;
Azure.IoT Build 0:6ae2f7bca550 13527 } while (0);
Azure.IoT Build 0:6ae2f7bca550 13528 }
Azure.IoT Build 0:6ae2f7bca550 13529 }
Azure.IoT Build 0:6ae2f7bca550 13530
Azure.IoT Build 0:6ae2f7bca550 13531 return result;
Azure.IoT Build 0:6ae2f7bca550 13532 }
Azure.IoT Build 0:6ae2f7bca550 13533
Azure.IoT Build 0:6ae2f7bca550 13534
Azure.IoT Build 0:6ae2f7bca550 13535 /* rejected */
Azure.IoT Build 0:6ae2f7bca550 13536
Azure.IoT Build 0:6ae2f7bca550 13537 typedef struct REJECTED_INSTANCE_TAG
Azure.IoT Build 0:6ae2f7bca550 13538 {
Azure.IoT Build 0:6ae2f7bca550 13539 AMQP_VALUE composite_value;
Azure.IoT Build 0:6ae2f7bca550 13540 } REJECTED_INSTANCE;
Azure.IoT Build 0:6ae2f7bca550 13541
Azure.IoT Build 0:6ae2f7bca550 13542 static REJECTED_HANDLE rejected_create_internal(void)
Azure.IoT Build 0:6ae2f7bca550 13543 {
Azure.IoT Build 0:6ae2f7bca550 13544 REJECTED_INSTANCE* rejected_instance = (REJECTED_INSTANCE*)amqpalloc_malloc(sizeof(REJECTED_INSTANCE));
Azure.IoT Build 0:6ae2f7bca550 13545 if (rejected_instance != NULL)
Azure.IoT Build 0:6ae2f7bca550 13546 {
Azure.IoT Build 0:6ae2f7bca550 13547 rejected_instance->composite_value = NULL;
Azure.IoT Build 0:6ae2f7bca550 13548 }
Azure.IoT Build 0:6ae2f7bca550 13549
Azure.IoT Build 0:6ae2f7bca550 13550 return rejected_instance;
Azure.IoT Build 0:6ae2f7bca550 13551 }
Azure.IoT Build 0:6ae2f7bca550 13552
Azure.IoT Build 0:6ae2f7bca550 13553 REJECTED_HANDLE rejected_create(void)
Azure.IoT Build 0:6ae2f7bca550 13554 {
Azure.IoT Build 0:6ae2f7bca550 13555 REJECTED_INSTANCE* rejected_instance = (REJECTED_INSTANCE*)amqpalloc_malloc(sizeof(REJECTED_INSTANCE));
Azure.IoT Build 0:6ae2f7bca550 13556 if (rejected_instance != NULL)
Azure.IoT Build 0:6ae2f7bca550 13557 {
Azure.IoT Build 0:6ae2f7bca550 13558 rejected_instance->composite_value = amqpvalue_create_composite_with_ulong_descriptor(37);
Azure.IoT Build 0:6ae2f7bca550 13559 if (rejected_instance->composite_value == NULL)
Azure.IoT Build 0:6ae2f7bca550 13560 {
Azure.IoT Build 0:6ae2f7bca550 13561 amqpalloc_free(rejected_instance);
Azure.IoT Build 0:6ae2f7bca550 13562 rejected_instance = NULL;
Azure.IoT Build 0:6ae2f7bca550 13563 }
Azure.IoT Build 0:6ae2f7bca550 13564 }
Azure.IoT Build 0:6ae2f7bca550 13565
Azure.IoT Build 0:6ae2f7bca550 13566 return rejected_instance;
Azure.IoT Build 0:6ae2f7bca550 13567 }
Azure.IoT Build 0:6ae2f7bca550 13568
Azure.IoT Build 0:6ae2f7bca550 13569 REJECTED_HANDLE rejected_clone(REJECTED_HANDLE value)
Azure.IoT Build 0:6ae2f7bca550 13570 {
Azure.IoT Build 0:6ae2f7bca550 13571 REJECTED_INSTANCE* rejected_instance = (REJECTED_INSTANCE*)amqpalloc_malloc(sizeof(REJECTED_INSTANCE));
Azure.IoT Build 0:6ae2f7bca550 13572 if (rejected_instance != NULL)
Azure.IoT Build 0:6ae2f7bca550 13573 {
Azure.IoT Build 0:6ae2f7bca550 13574 rejected_instance->composite_value = amqpvalue_clone(((REJECTED_INSTANCE*)value)->composite_value);
Azure.IoT Build 0:6ae2f7bca550 13575 if (rejected_instance->composite_value == NULL)
Azure.IoT Build 0:6ae2f7bca550 13576 {
Azure.IoT Build 0:6ae2f7bca550 13577 amqpalloc_free(rejected_instance);
Azure.IoT Build 0:6ae2f7bca550 13578 rejected_instance = NULL;
Azure.IoT Build 0:6ae2f7bca550 13579 }
Azure.IoT Build 0:6ae2f7bca550 13580 }
Azure.IoT Build 0:6ae2f7bca550 13581
Azure.IoT Build 0:6ae2f7bca550 13582 return rejected_instance;
Azure.IoT Build 0:6ae2f7bca550 13583 }
Azure.IoT Build 0:6ae2f7bca550 13584
Azure.IoT Build 0:6ae2f7bca550 13585 void rejected_destroy(REJECTED_HANDLE rejected)
Azure.IoT Build 0:6ae2f7bca550 13586 {
Azure.IoT Build 0:6ae2f7bca550 13587 if (rejected != NULL)
Azure.IoT Build 0:6ae2f7bca550 13588 {
Azure.IoT Build 0:6ae2f7bca550 13589 REJECTED_INSTANCE* rejected_instance = (REJECTED_INSTANCE*)rejected;
Azure.IoT Build 0:6ae2f7bca550 13590 amqpvalue_destroy(rejected_instance->composite_value);
Azure.IoT Build 0:6ae2f7bca550 13591 amqpalloc_free(rejected_instance);
Azure.IoT Build 0:6ae2f7bca550 13592 }
Azure.IoT Build 0:6ae2f7bca550 13593 }
Azure.IoT Build 0:6ae2f7bca550 13594
Azure.IoT Build 0:6ae2f7bca550 13595 AMQP_VALUE amqpvalue_create_rejected(REJECTED_HANDLE rejected)
Azure.IoT Build 0:6ae2f7bca550 13596 {
Azure.IoT Build 0:6ae2f7bca550 13597 AMQP_VALUE result;
Azure.IoT Build 0:6ae2f7bca550 13598
Azure.IoT Build 0:6ae2f7bca550 13599 if (rejected == NULL)
Azure.IoT Build 0:6ae2f7bca550 13600 {
Azure.IoT Build 0:6ae2f7bca550 13601 result = NULL;
Azure.IoT Build 0:6ae2f7bca550 13602 }
Azure.IoT Build 0:6ae2f7bca550 13603 else
Azure.IoT Build 0:6ae2f7bca550 13604 {
Azure.IoT Build 0:6ae2f7bca550 13605 REJECTED_INSTANCE* rejected_instance = (REJECTED_INSTANCE*)rejected;
Azure.IoT Build 0:6ae2f7bca550 13606 result = amqpvalue_clone(rejected_instance->composite_value);
Azure.IoT Build 0:6ae2f7bca550 13607 }
Azure.IoT Build 0:6ae2f7bca550 13608
Azure.IoT Build 0:6ae2f7bca550 13609 return result;
Azure.IoT Build 0:6ae2f7bca550 13610 }
Azure.IoT Build 0:6ae2f7bca550 13611
Azure.IoT Build 0:6ae2f7bca550 13612 bool is_rejected_type_by_descriptor(AMQP_VALUE descriptor)
Azure.IoT Build 0:6ae2f7bca550 13613 {
Azure.IoT Build 0:6ae2f7bca550 13614 bool result;
Azure.IoT Build 0:6ae2f7bca550 13615
Azure.IoT Build 0:6ae2f7bca550 13616 uint64_t descriptor_ulong;
Azure.IoT Build 0:6ae2f7bca550 13617 if ((amqpvalue_get_ulong(descriptor, &descriptor_ulong) == 0) &&
Azure.IoT Build 0:6ae2f7bca550 13618 (descriptor_ulong == 37))
Azure.IoT Build 0:6ae2f7bca550 13619 {
Azure.IoT Build 0:6ae2f7bca550 13620 result = true;
Azure.IoT Build 0:6ae2f7bca550 13621 }
Azure.IoT Build 0:6ae2f7bca550 13622 else
Azure.IoT Build 0:6ae2f7bca550 13623 {
Azure.IoT Build 0:6ae2f7bca550 13624 result = false;
Azure.IoT Build 0:6ae2f7bca550 13625 }
Azure.IoT Build 0:6ae2f7bca550 13626
Azure.IoT Build 0:6ae2f7bca550 13627 return result;
Azure.IoT Build 0:6ae2f7bca550 13628 }
Azure.IoT Build 0:6ae2f7bca550 13629
Azure.IoT Build 0:6ae2f7bca550 13630
Azure.IoT Build 0:6ae2f7bca550 13631 int amqpvalue_get_rejected(AMQP_VALUE value, REJECTED_HANDLE* rejected_handle)
Azure.IoT Build 0:6ae2f7bca550 13632 {
Azure.IoT Build 0:6ae2f7bca550 13633 int result;
Azure.IoT Build 0:6ae2f7bca550 13634 REJECTED_INSTANCE* rejected_instance = (REJECTED_INSTANCE*)rejected_create_internal();
Azure.IoT Build 0:6ae2f7bca550 13635 *rejected_handle = rejected_instance;
Azure.IoT Build 0:6ae2f7bca550 13636 if (*rejected_handle == NULL)
Azure.IoT Build 0:6ae2f7bca550 13637 {
Azure.IoT Build 0:6ae2f7bca550 13638 result = __LINE__;
Azure.IoT Build 0:6ae2f7bca550 13639 }
Azure.IoT Build 0:6ae2f7bca550 13640 else
Azure.IoT Build 0:6ae2f7bca550 13641 {
Azure.IoT Build 0:6ae2f7bca550 13642 AMQP_VALUE list_value = amqpvalue_get_inplace_described_value(value);
Azure.IoT Build 0:6ae2f7bca550 13643 if (list_value == NULL)
Azure.IoT Build 0:6ae2f7bca550 13644 {
Azure.IoT Build 0:6ae2f7bca550 13645 rejected_destroy(*rejected_handle);
Azure.IoT Build 0:6ae2f7bca550 13646 result = __LINE__;
Azure.IoT Build 0:6ae2f7bca550 13647 }
Azure.IoT Build 0:6ae2f7bca550 13648 else
Azure.IoT Build 0:6ae2f7bca550 13649 {
Azure.IoT Build 0:6ae2f7bca550 13650 do
Azure.IoT Build 0:6ae2f7bca550 13651 {
Azure.IoT Build 0:6ae2f7bca550 13652 AMQP_VALUE item_value;
Azure.IoT Build 0:6ae2f7bca550 13653 /* error */
Azure.IoT Build 0:6ae2f7bca550 13654 item_value = amqpvalue_get_list_item(list_value, 0);
Azure.IoT Build 0:6ae2f7bca550 13655 if (item_value == NULL)
Azure.IoT Build 0:6ae2f7bca550 13656 {
Azure.IoT Build 0:6ae2f7bca550 13657 /* do nothing */
Azure.IoT Build 0:6ae2f7bca550 13658 }
Azure.IoT Build 0:6ae2f7bca550 13659 else
Azure.IoT Build 0:6ae2f7bca550 13660 {
Azure.IoT Build 0:6ae2f7bca550 13661 ERROR_HANDLE error;
Azure.IoT Build 0:6ae2f7bca550 13662 if (amqpvalue_get_error(item_value, &error) != 0)
Azure.IoT Build 0:6ae2f7bca550 13663 {
Azure.IoT Build 0:6ae2f7bca550 13664 if (amqpvalue_get_type(item_value) != AMQP_TYPE_NULL)
Azure.IoT Build 0:6ae2f7bca550 13665 {
Azure.IoT Build 0:6ae2f7bca550 13666 rejected_destroy(*rejected_handle);
Azure.IoT Build 0:6ae2f7bca550 13667 result = __LINE__;
Azure.IoT Build 0:6ae2f7bca550 13668 break;
Azure.IoT Build 0:6ae2f7bca550 13669 }
Azure.IoT Build 0:6ae2f7bca550 13670 }
Azure.IoT Build 0:6ae2f7bca550 13671
Azure.IoT Build 0:6ae2f7bca550 13672 amqpvalue_destroy(item_value);
Azure.IoT Build 0:6ae2f7bca550 13673 }
Azure.IoT Build 0:6ae2f7bca550 13674
Azure.IoT Build 0:6ae2f7bca550 13675 rejected_instance->composite_value = amqpvalue_clone(value);
Azure.IoT Build 0:6ae2f7bca550 13676
Azure.IoT Build 0:6ae2f7bca550 13677 result = 0;
Azure.IoT Build 0:6ae2f7bca550 13678 } while (0);
Azure.IoT Build 0:6ae2f7bca550 13679 }
Azure.IoT Build 0:6ae2f7bca550 13680 }
Azure.IoT Build 0:6ae2f7bca550 13681
Azure.IoT Build 0:6ae2f7bca550 13682 return result;
Azure.IoT Build 0:6ae2f7bca550 13683 }
Azure.IoT Build 0:6ae2f7bca550 13684
Azure.IoT Build 0:6ae2f7bca550 13685 int rejected_get_error(REJECTED_HANDLE rejected, ERROR_HANDLE* error_value)
Azure.IoT Build 0:6ae2f7bca550 13686 {
Azure.IoT Build 0:6ae2f7bca550 13687 int result;
Azure.IoT Build 0:6ae2f7bca550 13688
Azure.IoT Build 0:6ae2f7bca550 13689 if (rejected == NULL)
Azure.IoT Build 0:6ae2f7bca550 13690 {
Azure.IoT Build 0:6ae2f7bca550 13691 result = __LINE__;
Azure.IoT Build 0:6ae2f7bca550 13692 }
Azure.IoT Build 0:6ae2f7bca550 13693 else
Azure.IoT Build 0:6ae2f7bca550 13694 {
Azure.IoT Build 0:6ae2f7bca550 13695 REJECTED_INSTANCE* rejected_instance = (REJECTED_INSTANCE*)rejected;
Azure.IoT Build 0:6ae2f7bca550 13696 AMQP_VALUE item_value = amqpvalue_get_composite_item_in_place(rejected_instance->composite_value, 0);
Azure.IoT Build 0:6ae2f7bca550 13697 if (item_value == NULL)
Azure.IoT Build 0:6ae2f7bca550 13698 {
Azure.IoT Build 0:6ae2f7bca550 13699 result = __LINE__;
Azure.IoT Build 0:6ae2f7bca550 13700 }
Azure.IoT Build 0:6ae2f7bca550 13701 else
Azure.IoT Build 0:6ae2f7bca550 13702 {
Azure.IoT Build 0:6ae2f7bca550 13703 if (amqpvalue_get_error(item_value, error_value) != 0)
Azure.IoT Build 0:6ae2f7bca550 13704 {
AzureIoTClient 16:22a72cf8e416 13705 result = __LINE__;
Azure.IoT Build 0:6ae2f7bca550 13706 }
Azure.IoT Build 0:6ae2f7bca550 13707 else
Azure.IoT Build 0:6ae2f7bca550 13708 {
Azure.IoT Build 0:6ae2f7bca550 13709 result = 0;
Azure.IoT Build 0:6ae2f7bca550 13710 }
Azure.IoT Build 0:6ae2f7bca550 13711 }
Azure.IoT Build 0:6ae2f7bca550 13712 }
Azure.IoT Build 0:6ae2f7bca550 13713
Azure.IoT Build 0:6ae2f7bca550 13714 return result;
Azure.IoT Build 0:6ae2f7bca550 13715 }
Azure.IoT Build 0:6ae2f7bca550 13716
Azure.IoT Build 0:6ae2f7bca550 13717 int rejected_set_error(REJECTED_HANDLE rejected, ERROR_HANDLE error_value)
Azure.IoT Build 0:6ae2f7bca550 13718 {
Azure.IoT Build 0:6ae2f7bca550 13719 int result;
Azure.IoT Build 0:6ae2f7bca550 13720
Azure.IoT Build 0:6ae2f7bca550 13721 if (rejected == NULL)
Azure.IoT Build 0:6ae2f7bca550 13722 {
Azure.IoT Build 0:6ae2f7bca550 13723 result = __LINE__;
Azure.IoT Build 0:6ae2f7bca550 13724 }
Azure.IoT Build 0:6ae2f7bca550 13725 else
Azure.IoT Build 0:6ae2f7bca550 13726 {
Azure.IoT Build 0:6ae2f7bca550 13727 REJECTED_INSTANCE* rejected_instance = (REJECTED_INSTANCE*)rejected;
Azure.IoT Build 0:6ae2f7bca550 13728 AMQP_VALUE error_amqp_value = amqpvalue_create_error(error_value);
Azure.IoT Build 0:6ae2f7bca550 13729 if (error_amqp_value == NULL)
Azure.IoT Build 0:6ae2f7bca550 13730 {
Azure.IoT Build 0:6ae2f7bca550 13731 result = __LINE__;
Azure.IoT Build 0:6ae2f7bca550 13732 }
Azure.IoT Build 0:6ae2f7bca550 13733 else
Azure.IoT Build 0:6ae2f7bca550 13734 {
Azure.IoT Build 0:6ae2f7bca550 13735 if (amqpvalue_set_composite_item(rejected_instance->composite_value, 0, error_amqp_value) != 0)
Azure.IoT Build 0:6ae2f7bca550 13736 {
Azure.IoT Build 0:6ae2f7bca550 13737 result = __LINE__;
Azure.IoT Build 0:6ae2f7bca550 13738 }
Azure.IoT Build 0:6ae2f7bca550 13739 else
Azure.IoT Build 0:6ae2f7bca550 13740 {
Azure.IoT Build 0:6ae2f7bca550 13741 result = 0;
Azure.IoT Build 0:6ae2f7bca550 13742 }
Azure.IoT Build 0:6ae2f7bca550 13743
Azure.IoT Build 0:6ae2f7bca550 13744 amqpvalue_destroy(error_amqp_value);
Azure.IoT Build 0:6ae2f7bca550 13745 }
Azure.IoT Build 0:6ae2f7bca550 13746 }
Azure.IoT Build 0:6ae2f7bca550 13747
Azure.IoT Build 0:6ae2f7bca550 13748 return result;
Azure.IoT Build 0:6ae2f7bca550 13749 }
Azure.IoT Build 0:6ae2f7bca550 13750
Azure.IoT Build 0:6ae2f7bca550 13751
Azure.IoT Build 0:6ae2f7bca550 13752 /* released */
Azure.IoT Build 0:6ae2f7bca550 13753
Azure.IoT Build 0:6ae2f7bca550 13754 typedef struct RELEASED_INSTANCE_TAG
Azure.IoT Build 0:6ae2f7bca550 13755 {
Azure.IoT Build 0:6ae2f7bca550 13756 AMQP_VALUE composite_value;
Azure.IoT Build 0:6ae2f7bca550 13757 } RELEASED_INSTANCE;
Azure.IoT Build 0:6ae2f7bca550 13758
Azure.IoT Build 0:6ae2f7bca550 13759 static RELEASED_HANDLE released_create_internal(void)
Azure.IoT Build 0:6ae2f7bca550 13760 {
Azure.IoT Build 0:6ae2f7bca550 13761 RELEASED_INSTANCE* released_instance = (RELEASED_INSTANCE*)amqpalloc_malloc(sizeof(RELEASED_INSTANCE));
Azure.IoT Build 0:6ae2f7bca550 13762 if (released_instance != NULL)
Azure.IoT Build 0:6ae2f7bca550 13763 {
Azure.IoT Build 0:6ae2f7bca550 13764 released_instance->composite_value = NULL;
Azure.IoT Build 0:6ae2f7bca550 13765 }
Azure.IoT Build 0:6ae2f7bca550 13766
Azure.IoT Build 0:6ae2f7bca550 13767 return released_instance;
Azure.IoT Build 0:6ae2f7bca550 13768 }
Azure.IoT Build 0:6ae2f7bca550 13769
Azure.IoT Build 0:6ae2f7bca550 13770 RELEASED_HANDLE released_create(void)
Azure.IoT Build 0:6ae2f7bca550 13771 {
Azure.IoT Build 0:6ae2f7bca550 13772 RELEASED_INSTANCE* released_instance = (RELEASED_INSTANCE*)amqpalloc_malloc(sizeof(RELEASED_INSTANCE));
Azure.IoT Build 0:6ae2f7bca550 13773 if (released_instance != NULL)
Azure.IoT Build 0:6ae2f7bca550 13774 {
Azure.IoT Build 0:6ae2f7bca550 13775 released_instance->composite_value = amqpvalue_create_composite_with_ulong_descriptor(38);
Azure.IoT Build 0:6ae2f7bca550 13776 if (released_instance->composite_value == NULL)
Azure.IoT Build 0:6ae2f7bca550 13777 {
Azure.IoT Build 0:6ae2f7bca550 13778 amqpalloc_free(released_instance);
Azure.IoT Build 0:6ae2f7bca550 13779 released_instance = NULL;
Azure.IoT Build 0:6ae2f7bca550 13780 }
Azure.IoT Build 0:6ae2f7bca550 13781 }
Azure.IoT Build 0:6ae2f7bca550 13782
Azure.IoT Build 0:6ae2f7bca550 13783 return released_instance;
Azure.IoT Build 0:6ae2f7bca550 13784 }
Azure.IoT Build 0:6ae2f7bca550 13785
Azure.IoT Build 0:6ae2f7bca550 13786 RELEASED_HANDLE released_clone(RELEASED_HANDLE value)
Azure.IoT Build 0:6ae2f7bca550 13787 {
Azure.IoT Build 0:6ae2f7bca550 13788 RELEASED_INSTANCE* released_instance = (RELEASED_INSTANCE*)amqpalloc_malloc(sizeof(RELEASED_INSTANCE));
Azure.IoT Build 0:6ae2f7bca550 13789 if (released_instance != NULL)
Azure.IoT Build 0:6ae2f7bca550 13790 {
Azure.IoT Build 0:6ae2f7bca550 13791 released_instance->composite_value = amqpvalue_clone(((RELEASED_INSTANCE*)value)->composite_value);
Azure.IoT Build 0:6ae2f7bca550 13792 if (released_instance->composite_value == NULL)
Azure.IoT Build 0:6ae2f7bca550 13793 {
Azure.IoT Build 0:6ae2f7bca550 13794 amqpalloc_free(released_instance);
Azure.IoT Build 0:6ae2f7bca550 13795 released_instance = NULL;
Azure.IoT Build 0:6ae2f7bca550 13796 }
Azure.IoT Build 0:6ae2f7bca550 13797 }
Azure.IoT Build 0:6ae2f7bca550 13798
Azure.IoT Build 0:6ae2f7bca550 13799 return released_instance;
Azure.IoT Build 0:6ae2f7bca550 13800 }
Azure.IoT Build 0:6ae2f7bca550 13801
Azure.IoT Build 0:6ae2f7bca550 13802 void released_destroy(RELEASED_HANDLE released)
Azure.IoT Build 0:6ae2f7bca550 13803 {
Azure.IoT Build 0:6ae2f7bca550 13804 if (released != NULL)
Azure.IoT Build 0:6ae2f7bca550 13805 {
Azure.IoT Build 0:6ae2f7bca550 13806 RELEASED_INSTANCE* released_instance = (RELEASED_INSTANCE*)released;
Azure.IoT Build 0:6ae2f7bca550 13807 amqpvalue_destroy(released_instance->composite_value);
Azure.IoT Build 0:6ae2f7bca550 13808 amqpalloc_free(released_instance);
Azure.IoT Build 0:6ae2f7bca550 13809 }
Azure.IoT Build 0:6ae2f7bca550 13810 }
Azure.IoT Build 0:6ae2f7bca550 13811
Azure.IoT Build 0:6ae2f7bca550 13812 AMQP_VALUE amqpvalue_create_released(RELEASED_HANDLE released)
Azure.IoT Build 0:6ae2f7bca550 13813 {
Azure.IoT Build 0:6ae2f7bca550 13814 AMQP_VALUE result;
Azure.IoT Build 0:6ae2f7bca550 13815
Azure.IoT Build 0:6ae2f7bca550 13816 if (released == NULL)
Azure.IoT Build 0:6ae2f7bca550 13817 {
Azure.IoT Build 0:6ae2f7bca550 13818 result = NULL;
Azure.IoT Build 0:6ae2f7bca550 13819 }
Azure.IoT Build 0:6ae2f7bca550 13820 else
Azure.IoT Build 0:6ae2f7bca550 13821 {
Azure.IoT Build 0:6ae2f7bca550 13822 RELEASED_INSTANCE* released_instance = (RELEASED_INSTANCE*)released;
Azure.IoT Build 0:6ae2f7bca550 13823 result = amqpvalue_clone(released_instance->composite_value);
Azure.IoT Build 0:6ae2f7bca550 13824 }
Azure.IoT Build 0:6ae2f7bca550 13825
Azure.IoT Build 0:6ae2f7bca550 13826 return result;
Azure.IoT Build 0:6ae2f7bca550 13827 }
Azure.IoT Build 0:6ae2f7bca550 13828
Azure.IoT Build 0:6ae2f7bca550 13829 bool is_released_type_by_descriptor(AMQP_VALUE descriptor)
Azure.IoT Build 0:6ae2f7bca550 13830 {
Azure.IoT Build 0:6ae2f7bca550 13831 bool result;
Azure.IoT Build 0:6ae2f7bca550 13832
Azure.IoT Build 0:6ae2f7bca550 13833 uint64_t descriptor_ulong;
Azure.IoT Build 0:6ae2f7bca550 13834 if ((amqpvalue_get_ulong(descriptor, &descriptor_ulong) == 0) &&
Azure.IoT Build 0:6ae2f7bca550 13835 (descriptor_ulong == 38))
Azure.IoT Build 0:6ae2f7bca550 13836 {
Azure.IoT Build 0:6ae2f7bca550 13837 result = true;
Azure.IoT Build 0:6ae2f7bca550 13838 }
Azure.IoT Build 0:6ae2f7bca550 13839 else
Azure.IoT Build 0:6ae2f7bca550 13840 {
Azure.IoT Build 0:6ae2f7bca550 13841 result = false;
Azure.IoT Build 0:6ae2f7bca550 13842 }
Azure.IoT Build 0:6ae2f7bca550 13843
Azure.IoT Build 0:6ae2f7bca550 13844 return result;
Azure.IoT Build 0:6ae2f7bca550 13845 }
Azure.IoT Build 0:6ae2f7bca550 13846
Azure.IoT Build 0:6ae2f7bca550 13847
Azure.IoT Build 0:6ae2f7bca550 13848 int amqpvalue_get_released(AMQP_VALUE value, RELEASED_HANDLE* released_handle)
Azure.IoT Build 0:6ae2f7bca550 13849 {
Azure.IoT Build 0:6ae2f7bca550 13850 int result;
Azure.IoT Build 0:6ae2f7bca550 13851 RELEASED_INSTANCE* released_instance = (RELEASED_INSTANCE*)released_create_internal();
Azure.IoT Build 0:6ae2f7bca550 13852 *released_handle = released_instance;
Azure.IoT Build 0:6ae2f7bca550 13853 if (*released_handle == NULL)
Azure.IoT Build 0:6ae2f7bca550 13854 {
Azure.IoT Build 0:6ae2f7bca550 13855 result = __LINE__;
Azure.IoT Build 0:6ae2f7bca550 13856 }
Azure.IoT Build 0:6ae2f7bca550 13857 else
Azure.IoT Build 0:6ae2f7bca550 13858 {
Azure.IoT Build 0:6ae2f7bca550 13859 AMQP_VALUE list_value = amqpvalue_get_inplace_described_value(value);
Azure.IoT Build 0:6ae2f7bca550 13860 if (list_value == NULL)
Azure.IoT Build 0:6ae2f7bca550 13861 {
Azure.IoT Build 0:6ae2f7bca550 13862 released_destroy(*released_handle);
Azure.IoT Build 0:6ae2f7bca550 13863 result = __LINE__;
Azure.IoT Build 0:6ae2f7bca550 13864 }
Azure.IoT Build 0:6ae2f7bca550 13865 else
Azure.IoT Build 0:6ae2f7bca550 13866 {
Azure.IoT Build 0:6ae2f7bca550 13867 do
Azure.IoT Build 0:6ae2f7bca550 13868 {
Azure.IoT Build 0:6ae2f7bca550 13869
Azure.IoT Build 0:6ae2f7bca550 13870 released_instance->composite_value = amqpvalue_clone(value);
Azure.IoT Build 0:6ae2f7bca550 13871
Azure.IoT Build 0:6ae2f7bca550 13872 result = 0;
Azure.IoT Build 0:6ae2f7bca550 13873 } while (0);
Azure.IoT Build 0:6ae2f7bca550 13874 }
Azure.IoT Build 0:6ae2f7bca550 13875 }
Azure.IoT Build 0:6ae2f7bca550 13876
Azure.IoT Build 0:6ae2f7bca550 13877 return result;
Azure.IoT Build 0:6ae2f7bca550 13878 }
Azure.IoT Build 0:6ae2f7bca550 13879
Azure.IoT Build 0:6ae2f7bca550 13880
Azure.IoT Build 0:6ae2f7bca550 13881 /* modified */
Azure.IoT Build 0:6ae2f7bca550 13882
Azure.IoT Build 0:6ae2f7bca550 13883 typedef struct MODIFIED_INSTANCE_TAG
Azure.IoT Build 0:6ae2f7bca550 13884 {
Azure.IoT Build 0:6ae2f7bca550 13885 AMQP_VALUE composite_value;
Azure.IoT Build 0:6ae2f7bca550 13886 } MODIFIED_INSTANCE;
Azure.IoT Build 0:6ae2f7bca550 13887
Azure.IoT Build 0:6ae2f7bca550 13888 static MODIFIED_HANDLE modified_create_internal(void)
Azure.IoT Build 0:6ae2f7bca550 13889 {
Azure.IoT Build 0:6ae2f7bca550 13890 MODIFIED_INSTANCE* modified_instance = (MODIFIED_INSTANCE*)amqpalloc_malloc(sizeof(MODIFIED_INSTANCE));
Azure.IoT Build 0:6ae2f7bca550 13891 if (modified_instance != NULL)
Azure.IoT Build 0:6ae2f7bca550 13892 {
Azure.IoT Build 0:6ae2f7bca550 13893 modified_instance->composite_value = NULL;
Azure.IoT Build 0:6ae2f7bca550 13894 }
Azure.IoT Build 0:6ae2f7bca550 13895
Azure.IoT Build 0:6ae2f7bca550 13896 return modified_instance;
Azure.IoT Build 0:6ae2f7bca550 13897 }
Azure.IoT Build 0:6ae2f7bca550 13898
Azure.IoT Build 0:6ae2f7bca550 13899 MODIFIED_HANDLE modified_create(void)
Azure.IoT Build 0:6ae2f7bca550 13900 {
Azure.IoT Build 0:6ae2f7bca550 13901 MODIFIED_INSTANCE* modified_instance = (MODIFIED_INSTANCE*)amqpalloc_malloc(sizeof(MODIFIED_INSTANCE));
Azure.IoT Build 0:6ae2f7bca550 13902 if (modified_instance != NULL)
Azure.IoT Build 0:6ae2f7bca550 13903 {
Azure.IoT Build 0:6ae2f7bca550 13904 modified_instance->composite_value = amqpvalue_create_composite_with_ulong_descriptor(39);
Azure.IoT Build 0:6ae2f7bca550 13905 if (modified_instance->composite_value == NULL)
Azure.IoT Build 0:6ae2f7bca550 13906 {
Azure.IoT Build 0:6ae2f7bca550 13907 amqpalloc_free(modified_instance);
Azure.IoT Build 0:6ae2f7bca550 13908 modified_instance = NULL;
Azure.IoT Build 0:6ae2f7bca550 13909 }
Azure.IoT Build 0:6ae2f7bca550 13910 }
Azure.IoT Build 0:6ae2f7bca550 13911
Azure.IoT Build 0:6ae2f7bca550 13912 return modified_instance;
Azure.IoT Build 0:6ae2f7bca550 13913 }
Azure.IoT Build 0:6ae2f7bca550 13914
Azure.IoT Build 0:6ae2f7bca550 13915 MODIFIED_HANDLE modified_clone(MODIFIED_HANDLE value)
Azure.IoT Build 0:6ae2f7bca550 13916 {
Azure.IoT Build 0:6ae2f7bca550 13917 MODIFIED_INSTANCE* modified_instance = (MODIFIED_INSTANCE*)amqpalloc_malloc(sizeof(MODIFIED_INSTANCE));
Azure.IoT Build 0:6ae2f7bca550 13918 if (modified_instance != NULL)
Azure.IoT Build 0:6ae2f7bca550 13919 {
Azure.IoT Build 0:6ae2f7bca550 13920 modified_instance->composite_value = amqpvalue_clone(((MODIFIED_INSTANCE*)value)->composite_value);
Azure.IoT Build 0:6ae2f7bca550 13921 if (modified_instance->composite_value == NULL)
Azure.IoT Build 0:6ae2f7bca550 13922 {
Azure.IoT Build 0:6ae2f7bca550 13923 amqpalloc_free(modified_instance);
Azure.IoT Build 0:6ae2f7bca550 13924 modified_instance = NULL;
Azure.IoT Build 0:6ae2f7bca550 13925 }
Azure.IoT Build 0:6ae2f7bca550 13926 }
Azure.IoT Build 0:6ae2f7bca550 13927
Azure.IoT Build 0:6ae2f7bca550 13928 return modified_instance;
Azure.IoT Build 0:6ae2f7bca550 13929 }
Azure.IoT Build 0:6ae2f7bca550 13930
Azure.IoT Build 0:6ae2f7bca550 13931 void modified_destroy(MODIFIED_HANDLE modified)
Azure.IoT Build 0:6ae2f7bca550 13932 {
Azure.IoT Build 0:6ae2f7bca550 13933 if (modified != NULL)
Azure.IoT Build 0:6ae2f7bca550 13934 {
Azure.IoT Build 0:6ae2f7bca550 13935 MODIFIED_INSTANCE* modified_instance = (MODIFIED_INSTANCE*)modified;
Azure.IoT Build 0:6ae2f7bca550 13936 amqpvalue_destroy(modified_instance->composite_value);
Azure.IoT Build 0:6ae2f7bca550 13937 amqpalloc_free(modified_instance);
Azure.IoT Build 0:6ae2f7bca550 13938 }
Azure.IoT Build 0:6ae2f7bca550 13939 }
Azure.IoT Build 0:6ae2f7bca550 13940
Azure.IoT Build 0:6ae2f7bca550 13941 AMQP_VALUE amqpvalue_create_modified(MODIFIED_HANDLE modified)
Azure.IoT Build 0:6ae2f7bca550 13942 {
Azure.IoT Build 0:6ae2f7bca550 13943 AMQP_VALUE result;
Azure.IoT Build 0:6ae2f7bca550 13944
Azure.IoT Build 0:6ae2f7bca550 13945 if (modified == NULL)
Azure.IoT Build 0:6ae2f7bca550 13946 {
Azure.IoT Build 0:6ae2f7bca550 13947 result = NULL;
Azure.IoT Build 0:6ae2f7bca550 13948 }
Azure.IoT Build 0:6ae2f7bca550 13949 else
Azure.IoT Build 0:6ae2f7bca550 13950 {
Azure.IoT Build 0:6ae2f7bca550 13951 MODIFIED_INSTANCE* modified_instance = (MODIFIED_INSTANCE*)modified;
Azure.IoT Build 0:6ae2f7bca550 13952 result = amqpvalue_clone(modified_instance->composite_value);
Azure.IoT Build 0:6ae2f7bca550 13953 }
Azure.IoT Build 0:6ae2f7bca550 13954
Azure.IoT Build 0:6ae2f7bca550 13955 return result;
Azure.IoT Build 0:6ae2f7bca550 13956 }
Azure.IoT Build 0:6ae2f7bca550 13957
Azure.IoT Build 0:6ae2f7bca550 13958 bool is_modified_type_by_descriptor(AMQP_VALUE descriptor)
Azure.IoT Build 0:6ae2f7bca550 13959 {
Azure.IoT Build 0:6ae2f7bca550 13960 bool result;
Azure.IoT Build 0:6ae2f7bca550 13961
Azure.IoT Build 0:6ae2f7bca550 13962 uint64_t descriptor_ulong;
Azure.IoT Build 0:6ae2f7bca550 13963 if ((amqpvalue_get_ulong(descriptor, &descriptor_ulong) == 0) &&
Azure.IoT Build 0:6ae2f7bca550 13964 (descriptor_ulong == 39))
Azure.IoT Build 0:6ae2f7bca550 13965 {
Azure.IoT Build 0:6ae2f7bca550 13966 result = true;
Azure.IoT Build 0:6ae2f7bca550 13967 }
Azure.IoT Build 0:6ae2f7bca550 13968 else
Azure.IoT Build 0:6ae2f7bca550 13969 {
Azure.IoT Build 0:6ae2f7bca550 13970 result = false;
Azure.IoT Build 0:6ae2f7bca550 13971 }
Azure.IoT Build 0:6ae2f7bca550 13972
Azure.IoT Build 0:6ae2f7bca550 13973 return result;
Azure.IoT Build 0:6ae2f7bca550 13974 }
Azure.IoT Build 0:6ae2f7bca550 13975
Azure.IoT Build 0:6ae2f7bca550 13976
Azure.IoT Build 0:6ae2f7bca550 13977 int amqpvalue_get_modified(AMQP_VALUE value, MODIFIED_HANDLE* modified_handle)
Azure.IoT Build 0:6ae2f7bca550 13978 {
Azure.IoT Build 0:6ae2f7bca550 13979 int result;
Azure.IoT Build 0:6ae2f7bca550 13980 MODIFIED_INSTANCE* modified_instance = (MODIFIED_INSTANCE*)modified_create_internal();
Azure.IoT Build 0:6ae2f7bca550 13981 *modified_handle = modified_instance;
Azure.IoT Build 0:6ae2f7bca550 13982 if (*modified_handle == NULL)
Azure.IoT Build 0:6ae2f7bca550 13983 {
Azure.IoT Build 0:6ae2f7bca550 13984 result = __LINE__;
Azure.IoT Build 0:6ae2f7bca550 13985 }
Azure.IoT Build 0:6ae2f7bca550 13986 else
Azure.IoT Build 0:6ae2f7bca550 13987 {
Azure.IoT Build 0:6ae2f7bca550 13988 AMQP_VALUE list_value = amqpvalue_get_inplace_described_value(value);
Azure.IoT Build 0:6ae2f7bca550 13989 if (list_value == NULL)
Azure.IoT Build 0:6ae2f7bca550 13990 {
Azure.IoT Build 0:6ae2f7bca550 13991 modified_destroy(*modified_handle);
Azure.IoT Build 0:6ae2f7bca550 13992 result = __LINE__;
Azure.IoT Build 0:6ae2f7bca550 13993 }
Azure.IoT Build 0:6ae2f7bca550 13994 else
Azure.IoT Build 0:6ae2f7bca550 13995 {
Azure.IoT Build 0:6ae2f7bca550 13996 do
Azure.IoT Build 0:6ae2f7bca550 13997 {
Azure.IoT Build 0:6ae2f7bca550 13998 AMQP_VALUE item_value;
Azure.IoT Build 0:6ae2f7bca550 13999 /* delivery-failed */
Azure.IoT Build 0:6ae2f7bca550 14000 item_value = amqpvalue_get_list_item(list_value, 0);
Azure.IoT Build 0:6ae2f7bca550 14001 if (item_value == NULL)
Azure.IoT Build 0:6ae2f7bca550 14002 {
Azure.IoT Build 0:6ae2f7bca550 14003 /* do nothing */
Azure.IoT Build 0:6ae2f7bca550 14004 }
Azure.IoT Build 0:6ae2f7bca550 14005 else
Azure.IoT Build 0:6ae2f7bca550 14006 {
Azure.IoT Build 0:6ae2f7bca550 14007 bool delivery_failed;
Azure.IoT Build 0:6ae2f7bca550 14008 if (amqpvalue_get_boolean(item_value, &delivery_failed) != 0)
Azure.IoT Build 0:6ae2f7bca550 14009 {
Azure.IoT Build 0:6ae2f7bca550 14010 if (amqpvalue_get_type(item_value) != AMQP_TYPE_NULL)
Azure.IoT Build 0:6ae2f7bca550 14011 {
Azure.IoT Build 0:6ae2f7bca550 14012 modified_destroy(*modified_handle);
Azure.IoT Build 0:6ae2f7bca550 14013 result = __LINE__;
Azure.IoT Build 0:6ae2f7bca550 14014 break;
Azure.IoT Build 0:6ae2f7bca550 14015 }
Azure.IoT Build 0:6ae2f7bca550 14016 }
Azure.IoT Build 0:6ae2f7bca550 14017
Azure.IoT Build 0:6ae2f7bca550 14018 amqpvalue_destroy(item_value);
Azure.IoT Build 0:6ae2f7bca550 14019 }
Azure.IoT Build 0:6ae2f7bca550 14020 /* undeliverable-here */
Azure.IoT Build 0:6ae2f7bca550 14021 item_value = amqpvalue_get_list_item(list_value, 1);
Azure.IoT Build 0:6ae2f7bca550 14022 if (item_value == NULL)
Azure.IoT Build 0:6ae2f7bca550 14023 {
Azure.IoT Build 0:6ae2f7bca550 14024 /* do nothing */
Azure.IoT Build 0:6ae2f7bca550 14025 }
Azure.IoT Build 0:6ae2f7bca550 14026 else
Azure.IoT Build 0:6ae2f7bca550 14027 {
Azure.IoT Build 0:6ae2f7bca550 14028 bool undeliverable_here;
Azure.IoT Build 0:6ae2f7bca550 14029 if (amqpvalue_get_boolean(item_value, &undeliverable_here) != 0)
Azure.IoT Build 0:6ae2f7bca550 14030 {
Azure.IoT Build 0:6ae2f7bca550 14031 if (amqpvalue_get_type(item_value) != AMQP_TYPE_NULL)
Azure.IoT Build 0:6ae2f7bca550 14032 {
Azure.IoT Build 0:6ae2f7bca550 14033 modified_destroy(*modified_handle);
Azure.IoT Build 0:6ae2f7bca550 14034 result = __LINE__;
Azure.IoT Build 0:6ae2f7bca550 14035 break;
Azure.IoT Build 0:6ae2f7bca550 14036 }
Azure.IoT Build 0:6ae2f7bca550 14037 }
Azure.IoT Build 0:6ae2f7bca550 14038
Azure.IoT Build 0:6ae2f7bca550 14039 amqpvalue_destroy(item_value);
Azure.IoT Build 0:6ae2f7bca550 14040 }
Azure.IoT Build 0:6ae2f7bca550 14041 /* message-annotations */
Azure.IoT Build 0:6ae2f7bca550 14042 item_value = amqpvalue_get_list_item(list_value, 2);
Azure.IoT Build 0:6ae2f7bca550 14043 if (item_value == NULL)
Azure.IoT Build 0:6ae2f7bca550 14044 {
Azure.IoT Build 0:6ae2f7bca550 14045 /* do nothing */
Azure.IoT Build 0:6ae2f7bca550 14046 }
Azure.IoT Build 0:6ae2f7bca550 14047 else
Azure.IoT Build 0:6ae2f7bca550 14048 {
Azure.IoT Build 0:6ae2f7bca550 14049 fields message_annotations;
Azure.IoT Build 0:6ae2f7bca550 14050 if (amqpvalue_get_fields(item_value, &message_annotations) != 0)
Azure.IoT Build 0:6ae2f7bca550 14051 {
Azure.IoT Build 0:6ae2f7bca550 14052 if (amqpvalue_get_type(item_value) != AMQP_TYPE_NULL)
Azure.IoT Build 0:6ae2f7bca550 14053 {
Azure.IoT Build 0:6ae2f7bca550 14054 modified_destroy(*modified_handle);
Azure.IoT Build 0:6ae2f7bca550 14055 result = __LINE__;
Azure.IoT Build 0:6ae2f7bca550 14056 break;
Azure.IoT Build 0:6ae2f7bca550 14057 }
Azure.IoT Build 0:6ae2f7bca550 14058 }
Azure.IoT Build 0:6ae2f7bca550 14059
Azure.IoT Build 0:6ae2f7bca550 14060 amqpvalue_destroy(item_value);
Azure.IoT Build 0:6ae2f7bca550 14061 }
Azure.IoT Build 0:6ae2f7bca550 14062
Azure.IoT Build 0:6ae2f7bca550 14063 modified_instance->composite_value = amqpvalue_clone(value);
Azure.IoT Build 0:6ae2f7bca550 14064
Azure.IoT Build 0:6ae2f7bca550 14065 result = 0;
Azure.IoT Build 0:6ae2f7bca550 14066 } while (0);
Azure.IoT Build 0:6ae2f7bca550 14067 }
Azure.IoT Build 0:6ae2f7bca550 14068 }
Azure.IoT Build 0:6ae2f7bca550 14069
Azure.IoT Build 0:6ae2f7bca550 14070 return result;
Azure.IoT Build 0:6ae2f7bca550 14071 }
Azure.IoT Build 0:6ae2f7bca550 14072
Azure.IoT Build 0:6ae2f7bca550 14073 int modified_get_delivery_failed(MODIFIED_HANDLE modified, bool* delivery_failed_value)
Azure.IoT Build 0:6ae2f7bca550 14074 {
Azure.IoT Build 0:6ae2f7bca550 14075 int result;
Azure.IoT Build 0:6ae2f7bca550 14076
Azure.IoT Build 0:6ae2f7bca550 14077 if (modified == NULL)
Azure.IoT Build 0:6ae2f7bca550 14078 {
Azure.IoT Build 0:6ae2f7bca550 14079 result = __LINE__;
Azure.IoT Build 0:6ae2f7bca550 14080 }
Azure.IoT Build 0:6ae2f7bca550 14081 else
Azure.IoT Build 0:6ae2f7bca550 14082 {
Azure.IoT Build 0:6ae2f7bca550 14083 MODIFIED_INSTANCE* modified_instance = (MODIFIED_INSTANCE*)modified;
Azure.IoT Build 0:6ae2f7bca550 14084 AMQP_VALUE item_value = amqpvalue_get_composite_item_in_place(modified_instance->composite_value, 0);
Azure.IoT Build 0:6ae2f7bca550 14085 if (item_value == NULL)
Azure.IoT Build 0:6ae2f7bca550 14086 {
Azure.IoT Build 0:6ae2f7bca550 14087 result = __LINE__;
Azure.IoT Build 0:6ae2f7bca550 14088 }
Azure.IoT Build 0:6ae2f7bca550 14089 else
Azure.IoT Build 0:6ae2f7bca550 14090 {
Azure.IoT Build 0:6ae2f7bca550 14091 if (amqpvalue_get_boolean(item_value, delivery_failed_value) != 0)
Azure.IoT Build 0:6ae2f7bca550 14092 {
AzureIoTClient 16:22a72cf8e416 14093 result = __LINE__;
Azure.IoT Build 0:6ae2f7bca550 14094 }
Azure.IoT Build 0:6ae2f7bca550 14095 else
Azure.IoT Build 0:6ae2f7bca550 14096 {
Azure.IoT Build 0:6ae2f7bca550 14097 result = 0;
Azure.IoT Build 0:6ae2f7bca550 14098 }
Azure.IoT Build 0:6ae2f7bca550 14099 }
Azure.IoT Build 0:6ae2f7bca550 14100 }
Azure.IoT Build 0:6ae2f7bca550 14101
Azure.IoT Build 0:6ae2f7bca550 14102 return result;
Azure.IoT Build 0:6ae2f7bca550 14103 }
Azure.IoT Build 0:6ae2f7bca550 14104
Azure.IoT Build 0:6ae2f7bca550 14105 int modified_set_delivery_failed(MODIFIED_HANDLE modified, bool delivery_failed_value)
Azure.IoT Build 0:6ae2f7bca550 14106 {
Azure.IoT Build 0:6ae2f7bca550 14107 int result;
Azure.IoT Build 0:6ae2f7bca550 14108
Azure.IoT Build 0:6ae2f7bca550 14109 if (modified == NULL)
Azure.IoT Build 0:6ae2f7bca550 14110 {
Azure.IoT Build 0:6ae2f7bca550 14111 result = __LINE__;
Azure.IoT Build 0:6ae2f7bca550 14112 }
Azure.IoT Build 0:6ae2f7bca550 14113 else
Azure.IoT Build 0:6ae2f7bca550 14114 {
Azure.IoT Build 0:6ae2f7bca550 14115 MODIFIED_INSTANCE* modified_instance = (MODIFIED_INSTANCE*)modified;
Azure.IoT Build 0:6ae2f7bca550 14116 AMQP_VALUE delivery_failed_amqp_value = amqpvalue_create_boolean(delivery_failed_value);
Azure.IoT Build 0:6ae2f7bca550 14117 if (delivery_failed_amqp_value == NULL)
Azure.IoT Build 0:6ae2f7bca550 14118 {
Azure.IoT Build 0:6ae2f7bca550 14119 result = __LINE__;
Azure.IoT Build 0:6ae2f7bca550 14120 }
Azure.IoT Build 0:6ae2f7bca550 14121 else
Azure.IoT Build 0:6ae2f7bca550 14122 {
Azure.IoT Build 0:6ae2f7bca550 14123 if (amqpvalue_set_composite_item(modified_instance->composite_value, 0, delivery_failed_amqp_value) != 0)
Azure.IoT Build 0:6ae2f7bca550 14124 {
Azure.IoT Build 0:6ae2f7bca550 14125 result = __LINE__;
Azure.IoT Build 0:6ae2f7bca550 14126 }
Azure.IoT Build 0:6ae2f7bca550 14127 else
Azure.IoT Build 0:6ae2f7bca550 14128 {
Azure.IoT Build 0:6ae2f7bca550 14129 result = 0;
Azure.IoT Build 0:6ae2f7bca550 14130 }
Azure.IoT Build 0:6ae2f7bca550 14131
Azure.IoT Build 0:6ae2f7bca550 14132 amqpvalue_destroy(delivery_failed_amqp_value);
Azure.IoT Build 0:6ae2f7bca550 14133 }
Azure.IoT Build 0:6ae2f7bca550 14134 }
Azure.IoT Build 0:6ae2f7bca550 14135
Azure.IoT Build 0:6ae2f7bca550 14136 return result;
Azure.IoT Build 0:6ae2f7bca550 14137 }
Azure.IoT Build 0:6ae2f7bca550 14138
Azure.IoT Build 0:6ae2f7bca550 14139 int modified_get_undeliverable_here(MODIFIED_HANDLE modified, bool* undeliverable_here_value)
Azure.IoT Build 0:6ae2f7bca550 14140 {
Azure.IoT Build 0:6ae2f7bca550 14141 int result;
Azure.IoT Build 0:6ae2f7bca550 14142
Azure.IoT Build 0:6ae2f7bca550 14143 if (modified == NULL)
Azure.IoT Build 0:6ae2f7bca550 14144 {
Azure.IoT Build 0:6ae2f7bca550 14145 result = __LINE__;
Azure.IoT Build 0:6ae2f7bca550 14146 }
Azure.IoT Build 0:6ae2f7bca550 14147 else
Azure.IoT Build 0:6ae2f7bca550 14148 {
Azure.IoT Build 0:6ae2f7bca550 14149 MODIFIED_INSTANCE* modified_instance = (MODIFIED_INSTANCE*)modified;
Azure.IoT Build 0:6ae2f7bca550 14150 AMQP_VALUE item_value = amqpvalue_get_composite_item_in_place(modified_instance->composite_value, 1);
Azure.IoT Build 0:6ae2f7bca550 14151 if (item_value == NULL)
Azure.IoT Build 0:6ae2f7bca550 14152 {
Azure.IoT Build 0:6ae2f7bca550 14153 result = __LINE__;
Azure.IoT Build 0:6ae2f7bca550 14154 }
Azure.IoT Build 0:6ae2f7bca550 14155 else
Azure.IoT Build 0:6ae2f7bca550 14156 {
Azure.IoT Build 0:6ae2f7bca550 14157 if (amqpvalue_get_boolean(item_value, undeliverable_here_value) != 0)
Azure.IoT Build 0:6ae2f7bca550 14158 {
AzureIoTClient 16:22a72cf8e416 14159 result = __LINE__;
Azure.IoT Build 0:6ae2f7bca550 14160 }
Azure.IoT Build 0:6ae2f7bca550 14161 else
Azure.IoT Build 0:6ae2f7bca550 14162 {
Azure.IoT Build 0:6ae2f7bca550 14163 result = 0;
Azure.IoT Build 0:6ae2f7bca550 14164 }
Azure.IoT Build 0:6ae2f7bca550 14165 }
Azure.IoT Build 0:6ae2f7bca550 14166 }
Azure.IoT Build 0:6ae2f7bca550 14167
Azure.IoT Build 0:6ae2f7bca550 14168 return result;
Azure.IoT Build 0:6ae2f7bca550 14169 }
Azure.IoT Build 0:6ae2f7bca550 14170
Azure.IoT Build 0:6ae2f7bca550 14171 int modified_set_undeliverable_here(MODIFIED_HANDLE modified, bool undeliverable_here_value)
Azure.IoT Build 0:6ae2f7bca550 14172 {
Azure.IoT Build 0:6ae2f7bca550 14173 int result;
Azure.IoT Build 0:6ae2f7bca550 14174
Azure.IoT Build 0:6ae2f7bca550 14175 if (modified == NULL)
Azure.IoT Build 0:6ae2f7bca550 14176 {
Azure.IoT Build 0:6ae2f7bca550 14177 result = __LINE__;
Azure.IoT Build 0:6ae2f7bca550 14178 }
Azure.IoT Build 0:6ae2f7bca550 14179 else
Azure.IoT Build 0:6ae2f7bca550 14180 {
Azure.IoT Build 0:6ae2f7bca550 14181 MODIFIED_INSTANCE* modified_instance = (MODIFIED_INSTANCE*)modified;
Azure.IoT Build 0:6ae2f7bca550 14182 AMQP_VALUE undeliverable_here_amqp_value = amqpvalue_create_boolean(undeliverable_here_value);
Azure.IoT Build 0:6ae2f7bca550 14183 if (undeliverable_here_amqp_value == NULL)
Azure.IoT Build 0:6ae2f7bca550 14184 {
Azure.IoT Build 0:6ae2f7bca550 14185 result = __LINE__;
Azure.IoT Build 0:6ae2f7bca550 14186 }
Azure.IoT Build 0:6ae2f7bca550 14187 else
Azure.IoT Build 0:6ae2f7bca550 14188 {
Azure.IoT Build 0:6ae2f7bca550 14189 if (amqpvalue_set_composite_item(modified_instance->composite_value, 1, undeliverable_here_amqp_value) != 0)
Azure.IoT Build 0:6ae2f7bca550 14190 {
Azure.IoT Build 0:6ae2f7bca550 14191 result = __LINE__;
Azure.IoT Build 0:6ae2f7bca550 14192 }
Azure.IoT Build 0:6ae2f7bca550 14193 else
Azure.IoT Build 0:6ae2f7bca550 14194 {
Azure.IoT Build 0:6ae2f7bca550 14195 result = 0;
Azure.IoT Build 0:6ae2f7bca550 14196 }
Azure.IoT Build 0:6ae2f7bca550 14197
Azure.IoT Build 0:6ae2f7bca550 14198 amqpvalue_destroy(undeliverable_here_amqp_value);
Azure.IoT Build 0:6ae2f7bca550 14199 }
Azure.IoT Build 0:6ae2f7bca550 14200 }
Azure.IoT Build 0:6ae2f7bca550 14201
Azure.IoT Build 0:6ae2f7bca550 14202 return result;
Azure.IoT Build 0:6ae2f7bca550 14203 }
Azure.IoT Build 0:6ae2f7bca550 14204
Azure.IoT Build 0:6ae2f7bca550 14205 int modified_get_message_annotations(MODIFIED_HANDLE modified, fields* message_annotations_value)
Azure.IoT Build 0:6ae2f7bca550 14206 {
Azure.IoT Build 0:6ae2f7bca550 14207 int result;
Azure.IoT Build 0:6ae2f7bca550 14208
Azure.IoT Build 0:6ae2f7bca550 14209 if (modified == NULL)
Azure.IoT Build 0:6ae2f7bca550 14210 {
Azure.IoT Build 0:6ae2f7bca550 14211 result = __LINE__;
Azure.IoT Build 0:6ae2f7bca550 14212 }
Azure.IoT Build 0:6ae2f7bca550 14213 else
Azure.IoT Build 0:6ae2f7bca550 14214 {
Azure.IoT Build 0:6ae2f7bca550 14215 MODIFIED_INSTANCE* modified_instance = (MODIFIED_INSTANCE*)modified;
Azure.IoT Build 0:6ae2f7bca550 14216 AMQP_VALUE item_value = amqpvalue_get_composite_item_in_place(modified_instance->composite_value, 2);
Azure.IoT Build 0:6ae2f7bca550 14217 if (item_value == NULL)
Azure.IoT Build 0:6ae2f7bca550 14218 {
Azure.IoT Build 0:6ae2f7bca550 14219 result = __LINE__;
Azure.IoT Build 0:6ae2f7bca550 14220 }
Azure.IoT Build 0:6ae2f7bca550 14221 else
Azure.IoT Build 0:6ae2f7bca550 14222 {
Azure.IoT Build 0:6ae2f7bca550 14223 if (amqpvalue_get_fields(item_value, message_annotations_value) != 0)
Azure.IoT Build 0:6ae2f7bca550 14224 {
AzureIoTClient 16:22a72cf8e416 14225 result = __LINE__;
Azure.IoT Build 0:6ae2f7bca550 14226 }
Azure.IoT Build 0:6ae2f7bca550 14227 else
Azure.IoT Build 0:6ae2f7bca550 14228 {
Azure.IoT Build 0:6ae2f7bca550 14229 result = 0;
Azure.IoT Build 0:6ae2f7bca550 14230 }
Azure.IoT Build 0:6ae2f7bca550 14231 }
Azure.IoT Build 0:6ae2f7bca550 14232 }
Azure.IoT Build 0:6ae2f7bca550 14233
Azure.IoT Build 0:6ae2f7bca550 14234 return result;
Azure.IoT Build 0:6ae2f7bca550 14235 }
Azure.IoT Build 0:6ae2f7bca550 14236
Azure.IoT Build 0:6ae2f7bca550 14237 int modified_set_message_annotations(MODIFIED_HANDLE modified, fields message_annotations_value)
Azure.IoT Build 0:6ae2f7bca550 14238 {
Azure.IoT Build 0:6ae2f7bca550 14239 int result;
Azure.IoT Build 0:6ae2f7bca550 14240
Azure.IoT Build 0:6ae2f7bca550 14241 if (modified == NULL)
Azure.IoT Build 0:6ae2f7bca550 14242 {
Azure.IoT Build 0:6ae2f7bca550 14243 result = __LINE__;
Azure.IoT Build 0:6ae2f7bca550 14244 }
Azure.IoT Build 0:6ae2f7bca550 14245 else
Azure.IoT Build 0:6ae2f7bca550 14246 {
Azure.IoT Build 0:6ae2f7bca550 14247 MODIFIED_INSTANCE* modified_instance = (MODIFIED_INSTANCE*)modified;
Azure.IoT Build 0:6ae2f7bca550 14248 AMQP_VALUE message_annotations_amqp_value = amqpvalue_create_fields(message_annotations_value);
Azure.IoT Build 0:6ae2f7bca550 14249 if (message_annotations_amqp_value == NULL)
Azure.IoT Build 0:6ae2f7bca550 14250 {
Azure.IoT Build 0:6ae2f7bca550 14251 result = __LINE__;
Azure.IoT Build 0:6ae2f7bca550 14252 }
Azure.IoT Build 0:6ae2f7bca550 14253 else
Azure.IoT Build 0:6ae2f7bca550 14254 {
Azure.IoT Build 0:6ae2f7bca550 14255 if (amqpvalue_set_composite_item(modified_instance->composite_value, 2, message_annotations_amqp_value) != 0)
Azure.IoT Build 0:6ae2f7bca550 14256 {
Azure.IoT Build 0:6ae2f7bca550 14257 result = __LINE__;
Azure.IoT Build 0:6ae2f7bca550 14258 }
Azure.IoT Build 0:6ae2f7bca550 14259 else
Azure.IoT Build 0:6ae2f7bca550 14260 {
Azure.IoT Build 0:6ae2f7bca550 14261 result = 0;
Azure.IoT Build 0:6ae2f7bca550 14262 }
Azure.IoT Build 0:6ae2f7bca550 14263
Azure.IoT Build 0:6ae2f7bca550 14264 amqpvalue_destroy(message_annotations_amqp_value);
Azure.IoT Build 0:6ae2f7bca550 14265 }
Azure.IoT Build 0:6ae2f7bca550 14266 }
Azure.IoT Build 0:6ae2f7bca550 14267
Azure.IoT Build 0:6ae2f7bca550 14268 return result;
Azure.IoT Build 0:6ae2f7bca550 14269 }
Azure.IoT Build 0:6ae2f7bca550 14270
Azure.IoT Build 0:6ae2f7bca550 14271