A small memory footprint AMQP implimentation

Dependents:   iothub_client_sample_amqp remote_monitoring simplesample_amqp

Committer:
Azure.IoT Build
Date:
Fri Apr 08 12:01:10 2016 -0700
Revision:
0:6ae2f7bca550
Child:
16:22a72cf8e416
1.0.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 {
Azure.IoT Build 0:6ae2f7bca550 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 {
Azure.IoT Build 0:6ae2f7bca550 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 {
Azure.IoT Build 0:6ae2f7bca550 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 {
Azure.IoT Build 0:6ae2f7bca550 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 {
Azure.IoT Build 0:6ae2f7bca550 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 {
Azure.IoT Build 0:6ae2f7bca550 1047 result = __LINE__;
Azure.IoT Build 0:6ae2f7bca550 1048 }
Azure.IoT Build 0:6ae2f7bca550 1049 else
Azure.IoT Build 0:6ae2f7bca550 1050 {
Azure.IoT Build 0:6ae2f7bca550 1051 if (amqpvalue_get_uint(item_value, max_frame_size_value) != 0)
Azure.IoT Build 0:6ae2f7bca550 1052 {
Azure.IoT Build 0:6ae2f7bca550 1053 result = __LINE__;
Azure.IoT Build 0:6ae2f7bca550 1054 }
Azure.IoT Build 0:6ae2f7bca550 1055 else
Azure.IoT Build 0:6ae2f7bca550 1056 {
Azure.IoT Build 0:6ae2f7bca550 1057 result = 0;
Azure.IoT Build 0:6ae2f7bca550 1058 }
Azure.IoT Build 0:6ae2f7bca550 1059 }
Azure.IoT Build 0:6ae2f7bca550 1060 }
Azure.IoT Build 0:6ae2f7bca550 1061
Azure.IoT Build 0:6ae2f7bca550 1062 return result;
Azure.IoT Build 0:6ae2f7bca550 1063 }
Azure.IoT Build 0:6ae2f7bca550 1064
Azure.IoT Build 0:6ae2f7bca550 1065 int open_set_max_frame_size(OPEN_HANDLE open, uint32_t max_frame_size_value)
Azure.IoT Build 0:6ae2f7bca550 1066 {
Azure.IoT Build 0:6ae2f7bca550 1067 int result;
Azure.IoT Build 0:6ae2f7bca550 1068
Azure.IoT Build 0:6ae2f7bca550 1069 if (open == NULL)
Azure.IoT Build 0:6ae2f7bca550 1070 {
Azure.IoT Build 0:6ae2f7bca550 1071 result = __LINE__;
Azure.IoT Build 0:6ae2f7bca550 1072 }
Azure.IoT Build 0:6ae2f7bca550 1073 else
Azure.IoT Build 0:6ae2f7bca550 1074 {
Azure.IoT Build 0:6ae2f7bca550 1075 OPEN_INSTANCE* open_instance = (OPEN_INSTANCE*)open;
Azure.IoT Build 0:6ae2f7bca550 1076 AMQP_VALUE max_frame_size_amqp_value = amqpvalue_create_uint(max_frame_size_value);
Azure.IoT Build 0:6ae2f7bca550 1077 if (max_frame_size_amqp_value == NULL)
Azure.IoT Build 0:6ae2f7bca550 1078 {
Azure.IoT Build 0:6ae2f7bca550 1079 result = __LINE__;
Azure.IoT Build 0:6ae2f7bca550 1080 }
Azure.IoT Build 0:6ae2f7bca550 1081 else
Azure.IoT Build 0:6ae2f7bca550 1082 {
Azure.IoT Build 0:6ae2f7bca550 1083 if (amqpvalue_set_composite_item(open_instance->composite_value, 2, max_frame_size_amqp_value) != 0)
Azure.IoT Build 0:6ae2f7bca550 1084 {
Azure.IoT Build 0:6ae2f7bca550 1085 result = __LINE__;
Azure.IoT Build 0:6ae2f7bca550 1086 }
Azure.IoT Build 0:6ae2f7bca550 1087 else
Azure.IoT Build 0:6ae2f7bca550 1088 {
Azure.IoT Build 0:6ae2f7bca550 1089 result = 0;
Azure.IoT Build 0:6ae2f7bca550 1090 }
Azure.IoT Build 0:6ae2f7bca550 1091
Azure.IoT Build 0:6ae2f7bca550 1092 amqpvalue_destroy(max_frame_size_amqp_value);
Azure.IoT Build 0:6ae2f7bca550 1093 }
Azure.IoT Build 0:6ae2f7bca550 1094 }
Azure.IoT Build 0:6ae2f7bca550 1095
Azure.IoT Build 0:6ae2f7bca550 1096 return result;
Azure.IoT Build 0:6ae2f7bca550 1097 }
Azure.IoT Build 0:6ae2f7bca550 1098
Azure.IoT Build 0:6ae2f7bca550 1099 int open_get_channel_max(OPEN_HANDLE open, uint16_t* channel_max_value)
Azure.IoT Build 0:6ae2f7bca550 1100 {
Azure.IoT Build 0:6ae2f7bca550 1101 int result;
Azure.IoT Build 0:6ae2f7bca550 1102
Azure.IoT Build 0:6ae2f7bca550 1103 if (open == NULL)
Azure.IoT Build 0:6ae2f7bca550 1104 {
Azure.IoT Build 0:6ae2f7bca550 1105 result = __LINE__;
Azure.IoT Build 0:6ae2f7bca550 1106 }
Azure.IoT Build 0:6ae2f7bca550 1107 else
Azure.IoT Build 0:6ae2f7bca550 1108 {
Azure.IoT Build 0:6ae2f7bca550 1109 OPEN_INSTANCE* open_instance = (OPEN_INSTANCE*)open;
Azure.IoT Build 0:6ae2f7bca550 1110 AMQP_VALUE item_value = amqpvalue_get_composite_item_in_place(open_instance->composite_value, 3);
Azure.IoT Build 0:6ae2f7bca550 1111 if (item_value == NULL)
Azure.IoT Build 0:6ae2f7bca550 1112 {
Azure.IoT Build 0:6ae2f7bca550 1113 result = __LINE__;
Azure.IoT Build 0:6ae2f7bca550 1114 }
Azure.IoT Build 0:6ae2f7bca550 1115 else
Azure.IoT Build 0:6ae2f7bca550 1116 {
Azure.IoT Build 0:6ae2f7bca550 1117 if (amqpvalue_get_ushort(item_value, channel_max_value) != 0)
Azure.IoT Build 0:6ae2f7bca550 1118 {
Azure.IoT Build 0:6ae2f7bca550 1119 result = __LINE__;
Azure.IoT Build 0:6ae2f7bca550 1120 }
Azure.IoT Build 0:6ae2f7bca550 1121 else
Azure.IoT Build 0:6ae2f7bca550 1122 {
Azure.IoT Build 0:6ae2f7bca550 1123 result = 0;
Azure.IoT Build 0:6ae2f7bca550 1124 }
Azure.IoT Build 0:6ae2f7bca550 1125 }
Azure.IoT Build 0:6ae2f7bca550 1126 }
Azure.IoT Build 0:6ae2f7bca550 1127
Azure.IoT Build 0:6ae2f7bca550 1128 return result;
Azure.IoT Build 0:6ae2f7bca550 1129 }
Azure.IoT Build 0:6ae2f7bca550 1130
Azure.IoT Build 0:6ae2f7bca550 1131 int open_set_channel_max(OPEN_HANDLE open, uint16_t channel_max_value)
Azure.IoT Build 0:6ae2f7bca550 1132 {
Azure.IoT Build 0:6ae2f7bca550 1133 int result;
Azure.IoT Build 0:6ae2f7bca550 1134
Azure.IoT Build 0:6ae2f7bca550 1135 if (open == NULL)
Azure.IoT Build 0:6ae2f7bca550 1136 {
Azure.IoT Build 0:6ae2f7bca550 1137 result = __LINE__;
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 OPEN_INSTANCE* open_instance = (OPEN_INSTANCE*)open;
Azure.IoT Build 0:6ae2f7bca550 1142 AMQP_VALUE channel_max_amqp_value = amqpvalue_create_ushort(channel_max_value);
Azure.IoT Build 0:6ae2f7bca550 1143 if (channel_max_amqp_value == NULL)
Azure.IoT Build 0:6ae2f7bca550 1144 {
Azure.IoT Build 0:6ae2f7bca550 1145 result = __LINE__;
Azure.IoT Build 0:6ae2f7bca550 1146 }
Azure.IoT Build 0:6ae2f7bca550 1147 else
Azure.IoT Build 0:6ae2f7bca550 1148 {
Azure.IoT Build 0:6ae2f7bca550 1149 if (amqpvalue_set_composite_item(open_instance->composite_value, 3, channel_max_amqp_value) != 0)
Azure.IoT Build 0:6ae2f7bca550 1150 {
Azure.IoT Build 0:6ae2f7bca550 1151 result = __LINE__;
Azure.IoT Build 0:6ae2f7bca550 1152 }
Azure.IoT Build 0:6ae2f7bca550 1153 else
Azure.IoT Build 0:6ae2f7bca550 1154 {
Azure.IoT Build 0:6ae2f7bca550 1155 result = 0;
Azure.IoT Build 0:6ae2f7bca550 1156 }
Azure.IoT Build 0:6ae2f7bca550 1157
Azure.IoT Build 0:6ae2f7bca550 1158 amqpvalue_destroy(channel_max_amqp_value);
Azure.IoT Build 0:6ae2f7bca550 1159 }
Azure.IoT Build 0:6ae2f7bca550 1160 }
Azure.IoT Build 0:6ae2f7bca550 1161
Azure.IoT Build 0:6ae2f7bca550 1162 return result;
Azure.IoT Build 0:6ae2f7bca550 1163 }
Azure.IoT Build 0:6ae2f7bca550 1164
Azure.IoT Build 0:6ae2f7bca550 1165 int open_get_idle_time_out(OPEN_HANDLE open, milliseconds* idle_time_out_value)
Azure.IoT Build 0:6ae2f7bca550 1166 {
Azure.IoT Build 0:6ae2f7bca550 1167 int result;
Azure.IoT Build 0:6ae2f7bca550 1168
Azure.IoT Build 0:6ae2f7bca550 1169 if (open == NULL)
Azure.IoT Build 0:6ae2f7bca550 1170 {
Azure.IoT Build 0:6ae2f7bca550 1171 result = __LINE__;
Azure.IoT Build 0:6ae2f7bca550 1172 }
Azure.IoT Build 0:6ae2f7bca550 1173 else
Azure.IoT Build 0:6ae2f7bca550 1174 {
Azure.IoT Build 0:6ae2f7bca550 1175 OPEN_INSTANCE* open_instance = (OPEN_INSTANCE*)open;
Azure.IoT Build 0:6ae2f7bca550 1176 AMQP_VALUE item_value = amqpvalue_get_composite_item_in_place(open_instance->composite_value, 4);
Azure.IoT Build 0:6ae2f7bca550 1177 if (item_value == NULL)
Azure.IoT Build 0:6ae2f7bca550 1178 {
Azure.IoT Build 0:6ae2f7bca550 1179 result = __LINE__;
Azure.IoT Build 0:6ae2f7bca550 1180 }
Azure.IoT Build 0:6ae2f7bca550 1181 else
Azure.IoT Build 0:6ae2f7bca550 1182 {
Azure.IoT Build 0:6ae2f7bca550 1183 if (amqpvalue_get_milliseconds(item_value, idle_time_out_value) != 0)
Azure.IoT Build 0:6ae2f7bca550 1184 {
Azure.IoT Build 0:6ae2f7bca550 1185 result = __LINE__;
Azure.IoT Build 0:6ae2f7bca550 1186 }
Azure.IoT Build 0:6ae2f7bca550 1187 else
Azure.IoT Build 0:6ae2f7bca550 1188 {
Azure.IoT Build 0:6ae2f7bca550 1189 result = 0;
Azure.IoT Build 0:6ae2f7bca550 1190 }
Azure.IoT Build 0:6ae2f7bca550 1191 }
Azure.IoT Build 0:6ae2f7bca550 1192 }
Azure.IoT Build 0:6ae2f7bca550 1193
Azure.IoT Build 0:6ae2f7bca550 1194 return result;
Azure.IoT Build 0:6ae2f7bca550 1195 }
Azure.IoT Build 0:6ae2f7bca550 1196
Azure.IoT Build 0:6ae2f7bca550 1197 int open_set_idle_time_out(OPEN_HANDLE open, milliseconds idle_time_out_value)
Azure.IoT Build 0:6ae2f7bca550 1198 {
Azure.IoT Build 0:6ae2f7bca550 1199 int result;
Azure.IoT Build 0:6ae2f7bca550 1200
Azure.IoT Build 0:6ae2f7bca550 1201 if (open == NULL)
Azure.IoT Build 0:6ae2f7bca550 1202 {
Azure.IoT Build 0:6ae2f7bca550 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 OPEN_INSTANCE* open_instance = (OPEN_INSTANCE*)open;
Azure.IoT Build 0:6ae2f7bca550 1208 AMQP_VALUE idle_time_out_amqp_value = amqpvalue_create_milliseconds(idle_time_out_value);
Azure.IoT Build 0:6ae2f7bca550 1209 if (idle_time_out_amqp_value == NULL)
Azure.IoT Build 0:6ae2f7bca550 1210 {
Azure.IoT Build 0:6ae2f7bca550 1211 result = __LINE__;
Azure.IoT Build 0:6ae2f7bca550 1212 }
Azure.IoT Build 0:6ae2f7bca550 1213 else
Azure.IoT Build 0:6ae2f7bca550 1214 {
Azure.IoT Build 0:6ae2f7bca550 1215 if (amqpvalue_set_composite_item(open_instance->composite_value, 4, idle_time_out_amqp_value) != 0)
Azure.IoT Build 0:6ae2f7bca550 1216 {
Azure.IoT Build 0:6ae2f7bca550 1217 result = __LINE__;
Azure.IoT Build 0:6ae2f7bca550 1218 }
Azure.IoT Build 0:6ae2f7bca550 1219 else
Azure.IoT Build 0:6ae2f7bca550 1220 {
Azure.IoT Build 0:6ae2f7bca550 1221 result = 0;
Azure.IoT Build 0:6ae2f7bca550 1222 }
Azure.IoT Build 0:6ae2f7bca550 1223
Azure.IoT Build 0:6ae2f7bca550 1224 amqpvalue_destroy(idle_time_out_amqp_value);
Azure.IoT Build 0:6ae2f7bca550 1225 }
Azure.IoT Build 0:6ae2f7bca550 1226 }
Azure.IoT Build 0:6ae2f7bca550 1227
Azure.IoT Build 0:6ae2f7bca550 1228 return result;
Azure.IoT Build 0:6ae2f7bca550 1229 }
Azure.IoT Build 0:6ae2f7bca550 1230
Azure.IoT Build 0:6ae2f7bca550 1231 int open_get_outgoing_locales(OPEN_HANDLE open, AMQP_VALUE* outgoing_locales_value)
Azure.IoT Build 0:6ae2f7bca550 1232 {
Azure.IoT Build 0:6ae2f7bca550 1233 int result;
Azure.IoT Build 0:6ae2f7bca550 1234
Azure.IoT Build 0:6ae2f7bca550 1235 if (open == NULL)
Azure.IoT Build 0:6ae2f7bca550 1236 {
Azure.IoT Build 0:6ae2f7bca550 1237 result = __LINE__;
Azure.IoT Build 0:6ae2f7bca550 1238 }
Azure.IoT Build 0:6ae2f7bca550 1239 else
Azure.IoT Build 0:6ae2f7bca550 1240 {
Azure.IoT Build 0:6ae2f7bca550 1241 OPEN_INSTANCE* open_instance = (OPEN_INSTANCE*)open;
Azure.IoT Build 0:6ae2f7bca550 1242 AMQP_VALUE item_value = amqpvalue_get_composite_item_in_place(open_instance->composite_value, 5);
Azure.IoT Build 0:6ae2f7bca550 1243 if (item_value == NULL)
Azure.IoT Build 0:6ae2f7bca550 1244 {
Azure.IoT Build 0:6ae2f7bca550 1245 result = __LINE__;
Azure.IoT Build 0:6ae2f7bca550 1246 }
Azure.IoT Build 0:6ae2f7bca550 1247 else
Azure.IoT Build 0:6ae2f7bca550 1248 {
Azure.IoT Build 0:6ae2f7bca550 1249 if (amqpvalue_get_array(item_value, outgoing_locales_value) != 0)
Azure.IoT Build 0:6ae2f7bca550 1250 {
Azure.IoT Build 0:6ae2f7bca550 1251 result = __LINE__;
Azure.IoT Build 0:6ae2f7bca550 1252 }
Azure.IoT Build 0:6ae2f7bca550 1253 else
Azure.IoT Build 0:6ae2f7bca550 1254 {
Azure.IoT Build 0:6ae2f7bca550 1255 result = 0;
Azure.IoT Build 0:6ae2f7bca550 1256 }
Azure.IoT Build 0:6ae2f7bca550 1257 }
Azure.IoT Build 0:6ae2f7bca550 1258 }
Azure.IoT Build 0:6ae2f7bca550 1259
Azure.IoT Build 0:6ae2f7bca550 1260 return result;
Azure.IoT Build 0:6ae2f7bca550 1261 }
Azure.IoT Build 0:6ae2f7bca550 1262
Azure.IoT Build 0:6ae2f7bca550 1263 int open_set_outgoing_locales(OPEN_HANDLE open, AMQP_VALUE outgoing_locales_value)
Azure.IoT Build 0:6ae2f7bca550 1264 {
Azure.IoT Build 0:6ae2f7bca550 1265 int result;
Azure.IoT Build 0:6ae2f7bca550 1266
Azure.IoT Build 0:6ae2f7bca550 1267 if (open == NULL)
Azure.IoT Build 0:6ae2f7bca550 1268 {
Azure.IoT Build 0:6ae2f7bca550 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 OPEN_INSTANCE* open_instance = (OPEN_INSTANCE*)open;
Azure.IoT Build 0:6ae2f7bca550 1274 AMQP_VALUE outgoing_locales_amqp_value = amqpvalue_clone(outgoing_locales_value);
Azure.IoT Build 0:6ae2f7bca550 1275 if (outgoing_locales_amqp_value == NULL)
Azure.IoT Build 0:6ae2f7bca550 1276 {
Azure.IoT Build 0:6ae2f7bca550 1277 result = __LINE__;
Azure.IoT Build 0:6ae2f7bca550 1278 }
Azure.IoT Build 0:6ae2f7bca550 1279 else
Azure.IoT Build 0:6ae2f7bca550 1280 {
Azure.IoT Build 0:6ae2f7bca550 1281 if (amqpvalue_set_composite_item(open_instance->composite_value, 5, outgoing_locales_amqp_value) != 0)
Azure.IoT Build 0:6ae2f7bca550 1282 {
Azure.IoT Build 0:6ae2f7bca550 1283 result = __LINE__;
Azure.IoT Build 0:6ae2f7bca550 1284 }
Azure.IoT Build 0:6ae2f7bca550 1285 else
Azure.IoT Build 0:6ae2f7bca550 1286 {
Azure.IoT Build 0:6ae2f7bca550 1287 result = 0;
Azure.IoT Build 0:6ae2f7bca550 1288 }
Azure.IoT Build 0:6ae2f7bca550 1289
Azure.IoT Build 0:6ae2f7bca550 1290 amqpvalue_destroy(outgoing_locales_amqp_value);
Azure.IoT Build 0:6ae2f7bca550 1291 }
Azure.IoT Build 0:6ae2f7bca550 1292 }
Azure.IoT Build 0:6ae2f7bca550 1293
Azure.IoT Build 0:6ae2f7bca550 1294 return result;
Azure.IoT Build 0:6ae2f7bca550 1295 }
Azure.IoT Build 0:6ae2f7bca550 1296
Azure.IoT Build 0:6ae2f7bca550 1297 int open_get_incoming_locales(OPEN_HANDLE open, AMQP_VALUE* incoming_locales_value)
Azure.IoT Build 0:6ae2f7bca550 1298 {
Azure.IoT Build 0:6ae2f7bca550 1299 int result;
Azure.IoT Build 0:6ae2f7bca550 1300
Azure.IoT Build 0:6ae2f7bca550 1301 if (open == NULL)
Azure.IoT Build 0:6ae2f7bca550 1302 {
Azure.IoT Build 0:6ae2f7bca550 1303 result = __LINE__;
Azure.IoT Build 0:6ae2f7bca550 1304 }
Azure.IoT Build 0:6ae2f7bca550 1305 else
Azure.IoT Build 0:6ae2f7bca550 1306 {
Azure.IoT Build 0:6ae2f7bca550 1307 OPEN_INSTANCE* open_instance = (OPEN_INSTANCE*)open;
Azure.IoT Build 0:6ae2f7bca550 1308 AMQP_VALUE item_value = amqpvalue_get_composite_item_in_place(open_instance->composite_value, 6);
Azure.IoT Build 0:6ae2f7bca550 1309 if (item_value == NULL)
Azure.IoT Build 0:6ae2f7bca550 1310 {
Azure.IoT Build 0:6ae2f7bca550 1311 result = __LINE__;
Azure.IoT Build 0:6ae2f7bca550 1312 }
Azure.IoT Build 0:6ae2f7bca550 1313 else
Azure.IoT Build 0:6ae2f7bca550 1314 {
Azure.IoT Build 0:6ae2f7bca550 1315 if (amqpvalue_get_array(item_value, incoming_locales_value) != 0)
Azure.IoT Build 0:6ae2f7bca550 1316 {
Azure.IoT Build 0:6ae2f7bca550 1317 result = __LINE__;
Azure.IoT Build 0:6ae2f7bca550 1318 }
Azure.IoT Build 0:6ae2f7bca550 1319 else
Azure.IoT Build 0:6ae2f7bca550 1320 {
Azure.IoT Build 0:6ae2f7bca550 1321 result = 0;
Azure.IoT Build 0:6ae2f7bca550 1322 }
Azure.IoT Build 0:6ae2f7bca550 1323 }
Azure.IoT Build 0:6ae2f7bca550 1324 }
Azure.IoT Build 0:6ae2f7bca550 1325
Azure.IoT Build 0:6ae2f7bca550 1326 return result;
Azure.IoT Build 0:6ae2f7bca550 1327 }
Azure.IoT Build 0:6ae2f7bca550 1328
Azure.IoT Build 0:6ae2f7bca550 1329 int open_set_incoming_locales(OPEN_HANDLE open, AMQP_VALUE incoming_locales_value)
Azure.IoT Build 0:6ae2f7bca550 1330 {
Azure.IoT Build 0:6ae2f7bca550 1331 int result;
Azure.IoT Build 0:6ae2f7bca550 1332
Azure.IoT Build 0:6ae2f7bca550 1333 if (open == NULL)
Azure.IoT Build 0:6ae2f7bca550 1334 {
Azure.IoT Build 0:6ae2f7bca550 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 OPEN_INSTANCE* open_instance = (OPEN_INSTANCE*)open;
Azure.IoT Build 0:6ae2f7bca550 1340 AMQP_VALUE incoming_locales_amqp_value = amqpvalue_clone(incoming_locales_value);
Azure.IoT Build 0:6ae2f7bca550 1341 if (incoming_locales_amqp_value == NULL)
Azure.IoT Build 0:6ae2f7bca550 1342 {
Azure.IoT Build 0:6ae2f7bca550 1343 result = __LINE__;
Azure.IoT Build 0:6ae2f7bca550 1344 }
Azure.IoT Build 0:6ae2f7bca550 1345 else
Azure.IoT Build 0:6ae2f7bca550 1346 {
Azure.IoT Build 0:6ae2f7bca550 1347 if (amqpvalue_set_composite_item(open_instance->composite_value, 6, incoming_locales_amqp_value) != 0)
Azure.IoT Build 0:6ae2f7bca550 1348 {
Azure.IoT Build 0:6ae2f7bca550 1349 result = __LINE__;
Azure.IoT Build 0:6ae2f7bca550 1350 }
Azure.IoT Build 0:6ae2f7bca550 1351 else
Azure.IoT Build 0:6ae2f7bca550 1352 {
Azure.IoT Build 0:6ae2f7bca550 1353 result = 0;
Azure.IoT Build 0:6ae2f7bca550 1354 }
Azure.IoT Build 0:6ae2f7bca550 1355
Azure.IoT Build 0:6ae2f7bca550 1356 amqpvalue_destroy(incoming_locales_amqp_value);
Azure.IoT Build 0:6ae2f7bca550 1357 }
Azure.IoT Build 0:6ae2f7bca550 1358 }
Azure.IoT Build 0:6ae2f7bca550 1359
Azure.IoT Build 0:6ae2f7bca550 1360 return result;
Azure.IoT Build 0:6ae2f7bca550 1361 }
Azure.IoT Build 0:6ae2f7bca550 1362
Azure.IoT Build 0:6ae2f7bca550 1363 int open_get_offered_capabilities(OPEN_HANDLE open, AMQP_VALUE* offered_capabilities_value)
Azure.IoT Build 0:6ae2f7bca550 1364 {
Azure.IoT Build 0:6ae2f7bca550 1365 int result;
Azure.IoT Build 0:6ae2f7bca550 1366
Azure.IoT Build 0:6ae2f7bca550 1367 if (open == NULL)
Azure.IoT Build 0:6ae2f7bca550 1368 {
Azure.IoT Build 0:6ae2f7bca550 1369 result = __LINE__;
Azure.IoT Build 0:6ae2f7bca550 1370 }
Azure.IoT Build 0:6ae2f7bca550 1371 else
Azure.IoT Build 0:6ae2f7bca550 1372 {
Azure.IoT Build 0:6ae2f7bca550 1373 OPEN_INSTANCE* open_instance = (OPEN_INSTANCE*)open;
Azure.IoT Build 0:6ae2f7bca550 1374 AMQP_VALUE item_value = amqpvalue_get_composite_item_in_place(open_instance->composite_value, 7);
Azure.IoT Build 0:6ae2f7bca550 1375 if (item_value == NULL)
Azure.IoT Build 0:6ae2f7bca550 1376 {
Azure.IoT Build 0:6ae2f7bca550 1377 result = __LINE__;
Azure.IoT Build 0:6ae2f7bca550 1378 }
Azure.IoT Build 0:6ae2f7bca550 1379 else
Azure.IoT Build 0:6ae2f7bca550 1380 {
Azure.IoT Build 0:6ae2f7bca550 1381 if (amqpvalue_get_array(item_value, offered_capabilities_value) != 0)
Azure.IoT Build 0:6ae2f7bca550 1382 {
Azure.IoT Build 0:6ae2f7bca550 1383 result = __LINE__;
Azure.IoT Build 0:6ae2f7bca550 1384 }
Azure.IoT Build 0:6ae2f7bca550 1385 else
Azure.IoT Build 0:6ae2f7bca550 1386 {
Azure.IoT Build 0:6ae2f7bca550 1387 result = 0;
Azure.IoT Build 0:6ae2f7bca550 1388 }
Azure.IoT Build 0:6ae2f7bca550 1389 }
Azure.IoT Build 0:6ae2f7bca550 1390 }
Azure.IoT Build 0:6ae2f7bca550 1391
Azure.IoT Build 0:6ae2f7bca550 1392 return result;
Azure.IoT Build 0:6ae2f7bca550 1393 }
Azure.IoT Build 0:6ae2f7bca550 1394
Azure.IoT Build 0:6ae2f7bca550 1395 int open_set_offered_capabilities(OPEN_HANDLE open, AMQP_VALUE offered_capabilities_value)
Azure.IoT Build 0:6ae2f7bca550 1396 {
Azure.IoT Build 0:6ae2f7bca550 1397 int result;
Azure.IoT Build 0:6ae2f7bca550 1398
Azure.IoT Build 0:6ae2f7bca550 1399 if (open == NULL)
Azure.IoT Build 0:6ae2f7bca550 1400 {
Azure.IoT Build 0:6ae2f7bca550 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 OPEN_INSTANCE* open_instance = (OPEN_INSTANCE*)open;
Azure.IoT Build 0:6ae2f7bca550 1406 AMQP_VALUE offered_capabilities_amqp_value = amqpvalue_clone(offered_capabilities_value);
Azure.IoT Build 0:6ae2f7bca550 1407 if (offered_capabilities_amqp_value == NULL)
Azure.IoT Build 0:6ae2f7bca550 1408 {
Azure.IoT Build 0:6ae2f7bca550 1409 result = __LINE__;
Azure.IoT Build 0:6ae2f7bca550 1410 }
Azure.IoT Build 0:6ae2f7bca550 1411 else
Azure.IoT Build 0:6ae2f7bca550 1412 {
Azure.IoT Build 0:6ae2f7bca550 1413 if (amqpvalue_set_composite_item(open_instance->composite_value, 7, offered_capabilities_amqp_value) != 0)
Azure.IoT Build 0:6ae2f7bca550 1414 {
Azure.IoT Build 0:6ae2f7bca550 1415 result = __LINE__;
Azure.IoT Build 0:6ae2f7bca550 1416 }
Azure.IoT Build 0:6ae2f7bca550 1417 else
Azure.IoT Build 0:6ae2f7bca550 1418 {
Azure.IoT Build 0:6ae2f7bca550 1419 result = 0;
Azure.IoT Build 0:6ae2f7bca550 1420 }
Azure.IoT Build 0:6ae2f7bca550 1421
Azure.IoT Build 0:6ae2f7bca550 1422 amqpvalue_destroy(offered_capabilities_amqp_value);
Azure.IoT Build 0:6ae2f7bca550 1423 }
Azure.IoT Build 0:6ae2f7bca550 1424 }
Azure.IoT Build 0:6ae2f7bca550 1425
Azure.IoT Build 0:6ae2f7bca550 1426 return result;
Azure.IoT Build 0:6ae2f7bca550 1427 }
Azure.IoT Build 0:6ae2f7bca550 1428
Azure.IoT Build 0:6ae2f7bca550 1429 int open_get_desired_capabilities(OPEN_HANDLE open, AMQP_VALUE* desired_capabilities_value)
Azure.IoT Build 0:6ae2f7bca550 1430 {
Azure.IoT Build 0:6ae2f7bca550 1431 int result;
Azure.IoT Build 0:6ae2f7bca550 1432
Azure.IoT Build 0:6ae2f7bca550 1433 if (open == NULL)
Azure.IoT Build 0:6ae2f7bca550 1434 {
Azure.IoT Build 0:6ae2f7bca550 1435 result = __LINE__;
Azure.IoT Build 0:6ae2f7bca550 1436 }
Azure.IoT Build 0:6ae2f7bca550 1437 else
Azure.IoT Build 0:6ae2f7bca550 1438 {
Azure.IoT Build 0:6ae2f7bca550 1439 OPEN_INSTANCE* open_instance = (OPEN_INSTANCE*)open;
Azure.IoT Build 0:6ae2f7bca550 1440 AMQP_VALUE item_value = amqpvalue_get_composite_item_in_place(open_instance->composite_value, 8);
Azure.IoT Build 0:6ae2f7bca550 1441 if (item_value == NULL)
Azure.IoT Build 0:6ae2f7bca550 1442 {
Azure.IoT Build 0:6ae2f7bca550 1443 result = __LINE__;
Azure.IoT Build 0:6ae2f7bca550 1444 }
Azure.IoT Build 0:6ae2f7bca550 1445 else
Azure.IoT Build 0:6ae2f7bca550 1446 {
Azure.IoT Build 0:6ae2f7bca550 1447 if (amqpvalue_get_array(item_value, desired_capabilities_value) != 0)
Azure.IoT Build 0:6ae2f7bca550 1448 {
Azure.IoT Build 0:6ae2f7bca550 1449 result = __LINE__;
Azure.IoT Build 0:6ae2f7bca550 1450 }
Azure.IoT Build 0:6ae2f7bca550 1451 else
Azure.IoT Build 0:6ae2f7bca550 1452 {
Azure.IoT Build 0:6ae2f7bca550 1453 result = 0;
Azure.IoT Build 0:6ae2f7bca550 1454 }
Azure.IoT Build 0:6ae2f7bca550 1455 }
Azure.IoT Build 0:6ae2f7bca550 1456 }
Azure.IoT Build 0:6ae2f7bca550 1457
Azure.IoT Build 0:6ae2f7bca550 1458 return result;
Azure.IoT Build 0:6ae2f7bca550 1459 }
Azure.IoT Build 0:6ae2f7bca550 1460
Azure.IoT Build 0:6ae2f7bca550 1461 int open_set_desired_capabilities(OPEN_HANDLE open, AMQP_VALUE desired_capabilities_value)
Azure.IoT Build 0:6ae2f7bca550 1462 {
Azure.IoT Build 0:6ae2f7bca550 1463 int result;
Azure.IoT Build 0:6ae2f7bca550 1464
Azure.IoT Build 0:6ae2f7bca550 1465 if (open == NULL)
Azure.IoT Build 0:6ae2f7bca550 1466 {
Azure.IoT Build 0:6ae2f7bca550 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 OPEN_INSTANCE* open_instance = (OPEN_INSTANCE*)open;
Azure.IoT Build 0:6ae2f7bca550 1472 AMQP_VALUE desired_capabilities_amqp_value = amqpvalue_clone(desired_capabilities_value);
Azure.IoT Build 0:6ae2f7bca550 1473 if (desired_capabilities_amqp_value == NULL)
Azure.IoT Build 0:6ae2f7bca550 1474 {
Azure.IoT Build 0:6ae2f7bca550 1475 result = __LINE__;
Azure.IoT Build 0:6ae2f7bca550 1476 }
Azure.IoT Build 0:6ae2f7bca550 1477 else
Azure.IoT Build 0:6ae2f7bca550 1478 {
Azure.IoT Build 0:6ae2f7bca550 1479 if (amqpvalue_set_composite_item(open_instance->composite_value, 8, desired_capabilities_amqp_value) != 0)
Azure.IoT Build 0:6ae2f7bca550 1480 {
Azure.IoT Build 0:6ae2f7bca550 1481 result = __LINE__;
Azure.IoT Build 0:6ae2f7bca550 1482 }
Azure.IoT Build 0:6ae2f7bca550 1483 else
Azure.IoT Build 0:6ae2f7bca550 1484 {
Azure.IoT Build 0:6ae2f7bca550 1485 result = 0;
Azure.IoT Build 0:6ae2f7bca550 1486 }
Azure.IoT Build 0:6ae2f7bca550 1487
Azure.IoT Build 0:6ae2f7bca550 1488 amqpvalue_destroy(desired_capabilities_amqp_value);
Azure.IoT Build 0:6ae2f7bca550 1489 }
Azure.IoT Build 0:6ae2f7bca550 1490 }
Azure.IoT Build 0:6ae2f7bca550 1491
Azure.IoT Build 0:6ae2f7bca550 1492 return result;
Azure.IoT Build 0:6ae2f7bca550 1493 }
Azure.IoT Build 0:6ae2f7bca550 1494
Azure.IoT Build 0:6ae2f7bca550 1495 int open_get_properties(OPEN_HANDLE open, fields* properties_value)
Azure.IoT Build 0:6ae2f7bca550 1496 {
Azure.IoT Build 0:6ae2f7bca550 1497 int result;
Azure.IoT Build 0:6ae2f7bca550 1498
Azure.IoT Build 0:6ae2f7bca550 1499 if (open == NULL)
Azure.IoT Build 0:6ae2f7bca550 1500 {
Azure.IoT Build 0:6ae2f7bca550 1501 result = __LINE__;
Azure.IoT Build 0:6ae2f7bca550 1502 }
Azure.IoT Build 0:6ae2f7bca550 1503 else
Azure.IoT Build 0:6ae2f7bca550 1504 {
Azure.IoT Build 0:6ae2f7bca550 1505 OPEN_INSTANCE* open_instance = (OPEN_INSTANCE*)open;
Azure.IoT Build 0:6ae2f7bca550 1506 AMQP_VALUE item_value = amqpvalue_get_composite_item_in_place(open_instance->composite_value, 9);
Azure.IoT Build 0:6ae2f7bca550 1507 if (item_value == NULL)
Azure.IoT Build 0:6ae2f7bca550 1508 {
Azure.IoT Build 0:6ae2f7bca550 1509 result = __LINE__;
Azure.IoT Build 0:6ae2f7bca550 1510 }
Azure.IoT Build 0:6ae2f7bca550 1511 else
Azure.IoT Build 0:6ae2f7bca550 1512 {
Azure.IoT Build 0:6ae2f7bca550 1513 if (amqpvalue_get_fields(item_value, properties_value) != 0)
Azure.IoT Build 0:6ae2f7bca550 1514 {
Azure.IoT Build 0:6ae2f7bca550 1515 result = __LINE__;
Azure.IoT Build 0:6ae2f7bca550 1516 }
Azure.IoT Build 0:6ae2f7bca550 1517 else
Azure.IoT Build 0:6ae2f7bca550 1518 {
Azure.IoT Build 0:6ae2f7bca550 1519 result = 0;
Azure.IoT Build 0:6ae2f7bca550 1520 }
Azure.IoT Build 0:6ae2f7bca550 1521 }
Azure.IoT Build 0:6ae2f7bca550 1522 }
Azure.IoT Build 0:6ae2f7bca550 1523
Azure.IoT Build 0:6ae2f7bca550 1524 return result;
Azure.IoT Build 0:6ae2f7bca550 1525 }
Azure.IoT Build 0:6ae2f7bca550 1526
Azure.IoT Build 0:6ae2f7bca550 1527 int open_set_properties(OPEN_HANDLE open, fields properties_value)
Azure.IoT Build 0:6ae2f7bca550 1528 {
Azure.IoT Build 0:6ae2f7bca550 1529 int result;
Azure.IoT Build 0:6ae2f7bca550 1530
Azure.IoT Build 0:6ae2f7bca550 1531 if (open == NULL)
Azure.IoT Build 0:6ae2f7bca550 1532 {
Azure.IoT Build 0:6ae2f7bca550 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 OPEN_INSTANCE* open_instance = (OPEN_INSTANCE*)open;
Azure.IoT Build 0:6ae2f7bca550 1538 AMQP_VALUE properties_amqp_value = amqpvalue_create_fields(properties_value);
Azure.IoT Build 0:6ae2f7bca550 1539 if (properties_amqp_value == NULL)
Azure.IoT Build 0:6ae2f7bca550 1540 {
Azure.IoT Build 0:6ae2f7bca550 1541 result = __LINE__;
Azure.IoT Build 0:6ae2f7bca550 1542 }
Azure.IoT Build 0:6ae2f7bca550 1543 else
Azure.IoT Build 0:6ae2f7bca550 1544 {
Azure.IoT Build 0:6ae2f7bca550 1545 if (amqpvalue_set_composite_item(open_instance->composite_value, 9, properties_amqp_value) != 0)
Azure.IoT Build 0:6ae2f7bca550 1546 {
Azure.IoT Build 0:6ae2f7bca550 1547 result = __LINE__;
Azure.IoT Build 0:6ae2f7bca550 1548 }
Azure.IoT Build 0:6ae2f7bca550 1549 else
Azure.IoT Build 0:6ae2f7bca550 1550 {
Azure.IoT Build 0:6ae2f7bca550 1551 result = 0;
Azure.IoT Build 0:6ae2f7bca550 1552 }
Azure.IoT Build 0:6ae2f7bca550 1553
Azure.IoT Build 0:6ae2f7bca550 1554 amqpvalue_destroy(properties_amqp_value);
Azure.IoT Build 0:6ae2f7bca550 1555 }
Azure.IoT Build 0:6ae2f7bca550 1556 }
Azure.IoT Build 0:6ae2f7bca550 1557
Azure.IoT Build 0:6ae2f7bca550 1558 return result;
Azure.IoT Build 0:6ae2f7bca550 1559 }
Azure.IoT Build 0:6ae2f7bca550 1560
Azure.IoT Build 0:6ae2f7bca550 1561
Azure.IoT Build 0:6ae2f7bca550 1562 /* begin */
Azure.IoT Build 0:6ae2f7bca550 1563
Azure.IoT Build 0:6ae2f7bca550 1564 typedef struct BEGIN_INSTANCE_TAG
Azure.IoT Build 0:6ae2f7bca550 1565 {
Azure.IoT Build 0:6ae2f7bca550 1566 AMQP_VALUE composite_value;
Azure.IoT Build 0:6ae2f7bca550 1567 } BEGIN_INSTANCE;
Azure.IoT Build 0:6ae2f7bca550 1568
Azure.IoT Build 0:6ae2f7bca550 1569 static BEGIN_HANDLE begin_create_internal(void)
Azure.IoT Build 0:6ae2f7bca550 1570 {
Azure.IoT Build 0:6ae2f7bca550 1571 BEGIN_INSTANCE* begin_instance = (BEGIN_INSTANCE*)amqpalloc_malloc(sizeof(BEGIN_INSTANCE));
Azure.IoT Build 0:6ae2f7bca550 1572 if (begin_instance != NULL)
Azure.IoT Build 0:6ae2f7bca550 1573 {
Azure.IoT Build 0:6ae2f7bca550 1574 begin_instance->composite_value = NULL;
Azure.IoT Build 0:6ae2f7bca550 1575 }
Azure.IoT Build 0:6ae2f7bca550 1576
Azure.IoT Build 0:6ae2f7bca550 1577 return begin_instance;
Azure.IoT Build 0:6ae2f7bca550 1578 }
Azure.IoT Build 0:6ae2f7bca550 1579
Azure.IoT Build 0:6ae2f7bca550 1580 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 1581 {
Azure.IoT Build 0:6ae2f7bca550 1582 BEGIN_INSTANCE* begin_instance = (BEGIN_INSTANCE*)amqpalloc_malloc(sizeof(BEGIN_INSTANCE));
Azure.IoT Build 0:6ae2f7bca550 1583 if (begin_instance != NULL)
Azure.IoT Build 0:6ae2f7bca550 1584 {
Azure.IoT Build 0:6ae2f7bca550 1585 begin_instance->composite_value = amqpvalue_create_composite_with_ulong_descriptor(17);
Azure.IoT Build 0:6ae2f7bca550 1586 if (begin_instance->composite_value == NULL)
Azure.IoT Build 0:6ae2f7bca550 1587 {
Azure.IoT Build 0:6ae2f7bca550 1588 amqpalloc_free(begin_instance);
Azure.IoT Build 0:6ae2f7bca550 1589 begin_instance = NULL;
Azure.IoT Build 0:6ae2f7bca550 1590 }
Azure.IoT Build 0:6ae2f7bca550 1591 else
Azure.IoT Build 0:6ae2f7bca550 1592 {
Azure.IoT Build 0:6ae2f7bca550 1593 AMQP_VALUE next_outgoing_id_amqp_value;
Azure.IoT Build 0:6ae2f7bca550 1594 AMQP_VALUE incoming_window_amqp_value;
Azure.IoT Build 0:6ae2f7bca550 1595 AMQP_VALUE outgoing_window_amqp_value;
Azure.IoT Build 0:6ae2f7bca550 1596 int result = 0;
Azure.IoT Build 0:6ae2f7bca550 1597
Azure.IoT Build 0:6ae2f7bca550 1598 next_outgoing_id_amqp_value = amqpvalue_create_transfer_number(next_outgoing_id_value);
Azure.IoT Build 0:6ae2f7bca550 1599 if ((result == 0) && (amqpvalue_set_composite_item(begin_instance->composite_value, 1, next_outgoing_id_amqp_value) != 0))
Azure.IoT Build 0:6ae2f7bca550 1600 {
Azure.IoT Build 0:6ae2f7bca550 1601 result = __LINE__;
Azure.IoT Build 0:6ae2f7bca550 1602 }
Azure.IoT Build 0:6ae2f7bca550 1603 incoming_window_amqp_value = amqpvalue_create_uint(incoming_window_value);
Azure.IoT Build 0:6ae2f7bca550 1604 if ((result == 0) && (amqpvalue_set_composite_item(begin_instance->composite_value, 2, incoming_window_amqp_value) != 0))
Azure.IoT Build 0:6ae2f7bca550 1605 {
Azure.IoT Build 0:6ae2f7bca550 1606 result = __LINE__;
Azure.IoT Build 0:6ae2f7bca550 1607 }
Azure.IoT Build 0:6ae2f7bca550 1608 outgoing_window_amqp_value = amqpvalue_create_uint(outgoing_window_value);
Azure.IoT Build 0:6ae2f7bca550 1609 if ((result == 0) && (amqpvalue_set_composite_item(begin_instance->composite_value, 3, outgoing_window_amqp_value) != 0))
Azure.IoT Build 0:6ae2f7bca550 1610 {
Azure.IoT Build 0:6ae2f7bca550 1611 result = __LINE__;
Azure.IoT Build 0:6ae2f7bca550 1612 }
Azure.IoT Build 0:6ae2f7bca550 1613
Azure.IoT Build 0:6ae2f7bca550 1614 amqpvalue_destroy(next_outgoing_id_amqp_value);
Azure.IoT Build 0:6ae2f7bca550 1615 amqpvalue_destroy(incoming_window_amqp_value);
Azure.IoT Build 0:6ae2f7bca550 1616 amqpvalue_destroy(outgoing_window_amqp_value);
Azure.IoT Build 0:6ae2f7bca550 1617 }
Azure.IoT Build 0:6ae2f7bca550 1618 }
Azure.IoT Build 0:6ae2f7bca550 1619
Azure.IoT Build 0:6ae2f7bca550 1620 return begin_instance;
Azure.IoT Build 0:6ae2f7bca550 1621 }
Azure.IoT Build 0:6ae2f7bca550 1622
Azure.IoT Build 0:6ae2f7bca550 1623 BEGIN_HANDLE begin_clone(BEGIN_HANDLE value)
Azure.IoT Build 0:6ae2f7bca550 1624 {
Azure.IoT Build 0:6ae2f7bca550 1625 BEGIN_INSTANCE* begin_instance = (BEGIN_INSTANCE*)amqpalloc_malloc(sizeof(BEGIN_INSTANCE));
Azure.IoT Build 0:6ae2f7bca550 1626 if (begin_instance != NULL)
Azure.IoT Build 0:6ae2f7bca550 1627 {
Azure.IoT Build 0:6ae2f7bca550 1628 begin_instance->composite_value = amqpvalue_clone(((BEGIN_INSTANCE*)value)->composite_value);
Azure.IoT Build 0:6ae2f7bca550 1629 if (begin_instance->composite_value == NULL)
Azure.IoT Build 0:6ae2f7bca550 1630 {
Azure.IoT Build 0:6ae2f7bca550 1631 amqpalloc_free(begin_instance);
Azure.IoT Build 0:6ae2f7bca550 1632 begin_instance = NULL;
Azure.IoT Build 0:6ae2f7bca550 1633 }
Azure.IoT Build 0:6ae2f7bca550 1634 }
Azure.IoT Build 0:6ae2f7bca550 1635
Azure.IoT Build 0:6ae2f7bca550 1636 return begin_instance;
Azure.IoT Build 0:6ae2f7bca550 1637 }
Azure.IoT Build 0:6ae2f7bca550 1638
Azure.IoT Build 0:6ae2f7bca550 1639 void begin_destroy(BEGIN_HANDLE begin)
Azure.IoT Build 0:6ae2f7bca550 1640 {
Azure.IoT Build 0:6ae2f7bca550 1641 if (begin != NULL)
Azure.IoT Build 0:6ae2f7bca550 1642 {
Azure.IoT Build 0:6ae2f7bca550 1643 BEGIN_INSTANCE* begin_instance = (BEGIN_INSTANCE*)begin;
Azure.IoT Build 0:6ae2f7bca550 1644 amqpvalue_destroy(begin_instance->composite_value);
Azure.IoT Build 0:6ae2f7bca550 1645 amqpalloc_free(begin_instance);
Azure.IoT Build 0:6ae2f7bca550 1646 }
Azure.IoT Build 0:6ae2f7bca550 1647 }
Azure.IoT Build 0:6ae2f7bca550 1648
Azure.IoT Build 0:6ae2f7bca550 1649 AMQP_VALUE amqpvalue_create_begin(BEGIN_HANDLE begin)
Azure.IoT Build 0:6ae2f7bca550 1650 {
Azure.IoT Build 0:6ae2f7bca550 1651 AMQP_VALUE result;
Azure.IoT Build 0:6ae2f7bca550 1652
Azure.IoT Build 0:6ae2f7bca550 1653 if (begin == NULL)
Azure.IoT Build 0:6ae2f7bca550 1654 {
Azure.IoT Build 0:6ae2f7bca550 1655 result = NULL;
Azure.IoT Build 0:6ae2f7bca550 1656 }
Azure.IoT Build 0:6ae2f7bca550 1657 else
Azure.IoT Build 0:6ae2f7bca550 1658 {
Azure.IoT Build 0:6ae2f7bca550 1659 BEGIN_INSTANCE* begin_instance = (BEGIN_INSTANCE*)begin;
Azure.IoT Build 0:6ae2f7bca550 1660 result = amqpvalue_clone(begin_instance->composite_value);
Azure.IoT Build 0:6ae2f7bca550 1661 }
Azure.IoT Build 0:6ae2f7bca550 1662
Azure.IoT Build 0:6ae2f7bca550 1663 return result;
Azure.IoT Build 0:6ae2f7bca550 1664 }
Azure.IoT Build 0:6ae2f7bca550 1665
Azure.IoT Build 0:6ae2f7bca550 1666 bool is_begin_type_by_descriptor(AMQP_VALUE descriptor)
Azure.IoT Build 0:6ae2f7bca550 1667 {
Azure.IoT Build 0:6ae2f7bca550 1668 bool result;
Azure.IoT Build 0:6ae2f7bca550 1669
Azure.IoT Build 0:6ae2f7bca550 1670 uint64_t descriptor_ulong;
Azure.IoT Build 0:6ae2f7bca550 1671 if ((amqpvalue_get_ulong(descriptor, &descriptor_ulong) == 0) &&
Azure.IoT Build 0:6ae2f7bca550 1672 (descriptor_ulong == 17))
Azure.IoT Build 0:6ae2f7bca550 1673 {
Azure.IoT Build 0:6ae2f7bca550 1674 result = true;
Azure.IoT Build 0:6ae2f7bca550 1675 }
Azure.IoT Build 0:6ae2f7bca550 1676 else
Azure.IoT Build 0:6ae2f7bca550 1677 {
Azure.IoT Build 0:6ae2f7bca550 1678 result = false;
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
Azure.IoT Build 0:6ae2f7bca550 1685 int amqpvalue_get_begin(AMQP_VALUE value, BEGIN_HANDLE* begin_handle)
Azure.IoT Build 0:6ae2f7bca550 1686 {
Azure.IoT Build 0:6ae2f7bca550 1687 int result;
Azure.IoT Build 0:6ae2f7bca550 1688 BEGIN_INSTANCE* begin_instance = (BEGIN_INSTANCE*)begin_create_internal();
Azure.IoT Build 0:6ae2f7bca550 1689 *begin_handle = begin_instance;
Azure.IoT Build 0:6ae2f7bca550 1690 if (*begin_handle == NULL)
Azure.IoT Build 0:6ae2f7bca550 1691 {
Azure.IoT Build 0:6ae2f7bca550 1692 result = __LINE__;
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 AMQP_VALUE list_value = amqpvalue_get_inplace_described_value(value);
Azure.IoT Build 0:6ae2f7bca550 1697 if (list_value == NULL)
Azure.IoT Build 0:6ae2f7bca550 1698 {
Azure.IoT Build 0:6ae2f7bca550 1699 begin_destroy(*begin_handle);
Azure.IoT Build 0:6ae2f7bca550 1700 result = __LINE__;
Azure.IoT Build 0:6ae2f7bca550 1701 }
Azure.IoT Build 0:6ae2f7bca550 1702 else
Azure.IoT Build 0:6ae2f7bca550 1703 {
Azure.IoT Build 0:6ae2f7bca550 1704 do
Azure.IoT Build 0:6ae2f7bca550 1705 {
Azure.IoT Build 0:6ae2f7bca550 1706 AMQP_VALUE item_value;
Azure.IoT Build 0:6ae2f7bca550 1707 /* remote-channel */
Azure.IoT Build 0:6ae2f7bca550 1708 item_value = amqpvalue_get_list_item(list_value, 0);
Azure.IoT Build 0:6ae2f7bca550 1709 if (item_value == NULL)
Azure.IoT Build 0:6ae2f7bca550 1710 {
Azure.IoT Build 0:6ae2f7bca550 1711 /* do nothing */
Azure.IoT Build 0:6ae2f7bca550 1712 }
Azure.IoT Build 0:6ae2f7bca550 1713 else
Azure.IoT Build 0:6ae2f7bca550 1714 {
Azure.IoT Build 0:6ae2f7bca550 1715 uint16_t remote_channel;
Azure.IoT Build 0:6ae2f7bca550 1716 if (amqpvalue_get_ushort(item_value, &remote_channel) != 0)
Azure.IoT Build 0:6ae2f7bca550 1717 {
Azure.IoT Build 0:6ae2f7bca550 1718 if (amqpvalue_get_type(item_value) != AMQP_TYPE_NULL)
Azure.IoT Build 0:6ae2f7bca550 1719 {
Azure.IoT Build 0:6ae2f7bca550 1720 begin_destroy(*begin_handle);
Azure.IoT Build 0:6ae2f7bca550 1721 result = __LINE__;
Azure.IoT Build 0:6ae2f7bca550 1722 break;
Azure.IoT Build 0:6ae2f7bca550 1723 }
Azure.IoT Build 0:6ae2f7bca550 1724 }
Azure.IoT Build 0:6ae2f7bca550 1725
Azure.IoT Build 0:6ae2f7bca550 1726 amqpvalue_destroy(item_value);
Azure.IoT Build 0:6ae2f7bca550 1727 }
Azure.IoT Build 0:6ae2f7bca550 1728 /* next-outgoing-id */
Azure.IoT Build 0:6ae2f7bca550 1729 item_value = amqpvalue_get_list_item(list_value, 1);
Azure.IoT Build 0:6ae2f7bca550 1730 if (item_value == NULL)
Azure.IoT Build 0:6ae2f7bca550 1731 {
Azure.IoT Build 0:6ae2f7bca550 1732 {
Azure.IoT Build 0:6ae2f7bca550 1733 begin_destroy(*begin_handle);
Azure.IoT Build 0:6ae2f7bca550 1734 result = __LINE__;
Azure.IoT Build 0:6ae2f7bca550 1735 break;
Azure.IoT Build 0:6ae2f7bca550 1736 }
Azure.IoT Build 0:6ae2f7bca550 1737 }
Azure.IoT Build 0:6ae2f7bca550 1738 else
Azure.IoT Build 0:6ae2f7bca550 1739 {
Azure.IoT Build 0:6ae2f7bca550 1740 transfer_number next_outgoing_id;
Azure.IoT Build 0:6ae2f7bca550 1741 if (amqpvalue_get_transfer_number(item_value, &next_outgoing_id) != 0)
Azure.IoT Build 0:6ae2f7bca550 1742 {
Azure.IoT Build 0:6ae2f7bca550 1743 begin_destroy(*begin_handle);
Azure.IoT Build 0:6ae2f7bca550 1744 result = __LINE__;
Azure.IoT Build 0:6ae2f7bca550 1745 break;
Azure.IoT Build 0:6ae2f7bca550 1746 }
Azure.IoT Build 0:6ae2f7bca550 1747
Azure.IoT Build 0:6ae2f7bca550 1748 amqpvalue_destroy(item_value);
Azure.IoT Build 0:6ae2f7bca550 1749 }
Azure.IoT Build 0:6ae2f7bca550 1750 /* incoming-window */
Azure.IoT Build 0:6ae2f7bca550 1751 item_value = amqpvalue_get_list_item(list_value, 2);
Azure.IoT Build 0:6ae2f7bca550 1752 if (item_value == NULL)
Azure.IoT Build 0:6ae2f7bca550 1753 {
Azure.IoT Build 0:6ae2f7bca550 1754 {
Azure.IoT Build 0:6ae2f7bca550 1755 begin_destroy(*begin_handle);
Azure.IoT Build 0:6ae2f7bca550 1756 result = __LINE__;
Azure.IoT Build 0:6ae2f7bca550 1757 break;
Azure.IoT Build 0:6ae2f7bca550 1758 }
Azure.IoT Build 0:6ae2f7bca550 1759 }
Azure.IoT Build 0:6ae2f7bca550 1760 else
Azure.IoT Build 0:6ae2f7bca550 1761 {
Azure.IoT Build 0:6ae2f7bca550 1762 uint32_t incoming_window;
Azure.IoT Build 0:6ae2f7bca550 1763 if (amqpvalue_get_uint(item_value, &incoming_window) != 0)
Azure.IoT Build 0:6ae2f7bca550 1764 {
Azure.IoT Build 0:6ae2f7bca550 1765 begin_destroy(*begin_handle);
Azure.IoT Build 0:6ae2f7bca550 1766 result = __LINE__;
Azure.IoT Build 0:6ae2f7bca550 1767 break;
Azure.IoT Build 0:6ae2f7bca550 1768 }
Azure.IoT Build 0:6ae2f7bca550 1769
Azure.IoT Build 0:6ae2f7bca550 1770 amqpvalue_destroy(item_value);
Azure.IoT Build 0:6ae2f7bca550 1771 }
Azure.IoT Build 0:6ae2f7bca550 1772 /* outgoing-window */
Azure.IoT Build 0:6ae2f7bca550 1773 item_value = amqpvalue_get_list_item(list_value, 3);
Azure.IoT Build 0:6ae2f7bca550 1774 if (item_value == NULL)
Azure.IoT Build 0:6ae2f7bca550 1775 {
Azure.IoT Build 0:6ae2f7bca550 1776 {
Azure.IoT Build 0:6ae2f7bca550 1777 begin_destroy(*begin_handle);
Azure.IoT Build 0:6ae2f7bca550 1778 result = __LINE__;
Azure.IoT Build 0:6ae2f7bca550 1779 break;
Azure.IoT Build 0:6ae2f7bca550 1780 }
Azure.IoT Build 0:6ae2f7bca550 1781 }
Azure.IoT Build 0:6ae2f7bca550 1782 else
Azure.IoT Build 0:6ae2f7bca550 1783 {
Azure.IoT Build 0:6ae2f7bca550 1784 uint32_t outgoing_window;
Azure.IoT Build 0:6ae2f7bca550 1785 if (amqpvalue_get_uint(item_value, &outgoing_window) != 0)
Azure.IoT Build 0:6ae2f7bca550 1786 {
Azure.IoT Build 0:6ae2f7bca550 1787 begin_destroy(*begin_handle);
Azure.IoT Build 0:6ae2f7bca550 1788 result = __LINE__;
Azure.IoT Build 0:6ae2f7bca550 1789 break;
Azure.IoT Build 0:6ae2f7bca550 1790 }
Azure.IoT Build 0:6ae2f7bca550 1791
Azure.IoT Build 0:6ae2f7bca550 1792 amqpvalue_destroy(item_value);
Azure.IoT Build 0:6ae2f7bca550 1793 }
Azure.IoT Build 0:6ae2f7bca550 1794 /* handle-max */
Azure.IoT Build 0:6ae2f7bca550 1795 item_value = amqpvalue_get_list_item(list_value, 4);
Azure.IoT Build 0:6ae2f7bca550 1796 if (item_value == NULL)
Azure.IoT Build 0:6ae2f7bca550 1797 {
Azure.IoT Build 0:6ae2f7bca550 1798 /* do nothing */
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 handle handle_max;
Azure.IoT Build 0:6ae2f7bca550 1803 if (amqpvalue_get_handle(item_value, &handle_max) != 0)
Azure.IoT Build 0:6ae2f7bca550 1804 {
Azure.IoT Build 0:6ae2f7bca550 1805 if (amqpvalue_get_type(item_value) != AMQP_TYPE_NULL)
Azure.IoT Build 0:6ae2f7bca550 1806 {
Azure.IoT Build 0:6ae2f7bca550 1807 begin_destroy(*begin_handle);
Azure.IoT Build 0:6ae2f7bca550 1808 result = __LINE__;
Azure.IoT Build 0:6ae2f7bca550 1809 break;
Azure.IoT Build 0:6ae2f7bca550 1810 }
Azure.IoT Build 0:6ae2f7bca550 1811 }
Azure.IoT Build 0:6ae2f7bca550 1812
Azure.IoT Build 0:6ae2f7bca550 1813 amqpvalue_destroy(item_value);
Azure.IoT Build 0:6ae2f7bca550 1814 }
Azure.IoT Build 0:6ae2f7bca550 1815 /* offered-capabilities */
Azure.IoT Build 0:6ae2f7bca550 1816 item_value = amqpvalue_get_list_item(list_value, 5);
Azure.IoT Build 0:6ae2f7bca550 1817 if (item_value == NULL)
Azure.IoT Build 0:6ae2f7bca550 1818 {
Azure.IoT Build 0:6ae2f7bca550 1819 /* do nothing */
Azure.IoT Build 0:6ae2f7bca550 1820 }
Azure.IoT Build 0:6ae2f7bca550 1821 else
Azure.IoT Build 0:6ae2f7bca550 1822 {
Azure.IoT Build 0:6ae2f7bca550 1823 const char* offered_capabilities;
Azure.IoT Build 0:6ae2f7bca550 1824 AMQP_VALUE offered_capabilities_array;
Azure.IoT Build 0:6ae2f7bca550 1825 if ((amqpvalue_get_array(item_value, &offered_capabilities_array) != 0) &&
Azure.IoT Build 0:6ae2f7bca550 1826 (amqpvalue_get_symbol(item_value, &offered_capabilities) != 0))
Azure.IoT Build 0:6ae2f7bca550 1827 {
Azure.IoT Build 0:6ae2f7bca550 1828 if (amqpvalue_get_type(item_value) != AMQP_TYPE_NULL)
Azure.IoT Build 0:6ae2f7bca550 1829 {
Azure.IoT Build 0:6ae2f7bca550 1830 begin_destroy(*begin_handle);
Azure.IoT Build 0:6ae2f7bca550 1831 result = __LINE__;
Azure.IoT Build 0:6ae2f7bca550 1832 break;
Azure.IoT Build 0:6ae2f7bca550 1833 }
Azure.IoT Build 0:6ae2f7bca550 1834 }
Azure.IoT Build 0:6ae2f7bca550 1835
Azure.IoT Build 0:6ae2f7bca550 1836 amqpvalue_destroy(item_value);
Azure.IoT Build 0:6ae2f7bca550 1837 }
Azure.IoT Build 0:6ae2f7bca550 1838 /* desired-capabilities */
Azure.IoT Build 0:6ae2f7bca550 1839 item_value = amqpvalue_get_list_item(list_value, 6);
Azure.IoT Build 0:6ae2f7bca550 1840 if (item_value == NULL)
Azure.IoT Build 0:6ae2f7bca550 1841 {
Azure.IoT Build 0:6ae2f7bca550 1842 /* do nothing */
Azure.IoT Build 0:6ae2f7bca550 1843 }
Azure.IoT Build 0:6ae2f7bca550 1844 else
Azure.IoT Build 0:6ae2f7bca550 1845 {
Azure.IoT Build 0:6ae2f7bca550 1846 const char* desired_capabilities;
Azure.IoT Build 0:6ae2f7bca550 1847 AMQP_VALUE desired_capabilities_array;
Azure.IoT Build 0:6ae2f7bca550 1848 if ((amqpvalue_get_array(item_value, &desired_capabilities_array) != 0) &&
Azure.IoT Build 0:6ae2f7bca550 1849 (amqpvalue_get_symbol(item_value, &desired_capabilities) != 0))
Azure.IoT Build 0:6ae2f7bca550 1850 {
Azure.IoT Build 0:6ae2f7bca550 1851 if (amqpvalue_get_type(item_value) != AMQP_TYPE_NULL)
Azure.IoT Build 0:6ae2f7bca550 1852 {
Azure.IoT Build 0:6ae2f7bca550 1853 begin_destroy(*begin_handle);
Azure.IoT Build 0:6ae2f7bca550 1854 result = __LINE__;
Azure.IoT Build 0:6ae2f7bca550 1855 break;
Azure.IoT Build 0:6ae2f7bca550 1856 }
Azure.IoT Build 0:6ae2f7bca550 1857 }
Azure.IoT Build 0:6ae2f7bca550 1858
Azure.IoT Build 0:6ae2f7bca550 1859 amqpvalue_destroy(item_value);
Azure.IoT Build 0:6ae2f7bca550 1860 }
Azure.IoT Build 0:6ae2f7bca550 1861 /* properties */
Azure.IoT Build 0:6ae2f7bca550 1862 item_value = amqpvalue_get_list_item(list_value, 7);
Azure.IoT Build 0:6ae2f7bca550 1863 if (item_value == NULL)
Azure.IoT Build 0:6ae2f7bca550 1864 {
Azure.IoT Build 0:6ae2f7bca550 1865 /* do nothing */
Azure.IoT Build 0:6ae2f7bca550 1866 }
Azure.IoT Build 0:6ae2f7bca550 1867 else
Azure.IoT Build 0:6ae2f7bca550 1868 {
Azure.IoT Build 0:6ae2f7bca550 1869 fields properties;
Azure.IoT Build 0:6ae2f7bca550 1870 if (amqpvalue_get_fields(item_value, &properties) != 0)
Azure.IoT Build 0:6ae2f7bca550 1871 {
Azure.IoT Build 0:6ae2f7bca550 1872 if (amqpvalue_get_type(item_value) != AMQP_TYPE_NULL)
Azure.IoT Build 0:6ae2f7bca550 1873 {
Azure.IoT Build 0:6ae2f7bca550 1874 begin_destroy(*begin_handle);
Azure.IoT Build 0:6ae2f7bca550 1875 result = __LINE__;
Azure.IoT Build 0:6ae2f7bca550 1876 break;
Azure.IoT Build 0:6ae2f7bca550 1877 }
Azure.IoT Build 0:6ae2f7bca550 1878 }
Azure.IoT Build 0:6ae2f7bca550 1879
Azure.IoT Build 0:6ae2f7bca550 1880 amqpvalue_destroy(item_value);
Azure.IoT Build 0:6ae2f7bca550 1881 }
Azure.IoT Build 0:6ae2f7bca550 1882
Azure.IoT Build 0:6ae2f7bca550 1883 begin_instance->composite_value = amqpvalue_clone(value);
Azure.IoT Build 0:6ae2f7bca550 1884
Azure.IoT Build 0:6ae2f7bca550 1885 result = 0;
Azure.IoT Build 0:6ae2f7bca550 1886 } while (0);
Azure.IoT Build 0:6ae2f7bca550 1887 }
Azure.IoT Build 0:6ae2f7bca550 1888 }
Azure.IoT Build 0:6ae2f7bca550 1889
Azure.IoT Build 0:6ae2f7bca550 1890 return result;
Azure.IoT Build 0:6ae2f7bca550 1891 }
Azure.IoT Build 0:6ae2f7bca550 1892
Azure.IoT Build 0:6ae2f7bca550 1893 int begin_get_remote_channel(BEGIN_HANDLE begin, uint16_t* remote_channel_value)
Azure.IoT Build 0:6ae2f7bca550 1894 {
Azure.IoT Build 0:6ae2f7bca550 1895 int result;
Azure.IoT Build 0:6ae2f7bca550 1896
Azure.IoT Build 0:6ae2f7bca550 1897 if (begin == NULL)
Azure.IoT Build 0:6ae2f7bca550 1898 {
Azure.IoT Build 0:6ae2f7bca550 1899 result = __LINE__;
Azure.IoT Build 0:6ae2f7bca550 1900 }
Azure.IoT Build 0:6ae2f7bca550 1901 else
Azure.IoT Build 0:6ae2f7bca550 1902 {
Azure.IoT Build 0:6ae2f7bca550 1903 BEGIN_INSTANCE* begin_instance = (BEGIN_INSTANCE*)begin;
Azure.IoT Build 0:6ae2f7bca550 1904 AMQP_VALUE item_value = amqpvalue_get_composite_item_in_place(begin_instance->composite_value, 0);
Azure.IoT Build 0:6ae2f7bca550 1905 if (item_value == NULL)
Azure.IoT Build 0:6ae2f7bca550 1906 {
Azure.IoT Build 0:6ae2f7bca550 1907 result = __LINE__;
Azure.IoT Build 0:6ae2f7bca550 1908 }
Azure.IoT Build 0:6ae2f7bca550 1909 else
Azure.IoT Build 0:6ae2f7bca550 1910 {
Azure.IoT Build 0:6ae2f7bca550 1911 if (amqpvalue_get_ushort(item_value, remote_channel_value) != 0)
Azure.IoT Build 0:6ae2f7bca550 1912 {
Azure.IoT Build 0:6ae2f7bca550 1913 result = __LINE__;
Azure.IoT Build 0:6ae2f7bca550 1914 }
Azure.IoT Build 0:6ae2f7bca550 1915 else
Azure.IoT Build 0:6ae2f7bca550 1916 {
Azure.IoT Build 0:6ae2f7bca550 1917 result = 0;
Azure.IoT Build 0:6ae2f7bca550 1918 }
Azure.IoT Build 0:6ae2f7bca550 1919 }
Azure.IoT Build 0:6ae2f7bca550 1920 }
Azure.IoT Build 0:6ae2f7bca550 1921
Azure.IoT Build 0:6ae2f7bca550 1922 return result;
Azure.IoT Build 0:6ae2f7bca550 1923 }
Azure.IoT Build 0:6ae2f7bca550 1924
Azure.IoT Build 0:6ae2f7bca550 1925 int begin_set_remote_channel(BEGIN_HANDLE begin, uint16_t remote_channel_value)
Azure.IoT Build 0:6ae2f7bca550 1926 {
Azure.IoT Build 0:6ae2f7bca550 1927 int result;
Azure.IoT Build 0:6ae2f7bca550 1928
Azure.IoT Build 0:6ae2f7bca550 1929 if (begin == NULL)
Azure.IoT Build 0:6ae2f7bca550 1930 {
Azure.IoT Build 0:6ae2f7bca550 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 BEGIN_INSTANCE* begin_instance = (BEGIN_INSTANCE*)begin;
Azure.IoT Build 0:6ae2f7bca550 1936 AMQP_VALUE remote_channel_amqp_value = amqpvalue_create_ushort(remote_channel_value);
Azure.IoT Build 0:6ae2f7bca550 1937 if (remote_channel_amqp_value == NULL)
Azure.IoT Build 0:6ae2f7bca550 1938 {
Azure.IoT Build 0:6ae2f7bca550 1939 result = __LINE__;
Azure.IoT Build 0:6ae2f7bca550 1940 }
Azure.IoT Build 0:6ae2f7bca550 1941 else
Azure.IoT Build 0:6ae2f7bca550 1942 {
Azure.IoT Build 0:6ae2f7bca550 1943 if (amqpvalue_set_composite_item(begin_instance->composite_value, 0, remote_channel_amqp_value) != 0)
Azure.IoT Build 0:6ae2f7bca550 1944 {
Azure.IoT Build 0:6ae2f7bca550 1945 result = __LINE__;
Azure.IoT Build 0:6ae2f7bca550 1946 }
Azure.IoT Build 0:6ae2f7bca550 1947 else
Azure.IoT Build 0:6ae2f7bca550 1948 {
Azure.IoT Build 0:6ae2f7bca550 1949 result = 0;
Azure.IoT Build 0:6ae2f7bca550 1950 }
Azure.IoT Build 0:6ae2f7bca550 1951
Azure.IoT Build 0:6ae2f7bca550 1952 amqpvalue_destroy(remote_channel_amqp_value);
Azure.IoT Build 0:6ae2f7bca550 1953 }
Azure.IoT Build 0:6ae2f7bca550 1954 }
Azure.IoT Build 0:6ae2f7bca550 1955
Azure.IoT Build 0:6ae2f7bca550 1956 return result;
Azure.IoT Build 0:6ae2f7bca550 1957 }
Azure.IoT Build 0:6ae2f7bca550 1958
Azure.IoT Build 0:6ae2f7bca550 1959 int begin_get_next_outgoing_id(BEGIN_HANDLE begin, transfer_number* next_outgoing_id_value)
Azure.IoT Build 0:6ae2f7bca550 1960 {
Azure.IoT Build 0:6ae2f7bca550 1961 int result;
Azure.IoT Build 0:6ae2f7bca550 1962
Azure.IoT Build 0:6ae2f7bca550 1963 if (begin == NULL)
Azure.IoT Build 0:6ae2f7bca550 1964 {
Azure.IoT Build 0:6ae2f7bca550 1965 result = __LINE__;
Azure.IoT Build 0:6ae2f7bca550 1966 }
Azure.IoT Build 0:6ae2f7bca550 1967 else
Azure.IoT Build 0:6ae2f7bca550 1968 {
Azure.IoT Build 0:6ae2f7bca550 1969 BEGIN_INSTANCE* begin_instance = (BEGIN_INSTANCE*)begin;
Azure.IoT Build 0:6ae2f7bca550 1970 AMQP_VALUE item_value = amqpvalue_get_composite_item_in_place(begin_instance->composite_value, 1);
Azure.IoT Build 0:6ae2f7bca550 1971 if (item_value == NULL)
Azure.IoT Build 0:6ae2f7bca550 1972 {
Azure.IoT Build 0:6ae2f7bca550 1973 result = __LINE__;
Azure.IoT Build 0:6ae2f7bca550 1974 }
Azure.IoT Build 0:6ae2f7bca550 1975 else
Azure.IoT Build 0:6ae2f7bca550 1976 {
Azure.IoT Build 0:6ae2f7bca550 1977 if (amqpvalue_get_transfer_number(item_value, next_outgoing_id_value) != 0)
Azure.IoT Build 0:6ae2f7bca550 1978 {
Azure.IoT Build 0:6ae2f7bca550 1979 result = __LINE__;
Azure.IoT Build 0:6ae2f7bca550 1980 }
Azure.IoT Build 0:6ae2f7bca550 1981 else
Azure.IoT Build 0:6ae2f7bca550 1982 {
Azure.IoT Build 0:6ae2f7bca550 1983 result = 0;
Azure.IoT Build 0:6ae2f7bca550 1984 }
Azure.IoT Build 0:6ae2f7bca550 1985 }
Azure.IoT Build 0:6ae2f7bca550 1986 }
Azure.IoT Build 0:6ae2f7bca550 1987
Azure.IoT Build 0:6ae2f7bca550 1988 return result;
Azure.IoT Build 0:6ae2f7bca550 1989 }
Azure.IoT Build 0:6ae2f7bca550 1990
Azure.IoT Build 0:6ae2f7bca550 1991 int begin_set_next_outgoing_id(BEGIN_HANDLE begin, transfer_number next_outgoing_id_value)
Azure.IoT Build 0:6ae2f7bca550 1992 {
Azure.IoT Build 0:6ae2f7bca550 1993 int result;
Azure.IoT Build 0:6ae2f7bca550 1994
Azure.IoT Build 0:6ae2f7bca550 1995 if (begin == NULL)
Azure.IoT Build 0:6ae2f7bca550 1996 {
Azure.IoT Build 0:6ae2f7bca550 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 BEGIN_INSTANCE* begin_instance = (BEGIN_INSTANCE*)begin;
Azure.IoT Build 0:6ae2f7bca550 2002 AMQP_VALUE next_outgoing_id_amqp_value = amqpvalue_create_transfer_number(next_outgoing_id_value);
Azure.IoT Build 0:6ae2f7bca550 2003 if (next_outgoing_id_amqp_value == NULL)
Azure.IoT Build 0:6ae2f7bca550 2004 {
Azure.IoT Build 0:6ae2f7bca550 2005 result = __LINE__;
Azure.IoT Build 0:6ae2f7bca550 2006 }
Azure.IoT Build 0:6ae2f7bca550 2007 else
Azure.IoT Build 0:6ae2f7bca550 2008 {
Azure.IoT Build 0:6ae2f7bca550 2009 if (amqpvalue_set_composite_item(begin_instance->composite_value, 1, next_outgoing_id_amqp_value) != 0)
Azure.IoT Build 0:6ae2f7bca550 2010 {
Azure.IoT Build 0:6ae2f7bca550 2011 result = __LINE__;
Azure.IoT Build 0:6ae2f7bca550 2012 }
Azure.IoT Build 0:6ae2f7bca550 2013 else
Azure.IoT Build 0:6ae2f7bca550 2014 {
Azure.IoT Build 0:6ae2f7bca550 2015 result = 0;
Azure.IoT Build 0:6ae2f7bca550 2016 }
Azure.IoT Build 0:6ae2f7bca550 2017
Azure.IoT Build 0:6ae2f7bca550 2018 amqpvalue_destroy(next_outgoing_id_amqp_value);
Azure.IoT Build 0:6ae2f7bca550 2019 }
Azure.IoT Build 0:6ae2f7bca550 2020 }
Azure.IoT Build 0:6ae2f7bca550 2021
Azure.IoT Build 0:6ae2f7bca550 2022 return result;
Azure.IoT Build 0:6ae2f7bca550 2023 }
Azure.IoT Build 0:6ae2f7bca550 2024
Azure.IoT Build 0:6ae2f7bca550 2025 int begin_get_incoming_window(BEGIN_HANDLE begin, uint32_t* incoming_window_value)
Azure.IoT Build 0:6ae2f7bca550 2026 {
Azure.IoT Build 0:6ae2f7bca550 2027 int result;
Azure.IoT Build 0:6ae2f7bca550 2028
Azure.IoT Build 0:6ae2f7bca550 2029 if (begin == NULL)
Azure.IoT Build 0:6ae2f7bca550 2030 {
Azure.IoT Build 0:6ae2f7bca550 2031 result = __LINE__;
Azure.IoT Build 0:6ae2f7bca550 2032 }
Azure.IoT Build 0:6ae2f7bca550 2033 else
Azure.IoT Build 0:6ae2f7bca550 2034 {
Azure.IoT Build 0:6ae2f7bca550 2035 BEGIN_INSTANCE* begin_instance = (BEGIN_INSTANCE*)begin;
Azure.IoT Build 0:6ae2f7bca550 2036 AMQP_VALUE item_value = amqpvalue_get_composite_item_in_place(begin_instance->composite_value, 2);
Azure.IoT Build 0:6ae2f7bca550 2037 if (item_value == NULL)
Azure.IoT Build 0:6ae2f7bca550 2038 {
Azure.IoT Build 0:6ae2f7bca550 2039 result = __LINE__;
Azure.IoT Build 0:6ae2f7bca550 2040 }
Azure.IoT Build 0:6ae2f7bca550 2041 else
Azure.IoT Build 0:6ae2f7bca550 2042 {
Azure.IoT Build 0:6ae2f7bca550 2043 if (amqpvalue_get_uint(item_value, incoming_window_value) != 0)
Azure.IoT Build 0:6ae2f7bca550 2044 {
Azure.IoT Build 0:6ae2f7bca550 2045 result = __LINE__;
Azure.IoT Build 0:6ae2f7bca550 2046 }
Azure.IoT Build 0:6ae2f7bca550 2047 else
Azure.IoT Build 0:6ae2f7bca550 2048 {
Azure.IoT Build 0:6ae2f7bca550 2049 result = 0;
Azure.IoT Build 0:6ae2f7bca550 2050 }
Azure.IoT Build 0:6ae2f7bca550 2051 }
Azure.IoT Build 0:6ae2f7bca550 2052 }
Azure.IoT Build 0:6ae2f7bca550 2053
Azure.IoT Build 0:6ae2f7bca550 2054 return result;
Azure.IoT Build 0:6ae2f7bca550 2055 }
Azure.IoT Build 0:6ae2f7bca550 2056
Azure.IoT Build 0:6ae2f7bca550 2057 int begin_set_incoming_window(BEGIN_HANDLE begin, uint32_t incoming_window_value)
Azure.IoT Build 0:6ae2f7bca550 2058 {
Azure.IoT Build 0:6ae2f7bca550 2059 int result;
Azure.IoT Build 0:6ae2f7bca550 2060
Azure.IoT Build 0:6ae2f7bca550 2061 if (begin == NULL)
Azure.IoT Build 0:6ae2f7bca550 2062 {
Azure.IoT Build 0:6ae2f7bca550 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 BEGIN_INSTANCE* begin_instance = (BEGIN_INSTANCE*)begin;
Azure.IoT Build 0:6ae2f7bca550 2068 AMQP_VALUE incoming_window_amqp_value = amqpvalue_create_uint(incoming_window_value);
Azure.IoT Build 0:6ae2f7bca550 2069 if (incoming_window_amqp_value == NULL)
Azure.IoT Build 0:6ae2f7bca550 2070 {
Azure.IoT Build 0:6ae2f7bca550 2071 result = __LINE__;
Azure.IoT Build 0:6ae2f7bca550 2072 }
Azure.IoT Build 0:6ae2f7bca550 2073 else
Azure.IoT Build 0:6ae2f7bca550 2074 {
Azure.IoT Build 0:6ae2f7bca550 2075 if (amqpvalue_set_composite_item(begin_instance->composite_value, 2, incoming_window_amqp_value) != 0)
Azure.IoT Build 0:6ae2f7bca550 2076 {
Azure.IoT Build 0:6ae2f7bca550 2077 result = __LINE__;
Azure.IoT Build 0:6ae2f7bca550 2078 }
Azure.IoT Build 0:6ae2f7bca550 2079 else
Azure.IoT Build 0:6ae2f7bca550 2080 {
Azure.IoT Build 0:6ae2f7bca550 2081 result = 0;
Azure.IoT Build 0:6ae2f7bca550 2082 }
Azure.IoT Build 0:6ae2f7bca550 2083
Azure.IoT Build 0:6ae2f7bca550 2084 amqpvalue_destroy(incoming_window_amqp_value);
Azure.IoT Build 0:6ae2f7bca550 2085 }
Azure.IoT Build 0:6ae2f7bca550 2086 }
Azure.IoT Build 0:6ae2f7bca550 2087
Azure.IoT Build 0:6ae2f7bca550 2088 return result;
Azure.IoT Build 0:6ae2f7bca550 2089 }
Azure.IoT Build 0:6ae2f7bca550 2090
Azure.IoT Build 0:6ae2f7bca550 2091 int begin_get_outgoing_window(BEGIN_HANDLE begin, uint32_t* outgoing_window_value)
Azure.IoT Build 0:6ae2f7bca550 2092 {
Azure.IoT Build 0:6ae2f7bca550 2093 int result;
Azure.IoT Build 0:6ae2f7bca550 2094
Azure.IoT Build 0:6ae2f7bca550 2095 if (begin == NULL)
Azure.IoT Build 0:6ae2f7bca550 2096 {
Azure.IoT Build 0:6ae2f7bca550 2097 result = __LINE__;
Azure.IoT Build 0:6ae2f7bca550 2098 }
Azure.IoT Build 0:6ae2f7bca550 2099 else
Azure.IoT Build 0:6ae2f7bca550 2100 {
Azure.IoT Build 0:6ae2f7bca550 2101 BEGIN_INSTANCE* begin_instance = (BEGIN_INSTANCE*)begin;
Azure.IoT Build 0:6ae2f7bca550 2102 AMQP_VALUE item_value = amqpvalue_get_composite_item_in_place(begin_instance->composite_value, 3);
Azure.IoT Build 0:6ae2f7bca550 2103 if (item_value == NULL)
Azure.IoT Build 0:6ae2f7bca550 2104 {
Azure.IoT Build 0:6ae2f7bca550 2105 result = __LINE__;
Azure.IoT Build 0:6ae2f7bca550 2106 }
Azure.IoT Build 0:6ae2f7bca550 2107 else
Azure.IoT Build 0:6ae2f7bca550 2108 {
Azure.IoT Build 0:6ae2f7bca550 2109 if (amqpvalue_get_uint(item_value, outgoing_window_value) != 0)
Azure.IoT Build 0:6ae2f7bca550 2110 {
Azure.IoT Build 0:6ae2f7bca550 2111 result = __LINE__;
Azure.IoT Build 0:6ae2f7bca550 2112 }
Azure.IoT Build 0:6ae2f7bca550 2113 else
Azure.IoT Build 0:6ae2f7bca550 2114 {
Azure.IoT Build 0:6ae2f7bca550 2115 result = 0;
Azure.IoT Build 0:6ae2f7bca550 2116 }
Azure.IoT Build 0:6ae2f7bca550 2117 }
Azure.IoT Build 0:6ae2f7bca550 2118 }
Azure.IoT Build 0:6ae2f7bca550 2119
Azure.IoT Build 0:6ae2f7bca550 2120 return result;
Azure.IoT Build 0:6ae2f7bca550 2121 }
Azure.IoT Build 0:6ae2f7bca550 2122
Azure.IoT Build 0:6ae2f7bca550 2123 int begin_set_outgoing_window(BEGIN_HANDLE begin, uint32_t outgoing_window_value)
Azure.IoT Build 0:6ae2f7bca550 2124 {
Azure.IoT Build 0:6ae2f7bca550 2125 int result;
Azure.IoT Build 0:6ae2f7bca550 2126
Azure.IoT Build 0:6ae2f7bca550 2127 if (begin == NULL)
Azure.IoT Build 0:6ae2f7bca550 2128 {
Azure.IoT Build 0:6ae2f7bca550 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 BEGIN_INSTANCE* begin_instance = (BEGIN_INSTANCE*)begin;
Azure.IoT Build 0:6ae2f7bca550 2134 AMQP_VALUE outgoing_window_amqp_value = amqpvalue_create_uint(outgoing_window_value);
Azure.IoT Build 0:6ae2f7bca550 2135 if (outgoing_window_amqp_value == NULL)
Azure.IoT Build 0:6ae2f7bca550 2136 {
Azure.IoT Build 0:6ae2f7bca550 2137 result = __LINE__;
Azure.IoT Build 0:6ae2f7bca550 2138 }
Azure.IoT Build 0:6ae2f7bca550 2139 else
Azure.IoT Build 0:6ae2f7bca550 2140 {
Azure.IoT Build 0:6ae2f7bca550 2141 if (amqpvalue_set_composite_item(begin_instance->composite_value, 3, outgoing_window_amqp_value) != 0)
Azure.IoT Build 0:6ae2f7bca550 2142 {
Azure.IoT Build 0:6ae2f7bca550 2143 result = __LINE__;
Azure.IoT Build 0:6ae2f7bca550 2144 }
Azure.IoT Build 0:6ae2f7bca550 2145 else
Azure.IoT Build 0:6ae2f7bca550 2146 {
Azure.IoT Build 0:6ae2f7bca550 2147 result = 0;
Azure.IoT Build 0:6ae2f7bca550 2148 }
Azure.IoT Build 0:6ae2f7bca550 2149
Azure.IoT Build 0:6ae2f7bca550 2150 amqpvalue_destroy(outgoing_window_amqp_value);
Azure.IoT Build 0:6ae2f7bca550 2151 }
Azure.IoT Build 0:6ae2f7bca550 2152 }
Azure.IoT Build 0:6ae2f7bca550 2153
Azure.IoT Build 0:6ae2f7bca550 2154 return result;
Azure.IoT Build 0:6ae2f7bca550 2155 }
Azure.IoT Build 0:6ae2f7bca550 2156
Azure.IoT Build 0:6ae2f7bca550 2157 int begin_get_handle_max(BEGIN_HANDLE begin, handle* handle_max_value)
Azure.IoT Build 0:6ae2f7bca550 2158 {
Azure.IoT Build 0:6ae2f7bca550 2159 int result;
Azure.IoT Build 0:6ae2f7bca550 2160
Azure.IoT Build 0:6ae2f7bca550 2161 if (begin == NULL)
Azure.IoT Build 0:6ae2f7bca550 2162 {
Azure.IoT Build 0:6ae2f7bca550 2163 result = __LINE__;
Azure.IoT Build 0:6ae2f7bca550 2164 }
Azure.IoT Build 0:6ae2f7bca550 2165 else
Azure.IoT Build 0:6ae2f7bca550 2166 {
Azure.IoT Build 0:6ae2f7bca550 2167 BEGIN_INSTANCE* begin_instance = (BEGIN_INSTANCE*)begin;
Azure.IoT Build 0:6ae2f7bca550 2168 AMQP_VALUE item_value = amqpvalue_get_composite_item_in_place(begin_instance->composite_value, 4);
Azure.IoT Build 0:6ae2f7bca550 2169 if (item_value == NULL)
Azure.IoT Build 0:6ae2f7bca550 2170 {
Azure.IoT Build 0:6ae2f7bca550 2171 result = __LINE__;
Azure.IoT Build 0:6ae2f7bca550 2172 }
Azure.IoT Build 0:6ae2f7bca550 2173 else
Azure.IoT Build 0:6ae2f7bca550 2174 {
Azure.IoT Build 0:6ae2f7bca550 2175 if (amqpvalue_get_handle(item_value, handle_max_value) != 0)
Azure.IoT Build 0:6ae2f7bca550 2176 {
Azure.IoT Build 0:6ae2f7bca550 2177 result = __LINE__;
Azure.IoT Build 0:6ae2f7bca550 2178 }
Azure.IoT Build 0:6ae2f7bca550 2179 else
Azure.IoT Build 0:6ae2f7bca550 2180 {
Azure.IoT Build 0:6ae2f7bca550 2181 result = 0;
Azure.IoT Build 0:6ae2f7bca550 2182 }
Azure.IoT Build 0:6ae2f7bca550 2183 }
Azure.IoT Build 0:6ae2f7bca550 2184 }
Azure.IoT Build 0:6ae2f7bca550 2185
Azure.IoT Build 0:6ae2f7bca550 2186 return result;
Azure.IoT Build 0:6ae2f7bca550 2187 }
Azure.IoT Build 0:6ae2f7bca550 2188
Azure.IoT Build 0:6ae2f7bca550 2189 int begin_set_handle_max(BEGIN_HANDLE begin, handle handle_max_value)
Azure.IoT Build 0:6ae2f7bca550 2190 {
Azure.IoT Build 0:6ae2f7bca550 2191 int result;
Azure.IoT Build 0:6ae2f7bca550 2192
Azure.IoT Build 0:6ae2f7bca550 2193 if (begin == NULL)
Azure.IoT Build 0:6ae2f7bca550 2194 {
Azure.IoT Build 0:6ae2f7bca550 2195 result = __LINE__;
Azure.IoT Build 0:6ae2f7bca550 2196 }
Azure.IoT Build 0:6ae2f7bca550 2197 else
Azure.IoT Build 0:6ae2f7bca550 2198 {
Azure.IoT Build 0:6ae2f7bca550 2199 BEGIN_INSTANCE* begin_instance = (BEGIN_INSTANCE*)begin;
Azure.IoT Build 0:6ae2f7bca550 2200 AMQP_VALUE handle_max_amqp_value = amqpvalue_create_handle(handle_max_value);
Azure.IoT Build 0:6ae2f7bca550 2201 if (handle_max_amqp_value == NULL)
Azure.IoT Build 0:6ae2f7bca550 2202 {
Azure.IoT Build 0:6ae2f7bca550 2203 result = __LINE__;
Azure.IoT Build 0:6ae2f7bca550 2204 }
Azure.IoT Build 0:6ae2f7bca550 2205 else
Azure.IoT Build 0:6ae2f7bca550 2206 {
Azure.IoT Build 0:6ae2f7bca550 2207 if (amqpvalue_set_composite_item(begin_instance->composite_value, 4, handle_max_amqp_value) != 0)
Azure.IoT Build 0:6ae2f7bca550 2208 {
Azure.IoT Build 0:6ae2f7bca550 2209 result = __LINE__;
Azure.IoT Build 0:6ae2f7bca550 2210 }
Azure.IoT Build 0:6ae2f7bca550 2211 else
Azure.IoT Build 0:6ae2f7bca550 2212 {
Azure.IoT Build 0:6ae2f7bca550 2213 result = 0;
Azure.IoT Build 0:6ae2f7bca550 2214 }
Azure.IoT Build 0:6ae2f7bca550 2215
Azure.IoT Build 0:6ae2f7bca550 2216 amqpvalue_destroy(handle_max_amqp_value);
Azure.IoT Build 0:6ae2f7bca550 2217 }
Azure.IoT Build 0:6ae2f7bca550 2218 }
Azure.IoT Build 0:6ae2f7bca550 2219
Azure.IoT Build 0:6ae2f7bca550 2220 return result;
Azure.IoT Build 0:6ae2f7bca550 2221 }
Azure.IoT Build 0:6ae2f7bca550 2222
Azure.IoT Build 0:6ae2f7bca550 2223 int begin_get_offered_capabilities(BEGIN_HANDLE begin, AMQP_VALUE* offered_capabilities_value)
Azure.IoT Build 0:6ae2f7bca550 2224 {
Azure.IoT Build 0:6ae2f7bca550 2225 int result;
Azure.IoT Build 0:6ae2f7bca550 2226
Azure.IoT Build 0:6ae2f7bca550 2227 if (begin == NULL)
Azure.IoT Build 0:6ae2f7bca550 2228 {
Azure.IoT Build 0:6ae2f7bca550 2229 result = __LINE__;
Azure.IoT Build 0:6ae2f7bca550 2230 }
Azure.IoT Build 0:6ae2f7bca550 2231 else
Azure.IoT Build 0:6ae2f7bca550 2232 {
Azure.IoT Build 0:6ae2f7bca550 2233 BEGIN_INSTANCE* begin_instance = (BEGIN_INSTANCE*)begin;
Azure.IoT Build 0:6ae2f7bca550 2234 AMQP_VALUE item_value = amqpvalue_get_composite_item_in_place(begin_instance->composite_value, 5);
Azure.IoT Build 0:6ae2f7bca550 2235 if (item_value == NULL)
Azure.IoT Build 0:6ae2f7bca550 2236 {
Azure.IoT Build 0:6ae2f7bca550 2237 result = __LINE__;
Azure.IoT Build 0:6ae2f7bca550 2238 }
Azure.IoT Build 0:6ae2f7bca550 2239 else
Azure.IoT Build 0:6ae2f7bca550 2240 {
Azure.IoT Build 0:6ae2f7bca550 2241 if (amqpvalue_get_array(item_value, offered_capabilities_value) != 0)
Azure.IoT Build 0:6ae2f7bca550 2242 {
Azure.IoT Build 0:6ae2f7bca550 2243 result = __LINE__;
Azure.IoT Build 0:6ae2f7bca550 2244 }
Azure.IoT Build 0:6ae2f7bca550 2245 else
Azure.IoT Build 0:6ae2f7bca550 2246 {
Azure.IoT Build 0:6ae2f7bca550 2247 result = 0;
Azure.IoT Build 0:6ae2f7bca550 2248 }
Azure.IoT Build 0:6ae2f7bca550 2249 }
Azure.IoT Build 0:6ae2f7bca550 2250 }
Azure.IoT Build 0:6ae2f7bca550 2251
Azure.IoT Build 0:6ae2f7bca550 2252 return result;
Azure.IoT Build 0:6ae2f7bca550 2253 }
Azure.IoT Build 0:6ae2f7bca550 2254
Azure.IoT Build 0:6ae2f7bca550 2255 int begin_set_offered_capabilities(BEGIN_HANDLE begin, AMQP_VALUE offered_capabilities_value)
Azure.IoT Build 0:6ae2f7bca550 2256 {
Azure.IoT Build 0:6ae2f7bca550 2257 int result;
Azure.IoT Build 0:6ae2f7bca550 2258
Azure.IoT Build 0:6ae2f7bca550 2259 if (begin == NULL)
Azure.IoT Build 0:6ae2f7bca550 2260 {
Azure.IoT Build 0:6ae2f7bca550 2261 result = __LINE__;
Azure.IoT Build 0:6ae2f7bca550 2262 }
Azure.IoT Build 0:6ae2f7bca550 2263 else
Azure.IoT Build 0:6ae2f7bca550 2264 {
Azure.IoT Build 0:6ae2f7bca550 2265 BEGIN_INSTANCE* begin_instance = (BEGIN_INSTANCE*)begin;
Azure.IoT Build 0:6ae2f7bca550 2266 AMQP_VALUE offered_capabilities_amqp_value = amqpvalue_clone(offered_capabilities_value);
Azure.IoT Build 0:6ae2f7bca550 2267 if (offered_capabilities_amqp_value == NULL)
Azure.IoT Build 0:6ae2f7bca550 2268 {
Azure.IoT Build 0:6ae2f7bca550 2269 result = __LINE__;
Azure.IoT Build 0:6ae2f7bca550 2270 }
Azure.IoT Build 0:6ae2f7bca550 2271 else
Azure.IoT Build 0:6ae2f7bca550 2272 {
Azure.IoT Build 0:6ae2f7bca550 2273 if (amqpvalue_set_composite_item(begin_instance->composite_value, 5, offered_capabilities_amqp_value) != 0)
Azure.IoT Build 0:6ae2f7bca550 2274 {
Azure.IoT Build 0:6ae2f7bca550 2275 result = __LINE__;
Azure.IoT Build 0:6ae2f7bca550 2276 }
Azure.IoT Build 0:6ae2f7bca550 2277 else
Azure.IoT Build 0:6ae2f7bca550 2278 {
Azure.IoT Build 0:6ae2f7bca550 2279 result = 0;
Azure.IoT Build 0:6ae2f7bca550 2280 }
Azure.IoT Build 0:6ae2f7bca550 2281
Azure.IoT Build 0:6ae2f7bca550 2282 amqpvalue_destroy(offered_capabilities_amqp_value);
Azure.IoT Build 0:6ae2f7bca550 2283 }
Azure.IoT Build 0:6ae2f7bca550 2284 }
Azure.IoT Build 0:6ae2f7bca550 2285
Azure.IoT Build 0:6ae2f7bca550 2286 return result;
Azure.IoT Build 0:6ae2f7bca550 2287 }
Azure.IoT Build 0:6ae2f7bca550 2288
Azure.IoT Build 0:6ae2f7bca550 2289 int begin_get_desired_capabilities(BEGIN_HANDLE begin, AMQP_VALUE* desired_capabilities_value)
Azure.IoT Build 0:6ae2f7bca550 2290 {
Azure.IoT Build 0:6ae2f7bca550 2291 int result;
Azure.IoT Build 0:6ae2f7bca550 2292
Azure.IoT Build 0:6ae2f7bca550 2293 if (begin == NULL)
Azure.IoT Build 0:6ae2f7bca550 2294 {
Azure.IoT Build 0:6ae2f7bca550 2295 result = __LINE__;
Azure.IoT Build 0:6ae2f7bca550 2296 }
Azure.IoT Build 0:6ae2f7bca550 2297 else
Azure.IoT Build 0:6ae2f7bca550 2298 {
Azure.IoT Build 0:6ae2f7bca550 2299 BEGIN_INSTANCE* begin_instance = (BEGIN_INSTANCE*)begin;
Azure.IoT Build 0:6ae2f7bca550 2300 AMQP_VALUE item_value = amqpvalue_get_composite_item_in_place(begin_instance->composite_value, 6);
Azure.IoT Build 0:6ae2f7bca550 2301 if (item_value == NULL)
Azure.IoT Build 0:6ae2f7bca550 2302 {
Azure.IoT Build 0:6ae2f7bca550 2303 result = __LINE__;
Azure.IoT Build 0:6ae2f7bca550 2304 }
Azure.IoT Build 0:6ae2f7bca550 2305 else
Azure.IoT Build 0:6ae2f7bca550 2306 {
Azure.IoT Build 0:6ae2f7bca550 2307 if (amqpvalue_get_array(item_value, desired_capabilities_value) != 0)
Azure.IoT Build 0:6ae2f7bca550 2308 {
Azure.IoT Build 0:6ae2f7bca550 2309 result = __LINE__;
Azure.IoT Build 0:6ae2f7bca550 2310 }
Azure.IoT Build 0:6ae2f7bca550 2311 else
Azure.IoT Build 0:6ae2f7bca550 2312 {
Azure.IoT Build 0:6ae2f7bca550 2313 result = 0;
Azure.IoT Build 0:6ae2f7bca550 2314 }
Azure.IoT Build 0:6ae2f7bca550 2315 }
Azure.IoT Build 0:6ae2f7bca550 2316 }
Azure.IoT Build 0:6ae2f7bca550 2317
Azure.IoT Build 0:6ae2f7bca550 2318 return result;
Azure.IoT Build 0:6ae2f7bca550 2319 }
Azure.IoT Build 0:6ae2f7bca550 2320
Azure.IoT Build 0:6ae2f7bca550 2321 int begin_set_desired_capabilities(BEGIN_HANDLE begin, AMQP_VALUE desired_capabilities_value)
Azure.IoT Build 0:6ae2f7bca550 2322 {
Azure.IoT Build 0:6ae2f7bca550 2323 int result;
Azure.IoT Build 0:6ae2f7bca550 2324
Azure.IoT Build 0:6ae2f7bca550 2325 if (begin == NULL)
Azure.IoT Build 0:6ae2f7bca550 2326 {
Azure.IoT Build 0:6ae2f7bca550 2327 result = __LINE__;
Azure.IoT Build 0:6ae2f7bca550 2328 }
Azure.IoT Build 0:6ae2f7bca550 2329 else
Azure.IoT Build 0:6ae2f7bca550 2330 {
Azure.IoT Build 0:6ae2f7bca550 2331 BEGIN_INSTANCE* begin_instance = (BEGIN_INSTANCE*)begin;
Azure.IoT Build 0:6ae2f7bca550 2332 AMQP_VALUE desired_capabilities_amqp_value = amqpvalue_clone(desired_capabilities_value);
Azure.IoT Build 0:6ae2f7bca550 2333 if (desired_capabilities_amqp_value == NULL)
Azure.IoT Build 0:6ae2f7bca550 2334 {
Azure.IoT Build 0:6ae2f7bca550 2335 result = __LINE__;
Azure.IoT Build 0:6ae2f7bca550 2336 }
Azure.IoT Build 0:6ae2f7bca550 2337 else
Azure.IoT Build 0:6ae2f7bca550 2338 {
Azure.IoT Build 0:6ae2f7bca550 2339 if (amqpvalue_set_composite_item(begin_instance->composite_value, 6, desired_capabilities_amqp_value) != 0)
Azure.IoT Build 0:6ae2f7bca550 2340 {
Azure.IoT Build 0:6ae2f7bca550 2341 result = __LINE__;
Azure.IoT Build 0:6ae2f7bca550 2342 }
Azure.IoT Build 0:6ae2f7bca550 2343 else
Azure.IoT Build 0:6ae2f7bca550 2344 {
Azure.IoT Build 0:6ae2f7bca550 2345 result = 0;
Azure.IoT Build 0:6ae2f7bca550 2346 }
Azure.IoT Build 0:6ae2f7bca550 2347
Azure.IoT Build 0:6ae2f7bca550 2348 amqpvalue_destroy(desired_capabilities_amqp_value);
Azure.IoT Build 0:6ae2f7bca550 2349 }
Azure.IoT Build 0:6ae2f7bca550 2350 }
Azure.IoT Build 0:6ae2f7bca550 2351
Azure.IoT Build 0:6ae2f7bca550 2352 return result;
Azure.IoT Build 0:6ae2f7bca550 2353 }
Azure.IoT Build 0:6ae2f7bca550 2354
Azure.IoT Build 0:6ae2f7bca550 2355 int begin_get_properties(BEGIN_HANDLE begin, fields* properties_value)
Azure.IoT Build 0:6ae2f7bca550 2356 {
Azure.IoT Build 0:6ae2f7bca550 2357 int result;
Azure.IoT Build 0:6ae2f7bca550 2358
Azure.IoT Build 0:6ae2f7bca550 2359 if (begin == NULL)
Azure.IoT Build 0:6ae2f7bca550 2360 {
Azure.IoT Build 0:6ae2f7bca550 2361 result = __LINE__;
Azure.IoT Build 0:6ae2f7bca550 2362 }
Azure.IoT Build 0:6ae2f7bca550 2363 else
Azure.IoT Build 0:6ae2f7bca550 2364 {
Azure.IoT Build 0:6ae2f7bca550 2365 BEGIN_INSTANCE* begin_instance = (BEGIN_INSTANCE*)begin;
Azure.IoT Build 0:6ae2f7bca550 2366 AMQP_VALUE item_value = amqpvalue_get_composite_item_in_place(begin_instance->composite_value, 7);
Azure.IoT Build 0:6ae2f7bca550 2367 if (item_value == NULL)
Azure.IoT Build 0:6ae2f7bca550 2368 {
Azure.IoT Build 0:6ae2f7bca550 2369 result = __LINE__;
Azure.IoT Build 0:6ae2f7bca550 2370 }
Azure.IoT Build 0:6ae2f7bca550 2371 else
Azure.IoT Build 0:6ae2f7bca550 2372 {
Azure.IoT Build 0:6ae2f7bca550 2373 if (amqpvalue_get_fields(item_value, properties_value) != 0)
Azure.IoT Build 0:6ae2f7bca550 2374 {
Azure.IoT Build 0:6ae2f7bca550 2375 result = __LINE__;
Azure.IoT Build 0:6ae2f7bca550 2376 }
Azure.IoT Build 0:6ae2f7bca550 2377 else
Azure.IoT Build 0:6ae2f7bca550 2378 {
Azure.IoT Build 0:6ae2f7bca550 2379 result = 0;
Azure.IoT Build 0:6ae2f7bca550 2380 }
Azure.IoT Build 0:6ae2f7bca550 2381 }
Azure.IoT Build 0:6ae2f7bca550 2382 }
Azure.IoT Build 0:6ae2f7bca550 2383
Azure.IoT Build 0:6ae2f7bca550 2384 return result;
Azure.IoT Build 0:6ae2f7bca550 2385 }
Azure.IoT Build 0:6ae2f7bca550 2386
Azure.IoT Build 0:6ae2f7bca550 2387 int begin_set_properties(BEGIN_HANDLE begin, fields properties_value)
Azure.IoT Build 0:6ae2f7bca550 2388 {
Azure.IoT Build 0:6ae2f7bca550 2389 int result;
Azure.IoT Build 0:6ae2f7bca550 2390
Azure.IoT Build 0:6ae2f7bca550 2391 if (begin == NULL)
Azure.IoT Build 0:6ae2f7bca550 2392 {
Azure.IoT Build 0:6ae2f7bca550 2393 result = __LINE__;
Azure.IoT Build 0:6ae2f7bca550 2394 }
Azure.IoT Build 0:6ae2f7bca550 2395 else
Azure.IoT Build 0:6ae2f7bca550 2396 {
Azure.IoT Build 0:6ae2f7bca550 2397 BEGIN_INSTANCE* begin_instance = (BEGIN_INSTANCE*)begin;
Azure.IoT Build 0:6ae2f7bca550 2398 AMQP_VALUE properties_amqp_value = amqpvalue_create_fields(properties_value);
Azure.IoT Build 0:6ae2f7bca550 2399 if (properties_amqp_value == NULL)
Azure.IoT Build 0:6ae2f7bca550 2400 {
Azure.IoT Build 0:6ae2f7bca550 2401 result = __LINE__;
Azure.IoT Build 0:6ae2f7bca550 2402 }
Azure.IoT Build 0:6ae2f7bca550 2403 else
Azure.IoT Build 0:6ae2f7bca550 2404 {
Azure.IoT Build 0:6ae2f7bca550 2405 if (amqpvalue_set_composite_item(begin_instance->composite_value, 7, properties_amqp_value) != 0)
Azure.IoT Build 0:6ae2f7bca550 2406 {
Azure.IoT Build 0:6ae2f7bca550 2407 result = __LINE__;
Azure.IoT Build 0:6ae2f7bca550 2408 }
Azure.IoT Build 0:6ae2f7bca550 2409 else
Azure.IoT Build 0:6ae2f7bca550 2410 {
Azure.IoT Build 0:6ae2f7bca550 2411 result = 0;
Azure.IoT Build 0:6ae2f7bca550 2412 }
Azure.IoT Build 0:6ae2f7bca550 2413
Azure.IoT Build 0:6ae2f7bca550 2414 amqpvalue_destroy(properties_amqp_value);
Azure.IoT Build 0:6ae2f7bca550 2415 }
Azure.IoT Build 0:6ae2f7bca550 2416 }
Azure.IoT Build 0:6ae2f7bca550 2417
Azure.IoT Build 0:6ae2f7bca550 2418 return result;
Azure.IoT Build 0:6ae2f7bca550 2419 }
Azure.IoT Build 0:6ae2f7bca550 2420
Azure.IoT Build 0:6ae2f7bca550 2421
Azure.IoT Build 0:6ae2f7bca550 2422 /* attach */
Azure.IoT Build 0:6ae2f7bca550 2423
Azure.IoT Build 0:6ae2f7bca550 2424 typedef struct ATTACH_INSTANCE_TAG
Azure.IoT Build 0:6ae2f7bca550 2425 {
Azure.IoT Build 0:6ae2f7bca550 2426 AMQP_VALUE composite_value;
Azure.IoT Build 0:6ae2f7bca550 2427 } ATTACH_INSTANCE;
Azure.IoT Build 0:6ae2f7bca550 2428
Azure.IoT Build 0:6ae2f7bca550 2429 static ATTACH_HANDLE attach_create_internal(void)
Azure.IoT Build 0:6ae2f7bca550 2430 {
Azure.IoT Build 0:6ae2f7bca550 2431 ATTACH_INSTANCE* attach_instance = (ATTACH_INSTANCE*)amqpalloc_malloc(sizeof(ATTACH_INSTANCE));
Azure.IoT Build 0:6ae2f7bca550 2432 if (attach_instance != NULL)
Azure.IoT Build 0:6ae2f7bca550 2433 {
Azure.IoT Build 0:6ae2f7bca550 2434 attach_instance->composite_value = NULL;
Azure.IoT Build 0:6ae2f7bca550 2435 }
Azure.IoT Build 0:6ae2f7bca550 2436
Azure.IoT Build 0:6ae2f7bca550 2437 return attach_instance;
Azure.IoT Build 0:6ae2f7bca550 2438 }
Azure.IoT Build 0:6ae2f7bca550 2439
Azure.IoT Build 0:6ae2f7bca550 2440 ATTACH_HANDLE attach_create(const char* name_value, handle handle_value, role role_value)
Azure.IoT Build 0:6ae2f7bca550 2441 {
Azure.IoT Build 0:6ae2f7bca550 2442 ATTACH_INSTANCE* attach_instance = (ATTACH_INSTANCE*)amqpalloc_malloc(sizeof(ATTACH_INSTANCE));
Azure.IoT Build 0:6ae2f7bca550 2443 if (attach_instance != NULL)
Azure.IoT Build 0:6ae2f7bca550 2444 {
Azure.IoT Build 0:6ae2f7bca550 2445 attach_instance->composite_value = amqpvalue_create_composite_with_ulong_descriptor(18);
Azure.IoT Build 0:6ae2f7bca550 2446 if (attach_instance->composite_value == NULL)
Azure.IoT Build 0:6ae2f7bca550 2447 {
Azure.IoT Build 0:6ae2f7bca550 2448 amqpalloc_free(attach_instance);
Azure.IoT Build 0:6ae2f7bca550 2449 attach_instance = NULL;
Azure.IoT Build 0:6ae2f7bca550 2450 }
Azure.IoT Build 0:6ae2f7bca550 2451 else
Azure.IoT Build 0:6ae2f7bca550 2452 {
Azure.IoT Build 0:6ae2f7bca550 2453 AMQP_VALUE name_amqp_value;
Azure.IoT Build 0:6ae2f7bca550 2454 AMQP_VALUE handle_amqp_value;
Azure.IoT Build 0:6ae2f7bca550 2455 AMQP_VALUE role_amqp_value;
Azure.IoT Build 0:6ae2f7bca550 2456 int result = 0;
Azure.IoT Build 0:6ae2f7bca550 2457
Azure.IoT Build 0:6ae2f7bca550 2458 name_amqp_value = amqpvalue_create_string(name_value);
Azure.IoT Build 0:6ae2f7bca550 2459 if ((result == 0) && (amqpvalue_set_composite_item(attach_instance->composite_value, 0, name_amqp_value) != 0))
Azure.IoT Build 0:6ae2f7bca550 2460 {
Azure.IoT Build 0:6ae2f7bca550 2461 result = __LINE__;
Azure.IoT Build 0:6ae2f7bca550 2462 }
Azure.IoT Build 0:6ae2f7bca550 2463 handle_amqp_value = amqpvalue_create_handle(handle_value);
Azure.IoT Build 0:6ae2f7bca550 2464 if ((result == 0) && (amqpvalue_set_composite_item(attach_instance->composite_value, 1, handle_amqp_value) != 0))
Azure.IoT Build 0:6ae2f7bca550 2465 {
Azure.IoT Build 0:6ae2f7bca550 2466 result = __LINE__;
Azure.IoT Build 0:6ae2f7bca550 2467 }
Azure.IoT Build 0:6ae2f7bca550 2468 role_amqp_value = amqpvalue_create_role(role_value);
Azure.IoT Build 0:6ae2f7bca550 2469 if ((result == 0) && (amqpvalue_set_composite_item(attach_instance->composite_value, 2, role_amqp_value) != 0))
Azure.IoT Build 0:6ae2f7bca550 2470 {
Azure.IoT Build 0:6ae2f7bca550 2471 result = __LINE__;
Azure.IoT Build 0:6ae2f7bca550 2472 }
Azure.IoT Build 0:6ae2f7bca550 2473
Azure.IoT Build 0:6ae2f7bca550 2474 amqpvalue_destroy(name_amqp_value);
Azure.IoT Build 0:6ae2f7bca550 2475 amqpvalue_destroy(handle_amqp_value);
Azure.IoT Build 0:6ae2f7bca550 2476 amqpvalue_destroy(role_amqp_value);
Azure.IoT Build 0:6ae2f7bca550 2477 }
Azure.IoT Build 0:6ae2f7bca550 2478 }
Azure.IoT Build 0:6ae2f7bca550 2479
Azure.IoT Build 0:6ae2f7bca550 2480 return attach_instance;
Azure.IoT Build 0:6ae2f7bca550 2481 }
Azure.IoT Build 0:6ae2f7bca550 2482
Azure.IoT Build 0:6ae2f7bca550 2483 ATTACH_HANDLE attach_clone(ATTACH_HANDLE value)
Azure.IoT Build 0:6ae2f7bca550 2484 {
Azure.IoT Build 0:6ae2f7bca550 2485 ATTACH_INSTANCE* attach_instance = (ATTACH_INSTANCE*)amqpalloc_malloc(sizeof(ATTACH_INSTANCE));
Azure.IoT Build 0:6ae2f7bca550 2486 if (attach_instance != NULL)
Azure.IoT Build 0:6ae2f7bca550 2487 {
Azure.IoT Build 0:6ae2f7bca550 2488 attach_instance->composite_value = amqpvalue_clone(((ATTACH_INSTANCE*)value)->composite_value);
Azure.IoT Build 0:6ae2f7bca550 2489 if (attach_instance->composite_value == NULL)
Azure.IoT Build 0:6ae2f7bca550 2490 {
Azure.IoT Build 0:6ae2f7bca550 2491 amqpalloc_free(attach_instance);
Azure.IoT Build 0:6ae2f7bca550 2492 attach_instance = NULL;
Azure.IoT Build 0:6ae2f7bca550 2493 }
Azure.IoT Build 0:6ae2f7bca550 2494 }
Azure.IoT Build 0:6ae2f7bca550 2495
Azure.IoT Build 0:6ae2f7bca550 2496 return attach_instance;
Azure.IoT Build 0:6ae2f7bca550 2497 }
Azure.IoT Build 0:6ae2f7bca550 2498
Azure.IoT Build 0:6ae2f7bca550 2499 void attach_destroy(ATTACH_HANDLE attach)
Azure.IoT Build 0:6ae2f7bca550 2500 {
Azure.IoT Build 0:6ae2f7bca550 2501 if (attach != NULL)
Azure.IoT Build 0:6ae2f7bca550 2502 {
Azure.IoT Build 0:6ae2f7bca550 2503 ATTACH_INSTANCE* attach_instance = (ATTACH_INSTANCE*)attach;
Azure.IoT Build 0:6ae2f7bca550 2504 amqpvalue_destroy(attach_instance->composite_value);
Azure.IoT Build 0:6ae2f7bca550 2505 amqpalloc_free(attach_instance);
Azure.IoT Build 0:6ae2f7bca550 2506 }
Azure.IoT Build 0:6ae2f7bca550 2507 }
Azure.IoT Build 0:6ae2f7bca550 2508
Azure.IoT Build 0:6ae2f7bca550 2509 AMQP_VALUE amqpvalue_create_attach(ATTACH_HANDLE attach)
Azure.IoT Build 0:6ae2f7bca550 2510 {
Azure.IoT Build 0:6ae2f7bca550 2511 AMQP_VALUE result;
Azure.IoT Build 0:6ae2f7bca550 2512
Azure.IoT Build 0:6ae2f7bca550 2513 if (attach == NULL)
Azure.IoT Build 0:6ae2f7bca550 2514 {
Azure.IoT Build 0:6ae2f7bca550 2515 result = NULL;
Azure.IoT Build 0:6ae2f7bca550 2516 }
Azure.IoT Build 0:6ae2f7bca550 2517 else
Azure.IoT Build 0:6ae2f7bca550 2518 {
Azure.IoT Build 0:6ae2f7bca550 2519 ATTACH_INSTANCE* attach_instance = (ATTACH_INSTANCE*)attach;
Azure.IoT Build 0:6ae2f7bca550 2520 result = amqpvalue_clone(attach_instance->composite_value);
Azure.IoT Build 0:6ae2f7bca550 2521 }
Azure.IoT Build 0:6ae2f7bca550 2522
Azure.IoT Build 0:6ae2f7bca550 2523 return result;
Azure.IoT Build 0:6ae2f7bca550 2524 }
Azure.IoT Build 0:6ae2f7bca550 2525
Azure.IoT Build 0:6ae2f7bca550 2526 bool is_attach_type_by_descriptor(AMQP_VALUE descriptor)
Azure.IoT Build 0:6ae2f7bca550 2527 {
Azure.IoT Build 0:6ae2f7bca550 2528 bool result;
Azure.IoT Build 0:6ae2f7bca550 2529
Azure.IoT Build 0:6ae2f7bca550 2530 uint64_t descriptor_ulong;
Azure.IoT Build 0:6ae2f7bca550 2531 if ((amqpvalue_get_ulong(descriptor, &descriptor_ulong) == 0) &&
Azure.IoT Build 0:6ae2f7bca550 2532 (descriptor_ulong == 18))
Azure.IoT Build 0:6ae2f7bca550 2533 {
Azure.IoT Build 0:6ae2f7bca550 2534 result = true;
Azure.IoT Build 0:6ae2f7bca550 2535 }
Azure.IoT Build 0:6ae2f7bca550 2536 else
Azure.IoT Build 0:6ae2f7bca550 2537 {
Azure.IoT Build 0:6ae2f7bca550 2538 result = false;
Azure.IoT Build 0:6ae2f7bca550 2539 }
Azure.IoT Build 0:6ae2f7bca550 2540
Azure.IoT Build 0:6ae2f7bca550 2541 return result;
Azure.IoT Build 0:6ae2f7bca550 2542 }
Azure.IoT Build 0:6ae2f7bca550 2543
Azure.IoT Build 0:6ae2f7bca550 2544
Azure.IoT Build 0:6ae2f7bca550 2545 int amqpvalue_get_attach(AMQP_VALUE value, ATTACH_HANDLE* attach_handle)
Azure.IoT Build 0:6ae2f7bca550 2546 {
Azure.IoT Build 0:6ae2f7bca550 2547 int result;
Azure.IoT Build 0:6ae2f7bca550 2548 ATTACH_INSTANCE* attach_instance = (ATTACH_INSTANCE*)attach_create_internal();
Azure.IoT Build 0:6ae2f7bca550 2549 *attach_handle = attach_instance;
Azure.IoT Build 0:6ae2f7bca550 2550 if (*attach_handle == NULL)
Azure.IoT Build 0:6ae2f7bca550 2551 {
Azure.IoT Build 0:6ae2f7bca550 2552 result = __LINE__;
Azure.IoT Build 0:6ae2f7bca550 2553 }
Azure.IoT Build 0:6ae2f7bca550 2554 else
Azure.IoT Build 0:6ae2f7bca550 2555 {
Azure.IoT Build 0:6ae2f7bca550 2556 AMQP_VALUE list_value = amqpvalue_get_inplace_described_value(value);
Azure.IoT Build 0:6ae2f7bca550 2557 if (list_value == NULL)
Azure.IoT Build 0:6ae2f7bca550 2558 {
Azure.IoT Build 0:6ae2f7bca550 2559 attach_destroy(*attach_handle);
Azure.IoT Build 0:6ae2f7bca550 2560 result = __LINE__;
Azure.IoT Build 0:6ae2f7bca550 2561 }
Azure.IoT Build 0:6ae2f7bca550 2562 else
Azure.IoT Build 0:6ae2f7bca550 2563 {
Azure.IoT Build 0:6ae2f7bca550 2564 do
Azure.IoT Build 0:6ae2f7bca550 2565 {
Azure.IoT Build 0:6ae2f7bca550 2566 AMQP_VALUE item_value;
Azure.IoT Build 0:6ae2f7bca550 2567 /* name */
Azure.IoT Build 0:6ae2f7bca550 2568 item_value = amqpvalue_get_list_item(list_value, 0);
Azure.IoT Build 0:6ae2f7bca550 2569 if (item_value == NULL)
Azure.IoT Build 0:6ae2f7bca550 2570 {
Azure.IoT Build 0:6ae2f7bca550 2571 {
Azure.IoT Build 0:6ae2f7bca550 2572 attach_destroy(*attach_handle);
Azure.IoT Build 0:6ae2f7bca550 2573 result = __LINE__;
Azure.IoT Build 0:6ae2f7bca550 2574 break;
Azure.IoT Build 0:6ae2f7bca550 2575 }
Azure.IoT Build 0:6ae2f7bca550 2576 }
Azure.IoT Build 0:6ae2f7bca550 2577 else
Azure.IoT Build 0:6ae2f7bca550 2578 {
Azure.IoT Build 0:6ae2f7bca550 2579 const char* name;
Azure.IoT Build 0:6ae2f7bca550 2580 if (amqpvalue_get_string(item_value, &name) != 0)
Azure.IoT Build 0:6ae2f7bca550 2581 {
Azure.IoT Build 0:6ae2f7bca550 2582 attach_destroy(*attach_handle);
Azure.IoT Build 0:6ae2f7bca550 2583 result = __LINE__;
Azure.IoT Build 0:6ae2f7bca550 2584 break;
Azure.IoT Build 0:6ae2f7bca550 2585 }
Azure.IoT Build 0:6ae2f7bca550 2586
Azure.IoT Build 0:6ae2f7bca550 2587 amqpvalue_destroy(item_value);
Azure.IoT Build 0:6ae2f7bca550 2588 }
Azure.IoT Build 0:6ae2f7bca550 2589 /* handle */
Azure.IoT Build 0:6ae2f7bca550 2590 item_value = amqpvalue_get_list_item(list_value, 1);
Azure.IoT Build 0:6ae2f7bca550 2591 if (item_value == NULL)
Azure.IoT Build 0:6ae2f7bca550 2592 {
Azure.IoT Build 0:6ae2f7bca550 2593 {
Azure.IoT Build 0:6ae2f7bca550 2594 attach_destroy(*attach_handle);
Azure.IoT Build 0:6ae2f7bca550 2595 result = __LINE__;
Azure.IoT Build 0:6ae2f7bca550 2596 break;
Azure.IoT Build 0:6ae2f7bca550 2597 }
Azure.IoT Build 0:6ae2f7bca550 2598 }
Azure.IoT Build 0:6ae2f7bca550 2599 else
Azure.IoT Build 0:6ae2f7bca550 2600 {
Azure.IoT Build 0:6ae2f7bca550 2601 handle handle;
Azure.IoT Build 0:6ae2f7bca550 2602 if (amqpvalue_get_handle(item_value, &handle) != 0)
Azure.IoT Build 0:6ae2f7bca550 2603 {
Azure.IoT Build 0:6ae2f7bca550 2604 attach_destroy(*attach_handle);
Azure.IoT Build 0:6ae2f7bca550 2605 result = __LINE__;
Azure.IoT Build 0:6ae2f7bca550 2606 break;
Azure.IoT Build 0:6ae2f7bca550 2607 }
Azure.IoT Build 0:6ae2f7bca550 2608
Azure.IoT Build 0:6ae2f7bca550 2609 amqpvalue_destroy(item_value);
Azure.IoT Build 0:6ae2f7bca550 2610 }
Azure.IoT Build 0:6ae2f7bca550 2611 /* role */
Azure.IoT Build 0:6ae2f7bca550 2612 item_value = amqpvalue_get_list_item(list_value, 2);
Azure.IoT Build 0:6ae2f7bca550 2613 if (item_value == NULL)
Azure.IoT Build 0:6ae2f7bca550 2614 {
Azure.IoT Build 0:6ae2f7bca550 2615 {
Azure.IoT Build 0:6ae2f7bca550 2616 attach_destroy(*attach_handle);
Azure.IoT Build 0:6ae2f7bca550 2617 result = __LINE__;
Azure.IoT Build 0:6ae2f7bca550 2618 break;
Azure.IoT Build 0:6ae2f7bca550 2619 }
Azure.IoT Build 0:6ae2f7bca550 2620 }
Azure.IoT Build 0:6ae2f7bca550 2621 else
Azure.IoT Build 0:6ae2f7bca550 2622 {
Azure.IoT Build 0:6ae2f7bca550 2623 role role;
Azure.IoT Build 0:6ae2f7bca550 2624 if (amqpvalue_get_role(item_value, &role) != 0)
Azure.IoT Build 0:6ae2f7bca550 2625 {
Azure.IoT Build 0:6ae2f7bca550 2626 attach_destroy(*attach_handle);
Azure.IoT Build 0:6ae2f7bca550 2627 result = __LINE__;
Azure.IoT Build 0:6ae2f7bca550 2628 break;
Azure.IoT Build 0:6ae2f7bca550 2629 }
Azure.IoT Build 0:6ae2f7bca550 2630
Azure.IoT Build 0:6ae2f7bca550 2631 amqpvalue_destroy(item_value);
Azure.IoT Build 0:6ae2f7bca550 2632 }
Azure.IoT Build 0:6ae2f7bca550 2633 /* snd-settle-mode */
Azure.IoT Build 0:6ae2f7bca550 2634 item_value = amqpvalue_get_list_item(list_value, 3);
Azure.IoT Build 0:6ae2f7bca550 2635 if (item_value == NULL)
Azure.IoT Build 0:6ae2f7bca550 2636 {
Azure.IoT Build 0:6ae2f7bca550 2637 /* do nothing */
Azure.IoT Build 0:6ae2f7bca550 2638 }
Azure.IoT Build 0:6ae2f7bca550 2639 else
Azure.IoT Build 0:6ae2f7bca550 2640 {
Azure.IoT Build 0:6ae2f7bca550 2641 sender_settle_mode snd_settle_mode;
Azure.IoT Build 0:6ae2f7bca550 2642 if (amqpvalue_get_sender_settle_mode(item_value, &snd_settle_mode) != 0)
Azure.IoT Build 0:6ae2f7bca550 2643 {
Azure.IoT Build 0:6ae2f7bca550 2644 if (amqpvalue_get_type(item_value) != AMQP_TYPE_NULL)
Azure.IoT Build 0:6ae2f7bca550 2645 {
Azure.IoT Build 0:6ae2f7bca550 2646 attach_destroy(*attach_handle);
Azure.IoT Build 0:6ae2f7bca550 2647 result = __LINE__;
Azure.IoT Build 0:6ae2f7bca550 2648 break;
Azure.IoT Build 0:6ae2f7bca550 2649 }
Azure.IoT Build 0:6ae2f7bca550 2650 }
Azure.IoT Build 0:6ae2f7bca550 2651
Azure.IoT Build 0:6ae2f7bca550 2652 amqpvalue_destroy(item_value);
Azure.IoT Build 0:6ae2f7bca550 2653 }
Azure.IoT Build 0:6ae2f7bca550 2654 /* rcv-settle-mode */
Azure.IoT Build 0:6ae2f7bca550 2655 item_value = amqpvalue_get_list_item(list_value, 4);
Azure.IoT Build 0:6ae2f7bca550 2656 if (item_value == NULL)
Azure.IoT Build 0:6ae2f7bca550 2657 {
Azure.IoT Build 0:6ae2f7bca550 2658 /* do nothing */
Azure.IoT Build 0:6ae2f7bca550 2659 }
Azure.IoT Build 0:6ae2f7bca550 2660 else
Azure.IoT Build 0:6ae2f7bca550 2661 {
Azure.IoT Build 0:6ae2f7bca550 2662 receiver_settle_mode rcv_settle_mode;
Azure.IoT Build 0:6ae2f7bca550 2663 if (amqpvalue_get_receiver_settle_mode(item_value, &rcv_settle_mode) != 0)
Azure.IoT Build 0:6ae2f7bca550 2664 {
Azure.IoT Build 0:6ae2f7bca550 2665 if (amqpvalue_get_type(item_value) != AMQP_TYPE_NULL)
Azure.IoT Build 0:6ae2f7bca550 2666 {
Azure.IoT Build 0:6ae2f7bca550 2667 attach_destroy(*attach_handle);
Azure.IoT Build 0:6ae2f7bca550 2668 result = __LINE__;
Azure.IoT Build 0:6ae2f7bca550 2669 break;
Azure.IoT Build 0:6ae2f7bca550 2670 }
Azure.IoT Build 0:6ae2f7bca550 2671 }
Azure.IoT Build 0:6ae2f7bca550 2672
Azure.IoT Build 0:6ae2f7bca550 2673 amqpvalue_destroy(item_value);
Azure.IoT Build 0:6ae2f7bca550 2674 }
Azure.IoT Build 0:6ae2f7bca550 2675 /* source */
Azure.IoT Build 0:6ae2f7bca550 2676 item_value = amqpvalue_get_list_item(list_value, 5);
Azure.IoT Build 0:6ae2f7bca550 2677 if (item_value == NULL)
Azure.IoT Build 0:6ae2f7bca550 2678 {
Azure.IoT Build 0:6ae2f7bca550 2679 /* do nothing */
Azure.IoT Build 0:6ae2f7bca550 2680 }
Azure.IoT Build 0:6ae2f7bca550 2681 else
Azure.IoT Build 0:6ae2f7bca550 2682 {
Azure.IoT Build 0:6ae2f7bca550 2683 amqpvalue_destroy(item_value);
Azure.IoT Build 0:6ae2f7bca550 2684 }
Azure.IoT Build 0:6ae2f7bca550 2685 /* target */
Azure.IoT Build 0:6ae2f7bca550 2686 item_value = amqpvalue_get_list_item(list_value, 6);
Azure.IoT Build 0:6ae2f7bca550 2687 if (item_value == NULL)
Azure.IoT Build 0:6ae2f7bca550 2688 {
Azure.IoT Build 0:6ae2f7bca550 2689 /* do nothing */
Azure.IoT Build 0:6ae2f7bca550 2690 }
Azure.IoT Build 0:6ae2f7bca550 2691 else
Azure.IoT Build 0:6ae2f7bca550 2692 {
Azure.IoT Build 0:6ae2f7bca550 2693 amqpvalue_destroy(item_value);
Azure.IoT Build 0:6ae2f7bca550 2694 }
Azure.IoT Build 0:6ae2f7bca550 2695 /* unsettled */
Azure.IoT Build 0:6ae2f7bca550 2696 item_value = amqpvalue_get_list_item(list_value, 7);
Azure.IoT Build 0:6ae2f7bca550 2697 if (item_value == NULL)
Azure.IoT Build 0:6ae2f7bca550 2698 {
Azure.IoT Build 0:6ae2f7bca550 2699 /* do nothing */
Azure.IoT Build 0:6ae2f7bca550 2700 }
Azure.IoT Build 0:6ae2f7bca550 2701 else
Azure.IoT Build 0:6ae2f7bca550 2702 {
Azure.IoT Build 0:6ae2f7bca550 2703 AMQP_VALUE unsettled;
Azure.IoT Build 0:6ae2f7bca550 2704 if (amqpvalue_get_map(item_value, &unsettled) != 0)
Azure.IoT Build 0:6ae2f7bca550 2705 {
Azure.IoT Build 0:6ae2f7bca550 2706 if (amqpvalue_get_type(item_value) != AMQP_TYPE_NULL)
Azure.IoT Build 0:6ae2f7bca550 2707 {
Azure.IoT Build 0:6ae2f7bca550 2708 attach_destroy(*attach_handle);
Azure.IoT Build 0:6ae2f7bca550 2709 result = __LINE__;
Azure.IoT Build 0:6ae2f7bca550 2710 break;
Azure.IoT Build 0:6ae2f7bca550 2711 }
Azure.IoT Build 0:6ae2f7bca550 2712 }
Azure.IoT Build 0:6ae2f7bca550 2713
Azure.IoT Build 0:6ae2f7bca550 2714 amqpvalue_destroy(item_value);
Azure.IoT Build 0:6ae2f7bca550 2715 }
Azure.IoT Build 0:6ae2f7bca550 2716 /* incomplete-unsettled */
Azure.IoT Build 0:6ae2f7bca550 2717 item_value = amqpvalue_get_list_item(list_value, 8);
Azure.IoT Build 0:6ae2f7bca550 2718 if (item_value == NULL)
Azure.IoT Build 0:6ae2f7bca550 2719 {
Azure.IoT Build 0:6ae2f7bca550 2720 /* do nothing */
Azure.IoT Build 0:6ae2f7bca550 2721 }
Azure.IoT Build 0:6ae2f7bca550 2722 else
Azure.IoT Build 0:6ae2f7bca550 2723 {
Azure.IoT Build 0:6ae2f7bca550 2724 bool incomplete_unsettled;
Azure.IoT Build 0:6ae2f7bca550 2725 if (amqpvalue_get_boolean(item_value, &incomplete_unsettled) != 0)
Azure.IoT Build 0:6ae2f7bca550 2726 {
Azure.IoT Build 0:6ae2f7bca550 2727 if (amqpvalue_get_type(item_value) != AMQP_TYPE_NULL)
Azure.IoT Build 0:6ae2f7bca550 2728 {
Azure.IoT Build 0:6ae2f7bca550 2729 attach_destroy(*attach_handle);
Azure.IoT Build 0:6ae2f7bca550 2730 result = __LINE__;
Azure.IoT Build 0:6ae2f7bca550 2731 break;
Azure.IoT Build 0:6ae2f7bca550 2732 }
Azure.IoT Build 0:6ae2f7bca550 2733 }
Azure.IoT Build 0:6ae2f7bca550 2734
Azure.IoT Build 0:6ae2f7bca550 2735 amqpvalue_destroy(item_value);
Azure.IoT Build 0:6ae2f7bca550 2736 }
Azure.IoT Build 0:6ae2f7bca550 2737 /* initial-delivery-count */
Azure.IoT Build 0:6ae2f7bca550 2738 item_value = amqpvalue_get_list_item(list_value, 9);
Azure.IoT Build 0:6ae2f7bca550 2739 if (item_value == NULL)
Azure.IoT Build 0:6ae2f7bca550 2740 {
Azure.IoT Build 0:6ae2f7bca550 2741 /* do nothing */
Azure.IoT Build 0:6ae2f7bca550 2742 }
Azure.IoT Build 0:6ae2f7bca550 2743 else
Azure.IoT Build 0:6ae2f7bca550 2744 {
Azure.IoT Build 0:6ae2f7bca550 2745 sequence_no initial_delivery_count;
Azure.IoT Build 0:6ae2f7bca550 2746 if (amqpvalue_get_sequence_no(item_value, &initial_delivery_count) != 0)
Azure.IoT Build 0:6ae2f7bca550 2747 {
Azure.IoT Build 0:6ae2f7bca550 2748 if (amqpvalue_get_type(item_value) != AMQP_TYPE_NULL)
Azure.IoT Build 0:6ae2f7bca550 2749 {
Azure.IoT Build 0:6ae2f7bca550 2750 attach_destroy(*attach_handle);
Azure.IoT Build 0:6ae2f7bca550 2751 result = __LINE__;
Azure.IoT Build 0:6ae2f7bca550 2752 break;
Azure.IoT Build 0:6ae2f7bca550 2753 }
Azure.IoT Build 0:6ae2f7bca550 2754 }
Azure.IoT Build 0:6ae2f7bca550 2755
Azure.IoT Build 0:6ae2f7bca550 2756 amqpvalue_destroy(item_value);
Azure.IoT Build 0:6ae2f7bca550 2757 }
Azure.IoT Build 0:6ae2f7bca550 2758 /* max-message-size */
Azure.IoT Build 0:6ae2f7bca550 2759 item_value = amqpvalue_get_list_item(list_value, 10);
Azure.IoT Build 0:6ae2f7bca550 2760 if (item_value == NULL)
Azure.IoT Build 0:6ae2f7bca550 2761 {
Azure.IoT Build 0:6ae2f7bca550 2762 /* do nothing */
Azure.IoT Build 0:6ae2f7bca550 2763 }
Azure.IoT Build 0:6ae2f7bca550 2764 else
Azure.IoT Build 0:6ae2f7bca550 2765 {
Azure.IoT Build 0:6ae2f7bca550 2766 uint64_t max_message_size;
Azure.IoT Build 0:6ae2f7bca550 2767 if (amqpvalue_get_ulong(item_value, &max_message_size) != 0)
Azure.IoT Build 0:6ae2f7bca550 2768 {
Azure.IoT Build 0:6ae2f7bca550 2769 if (amqpvalue_get_type(item_value) != AMQP_TYPE_NULL)
Azure.IoT Build 0:6ae2f7bca550 2770 {
Azure.IoT Build 0:6ae2f7bca550 2771 attach_destroy(*attach_handle);
Azure.IoT Build 0:6ae2f7bca550 2772 result = __LINE__;
Azure.IoT Build 0:6ae2f7bca550 2773 break;
Azure.IoT Build 0:6ae2f7bca550 2774 }
Azure.IoT Build 0:6ae2f7bca550 2775 }
Azure.IoT Build 0:6ae2f7bca550 2776
Azure.IoT Build 0:6ae2f7bca550 2777 amqpvalue_destroy(item_value);
Azure.IoT Build 0:6ae2f7bca550 2778 }
Azure.IoT Build 0:6ae2f7bca550 2779 /* offered-capabilities */
Azure.IoT Build 0:6ae2f7bca550 2780 item_value = amqpvalue_get_list_item(list_value, 11);
Azure.IoT Build 0:6ae2f7bca550 2781 if (item_value == NULL)
Azure.IoT Build 0:6ae2f7bca550 2782 {
Azure.IoT Build 0:6ae2f7bca550 2783 /* do nothing */
Azure.IoT Build 0:6ae2f7bca550 2784 }
Azure.IoT Build 0:6ae2f7bca550 2785 else
Azure.IoT Build 0:6ae2f7bca550 2786 {
Azure.IoT Build 0:6ae2f7bca550 2787 const char* offered_capabilities;
Azure.IoT Build 0:6ae2f7bca550 2788 AMQP_VALUE offered_capabilities_array;
Azure.IoT Build 0:6ae2f7bca550 2789 if ((amqpvalue_get_array(item_value, &offered_capabilities_array) != 0) &&
Azure.IoT Build 0:6ae2f7bca550 2790 (amqpvalue_get_symbol(item_value, &offered_capabilities) != 0))
Azure.IoT Build 0:6ae2f7bca550 2791 {
Azure.IoT Build 0:6ae2f7bca550 2792 if (amqpvalue_get_type(item_value) != AMQP_TYPE_NULL)
Azure.IoT Build 0:6ae2f7bca550 2793 {
Azure.IoT Build 0:6ae2f7bca550 2794 attach_destroy(*attach_handle);
Azure.IoT Build 0:6ae2f7bca550 2795 result = __LINE__;
Azure.IoT Build 0:6ae2f7bca550 2796 break;
Azure.IoT Build 0:6ae2f7bca550 2797 }
Azure.IoT Build 0:6ae2f7bca550 2798 }
Azure.IoT Build 0:6ae2f7bca550 2799
Azure.IoT Build 0:6ae2f7bca550 2800 amqpvalue_destroy(item_value);
Azure.IoT Build 0:6ae2f7bca550 2801 }
Azure.IoT Build 0:6ae2f7bca550 2802 /* desired-capabilities */
Azure.IoT Build 0:6ae2f7bca550 2803 item_value = amqpvalue_get_list_item(list_value, 12);
Azure.IoT Build 0:6ae2f7bca550 2804 if (item_value == NULL)
Azure.IoT Build 0:6ae2f7bca550 2805 {
Azure.IoT Build 0:6ae2f7bca550 2806 /* do nothing */
Azure.IoT Build 0:6ae2f7bca550 2807 }
Azure.IoT Build 0:6ae2f7bca550 2808 else
Azure.IoT Build 0:6ae2f7bca550 2809 {
Azure.IoT Build 0:6ae2f7bca550 2810 const char* desired_capabilities;
Azure.IoT Build 0:6ae2f7bca550 2811 AMQP_VALUE desired_capabilities_array;
Azure.IoT Build 0:6ae2f7bca550 2812 if ((amqpvalue_get_array(item_value, &desired_capabilities_array) != 0) &&
Azure.IoT Build 0:6ae2f7bca550 2813 (amqpvalue_get_symbol(item_value, &desired_capabilities) != 0))
Azure.IoT Build 0:6ae2f7bca550 2814 {
Azure.IoT Build 0:6ae2f7bca550 2815 if (amqpvalue_get_type(item_value) != AMQP_TYPE_NULL)
Azure.IoT Build 0:6ae2f7bca550 2816 {
Azure.IoT Build 0:6ae2f7bca550 2817 attach_destroy(*attach_handle);
Azure.IoT Build 0:6ae2f7bca550 2818 result = __LINE__;
Azure.IoT Build 0:6ae2f7bca550 2819 break;
Azure.IoT Build 0:6ae2f7bca550 2820 }
Azure.IoT Build 0:6ae2f7bca550 2821 }
Azure.IoT Build 0:6ae2f7bca550 2822
Azure.IoT Build 0:6ae2f7bca550 2823 amqpvalue_destroy(item_value);
Azure.IoT Build 0:6ae2f7bca550 2824 }
Azure.IoT Build 0:6ae2f7bca550 2825 /* properties */
Azure.IoT Build 0:6ae2f7bca550 2826 item_value = amqpvalue_get_list_item(list_value, 13);
Azure.IoT Build 0:6ae2f7bca550 2827 if (item_value == NULL)
Azure.IoT Build 0:6ae2f7bca550 2828 {
Azure.IoT Build 0:6ae2f7bca550 2829 /* do nothing */
Azure.IoT Build 0:6ae2f7bca550 2830 }
Azure.IoT Build 0:6ae2f7bca550 2831 else
Azure.IoT Build 0:6ae2f7bca550 2832 {
Azure.IoT Build 0:6ae2f7bca550 2833 fields properties;
Azure.IoT Build 0:6ae2f7bca550 2834 if (amqpvalue_get_fields(item_value, &properties) != 0)
Azure.IoT Build 0:6ae2f7bca550 2835 {
Azure.IoT Build 0:6ae2f7bca550 2836 if (amqpvalue_get_type(item_value) != AMQP_TYPE_NULL)
Azure.IoT Build 0:6ae2f7bca550 2837 {
Azure.IoT Build 0:6ae2f7bca550 2838 attach_destroy(*attach_handle);
Azure.IoT Build 0:6ae2f7bca550 2839 result = __LINE__;
Azure.IoT Build 0:6ae2f7bca550 2840 break;
Azure.IoT Build 0:6ae2f7bca550 2841 }
Azure.IoT Build 0:6ae2f7bca550 2842 }
Azure.IoT Build 0:6ae2f7bca550 2843
Azure.IoT Build 0:6ae2f7bca550 2844 amqpvalue_destroy(item_value);
Azure.IoT Build 0:6ae2f7bca550 2845 }
Azure.IoT Build 0:6ae2f7bca550 2846
Azure.IoT Build 0:6ae2f7bca550 2847 attach_instance->composite_value = amqpvalue_clone(value);
Azure.IoT Build 0:6ae2f7bca550 2848
Azure.IoT Build 0:6ae2f7bca550 2849 result = 0;
Azure.IoT Build 0:6ae2f7bca550 2850 } while (0);
Azure.IoT Build 0:6ae2f7bca550 2851 }
Azure.IoT Build 0:6ae2f7bca550 2852 }
Azure.IoT Build 0:6ae2f7bca550 2853
Azure.IoT Build 0:6ae2f7bca550 2854 return result;
Azure.IoT Build 0:6ae2f7bca550 2855 }
Azure.IoT Build 0:6ae2f7bca550 2856
Azure.IoT Build 0:6ae2f7bca550 2857 int attach_get_name(ATTACH_HANDLE attach, const char** name_value)
Azure.IoT Build 0:6ae2f7bca550 2858 {
Azure.IoT Build 0:6ae2f7bca550 2859 int result;
Azure.IoT Build 0:6ae2f7bca550 2860
Azure.IoT Build 0:6ae2f7bca550 2861 if (attach == NULL)
Azure.IoT Build 0:6ae2f7bca550 2862 {
Azure.IoT Build 0:6ae2f7bca550 2863 result = __LINE__;
Azure.IoT Build 0:6ae2f7bca550 2864 }
Azure.IoT Build 0:6ae2f7bca550 2865 else
Azure.IoT Build 0:6ae2f7bca550 2866 {
Azure.IoT Build 0:6ae2f7bca550 2867 ATTACH_INSTANCE* attach_instance = (ATTACH_INSTANCE*)attach;
Azure.IoT Build 0:6ae2f7bca550 2868 AMQP_VALUE item_value = amqpvalue_get_composite_item_in_place(attach_instance->composite_value, 0);
Azure.IoT Build 0:6ae2f7bca550 2869 if (item_value == NULL)
Azure.IoT Build 0:6ae2f7bca550 2870 {
Azure.IoT Build 0:6ae2f7bca550 2871 result = __LINE__;
Azure.IoT Build 0:6ae2f7bca550 2872 }
Azure.IoT Build 0:6ae2f7bca550 2873 else
Azure.IoT Build 0:6ae2f7bca550 2874 {
Azure.IoT Build 0:6ae2f7bca550 2875 if (amqpvalue_get_string(item_value, name_value) != 0)
Azure.IoT Build 0:6ae2f7bca550 2876 {
Azure.IoT Build 0:6ae2f7bca550 2877 result = __LINE__;
Azure.IoT Build 0:6ae2f7bca550 2878 }
Azure.IoT Build 0:6ae2f7bca550 2879 else
Azure.IoT Build 0:6ae2f7bca550 2880 {
Azure.IoT Build 0:6ae2f7bca550 2881 result = 0;
Azure.IoT Build 0:6ae2f7bca550 2882 }
Azure.IoT Build 0:6ae2f7bca550 2883 }
Azure.IoT Build 0:6ae2f7bca550 2884 }
Azure.IoT Build 0:6ae2f7bca550 2885
Azure.IoT Build 0:6ae2f7bca550 2886 return result;
Azure.IoT Build 0:6ae2f7bca550 2887 }
Azure.IoT Build 0:6ae2f7bca550 2888
Azure.IoT Build 0:6ae2f7bca550 2889 int attach_set_name(ATTACH_HANDLE attach, const char* name_value)
Azure.IoT Build 0:6ae2f7bca550 2890 {
Azure.IoT Build 0:6ae2f7bca550 2891 int result;
Azure.IoT Build 0:6ae2f7bca550 2892
Azure.IoT Build 0:6ae2f7bca550 2893 if (attach == NULL)
Azure.IoT Build 0:6ae2f7bca550 2894 {
Azure.IoT Build 0:6ae2f7bca550 2895 result = __LINE__;
Azure.IoT Build 0:6ae2f7bca550 2896 }
Azure.IoT Build 0:6ae2f7bca550 2897 else
Azure.IoT Build 0:6ae2f7bca550 2898 {
Azure.IoT Build 0:6ae2f7bca550 2899 ATTACH_INSTANCE* attach_instance = (ATTACH_INSTANCE*)attach;
Azure.IoT Build 0:6ae2f7bca550 2900 AMQP_VALUE name_amqp_value = amqpvalue_create_string(name_value);
Azure.IoT Build 0:6ae2f7bca550 2901 if (name_amqp_value == NULL)
Azure.IoT Build 0:6ae2f7bca550 2902 {
Azure.IoT Build 0:6ae2f7bca550 2903 result = __LINE__;
Azure.IoT Build 0:6ae2f7bca550 2904 }
Azure.IoT Build 0:6ae2f7bca550 2905 else
Azure.IoT Build 0:6ae2f7bca550 2906 {
Azure.IoT Build 0:6ae2f7bca550 2907 if (amqpvalue_set_composite_item(attach_instance->composite_value, 0, name_amqp_value) != 0)
Azure.IoT Build 0:6ae2f7bca550 2908 {
Azure.IoT Build 0:6ae2f7bca550 2909 result = __LINE__;
Azure.IoT Build 0:6ae2f7bca550 2910 }
Azure.IoT Build 0:6ae2f7bca550 2911 else
Azure.IoT Build 0:6ae2f7bca550 2912 {
Azure.IoT Build 0:6ae2f7bca550 2913 result = 0;
Azure.IoT Build 0:6ae2f7bca550 2914 }
Azure.IoT Build 0:6ae2f7bca550 2915
Azure.IoT Build 0:6ae2f7bca550 2916 amqpvalue_destroy(name_amqp_value);
Azure.IoT Build 0:6ae2f7bca550 2917 }
Azure.IoT Build 0:6ae2f7bca550 2918 }
Azure.IoT Build 0:6ae2f7bca550 2919
Azure.IoT Build 0:6ae2f7bca550 2920 return result;
Azure.IoT Build 0:6ae2f7bca550 2921 }
Azure.IoT Build 0:6ae2f7bca550 2922
Azure.IoT Build 0:6ae2f7bca550 2923 int attach_get_handle(ATTACH_HANDLE attach, handle* handle_value)
Azure.IoT Build 0:6ae2f7bca550 2924 {
Azure.IoT Build 0:6ae2f7bca550 2925 int result;
Azure.IoT Build 0:6ae2f7bca550 2926
Azure.IoT Build 0:6ae2f7bca550 2927 if (attach == NULL)
Azure.IoT Build 0:6ae2f7bca550 2928 {
Azure.IoT Build 0:6ae2f7bca550 2929 result = __LINE__;
Azure.IoT Build 0:6ae2f7bca550 2930 }
Azure.IoT Build 0:6ae2f7bca550 2931 else
Azure.IoT Build 0:6ae2f7bca550 2932 {
Azure.IoT Build 0:6ae2f7bca550 2933 ATTACH_INSTANCE* attach_instance = (ATTACH_INSTANCE*)attach;
Azure.IoT Build 0:6ae2f7bca550 2934 AMQP_VALUE item_value = amqpvalue_get_composite_item_in_place(attach_instance->composite_value, 1);
Azure.IoT Build 0:6ae2f7bca550 2935 if (item_value == NULL)
Azure.IoT Build 0:6ae2f7bca550 2936 {
Azure.IoT Build 0:6ae2f7bca550 2937 result = __LINE__;
Azure.IoT Build 0:6ae2f7bca550 2938 }
Azure.IoT Build 0:6ae2f7bca550 2939 else
Azure.IoT Build 0:6ae2f7bca550 2940 {
Azure.IoT Build 0:6ae2f7bca550 2941 if (amqpvalue_get_handle(item_value, handle_value) != 0)
Azure.IoT Build 0:6ae2f7bca550 2942 {
Azure.IoT Build 0:6ae2f7bca550 2943 result = __LINE__;
Azure.IoT Build 0:6ae2f7bca550 2944 }
Azure.IoT Build 0:6ae2f7bca550 2945 else
Azure.IoT Build 0:6ae2f7bca550 2946 {
Azure.IoT Build 0:6ae2f7bca550 2947 result = 0;
Azure.IoT Build 0:6ae2f7bca550 2948 }
Azure.IoT Build 0:6ae2f7bca550 2949 }
Azure.IoT Build 0:6ae2f7bca550 2950 }
Azure.IoT Build 0:6ae2f7bca550 2951
Azure.IoT Build 0:6ae2f7bca550 2952 return result;
Azure.IoT Build 0:6ae2f7bca550 2953 }
Azure.IoT Build 0:6ae2f7bca550 2954
Azure.IoT Build 0:6ae2f7bca550 2955 int attach_set_handle(ATTACH_HANDLE attach, handle handle_value)
Azure.IoT Build 0:6ae2f7bca550 2956 {
Azure.IoT Build 0:6ae2f7bca550 2957 int result;
Azure.IoT Build 0:6ae2f7bca550 2958
Azure.IoT Build 0:6ae2f7bca550 2959 if (attach == NULL)
Azure.IoT Build 0:6ae2f7bca550 2960 {
Azure.IoT Build 0:6ae2f7bca550 2961 result = __LINE__;
Azure.IoT Build 0:6ae2f7bca550 2962 }
Azure.IoT Build 0:6ae2f7bca550 2963 else
Azure.IoT Build 0:6ae2f7bca550 2964 {
Azure.IoT Build 0:6ae2f7bca550 2965 ATTACH_INSTANCE* attach_instance = (ATTACH_INSTANCE*)attach;
Azure.IoT Build 0:6ae2f7bca550 2966 AMQP_VALUE handle_amqp_value = amqpvalue_create_handle(handle_value);
Azure.IoT Build 0:6ae2f7bca550 2967 if (handle_amqp_value == NULL)
Azure.IoT Build 0:6ae2f7bca550 2968 {
Azure.IoT Build 0:6ae2f7bca550 2969 result = __LINE__;
Azure.IoT Build 0:6ae2f7bca550 2970 }
Azure.IoT Build 0:6ae2f7bca550 2971 else
Azure.IoT Build 0:6ae2f7bca550 2972 {
Azure.IoT Build 0:6ae2f7bca550 2973 if (amqpvalue_set_composite_item(attach_instance->composite_value, 1, handle_amqp_value) != 0)
Azure.IoT Build 0:6ae2f7bca550 2974 {
Azure.IoT Build 0:6ae2f7bca550 2975 result = __LINE__;
Azure.IoT Build 0:6ae2f7bca550 2976 }
Azure.IoT Build 0:6ae2f7bca550 2977 else
Azure.IoT Build 0:6ae2f7bca550 2978 {
Azure.IoT Build 0:6ae2f7bca550 2979 result = 0;
Azure.IoT Build 0:6ae2f7bca550 2980 }
Azure.IoT Build 0:6ae2f7bca550 2981
Azure.IoT Build 0:6ae2f7bca550 2982 amqpvalue_destroy(handle_amqp_value);
Azure.IoT Build 0:6ae2f7bca550 2983 }
Azure.IoT Build 0:6ae2f7bca550 2984 }
Azure.IoT Build 0:6ae2f7bca550 2985
Azure.IoT Build 0:6ae2f7bca550 2986 return result;
Azure.IoT Build 0:6ae2f7bca550 2987 }
Azure.IoT Build 0:6ae2f7bca550 2988
Azure.IoT Build 0:6ae2f7bca550 2989 int attach_get_role(ATTACH_HANDLE attach, role* role_value)
Azure.IoT Build 0:6ae2f7bca550 2990 {
Azure.IoT Build 0:6ae2f7bca550 2991 int result;
Azure.IoT Build 0:6ae2f7bca550 2992
Azure.IoT Build 0:6ae2f7bca550 2993 if (attach == NULL)
Azure.IoT Build 0:6ae2f7bca550 2994 {
Azure.IoT Build 0:6ae2f7bca550 2995 result = __LINE__;
Azure.IoT Build 0:6ae2f7bca550 2996 }
Azure.IoT Build 0:6ae2f7bca550 2997 else
Azure.IoT Build 0:6ae2f7bca550 2998 {
Azure.IoT Build 0:6ae2f7bca550 2999 ATTACH_INSTANCE* attach_instance = (ATTACH_INSTANCE*)attach;
Azure.IoT Build 0:6ae2f7bca550 3000 AMQP_VALUE item_value = amqpvalue_get_composite_item_in_place(attach_instance->composite_value, 2);
Azure.IoT Build 0:6ae2f7bca550 3001 if (item_value == NULL)
Azure.IoT Build 0:6ae2f7bca550 3002 {
Azure.IoT Build 0:6ae2f7bca550 3003 result = __LINE__;
Azure.IoT Build 0:6ae2f7bca550 3004 }
Azure.IoT Build 0:6ae2f7bca550 3005 else
Azure.IoT Build 0:6ae2f7bca550 3006 {
Azure.IoT Build 0:6ae2f7bca550 3007 if (amqpvalue_get_role(item_value, role_value) != 0)
Azure.IoT Build 0:6ae2f7bca550 3008 {
Azure.IoT Build 0:6ae2f7bca550 3009 result = __LINE__;
Azure.IoT Build 0:6ae2f7bca550 3010 }
Azure.IoT Build 0:6ae2f7bca550 3011 else
Azure.IoT Build 0:6ae2f7bca550 3012 {
Azure.IoT Build 0:6ae2f7bca550 3013 result = 0;
Azure.IoT Build 0:6ae2f7bca550 3014 }
Azure.IoT Build 0:6ae2f7bca550 3015 }
Azure.IoT Build 0:6ae2f7bca550 3016 }
Azure.IoT Build 0:6ae2f7bca550 3017
Azure.IoT Build 0:6ae2f7bca550 3018 return result;
Azure.IoT Build 0:6ae2f7bca550 3019 }
Azure.IoT Build 0:6ae2f7bca550 3020
Azure.IoT Build 0:6ae2f7bca550 3021 int attach_set_role(ATTACH_HANDLE attach, role role_value)
Azure.IoT Build 0:6ae2f7bca550 3022 {
Azure.IoT Build 0:6ae2f7bca550 3023 int result;
Azure.IoT Build 0:6ae2f7bca550 3024
Azure.IoT Build 0:6ae2f7bca550 3025 if (attach == NULL)
Azure.IoT Build 0:6ae2f7bca550 3026 {
Azure.IoT Build 0:6ae2f7bca550 3027 result = __LINE__;
Azure.IoT Build 0:6ae2f7bca550 3028 }
Azure.IoT Build 0:6ae2f7bca550 3029 else
Azure.IoT Build 0:6ae2f7bca550 3030 {
Azure.IoT Build 0:6ae2f7bca550 3031 ATTACH_INSTANCE* attach_instance = (ATTACH_INSTANCE*)attach;
Azure.IoT Build 0:6ae2f7bca550 3032 AMQP_VALUE role_amqp_value = amqpvalue_create_role(role_value);
Azure.IoT Build 0:6ae2f7bca550 3033 if (role_amqp_value == NULL)
Azure.IoT Build 0:6ae2f7bca550 3034 {
Azure.IoT Build 0:6ae2f7bca550 3035 result = __LINE__;
Azure.IoT Build 0:6ae2f7bca550 3036 }
Azure.IoT Build 0:6ae2f7bca550 3037 else
Azure.IoT Build 0:6ae2f7bca550 3038 {
Azure.IoT Build 0:6ae2f7bca550 3039 if (amqpvalue_set_composite_item(attach_instance->composite_value, 2, role_amqp_value) != 0)
Azure.IoT Build 0:6ae2f7bca550 3040 {
Azure.IoT Build 0:6ae2f7bca550 3041 result = __LINE__;
Azure.IoT Build 0:6ae2f7bca550 3042 }
Azure.IoT Build 0:6ae2f7bca550 3043 else
Azure.IoT Build 0:6ae2f7bca550 3044 {
Azure.IoT Build 0:6ae2f7bca550 3045 result = 0;
Azure.IoT Build 0:6ae2f7bca550 3046 }
Azure.IoT Build 0:6ae2f7bca550 3047
Azure.IoT Build 0:6ae2f7bca550 3048 amqpvalue_destroy(role_amqp_value);
Azure.IoT Build 0:6ae2f7bca550 3049 }
Azure.IoT Build 0:6ae2f7bca550 3050 }
Azure.IoT Build 0:6ae2f7bca550 3051
Azure.IoT Build 0:6ae2f7bca550 3052 return result;
Azure.IoT Build 0:6ae2f7bca550 3053 }
Azure.IoT Build 0:6ae2f7bca550 3054
Azure.IoT Build 0:6ae2f7bca550 3055 int attach_get_snd_settle_mode(ATTACH_HANDLE attach, sender_settle_mode* snd_settle_mode_value)
Azure.IoT Build 0:6ae2f7bca550 3056 {
Azure.IoT Build 0:6ae2f7bca550 3057 int result;
Azure.IoT Build 0:6ae2f7bca550 3058
Azure.IoT Build 0:6ae2f7bca550 3059 if (attach == NULL)
Azure.IoT Build 0:6ae2f7bca550 3060 {
Azure.IoT Build 0:6ae2f7bca550 3061 result = __LINE__;
Azure.IoT Build 0:6ae2f7bca550 3062 }
Azure.IoT Build 0:6ae2f7bca550 3063 else
Azure.IoT Build 0:6ae2f7bca550 3064 {
Azure.IoT Build 0:6ae2f7bca550 3065 ATTACH_INSTANCE* attach_instance = (ATTACH_INSTANCE*)attach;
Azure.IoT Build 0:6ae2f7bca550 3066 AMQP_VALUE item_value = amqpvalue_get_composite_item_in_place(attach_instance->composite_value, 3);
Azure.IoT Build 0:6ae2f7bca550 3067 if (item_value == NULL)
Azure.IoT Build 0:6ae2f7bca550 3068 {
Azure.IoT Build 0:6ae2f7bca550 3069 result = __LINE__;
Azure.IoT Build 0:6ae2f7bca550 3070 }
Azure.IoT Build 0:6ae2f7bca550 3071 else
Azure.IoT Build 0:6ae2f7bca550 3072 {
Azure.IoT Build 0:6ae2f7bca550 3073 if (amqpvalue_get_sender_settle_mode(item_value, snd_settle_mode_value) != 0)
Azure.IoT Build 0:6ae2f7bca550 3074 {
Azure.IoT Build 0:6ae2f7bca550 3075 result = __LINE__;
Azure.IoT Build 0:6ae2f7bca550 3076 }
Azure.IoT Build 0:6ae2f7bca550 3077 else
Azure.IoT Build 0:6ae2f7bca550 3078 {
Azure.IoT Build 0:6ae2f7bca550 3079 result = 0;
Azure.IoT Build 0:6ae2f7bca550 3080 }
Azure.IoT Build 0:6ae2f7bca550 3081 }
Azure.IoT Build 0:6ae2f7bca550 3082 }
Azure.IoT Build 0:6ae2f7bca550 3083
Azure.IoT Build 0:6ae2f7bca550 3084 return result;
Azure.IoT Build 0:6ae2f7bca550 3085 }
Azure.IoT Build 0:6ae2f7bca550 3086
Azure.IoT Build 0:6ae2f7bca550 3087 int attach_set_snd_settle_mode(ATTACH_HANDLE attach, sender_settle_mode snd_settle_mode_value)
Azure.IoT Build 0:6ae2f7bca550 3088 {
Azure.IoT Build 0:6ae2f7bca550 3089 int result;
Azure.IoT Build 0:6ae2f7bca550 3090
Azure.IoT Build 0:6ae2f7bca550 3091 if (attach == NULL)
Azure.IoT Build 0:6ae2f7bca550 3092 {
Azure.IoT Build 0:6ae2f7bca550 3093 result = __LINE__;
Azure.IoT Build 0:6ae2f7bca550 3094 }
Azure.IoT Build 0:6ae2f7bca550 3095 else
Azure.IoT Build 0:6ae2f7bca550 3096 {
Azure.IoT Build 0:6ae2f7bca550 3097 ATTACH_INSTANCE* attach_instance = (ATTACH_INSTANCE*)attach;
Azure.IoT Build 0:6ae2f7bca550 3098 AMQP_VALUE snd_settle_mode_amqp_value = amqpvalue_create_sender_settle_mode(snd_settle_mode_value);
Azure.IoT Build 0:6ae2f7bca550 3099 if (snd_settle_mode_amqp_value == NULL)
Azure.IoT Build 0:6ae2f7bca550 3100 {
Azure.IoT Build 0:6ae2f7bca550 3101 result = __LINE__;
Azure.IoT Build 0:6ae2f7bca550 3102 }
Azure.IoT Build 0:6ae2f7bca550 3103 else
Azure.IoT Build 0:6ae2f7bca550 3104 {
Azure.IoT Build 0:6ae2f7bca550 3105 if (amqpvalue_set_composite_item(attach_instance->composite_value, 3, snd_settle_mode_amqp_value) != 0)
Azure.IoT Build 0:6ae2f7bca550 3106 {
Azure.IoT Build 0:6ae2f7bca550 3107 result = __LINE__;
Azure.IoT Build 0:6ae2f7bca550 3108 }
Azure.IoT Build 0:6ae2f7bca550 3109 else
Azure.IoT Build 0:6ae2f7bca550 3110 {
Azure.IoT Build 0:6ae2f7bca550 3111 result = 0;
Azure.IoT Build 0:6ae2f7bca550 3112 }
Azure.IoT Build 0:6ae2f7bca550 3113
Azure.IoT Build 0:6ae2f7bca550 3114 amqpvalue_destroy(snd_settle_mode_amqp_value);
Azure.IoT Build 0:6ae2f7bca550 3115 }
Azure.IoT Build 0:6ae2f7bca550 3116 }
Azure.IoT Build 0:6ae2f7bca550 3117
Azure.IoT Build 0:6ae2f7bca550 3118 return result;
Azure.IoT Build 0:6ae2f7bca550 3119 }
Azure.IoT Build 0:6ae2f7bca550 3120
Azure.IoT Build 0:6ae2f7bca550 3121 int attach_get_rcv_settle_mode(ATTACH_HANDLE attach, receiver_settle_mode* rcv_settle_mode_value)
Azure.IoT Build 0:6ae2f7bca550 3122 {
Azure.IoT Build 0:6ae2f7bca550 3123 int result;
Azure.IoT Build 0:6ae2f7bca550 3124
Azure.IoT Build 0:6ae2f7bca550 3125 if (attach == NULL)
Azure.IoT Build 0:6ae2f7bca550 3126 {
Azure.IoT Build 0:6ae2f7bca550 3127 result = __LINE__;
Azure.IoT Build 0:6ae2f7bca550 3128 }
Azure.IoT Build 0:6ae2f7bca550 3129 else
Azure.IoT Build 0:6ae2f7bca550 3130 {
Azure.IoT Build 0:6ae2f7bca550 3131 ATTACH_INSTANCE* attach_instance = (ATTACH_INSTANCE*)attach;
Azure.IoT Build 0:6ae2f7bca550 3132 AMQP_VALUE item_value = amqpvalue_get_composite_item_in_place(attach_instance->composite_value, 4);
Azure.IoT Build 0:6ae2f7bca550 3133 if (item_value == NULL)
Azure.IoT Build 0:6ae2f7bca550 3134 {
Azure.IoT Build 0:6ae2f7bca550 3135 result = __LINE__;
Azure.IoT Build 0:6ae2f7bca550 3136 }
Azure.IoT Build 0:6ae2f7bca550 3137 else
Azure.IoT Build 0:6ae2f7bca550 3138 {
Azure.IoT Build 0:6ae2f7bca550 3139 if (amqpvalue_get_receiver_settle_mode(item_value, rcv_settle_mode_value) != 0)
Azure.IoT Build 0:6ae2f7bca550 3140 {
Azure.IoT Build 0:6ae2f7bca550 3141 result = __LINE__;
Azure.IoT Build 0:6ae2f7bca550 3142 }
Azure.IoT Build 0:6ae2f7bca550 3143 else
Azure.IoT Build 0:6ae2f7bca550 3144 {
Azure.IoT Build 0:6ae2f7bca550 3145 result = 0;
Azure.IoT Build 0:6ae2f7bca550 3146 }
Azure.IoT Build 0:6ae2f7bca550 3147 }
Azure.IoT Build 0:6ae2f7bca550 3148 }
Azure.IoT Build 0:6ae2f7bca550 3149
Azure.IoT Build 0:6ae2f7bca550 3150 return result;
Azure.IoT Build 0:6ae2f7bca550 3151 }
Azure.IoT Build 0:6ae2f7bca550 3152
Azure.IoT Build 0:6ae2f7bca550 3153 int attach_set_rcv_settle_mode(ATTACH_HANDLE attach, receiver_settle_mode rcv_settle_mode_value)
Azure.IoT Build 0:6ae2f7bca550 3154 {
Azure.IoT Build 0:6ae2f7bca550 3155 int result;
Azure.IoT Build 0:6ae2f7bca550 3156
Azure.IoT Build 0:6ae2f7bca550 3157 if (attach == NULL)
Azure.IoT Build 0:6ae2f7bca550 3158 {
Azure.IoT Build 0:6ae2f7bca550 3159 result = __LINE__;
Azure.IoT Build 0:6ae2f7bca550 3160 }
Azure.IoT Build 0:6ae2f7bca550 3161 else
Azure.IoT Build 0:6ae2f7bca550 3162 {
Azure.IoT Build 0:6ae2f7bca550 3163 ATTACH_INSTANCE* attach_instance = (ATTACH_INSTANCE*)attach;
Azure.IoT Build 0:6ae2f7bca550 3164 AMQP_VALUE rcv_settle_mode_amqp_value = amqpvalue_create_receiver_settle_mode(rcv_settle_mode_value);
Azure.IoT Build 0:6ae2f7bca550 3165 if (rcv_settle_mode_amqp_value == NULL)
Azure.IoT Build 0:6ae2f7bca550 3166 {
Azure.IoT Build 0:6ae2f7bca550 3167 result = __LINE__;
Azure.IoT Build 0:6ae2f7bca550 3168 }
Azure.IoT Build 0:6ae2f7bca550 3169 else
Azure.IoT Build 0:6ae2f7bca550 3170 {
Azure.IoT Build 0:6ae2f7bca550 3171 if (amqpvalue_set_composite_item(attach_instance->composite_value, 4, rcv_settle_mode_amqp_value) != 0)
Azure.IoT Build 0:6ae2f7bca550 3172 {
Azure.IoT Build 0:6ae2f7bca550 3173 result = __LINE__;
Azure.IoT Build 0:6ae2f7bca550 3174 }
Azure.IoT Build 0:6ae2f7bca550 3175 else
Azure.IoT Build 0:6ae2f7bca550 3176 {
Azure.IoT Build 0:6ae2f7bca550 3177 result = 0;
Azure.IoT Build 0:6ae2f7bca550 3178 }
Azure.IoT Build 0:6ae2f7bca550 3179
Azure.IoT Build 0:6ae2f7bca550 3180 amqpvalue_destroy(rcv_settle_mode_amqp_value);
Azure.IoT Build 0:6ae2f7bca550 3181 }
Azure.IoT Build 0:6ae2f7bca550 3182 }
Azure.IoT Build 0:6ae2f7bca550 3183
Azure.IoT Build 0:6ae2f7bca550 3184 return result;
Azure.IoT Build 0:6ae2f7bca550 3185 }
Azure.IoT Build 0:6ae2f7bca550 3186
Azure.IoT Build 0:6ae2f7bca550 3187 int attach_get_source(ATTACH_HANDLE attach, AMQP_VALUE* source_value)
Azure.IoT Build 0:6ae2f7bca550 3188 {
Azure.IoT Build 0:6ae2f7bca550 3189 int result;
Azure.IoT Build 0:6ae2f7bca550 3190
Azure.IoT Build 0:6ae2f7bca550 3191 if (attach == NULL)
Azure.IoT Build 0:6ae2f7bca550 3192 {
Azure.IoT Build 0:6ae2f7bca550 3193 result = __LINE__;
Azure.IoT Build 0:6ae2f7bca550 3194 }
Azure.IoT Build 0:6ae2f7bca550 3195 else
Azure.IoT Build 0:6ae2f7bca550 3196 {
Azure.IoT Build 0:6ae2f7bca550 3197 ATTACH_INSTANCE* attach_instance = (ATTACH_INSTANCE*)attach;
Azure.IoT Build 0:6ae2f7bca550 3198 AMQP_VALUE item_value = amqpvalue_get_composite_item_in_place(attach_instance->composite_value, 5);
Azure.IoT Build 0:6ae2f7bca550 3199 if (item_value == NULL)
Azure.IoT Build 0:6ae2f7bca550 3200 {
Azure.IoT Build 0:6ae2f7bca550 3201 result = __LINE__;
Azure.IoT Build 0:6ae2f7bca550 3202 }
Azure.IoT Build 0:6ae2f7bca550 3203 else
Azure.IoT Build 0:6ae2f7bca550 3204 {
Azure.IoT Build 0:6ae2f7bca550 3205 *source_value = item_value;
Azure.IoT Build 0:6ae2f7bca550 3206 result = 0;
Azure.IoT Build 0:6ae2f7bca550 3207 }
Azure.IoT Build 0:6ae2f7bca550 3208 }
Azure.IoT Build 0:6ae2f7bca550 3209
Azure.IoT Build 0:6ae2f7bca550 3210 return result;
Azure.IoT Build 0:6ae2f7bca550 3211 }
Azure.IoT Build 0:6ae2f7bca550 3212
Azure.IoT Build 0:6ae2f7bca550 3213 int attach_set_source(ATTACH_HANDLE attach, AMQP_VALUE source_value)
Azure.IoT Build 0:6ae2f7bca550 3214 {
Azure.IoT Build 0:6ae2f7bca550 3215 int result;
Azure.IoT Build 0:6ae2f7bca550 3216
Azure.IoT Build 0:6ae2f7bca550 3217 if (attach == NULL)
Azure.IoT Build 0:6ae2f7bca550 3218 {
Azure.IoT Build 0:6ae2f7bca550 3219 result = __LINE__;
Azure.IoT Build 0:6ae2f7bca550 3220 }
Azure.IoT Build 0:6ae2f7bca550 3221 else
Azure.IoT Build 0:6ae2f7bca550 3222 {
Azure.IoT Build 0:6ae2f7bca550 3223 ATTACH_INSTANCE* attach_instance = (ATTACH_INSTANCE*)attach;
Azure.IoT Build 0:6ae2f7bca550 3224 AMQP_VALUE source_amqp_value = amqpvalue_clone(source_value);
Azure.IoT Build 0:6ae2f7bca550 3225 if (source_amqp_value == NULL)
Azure.IoT Build 0:6ae2f7bca550 3226 {
Azure.IoT Build 0:6ae2f7bca550 3227 result = __LINE__;
Azure.IoT Build 0:6ae2f7bca550 3228 }
Azure.IoT Build 0:6ae2f7bca550 3229 else
Azure.IoT Build 0:6ae2f7bca550 3230 {
Azure.IoT Build 0:6ae2f7bca550 3231 if (amqpvalue_set_composite_item(attach_instance->composite_value, 5, source_amqp_value) != 0)
Azure.IoT Build 0:6ae2f7bca550 3232 {
Azure.IoT Build 0:6ae2f7bca550 3233 result = __LINE__;
Azure.IoT Build 0:6ae2f7bca550 3234 }
Azure.IoT Build 0:6ae2f7bca550 3235 else
Azure.IoT Build 0:6ae2f7bca550 3236 {
Azure.IoT Build 0:6ae2f7bca550 3237 result = 0;
Azure.IoT Build 0:6ae2f7bca550 3238 }
Azure.IoT Build 0:6ae2f7bca550 3239
Azure.IoT Build 0:6ae2f7bca550 3240 amqpvalue_destroy(source_amqp_value);
Azure.IoT Build 0:6ae2f7bca550 3241 }
Azure.IoT Build 0:6ae2f7bca550 3242 }
Azure.IoT Build 0:6ae2f7bca550 3243
Azure.IoT Build 0:6ae2f7bca550 3244 return result;
Azure.IoT Build 0:6ae2f7bca550 3245 }
Azure.IoT Build 0:6ae2f7bca550 3246
Azure.IoT Build 0:6ae2f7bca550 3247 int attach_get_target(ATTACH_HANDLE attach, AMQP_VALUE* target_value)
Azure.IoT Build 0:6ae2f7bca550 3248 {
Azure.IoT Build 0:6ae2f7bca550 3249 int result;
Azure.IoT Build 0:6ae2f7bca550 3250
Azure.IoT Build 0:6ae2f7bca550 3251 if (attach == NULL)
Azure.IoT Build 0:6ae2f7bca550 3252 {
Azure.IoT Build 0:6ae2f7bca550 3253 result = __LINE__;
Azure.IoT Build 0:6ae2f7bca550 3254 }
Azure.IoT Build 0:6ae2f7bca550 3255 else
Azure.IoT Build 0:6ae2f7bca550 3256 {
Azure.IoT Build 0:6ae2f7bca550 3257 ATTACH_INSTANCE* attach_instance = (ATTACH_INSTANCE*)attach;
Azure.IoT Build 0:6ae2f7bca550 3258 AMQP_VALUE item_value = amqpvalue_get_composite_item_in_place(attach_instance->composite_value, 6);
Azure.IoT Build 0:6ae2f7bca550 3259 if (item_value == NULL)
Azure.IoT Build 0:6ae2f7bca550 3260 {
Azure.IoT Build 0:6ae2f7bca550 3261 result = __LINE__;
Azure.IoT Build 0:6ae2f7bca550 3262 }
Azure.IoT Build 0:6ae2f7bca550 3263 else
Azure.IoT Build 0:6ae2f7bca550 3264 {
Azure.IoT Build 0:6ae2f7bca550 3265 *target_value = item_value;
Azure.IoT Build 0:6ae2f7bca550 3266 result = 0;
Azure.IoT Build 0:6ae2f7bca550 3267 }
Azure.IoT Build 0:6ae2f7bca550 3268 }
Azure.IoT Build 0:6ae2f7bca550 3269
Azure.IoT Build 0:6ae2f7bca550 3270 return result;
Azure.IoT Build 0:6ae2f7bca550 3271 }
Azure.IoT Build 0:6ae2f7bca550 3272
Azure.IoT Build 0:6ae2f7bca550 3273 int attach_set_target(ATTACH_HANDLE attach, AMQP_VALUE target_value)
Azure.IoT Build 0:6ae2f7bca550 3274 {
Azure.IoT Build 0:6ae2f7bca550 3275 int result;
Azure.IoT Build 0:6ae2f7bca550 3276
Azure.IoT Build 0:6ae2f7bca550 3277 if (attach == NULL)
Azure.IoT Build 0:6ae2f7bca550 3278 {
Azure.IoT Build 0:6ae2f7bca550 3279 result = __LINE__;
Azure.IoT Build 0:6ae2f7bca550 3280 }
Azure.IoT Build 0:6ae2f7bca550 3281 else
Azure.IoT Build 0:6ae2f7bca550 3282 {
Azure.IoT Build 0:6ae2f7bca550 3283 ATTACH_INSTANCE* attach_instance = (ATTACH_INSTANCE*)attach;
Azure.IoT Build 0:6ae2f7bca550 3284 AMQP_VALUE target_amqp_value = amqpvalue_clone(target_value);
Azure.IoT Build 0:6ae2f7bca550 3285 if (target_amqp_value == NULL)
Azure.IoT Build 0:6ae2f7bca550 3286 {
Azure.IoT Build 0:6ae2f7bca550 3287 result = __LINE__;
Azure.IoT Build 0:6ae2f7bca550 3288 }
Azure.IoT Build 0:6ae2f7bca550 3289 else
Azure.IoT Build 0:6ae2f7bca550 3290 {
Azure.IoT Build 0:6ae2f7bca550 3291 if (amqpvalue_set_composite_item(attach_instance->composite_value, 6, target_amqp_value) != 0)
Azure.IoT Build 0:6ae2f7bca550 3292 {
Azure.IoT Build 0:6ae2f7bca550 3293 result = __LINE__;
Azure.IoT Build 0:6ae2f7bca550 3294 }
Azure.IoT Build 0:6ae2f7bca550 3295 else
Azure.IoT Build 0:6ae2f7bca550 3296 {
Azure.IoT Build 0:6ae2f7bca550 3297 result = 0;
Azure.IoT Build 0:6ae2f7bca550 3298 }
Azure.IoT Build 0:6ae2f7bca550 3299
Azure.IoT Build 0:6ae2f7bca550 3300 amqpvalue_destroy(target_amqp_value);
Azure.IoT Build 0:6ae2f7bca550 3301 }
Azure.IoT Build 0:6ae2f7bca550 3302 }
Azure.IoT Build 0:6ae2f7bca550 3303
Azure.IoT Build 0:6ae2f7bca550 3304 return result;
Azure.IoT Build 0:6ae2f7bca550 3305 }
Azure.IoT Build 0:6ae2f7bca550 3306
Azure.IoT Build 0:6ae2f7bca550 3307 int attach_get_unsettled(ATTACH_HANDLE attach, AMQP_VALUE* unsettled_value)
Azure.IoT Build 0:6ae2f7bca550 3308 {
Azure.IoT Build 0:6ae2f7bca550 3309 int result;
Azure.IoT Build 0:6ae2f7bca550 3310
Azure.IoT Build 0:6ae2f7bca550 3311 if (attach == NULL)
Azure.IoT Build 0:6ae2f7bca550 3312 {
Azure.IoT Build 0:6ae2f7bca550 3313 result = __LINE__;
Azure.IoT Build 0:6ae2f7bca550 3314 }
Azure.IoT Build 0:6ae2f7bca550 3315 else
Azure.IoT Build 0:6ae2f7bca550 3316 {
Azure.IoT Build 0:6ae2f7bca550 3317 ATTACH_INSTANCE* attach_instance = (ATTACH_INSTANCE*)attach;
Azure.IoT Build 0:6ae2f7bca550 3318 AMQP_VALUE item_value = amqpvalue_get_composite_item_in_place(attach_instance->composite_value, 7);
Azure.IoT Build 0:6ae2f7bca550 3319 if (item_value == NULL)
Azure.IoT Build 0:6ae2f7bca550 3320 {
Azure.IoT Build 0:6ae2f7bca550 3321 result = __LINE__;
Azure.IoT Build 0:6ae2f7bca550 3322 }
Azure.IoT Build 0:6ae2f7bca550 3323 else
Azure.IoT Build 0:6ae2f7bca550 3324 {
Azure.IoT Build 0:6ae2f7bca550 3325 if (amqpvalue_get_map(item_value, unsettled_value) != 0)
Azure.IoT Build 0:6ae2f7bca550 3326 {
Azure.IoT Build 0:6ae2f7bca550 3327 result = __LINE__;
Azure.IoT Build 0:6ae2f7bca550 3328 }
Azure.IoT Build 0:6ae2f7bca550 3329 else
Azure.IoT Build 0:6ae2f7bca550 3330 {
Azure.IoT Build 0:6ae2f7bca550 3331 result = 0;
Azure.IoT Build 0:6ae2f7bca550 3332 }
Azure.IoT Build 0:6ae2f7bca550 3333 }
Azure.IoT Build 0:6ae2f7bca550 3334 }
Azure.IoT Build 0:6ae2f7bca550 3335
Azure.IoT Build 0:6ae2f7bca550 3336 return result;
Azure.IoT Build 0:6ae2f7bca550 3337 }
Azure.IoT Build 0:6ae2f7bca550 3338
Azure.IoT Build 0:6ae2f7bca550 3339 int attach_set_unsettled(ATTACH_HANDLE attach, AMQP_VALUE unsettled_value)
Azure.IoT Build 0:6ae2f7bca550 3340 {
Azure.IoT Build 0:6ae2f7bca550 3341 int result;
Azure.IoT Build 0:6ae2f7bca550 3342
Azure.IoT Build 0:6ae2f7bca550 3343 if (attach == NULL)
Azure.IoT Build 0:6ae2f7bca550 3344 {
Azure.IoT Build 0:6ae2f7bca550 3345 result = __LINE__;
Azure.IoT Build 0:6ae2f7bca550 3346 }
Azure.IoT Build 0:6ae2f7bca550 3347 else
Azure.IoT Build 0:6ae2f7bca550 3348 {
Azure.IoT Build 0:6ae2f7bca550 3349 ATTACH_INSTANCE* attach_instance = (ATTACH_INSTANCE*)attach;
Azure.IoT Build 0:6ae2f7bca550 3350 AMQP_VALUE unsettled_amqp_value = amqpvalue_clone(unsettled_value);
Azure.IoT Build 0:6ae2f7bca550 3351 if (unsettled_amqp_value == NULL)
Azure.IoT Build 0:6ae2f7bca550 3352 {
Azure.IoT Build 0:6ae2f7bca550 3353 result = __LINE__;
Azure.IoT Build 0:6ae2f7bca550 3354 }
Azure.IoT Build 0:6ae2f7bca550 3355 else
Azure.IoT Build 0:6ae2f7bca550 3356 {
Azure.IoT Build 0:6ae2f7bca550 3357 if (amqpvalue_set_composite_item(attach_instance->composite_value, 7, unsettled_amqp_value) != 0)
Azure.IoT Build 0:6ae2f7bca550 3358 {
Azure.IoT Build 0:6ae2f7bca550 3359 result = __LINE__;
Azure.IoT Build 0:6ae2f7bca550 3360 }
Azure.IoT Build 0:6ae2f7bca550 3361 else
Azure.IoT Build 0:6ae2f7bca550 3362 {
Azure.IoT Build 0:6ae2f7bca550 3363 result = 0;
Azure.IoT Build 0:6ae2f7bca550 3364 }
Azure.IoT Build 0:6ae2f7bca550 3365
Azure.IoT Build 0:6ae2f7bca550 3366 amqpvalue_destroy(unsettled_amqp_value);
Azure.IoT Build 0:6ae2f7bca550 3367 }
Azure.IoT Build 0:6ae2f7bca550 3368 }
Azure.IoT Build 0:6ae2f7bca550 3369
Azure.IoT Build 0:6ae2f7bca550 3370 return result;
Azure.IoT Build 0:6ae2f7bca550 3371 }
Azure.IoT Build 0:6ae2f7bca550 3372
Azure.IoT Build 0:6ae2f7bca550 3373 int attach_get_incomplete_unsettled(ATTACH_HANDLE attach, bool* incomplete_unsettled_value)
Azure.IoT Build 0:6ae2f7bca550 3374 {
Azure.IoT Build 0:6ae2f7bca550 3375 int result;
Azure.IoT Build 0:6ae2f7bca550 3376
Azure.IoT Build 0:6ae2f7bca550 3377 if (attach == NULL)
Azure.IoT Build 0:6ae2f7bca550 3378 {
Azure.IoT Build 0:6ae2f7bca550 3379 result = __LINE__;
Azure.IoT Build 0:6ae2f7bca550 3380 }
Azure.IoT Build 0:6ae2f7bca550 3381 else
Azure.IoT Build 0:6ae2f7bca550 3382 {
Azure.IoT Build 0:6ae2f7bca550 3383 ATTACH_INSTANCE* attach_instance = (ATTACH_INSTANCE*)attach;
Azure.IoT Build 0:6ae2f7bca550 3384 AMQP_VALUE item_value = amqpvalue_get_composite_item_in_place(attach_instance->composite_value, 8);
Azure.IoT Build 0:6ae2f7bca550 3385 if (item_value == NULL)
Azure.IoT Build 0:6ae2f7bca550 3386 {
Azure.IoT Build 0:6ae2f7bca550 3387 result = __LINE__;
Azure.IoT Build 0:6ae2f7bca550 3388 }
Azure.IoT Build 0:6ae2f7bca550 3389 else
Azure.IoT Build 0:6ae2f7bca550 3390 {
Azure.IoT Build 0:6ae2f7bca550 3391 if (amqpvalue_get_boolean(item_value, incomplete_unsettled_value) != 0)
Azure.IoT Build 0:6ae2f7bca550 3392 {
Azure.IoT Build 0:6ae2f7bca550 3393 result = __LINE__;
Azure.IoT Build 0:6ae2f7bca550 3394 }
Azure.IoT Build 0:6ae2f7bca550 3395 else
Azure.IoT Build 0:6ae2f7bca550 3396 {
Azure.IoT Build 0:6ae2f7bca550 3397 result = 0;
Azure.IoT Build 0:6ae2f7bca550 3398 }
Azure.IoT Build 0:6ae2f7bca550 3399 }
Azure.IoT Build 0:6ae2f7bca550 3400 }
Azure.IoT Build 0:6ae2f7bca550 3401
Azure.IoT Build 0:6ae2f7bca550 3402 return result;
Azure.IoT Build 0:6ae2f7bca550 3403 }
Azure.IoT Build 0:6ae2f7bca550 3404
Azure.IoT Build 0:6ae2f7bca550 3405 int attach_set_incomplete_unsettled(ATTACH_HANDLE attach, bool incomplete_unsettled_value)
Azure.IoT Build 0:6ae2f7bca550 3406 {
Azure.IoT Build 0:6ae2f7bca550 3407 int result;
Azure.IoT Build 0:6ae2f7bca550 3408
Azure.IoT Build 0:6ae2f7bca550 3409 if (attach == NULL)
Azure.IoT Build 0:6ae2f7bca550 3410 {
Azure.IoT Build 0:6ae2f7bca550 3411 result = __LINE__;
Azure.IoT Build 0:6ae2f7bca550 3412 }
Azure.IoT Build 0:6ae2f7bca550 3413 else
Azure.IoT Build 0:6ae2f7bca550 3414 {
Azure.IoT Build 0:6ae2f7bca550 3415 ATTACH_INSTANCE* attach_instance = (ATTACH_INSTANCE*)attach;
Azure.IoT Build 0:6ae2f7bca550 3416 AMQP_VALUE incomplete_unsettled_amqp_value = amqpvalue_create_boolean(incomplete_unsettled_value);
Azure.IoT Build 0:6ae2f7bca550 3417 if (incomplete_unsettled_amqp_value == NULL)
Azure.IoT Build 0:6ae2f7bca550 3418 {
Azure.IoT Build 0:6ae2f7bca550 3419 result = __LINE__;
Azure.IoT Build 0:6ae2f7bca550 3420 }
Azure.IoT Build 0:6ae2f7bca550 3421 else
Azure.IoT Build 0:6ae2f7bca550 3422 {
Azure.IoT Build 0:6ae2f7bca550 3423 if (amqpvalue_set_composite_item(attach_instance->composite_value, 8, incomplete_unsettled_amqp_value) != 0)
Azure.IoT Build 0:6ae2f7bca550 3424 {
Azure.IoT Build 0:6ae2f7bca550 3425 result = __LINE__;
Azure.IoT Build 0:6ae2f7bca550 3426 }
Azure.IoT Build 0:6ae2f7bca550 3427 else
Azure.IoT Build 0:6ae2f7bca550 3428 {
Azure.IoT Build 0:6ae2f7bca550 3429 result = 0;
Azure.IoT Build 0:6ae2f7bca550 3430 }
Azure.IoT Build 0:6ae2f7bca550 3431
Azure.IoT Build 0:6ae2f7bca550 3432 amqpvalue_destroy(incomplete_unsettled_amqp_value);
Azure.IoT Build 0:6ae2f7bca550 3433 }
Azure.IoT Build 0:6ae2f7bca550 3434 }
Azure.IoT Build 0:6ae2f7bca550 3435
Azure.IoT Build 0:6ae2f7bca550 3436 return result;
Azure.IoT Build 0:6ae2f7bca550 3437 }
Azure.IoT Build 0:6ae2f7bca550 3438
Azure.IoT Build 0:6ae2f7bca550 3439 int attach_get_initial_delivery_count(ATTACH_HANDLE attach, sequence_no* initial_delivery_count_value)
Azure.IoT Build 0:6ae2f7bca550 3440 {
Azure.IoT Build 0:6ae2f7bca550 3441 int result;
Azure.IoT Build 0:6ae2f7bca550 3442
Azure.IoT Build 0:6ae2f7bca550 3443 if (attach == NULL)
Azure.IoT Build 0:6ae2f7bca550 3444 {
Azure.IoT Build 0:6ae2f7bca550 3445 result = __LINE__;
Azure.IoT Build 0:6ae2f7bca550 3446 }
Azure.IoT Build 0:6ae2f7bca550 3447 else
Azure.IoT Build 0:6ae2f7bca550 3448 {
Azure.IoT Build 0:6ae2f7bca550 3449 ATTACH_INSTANCE* attach_instance = (ATTACH_INSTANCE*)attach;
Azure.IoT Build 0:6ae2f7bca550 3450 AMQP_VALUE item_value = amqpvalue_get_composite_item_in_place(attach_instance->composite_value, 9);
Azure.IoT Build 0:6ae2f7bca550 3451 if (item_value == NULL)
Azure.IoT Build 0:6ae2f7bca550 3452 {
Azure.IoT Build 0:6ae2f7bca550 3453 result = __LINE__;
Azure.IoT Build 0:6ae2f7bca550 3454 }
Azure.IoT Build 0:6ae2f7bca550 3455 else
Azure.IoT Build 0:6ae2f7bca550 3456 {
Azure.IoT Build 0:6ae2f7bca550 3457 if (amqpvalue_get_sequence_no(item_value, initial_delivery_count_value) != 0)
Azure.IoT Build 0:6ae2f7bca550 3458 {
Azure.IoT Build 0:6ae2f7bca550 3459 result = __LINE__;
Azure.IoT Build 0:6ae2f7bca550 3460 }
Azure.IoT Build 0:6ae2f7bca550 3461 else
Azure.IoT Build 0:6ae2f7bca550 3462 {
Azure.IoT Build 0:6ae2f7bca550 3463 result = 0;
Azure.IoT Build 0:6ae2f7bca550 3464 }
Azure.IoT Build 0:6ae2f7bca550 3465 }
Azure.IoT Build 0:6ae2f7bca550 3466 }
Azure.IoT Build 0:6ae2f7bca550 3467
Azure.IoT Build 0:6ae2f7bca550 3468 return result;
Azure.IoT Build 0:6ae2f7bca550 3469 }
Azure.IoT Build 0:6ae2f7bca550 3470
Azure.IoT Build 0:6ae2f7bca550 3471 int attach_set_initial_delivery_count(ATTACH_HANDLE attach, sequence_no initial_delivery_count_value)
Azure.IoT Build 0:6ae2f7bca550 3472 {
Azure.IoT Build 0:6ae2f7bca550 3473 int result;
Azure.IoT Build 0:6ae2f7bca550 3474
Azure.IoT Build 0:6ae2f7bca550 3475 if (attach == NULL)
Azure.IoT Build 0:6ae2f7bca550 3476 {
Azure.IoT Build 0:6ae2f7bca550 3477 result = __LINE__;
Azure.IoT Build 0:6ae2f7bca550 3478 }
Azure.IoT Build 0:6ae2f7bca550 3479 else
Azure.IoT Build 0:6ae2f7bca550 3480 {
Azure.IoT Build 0:6ae2f7bca550 3481 ATTACH_INSTANCE* attach_instance = (ATTACH_INSTANCE*)attach;
Azure.IoT Build 0:6ae2f7bca550 3482 AMQP_VALUE initial_delivery_count_amqp_value = amqpvalue_create_sequence_no(initial_delivery_count_value);
Azure.IoT Build 0:6ae2f7bca550 3483 if (initial_delivery_count_amqp_value == NULL)
Azure.IoT Build 0:6ae2f7bca550 3484 {
Azure.IoT Build 0:6ae2f7bca550 3485 result = __LINE__;
Azure.IoT Build 0:6ae2f7bca550 3486 }
Azure.IoT Build 0:6ae2f7bca550 3487 else
Azure.IoT Build 0:6ae2f7bca550 3488 {
Azure.IoT Build 0:6ae2f7bca550 3489 if (amqpvalue_set_composite_item(attach_instance->composite_value, 9, initial_delivery_count_amqp_value) != 0)
Azure.IoT Build 0:6ae2f7bca550 3490 {
Azure.IoT Build 0:6ae2f7bca550 3491 result = __LINE__;
Azure.IoT Build 0:6ae2f7bca550 3492 }
Azure.IoT Build 0:6ae2f7bca550 3493 else
Azure.IoT Build 0:6ae2f7bca550 3494 {
Azure.IoT Build 0:6ae2f7bca550 3495 result = 0;
Azure.IoT Build 0:6ae2f7bca550 3496 }
Azure.IoT Build 0:6ae2f7bca550 3497
Azure.IoT Build 0:6ae2f7bca550 3498 amqpvalue_destroy(initial_delivery_count_amqp_value);
Azure.IoT Build 0:6ae2f7bca550 3499 }
Azure.IoT Build 0:6ae2f7bca550 3500 }
Azure.IoT Build 0:6ae2f7bca550 3501
Azure.IoT Build 0:6ae2f7bca550 3502 return result;
Azure.IoT Build 0:6ae2f7bca550 3503 }
Azure.IoT Build 0:6ae2f7bca550 3504
Azure.IoT Build 0:6ae2f7bca550 3505 int attach_get_max_message_size(ATTACH_HANDLE attach, uint64_t* max_message_size_value)
Azure.IoT Build 0:6ae2f7bca550 3506 {
Azure.IoT Build 0:6ae2f7bca550 3507 int result;
Azure.IoT Build 0:6ae2f7bca550 3508
Azure.IoT Build 0:6ae2f7bca550 3509 if (attach == NULL)
Azure.IoT Build 0:6ae2f7bca550 3510 {
Azure.IoT Build 0:6ae2f7bca550 3511 result = __LINE__;
Azure.IoT Build 0:6ae2f7bca550 3512 }
Azure.IoT Build 0:6ae2f7bca550 3513 else
Azure.IoT Build 0:6ae2f7bca550 3514 {
Azure.IoT Build 0:6ae2f7bca550 3515 ATTACH_INSTANCE* attach_instance = (ATTACH_INSTANCE*)attach;
Azure.IoT Build 0:6ae2f7bca550 3516 AMQP_VALUE item_value = amqpvalue_get_composite_item_in_place(attach_instance->composite_value, 10);
Azure.IoT Build 0:6ae2f7bca550 3517 if (item_value == NULL)
Azure.IoT Build 0:6ae2f7bca550 3518 {
Azure.IoT Build 0:6ae2f7bca550 3519 result = __LINE__;
Azure.IoT Build 0:6ae2f7bca550 3520 }
Azure.IoT Build 0:6ae2f7bca550 3521 else
Azure.IoT Build 0:6ae2f7bca550 3522 {
Azure.IoT Build 0:6ae2f7bca550 3523 if (amqpvalue_get_ulong(item_value, max_message_size_value) != 0)
Azure.IoT Build 0:6ae2f7bca550 3524 {
Azure.IoT Build 0:6ae2f7bca550 3525 result = __LINE__;
Azure.IoT Build 0:6ae2f7bca550 3526 }
Azure.IoT Build 0:6ae2f7bca550 3527 else
Azure.IoT Build 0:6ae2f7bca550 3528 {
Azure.IoT Build 0:6ae2f7bca550 3529 result = 0;
Azure.IoT Build 0:6ae2f7bca550 3530 }
Azure.IoT Build 0:6ae2f7bca550 3531 }
Azure.IoT Build 0:6ae2f7bca550 3532 }
Azure.IoT Build 0:6ae2f7bca550 3533
Azure.IoT Build 0:6ae2f7bca550 3534 return result;
Azure.IoT Build 0:6ae2f7bca550 3535 }
Azure.IoT Build 0:6ae2f7bca550 3536
Azure.IoT Build 0:6ae2f7bca550 3537 int attach_set_max_message_size(ATTACH_HANDLE attach, uint64_t max_message_size_value)
Azure.IoT Build 0:6ae2f7bca550 3538 {
Azure.IoT Build 0:6ae2f7bca550 3539 int result;
Azure.IoT Build 0:6ae2f7bca550 3540
Azure.IoT Build 0:6ae2f7bca550 3541 if (attach == NULL)
Azure.IoT Build 0:6ae2f7bca550 3542 {
Azure.IoT Build 0:6ae2f7bca550 3543 result = __LINE__;
Azure.IoT Build 0:6ae2f7bca550 3544 }
Azure.IoT Build 0:6ae2f7bca550 3545 else
Azure.IoT Build 0:6ae2f7bca550 3546 {
Azure.IoT Build 0:6ae2f7bca550 3547 ATTACH_INSTANCE* attach_instance = (ATTACH_INSTANCE*)attach;
Azure.IoT Build 0:6ae2f7bca550 3548 AMQP_VALUE max_message_size_amqp_value = amqpvalue_create_ulong(max_message_size_value);
Azure.IoT Build 0:6ae2f7bca550 3549 if (max_message_size_amqp_value == NULL)
Azure.IoT Build 0:6ae2f7bca550 3550 {
Azure.IoT Build 0:6ae2f7bca550 3551 result = __LINE__;
Azure.IoT Build 0:6ae2f7bca550 3552 }
Azure.IoT Build 0:6ae2f7bca550 3553 else
Azure.IoT Build 0:6ae2f7bca550 3554 {
Azure.IoT Build 0:6ae2f7bca550 3555 if (amqpvalue_set_composite_item(attach_instance->composite_value, 10, max_message_size_amqp_value) != 0)
Azure.IoT Build 0:6ae2f7bca550 3556 {
Azure.IoT Build 0:6ae2f7bca550 3557 result = __LINE__;
Azure.IoT Build 0:6ae2f7bca550 3558 }
Azure.IoT Build 0:6ae2f7bca550 3559 else
Azure.IoT Build 0:6ae2f7bca550 3560 {
Azure.IoT Build 0:6ae2f7bca550 3561 result = 0;
Azure.IoT Build 0:6ae2f7bca550 3562 }
Azure.IoT Build 0:6ae2f7bca550 3563
Azure.IoT Build 0:6ae2f7bca550 3564 amqpvalue_destroy(max_message_size_amqp_value);
Azure.IoT Build 0:6ae2f7bca550 3565 }
Azure.IoT Build 0:6ae2f7bca550 3566 }
Azure.IoT Build 0:6ae2f7bca550 3567
Azure.IoT Build 0:6ae2f7bca550 3568 return result;
Azure.IoT Build 0:6ae2f7bca550 3569 }
Azure.IoT Build 0:6ae2f7bca550 3570
Azure.IoT Build 0:6ae2f7bca550 3571 int attach_get_offered_capabilities(ATTACH_HANDLE attach, AMQP_VALUE* offered_capabilities_value)
Azure.IoT Build 0:6ae2f7bca550 3572 {
Azure.IoT Build 0:6ae2f7bca550 3573 int result;
Azure.IoT Build 0:6ae2f7bca550 3574
Azure.IoT Build 0:6ae2f7bca550 3575 if (attach == NULL)
Azure.IoT Build 0:6ae2f7bca550 3576 {
Azure.IoT Build 0:6ae2f7bca550 3577 result = __LINE__;
Azure.IoT Build 0:6ae2f7bca550 3578 }
Azure.IoT Build 0:6ae2f7bca550 3579 else
Azure.IoT Build 0:6ae2f7bca550 3580 {
Azure.IoT Build 0:6ae2f7bca550 3581 ATTACH_INSTANCE* attach_instance = (ATTACH_INSTANCE*)attach;
Azure.IoT Build 0:6ae2f7bca550 3582 AMQP_VALUE item_value = amqpvalue_get_composite_item_in_place(attach_instance->composite_value, 11);
Azure.IoT Build 0:6ae2f7bca550 3583 if (item_value == NULL)
Azure.IoT Build 0:6ae2f7bca550 3584 {
Azure.IoT Build 0:6ae2f7bca550 3585 result = __LINE__;
Azure.IoT Build 0:6ae2f7bca550 3586 }
Azure.IoT Build 0:6ae2f7bca550 3587 else
Azure.IoT Build 0:6ae2f7bca550 3588 {
Azure.IoT Build 0:6ae2f7bca550 3589 if (amqpvalue_get_array(item_value, offered_capabilities_value) != 0)
Azure.IoT Build 0:6ae2f7bca550 3590 {
Azure.IoT Build 0:6ae2f7bca550 3591 result = __LINE__;
Azure.IoT Build 0:6ae2f7bca550 3592 }
Azure.IoT Build 0:6ae2f7bca550 3593 else
Azure.IoT Build 0:6ae2f7bca550 3594 {
Azure.IoT Build 0:6ae2f7bca550 3595 result = 0;
Azure.IoT Build 0:6ae2f7bca550 3596 }
Azure.IoT Build 0:6ae2f7bca550 3597 }
Azure.IoT Build 0:6ae2f7bca550 3598 }
Azure.IoT Build 0:6ae2f7bca550 3599
Azure.IoT Build 0:6ae2f7bca550 3600 return result;
Azure.IoT Build 0:6ae2f7bca550 3601 }
Azure.IoT Build 0:6ae2f7bca550 3602
Azure.IoT Build 0:6ae2f7bca550 3603 int attach_set_offered_capabilities(ATTACH_HANDLE attach, AMQP_VALUE offered_capabilities_value)
Azure.IoT Build 0:6ae2f7bca550 3604 {
Azure.IoT Build 0:6ae2f7bca550 3605 int result;
Azure.IoT Build 0:6ae2f7bca550 3606
Azure.IoT Build 0:6ae2f7bca550 3607 if (attach == NULL)
Azure.IoT Build 0:6ae2f7bca550 3608 {
Azure.IoT Build 0:6ae2f7bca550 3609 result = __LINE__;
Azure.IoT Build 0:6ae2f7bca550 3610 }
Azure.IoT Build 0:6ae2f7bca550 3611 else
Azure.IoT Build 0:6ae2f7bca550 3612 {
Azure.IoT Build 0:6ae2f7bca550 3613 ATTACH_INSTANCE* attach_instance = (ATTACH_INSTANCE*)attach;
Azure.IoT Build 0:6ae2f7bca550 3614 AMQP_VALUE offered_capabilities_amqp_value = amqpvalue_clone(offered_capabilities_value);
Azure.IoT Build 0:6ae2f7bca550 3615 if (offered_capabilities_amqp_value == NULL)
Azure.IoT Build 0:6ae2f7bca550 3616 {
Azure.IoT Build 0:6ae2f7bca550 3617 result = __LINE__;
Azure.IoT Build 0:6ae2f7bca550 3618 }
Azure.IoT Build 0:6ae2f7bca550 3619 else
Azure.IoT Build 0:6ae2f7bca550 3620 {
Azure.IoT Build 0:6ae2f7bca550 3621 if (amqpvalue_set_composite_item(attach_instance->composite_value, 11, offered_capabilities_amqp_value) != 0)
Azure.IoT Build 0:6ae2f7bca550 3622 {
Azure.IoT Build 0:6ae2f7bca550 3623 result = __LINE__;
Azure.IoT Build 0:6ae2f7bca550 3624 }
Azure.IoT Build 0:6ae2f7bca550 3625 else
Azure.IoT Build 0:6ae2f7bca550 3626 {
Azure.IoT Build 0:6ae2f7bca550 3627 result = 0;
Azure.IoT Build 0:6ae2f7bca550 3628 }
Azure.IoT Build 0:6ae2f7bca550 3629
Azure.IoT Build 0:6ae2f7bca550 3630 amqpvalue_destroy(offered_capabilities_amqp_value);
Azure.IoT Build 0:6ae2f7bca550 3631 }
Azure.IoT Build 0:6ae2f7bca550 3632 }
Azure.IoT Build 0:6ae2f7bca550 3633
Azure.IoT Build 0:6ae2f7bca550 3634 return result;
Azure.IoT Build 0:6ae2f7bca550 3635 }
Azure.IoT Build 0:6ae2f7bca550 3636
Azure.IoT Build 0:6ae2f7bca550 3637 int attach_get_desired_capabilities(ATTACH_HANDLE attach, AMQP_VALUE* desired_capabilities_value)
Azure.IoT Build 0:6ae2f7bca550 3638 {
Azure.IoT Build 0:6ae2f7bca550 3639 int result;
Azure.IoT Build 0:6ae2f7bca550 3640
Azure.IoT Build 0:6ae2f7bca550 3641 if (attach == NULL)
Azure.IoT Build 0:6ae2f7bca550 3642 {
Azure.IoT Build 0:6ae2f7bca550 3643 result = __LINE__;
Azure.IoT Build 0:6ae2f7bca550 3644 }
Azure.IoT Build 0:6ae2f7bca550 3645 else
Azure.IoT Build 0:6ae2f7bca550 3646 {
Azure.IoT Build 0:6ae2f7bca550 3647 ATTACH_INSTANCE* attach_instance = (ATTACH_INSTANCE*)attach;
Azure.IoT Build 0:6ae2f7bca550 3648 AMQP_VALUE item_value = amqpvalue_get_composite_item_in_place(attach_instance->composite_value, 12);
Azure.IoT Build 0:6ae2f7bca550 3649 if (item_value == NULL)
Azure.IoT Build 0:6ae2f7bca550 3650 {
Azure.IoT Build 0:6ae2f7bca550 3651 result = __LINE__;
Azure.IoT Build 0:6ae2f7bca550 3652 }
Azure.IoT Build 0:6ae2f7bca550 3653 else
Azure.IoT Build 0:6ae2f7bca550 3654 {
Azure.IoT Build 0:6ae2f7bca550 3655 if (amqpvalue_get_array(item_value, desired_capabilities_value) != 0)
Azure.IoT Build 0:6ae2f7bca550 3656 {
Azure.IoT Build 0:6ae2f7bca550 3657 result = __LINE__;
Azure.IoT Build 0:6ae2f7bca550 3658 }
Azure.IoT Build 0:6ae2f7bca550 3659 else
Azure.IoT Build 0:6ae2f7bca550 3660 {
Azure.IoT Build 0:6ae2f7bca550 3661 result = 0;
Azure.IoT Build 0:6ae2f7bca550 3662 }
Azure.IoT Build 0:6ae2f7bca550 3663 }
Azure.IoT Build 0:6ae2f7bca550 3664 }
Azure.IoT Build 0:6ae2f7bca550 3665
Azure.IoT Build 0:6ae2f7bca550 3666 return result;
Azure.IoT Build 0:6ae2f7bca550 3667 }
Azure.IoT Build 0:6ae2f7bca550 3668
Azure.IoT Build 0:6ae2f7bca550 3669 int attach_set_desired_capabilities(ATTACH_HANDLE attach, AMQP_VALUE desired_capabilities_value)
Azure.IoT Build 0:6ae2f7bca550 3670 {
Azure.IoT Build 0:6ae2f7bca550 3671 int result;
Azure.IoT Build 0:6ae2f7bca550 3672
Azure.IoT Build 0:6ae2f7bca550 3673 if (attach == NULL)
Azure.IoT Build 0:6ae2f7bca550 3674 {
Azure.IoT Build 0:6ae2f7bca550 3675 result = __LINE__;
Azure.IoT Build 0:6ae2f7bca550 3676 }
Azure.IoT Build 0:6ae2f7bca550 3677 else
Azure.IoT Build 0:6ae2f7bca550 3678 {
Azure.IoT Build 0:6ae2f7bca550 3679 ATTACH_INSTANCE* attach_instance = (ATTACH_INSTANCE*)attach;
Azure.IoT Build 0:6ae2f7bca550 3680 AMQP_VALUE desired_capabilities_amqp_value = amqpvalue_clone(desired_capabilities_value);
Azure.IoT Build 0:6ae2f7bca550 3681 if (desired_capabilities_amqp_value == NULL)
Azure.IoT Build 0:6ae2f7bca550 3682 {
Azure.IoT Build 0:6ae2f7bca550 3683 result = __LINE__;
Azure.IoT Build 0:6ae2f7bca550 3684 }
Azure.IoT Build 0:6ae2f7bca550 3685 else
Azure.IoT Build 0:6ae2f7bca550 3686 {
Azure.IoT Build 0:6ae2f7bca550 3687 if (amqpvalue_set_composite_item(attach_instance->composite_value, 12, desired_capabilities_amqp_value) != 0)
Azure.IoT Build 0:6ae2f7bca550 3688 {
Azure.IoT Build 0:6ae2f7bca550 3689 result = __LINE__;
Azure.IoT Build 0:6ae2f7bca550 3690 }
Azure.IoT Build 0:6ae2f7bca550 3691 else
Azure.IoT Build 0:6ae2f7bca550 3692 {
Azure.IoT Build 0:6ae2f7bca550 3693 result = 0;
Azure.IoT Build 0:6ae2f7bca550 3694 }
Azure.IoT Build 0:6ae2f7bca550 3695
Azure.IoT Build 0:6ae2f7bca550 3696 amqpvalue_destroy(desired_capabilities_amqp_value);
Azure.IoT Build 0:6ae2f7bca550 3697 }
Azure.IoT Build 0:6ae2f7bca550 3698 }
Azure.IoT Build 0:6ae2f7bca550 3699
Azure.IoT Build 0:6ae2f7bca550 3700 return result;
Azure.IoT Build 0:6ae2f7bca550 3701 }
Azure.IoT Build 0:6ae2f7bca550 3702
Azure.IoT Build 0:6ae2f7bca550 3703 int attach_get_properties(ATTACH_HANDLE attach, fields* properties_value)
Azure.IoT Build 0:6ae2f7bca550 3704 {
Azure.IoT Build 0:6ae2f7bca550 3705 int result;
Azure.IoT Build 0:6ae2f7bca550 3706
Azure.IoT Build 0:6ae2f7bca550 3707 if (attach == NULL)
Azure.IoT Build 0:6ae2f7bca550 3708 {
Azure.IoT Build 0:6ae2f7bca550 3709 result = __LINE__;
Azure.IoT Build 0:6ae2f7bca550 3710 }
Azure.IoT Build 0:6ae2f7bca550 3711 else
Azure.IoT Build 0:6ae2f7bca550 3712 {
Azure.IoT Build 0:6ae2f7bca550 3713 ATTACH_INSTANCE* attach_instance = (ATTACH_INSTANCE*)attach;
Azure.IoT Build 0:6ae2f7bca550 3714 AMQP_VALUE item_value = amqpvalue_get_composite_item_in_place(attach_instance->composite_value, 13);
Azure.IoT Build 0:6ae2f7bca550 3715 if (item_value == NULL)
Azure.IoT Build 0:6ae2f7bca550 3716 {
Azure.IoT Build 0:6ae2f7bca550 3717 result = __LINE__;
Azure.IoT Build 0:6ae2f7bca550 3718 }
Azure.IoT Build 0:6ae2f7bca550 3719 else
Azure.IoT Build 0:6ae2f7bca550 3720 {
Azure.IoT Build 0:6ae2f7bca550 3721 if (amqpvalue_get_fields(item_value, properties_value) != 0)
Azure.IoT Build 0:6ae2f7bca550 3722 {
Azure.IoT Build 0:6ae2f7bca550 3723 result = __LINE__;
Azure.IoT Build 0:6ae2f7bca550 3724 }
Azure.IoT Build 0:6ae2f7bca550 3725 else
Azure.IoT Build 0:6ae2f7bca550 3726 {
Azure.IoT Build 0:6ae2f7bca550 3727 result = 0;
Azure.IoT Build 0:6ae2f7bca550 3728 }
Azure.IoT Build 0:6ae2f7bca550 3729 }
Azure.IoT Build 0:6ae2f7bca550 3730 }
Azure.IoT Build 0:6ae2f7bca550 3731
Azure.IoT Build 0:6ae2f7bca550 3732 return result;
Azure.IoT Build 0:6ae2f7bca550 3733 }
Azure.IoT Build 0:6ae2f7bca550 3734
Azure.IoT Build 0:6ae2f7bca550 3735 int attach_set_properties(ATTACH_HANDLE attach, fields properties_value)
Azure.IoT Build 0:6ae2f7bca550 3736 {
Azure.IoT Build 0:6ae2f7bca550 3737 int result;
Azure.IoT Build 0:6ae2f7bca550 3738
Azure.IoT Build 0:6ae2f7bca550 3739 if (attach == NULL)
Azure.IoT Build 0:6ae2f7bca550 3740 {
Azure.IoT Build 0:6ae2f7bca550 3741 result = __LINE__;
Azure.IoT Build 0:6ae2f7bca550 3742 }
Azure.IoT Build 0:6ae2f7bca550 3743 else
Azure.IoT Build 0:6ae2f7bca550 3744 {
Azure.IoT Build 0:6ae2f7bca550 3745 ATTACH_INSTANCE* attach_instance = (ATTACH_INSTANCE*)attach;
Azure.IoT Build 0:6ae2f7bca550 3746 AMQP_VALUE properties_amqp_value = amqpvalue_create_fields(properties_value);
Azure.IoT Build 0:6ae2f7bca550 3747 if (properties_amqp_value == NULL)
Azure.IoT Build 0:6ae2f7bca550 3748 {
Azure.IoT Build 0:6ae2f7bca550 3749 result = __LINE__;
Azure.IoT Build 0:6ae2f7bca550 3750 }
Azure.IoT Build 0:6ae2f7bca550 3751 else
Azure.IoT Build 0:6ae2f7bca550 3752 {
Azure.IoT Build 0:6ae2f7bca550 3753 if (amqpvalue_set_composite_item(attach_instance->composite_value, 13, properties_amqp_value) != 0)
Azure.IoT Build 0:6ae2f7bca550 3754 {
Azure.IoT Build 0:6ae2f7bca550 3755 result = __LINE__;
Azure.IoT Build 0:6ae2f7bca550 3756 }
Azure.IoT Build 0:6ae2f7bca550 3757 else
Azure.IoT Build 0:6ae2f7bca550 3758 {
Azure.IoT Build 0:6ae2f7bca550 3759 result = 0;
Azure.IoT Build 0:6ae2f7bca550 3760 }
Azure.IoT Build 0:6ae2f7bca550 3761
Azure.IoT Build 0:6ae2f7bca550 3762 amqpvalue_destroy(properties_amqp_value);
Azure.IoT Build 0:6ae2f7bca550 3763 }
Azure.IoT Build 0:6ae2f7bca550 3764 }
Azure.IoT Build 0:6ae2f7bca550 3765
Azure.IoT Build 0:6ae2f7bca550 3766 return result;
Azure.IoT Build 0:6ae2f7bca550 3767 }
Azure.IoT Build 0:6ae2f7bca550 3768
Azure.IoT Build 0:6ae2f7bca550 3769
Azure.IoT Build 0:6ae2f7bca550 3770 /* flow */
Azure.IoT Build 0:6ae2f7bca550 3771
Azure.IoT Build 0:6ae2f7bca550 3772 typedef struct FLOW_INSTANCE_TAG
Azure.IoT Build 0:6ae2f7bca550 3773 {
Azure.IoT Build 0:6ae2f7bca550 3774 AMQP_VALUE composite_value;
Azure.IoT Build 0:6ae2f7bca550 3775 } FLOW_INSTANCE;
Azure.IoT Build 0:6ae2f7bca550 3776
Azure.IoT Build 0:6ae2f7bca550 3777 static FLOW_HANDLE flow_create_internal(void)
Azure.IoT Build 0:6ae2f7bca550 3778 {
Azure.IoT Build 0:6ae2f7bca550 3779 FLOW_INSTANCE* flow_instance = (FLOW_INSTANCE*)amqpalloc_malloc(sizeof(FLOW_INSTANCE));
Azure.IoT Build 0:6ae2f7bca550 3780 if (flow_instance != NULL)
Azure.IoT Build 0:6ae2f7bca550 3781 {
Azure.IoT Build 0:6ae2f7bca550 3782 flow_instance->composite_value = NULL;
Azure.IoT Build 0:6ae2f7bca550 3783 }
Azure.IoT Build 0:6ae2f7bca550 3784
Azure.IoT Build 0:6ae2f7bca550 3785 return flow_instance;
Azure.IoT Build 0:6ae2f7bca550 3786 }
Azure.IoT Build 0:6ae2f7bca550 3787
Azure.IoT Build 0:6ae2f7bca550 3788 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 3789 {
Azure.IoT Build 0:6ae2f7bca550 3790 FLOW_INSTANCE* flow_instance = (FLOW_INSTANCE*)amqpalloc_malloc(sizeof(FLOW_INSTANCE));
Azure.IoT Build 0:6ae2f7bca550 3791 if (flow_instance != NULL)
Azure.IoT Build 0:6ae2f7bca550 3792 {
Azure.IoT Build 0:6ae2f7bca550 3793 flow_instance->composite_value = amqpvalue_create_composite_with_ulong_descriptor(19);
Azure.IoT Build 0:6ae2f7bca550 3794 if (flow_instance->composite_value == NULL)
Azure.IoT Build 0:6ae2f7bca550 3795 {
Azure.IoT Build 0:6ae2f7bca550 3796 amqpalloc_free(flow_instance);
Azure.IoT Build 0:6ae2f7bca550 3797 flow_instance = NULL;
Azure.IoT Build 0:6ae2f7bca550 3798 }
Azure.IoT Build 0:6ae2f7bca550 3799 else
Azure.IoT Build 0:6ae2f7bca550 3800 {
Azure.IoT Build 0:6ae2f7bca550 3801 AMQP_VALUE incoming_window_amqp_value;
Azure.IoT Build 0:6ae2f7bca550 3802 AMQP_VALUE next_outgoing_id_amqp_value;
Azure.IoT Build 0:6ae2f7bca550 3803 AMQP_VALUE outgoing_window_amqp_value;
Azure.IoT Build 0:6ae2f7bca550 3804 int result = 0;
Azure.IoT Build 0:6ae2f7bca550 3805
Azure.IoT Build 0:6ae2f7bca550 3806 incoming_window_amqp_value = amqpvalue_create_uint(incoming_window_value);
Azure.IoT Build 0:6ae2f7bca550 3807 if ((result == 0) && (amqpvalue_set_composite_item(flow_instance->composite_value, 1, incoming_window_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 next_outgoing_id_amqp_value = amqpvalue_create_transfer_number(next_outgoing_id_value);
Azure.IoT Build 0:6ae2f7bca550 3812 if ((result == 0) && (amqpvalue_set_composite_item(flow_instance->composite_value, 2, next_outgoing_id_amqp_value) != 0))
Azure.IoT Build 0:6ae2f7bca550 3813 {
Azure.IoT Build 0:6ae2f7bca550 3814 result = __LINE__;
Azure.IoT Build 0:6ae2f7bca550 3815 }
Azure.IoT Build 0:6ae2f7bca550 3816 outgoing_window_amqp_value = amqpvalue_create_uint(outgoing_window_value);
Azure.IoT Build 0:6ae2f7bca550 3817 if ((result == 0) && (amqpvalue_set_composite_item(flow_instance->composite_value, 3, outgoing_window_amqp_value) != 0))
Azure.IoT Build 0:6ae2f7bca550 3818 {
Azure.IoT Build 0:6ae2f7bca550 3819 result = __LINE__;
Azure.IoT Build 0:6ae2f7bca550 3820 }
Azure.IoT Build 0:6ae2f7bca550 3821
Azure.IoT Build 0:6ae2f7bca550 3822 amqpvalue_destroy(incoming_window_amqp_value);
Azure.IoT Build 0:6ae2f7bca550 3823 amqpvalue_destroy(next_outgoing_id_amqp_value);
Azure.IoT Build 0:6ae2f7bca550 3824 amqpvalue_destroy(outgoing_window_amqp_value);
Azure.IoT Build 0:6ae2f7bca550 3825 }
Azure.IoT Build 0:6ae2f7bca550 3826 }
Azure.IoT Build 0:6ae2f7bca550 3827
Azure.IoT Build 0:6ae2f7bca550 3828 return flow_instance;
Azure.IoT Build 0:6ae2f7bca550 3829 }
Azure.IoT Build 0:6ae2f7bca550 3830
Azure.IoT Build 0:6ae2f7bca550 3831 FLOW_HANDLE flow_clone(FLOW_HANDLE value)
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 = amqpvalue_clone(((FLOW_INSTANCE*)value)->composite_value);
Azure.IoT Build 0:6ae2f7bca550 3837 if (flow_instance->composite_value == NULL)
Azure.IoT Build 0:6ae2f7bca550 3838 {
Azure.IoT Build 0:6ae2f7bca550 3839 amqpalloc_free(flow_instance);
Azure.IoT Build 0:6ae2f7bca550 3840 flow_instance = NULL;
Azure.IoT Build 0:6ae2f7bca550 3841 }
Azure.IoT Build 0:6ae2f7bca550 3842 }
Azure.IoT Build 0:6ae2f7bca550 3843
Azure.IoT Build 0:6ae2f7bca550 3844 return flow_instance;
Azure.IoT Build 0:6ae2f7bca550 3845 }
Azure.IoT Build 0:6ae2f7bca550 3846
Azure.IoT Build 0:6ae2f7bca550 3847 void flow_destroy(FLOW_HANDLE flow)
Azure.IoT Build 0:6ae2f7bca550 3848 {
Azure.IoT Build 0:6ae2f7bca550 3849 if (flow != NULL)
Azure.IoT Build 0:6ae2f7bca550 3850 {
Azure.IoT Build 0:6ae2f7bca550 3851 FLOW_INSTANCE* flow_instance = (FLOW_INSTANCE*)flow;
Azure.IoT Build 0:6ae2f7bca550 3852 amqpvalue_destroy(flow_instance->composite_value);
Azure.IoT Build 0:6ae2f7bca550 3853 amqpalloc_free(flow_instance);
Azure.IoT Build 0:6ae2f7bca550 3854 }
Azure.IoT Build 0:6ae2f7bca550 3855 }
Azure.IoT Build 0:6ae2f7bca550 3856
Azure.IoT Build 0:6ae2f7bca550 3857 AMQP_VALUE amqpvalue_create_flow(FLOW_HANDLE flow)
Azure.IoT Build 0:6ae2f7bca550 3858 {
Azure.IoT Build 0:6ae2f7bca550 3859 AMQP_VALUE result;
Azure.IoT Build 0:6ae2f7bca550 3860
Azure.IoT Build 0:6ae2f7bca550 3861 if (flow == NULL)
Azure.IoT Build 0:6ae2f7bca550 3862 {
Azure.IoT Build 0:6ae2f7bca550 3863 result = NULL;
Azure.IoT Build 0:6ae2f7bca550 3864 }
Azure.IoT Build 0:6ae2f7bca550 3865 else
Azure.IoT Build 0:6ae2f7bca550 3866 {
Azure.IoT Build 0:6ae2f7bca550 3867 FLOW_INSTANCE* flow_instance = (FLOW_INSTANCE*)flow;
Azure.IoT Build 0:6ae2f7bca550 3868 result = amqpvalue_clone(flow_instance->composite_value);
Azure.IoT Build 0:6ae2f7bca550 3869 }
Azure.IoT Build 0:6ae2f7bca550 3870
Azure.IoT Build 0:6ae2f7bca550 3871 return result;
Azure.IoT Build 0:6ae2f7bca550 3872 }
Azure.IoT Build 0:6ae2f7bca550 3873
Azure.IoT Build 0:6ae2f7bca550 3874 bool is_flow_type_by_descriptor(AMQP_VALUE descriptor)
Azure.IoT Build 0:6ae2f7bca550 3875 {
Azure.IoT Build 0:6ae2f7bca550 3876 bool result;
Azure.IoT Build 0:6ae2f7bca550 3877
Azure.IoT Build 0:6ae2f7bca550 3878 uint64_t descriptor_ulong;
Azure.IoT Build 0:6ae2f7bca550 3879 if ((amqpvalue_get_ulong(descriptor, &descriptor_ulong) == 0) &&
Azure.IoT Build 0:6ae2f7bca550 3880 (descriptor_ulong == 19))
Azure.IoT Build 0:6ae2f7bca550 3881 {
Azure.IoT Build 0:6ae2f7bca550 3882 result = true;
Azure.IoT Build 0:6ae2f7bca550 3883 }
Azure.IoT Build 0:6ae2f7bca550 3884 else
Azure.IoT Build 0:6ae2f7bca550 3885 {
Azure.IoT Build 0:6ae2f7bca550 3886 result = false;
Azure.IoT Build 0:6ae2f7bca550 3887 }
Azure.IoT Build 0:6ae2f7bca550 3888
Azure.IoT Build 0:6ae2f7bca550 3889 return result;
Azure.IoT Build 0:6ae2f7bca550 3890 }
Azure.IoT Build 0:6ae2f7bca550 3891
Azure.IoT Build 0:6ae2f7bca550 3892
Azure.IoT Build 0:6ae2f7bca550 3893 int amqpvalue_get_flow(AMQP_VALUE value, FLOW_HANDLE* flow_handle)
Azure.IoT Build 0:6ae2f7bca550 3894 {
Azure.IoT Build 0:6ae2f7bca550 3895 int result;
Azure.IoT Build 0:6ae2f7bca550 3896 FLOW_INSTANCE* flow_instance = (FLOW_INSTANCE*)flow_create_internal();
Azure.IoT Build 0:6ae2f7bca550 3897 *flow_handle = flow_instance;
Azure.IoT Build 0:6ae2f7bca550 3898 if (*flow_handle == NULL)
Azure.IoT Build 0:6ae2f7bca550 3899 {
Azure.IoT Build 0:6ae2f7bca550 3900 result = __LINE__;
Azure.IoT Build 0:6ae2f7bca550 3901 }
Azure.IoT Build 0:6ae2f7bca550 3902 else
Azure.IoT Build 0:6ae2f7bca550 3903 {
Azure.IoT Build 0:6ae2f7bca550 3904 AMQP_VALUE list_value = amqpvalue_get_inplace_described_value(value);
Azure.IoT Build 0:6ae2f7bca550 3905 if (list_value == NULL)
Azure.IoT Build 0:6ae2f7bca550 3906 {
Azure.IoT Build 0:6ae2f7bca550 3907 flow_destroy(*flow_handle);
Azure.IoT Build 0:6ae2f7bca550 3908 result = __LINE__;
Azure.IoT Build 0:6ae2f7bca550 3909 }
Azure.IoT Build 0:6ae2f7bca550 3910 else
Azure.IoT Build 0:6ae2f7bca550 3911 {
Azure.IoT Build 0:6ae2f7bca550 3912 do
Azure.IoT Build 0:6ae2f7bca550 3913 {
Azure.IoT Build 0:6ae2f7bca550 3914 AMQP_VALUE item_value;
Azure.IoT Build 0:6ae2f7bca550 3915 /* next-incoming-id */
Azure.IoT Build 0:6ae2f7bca550 3916 item_value = amqpvalue_get_list_item(list_value, 0);
Azure.IoT Build 0:6ae2f7bca550 3917 if (item_value == NULL)
Azure.IoT Build 0:6ae2f7bca550 3918 {
Azure.IoT Build 0:6ae2f7bca550 3919 /* do nothing */
Azure.IoT Build 0:6ae2f7bca550 3920 }
Azure.IoT Build 0:6ae2f7bca550 3921 else
Azure.IoT Build 0:6ae2f7bca550 3922 {
Azure.IoT Build 0:6ae2f7bca550 3923 transfer_number next_incoming_id;
Azure.IoT Build 0:6ae2f7bca550 3924 if (amqpvalue_get_transfer_number(item_value, &next_incoming_id) != 0)
Azure.IoT Build 0:6ae2f7bca550 3925 {
Azure.IoT Build 0:6ae2f7bca550 3926 if (amqpvalue_get_type(item_value) != AMQP_TYPE_NULL)
Azure.IoT Build 0:6ae2f7bca550 3927 {
Azure.IoT Build 0:6ae2f7bca550 3928 flow_destroy(*flow_handle);
Azure.IoT Build 0:6ae2f7bca550 3929 result = __LINE__;
Azure.IoT Build 0:6ae2f7bca550 3930 break;
Azure.IoT Build 0:6ae2f7bca550 3931 }
Azure.IoT Build 0:6ae2f7bca550 3932 }
Azure.IoT Build 0:6ae2f7bca550 3933
Azure.IoT Build 0:6ae2f7bca550 3934 amqpvalue_destroy(item_value);
Azure.IoT Build 0:6ae2f7bca550 3935 }
Azure.IoT Build 0:6ae2f7bca550 3936 /* incoming-window */
Azure.IoT Build 0:6ae2f7bca550 3937 item_value = amqpvalue_get_list_item(list_value, 1);
Azure.IoT Build 0:6ae2f7bca550 3938 if (item_value == NULL)
Azure.IoT Build 0:6ae2f7bca550 3939 {
Azure.IoT Build 0:6ae2f7bca550 3940 {
Azure.IoT Build 0:6ae2f7bca550 3941 flow_destroy(*flow_handle);
Azure.IoT Build 0:6ae2f7bca550 3942 result = __LINE__;
Azure.IoT Build 0:6ae2f7bca550 3943 break;
Azure.IoT Build 0:6ae2f7bca550 3944 }
Azure.IoT Build 0:6ae2f7bca550 3945 }
Azure.IoT Build 0:6ae2f7bca550 3946 else
Azure.IoT Build 0:6ae2f7bca550 3947 {
Azure.IoT Build 0:6ae2f7bca550 3948 uint32_t incoming_window;
Azure.IoT Build 0:6ae2f7bca550 3949 if (amqpvalue_get_uint(item_value, &incoming_window) != 0)
Azure.IoT Build 0:6ae2f7bca550 3950 {
Azure.IoT Build 0:6ae2f7bca550 3951 flow_destroy(*flow_handle);
Azure.IoT Build 0:6ae2f7bca550 3952 result = __LINE__;
Azure.IoT Build 0:6ae2f7bca550 3953 break;
Azure.IoT Build 0:6ae2f7bca550 3954 }
Azure.IoT Build 0:6ae2f7bca550 3955
Azure.IoT Build 0:6ae2f7bca550 3956 amqpvalue_destroy(item_value);
Azure.IoT Build 0:6ae2f7bca550 3957 }
Azure.IoT Build 0:6ae2f7bca550 3958 /* next-outgoing-id */
Azure.IoT Build 0:6ae2f7bca550 3959 item_value = amqpvalue_get_list_item(list_value, 2);
Azure.IoT Build 0:6ae2f7bca550 3960 if (item_value == NULL)
Azure.IoT Build 0:6ae2f7bca550 3961 {
Azure.IoT Build 0:6ae2f7bca550 3962 {
Azure.IoT Build 0:6ae2f7bca550 3963 flow_destroy(*flow_handle);
Azure.IoT Build 0:6ae2f7bca550 3964 result = __LINE__;
Azure.IoT Build 0:6ae2f7bca550 3965 break;
Azure.IoT Build 0:6ae2f7bca550 3966 }
Azure.IoT Build 0:6ae2f7bca550 3967 }
Azure.IoT Build 0:6ae2f7bca550 3968 else
Azure.IoT Build 0:6ae2f7bca550 3969 {
Azure.IoT Build 0:6ae2f7bca550 3970 transfer_number next_outgoing_id;
Azure.IoT Build 0:6ae2f7bca550 3971 if (amqpvalue_get_transfer_number(item_value, &next_outgoing_id) != 0)
Azure.IoT Build 0:6ae2f7bca550 3972 {
Azure.IoT Build 0:6ae2f7bca550 3973 flow_destroy(*flow_handle);
Azure.IoT Build 0:6ae2f7bca550 3974 result = __LINE__;
Azure.IoT Build 0:6ae2f7bca550 3975 break;
Azure.IoT Build 0:6ae2f7bca550 3976 }
Azure.IoT Build 0:6ae2f7bca550 3977
Azure.IoT Build 0:6ae2f7bca550 3978 amqpvalue_destroy(item_value);
Azure.IoT Build 0:6ae2f7bca550 3979 }
Azure.IoT Build 0:6ae2f7bca550 3980 /* outgoing-window */
Azure.IoT Build 0:6ae2f7bca550 3981 item_value = amqpvalue_get_list_item(list_value, 3);
Azure.IoT Build 0:6ae2f7bca550 3982 if (item_value == NULL)
Azure.IoT Build 0:6ae2f7bca550 3983 {
Azure.IoT Build 0:6ae2f7bca550 3984 {
Azure.IoT Build 0:6ae2f7bca550 3985 flow_destroy(*flow_handle);
Azure.IoT Build 0:6ae2f7bca550 3986 result = __LINE__;
Azure.IoT Build 0:6ae2f7bca550 3987 break;
Azure.IoT Build 0:6ae2f7bca550 3988 }
Azure.IoT Build 0:6ae2f7bca550 3989 }
Azure.IoT Build 0:6ae2f7bca550 3990 else
Azure.IoT Build 0:6ae2f7bca550 3991 {
Azure.IoT Build 0:6ae2f7bca550 3992 uint32_t outgoing_window;
Azure.IoT Build 0:6ae2f7bca550 3993 if (amqpvalue_get_uint(item_value, &outgoing_window) != 0)
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 amqpvalue_destroy(item_value);
Azure.IoT Build 0:6ae2f7bca550 4001 }
Azure.IoT Build 0:6ae2f7bca550 4002 /* handle */
Azure.IoT Build 0:6ae2f7bca550 4003 item_value = amqpvalue_get_list_item(list_value, 4);
Azure.IoT Build 0:6ae2f7bca550 4004 if (item_value == NULL)
Azure.IoT Build 0:6ae2f7bca550 4005 {
Azure.IoT Build 0:6ae2f7bca550 4006 /* do nothing */
Azure.IoT Build 0:6ae2f7bca550 4007 }
Azure.IoT Build 0:6ae2f7bca550 4008 else
Azure.IoT Build 0:6ae2f7bca550 4009 {
Azure.IoT Build 0:6ae2f7bca550 4010 handle handle;
Azure.IoT Build 0:6ae2f7bca550 4011 if (amqpvalue_get_handle(item_value, &handle) != 0)
Azure.IoT Build 0:6ae2f7bca550 4012 {
Azure.IoT Build 0:6ae2f7bca550 4013 if (amqpvalue_get_type(item_value) != AMQP_TYPE_NULL)
Azure.IoT Build 0:6ae2f7bca550 4014 {
Azure.IoT Build 0:6ae2f7bca550 4015 flow_destroy(*flow_handle);
Azure.IoT Build 0:6ae2f7bca550 4016 result = __LINE__;
Azure.IoT Build 0:6ae2f7bca550 4017 break;
Azure.IoT Build 0:6ae2f7bca550 4018 }
Azure.IoT Build 0:6ae2f7bca550 4019 }
Azure.IoT Build 0:6ae2f7bca550 4020
Azure.IoT Build 0:6ae2f7bca550 4021 amqpvalue_destroy(item_value);
Azure.IoT Build 0:6ae2f7bca550 4022 }
Azure.IoT Build 0:6ae2f7bca550 4023 /* delivery-count */
Azure.IoT Build 0:6ae2f7bca550 4024 item_value = amqpvalue_get_list_item(list_value, 5);
Azure.IoT Build 0:6ae2f7bca550 4025 if (item_value == NULL)
Azure.IoT Build 0:6ae2f7bca550 4026 {
Azure.IoT Build 0:6ae2f7bca550 4027 /* do nothing */
Azure.IoT Build 0:6ae2f7bca550 4028 }
Azure.IoT Build 0:6ae2f7bca550 4029 else
Azure.IoT Build 0:6ae2f7bca550 4030 {
Azure.IoT Build 0:6ae2f7bca550 4031 sequence_no delivery_count;
Azure.IoT Build 0:6ae2f7bca550 4032 if (amqpvalue_get_sequence_no(item_value, &delivery_count) != 0)
Azure.IoT Build 0:6ae2f7bca550 4033 {
Azure.IoT Build 0:6ae2f7bca550 4034 if (amqpvalue_get_type(item_value) != AMQP_TYPE_NULL)
Azure.IoT Build 0:6ae2f7bca550 4035 {
Azure.IoT Build 0:6ae2f7bca550 4036 flow_destroy(*flow_handle);
Azure.IoT Build 0:6ae2f7bca550 4037 result = __LINE__;
Azure.IoT Build 0:6ae2f7bca550 4038 break;
Azure.IoT Build 0:6ae2f7bca550 4039 }
Azure.IoT Build 0:6ae2f7bca550 4040 }
Azure.IoT Build 0:6ae2f7bca550 4041
Azure.IoT Build 0:6ae2f7bca550 4042 amqpvalue_destroy(item_value);
Azure.IoT Build 0:6ae2f7bca550 4043 }
Azure.IoT Build 0:6ae2f7bca550 4044 /* link-credit */
Azure.IoT Build 0:6ae2f7bca550 4045 item_value = amqpvalue_get_list_item(list_value, 6);
Azure.IoT Build 0:6ae2f7bca550 4046 if (item_value == NULL)
Azure.IoT Build 0:6ae2f7bca550 4047 {
Azure.IoT Build 0:6ae2f7bca550 4048 /* do nothing */
Azure.IoT Build 0:6ae2f7bca550 4049 }
Azure.IoT Build 0:6ae2f7bca550 4050 else
Azure.IoT Build 0:6ae2f7bca550 4051 {
Azure.IoT Build 0:6ae2f7bca550 4052 uint32_t link_credit;
Azure.IoT Build 0:6ae2f7bca550 4053 if (amqpvalue_get_uint(item_value, &link_credit) != 0)
Azure.IoT Build 0:6ae2f7bca550 4054 {
Azure.IoT Build 0:6ae2f7bca550 4055 if (amqpvalue_get_type(item_value) != AMQP_TYPE_NULL)
Azure.IoT Build 0:6ae2f7bca550 4056 {
Azure.IoT Build 0:6ae2f7bca550 4057 flow_destroy(*flow_handle);
Azure.IoT Build 0:6ae2f7bca550 4058 result = __LINE__;
Azure.IoT Build 0:6ae2f7bca550 4059 break;
Azure.IoT Build 0:6ae2f7bca550 4060 }
Azure.IoT Build 0:6ae2f7bca550 4061 }
Azure.IoT Build 0:6ae2f7bca550 4062
Azure.IoT Build 0:6ae2f7bca550 4063 amqpvalue_destroy(item_value);
Azure.IoT Build 0:6ae2f7bca550 4064 }
Azure.IoT Build 0:6ae2f7bca550 4065 /* available */
Azure.IoT Build 0:6ae2f7bca550 4066 item_value = amqpvalue_get_list_item(list_value, 7);
Azure.IoT Build 0:6ae2f7bca550 4067 if (item_value == NULL)
Azure.IoT Build 0:6ae2f7bca550 4068 {
Azure.IoT Build 0:6ae2f7bca550 4069 /* do nothing */
Azure.IoT Build 0:6ae2f7bca550 4070 }
Azure.IoT Build 0:6ae2f7bca550 4071 else
Azure.IoT Build 0:6ae2f7bca550 4072 {
Azure.IoT Build 0:6ae2f7bca550 4073 uint32_t available;
Azure.IoT Build 0:6ae2f7bca550 4074 if (amqpvalue_get_uint(item_value, &available) != 0)
Azure.IoT Build 0:6ae2f7bca550 4075 {
Azure.IoT Build 0:6ae2f7bca550 4076 if (amqpvalue_get_type(item_value) != AMQP_TYPE_NULL)
Azure.IoT Build 0:6ae2f7bca550 4077 {
Azure.IoT Build 0:6ae2f7bca550 4078 flow_destroy(*flow_handle);
Azure.IoT Build 0:6ae2f7bca550 4079 result = __LINE__;
Azure.IoT Build 0:6ae2f7bca550 4080 break;
Azure.IoT Build 0:6ae2f7bca550 4081 }
Azure.IoT Build 0:6ae2f7bca550 4082 }
Azure.IoT Build 0:6ae2f7bca550 4083
Azure.IoT Build 0:6ae2f7bca550 4084 amqpvalue_destroy(item_value);
Azure.IoT Build 0:6ae2f7bca550 4085 }
Azure.IoT Build 0:6ae2f7bca550 4086 /* drain */
Azure.IoT Build 0:6ae2f7bca550 4087 item_value = amqpvalue_get_list_item(list_value, 8);
Azure.IoT Build 0:6ae2f7bca550 4088 if (item_value == NULL)
Azure.IoT Build 0:6ae2f7bca550 4089 {
Azure.IoT Build 0:6ae2f7bca550 4090 /* do nothing */
Azure.IoT Build 0:6ae2f7bca550 4091 }
Azure.IoT Build 0:6ae2f7bca550 4092 else
Azure.IoT Build 0:6ae2f7bca550 4093 {
Azure.IoT Build 0:6ae2f7bca550 4094 bool drain;
Azure.IoT Build 0:6ae2f7bca550 4095 if (amqpvalue_get_boolean(item_value, &drain) != 0)
Azure.IoT Build 0:6ae2f7bca550 4096 {
Azure.IoT Build 0:6ae2f7bca550 4097 if (amqpvalue_get_type(item_value) != AMQP_TYPE_NULL)
Azure.IoT Build 0:6ae2f7bca550 4098 {
Azure.IoT Build 0:6ae2f7bca550 4099 flow_destroy(*flow_handle);
Azure.IoT Build 0:6ae2f7bca550 4100 result = __LINE__;
Azure.IoT Build 0:6ae2f7bca550 4101 break;
Azure.IoT Build 0:6ae2f7bca550 4102 }
Azure.IoT Build 0:6ae2f7bca550 4103 }
Azure.IoT Build 0:6ae2f7bca550 4104
Azure.IoT Build 0:6ae2f7bca550 4105 amqpvalue_destroy(item_value);
Azure.IoT Build 0:6ae2f7bca550 4106 }
Azure.IoT Build 0:6ae2f7bca550 4107 /* echo */
Azure.IoT Build 0:6ae2f7bca550 4108 item_value = amqpvalue_get_list_item(list_value, 9);
Azure.IoT Build 0:6ae2f7bca550 4109 if (item_value == NULL)
Azure.IoT Build 0:6ae2f7bca550 4110 {
Azure.IoT Build 0:6ae2f7bca550 4111 /* do nothing */
Azure.IoT Build 0:6ae2f7bca550 4112 }
Azure.IoT Build 0:6ae2f7bca550 4113 else
Azure.IoT Build 0:6ae2f7bca550 4114 {
Azure.IoT Build 0:6ae2f7bca550 4115 bool echo;
Azure.IoT Build 0:6ae2f7bca550 4116 if (amqpvalue_get_boolean(item_value, &echo) != 0)
Azure.IoT Build 0:6ae2f7bca550 4117 {
Azure.IoT Build 0:6ae2f7bca550 4118 if (amqpvalue_get_type(item_value) != AMQP_TYPE_NULL)
Azure.IoT Build 0:6ae2f7bca550 4119 {
Azure.IoT Build 0:6ae2f7bca550 4120 flow_destroy(*flow_handle);
Azure.IoT Build 0:6ae2f7bca550 4121 result = __LINE__;
Azure.IoT Build 0:6ae2f7bca550 4122 break;
Azure.IoT Build 0:6ae2f7bca550 4123 }
Azure.IoT Build 0:6ae2f7bca550 4124 }
Azure.IoT Build 0:6ae2f7bca550 4125
Azure.IoT Build 0:6ae2f7bca550 4126 amqpvalue_destroy(item_value);
Azure.IoT Build 0:6ae2f7bca550 4127 }
Azure.IoT Build 0:6ae2f7bca550 4128 /* properties */
Azure.IoT Build 0:6ae2f7bca550 4129 item_value = amqpvalue_get_list_item(list_value, 10);
Azure.IoT Build 0:6ae2f7bca550 4130 if (item_value == NULL)
Azure.IoT Build 0:6ae2f7bca550 4131 {
Azure.IoT Build 0:6ae2f7bca550 4132 /* do nothing */
Azure.IoT Build 0:6ae2f7bca550 4133 }
Azure.IoT Build 0:6ae2f7bca550 4134 else
Azure.IoT Build 0:6ae2f7bca550 4135 {
Azure.IoT Build 0:6ae2f7bca550 4136 fields properties;
Azure.IoT Build 0:6ae2f7bca550 4137 if (amqpvalue_get_fields(item_value, &properties) != 0)
Azure.IoT Build 0:6ae2f7bca550 4138 {
Azure.IoT Build 0:6ae2f7bca550 4139 if (amqpvalue_get_type(item_value) != AMQP_TYPE_NULL)
Azure.IoT Build 0:6ae2f7bca550 4140 {
Azure.IoT Build 0:6ae2f7bca550 4141 flow_destroy(*flow_handle);
Azure.IoT Build 0:6ae2f7bca550 4142 result = __LINE__;
Azure.IoT Build 0:6ae2f7bca550 4143 break;
Azure.IoT Build 0:6ae2f7bca550 4144 }
Azure.IoT Build 0:6ae2f7bca550 4145 }
Azure.IoT Build 0:6ae2f7bca550 4146
Azure.IoT Build 0:6ae2f7bca550 4147 amqpvalue_destroy(item_value);
Azure.IoT Build 0:6ae2f7bca550 4148 }
Azure.IoT Build 0:6ae2f7bca550 4149
Azure.IoT Build 0:6ae2f7bca550 4150 flow_instance->composite_value = amqpvalue_clone(value);
Azure.IoT Build 0:6ae2f7bca550 4151
Azure.IoT Build 0:6ae2f7bca550 4152 result = 0;
Azure.IoT Build 0:6ae2f7bca550 4153 } while (0);
Azure.IoT Build 0:6ae2f7bca550 4154 }
Azure.IoT Build 0:6ae2f7bca550 4155 }
Azure.IoT Build 0:6ae2f7bca550 4156
Azure.IoT Build 0:6ae2f7bca550 4157 return result;
Azure.IoT Build 0:6ae2f7bca550 4158 }
Azure.IoT Build 0:6ae2f7bca550 4159
Azure.IoT Build 0:6ae2f7bca550 4160 int flow_get_next_incoming_id(FLOW_HANDLE flow, transfer_number* next_incoming_id_value)
Azure.IoT Build 0:6ae2f7bca550 4161 {
Azure.IoT Build 0:6ae2f7bca550 4162 int result;
Azure.IoT Build 0:6ae2f7bca550 4163
Azure.IoT Build 0:6ae2f7bca550 4164 if (flow == NULL)
Azure.IoT Build 0:6ae2f7bca550 4165 {
Azure.IoT Build 0:6ae2f7bca550 4166 result = __LINE__;
Azure.IoT Build 0:6ae2f7bca550 4167 }
Azure.IoT Build 0:6ae2f7bca550 4168 else
Azure.IoT Build 0:6ae2f7bca550 4169 {
Azure.IoT Build 0:6ae2f7bca550 4170 FLOW_INSTANCE* flow_instance = (FLOW_INSTANCE*)flow;
Azure.IoT Build 0:6ae2f7bca550 4171 AMQP_VALUE item_value = amqpvalue_get_composite_item_in_place(flow_instance->composite_value, 0);
Azure.IoT Build 0:6ae2f7bca550 4172 if (item_value == NULL)
Azure.IoT Build 0:6ae2f7bca550 4173 {
Azure.IoT Build 0:6ae2f7bca550 4174 result = __LINE__;
Azure.IoT Build 0:6ae2f7bca550 4175 }
Azure.IoT Build 0:6ae2f7bca550 4176 else
Azure.IoT Build 0:6ae2f7bca550 4177 {
Azure.IoT Build 0:6ae2f7bca550 4178 if (amqpvalue_get_transfer_number(item_value, next_incoming_id_value) != 0)
Azure.IoT Build 0:6ae2f7bca550 4179 {
Azure.IoT Build 0:6ae2f7bca550 4180 result = __LINE__;
Azure.IoT Build 0:6ae2f7bca550 4181 }
Azure.IoT Build 0:6ae2f7bca550 4182 else
Azure.IoT Build 0:6ae2f7bca550 4183 {
Azure.IoT Build 0:6ae2f7bca550 4184 result = 0;
Azure.IoT Build 0:6ae2f7bca550 4185 }
Azure.IoT Build 0:6ae2f7bca550 4186 }
Azure.IoT Build 0:6ae2f7bca550 4187 }
Azure.IoT Build 0:6ae2f7bca550 4188
Azure.IoT Build 0:6ae2f7bca550 4189 return result;
Azure.IoT Build 0:6ae2f7bca550 4190 }
Azure.IoT Build 0:6ae2f7bca550 4191
Azure.IoT Build 0:6ae2f7bca550 4192 int flow_set_next_incoming_id(FLOW_HANDLE flow, transfer_number next_incoming_id_value)
Azure.IoT Build 0:6ae2f7bca550 4193 {
Azure.IoT Build 0:6ae2f7bca550 4194 int result;
Azure.IoT Build 0:6ae2f7bca550 4195
Azure.IoT Build 0:6ae2f7bca550 4196 if (flow == NULL)
Azure.IoT Build 0:6ae2f7bca550 4197 {
Azure.IoT Build 0:6ae2f7bca550 4198 result = __LINE__;
Azure.IoT Build 0:6ae2f7bca550 4199 }
Azure.IoT Build 0:6ae2f7bca550 4200 else
Azure.IoT Build 0:6ae2f7bca550 4201 {
Azure.IoT Build 0:6ae2f7bca550 4202 FLOW_INSTANCE* flow_instance = (FLOW_INSTANCE*)flow;
Azure.IoT Build 0:6ae2f7bca550 4203 AMQP_VALUE next_incoming_id_amqp_value = amqpvalue_create_transfer_number(next_incoming_id_value);
Azure.IoT Build 0:6ae2f7bca550 4204 if (next_incoming_id_amqp_value == NULL)
Azure.IoT Build 0:6ae2f7bca550 4205 {
Azure.IoT Build 0:6ae2f7bca550 4206 result = __LINE__;
Azure.IoT Build 0:6ae2f7bca550 4207 }
Azure.IoT Build 0:6ae2f7bca550 4208 else
Azure.IoT Build 0:6ae2f7bca550 4209 {
Azure.IoT Build 0:6ae2f7bca550 4210 if (amqpvalue_set_composite_item(flow_instance->composite_value, 0, next_incoming_id_amqp_value) != 0)
Azure.IoT Build 0:6ae2f7bca550 4211 {
Azure.IoT Build 0:6ae2f7bca550 4212 result = __LINE__;
Azure.IoT Build 0:6ae2f7bca550 4213 }
Azure.IoT Build 0:6ae2f7bca550 4214 else
Azure.IoT Build 0:6ae2f7bca550 4215 {
Azure.IoT Build 0:6ae2f7bca550 4216 result = 0;
Azure.IoT Build 0:6ae2f7bca550 4217 }
Azure.IoT Build 0:6ae2f7bca550 4218
Azure.IoT Build 0:6ae2f7bca550 4219 amqpvalue_destroy(next_incoming_id_amqp_value);
Azure.IoT Build 0:6ae2f7bca550 4220 }
Azure.IoT Build 0:6ae2f7bca550 4221 }
Azure.IoT Build 0:6ae2f7bca550 4222
Azure.IoT Build 0:6ae2f7bca550 4223 return result;
Azure.IoT Build 0:6ae2f7bca550 4224 }
Azure.IoT Build 0:6ae2f7bca550 4225
Azure.IoT Build 0:6ae2f7bca550 4226 int flow_get_incoming_window(FLOW_HANDLE flow, uint32_t* incoming_window_value)
Azure.IoT Build 0:6ae2f7bca550 4227 {
Azure.IoT Build 0:6ae2f7bca550 4228 int result;
Azure.IoT Build 0:6ae2f7bca550 4229
Azure.IoT Build 0:6ae2f7bca550 4230 if (flow == NULL)
Azure.IoT Build 0:6ae2f7bca550 4231 {
Azure.IoT Build 0:6ae2f7bca550 4232 result = __LINE__;
Azure.IoT Build 0:6ae2f7bca550 4233 }
Azure.IoT Build 0:6ae2f7bca550 4234 else
Azure.IoT Build 0:6ae2f7bca550 4235 {
Azure.IoT Build 0:6ae2f7bca550 4236 FLOW_INSTANCE* flow_instance = (FLOW_INSTANCE*)flow;
Azure.IoT Build 0:6ae2f7bca550 4237 AMQP_VALUE item_value = amqpvalue_get_composite_item_in_place(flow_instance->composite_value, 1);
Azure.IoT Build 0:6ae2f7bca550 4238 if (item_value == NULL)
Azure.IoT Build 0:6ae2f7bca550 4239 {
Azure.IoT Build 0:6ae2f7bca550 4240 result = __LINE__;
Azure.IoT Build 0:6ae2f7bca550 4241 }
Azure.IoT Build 0:6ae2f7bca550 4242 else
Azure.IoT Build 0:6ae2f7bca550 4243 {
Azure.IoT Build 0:6ae2f7bca550 4244 if (amqpvalue_get_uint(item_value, incoming_window_value) != 0)
Azure.IoT Build 0:6ae2f7bca550 4245 {
Azure.IoT Build 0:6ae2f7bca550 4246 result = __LINE__;
Azure.IoT Build 0:6ae2f7bca550 4247 }
Azure.IoT Build 0:6ae2f7bca550 4248 else
Azure.IoT Build 0:6ae2f7bca550 4249 {
Azure.IoT Build 0:6ae2f7bca550 4250 result = 0;
Azure.IoT Build 0:6ae2f7bca550 4251 }
Azure.IoT Build 0:6ae2f7bca550 4252 }
Azure.IoT Build 0:6ae2f7bca550 4253 }
Azure.IoT Build 0:6ae2f7bca550 4254
Azure.IoT Build 0:6ae2f7bca550 4255 return result;
Azure.IoT Build 0:6ae2f7bca550 4256 }
Azure.IoT Build 0:6ae2f7bca550 4257
Azure.IoT Build 0:6ae2f7bca550 4258 int flow_set_incoming_window(FLOW_HANDLE flow, uint32_t incoming_window_value)
Azure.IoT Build 0:6ae2f7bca550 4259 {
Azure.IoT Build 0:6ae2f7bca550 4260 int result;
Azure.IoT Build 0:6ae2f7bca550 4261
Azure.IoT Build 0:6ae2f7bca550 4262 if (flow == NULL)
Azure.IoT Build 0:6ae2f7bca550 4263 {
Azure.IoT Build 0:6ae2f7bca550 4264 result = __LINE__;
Azure.IoT Build 0:6ae2f7bca550 4265 }
Azure.IoT Build 0:6ae2f7bca550 4266 else
Azure.IoT Build 0:6ae2f7bca550 4267 {
Azure.IoT Build 0:6ae2f7bca550 4268 FLOW_INSTANCE* flow_instance = (FLOW_INSTANCE*)flow;
Azure.IoT Build 0:6ae2f7bca550 4269 AMQP_VALUE incoming_window_amqp_value = amqpvalue_create_uint(incoming_window_value);
Azure.IoT Build 0:6ae2f7bca550 4270 if (incoming_window_amqp_value == NULL)
Azure.IoT Build 0:6ae2f7bca550 4271 {
Azure.IoT Build 0:6ae2f7bca550 4272 result = __LINE__;
Azure.IoT Build 0:6ae2f7bca550 4273 }
Azure.IoT Build 0:6ae2f7bca550 4274 else
Azure.IoT Build 0:6ae2f7bca550 4275 {
Azure.IoT Build 0:6ae2f7bca550 4276 if (amqpvalue_set_composite_item(flow_instance->composite_value, 1, incoming_window_amqp_value) != 0)
Azure.IoT Build 0:6ae2f7bca550 4277 {
Azure.IoT Build 0:6ae2f7bca550 4278 result = __LINE__;
Azure.IoT Build 0:6ae2f7bca550 4279 }
Azure.IoT Build 0:6ae2f7bca550 4280 else
Azure.IoT Build 0:6ae2f7bca550 4281 {
Azure.IoT Build 0:6ae2f7bca550 4282 result = 0;
Azure.IoT Build 0:6ae2f7bca550 4283 }
Azure.IoT Build 0:6ae2f7bca550 4284
Azure.IoT Build 0:6ae2f7bca550 4285 amqpvalue_destroy(incoming_window_amqp_value);
Azure.IoT Build 0:6ae2f7bca550 4286 }
Azure.IoT Build 0:6ae2f7bca550 4287 }
Azure.IoT Build 0:6ae2f7bca550 4288
Azure.IoT Build 0:6ae2f7bca550 4289 return result;
Azure.IoT Build 0:6ae2f7bca550 4290 }
Azure.IoT Build 0:6ae2f7bca550 4291
Azure.IoT Build 0:6ae2f7bca550 4292 int flow_get_next_outgoing_id(FLOW_HANDLE flow, transfer_number* next_outgoing_id_value)
Azure.IoT Build 0:6ae2f7bca550 4293 {
Azure.IoT Build 0:6ae2f7bca550 4294 int result;
Azure.IoT Build 0:6ae2f7bca550 4295
Azure.IoT Build 0:6ae2f7bca550 4296 if (flow == NULL)
Azure.IoT Build 0:6ae2f7bca550 4297 {
Azure.IoT Build 0:6ae2f7bca550 4298 result = __LINE__;
Azure.IoT Build 0:6ae2f7bca550 4299 }
Azure.IoT Build 0:6ae2f7bca550 4300 else
Azure.IoT Build 0:6ae2f7bca550 4301 {
Azure.IoT Build 0:6ae2f7bca550 4302 FLOW_INSTANCE* flow_instance = (FLOW_INSTANCE*)flow;
Azure.IoT Build 0:6ae2f7bca550 4303 AMQP_VALUE item_value = amqpvalue_get_composite_item_in_place(flow_instance->composite_value, 2);
Azure.IoT Build 0:6ae2f7bca550 4304 if (item_value == NULL)
Azure.IoT Build 0:6ae2f7bca550 4305 {
Azure.IoT Build 0:6ae2f7bca550 4306 result = __LINE__;
Azure.IoT Build 0:6ae2f7bca550 4307 }
Azure.IoT Build 0:6ae2f7bca550 4308 else
Azure.IoT Build 0:6ae2f7bca550 4309 {
Azure.IoT Build 0:6ae2f7bca550 4310 if (amqpvalue_get_transfer_number(item_value, next_outgoing_id_value) != 0)
Azure.IoT Build 0:6ae2f7bca550 4311 {
Azure.IoT Build 0:6ae2f7bca550 4312 result = __LINE__;
Azure.IoT Build 0:6ae2f7bca550 4313 }
Azure.IoT Build 0:6ae2f7bca550 4314 else
Azure.IoT Build 0:6ae2f7bca550 4315 {
Azure.IoT Build 0:6ae2f7bca550 4316 result = 0;
Azure.IoT Build 0:6ae2f7bca550 4317 }
Azure.IoT Build 0:6ae2f7bca550 4318 }
Azure.IoT Build 0:6ae2f7bca550 4319 }
Azure.IoT Build 0:6ae2f7bca550 4320
Azure.IoT Build 0:6ae2f7bca550 4321 return result;
Azure.IoT Build 0:6ae2f7bca550 4322 }
Azure.IoT Build 0:6ae2f7bca550 4323
Azure.IoT Build 0:6ae2f7bca550 4324 int flow_set_next_outgoing_id(FLOW_HANDLE flow, transfer_number next_outgoing_id_value)
Azure.IoT Build 0:6ae2f7bca550 4325 {
Azure.IoT Build 0:6ae2f7bca550 4326 int result;
Azure.IoT Build 0:6ae2f7bca550 4327
Azure.IoT Build 0:6ae2f7bca550 4328 if (flow == NULL)
Azure.IoT Build 0:6ae2f7bca550 4329 {
Azure.IoT Build 0:6ae2f7bca550 4330 result = __LINE__;
Azure.IoT Build 0:6ae2f7bca550 4331 }
Azure.IoT Build 0:6ae2f7bca550 4332 else
Azure.IoT Build 0:6ae2f7bca550 4333 {
Azure.IoT Build 0:6ae2f7bca550 4334 FLOW_INSTANCE* flow_instance = (FLOW_INSTANCE*)flow;
Azure.IoT Build 0:6ae2f7bca550 4335 AMQP_VALUE next_outgoing_id_amqp_value = amqpvalue_create_transfer_number(next_outgoing_id_value);
Azure.IoT Build 0:6ae2f7bca550 4336 if (next_outgoing_id_amqp_value == NULL)
Azure.IoT Build 0:6ae2f7bca550 4337 {
Azure.IoT Build 0:6ae2f7bca550 4338 result = __LINE__;
Azure.IoT Build 0:6ae2f7bca550 4339 }
Azure.IoT Build 0:6ae2f7bca550 4340 else
Azure.IoT Build 0:6ae2f7bca550 4341 {
Azure.IoT Build 0:6ae2f7bca550 4342 if (amqpvalue_set_composite_item(flow_instance->composite_value, 2, next_outgoing_id_amqp_value) != 0)
Azure.IoT Build 0:6ae2f7bca550 4343 {
Azure.IoT Build 0:6ae2f7bca550 4344 result = __LINE__;
Azure.IoT Build 0:6ae2f7bca550 4345 }
Azure.IoT Build 0:6ae2f7bca550 4346 else
Azure.IoT Build 0:6ae2f7bca550 4347 {
Azure.IoT Build 0:6ae2f7bca550 4348 result = 0;
Azure.IoT Build 0:6ae2f7bca550 4349 }
Azure.IoT Build 0:6ae2f7bca550 4350
Azure.IoT Build 0:6ae2f7bca550 4351 amqpvalue_destroy(next_outgoing_id_amqp_value);
Azure.IoT Build 0:6ae2f7bca550 4352 }
Azure.IoT Build 0:6ae2f7bca550 4353 }
Azure.IoT Build 0:6ae2f7bca550 4354
Azure.IoT Build 0:6ae2f7bca550 4355 return result;
Azure.IoT Build 0:6ae2f7bca550 4356 }
Azure.IoT Build 0:6ae2f7bca550 4357
Azure.IoT Build 0:6ae2f7bca550 4358 int flow_get_outgoing_window(FLOW_HANDLE flow, uint32_t* outgoing_window_value)
Azure.IoT Build 0:6ae2f7bca550 4359 {
Azure.IoT Build 0:6ae2f7bca550 4360 int result;
Azure.IoT Build 0:6ae2f7bca550 4361
Azure.IoT Build 0:6ae2f7bca550 4362 if (flow == NULL)
Azure.IoT Build 0:6ae2f7bca550 4363 {
Azure.IoT Build 0:6ae2f7bca550 4364 result = __LINE__;
Azure.IoT Build 0:6ae2f7bca550 4365 }
Azure.IoT Build 0:6ae2f7bca550 4366 else
Azure.IoT Build 0:6ae2f7bca550 4367 {
Azure.IoT Build 0:6ae2f7bca550 4368 FLOW_INSTANCE* flow_instance = (FLOW_INSTANCE*)flow;
Azure.IoT Build 0:6ae2f7bca550 4369 AMQP_VALUE item_value = amqpvalue_get_composite_item_in_place(flow_instance->composite_value, 3);
Azure.IoT Build 0:6ae2f7bca550 4370 if (item_value == NULL)
Azure.IoT Build 0:6ae2f7bca550 4371 {
Azure.IoT Build 0:6ae2f7bca550 4372 result = __LINE__;
Azure.IoT Build 0:6ae2f7bca550 4373 }
Azure.IoT Build 0:6ae2f7bca550 4374 else
Azure.IoT Build 0:6ae2f7bca550 4375 {
Azure.IoT Build 0:6ae2f7bca550 4376 if (amqpvalue_get_uint(item_value, outgoing_window_value) != 0)
Azure.IoT Build 0:6ae2f7bca550 4377 {
Azure.IoT Build 0:6ae2f7bca550 4378 result = __LINE__;
Azure.IoT Build 0:6ae2f7bca550 4379 }
Azure.IoT Build 0:6ae2f7bca550 4380 else
Azure.IoT Build 0:6ae2f7bca550 4381 {
Azure.IoT Build 0:6ae2f7bca550 4382 result = 0;
Azure.IoT Build 0:6ae2f7bca550 4383 }
Azure.IoT Build 0:6ae2f7bca550 4384 }
Azure.IoT Build 0:6ae2f7bca550 4385 }
Azure.IoT Build 0:6ae2f7bca550 4386
Azure.IoT Build 0:6ae2f7bca550 4387 return result;
Azure.IoT Build 0:6ae2f7bca550 4388 }
Azure.IoT Build 0:6ae2f7bca550 4389
Azure.IoT Build 0:6ae2f7bca550 4390 int flow_set_outgoing_window(FLOW_HANDLE flow, uint32_t outgoing_window_value)
Azure.IoT Build 0:6ae2f7bca550 4391 {
Azure.IoT Build 0:6ae2f7bca550 4392 int result;
Azure.IoT Build 0:6ae2f7bca550 4393
Azure.IoT Build 0:6ae2f7bca550 4394 if (flow == NULL)
Azure.IoT Build 0:6ae2f7bca550 4395 {
Azure.IoT Build 0:6ae2f7bca550 4396 result = __LINE__;
Azure.IoT Build 0:6ae2f7bca550 4397 }
Azure.IoT Build 0:6ae2f7bca550 4398 else
Azure.IoT Build 0:6ae2f7bca550 4399 {
Azure.IoT Build 0:6ae2f7bca550 4400 FLOW_INSTANCE* flow_instance = (FLOW_INSTANCE*)flow;
Azure.IoT Build 0:6ae2f7bca550 4401 AMQP_VALUE outgoing_window_amqp_value = amqpvalue_create_uint(outgoing_window_value);
Azure.IoT Build 0:6ae2f7bca550 4402 if (outgoing_window_amqp_value == NULL)
Azure.IoT Build 0:6ae2f7bca550 4403 {
Azure.IoT Build 0:6ae2f7bca550 4404 result = __LINE__;
Azure.IoT Build 0:6ae2f7bca550 4405 }
Azure.IoT Build 0:6ae2f7bca550 4406 else
Azure.IoT Build 0:6ae2f7bca550 4407 {
Azure.IoT Build 0:6ae2f7bca550 4408 if (amqpvalue_set_composite_item(flow_instance->composite_value, 3, outgoing_window_amqp_value) != 0)
Azure.IoT Build 0:6ae2f7bca550 4409 {
Azure.IoT Build 0:6ae2f7bca550 4410 result = __LINE__;
Azure.IoT Build 0:6ae2f7bca550 4411 }
Azure.IoT Build 0:6ae2f7bca550 4412 else
Azure.IoT Build 0:6ae2f7bca550 4413 {
Azure.IoT Build 0:6ae2f7bca550 4414 result = 0;
Azure.IoT Build 0:6ae2f7bca550 4415 }
Azure.IoT Build 0:6ae2f7bca550 4416
Azure.IoT Build 0:6ae2f7bca550 4417 amqpvalue_destroy(outgoing_window_amqp_value);
Azure.IoT Build 0:6ae2f7bca550 4418 }
Azure.IoT Build 0:6ae2f7bca550 4419 }
Azure.IoT Build 0:6ae2f7bca550 4420
Azure.IoT Build 0:6ae2f7bca550 4421 return result;
Azure.IoT Build 0:6ae2f7bca550 4422 }
Azure.IoT Build 0:6ae2f7bca550 4423
Azure.IoT Build 0:6ae2f7bca550 4424 int flow_get_handle(FLOW_HANDLE flow, handle* handle_value)
Azure.IoT Build 0:6ae2f7bca550 4425 {
Azure.IoT Build 0:6ae2f7bca550 4426 int result;
Azure.IoT Build 0:6ae2f7bca550 4427
Azure.IoT Build 0:6ae2f7bca550 4428 if (flow == NULL)
Azure.IoT Build 0:6ae2f7bca550 4429 {
Azure.IoT Build 0:6ae2f7bca550 4430 result = __LINE__;
Azure.IoT Build 0:6ae2f7bca550 4431 }
Azure.IoT Build 0:6ae2f7bca550 4432 else
Azure.IoT Build 0:6ae2f7bca550 4433 {
Azure.IoT Build 0:6ae2f7bca550 4434 FLOW_INSTANCE* flow_instance = (FLOW_INSTANCE*)flow;
Azure.IoT Build 0:6ae2f7bca550 4435 AMQP_VALUE item_value = amqpvalue_get_composite_item_in_place(flow_instance->composite_value, 4);
Azure.IoT Build 0:6ae2f7bca550 4436 if (item_value == NULL)
Azure.IoT Build 0:6ae2f7bca550 4437 {
Azure.IoT Build 0:6ae2f7bca550 4438 result = __LINE__;
Azure.IoT Build 0:6ae2f7bca550 4439 }
Azure.IoT Build 0:6ae2f7bca550 4440 else
Azure.IoT Build 0:6ae2f7bca550 4441 {
Azure.IoT Build 0:6ae2f7bca550 4442 if (amqpvalue_get_handle(item_value, handle_value) != 0)
Azure.IoT Build 0:6ae2f7bca550 4443 {
Azure.IoT Build 0:6ae2f7bca550 4444 result = __LINE__;
Azure.IoT Build 0:6ae2f7bca550 4445 }
Azure.IoT Build 0:6ae2f7bca550 4446 else
Azure.IoT Build 0:6ae2f7bca550 4447 {
Azure.IoT Build 0:6ae2f7bca550 4448 result = 0;
Azure.IoT Build 0:6ae2f7bca550 4449 }
Azure.IoT Build 0:6ae2f7bca550 4450 }
Azure.IoT Build 0:6ae2f7bca550 4451 }
Azure.IoT Build 0:6ae2f7bca550 4452
Azure.IoT Build 0:6ae2f7bca550 4453 return result;
Azure.IoT Build 0:6ae2f7bca550 4454 }
Azure.IoT Build 0:6ae2f7bca550 4455
Azure.IoT Build 0:6ae2f7bca550 4456 int flow_set_handle(FLOW_HANDLE flow, handle handle_value)
Azure.IoT Build 0:6ae2f7bca550 4457 {
Azure.IoT Build 0:6ae2f7bca550 4458 int result;
Azure.IoT Build 0:6ae2f7bca550 4459
Azure.IoT Build 0:6ae2f7bca550 4460 if (flow == NULL)
Azure.IoT Build 0:6ae2f7bca550 4461 {
Azure.IoT Build 0:6ae2f7bca550 4462 result = __LINE__;
Azure.IoT Build 0:6ae2f7bca550 4463 }
Azure.IoT Build 0:6ae2f7bca550 4464 else
Azure.IoT Build 0:6ae2f7bca550 4465 {
Azure.IoT Build 0:6ae2f7bca550 4466 FLOW_INSTANCE* flow_instance = (FLOW_INSTANCE*)flow;
Azure.IoT Build 0:6ae2f7bca550 4467 AMQP_VALUE handle_amqp_value = amqpvalue_create_handle(handle_value);
Azure.IoT Build 0:6ae2f7bca550 4468 if (handle_amqp_value == NULL)
Azure.IoT Build 0:6ae2f7bca550 4469 {
Azure.IoT Build 0:6ae2f7bca550 4470 result = __LINE__;
Azure.IoT Build 0:6ae2f7bca550 4471 }
Azure.IoT Build 0:6ae2f7bca550 4472 else
Azure.IoT Build 0:6ae2f7bca550 4473 {
Azure.IoT Build 0:6ae2f7bca550 4474 if (amqpvalue_set_composite_item(flow_instance->composite_value, 4, handle_amqp_value) != 0)
Azure.IoT Build 0:6ae2f7bca550 4475 {
Azure.IoT Build 0:6ae2f7bca550 4476 result = __LINE__;
Azure.IoT Build 0:6ae2f7bca550 4477 }
Azure.IoT Build 0:6ae2f7bca550 4478 else
Azure.IoT Build 0:6ae2f7bca550 4479 {
Azure.IoT Build 0:6ae2f7bca550 4480 result = 0;
Azure.IoT Build 0:6ae2f7bca550 4481 }
Azure.IoT Build 0:6ae2f7bca550 4482
Azure.IoT Build 0:6ae2f7bca550 4483 amqpvalue_destroy(handle_amqp_value);
Azure.IoT Build 0:6ae2f7bca550 4484 }
Azure.IoT Build 0:6ae2f7bca550 4485 }
Azure.IoT Build 0:6ae2f7bca550 4486
Azure.IoT Build 0:6ae2f7bca550 4487 return result;
Azure.IoT Build 0:6ae2f7bca550 4488 }
Azure.IoT Build 0:6ae2f7bca550 4489
Azure.IoT Build 0:6ae2f7bca550 4490 int flow_get_delivery_count(FLOW_HANDLE flow, sequence_no* delivery_count_value)
Azure.IoT Build 0:6ae2f7bca550 4491 {
Azure.IoT Build 0:6ae2f7bca550 4492 int result;
Azure.IoT Build 0:6ae2f7bca550 4493
Azure.IoT Build 0:6ae2f7bca550 4494 if (flow == NULL)
Azure.IoT Build 0:6ae2f7bca550 4495 {
Azure.IoT Build 0:6ae2f7bca550 4496 result = __LINE__;
Azure.IoT Build 0:6ae2f7bca550 4497 }
Azure.IoT Build 0:6ae2f7bca550 4498 else
Azure.IoT Build 0:6ae2f7bca550 4499 {
Azure.IoT Build 0:6ae2f7bca550 4500 FLOW_INSTANCE* flow_instance = (FLOW_INSTANCE*)flow;
Azure.IoT Build 0:6ae2f7bca550 4501 AMQP_VALUE item_value = amqpvalue_get_composite_item_in_place(flow_instance->composite_value, 5);
Azure.IoT Build 0:6ae2f7bca550 4502 if (item_value == NULL)
Azure.IoT Build 0:6ae2f7bca550 4503 {
Azure.IoT Build 0:6ae2f7bca550 4504 result = __LINE__;
Azure.IoT Build 0:6ae2f7bca550 4505 }
Azure.IoT Build 0:6ae2f7bca550 4506 else
Azure.IoT Build 0:6ae2f7bca550 4507 {
Azure.IoT Build 0:6ae2f7bca550 4508 if (amqpvalue_get_sequence_no(item_value, delivery_count_value) != 0)
Azure.IoT Build 0:6ae2f7bca550 4509 {
Azure.IoT Build 0:6ae2f7bca550 4510 result = __LINE__;
Azure.IoT Build 0:6ae2f7bca550 4511 }
Azure.IoT Build 0:6ae2f7bca550 4512 else
Azure.IoT Build 0:6ae2f7bca550 4513 {
Azure.IoT Build 0:6ae2f7bca550 4514 result = 0;
Azure.IoT Build 0:6ae2f7bca550 4515 }
Azure.IoT Build 0:6ae2f7bca550 4516 }
Azure.IoT Build 0:6ae2f7bca550 4517 }
Azure.IoT Build 0:6ae2f7bca550 4518
Azure.IoT Build 0:6ae2f7bca550 4519 return result;
Azure.IoT Build 0:6ae2f7bca550 4520 }
Azure.IoT Build 0:6ae2f7bca550 4521
Azure.IoT Build 0:6ae2f7bca550 4522 int flow_set_delivery_count(FLOW_HANDLE flow, sequence_no delivery_count_value)
Azure.IoT Build 0:6ae2f7bca550 4523 {
Azure.IoT Build 0:6ae2f7bca550 4524 int result;
Azure.IoT Build 0:6ae2f7bca550 4525
Azure.IoT Build 0:6ae2f7bca550 4526 if (flow == NULL)
Azure.IoT Build 0:6ae2f7bca550 4527 {
Azure.IoT Build 0:6ae2f7bca550 4528 result = __LINE__;
Azure.IoT Build 0:6ae2f7bca550 4529 }
Azure.IoT Build 0:6ae2f7bca550 4530 else
Azure.IoT Build 0:6ae2f7bca550 4531 {
Azure.IoT Build 0:6ae2f7bca550 4532 FLOW_INSTANCE* flow_instance = (FLOW_INSTANCE*)flow;
Azure.IoT Build 0:6ae2f7bca550 4533 AMQP_VALUE delivery_count_amqp_value = amqpvalue_create_sequence_no(delivery_count_value);
Azure.IoT Build 0:6ae2f7bca550 4534 if (delivery_count_amqp_value == NULL)
Azure.IoT Build 0:6ae2f7bca550 4535 {
Azure.IoT Build 0:6ae2f7bca550 4536 result = __LINE__;
Azure.IoT Build 0:6ae2f7bca550 4537 }
Azure.IoT Build 0:6ae2f7bca550 4538 else
Azure.IoT Build 0:6ae2f7bca550 4539 {
Azure.IoT Build 0:6ae2f7bca550 4540 if (amqpvalue_set_composite_item(flow_instance->composite_value, 5, delivery_count_amqp_value) != 0)
Azure.IoT Build 0:6ae2f7bca550 4541 {
Azure.IoT Build 0:6ae2f7bca550 4542 result = __LINE__;
Azure.IoT Build 0:6ae2f7bca550 4543 }
Azure.IoT Build 0:6ae2f7bca550 4544 else
Azure.IoT Build 0:6ae2f7bca550 4545 {
Azure.IoT Build 0:6ae2f7bca550 4546 result = 0;
Azure.IoT Build 0:6ae2f7bca550 4547 }
Azure.IoT Build 0:6ae2f7bca550 4548
Azure.IoT Build 0:6ae2f7bca550 4549 amqpvalue_destroy(delivery_count_amqp_value);
Azure.IoT Build 0:6ae2f7bca550 4550 }
Azure.IoT Build 0:6ae2f7bca550 4551 }
Azure.IoT Build 0:6ae2f7bca550 4552
Azure.IoT Build 0:6ae2f7bca550 4553 return result;
Azure.IoT Build 0:6ae2f7bca550 4554 }
Azure.IoT Build 0:6ae2f7bca550 4555
Azure.IoT Build 0:6ae2f7bca550 4556 int flow_get_link_credit(FLOW_HANDLE flow, uint32_t* link_credit_value)
Azure.IoT Build 0:6ae2f7bca550 4557 {
Azure.IoT Build 0:6ae2f7bca550 4558 int result;
Azure.IoT Build 0:6ae2f7bca550 4559
Azure.IoT Build 0:6ae2f7bca550 4560 if (flow == NULL)
Azure.IoT Build 0:6ae2f7bca550 4561 {
Azure.IoT Build 0:6ae2f7bca550 4562 result = __LINE__;
Azure.IoT Build 0:6ae2f7bca550 4563 }
Azure.IoT Build 0:6ae2f7bca550 4564 else
Azure.IoT Build 0:6ae2f7bca550 4565 {
Azure.IoT Build 0:6ae2f7bca550 4566 FLOW_INSTANCE* flow_instance = (FLOW_INSTANCE*)flow;
Azure.IoT Build 0:6ae2f7bca550 4567 AMQP_VALUE item_value = amqpvalue_get_composite_item_in_place(flow_instance->composite_value, 6);
Azure.IoT Build 0:6ae2f7bca550 4568 if (item_value == NULL)
Azure.IoT Build 0:6ae2f7bca550 4569 {
Azure.IoT Build 0:6ae2f7bca550 4570 result = __LINE__;
Azure.IoT Build 0:6ae2f7bca550 4571 }
Azure.IoT Build 0:6ae2f7bca550 4572 else
Azure.IoT Build 0:6ae2f7bca550 4573 {
Azure.IoT Build 0:6ae2f7bca550 4574 if (amqpvalue_get_uint(item_value, link_credit_value) != 0)
Azure.IoT Build 0:6ae2f7bca550 4575 {
Azure.IoT Build 0:6ae2f7bca550 4576 result = __LINE__;
Azure.IoT Build 0:6ae2f7bca550 4577 }
Azure.IoT Build 0:6ae2f7bca550 4578 else
Azure.IoT Build 0:6ae2f7bca550 4579 {
Azure.IoT Build 0:6ae2f7bca550 4580 result = 0;
Azure.IoT Build 0:6ae2f7bca550 4581 }
Azure.IoT Build 0:6ae2f7bca550 4582 }
Azure.IoT Build 0:6ae2f7bca550 4583 }
Azure.IoT Build 0:6ae2f7bca550 4584
Azure.IoT Build 0:6ae2f7bca550 4585 return result;
Azure.IoT Build 0:6ae2f7bca550 4586 }
Azure.IoT Build 0:6ae2f7bca550 4587
Azure.IoT Build 0:6ae2f7bca550 4588 int flow_set_link_credit(FLOW_HANDLE flow, uint32_t link_credit_value)
Azure.IoT Build 0:6ae2f7bca550 4589 {
Azure.IoT Build 0:6ae2f7bca550 4590 int result;
Azure.IoT Build 0:6ae2f7bca550 4591
Azure.IoT Build 0:6ae2f7bca550 4592 if (flow == NULL)
Azure.IoT Build 0:6ae2f7bca550 4593 {
Azure.IoT Build 0:6ae2f7bca550 4594 result = __LINE__;
Azure.IoT Build 0:6ae2f7bca550 4595 }
Azure.IoT Build 0:6ae2f7bca550 4596 else
Azure.IoT Build 0:6ae2f7bca550 4597 {
Azure.IoT Build 0:6ae2f7bca550 4598 FLOW_INSTANCE* flow_instance = (FLOW_INSTANCE*)flow;
Azure.IoT Build 0:6ae2f7bca550 4599 AMQP_VALUE link_credit_amqp_value = amqpvalue_create_uint(link_credit_value);
Azure.IoT Build 0:6ae2f7bca550 4600 if (link_credit_amqp_value == NULL)
Azure.IoT Build 0:6ae2f7bca550 4601 {
Azure.IoT Build 0:6ae2f7bca550 4602 result = __LINE__;
Azure.IoT Build 0:6ae2f7bca550 4603 }
Azure.IoT Build 0:6ae2f7bca550 4604 else
Azure.IoT Build 0:6ae2f7bca550 4605 {
Azure.IoT Build 0:6ae2f7bca550 4606 if (amqpvalue_set_composite_item(flow_instance->composite_value, 6, link_credit_amqp_value) != 0)
Azure.IoT Build 0:6ae2f7bca550 4607 {
Azure.IoT Build 0:6ae2f7bca550 4608 result = __LINE__;
Azure.IoT Build 0:6ae2f7bca550 4609 }
Azure.IoT Build 0:6ae2f7bca550 4610 else
Azure.IoT Build 0:6ae2f7bca550 4611 {
Azure.IoT Build 0:6ae2f7bca550 4612 result = 0;
Azure.IoT Build 0:6ae2f7bca550 4613 }
Azure.IoT Build 0:6ae2f7bca550 4614
Azure.IoT Build 0:6ae2f7bca550 4615 amqpvalue_destroy(link_credit_amqp_value);
Azure.IoT Build 0:6ae2f7bca550 4616 }
Azure.IoT Build 0:6ae2f7bca550 4617 }
Azure.IoT Build 0:6ae2f7bca550 4618
Azure.IoT Build 0:6ae2f7bca550 4619 return result;
Azure.IoT Build 0:6ae2f7bca550 4620 }
Azure.IoT Build 0:6ae2f7bca550 4621
Azure.IoT Build 0:6ae2f7bca550 4622 int flow_get_available(FLOW_HANDLE flow, uint32_t* available_value)
Azure.IoT Build 0:6ae2f7bca550 4623 {
Azure.IoT Build 0:6ae2f7bca550 4624 int result;
Azure.IoT Build 0:6ae2f7bca550 4625
Azure.IoT Build 0:6ae2f7bca550 4626 if (flow == NULL)
Azure.IoT Build 0:6ae2f7bca550 4627 {
Azure.IoT Build 0:6ae2f7bca550 4628 result = __LINE__;
Azure.IoT Build 0:6ae2f7bca550 4629 }
Azure.IoT Build 0:6ae2f7bca550 4630 else
Azure.IoT Build 0:6ae2f7bca550 4631 {
Azure.IoT Build 0:6ae2f7bca550 4632 FLOW_INSTANCE* flow_instance = (FLOW_INSTANCE*)flow;
Azure.IoT Build 0:6ae2f7bca550 4633 AMQP_VALUE item_value = amqpvalue_get_composite_item_in_place(flow_instance->composite_value, 7);
Azure.IoT Build 0:6ae2f7bca550 4634 if (item_value == NULL)
Azure.IoT Build 0:6ae2f7bca550 4635 {
Azure.IoT Build 0:6ae2f7bca550 4636 result = __LINE__;
Azure.IoT Build 0:6ae2f7bca550 4637 }
Azure.IoT Build 0:6ae2f7bca550 4638 else
Azure.IoT Build 0:6ae2f7bca550 4639 {
Azure.IoT Build 0:6ae2f7bca550 4640 if (amqpvalue_get_uint(item_value, available_value) != 0)
Azure.IoT Build 0:6ae2f7bca550 4641 {
Azure.IoT Build 0:6ae2f7bca550 4642 result = __LINE__;
Azure.IoT Build 0:6ae2f7bca550 4643 }
Azure.IoT Build 0:6ae2f7bca550 4644 else
Azure.IoT Build 0:6ae2f7bca550 4645 {
Azure.IoT Build 0:6ae2f7bca550 4646 result = 0;
Azure.IoT Build 0:6ae2f7bca550 4647 }
Azure.IoT Build 0:6ae2f7bca550 4648 }
Azure.IoT Build 0:6ae2f7bca550 4649 }
Azure.IoT Build 0:6ae2f7bca550 4650
Azure.IoT Build 0:6ae2f7bca550 4651 return result;
Azure.IoT Build 0:6ae2f7bca550 4652 }
Azure.IoT Build 0:6ae2f7bca550 4653
Azure.IoT Build 0:6ae2f7bca550 4654 int flow_set_available(FLOW_HANDLE flow, uint32_t available_value)
Azure.IoT Build 0:6ae2f7bca550 4655 {
Azure.IoT Build 0:6ae2f7bca550 4656 int result;
Azure.IoT Build 0:6ae2f7bca550 4657
Azure.IoT Build 0:6ae2f7bca550 4658 if (flow == NULL)
Azure.IoT Build 0:6ae2f7bca550 4659 {
Azure.IoT Build 0:6ae2f7bca550 4660 result = __LINE__;
Azure.IoT Build 0:6ae2f7bca550 4661 }
Azure.IoT Build 0:6ae2f7bca550 4662 else
Azure.IoT Build 0:6ae2f7bca550 4663 {
Azure.IoT Build 0:6ae2f7bca550 4664 FLOW_INSTANCE* flow_instance = (FLOW_INSTANCE*)flow;
Azure.IoT Build 0:6ae2f7bca550 4665 AMQP_VALUE available_amqp_value = amqpvalue_create_uint(available_value);
Azure.IoT Build 0:6ae2f7bca550 4666 if (available_amqp_value == NULL)
Azure.IoT Build 0:6ae2f7bca550 4667 {
Azure.IoT Build 0:6ae2f7bca550 4668 result = __LINE__;
Azure.IoT Build 0:6ae2f7bca550 4669 }
Azure.IoT Build 0:6ae2f7bca550 4670 else
Azure.IoT Build 0:6ae2f7bca550 4671 {
Azure.IoT Build 0:6ae2f7bca550 4672 if (amqpvalue_set_composite_item(flow_instance->composite_value, 7, available_amqp_value) != 0)
Azure.IoT Build 0:6ae2f7bca550 4673 {
Azure.IoT Build 0:6ae2f7bca550 4674 result = __LINE__;
Azure.IoT Build 0:6ae2f7bca550 4675 }
Azure.IoT Build 0:6ae2f7bca550 4676 else
Azure.IoT Build 0:6ae2f7bca550 4677 {
Azure.IoT Build 0:6ae2f7bca550 4678 result = 0;
Azure.IoT Build 0:6ae2f7bca550 4679 }
Azure.IoT Build 0:6ae2f7bca550 4680
Azure.IoT Build 0:6ae2f7bca550 4681 amqpvalue_destroy(available_amqp_value);
Azure.IoT Build 0:6ae2f7bca550 4682 }
Azure.IoT Build 0:6ae2f7bca550 4683 }
Azure.IoT Build 0:6ae2f7bca550 4684
Azure.IoT Build 0:6ae2f7bca550 4685 return result;
Azure.IoT Build 0:6ae2f7bca550 4686 }
Azure.IoT Build 0:6ae2f7bca550 4687
Azure.IoT Build 0:6ae2f7bca550 4688 int flow_get_drain(FLOW_HANDLE flow, bool* drain_value)
Azure.IoT Build 0:6ae2f7bca550 4689 {
Azure.IoT Build 0:6ae2f7bca550 4690 int result;
Azure.IoT Build 0:6ae2f7bca550 4691
Azure.IoT Build 0:6ae2f7bca550 4692 if (flow == NULL)
Azure.IoT Build 0:6ae2f7bca550 4693 {
Azure.IoT Build 0:6ae2f7bca550 4694 result = __LINE__;
Azure.IoT Build 0:6ae2f7bca550 4695 }
Azure.IoT Build 0:6ae2f7bca550 4696 else
Azure.IoT Build 0:6ae2f7bca550 4697 {
Azure.IoT Build 0:6ae2f7bca550 4698 FLOW_INSTANCE* flow_instance = (FLOW_INSTANCE*)flow;
Azure.IoT Build 0:6ae2f7bca550 4699 AMQP_VALUE item_value = amqpvalue_get_composite_item_in_place(flow_instance->composite_value, 8);
Azure.IoT Build 0:6ae2f7bca550 4700 if (item_value == NULL)
Azure.IoT Build 0:6ae2f7bca550 4701 {
Azure.IoT Build 0:6ae2f7bca550 4702 result = __LINE__;
Azure.IoT Build 0:6ae2f7bca550 4703 }
Azure.IoT Build 0:6ae2f7bca550 4704 else
Azure.IoT Build 0:6ae2f7bca550 4705 {
Azure.IoT Build 0:6ae2f7bca550 4706 if (amqpvalue_get_boolean(item_value, drain_value) != 0)
Azure.IoT Build 0:6ae2f7bca550 4707 {
Azure.IoT Build 0:6ae2f7bca550 4708 result = __LINE__;
Azure.IoT Build 0:6ae2f7bca550 4709 }
Azure.IoT Build 0:6ae2f7bca550 4710 else
Azure.IoT Build 0:6ae2f7bca550 4711 {
Azure.IoT Build 0:6ae2f7bca550 4712 result = 0;
Azure.IoT Build 0:6ae2f7bca550 4713 }
Azure.IoT Build 0:6ae2f7bca550 4714 }
Azure.IoT Build 0:6ae2f7bca550 4715 }
Azure.IoT Build 0:6ae2f7bca550 4716
Azure.IoT Build 0:6ae2f7bca550 4717 return result;
Azure.IoT Build 0:6ae2f7bca550 4718 }
Azure.IoT Build 0:6ae2f7bca550 4719
Azure.IoT Build 0:6ae2f7bca550 4720 int flow_set_drain(FLOW_HANDLE flow, bool drain_value)
Azure.IoT Build 0:6ae2f7bca550 4721 {
Azure.IoT Build 0:6ae2f7bca550 4722 int result;
Azure.IoT Build 0:6ae2f7bca550 4723
Azure.IoT Build 0:6ae2f7bca550 4724 if (flow == NULL)
Azure.IoT Build 0:6ae2f7bca550 4725 {
Azure.IoT Build 0:6ae2f7bca550 4726 result = __LINE__;
Azure.IoT Build 0:6ae2f7bca550 4727 }
Azure.IoT Build 0:6ae2f7bca550 4728 else
Azure.IoT Build 0:6ae2f7bca550 4729 {
Azure.IoT Build 0:6ae2f7bca550 4730 FLOW_INSTANCE* flow_instance = (FLOW_INSTANCE*)flow;
Azure.IoT Build 0:6ae2f7bca550 4731 AMQP_VALUE drain_amqp_value = amqpvalue_create_boolean(drain_value);
Azure.IoT Build 0:6ae2f7bca550 4732 if (drain_amqp_value == NULL)
Azure.IoT Build 0:6ae2f7bca550 4733 {
Azure.IoT Build 0:6ae2f7bca550 4734 result = __LINE__;
Azure.IoT Build 0:6ae2f7bca550 4735 }
Azure.IoT Build 0:6ae2f7bca550 4736 else
Azure.IoT Build 0:6ae2f7bca550 4737 {
Azure.IoT Build 0:6ae2f7bca550 4738 if (amqpvalue_set_composite_item(flow_instance->composite_value, 8, drain_amqp_value) != 0)
Azure.IoT Build 0:6ae2f7bca550 4739 {
Azure.IoT Build 0:6ae2f7bca550 4740 result = __LINE__;
Azure.IoT Build 0:6ae2f7bca550 4741 }
Azure.IoT Build 0:6ae2f7bca550 4742 else
Azure.IoT Build 0:6ae2f7bca550 4743 {
Azure.IoT Build 0:6ae2f7bca550 4744 result = 0;
Azure.IoT Build 0:6ae2f7bca550 4745 }
Azure.IoT Build 0:6ae2f7bca550 4746
Azure.IoT Build 0:6ae2f7bca550 4747 amqpvalue_destroy(drain_amqp_value);
Azure.IoT Build 0:6ae2f7bca550 4748 }
Azure.IoT Build 0:6ae2f7bca550 4749 }
Azure.IoT Build 0:6ae2f7bca550 4750
Azure.IoT Build 0:6ae2f7bca550 4751 return result;
Azure.IoT Build 0:6ae2f7bca550 4752 }
Azure.IoT Build 0:6ae2f7bca550 4753
Azure.IoT Build 0:6ae2f7bca550 4754 int flow_get_echo(FLOW_HANDLE flow, bool* echo_value)
Azure.IoT Build 0:6ae2f7bca550 4755 {
Azure.IoT Build 0:6ae2f7bca550 4756 int result;
Azure.IoT Build 0:6ae2f7bca550 4757
Azure.IoT Build 0:6ae2f7bca550 4758 if (flow == NULL)
Azure.IoT Build 0:6ae2f7bca550 4759 {
Azure.IoT Build 0:6ae2f7bca550 4760 result = __LINE__;
Azure.IoT Build 0:6ae2f7bca550 4761 }
Azure.IoT Build 0:6ae2f7bca550 4762 else
Azure.IoT Build 0:6ae2f7bca550 4763 {
Azure.IoT Build 0:6ae2f7bca550 4764 FLOW_INSTANCE* flow_instance = (FLOW_INSTANCE*)flow;
Azure.IoT Build 0:6ae2f7bca550 4765 AMQP_VALUE item_value = amqpvalue_get_composite_item_in_place(flow_instance->composite_value, 9);
Azure.IoT Build 0:6ae2f7bca550 4766 if (item_value == NULL)
Azure.IoT Build 0:6ae2f7bca550 4767 {
Azure.IoT Build 0:6ae2f7bca550 4768 result = __LINE__;
Azure.IoT Build 0:6ae2f7bca550 4769 }
Azure.IoT Build 0:6ae2f7bca550 4770 else
Azure.IoT Build 0:6ae2f7bca550 4771 {
Azure.IoT Build 0:6ae2f7bca550 4772 if (amqpvalue_get_boolean(item_value, echo_value) != 0)
Azure.IoT Build 0:6ae2f7bca550 4773 {
Azure.IoT Build 0:6ae2f7bca550 4774 result = __LINE__;
Azure.IoT Build 0:6ae2f7bca550 4775 }
Azure.IoT Build 0:6ae2f7bca550 4776 else
Azure.IoT Build 0:6ae2f7bca550 4777 {
Azure.IoT Build 0:6ae2f7bca550 4778 result = 0;
Azure.IoT Build 0:6ae2f7bca550 4779 }
Azure.IoT Build 0:6ae2f7bca550 4780 }
Azure.IoT Build 0:6ae2f7bca550 4781 }
Azure.IoT Build 0:6ae2f7bca550 4782
Azure.IoT Build 0:6ae2f7bca550 4783 return result;
Azure.IoT Build 0:6ae2f7bca550 4784 }
Azure.IoT Build 0:6ae2f7bca550 4785
Azure.IoT Build 0:6ae2f7bca550 4786 int flow_set_echo(FLOW_HANDLE flow, bool echo_value)
Azure.IoT Build 0:6ae2f7bca550 4787 {
Azure.IoT Build 0:6ae2f7bca550 4788 int result;
Azure.IoT Build 0:6ae2f7bca550 4789
Azure.IoT Build 0:6ae2f7bca550 4790 if (flow == NULL)
Azure.IoT Build 0:6ae2f7bca550 4791 {
Azure.IoT Build 0:6ae2f7bca550 4792 result = __LINE__;
Azure.IoT Build 0:6ae2f7bca550 4793 }
Azure.IoT Build 0:6ae2f7bca550 4794 else
Azure.IoT Build 0:6ae2f7bca550 4795 {
Azure.IoT Build 0:6ae2f7bca550 4796 FLOW_INSTANCE* flow_instance = (FLOW_INSTANCE*)flow;
Azure.IoT Build 0:6ae2f7bca550 4797 AMQP_VALUE echo_amqp_value = amqpvalue_create_boolean(echo_value);
Azure.IoT Build 0:6ae2f7bca550 4798 if (echo_amqp_value == NULL)
Azure.IoT Build 0:6ae2f7bca550 4799 {
Azure.IoT Build 0:6ae2f7bca550 4800 result = __LINE__;
Azure.IoT Build 0:6ae2f7bca550 4801 }
Azure.IoT Build 0:6ae2f7bca550 4802 else
Azure.IoT Build 0:6ae2f7bca550 4803 {
Azure.IoT Build 0:6ae2f7bca550 4804 if (amqpvalue_set_composite_item(flow_instance->composite_value, 9, echo_amqp_value) != 0)
Azure.IoT Build 0:6ae2f7bca550 4805 {
Azure.IoT Build 0:6ae2f7bca550 4806 result = __LINE__;
Azure.IoT Build 0:6ae2f7bca550 4807 }
Azure.IoT Build 0:6ae2f7bca550 4808 else
Azure.IoT Build 0:6ae2f7bca550 4809 {
Azure.IoT Build 0:6ae2f7bca550 4810 result = 0;
Azure.IoT Build 0:6ae2f7bca550 4811 }
Azure.IoT Build 0:6ae2f7bca550 4812
Azure.IoT Build 0:6ae2f7bca550 4813 amqpvalue_destroy(echo_amqp_value);
Azure.IoT Build 0:6ae2f7bca550 4814 }
Azure.IoT Build 0:6ae2f7bca550 4815 }
Azure.IoT Build 0:6ae2f7bca550 4816
Azure.IoT Build 0:6ae2f7bca550 4817 return result;
Azure.IoT Build 0:6ae2f7bca550 4818 }
Azure.IoT Build 0:6ae2f7bca550 4819
Azure.IoT Build 0:6ae2f7bca550 4820 int flow_get_properties(FLOW_HANDLE flow, fields* properties_value)
Azure.IoT Build 0:6ae2f7bca550 4821 {
Azure.IoT Build 0:6ae2f7bca550 4822 int result;
Azure.IoT Build 0:6ae2f7bca550 4823
Azure.IoT Build 0:6ae2f7bca550 4824 if (flow == NULL)
Azure.IoT Build 0:6ae2f7bca550 4825 {
Azure.IoT Build 0:6ae2f7bca550 4826 result = __LINE__;
Azure.IoT Build 0:6ae2f7bca550 4827 }
Azure.IoT Build 0:6ae2f7bca550 4828 else
Azure.IoT Build 0:6ae2f7bca550 4829 {
Azure.IoT Build 0:6ae2f7bca550 4830 FLOW_INSTANCE* flow_instance = (FLOW_INSTANCE*)flow;
Azure.IoT Build 0:6ae2f7bca550 4831 AMQP_VALUE item_value = amqpvalue_get_composite_item_in_place(flow_instance->composite_value, 10);
Azure.IoT Build 0:6ae2f7bca550 4832 if (item_value == NULL)
Azure.IoT Build 0:6ae2f7bca550 4833 {
Azure.IoT Build 0:6ae2f7bca550 4834 result = __LINE__;
Azure.IoT Build 0:6ae2f7bca550 4835 }
Azure.IoT Build 0:6ae2f7bca550 4836 else
Azure.IoT Build 0:6ae2f7bca550 4837 {
Azure.IoT Build 0:6ae2f7bca550 4838 if (amqpvalue_get_fields(item_value, properties_value) != 0)
Azure.IoT Build 0:6ae2f7bca550 4839 {
Azure.IoT Build 0:6ae2f7bca550 4840 result = __LINE__;
Azure.IoT Build 0:6ae2f7bca550 4841 }
Azure.IoT Build 0:6ae2f7bca550 4842 else
Azure.IoT Build 0:6ae2f7bca550 4843 {
Azure.IoT Build 0:6ae2f7bca550 4844 result = 0;
Azure.IoT Build 0:6ae2f7bca550 4845 }
Azure.IoT Build 0:6ae2f7bca550 4846 }
Azure.IoT Build 0:6ae2f7bca550 4847 }
Azure.IoT Build 0:6ae2f7bca550 4848
Azure.IoT Build 0:6ae2f7bca550 4849 return result;
Azure.IoT Build 0:6ae2f7bca550 4850 }
Azure.IoT Build 0:6ae2f7bca550 4851
Azure.IoT Build 0:6ae2f7bca550 4852 int flow_set_properties(FLOW_HANDLE flow, fields properties_value)
Azure.IoT Build 0:6ae2f7bca550 4853 {
Azure.IoT Build 0:6ae2f7bca550 4854 int result;
Azure.IoT Build 0:6ae2f7bca550 4855
Azure.IoT Build 0:6ae2f7bca550 4856 if (flow == NULL)
Azure.IoT Build 0:6ae2f7bca550 4857 {
Azure.IoT Build 0:6ae2f7bca550 4858 result = __LINE__;
Azure.IoT Build 0:6ae2f7bca550 4859 }
Azure.IoT Build 0:6ae2f7bca550 4860 else
Azure.IoT Build 0:6ae2f7bca550 4861 {
Azure.IoT Build 0:6ae2f7bca550 4862 FLOW_INSTANCE* flow_instance = (FLOW_INSTANCE*)flow;
Azure.IoT Build 0:6ae2f7bca550 4863 AMQP_VALUE properties_amqp_value = amqpvalue_create_fields(properties_value);
Azure.IoT Build 0:6ae2f7bca550 4864 if (properties_amqp_value == NULL)
Azure.IoT Build 0:6ae2f7bca550 4865 {
Azure.IoT Build 0:6ae2f7bca550 4866 result = __LINE__;
Azure.IoT Build 0:6ae2f7bca550 4867 }
Azure.IoT Build 0:6ae2f7bca550 4868 else
Azure.IoT Build 0:6ae2f7bca550 4869 {
Azure.IoT Build 0:6ae2f7bca550 4870 if (amqpvalue_set_composite_item(flow_instance->composite_value, 10, properties_amqp_value) != 0)
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 result = 0;
Azure.IoT Build 0:6ae2f7bca550 4877 }
Azure.IoT Build 0:6ae2f7bca550 4878
Azure.IoT Build 0:6ae2f7bca550 4879 amqpvalue_destroy(properties_amqp_value);
Azure.IoT Build 0:6ae2f7bca550 4880 }
Azure.IoT Build 0:6ae2f7bca550 4881 }
Azure.IoT Build 0:6ae2f7bca550 4882
Azure.IoT Build 0:6ae2f7bca550 4883 return result;
Azure.IoT Build 0:6ae2f7bca550 4884 }
Azure.IoT Build 0:6ae2f7bca550 4885
Azure.IoT Build 0:6ae2f7bca550 4886
Azure.IoT Build 0:6ae2f7bca550 4887 /* transfer */
Azure.IoT Build 0:6ae2f7bca550 4888
Azure.IoT Build 0:6ae2f7bca550 4889 typedef struct TRANSFER_INSTANCE_TAG
Azure.IoT Build 0:6ae2f7bca550 4890 {
Azure.IoT Build 0:6ae2f7bca550 4891 AMQP_VALUE composite_value;
Azure.IoT Build 0:6ae2f7bca550 4892 } TRANSFER_INSTANCE;
Azure.IoT Build 0:6ae2f7bca550 4893
Azure.IoT Build 0:6ae2f7bca550 4894 static TRANSFER_HANDLE transfer_create_internal(void)
Azure.IoT Build 0:6ae2f7bca550 4895 {
Azure.IoT Build 0:6ae2f7bca550 4896 TRANSFER_INSTANCE* transfer_instance = (TRANSFER_INSTANCE*)amqpalloc_malloc(sizeof(TRANSFER_INSTANCE));
Azure.IoT Build 0:6ae2f7bca550 4897 if (transfer_instance != NULL)
Azure.IoT Build 0:6ae2f7bca550 4898 {
Azure.IoT Build 0:6ae2f7bca550 4899 transfer_instance->composite_value = NULL;
Azure.IoT Build 0:6ae2f7bca550 4900 }
Azure.IoT Build 0:6ae2f7bca550 4901
Azure.IoT Build 0:6ae2f7bca550 4902 return transfer_instance;
Azure.IoT Build 0:6ae2f7bca550 4903 }
Azure.IoT Build 0:6ae2f7bca550 4904
Azure.IoT Build 0:6ae2f7bca550 4905 TRANSFER_HANDLE transfer_create(handle handle_value)
Azure.IoT Build 0:6ae2f7bca550 4906 {
Azure.IoT Build 0:6ae2f7bca550 4907 TRANSFER_INSTANCE* transfer_instance = (TRANSFER_INSTANCE*)amqpalloc_malloc(sizeof(TRANSFER_INSTANCE));
Azure.IoT Build 0:6ae2f7bca550 4908 if (transfer_instance != NULL)
Azure.IoT Build 0:6ae2f7bca550 4909 {
Azure.IoT Build 0:6ae2f7bca550 4910 transfer_instance->composite_value = amqpvalue_create_composite_with_ulong_descriptor(20);
Azure.IoT Build 0:6ae2f7bca550 4911 if (transfer_instance->composite_value == NULL)
Azure.IoT Build 0:6ae2f7bca550 4912 {
Azure.IoT Build 0:6ae2f7bca550 4913 amqpalloc_free(transfer_instance);
Azure.IoT Build 0:6ae2f7bca550 4914 transfer_instance = NULL;
Azure.IoT Build 0:6ae2f7bca550 4915 }
Azure.IoT Build 0:6ae2f7bca550 4916 else
Azure.IoT Build 0:6ae2f7bca550 4917 {
Azure.IoT Build 0:6ae2f7bca550 4918 AMQP_VALUE handle_amqp_value;
Azure.IoT Build 0:6ae2f7bca550 4919 int result = 0;
Azure.IoT Build 0:6ae2f7bca550 4920
Azure.IoT Build 0:6ae2f7bca550 4921 handle_amqp_value = amqpvalue_create_handle(handle_value);
Azure.IoT Build 0:6ae2f7bca550 4922 if ((result == 0) && (amqpvalue_set_composite_item(transfer_instance->composite_value, 0, handle_amqp_value) != 0))
Azure.IoT Build 0:6ae2f7bca550 4923 {
Azure.IoT Build 0:6ae2f7bca550 4924 result = __LINE__;
Azure.IoT Build 0:6ae2f7bca550 4925 }
Azure.IoT Build 0:6ae2f7bca550 4926
Azure.IoT Build 0:6ae2f7bca550 4927 amqpvalue_destroy(handle_amqp_value);
Azure.IoT Build 0:6ae2f7bca550 4928 }
Azure.IoT Build 0:6ae2f7bca550 4929 }
Azure.IoT Build 0:6ae2f7bca550 4930
Azure.IoT Build 0:6ae2f7bca550 4931 return transfer_instance;
Azure.IoT Build 0:6ae2f7bca550 4932 }
Azure.IoT Build 0:6ae2f7bca550 4933
Azure.IoT Build 0:6ae2f7bca550 4934 TRANSFER_HANDLE transfer_clone(TRANSFER_HANDLE value)
Azure.IoT Build 0:6ae2f7bca550 4935 {
Azure.IoT Build 0:6ae2f7bca550 4936 TRANSFER_INSTANCE* transfer_instance = (TRANSFER_INSTANCE*)amqpalloc_malloc(sizeof(TRANSFER_INSTANCE));
Azure.IoT Build 0:6ae2f7bca550 4937 if (transfer_instance != NULL)
Azure.IoT Build 0:6ae2f7bca550 4938 {
Azure.IoT Build 0:6ae2f7bca550 4939 transfer_instance->composite_value = amqpvalue_clone(((TRANSFER_INSTANCE*)value)->composite_value);
Azure.IoT Build 0:6ae2f7bca550 4940 if (transfer_instance->composite_value == NULL)
Azure.IoT Build 0:6ae2f7bca550 4941 {
Azure.IoT Build 0:6ae2f7bca550 4942 amqpalloc_free(transfer_instance);
Azure.IoT Build 0:6ae2f7bca550 4943 transfer_instance = NULL;
Azure.IoT Build 0:6ae2f7bca550 4944 }
Azure.IoT Build 0:6ae2f7bca550 4945 }
Azure.IoT Build 0:6ae2f7bca550 4946
Azure.IoT Build 0:6ae2f7bca550 4947 return transfer_instance;
Azure.IoT Build 0:6ae2f7bca550 4948 }
Azure.IoT Build 0:6ae2f7bca550 4949
Azure.IoT Build 0:6ae2f7bca550 4950 void transfer_destroy(TRANSFER_HANDLE transfer)
Azure.IoT Build 0:6ae2f7bca550 4951 {
Azure.IoT Build 0:6ae2f7bca550 4952 if (transfer != NULL)
Azure.IoT Build 0:6ae2f7bca550 4953 {
Azure.IoT Build 0:6ae2f7bca550 4954 TRANSFER_INSTANCE* transfer_instance = (TRANSFER_INSTANCE*)transfer;
Azure.IoT Build 0:6ae2f7bca550 4955 amqpvalue_destroy(transfer_instance->composite_value);
Azure.IoT Build 0:6ae2f7bca550 4956 amqpalloc_free(transfer_instance);
Azure.IoT Build 0:6ae2f7bca550 4957 }
Azure.IoT Build 0:6ae2f7bca550 4958 }
Azure.IoT Build 0:6ae2f7bca550 4959
Azure.IoT Build 0:6ae2f7bca550 4960 AMQP_VALUE amqpvalue_create_transfer(TRANSFER_HANDLE transfer)
Azure.IoT Build 0:6ae2f7bca550 4961 {
Azure.IoT Build 0:6ae2f7bca550 4962 AMQP_VALUE result;
Azure.IoT Build 0:6ae2f7bca550 4963
Azure.IoT Build 0:6ae2f7bca550 4964 if (transfer == NULL)
Azure.IoT Build 0:6ae2f7bca550 4965 {
Azure.IoT Build 0:6ae2f7bca550 4966 result = NULL;
Azure.IoT Build 0:6ae2f7bca550 4967 }
Azure.IoT Build 0:6ae2f7bca550 4968 else
Azure.IoT Build 0:6ae2f7bca550 4969 {
Azure.IoT Build 0:6ae2f7bca550 4970 TRANSFER_INSTANCE* transfer_instance = (TRANSFER_INSTANCE*)transfer;
Azure.IoT Build 0:6ae2f7bca550 4971 result = amqpvalue_clone(transfer_instance->composite_value);
Azure.IoT Build 0:6ae2f7bca550 4972 }
Azure.IoT Build 0:6ae2f7bca550 4973
Azure.IoT Build 0:6ae2f7bca550 4974 return result;
Azure.IoT Build 0:6ae2f7bca550 4975 }
Azure.IoT Build 0:6ae2f7bca550 4976
Azure.IoT Build 0:6ae2f7bca550 4977 bool is_transfer_type_by_descriptor(AMQP_VALUE descriptor)
Azure.IoT Build 0:6ae2f7bca550 4978 {
Azure.IoT Build 0:6ae2f7bca550 4979 bool result;
Azure.IoT Build 0:6ae2f7bca550 4980
Azure.IoT Build 0:6ae2f7bca550 4981 uint64_t descriptor_ulong;
Azure.IoT Build 0:6ae2f7bca550 4982 if ((amqpvalue_get_ulong(descriptor, &descriptor_ulong) == 0) &&
Azure.IoT Build 0:6ae2f7bca550 4983 (descriptor_ulong == 20))
Azure.IoT Build 0:6ae2f7bca550 4984 {
Azure.IoT Build 0:6ae2f7bca550 4985 result = true;
Azure.IoT Build 0:6ae2f7bca550 4986 }
Azure.IoT Build 0:6ae2f7bca550 4987 else
Azure.IoT Build 0:6ae2f7bca550 4988 {
Azure.IoT Build 0:6ae2f7bca550 4989 result = false;
Azure.IoT Build 0:6ae2f7bca550 4990 }
Azure.IoT Build 0:6ae2f7bca550 4991
Azure.IoT Build 0:6ae2f7bca550 4992 return result;
Azure.IoT Build 0:6ae2f7bca550 4993 }
Azure.IoT Build 0:6ae2f7bca550 4994
Azure.IoT Build 0:6ae2f7bca550 4995
Azure.IoT Build 0:6ae2f7bca550 4996 int amqpvalue_get_transfer(AMQP_VALUE value, TRANSFER_HANDLE* transfer_handle)
Azure.IoT Build 0:6ae2f7bca550 4997 {
Azure.IoT Build 0:6ae2f7bca550 4998 int result;
Azure.IoT Build 0:6ae2f7bca550 4999 TRANSFER_INSTANCE* transfer_instance = (TRANSFER_INSTANCE*)transfer_create_internal();
Azure.IoT Build 0:6ae2f7bca550 5000 *transfer_handle = transfer_instance;
Azure.IoT Build 0:6ae2f7bca550 5001 if (*transfer_handle == NULL)
Azure.IoT Build 0:6ae2f7bca550 5002 {
Azure.IoT Build 0:6ae2f7bca550 5003 result = __LINE__;
Azure.IoT Build 0:6ae2f7bca550 5004 }
Azure.IoT Build 0:6ae2f7bca550 5005 else
Azure.IoT Build 0:6ae2f7bca550 5006 {
Azure.IoT Build 0:6ae2f7bca550 5007 AMQP_VALUE list_value = amqpvalue_get_inplace_described_value(value);
Azure.IoT Build 0:6ae2f7bca550 5008 if (list_value == NULL)
Azure.IoT Build 0:6ae2f7bca550 5009 {
Azure.IoT Build 0:6ae2f7bca550 5010 transfer_destroy(*transfer_handle);
Azure.IoT Build 0:6ae2f7bca550 5011 result = __LINE__;
Azure.IoT Build 0:6ae2f7bca550 5012 }
Azure.IoT Build 0:6ae2f7bca550 5013 else
Azure.IoT Build 0:6ae2f7bca550 5014 {
Azure.IoT Build 0:6ae2f7bca550 5015 do
Azure.IoT Build 0:6ae2f7bca550 5016 {
Azure.IoT Build 0:6ae2f7bca550 5017 AMQP_VALUE item_value;
Azure.IoT Build 0:6ae2f7bca550 5018 /* handle */
Azure.IoT Build 0:6ae2f7bca550 5019 item_value = amqpvalue_get_list_item(list_value, 0);
Azure.IoT Build 0:6ae2f7bca550 5020 if (item_value == NULL)
Azure.IoT Build 0:6ae2f7bca550 5021 {
Azure.IoT Build 0:6ae2f7bca550 5022 {
Azure.IoT Build 0:6ae2f7bca550 5023 transfer_destroy(*transfer_handle);
Azure.IoT Build 0:6ae2f7bca550 5024 result = __LINE__;
Azure.IoT Build 0:6ae2f7bca550 5025 break;
Azure.IoT Build 0:6ae2f7bca550 5026 }
Azure.IoT Build 0:6ae2f7bca550 5027 }
Azure.IoT Build 0:6ae2f7bca550 5028 else
Azure.IoT Build 0:6ae2f7bca550 5029 {
Azure.IoT Build 0:6ae2f7bca550 5030 handle handle;
Azure.IoT Build 0:6ae2f7bca550 5031 if (amqpvalue_get_handle(item_value, &handle) != 0)
Azure.IoT Build 0:6ae2f7bca550 5032 {
Azure.IoT Build 0:6ae2f7bca550 5033 transfer_destroy(*transfer_handle);
Azure.IoT Build 0:6ae2f7bca550 5034 result = __LINE__;
Azure.IoT Build 0:6ae2f7bca550 5035 break;
Azure.IoT Build 0:6ae2f7bca550 5036 }
Azure.IoT Build 0:6ae2f7bca550 5037
Azure.IoT Build 0:6ae2f7bca550 5038 amqpvalue_destroy(item_value);
Azure.IoT Build 0:6ae2f7bca550 5039 }
Azure.IoT Build 0:6ae2f7bca550 5040 /* delivery-id */
Azure.IoT Build 0:6ae2f7bca550 5041 item_value = amqpvalue_get_list_item(list_value, 1);
Azure.IoT Build 0:6ae2f7bca550 5042 if (item_value == NULL)
Azure.IoT Build 0:6ae2f7bca550 5043 {
Azure.IoT Build 0:6ae2f7bca550 5044 /* do nothing */
Azure.IoT Build 0:6ae2f7bca550 5045 }
Azure.IoT Build 0:6ae2f7bca550 5046 else
Azure.IoT Build 0:6ae2f7bca550 5047 {
Azure.IoT Build 0:6ae2f7bca550 5048 delivery_number delivery_id;
Azure.IoT Build 0:6ae2f7bca550 5049 if (amqpvalue_get_delivery_number(item_value, &delivery_id) != 0)
Azure.IoT Build 0:6ae2f7bca550 5050 {
Azure.IoT Build 0:6ae2f7bca550 5051 if (amqpvalue_get_type(item_value) != AMQP_TYPE_NULL)
Azure.IoT Build 0:6ae2f7bca550 5052 {
Azure.IoT Build 0:6ae2f7bca550 5053 transfer_destroy(*transfer_handle);
Azure.IoT Build 0:6ae2f7bca550 5054 result = __LINE__;
Azure.IoT Build 0:6ae2f7bca550 5055 break;
Azure.IoT Build 0:6ae2f7bca550 5056 }
Azure.IoT Build 0:6ae2f7bca550 5057 }
Azure.IoT Build 0:6ae2f7bca550 5058
Azure.IoT Build 0:6ae2f7bca550 5059 amqpvalue_destroy(item_value);
Azure.IoT Build 0:6ae2f7bca550 5060 }
Azure.IoT Build 0:6ae2f7bca550 5061 /* delivery-tag */
Azure.IoT Build 0:6ae2f7bca550 5062 item_value = amqpvalue_get_list_item(list_value, 2);
Azure.IoT Build 0:6ae2f7bca550 5063 if (item_value == NULL)
Azure.IoT Build 0:6ae2f7bca550 5064 {
Azure.IoT Build 0:6ae2f7bca550 5065 /* do nothing */
Azure.IoT Build 0:6ae2f7bca550 5066 }
Azure.IoT Build 0:6ae2f7bca550 5067 else
Azure.IoT Build 0:6ae2f7bca550 5068 {
Azure.IoT Build 0:6ae2f7bca550 5069 delivery_tag delivery_tag;
Azure.IoT Build 0:6ae2f7bca550 5070 if (amqpvalue_get_delivery_tag(item_value, &delivery_tag) != 0)
Azure.IoT Build 0:6ae2f7bca550 5071 {
Azure.IoT Build 0:6ae2f7bca550 5072 if (amqpvalue_get_type(item_value) != AMQP_TYPE_NULL)
Azure.IoT Build 0:6ae2f7bca550 5073 {
Azure.IoT Build 0:6ae2f7bca550 5074 transfer_destroy(*transfer_handle);
Azure.IoT Build 0:6ae2f7bca550 5075 result = __LINE__;
Azure.IoT Build 0:6ae2f7bca550 5076 break;
Azure.IoT Build 0:6ae2f7bca550 5077 }
Azure.IoT Build 0:6ae2f7bca550 5078 }
Azure.IoT Build 0:6ae2f7bca550 5079
Azure.IoT Build 0:6ae2f7bca550 5080 amqpvalue_destroy(item_value);
Azure.IoT Build 0:6ae2f7bca550 5081 }
Azure.IoT Build 0:6ae2f7bca550 5082 /* message-format */
Azure.IoT Build 0:6ae2f7bca550 5083 item_value = amqpvalue_get_list_item(list_value, 3);
Azure.IoT Build 0:6ae2f7bca550 5084 if (item_value == NULL)
Azure.IoT Build 0:6ae2f7bca550 5085 {
Azure.IoT Build 0:6ae2f7bca550 5086 /* do nothing */
Azure.IoT Build 0:6ae2f7bca550 5087 }
Azure.IoT Build 0:6ae2f7bca550 5088 else
Azure.IoT Build 0:6ae2f7bca550 5089 {
Azure.IoT Build 0:6ae2f7bca550 5090 message_format message_format;
Azure.IoT Build 0:6ae2f7bca550 5091 if (amqpvalue_get_message_format(item_value, &message_format) != 0)
Azure.IoT Build 0:6ae2f7bca550 5092 {
Azure.IoT Build 0:6ae2f7bca550 5093 if (amqpvalue_get_type(item_value) != AMQP_TYPE_NULL)
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
Azure.IoT Build 0:6ae2f7bca550 5101 amqpvalue_destroy(item_value);
Azure.IoT Build 0:6ae2f7bca550 5102 }
Azure.IoT Build 0:6ae2f7bca550 5103 /* settled */
Azure.IoT Build 0:6ae2f7bca550 5104 item_value = amqpvalue_get_list_item(list_value, 4);
Azure.IoT Build 0:6ae2f7bca550 5105 if (item_value == NULL)
Azure.IoT Build 0:6ae2f7bca550 5106 {
Azure.IoT Build 0:6ae2f7bca550 5107 /* do nothing */
Azure.IoT Build 0:6ae2f7bca550 5108 }
Azure.IoT Build 0:6ae2f7bca550 5109 else
Azure.IoT Build 0:6ae2f7bca550 5110 {
Azure.IoT Build 0:6ae2f7bca550 5111 bool settled;
Azure.IoT Build 0:6ae2f7bca550 5112 if (amqpvalue_get_boolean(item_value, &settled) != 0)
Azure.IoT Build 0:6ae2f7bca550 5113 {
Azure.IoT Build 0:6ae2f7bca550 5114 if (amqpvalue_get_type(item_value) != AMQP_TYPE_NULL)
Azure.IoT Build 0:6ae2f7bca550 5115 {
Azure.IoT Build 0:6ae2f7bca550 5116 transfer_destroy(*transfer_handle);
Azure.IoT Build 0:6ae2f7bca550 5117 result = __LINE__;
Azure.IoT Build 0:6ae2f7bca550 5118 break;
Azure.IoT Build 0:6ae2f7bca550 5119 }
Azure.IoT Build 0:6ae2f7bca550 5120 }
Azure.IoT Build 0:6ae2f7bca550 5121
Azure.IoT Build 0:6ae2f7bca550 5122 amqpvalue_destroy(item_value);
Azure.IoT Build 0:6ae2f7bca550 5123 }
Azure.IoT Build 0:6ae2f7bca550 5124 /* more */
Azure.IoT Build 0:6ae2f7bca550 5125 item_value = amqpvalue_get_list_item(list_value, 5);
Azure.IoT Build 0:6ae2f7bca550 5126 if (item_value == NULL)
Azure.IoT Build 0:6ae2f7bca550 5127 {
Azure.IoT Build 0:6ae2f7bca550 5128 /* do nothing */
Azure.IoT Build 0:6ae2f7bca550 5129 }
Azure.IoT Build 0:6ae2f7bca550 5130 else
Azure.IoT Build 0:6ae2f7bca550 5131 {
Azure.IoT Build 0:6ae2f7bca550 5132 bool more;
Azure.IoT Build 0:6ae2f7bca550 5133 if (amqpvalue_get_boolean(item_value, &more) != 0)
Azure.IoT Build 0:6ae2f7bca550 5134 {
Azure.IoT Build 0:6ae2f7bca550 5135 if (amqpvalue_get_type(item_value) != AMQP_TYPE_NULL)
Azure.IoT Build 0:6ae2f7bca550 5136 {
Azure.IoT Build 0:6ae2f7bca550 5137 transfer_destroy(*transfer_handle);
Azure.IoT Build 0:6ae2f7bca550 5138 result = __LINE__;
Azure.IoT Build 0:6ae2f7bca550 5139 break;
Azure.IoT Build 0:6ae2f7bca550 5140 }
Azure.IoT Build 0:6ae2f7bca550 5141 }
Azure.IoT Build 0:6ae2f7bca550 5142
Azure.IoT Build 0:6ae2f7bca550 5143 amqpvalue_destroy(item_value);
Azure.IoT Build 0:6ae2f7bca550 5144 }
Azure.IoT Build 0:6ae2f7bca550 5145 /* rcv-settle-mode */
Azure.IoT Build 0:6ae2f7bca550 5146 item_value = amqpvalue_get_list_item(list_value, 6);
Azure.IoT Build 0:6ae2f7bca550 5147 if (item_value == NULL)
Azure.IoT Build 0:6ae2f7bca550 5148 {
Azure.IoT Build 0:6ae2f7bca550 5149 /* do nothing */
Azure.IoT Build 0:6ae2f7bca550 5150 }
Azure.IoT Build 0:6ae2f7bca550 5151 else
Azure.IoT Build 0:6ae2f7bca550 5152 {
Azure.IoT Build 0:6ae2f7bca550 5153 receiver_settle_mode rcv_settle_mode;
Azure.IoT Build 0:6ae2f7bca550 5154 if (amqpvalue_get_receiver_settle_mode(item_value, &rcv_settle_mode) != 0)
Azure.IoT Build 0:6ae2f7bca550 5155 {
Azure.IoT Build 0:6ae2f7bca550 5156 if (amqpvalue_get_type(item_value) != AMQP_TYPE_NULL)
Azure.IoT Build 0:6ae2f7bca550 5157 {
Azure.IoT Build 0:6ae2f7bca550 5158 transfer_destroy(*transfer_handle);
Azure.IoT Build 0:6ae2f7bca550 5159 result = __LINE__;
Azure.IoT Build 0:6ae2f7bca550 5160 break;
Azure.IoT Build 0:6ae2f7bca550 5161 }
Azure.IoT Build 0:6ae2f7bca550 5162 }
Azure.IoT Build 0:6ae2f7bca550 5163
Azure.IoT Build 0:6ae2f7bca550 5164 amqpvalue_destroy(item_value);
Azure.IoT Build 0:6ae2f7bca550 5165 }
Azure.IoT Build 0:6ae2f7bca550 5166 /* state */
Azure.IoT Build 0:6ae2f7bca550 5167 item_value = amqpvalue_get_list_item(list_value, 7);
Azure.IoT Build 0:6ae2f7bca550 5168 if (item_value == NULL)
Azure.IoT Build 0:6ae2f7bca550 5169 {
Azure.IoT Build 0:6ae2f7bca550 5170 /* do nothing */
Azure.IoT Build 0:6ae2f7bca550 5171 }
Azure.IoT Build 0:6ae2f7bca550 5172 else
Azure.IoT Build 0:6ae2f7bca550 5173 {
Azure.IoT Build 0:6ae2f7bca550 5174 amqpvalue_destroy(item_value);
Azure.IoT Build 0:6ae2f7bca550 5175 }
Azure.IoT Build 0:6ae2f7bca550 5176 /* resume */
Azure.IoT Build 0:6ae2f7bca550 5177 item_value = amqpvalue_get_list_item(list_value, 8);
Azure.IoT Build 0:6ae2f7bca550 5178 if (item_value == NULL)
Azure.IoT Build 0:6ae2f7bca550 5179 {
Azure.IoT Build 0:6ae2f7bca550 5180 /* do nothing */
Azure.IoT Build 0:6ae2f7bca550 5181 }
Azure.IoT Build 0:6ae2f7bca550 5182 else
Azure.IoT Build 0:6ae2f7bca550 5183 {
Azure.IoT Build 0:6ae2f7bca550 5184 bool resume;
Azure.IoT Build 0:6ae2f7bca550 5185 if (amqpvalue_get_boolean(item_value, &resume) != 0)
Azure.IoT Build 0:6ae2f7bca550 5186 {
Azure.IoT Build 0:6ae2f7bca550 5187 if (amqpvalue_get_type(item_value) != AMQP_TYPE_NULL)
Azure.IoT Build 0:6ae2f7bca550 5188 {
Azure.IoT Build 0:6ae2f7bca550 5189 transfer_destroy(*transfer_handle);
Azure.IoT Build 0:6ae2f7bca550 5190 result = __LINE__;
Azure.IoT Build 0:6ae2f7bca550 5191 break;
Azure.IoT Build 0:6ae2f7bca550 5192 }
Azure.IoT Build 0:6ae2f7bca550 5193 }
Azure.IoT Build 0:6ae2f7bca550 5194
Azure.IoT Build 0:6ae2f7bca550 5195 amqpvalue_destroy(item_value);
Azure.IoT Build 0:6ae2f7bca550 5196 }
Azure.IoT Build 0:6ae2f7bca550 5197 /* aborted */
Azure.IoT Build 0:6ae2f7bca550 5198 item_value = amqpvalue_get_list_item(list_value, 9);
Azure.IoT Build 0:6ae2f7bca550 5199 if (item_value == NULL)
Azure.IoT Build 0:6ae2f7bca550 5200 {
Azure.IoT Build 0:6ae2f7bca550 5201 /* do nothing */
Azure.IoT Build 0:6ae2f7bca550 5202 }
Azure.IoT Build 0:6ae2f7bca550 5203 else
Azure.IoT Build 0:6ae2f7bca550 5204 {
Azure.IoT Build 0:6ae2f7bca550 5205 bool aborted;
Azure.IoT Build 0:6ae2f7bca550 5206 if (amqpvalue_get_boolean(item_value, &aborted) != 0)
Azure.IoT Build 0:6ae2f7bca550 5207 {
Azure.IoT Build 0:6ae2f7bca550 5208 if (amqpvalue_get_type(item_value) != AMQP_TYPE_NULL)
Azure.IoT Build 0:6ae2f7bca550 5209 {
Azure.IoT Build 0:6ae2f7bca550 5210 transfer_destroy(*transfer_handle);
Azure.IoT Build 0:6ae2f7bca550 5211 result = __LINE__;
Azure.IoT Build 0:6ae2f7bca550 5212 break;
Azure.IoT Build 0:6ae2f7bca550 5213 }
Azure.IoT Build 0:6ae2f7bca550 5214 }
Azure.IoT Build 0:6ae2f7bca550 5215
Azure.IoT Build 0:6ae2f7bca550 5216 amqpvalue_destroy(item_value);
Azure.IoT Build 0:6ae2f7bca550 5217 }
Azure.IoT Build 0:6ae2f7bca550 5218 /* batchable */
Azure.IoT Build 0:6ae2f7bca550 5219 item_value = amqpvalue_get_list_item(list_value, 10);
Azure.IoT Build 0:6ae2f7bca550 5220 if (item_value == NULL)
Azure.IoT Build 0:6ae2f7bca550 5221 {
Azure.IoT Build 0:6ae2f7bca550 5222 /* do nothing */
Azure.IoT Build 0:6ae2f7bca550 5223 }
Azure.IoT Build 0:6ae2f7bca550 5224 else
Azure.IoT Build 0:6ae2f7bca550 5225 {
Azure.IoT Build 0:6ae2f7bca550 5226 bool batchable;
Azure.IoT Build 0:6ae2f7bca550 5227 if (amqpvalue_get_boolean(item_value, &batchable) != 0)
Azure.IoT Build 0:6ae2f7bca550 5228 {
Azure.IoT Build 0:6ae2f7bca550 5229 if (amqpvalue_get_type(item_value) != AMQP_TYPE_NULL)
Azure.IoT Build 0:6ae2f7bca550 5230 {
Azure.IoT Build 0:6ae2f7bca550 5231 transfer_destroy(*transfer_handle);
Azure.IoT Build 0:6ae2f7bca550 5232 result = __LINE__;
Azure.IoT Build 0:6ae2f7bca550 5233 break;
Azure.IoT Build 0:6ae2f7bca550 5234 }
Azure.IoT Build 0:6ae2f7bca550 5235 }
Azure.IoT Build 0:6ae2f7bca550 5236
Azure.IoT Build 0:6ae2f7bca550 5237 amqpvalue_destroy(item_value);
Azure.IoT Build 0:6ae2f7bca550 5238 }
Azure.IoT Build 0:6ae2f7bca550 5239
Azure.IoT Build 0:6ae2f7bca550 5240 transfer_instance->composite_value = amqpvalue_clone(value);
Azure.IoT Build 0:6ae2f7bca550 5241
Azure.IoT Build 0:6ae2f7bca550 5242 result = 0;
Azure.IoT Build 0:6ae2f7bca550 5243 } while (0);
Azure.IoT Build 0:6ae2f7bca550 5244 }
Azure.IoT Build 0:6ae2f7bca550 5245 }
Azure.IoT Build 0:6ae2f7bca550 5246
Azure.IoT Build 0:6ae2f7bca550 5247 return result;
Azure.IoT Build 0:6ae2f7bca550 5248 }
Azure.IoT Build 0:6ae2f7bca550 5249
Azure.IoT Build 0:6ae2f7bca550 5250 int transfer_get_handle(TRANSFER_HANDLE transfer, handle* handle_value)
Azure.IoT Build 0:6ae2f7bca550 5251 {
Azure.IoT Build 0:6ae2f7bca550 5252 int result;
Azure.IoT Build 0:6ae2f7bca550 5253
Azure.IoT Build 0:6ae2f7bca550 5254 if (transfer == NULL)
Azure.IoT Build 0:6ae2f7bca550 5255 {
Azure.IoT Build 0:6ae2f7bca550 5256 result = __LINE__;
Azure.IoT Build 0:6ae2f7bca550 5257 }
Azure.IoT Build 0:6ae2f7bca550 5258 else
Azure.IoT Build 0:6ae2f7bca550 5259 {
Azure.IoT Build 0:6ae2f7bca550 5260 TRANSFER_INSTANCE* transfer_instance = (TRANSFER_INSTANCE*)transfer;
Azure.IoT Build 0:6ae2f7bca550 5261 AMQP_VALUE item_value = amqpvalue_get_composite_item_in_place(transfer_instance->composite_value, 0);
Azure.IoT Build 0:6ae2f7bca550 5262 if (item_value == NULL)
Azure.IoT Build 0:6ae2f7bca550 5263 {
Azure.IoT Build 0:6ae2f7bca550 5264 result = __LINE__;
Azure.IoT Build 0:6ae2f7bca550 5265 }
Azure.IoT Build 0:6ae2f7bca550 5266 else
Azure.IoT Build 0:6ae2f7bca550 5267 {
Azure.IoT Build 0:6ae2f7bca550 5268 if (amqpvalue_get_handle(item_value, handle_value) != 0)
Azure.IoT Build 0:6ae2f7bca550 5269 {
Azure.IoT Build 0:6ae2f7bca550 5270 result = __LINE__;
Azure.IoT Build 0:6ae2f7bca550 5271 }
Azure.IoT Build 0:6ae2f7bca550 5272 else
Azure.IoT Build 0:6ae2f7bca550 5273 {
Azure.IoT Build 0:6ae2f7bca550 5274 result = 0;
Azure.IoT Build 0:6ae2f7bca550 5275 }
Azure.IoT Build 0:6ae2f7bca550 5276 }
Azure.IoT Build 0:6ae2f7bca550 5277 }
Azure.IoT Build 0:6ae2f7bca550 5278
Azure.IoT Build 0:6ae2f7bca550 5279 return result;
Azure.IoT Build 0:6ae2f7bca550 5280 }
Azure.IoT Build 0:6ae2f7bca550 5281
Azure.IoT Build 0:6ae2f7bca550 5282 int transfer_set_handle(TRANSFER_HANDLE transfer, handle handle_value)
Azure.IoT Build 0:6ae2f7bca550 5283 {
Azure.IoT Build 0:6ae2f7bca550 5284 int result;
Azure.IoT Build 0:6ae2f7bca550 5285
Azure.IoT Build 0:6ae2f7bca550 5286 if (transfer == NULL)
Azure.IoT Build 0:6ae2f7bca550 5287 {
Azure.IoT Build 0:6ae2f7bca550 5288 result = __LINE__;
Azure.IoT Build 0:6ae2f7bca550 5289 }
Azure.IoT Build 0:6ae2f7bca550 5290 else
Azure.IoT Build 0:6ae2f7bca550 5291 {
Azure.IoT Build 0:6ae2f7bca550 5292 TRANSFER_INSTANCE* transfer_instance = (TRANSFER_INSTANCE*)transfer;
Azure.IoT Build 0:6ae2f7bca550 5293 AMQP_VALUE handle_amqp_value = amqpvalue_create_handle(handle_value);
Azure.IoT Build 0:6ae2f7bca550 5294 if (handle_amqp_value == NULL)
Azure.IoT Build 0:6ae2f7bca550 5295 {
Azure.IoT Build 0:6ae2f7bca550 5296 result = __LINE__;
Azure.IoT Build 0:6ae2f7bca550 5297 }
Azure.IoT Build 0:6ae2f7bca550 5298 else
Azure.IoT Build 0:6ae2f7bca550 5299 {
Azure.IoT Build 0:6ae2f7bca550 5300 if (amqpvalue_set_composite_item(transfer_instance->composite_value, 0, handle_amqp_value) != 0)
Azure.IoT Build 0:6ae2f7bca550 5301 {
Azure.IoT Build 0:6ae2f7bca550 5302 result = __LINE__;
Azure.IoT Build 0:6ae2f7bca550 5303 }
Azure.IoT Build 0:6ae2f7bca550 5304 else
Azure.IoT Build 0:6ae2f7bca550 5305 {
Azure.IoT Build 0:6ae2f7bca550 5306 result = 0;
Azure.IoT Build 0:6ae2f7bca550 5307 }
Azure.IoT Build 0:6ae2f7bca550 5308
Azure.IoT Build 0:6ae2f7bca550 5309 amqpvalue_destroy(handle_amqp_value);
Azure.IoT Build 0:6ae2f7bca550 5310 }
Azure.IoT Build 0:6ae2f7bca550 5311 }
Azure.IoT Build 0:6ae2f7bca550 5312
Azure.IoT Build 0:6ae2f7bca550 5313 return result;
Azure.IoT Build 0:6ae2f7bca550 5314 }
Azure.IoT Build 0:6ae2f7bca550 5315
Azure.IoT Build 0:6ae2f7bca550 5316 int transfer_get_delivery_id(TRANSFER_HANDLE transfer, delivery_number* delivery_id_value)
Azure.IoT Build 0:6ae2f7bca550 5317 {
Azure.IoT Build 0:6ae2f7bca550 5318 int result;
Azure.IoT Build 0:6ae2f7bca550 5319
Azure.IoT Build 0:6ae2f7bca550 5320 if (transfer == NULL)
Azure.IoT Build 0:6ae2f7bca550 5321 {
Azure.IoT Build 0:6ae2f7bca550 5322 result = __LINE__;
Azure.IoT Build 0:6ae2f7bca550 5323 }
Azure.IoT Build 0:6ae2f7bca550 5324 else
Azure.IoT Build 0:6ae2f7bca550 5325 {
Azure.IoT Build 0:6ae2f7bca550 5326 TRANSFER_INSTANCE* transfer_instance = (TRANSFER_INSTANCE*)transfer;
Azure.IoT Build 0:6ae2f7bca550 5327 AMQP_VALUE item_value = amqpvalue_get_composite_item_in_place(transfer_instance->composite_value, 1);
Azure.IoT Build 0:6ae2f7bca550 5328 if (item_value == NULL)
Azure.IoT Build 0:6ae2f7bca550 5329 {
Azure.IoT Build 0:6ae2f7bca550 5330 result = __LINE__;
Azure.IoT Build 0:6ae2f7bca550 5331 }
Azure.IoT Build 0:6ae2f7bca550 5332 else
Azure.IoT Build 0:6ae2f7bca550 5333 {
Azure.IoT Build 0:6ae2f7bca550 5334 if (amqpvalue_get_delivery_number(item_value, delivery_id_value) != 0)
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 result = 0;
Azure.IoT Build 0:6ae2f7bca550 5341 }
Azure.IoT Build 0:6ae2f7bca550 5342 }
Azure.IoT Build 0:6ae2f7bca550 5343 }
Azure.IoT Build 0:6ae2f7bca550 5344
Azure.IoT Build 0:6ae2f7bca550 5345 return result;
Azure.IoT Build 0:6ae2f7bca550 5346 }
Azure.IoT Build 0:6ae2f7bca550 5347
Azure.IoT Build 0:6ae2f7bca550 5348 int transfer_set_delivery_id(TRANSFER_HANDLE transfer, delivery_number delivery_id_value)
Azure.IoT Build 0:6ae2f7bca550 5349 {
Azure.IoT Build 0:6ae2f7bca550 5350 int result;
Azure.IoT Build 0:6ae2f7bca550 5351
Azure.IoT Build 0:6ae2f7bca550 5352 if (transfer == NULL)
Azure.IoT Build 0:6ae2f7bca550 5353 {
Azure.IoT Build 0:6ae2f7bca550 5354 result = __LINE__;
Azure.IoT Build 0:6ae2f7bca550 5355 }
Azure.IoT Build 0:6ae2f7bca550 5356 else
Azure.IoT Build 0:6ae2f7bca550 5357 {
Azure.IoT Build 0:6ae2f7bca550 5358 TRANSFER_INSTANCE* transfer_instance = (TRANSFER_INSTANCE*)transfer;
Azure.IoT Build 0:6ae2f7bca550 5359 AMQP_VALUE delivery_id_amqp_value = amqpvalue_create_delivery_number(delivery_id_value);
Azure.IoT Build 0:6ae2f7bca550 5360 if (delivery_id_amqp_value == NULL)
Azure.IoT Build 0:6ae2f7bca550 5361 {
Azure.IoT Build 0:6ae2f7bca550 5362 result = __LINE__;
Azure.IoT Build 0:6ae2f7bca550 5363 }
Azure.IoT Build 0:6ae2f7bca550 5364 else
Azure.IoT Build 0:6ae2f7bca550 5365 {
Azure.IoT Build 0:6ae2f7bca550 5366 if (amqpvalue_set_composite_item(transfer_instance->composite_value, 1, delivery_id_amqp_value) != 0)
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 result = 0;
Azure.IoT Build 0:6ae2f7bca550 5373 }
Azure.IoT Build 0:6ae2f7bca550 5374
Azure.IoT Build 0:6ae2f7bca550 5375 amqpvalue_destroy(delivery_id_amqp_value);
Azure.IoT Build 0:6ae2f7bca550 5376 }
Azure.IoT Build 0:6ae2f7bca550 5377 }
Azure.IoT Build 0:6ae2f7bca550 5378
Azure.IoT Build 0:6ae2f7bca550 5379 return result;
Azure.IoT Build 0:6ae2f7bca550 5380 }
Azure.IoT Build 0:6ae2f7bca550 5381
Azure.IoT Build 0:6ae2f7bca550 5382 int transfer_get_delivery_tag(TRANSFER_HANDLE transfer, delivery_tag* delivery_tag_value)
Azure.IoT Build 0:6ae2f7bca550 5383 {
Azure.IoT Build 0:6ae2f7bca550 5384 int result;
Azure.IoT Build 0:6ae2f7bca550 5385
Azure.IoT Build 0:6ae2f7bca550 5386 if (transfer == NULL)
Azure.IoT Build 0:6ae2f7bca550 5387 {
Azure.IoT Build 0:6ae2f7bca550 5388 result = __LINE__;
Azure.IoT Build 0:6ae2f7bca550 5389 }
Azure.IoT Build 0:6ae2f7bca550 5390 else
Azure.IoT Build 0:6ae2f7bca550 5391 {
Azure.IoT Build 0:6ae2f7bca550 5392 TRANSFER_INSTANCE* transfer_instance = (TRANSFER_INSTANCE*)transfer;
Azure.IoT Build 0:6ae2f7bca550 5393 AMQP_VALUE item_value = amqpvalue_get_composite_item_in_place(transfer_instance->composite_value, 2);
Azure.IoT Build 0:6ae2f7bca550 5394 if (item_value == NULL)
Azure.IoT Build 0:6ae2f7bca550 5395 {
Azure.IoT Build 0:6ae2f7bca550 5396 result = __LINE__;
Azure.IoT Build 0:6ae2f7bca550 5397 }
Azure.IoT Build 0:6ae2f7bca550 5398 else
Azure.IoT Build 0:6ae2f7bca550 5399 {
Azure.IoT Build 0:6ae2f7bca550 5400 if (amqpvalue_get_delivery_tag(item_value, delivery_tag_value) != 0)
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 result = 0;
Azure.IoT Build 0:6ae2f7bca550 5407 }
Azure.IoT Build 0:6ae2f7bca550 5408 }
Azure.IoT Build 0:6ae2f7bca550 5409 }
Azure.IoT Build 0:6ae2f7bca550 5410
Azure.IoT Build 0:6ae2f7bca550 5411 return result;
Azure.IoT Build 0:6ae2f7bca550 5412 }
Azure.IoT Build 0:6ae2f7bca550 5413
Azure.IoT Build 0:6ae2f7bca550 5414 int transfer_set_delivery_tag(TRANSFER_HANDLE transfer, delivery_tag delivery_tag_value)
Azure.IoT Build 0:6ae2f7bca550 5415 {
Azure.IoT Build 0:6ae2f7bca550 5416 int result;
Azure.IoT Build 0:6ae2f7bca550 5417
Azure.IoT Build 0:6ae2f7bca550 5418 if (transfer == NULL)
Azure.IoT Build 0:6ae2f7bca550 5419 {
Azure.IoT Build 0:6ae2f7bca550 5420 result = __LINE__;
Azure.IoT Build 0:6ae2f7bca550 5421 }
Azure.IoT Build 0:6ae2f7bca550 5422 else
Azure.IoT Build 0:6ae2f7bca550 5423 {
Azure.IoT Build 0:6ae2f7bca550 5424 TRANSFER_INSTANCE* transfer_instance = (TRANSFER_INSTANCE*)transfer;
Azure.IoT Build 0:6ae2f7bca550 5425 AMQP_VALUE delivery_tag_amqp_value = amqpvalue_create_delivery_tag(delivery_tag_value);
Azure.IoT Build 0:6ae2f7bca550 5426 if (delivery_tag_amqp_value == NULL)
Azure.IoT Build 0:6ae2f7bca550 5427 {
Azure.IoT Build 0:6ae2f7bca550 5428 result = __LINE__;
Azure.IoT Build 0:6ae2f7bca550 5429 }
Azure.IoT Build 0:6ae2f7bca550 5430 else
Azure.IoT Build 0:6ae2f7bca550 5431 {
Azure.IoT Build 0:6ae2f7bca550 5432 if (amqpvalue_set_composite_item(transfer_instance->composite_value, 2, delivery_tag_amqp_value) != 0)
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 result = 0;
Azure.IoT Build 0:6ae2f7bca550 5439 }
Azure.IoT Build 0:6ae2f7bca550 5440
Azure.IoT Build 0:6ae2f7bca550 5441 amqpvalue_destroy(delivery_tag_amqp_value);
Azure.IoT Build 0:6ae2f7bca550 5442 }
Azure.IoT Build 0:6ae2f7bca550 5443 }
Azure.IoT Build 0:6ae2f7bca550 5444
Azure.IoT Build 0:6ae2f7bca550 5445 return result;
Azure.IoT Build 0:6ae2f7bca550 5446 }
Azure.IoT Build 0:6ae2f7bca550 5447
Azure.IoT Build 0:6ae2f7bca550 5448 int transfer_get_message_format(TRANSFER_HANDLE transfer, message_format* message_format_value)
Azure.IoT Build 0:6ae2f7bca550 5449 {
Azure.IoT Build 0:6ae2f7bca550 5450 int result;
Azure.IoT Build 0:6ae2f7bca550 5451
Azure.IoT Build 0:6ae2f7bca550 5452 if (transfer == NULL)
Azure.IoT Build 0:6ae2f7bca550 5453 {
Azure.IoT Build 0:6ae2f7bca550 5454 result = __LINE__;
Azure.IoT Build 0:6ae2f7bca550 5455 }
Azure.IoT Build 0:6ae2f7bca550 5456 else
Azure.IoT Build 0:6ae2f7bca550 5457 {
Azure.IoT Build 0:6ae2f7bca550 5458 TRANSFER_INSTANCE* transfer_instance = (TRANSFER_INSTANCE*)transfer;
Azure.IoT Build 0:6ae2f7bca550 5459 AMQP_VALUE item_value = amqpvalue_get_composite_item_in_place(transfer_instance->composite_value, 3);
Azure.IoT Build 0:6ae2f7bca550 5460 if (item_value == NULL)
Azure.IoT Build 0:6ae2f7bca550 5461 {
Azure.IoT Build 0:6ae2f7bca550 5462 result = __LINE__;
Azure.IoT Build 0:6ae2f7bca550 5463 }
Azure.IoT Build 0:6ae2f7bca550 5464 else
Azure.IoT Build 0:6ae2f7bca550 5465 {
Azure.IoT Build 0:6ae2f7bca550 5466 if (amqpvalue_get_message_format(item_value, message_format_value) != 0)
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 result = 0;
Azure.IoT Build 0:6ae2f7bca550 5473 }
Azure.IoT Build 0:6ae2f7bca550 5474 }
Azure.IoT Build 0:6ae2f7bca550 5475 }
Azure.IoT Build 0:6ae2f7bca550 5476
Azure.IoT Build 0:6ae2f7bca550 5477 return result;
Azure.IoT Build 0:6ae2f7bca550 5478 }
Azure.IoT Build 0:6ae2f7bca550 5479
Azure.IoT Build 0:6ae2f7bca550 5480 int transfer_set_message_format(TRANSFER_HANDLE transfer, message_format message_format_value)
Azure.IoT Build 0:6ae2f7bca550 5481 {
Azure.IoT Build 0:6ae2f7bca550 5482 int result;
Azure.IoT Build 0:6ae2f7bca550 5483
Azure.IoT Build 0:6ae2f7bca550 5484 if (transfer == NULL)
Azure.IoT Build 0:6ae2f7bca550 5485 {
Azure.IoT Build 0:6ae2f7bca550 5486 result = __LINE__;
Azure.IoT Build 0:6ae2f7bca550 5487 }
Azure.IoT Build 0:6ae2f7bca550 5488 else
Azure.IoT Build 0:6ae2f7bca550 5489 {
Azure.IoT Build 0:6ae2f7bca550 5490 TRANSFER_INSTANCE* transfer_instance = (TRANSFER_INSTANCE*)transfer;
Azure.IoT Build 0:6ae2f7bca550 5491 AMQP_VALUE message_format_amqp_value = amqpvalue_create_message_format(message_format_value);
Azure.IoT Build 0:6ae2f7bca550 5492 if (message_format_amqp_value == NULL)
Azure.IoT Build 0:6ae2f7bca550 5493 {
Azure.IoT Build 0:6ae2f7bca550 5494 result = __LINE__;
Azure.IoT Build 0:6ae2f7bca550 5495 }
Azure.IoT Build 0:6ae2f7bca550 5496 else
Azure.IoT Build 0:6ae2f7bca550 5497 {
Azure.IoT Build 0:6ae2f7bca550 5498 if (amqpvalue_set_composite_item(transfer_instance->composite_value, 3, message_format_amqp_value) != 0)
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 result = 0;
Azure.IoT Build 0:6ae2f7bca550 5505 }
Azure.IoT Build 0:6ae2f7bca550 5506
Azure.IoT Build 0:6ae2f7bca550 5507 amqpvalue_destroy(message_format_amqp_value);
Azure.IoT Build 0:6ae2f7bca550 5508 }
Azure.IoT Build 0:6ae2f7bca550 5509 }
Azure.IoT Build 0:6ae2f7bca550 5510
Azure.IoT Build 0:6ae2f7bca550 5511 return result;
Azure.IoT Build 0:6ae2f7bca550 5512 }
Azure.IoT Build 0:6ae2f7bca550 5513
Azure.IoT Build 0:6ae2f7bca550 5514 int transfer_get_settled(TRANSFER_HANDLE transfer, bool* settled_value)
Azure.IoT Build 0:6ae2f7bca550 5515 {
Azure.IoT Build 0:6ae2f7bca550 5516 int result;
Azure.IoT Build 0:6ae2f7bca550 5517
Azure.IoT Build 0:6ae2f7bca550 5518 if (transfer == NULL)
Azure.IoT Build 0:6ae2f7bca550 5519 {
Azure.IoT Build 0:6ae2f7bca550 5520 result = __LINE__;
Azure.IoT Build 0:6ae2f7bca550 5521 }
Azure.IoT Build 0:6ae2f7bca550 5522 else
Azure.IoT Build 0:6ae2f7bca550 5523 {
Azure.IoT Build 0:6ae2f7bca550 5524 TRANSFER_INSTANCE* transfer_instance = (TRANSFER_INSTANCE*)transfer;
Azure.IoT Build 0:6ae2f7bca550 5525 AMQP_VALUE item_value = amqpvalue_get_composite_item_in_place(transfer_instance->composite_value, 4);
Azure.IoT Build 0:6ae2f7bca550 5526 if (item_value == NULL)
Azure.IoT Build 0:6ae2f7bca550 5527 {
Azure.IoT Build 0:6ae2f7bca550 5528 result = __LINE__;
Azure.IoT Build 0:6ae2f7bca550 5529 }
Azure.IoT Build 0:6ae2f7bca550 5530 else
Azure.IoT Build 0:6ae2f7bca550 5531 {
Azure.IoT Build 0:6ae2f7bca550 5532 if (amqpvalue_get_boolean(item_value, settled_value) != 0)
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 result = 0;
Azure.IoT Build 0:6ae2f7bca550 5539 }
Azure.IoT Build 0:6ae2f7bca550 5540 }
Azure.IoT Build 0:6ae2f7bca550 5541 }
Azure.IoT Build 0:6ae2f7bca550 5542
Azure.IoT Build 0:6ae2f7bca550 5543 return result;
Azure.IoT Build 0:6ae2f7bca550 5544 }
Azure.IoT Build 0:6ae2f7bca550 5545
Azure.IoT Build 0:6ae2f7bca550 5546 int transfer_set_settled(TRANSFER_HANDLE transfer, bool settled_value)
Azure.IoT Build 0:6ae2f7bca550 5547 {
Azure.IoT Build 0:6ae2f7bca550 5548 int result;
Azure.IoT Build 0:6ae2f7bca550 5549
Azure.IoT Build 0:6ae2f7bca550 5550 if (transfer == NULL)
Azure.IoT Build 0:6ae2f7bca550 5551 {
Azure.IoT Build 0:6ae2f7bca550 5552 result = __LINE__;
Azure.IoT Build 0:6ae2f7bca550 5553 }
Azure.IoT Build 0:6ae2f7bca550 5554 else
Azure.IoT Build 0:6ae2f7bca550 5555 {
Azure.IoT Build 0:6ae2f7bca550 5556 TRANSFER_INSTANCE* transfer_instance = (TRANSFER_INSTANCE*)transfer;
Azure.IoT Build 0:6ae2f7bca550 5557 AMQP_VALUE settled_amqp_value = amqpvalue_create_boolean(settled_value);
Azure.IoT Build 0:6ae2f7bca550 5558 if (settled_amqp_value == NULL)
Azure.IoT Build 0:6ae2f7bca550 5559 {
Azure.IoT Build 0:6ae2f7bca550 5560 result = __LINE__;
Azure.IoT Build 0:6ae2f7bca550 5561 }
Azure.IoT Build 0:6ae2f7bca550 5562 else
Azure.IoT Build 0:6ae2f7bca550 5563 {
Azure.IoT Build 0:6ae2f7bca550 5564 if (amqpvalue_set_composite_item(transfer_instance->composite_value, 4, settled_amqp_value) != 0)
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 result = 0;
Azure.IoT Build 0:6ae2f7bca550 5571 }
Azure.IoT Build 0:6ae2f7bca550 5572
Azure.IoT Build 0:6ae2f7bca550 5573 amqpvalue_destroy(settled_amqp_value);
Azure.IoT Build 0:6ae2f7bca550 5574 }
Azure.IoT Build 0:6ae2f7bca550 5575 }
Azure.IoT Build 0:6ae2f7bca550 5576
Azure.IoT Build 0:6ae2f7bca550 5577 return result;
Azure.IoT Build 0:6ae2f7bca550 5578 }
Azure.IoT Build 0:6ae2f7bca550 5579
Azure.IoT Build 0:6ae2f7bca550 5580 int transfer_get_more(TRANSFER_HANDLE transfer, bool* more_value)
Azure.IoT Build 0:6ae2f7bca550 5581 {
Azure.IoT Build 0:6ae2f7bca550 5582 int result;
Azure.IoT Build 0:6ae2f7bca550 5583
Azure.IoT Build 0:6ae2f7bca550 5584 if (transfer == NULL)
Azure.IoT Build 0:6ae2f7bca550 5585 {
Azure.IoT Build 0:6ae2f7bca550 5586 result = __LINE__;
Azure.IoT Build 0:6ae2f7bca550 5587 }
Azure.IoT Build 0:6ae2f7bca550 5588 else
Azure.IoT Build 0:6ae2f7bca550 5589 {
Azure.IoT Build 0:6ae2f7bca550 5590 TRANSFER_INSTANCE* transfer_instance = (TRANSFER_INSTANCE*)transfer;
Azure.IoT Build 0:6ae2f7bca550 5591 AMQP_VALUE item_value = amqpvalue_get_composite_item_in_place(transfer_instance->composite_value, 5);
Azure.IoT Build 0:6ae2f7bca550 5592 if (item_value == NULL)
Azure.IoT Build 0:6ae2f7bca550 5593 {
Azure.IoT Build 0:6ae2f7bca550 5594 result = __LINE__;
Azure.IoT Build 0:6ae2f7bca550 5595 }
Azure.IoT Build 0:6ae2f7bca550 5596 else
Azure.IoT Build 0:6ae2f7bca550 5597 {
Azure.IoT Build 0:6ae2f7bca550 5598 if (amqpvalue_get_boolean(item_value, more_value) != 0)
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 result = 0;
Azure.IoT Build 0:6ae2f7bca550 5605 }
Azure.IoT Build 0:6ae2f7bca550 5606 }
Azure.IoT Build 0:6ae2f7bca550 5607 }
Azure.IoT Build 0:6ae2f7bca550 5608
Azure.IoT Build 0:6ae2f7bca550 5609 return result;
Azure.IoT Build 0:6ae2f7bca550 5610 }
Azure.IoT Build 0:6ae2f7bca550 5611
Azure.IoT Build 0:6ae2f7bca550 5612 int transfer_set_more(TRANSFER_HANDLE transfer, bool more_value)
Azure.IoT Build 0:6ae2f7bca550 5613 {
Azure.IoT Build 0:6ae2f7bca550 5614 int result;
Azure.IoT Build 0:6ae2f7bca550 5615
Azure.IoT Build 0:6ae2f7bca550 5616 if (transfer == NULL)
Azure.IoT Build 0:6ae2f7bca550 5617 {
Azure.IoT Build 0:6ae2f7bca550 5618 result = __LINE__;
Azure.IoT Build 0:6ae2f7bca550 5619 }
Azure.IoT Build 0:6ae2f7bca550 5620 else
Azure.IoT Build 0:6ae2f7bca550 5621 {
Azure.IoT Build 0:6ae2f7bca550 5622 TRANSFER_INSTANCE* transfer_instance = (TRANSFER_INSTANCE*)transfer;
Azure.IoT Build 0:6ae2f7bca550 5623 AMQP_VALUE more_amqp_value = amqpvalue_create_boolean(more_value);
Azure.IoT Build 0:6ae2f7bca550 5624 if (more_amqp_value == NULL)
Azure.IoT Build 0:6ae2f7bca550 5625 {
Azure.IoT Build 0:6ae2f7bca550 5626 result = __LINE__;
Azure.IoT Build 0:6ae2f7bca550 5627 }
Azure.IoT Build 0:6ae2f7bca550 5628 else
Azure.IoT Build 0:6ae2f7bca550 5629 {
Azure.IoT Build 0:6ae2f7bca550 5630 if (amqpvalue_set_composite_item(transfer_instance->composite_value, 5, more_amqp_value) != 0)
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 result = 0;
Azure.IoT Build 0:6ae2f7bca550 5637 }
Azure.IoT Build 0:6ae2f7bca550 5638
Azure.IoT Build 0:6ae2f7bca550 5639 amqpvalue_destroy(more_amqp_value);
Azure.IoT Build 0:6ae2f7bca550 5640 }
Azure.IoT Build 0:6ae2f7bca550 5641 }
Azure.IoT Build 0:6ae2f7bca550 5642
Azure.IoT Build 0:6ae2f7bca550 5643 return result;
Azure.IoT Build 0:6ae2f7bca550 5644 }
Azure.IoT Build 0:6ae2f7bca550 5645
Azure.IoT Build 0:6ae2f7bca550 5646 int transfer_get_rcv_settle_mode(TRANSFER_HANDLE transfer, receiver_settle_mode* rcv_settle_mode_value)
Azure.IoT Build 0:6ae2f7bca550 5647 {
Azure.IoT Build 0:6ae2f7bca550 5648 int result;
Azure.IoT Build 0:6ae2f7bca550 5649
Azure.IoT Build 0:6ae2f7bca550 5650 if (transfer == NULL)
Azure.IoT Build 0:6ae2f7bca550 5651 {
Azure.IoT Build 0:6ae2f7bca550 5652 result = __LINE__;
Azure.IoT Build 0:6ae2f7bca550 5653 }
Azure.IoT Build 0:6ae2f7bca550 5654 else
Azure.IoT Build 0:6ae2f7bca550 5655 {
Azure.IoT Build 0:6ae2f7bca550 5656 TRANSFER_INSTANCE* transfer_instance = (TRANSFER_INSTANCE*)transfer;
Azure.IoT Build 0:6ae2f7bca550 5657 AMQP_VALUE item_value = amqpvalue_get_composite_item_in_place(transfer_instance->composite_value, 6);
Azure.IoT Build 0:6ae2f7bca550 5658 if (item_value == NULL)
Azure.IoT Build 0:6ae2f7bca550 5659 {
Azure.IoT Build 0:6ae2f7bca550 5660 result = __LINE__;
Azure.IoT Build 0:6ae2f7bca550 5661 }
Azure.IoT Build 0:6ae2f7bca550 5662 else
Azure.IoT Build 0:6ae2f7bca550 5663 {
Azure.IoT Build 0:6ae2f7bca550 5664 if (amqpvalue_get_receiver_settle_mode(item_value, rcv_settle_mode_value) != 0)
Azure.IoT Build 0:6ae2f7bca550 5665 {
Azure.IoT Build 0:6ae2f7bca550 5666 result = __LINE__;
Azure.IoT Build 0:6ae2f7bca550 5667 }
Azure.IoT Build 0:6ae2f7bca550 5668 else
Azure.IoT Build 0:6ae2f7bca550 5669 {
Azure.IoT Build 0:6ae2f7bca550 5670 result = 0;
Azure.IoT Build 0:6ae2f7bca550 5671 }
Azure.IoT Build 0:6ae2f7bca550 5672 }
Azure.IoT Build 0:6ae2f7bca550 5673 }
Azure.IoT Build 0:6ae2f7bca550 5674
Azure.IoT Build 0:6ae2f7bca550 5675 return result;
Azure.IoT Build 0:6ae2f7bca550 5676 }
Azure.IoT Build 0:6ae2f7bca550 5677
Azure.IoT Build 0:6ae2f7bca550 5678 int transfer_set_rcv_settle_mode(TRANSFER_HANDLE transfer, receiver_settle_mode rcv_settle_mode_value)
Azure.IoT Build 0:6ae2f7bca550 5679 {
Azure.IoT Build 0:6ae2f7bca550 5680 int result;
Azure.IoT Build 0:6ae2f7bca550 5681
Azure.IoT Build 0:6ae2f7bca550 5682 if (transfer == NULL)
Azure.IoT Build 0:6ae2f7bca550 5683 {
Azure.IoT Build 0:6ae2f7bca550 5684 result = __LINE__;
Azure.IoT Build 0:6ae2f7bca550 5685 }
Azure.IoT Build 0:6ae2f7bca550 5686 else
Azure.IoT Build 0:6ae2f7bca550 5687 {
Azure.IoT Build 0:6ae2f7bca550 5688 TRANSFER_INSTANCE* transfer_instance = (TRANSFER_INSTANCE*)transfer;
Azure.IoT Build 0:6ae2f7bca550 5689 AMQP_VALUE rcv_settle_mode_amqp_value = amqpvalue_create_receiver_settle_mode(rcv_settle_mode_value);
Azure.IoT Build 0:6ae2f7bca550 5690 if (rcv_settle_mode_amqp_value == NULL)
Azure.IoT Build 0:6ae2f7bca550 5691 {
Azure.IoT Build 0:6ae2f7bca550 5692 result = __LINE__;
Azure.IoT Build 0:6ae2f7bca550 5693 }
Azure.IoT Build 0:6ae2f7bca550 5694 else
Azure.IoT Build 0:6ae2f7bca550 5695 {
Azure.IoT Build 0:6ae2f7bca550 5696 if (amqpvalue_set_composite_item(transfer_instance->composite_value, 6, rcv_settle_mode_amqp_value) != 0)
Azure.IoT Build 0:6ae2f7bca550 5697 {
Azure.IoT Build 0:6ae2f7bca550 5698 result = __LINE__;
Azure.IoT Build 0:6ae2f7bca550 5699 }
Azure.IoT Build 0:6ae2f7bca550 5700 else
Azure.IoT Build 0:6ae2f7bca550 5701 {
Azure.IoT Build 0:6ae2f7bca550 5702 result = 0;
Azure.IoT Build 0:6ae2f7bca550 5703 }
Azure.IoT Build 0:6ae2f7bca550 5704
Azure.IoT Build 0:6ae2f7bca550 5705 amqpvalue_destroy(rcv_settle_mode_amqp_value);
Azure.IoT Build 0:6ae2f7bca550 5706 }
Azure.IoT Build 0:6ae2f7bca550 5707 }
Azure.IoT Build 0:6ae2f7bca550 5708
Azure.IoT Build 0:6ae2f7bca550 5709 return result;
Azure.IoT Build 0:6ae2f7bca550 5710 }
Azure.IoT Build 0:6ae2f7bca550 5711
Azure.IoT Build 0:6ae2f7bca550 5712 int transfer_get_state(TRANSFER_HANDLE transfer, AMQP_VALUE* state_value)
Azure.IoT Build 0:6ae2f7bca550 5713 {
Azure.IoT Build 0:6ae2f7bca550 5714 int result;
Azure.IoT Build 0:6ae2f7bca550 5715
Azure.IoT Build 0:6ae2f7bca550 5716 if (transfer == NULL)
Azure.IoT Build 0:6ae2f7bca550 5717 {
Azure.IoT Build 0:6ae2f7bca550 5718 result = __LINE__;
Azure.IoT Build 0:6ae2f7bca550 5719 }
Azure.IoT Build 0:6ae2f7bca550 5720 else
Azure.IoT Build 0:6ae2f7bca550 5721 {
Azure.IoT Build 0:6ae2f7bca550 5722 TRANSFER_INSTANCE* transfer_instance = (TRANSFER_INSTANCE*)transfer;
Azure.IoT Build 0:6ae2f7bca550 5723 AMQP_VALUE item_value = amqpvalue_get_composite_item_in_place(transfer_instance->composite_value, 7);
Azure.IoT Build 0:6ae2f7bca550 5724 if (item_value == NULL)
Azure.IoT Build 0:6ae2f7bca550 5725 {
Azure.IoT Build 0:6ae2f7bca550 5726 result = __LINE__;
Azure.IoT Build 0:6ae2f7bca550 5727 }
Azure.IoT Build 0:6ae2f7bca550 5728 else
Azure.IoT Build 0:6ae2f7bca550 5729 {
Azure.IoT Build 0:6ae2f7bca550 5730 *state_value = item_value;
Azure.IoT Build 0:6ae2f7bca550 5731 result = 0;
Azure.IoT Build 0:6ae2f7bca550 5732 }
Azure.IoT Build 0:6ae2f7bca550 5733 }
Azure.IoT Build 0:6ae2f7bca550 5734
Azure.IoT Build 0:6ae2f7bca550 5735 return result;
Azure.IoT Build 0:6ae2f7bca550 5736 }
Azure.IoT Build 0:6ae2f7bca550 5737
Azure.IoT Build 0:6ae2f7bca550 5738 int transfer_set_state(TRANSFER_HANDLE transfer, AMQP_VALUE state_value)
Azure.IoT Build 0:6ae2f7bca550 5739 {
Azure.IoT Build 0:6ae2f7bca550 5740 int result;
Azure.IoT Build 0:6ae2f7bca550 5741
Azure.IoT Build 0:6ae2f7bca550 5742 if (transfer == NULL)
Azure.IoT Build 0:6ae2f7bca550 5743 {
Azure.IoT Build 0:6ae2f7bca550 5744 result = __LINE__;
Azure.IoT Build 0:6ae2f7bca550 5745 }
Azure.IoT Build 0:6ae2f7bca550 5746 else
Azure.IoT Build 0:6ae2f7bca550 5747 {
Azure.IoT Build 0:6ae2f7bca550 5748 TRANSFER_INSTANCE* transfer_instance = (TRANSFER_INSTANCE*)transfer;
Azure.IoT Build 0:6ae2f7bca550 5749 AMQP_VALUE state_amqp_value = amqpvalue_clone(state_value);
Azure.IoT Build 0:6ae2f7bca550 5750 if (state_amqp_value == NULL)
Azure.IoT Build 0:6ae2f7bca550 5751 {
Azure.IoT Build 0:6ae2f7bca550 5752 result = __LINE__;
Azure.IoT Build 0:6ae2f7bca550 5753 }
Azure.IoT Build 0:6ae2f7bca550 5754 else
Azure.IoT Build 0:6ae2f7bca550 5755 {
Azure.IoT Build 0:6ae2f7bca550 5756 if (amqpvalue_set_composite_item(transfer_instance->composite_value, 7, state_amqp_value) != 0)
Azure.IoT Build 0:6ae2f7bca550 5757 {
Azure.IoT Build 0:6ae2f7bca550 5758 result = __LINE__;
Azure.IoT Build 0:6ae2f7bca550 5759 }
Azure.IoT Build 0:6ae2f7bca550 5760 else
Azure.IoT Build 0:6ae2f7bca550 5761 {
Azure.IoT Build 0:6ae2f7bca550 5762 result = 0;
Azure.IoT Build 0:6ae2f7bca550 5763 }
Azure.IoT Build 0:6ae2f7bca550 5764
Azure.IoT Build 0:6ae2f7bca550 5765 amqpvalue_destroy(state_amqp_value);
Azure.IoT Build 0:6ae2f7bca550 5766 }
Azure.IoT Build 0:6ae2f7bca550 5767 }
Azure.IoT Build 0:6ae2f7bca550 5768
Azure.IoT Build 0:6ae2f7bca550 5769 return result;
Azure.IoT Build 0:6ae2f7bca550 5770 }
Azure.IoT Build 0:6ae2f7bca550 5771
Azure.IoT Build 0:6ae2f7bca550 5772 int transfer_get_resume(TRANSFER_HANDLE transfer, bool* resume_value)
Azure.IoT Build 0:6ae2f7bca550 5773 {
Azure.IoT Build 0:6ae2f7bca550 5774 int result;
Azure.IoT Build 0:6ae2f7bca550 5775
Azure.IoT Build 0:6ae2f7bca550 5776 if (transfer == NULL)
Azure.IoT Build 0:6ae2f7bca550 5777 {
Azure.IoT Build 0:6ae2f7bca550 5778 result = __LINE__;
Azure.IoT Build 0:6ae2f7bca550 5779 }
Azure.IoT Build 0:6ae2f7bca550 5780 else
Azure.IoT Build 0:6ae2f7bca550 5781 {
Azure.IoT Build 0:6ae2f7bca550 5782 TRANSFER_INSTANCE* transfer_instance = (TRANSFER_INSTANCE*)transfer;
Azure.IoT Build 0:6ae2f7bca550 5783 AMQP_VALUE item_value = amqpvalue_get_composite_item_in_place(transfer_instance->composite_value, 8);
Azure.IoT Build 0:6ae2f7bca550 5784 if (item_value == NULL)
Azure.IoT Build 0:6ae2f7bca550 5785 {
Azure.IoT Build 0:6ae2f7bca550 5786 result = __LINE__;
Azure.IoT Build 0:6ae2f7bca550 5787 }
Azure.IoT Build 0:6ae2f7bca550 5788 else
Azure.IoT Build 0:6ae2f7bca550 5789 {
Azure.IoT Build 0:6ae2f7bca550 5790 if (amqpvalue_get_boolean(item_value, resume_value) != 0)
Azure.IoT Build 0:6ae2f7bca550 5791 {
Azure.IoT Build 0:6ae2f7bca550 5792 result = __LINE__;
Azure.IoT Build 0:6ae2f7bca550 5793 }
Azure.IoT Build 0:6ae2f7bca550 5794 else
Azure.IoT Build 0:6ae2f7bca550 5795 {
Azure.IoT Build 0:6ae2f7bca550 5796 result = 0;
Azure.IoT Build 0:6ae2f7bca550 5797 }
Azure.IoT Build 0:6ae2f7bca550 5798 }
Azure.IoT Build 0:6ae2f7bca550 5799 }
Azure.IoT Build 0:6ae2f7bca550 5800
Azure.IoT Build 0:6ae2f7bca550 5801 return result;
Azure.IoT Build 0:6ae2f7bca550 5802 }
Azure.IoT Build 0:6ae2f7bca550 5803
Azure.IoT Build 0:6ae2f7bca550 5804 int transfer_set_resume(TRANSFER_HANDLE transfer, bool resume_value)
Azure.IoT Build 0:6ae2f7bca550 5805 {
Azure.IoT Build 0:6ae2f7bca550 5806 int result;
Azure.IoT Build 0:6ae2f7bca550 5807
Azure.IoT Build 0:6ae2f7bca550 5808 if (transfer == NULL)
Azure.IoT Build 0:6ae2f7bca550 5809 {
Azure.IoT Build 0:6ae2f7bca550 5810 result = __LINE__;
Azure.IoT Build 0:6ae2f7bca550 5811 }
Azure.IoT Build 0:6ae2f7bca550 5812 else
Azure.IoT Build 0:6ae2f7bca550 5813 {
Azure.IoT Build 0:6ae2f7bca550 5814 TRANSFER_INSTANCE* transfer_instance = (TRANSFER_INSTANCE*)transfer;
Azure.IoT Build 0:6ae2f7bca550 5815 AMQP_VALUE resume_amqp_value = amqpvalue_create_boolean(resume_value);
Azure.IoT Build 0:6ae2f7bca550 5816 if (resume_amqp_value == NULL)
Azure.IoT Build 0:6ae2f7bca550 5817 {
Azure.IoT Build 0:6ae2f7bca550 5818 result = __LINE__;
Azure.IoT Build 0:6ae2f7bca550 5819 }
Azure.IoT Build 0:6ae2f7bca550 5820 else
Azure.IoT Build 0:6ae2f7bca550 5821 {
Azure.IoT Build 0:6ae2f7bca550 5822 if (amqpvalue_set_composite_item(transfer_instance->composite_value, 8, resume_amqp_value) != 0)
Azure.IoT Build 0:6ae2f7bca550 5823 {
Azure.IoT Build 0:6ae2f7bca550 5824 result = __LINE__;
Azure.IoT Build 0:6ae2f7bca550 5825 }
Azure.IoT Build 0:6ae2f7bca550 5826 else
Azure.IoT Build 0:6ae2f7bca550 5827 {
Azure.IoT Build 0:6ae2f7bca550 5828 result = 0;
Azure.IoT Build 0:6ae2f7bca550 5829 }
Azure.IoT Build 0:6ae2f7bca550 5830
Azure.IoT Build 0:6ae2f7bca550 5831 amqpvalue_destroy(resume_amqp_value);
Azure.IoT Build 0:6ae2f7bca550 5832 }
Azure.IoT Build 0:6ae2f7bca550 5833 }
Azure.IoT Build 0:6ae2f7bca550 5834
Azure.IoT Build 0:6ae2f7bca550 5835 return result;
Azure.IoT Build 0:6ae2f7bca550 5836 }
Azure.IoT Build 0:6ae2f7bca550 5837
Azure.IoT Build 0:6ae2f7bca550 5838 int transfer_get_aborted(TRANSFER_HANDLE transfer, bool* aborted_value)
Azure.IoT Build 0:6ae2f7bca550 5839 {
Azure.IoT Build 0:6ae2f7bca550 5840 int result;
Azure.IoT Build 0:6ae2f7bca550 5841
Azure.IoT Build 0:6ae2f7bca550 5842 if (transfer == NULL)
Azure.IoT Build 0:6ae2f7bca550 5843 {
Azure.IoT Build 0:6ae2f7bca550 5844 result = __LINE__;
Azure.IoT Build 0:6ae2f7bca550 5845 }
Azure.IoT Build 0:6ae2f7bca550 5846 else
Azure.IoT Build 0:6ae2f7bca550 5847 {
Azure.IoT Build 0:6ae2f7bca550 5848 TRANSFER_INSTANCE* transfer_instance = (TRANSFER_INSTANCE*)transfer;
Azure.IoT Build 0:6ae2f7bca550 5849 AMQP_VALUE item_value = amqpvalue_get_composite_item_in_place(transfer_instance->composite_value, 9);
Azure.IoT Build 0:6ae2f7bca550 5850 if (item_value == NULL)
Azure.IoT Build 0:6ae2f7bca550 5851 {
Azure.IoT Build 0:6ae2f7bca550 5852 result = __LINE__;
Azure.IoT Build 0:6ae2f7bca550 5853 }
Azure.IoT Build 0:6ae2f7bca550 5854 else
Azure.IoT Build 0:6ae2f7bca550 5855 {
Azure.IoT Build 0:6ae2f7bca550 5856 if (amqpvalue_get_boolean(item_value, aborted_value) != 0)
Azure.IoT Build 0:6ae2f7bca550 5857 {
Azure.IoT Build 0:6ae2f7bca550 5858 result = __LINE__;
Azure.IoT Build 0:6ae2f7bca550 5859 }
Azure.IoT Build 0:6ae2f7bca550 5860 else
Azure.IoT Build 0:6ae2f7bca550 5861 {
Azure.IoT Build 0:6ae2f7bca550 5862 result = 0;
Azure.IoT Build 0:6ae2f7bca550 5863 }
Azure.IoT Build 0:6ae2f7bca550 5864 }
Azure.IoT Build 0:6ae2f7bca550 5865 }
Azure.IoT Build 0:6ae2f7bca550 5866
Azure.IoT Build 0:6ae2f7bca550 5867 return result;
Azure.IoT Build 0:6ae2f7bca550 5868 }
Azure.IoT Build 0:6ae2f7bca550 5869
Azure.IoT Build 0:6ae2f7bca550 5870 int transfer_set_aborted(TRANSFER_HANDLE transfer, bool aborted_value)
Azure.IoT Build 0:6ae2f7bca550 5871 {
Azure.IoT Build 0:6ae2f7bca550 5872 int result;
Azure.IoT Build 0:6ae2f7bca550 5873
Azure.IoT Build 0:6ae2f7bca550 5874 if (transfer == NULL)
Azure.IoT Build 0:6ae2f7bca550 5875 {
Azure.IoT Build 0:6ae2f7bca550 5876 result = __LINE__;
Azure.IoT Build 0:6ae2f7bca550 5877 }
Azure.IoT Build 0:6ae2f7bca550 5878 else
Azure.IoT Build 0:6ae2f7bca550 5879 {
Azure.IoT Build 0:6ae2f7bca550 5880 TRANSFER_INSTANCE* transfer_instance = (TRANSFER_INSTANCE*)transfer;
Azure.IoT Build 0:6ae2f7bca550 5881 AMQP_VALUE aborted_amqp_value = amqpvalue_create_boolean(aborted_value);
Azure.IoT Build 0:6ae2f7bca550 5882 if (aborted_amqp_value == NULL)
Azure.IoT Build 0:6ae2f7bca550 5883 {
Azure.IoT Build 0:6ae2f7bca550 5884 result = __LINE__;
Azure.IoT Build 0:6ae2f7bca550 5885 }
Azure.IoT Build 0:6ae2f7bca550 5886 else
Azure.IoT Build 0:6ae2f7bca550 5887 {
Azure.IoT Build 0:6ae2f7bca550 5888 if (amqpvalue_set_composite_item(transfer_instance->composite_value, 9, aborted_amqp_value) != 0)
Azure.IoT Build 0:6ae2f7bca550 5889 {
Azure.IoT Build 0:6ae2f7bca550 5890 result = __LINE__;
Azure.IoT Build 0:6ae2f7bca550 5891 }
Azure.IoT Build 0:6ae2f7bca550 5892 else
Azure.IoT Build 0:6ae2f7bca550 5893 {
Azure.IoT Build 0:6ae2f7bca550 5894 result = 0;
Azure.IoT Build 0:6ae2f7bca550 5895 }
Azure.IoT Build 0:6ae2f7bca550 5896
Azure.IoT Build 0:6ae2f7bca550 5897 amqpvalue_destroy(aborted_amqp_value);
Azure.IoT Build 0:6ae2f7bca550 5898 }
Azure.IoT Build 0:6ae2f7bca550 5899 }
Azure.IoT Build 0:6ae2f7bca550 5900
Azure.IoT Build 0:6ae2f7bca550 5901 return result;
Azure.IoT Build 0:6ae2f7bca550 5902 }
Azure.IoT Build 0:6ae2f7bca550 5903
Azure.IoT Build 0:6ae2f7bca550 5904 int transfer_get_batchable(TRANSFER_HANDLE transfer, bool* batchable_value)
Azure.IoT Build 0:6ae2f7bca550 5905 {
Azure.IoT Build 0:6ae2f7bca550 5906 int result;
Azure.IoT Build 0:6ae2f7bca550 5907
Azure.IoT Build 0:6ae2f7bca550 5908 if (transfer == NULL)
Azure.IoT Build 0:6ae2f7bca550 5909 {
Azure.IoT Build 0:6ae2f7bca550 5910 result = __LINE__;
Azure.IoT Build 0:6ae2f7bca550 5911 }
Azure.IoT Build 0:6ae2f7bca550 5912 else
Azure.IoT Build 0:6ae2f7bca550 5913 {
Azure.IoT Build 0:6ae2f7bca550 5914 TRANSFER_INSTANCE* transfer_instance = (TRANSFER_INSTANCE*)transfer;
Azure.IoT Build 0:6ae2f7bca550 5915 AMQP_VALUE item_value = amqpvalue_get_composite_item_in_place(transfer_instance->composite_value, 10);
Azure.IoT Build 0:6ae2f7bca550 5916 if (item_value == NULL)
Azure.IoT Build 0:6ae2f7bca550 5917 {
Azure.IoT Build 0:6ae2f7bca550 5918 result = __LINE__;
Azure.IoT Build 0:6ae2f7bca550 5919 }
Azure.IoT Build 0:6ae2f7bca550 5920 else
Azure.IoT Build 0:6ae2f7bca550 5921 {
Azure.IoT Build 0:6ae2f7bca550 5922 if (amqpvalue_get_boolean(item_value, batchable_value) != 0)
Azure.IoT Build 0:6ae2f7bca550 5923 {
Azure.IoT Build 0:6ae2f7bca550 5924 result = __LINE__;
Azure.IoT Build 0:6ae2f7bca550 5925 }
Azure.IoT Build 0:6ae2f7bca550 5926 else
Azure.IoT Build 0:6ae2f7bca550 5927 {
Azure.IoT Build 0:6ae2f7bca550 5928 result = 0;
Azure.IoT Build 0:6ae2f7bca550 5929 }
Azure.IoT Build 0:6ae2f7bca550 5930 }
Azure.IoT Build 0:6ae2f7bca550 5931 }
Azure.IoT Build 0:6ae2f7bca550 5932
Azure.IoT Build 0:6ae2f7bca550 5933 return result;
Azure.IoT Build 0:6ae2f7bca550 5934 }
Azure.IoT Build 0:6ae2f7bca550 5935
Azure.IoT Build 0:6ae2f7bca550 5936 int transfer_set_batchable(TRANSFER_HANDLE transfer, bool batchable_value)
Azure.IoT Build 0:6ae2f7bca550 5937 {
Azure.IoT Build 0:6ae2f7bca550 5938 int result;
Azure.IoT Build 0:6ae2f7bca550 5939
Azure.IoT Build 0:6ae2f7bca550 5940 if (transfer == NULL)
Azure.IoT Build 0:6ae2f7bca550 5941 {
Azure.IoT Build 0:6ae2f7bca550 5942 result = __LINE__;
Azure.IoT Build 0:6ae2f7bca550 5943 }
Azure.IoT Build 0:6ae2f7bca550 5944 else
Azure.IoT Build 0:6ae2f7bca550 5945 {
Azure.IoT Build 0:6ae2f7bca550 5946 TRANSFER_INSTANCE* transfer_instance = (TRANSFER_INSTANCE*)transfer;
Azure.IoT Build 0:6ae2f7bca550 5947 AMQP_VALUE batchable_amqp_value = amqpvalue_create_boolean(batchable_value);
Azure.IoT Build 0:6ae2f7bca550 5948 if (batchable_amqp_value == NULL)
Azure.IoT Build 0:6ae2f7bca550 5949 {
Azure.IoT Build 0:6ae2f7bca550 5950 result = __LINE__;
Azure.IoT Build 0:6ae2f7bca550 5951 }
Azure.IoT Build 0:6ae2f7bca550 5952 else
Azure.IoT Build 0:6ae2f7bca550 5953 {
Azure.IoT Build 0:6ae2f7bca550 5954 if (amqpvalue_set_composite_item(transfer_instance->composite_value, 10, batchable_amqp_value) != 0)
Azure.IoT Build 0:6ae2f7bca550 5955 {
Azure.IoT Build 0:6ae2f7bca550 5956 result = __LINE__;
Azure.IoT Build 0:6ae2f7bca550 5957 }
Azure.IoT Build 0:6ae2f7bca550 5958 else
Azure.IoT Build 0:6ae2f7bca550 5959 {
Azure.IoT Build 0:6ae2f7bca550 5960 result = 0;
Azure.IoT Build 0:6ae2f7bca550 5961 }
Azure.IoT Build 0:6ae2f7bca550 5962
Azure.IoT Build 0:6ae2f7bca550 5963 amqpvalue_destroy(batchable_amqp_value);
Azure.IoT Build 0:6ae2f7bca550 5964 }
Azure.IoT Build 0:6ae2f7bca550 5965 }
Azure.IoT Build 0:6ae2f7bca550 5966
Azure.IoT Build 0:6ae2f7bca550 5967 return result;
Azure.IoT Build 0:6ae2f7bca550 5968 }
Azure.IoT Build 0:6ae2f7bca550 5969
Azure.IoT Build 0:6ae2f7bca550 5970
Azure.IoT Build 0:6ae2f7bca550 5971 /* disposition */
Azure.IoT Build 0:6ae2f7bca550 5972
Azure.IoT Build 0:6ae2f7bca550 5973 typedef struct DISPOSITION_INSTANCE_TAG
Azure.IoT Build 0:6ae2f7bca550 5974 {
Azure.IoT Build 0:6ae2f7bca550 5975 AMQP_VALUE composite_value;
Azure.IoT Build 0:6ae2f7bca550 5976 } DISPOSITION_INSTANCE;
Azure.IoT Build 0:6ae2f7bca550 5977
Azure.IoT Build 0:6ae2f7bca550 5978 static DISPOSITION_HANDLE disposition_create_internal(void)
Azure.IoT Build 0:6ae2f7bca550 5979 {
Azure.IoT Build 0:6ae2f7bca550 5980 DISPOSITION_INSTANCE* disposition_instance = (DISPOSITION_INSTANCE*)amqpalloc_malloc(sizeof(DISPOSITION_INSTANCE));
Azure.IoT Build 0:6ae2f7bca550 5981 if (disposition_instance != NULL)
Azure.IoT Build 0:6ae2f7bca550 5982 {
Azure.IoT Build 0:6ae2f7bca550 5983 disposition_instance->composite_value = NULL;
Azure.IoT Build 0:6ae2f7bca550 5984 }
Azure.IoT Build 0:6ae2f7bca550 5985
Azure.IoT Build 0:6ae2f7bca550 5986 return disposition_instance;
Azure.IoT Build 0:6ae2f7bca550 5987 }
Azure.IoT Build 0:6ae2f7bca550 5988
Azure.IoT Build 0:6ae2f7bca550 5989 DISPOSITION_HANDLE disposition_create(role role_value, delivery_number first_value)
Azure.IoT Build 0:6ae2f7bca550 5990 {
Azure.IoT Build 0:6ae2f7bca550 5991 DISPOSITION_INSTANCE* disposition_instance = (DISPOSITION_INSTANCE*)amqpalloc_malloc(sizeof(DISPOSITION_INSTANCE));
Azure.IoT Build 0:6ae2f7bca550 5992 if (disposition_instance != NULL)
Azure.IoT Build 0:6ae2f7bca550 5993 {
Azure.IoT Build 0:6ae2f7bca550 5994 disposition_instance->composite_value = amqpvalue_create_composite_with_ulong_descriptor(21);
Azure.IoT Build 0:6ae2f7bca550 5995 if (disposition_instance->composite_value == NULL)
Azure.IoT Build 0:6ae2f7bca550 5996 {
Azure.IoT Build 0:6ae2f7bca550 5997 amqpalloc_free(disposition_instance);
Azure.IoT Build 0:6ae2f7bca550 5998 disposition_instance = NULL;
Azure.IoT Build 0:6ae2f7bca550 5999 }
Azure.IoT Build 0:6ae2f7bca550 6000 else
Azure.IoT Build 0:6ae2f7bca550 6001 {
Azure.IoT Build 0:6ae2f7bca550 6002 AMQP_VALUE role_amqp_value;
Azure.IoT Build 0:6ae2f7bca550 6003 AMQP_VALUE first_amqp_value;
Azure.IoT Build 0:6ae2f7bca550 6004 int result = 0;
Azure.IoT Build 0:6ae2f7bca550 6005
Azure.IoT Build 0:6ae2f7bca550 6006 role_amqp_value = amqpvalue_create_role(role_value);
Azure.IoT Build 0:6ae2f7bca550 6007 if ((result == 0) && (amqpvalue_set_composite_item(disposition_instance->composite_value, 0, role_amqp_value) != 0))
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 first_amqp_value = amqpvalue_create_delivery_number(first_value);
Azure.IoT Build 0:6ae2f7bca550 6012 if ((result == 0) && (amqpvalue_set_composite_item(disposition_instance->composite_value, 1, first_amqp_value) != 0))
Azure.IoT Build 0:6ae2f7bca550 6013 {
Azure.IoT Build 0:6ae2f7bca550 6014 result = __LINE__;
Azure.IoT Build 0:6ae2f7bca550 6015 }
Azure.IoT Build 0:6ae2f7bca550 6016
Azure.IoT Build 0:6ae2f7bca550 6017 amqpvalue_destroy(role_amqp_value);
Azure.IoT Build 0:6ae2f7bca550 6018 amqpvalue_destroy(first_amqp_value);
Azure.IoT Build 0:6ae2f7bca550 6019 }
Azure.IoT Build 0:6ae2f7bca550 6020 }
Azure.IoT Build 0:6ae2f7bca550 6021
Azure.IoT Build 0:6ae2f7bca550 6022 return disposition_instance;
Azure.IoT Build 0:6ae2f7bca550 6023 }
Azure.IoT Build 0:6ae2f7bca550 6024
Azure.IoT Build 0:6ae2f7bca550 6025 DISPOSITION_HANDLE disposition_clone(DISPOSITION_HANDLE value)
Azure.IoT Build 0:6ae2f7bca550 6026 {
Azure.IoT Build 0:6ae2f7bca550 6027 DISPOSITION_INSTANCE* disposition_instance = (DISPOSITION_INSTANCE*)amqpalloc_malloc(sizeof(DISPOSITION_INSTANCE));
Azure.IoT Build 0:6ae2f7bca550 6028 if (disposition_instance != NULL)
Azure.IoT Build 0:6ae2f7bca550 6029 {
Azure.IoT Build 0:6ae2f7bca550 6030 disposition_instance->composite_value = amqpvalue_clone(((DISPOSITION_INSTANCE*)value)->composite_value);
Azure.IoT Build 0:6ae2f7bca550 6031 if (disposition_instance->composite_value == NULL)
Azure.IoT Build 0:6ae2f7bca550 6032 {
Azure.IoT Build 0:6ae2f7bca550 6033 amqpalloc_free(disposition_instance);
Azure.IoT Build 0:6ae2f7bca550 6034 disposition_instance = NULL;
Azure.IoT Build 0:6ae2f7bca550 6035 }
Azure.IoT Build 0:6ae2f7bca550 6036 }
Azure.IoT Build 0:6ae2f7bca550 6037
Azure.IoT Build 0:6ae2f7bca550 6038 return disposition_instance;
Azure.IoT Build 0:6ae2f7bca550 6039 }
Azure.IoT Build 0:6ae2f7bca550 6040
Azure.IoT Build 0:6ae2f7bca550 6041 void disposition_destroy(DISPOSITION_HANDLE disposition)
Azure.IoT Build 0:6ae2f7bca550 6042 {
Azure.IoT Build 0:6ae2f7bca550 6043 if (disposition != NULL)
Azure.IoT Build 0:6ae2f7bca550 6044 {
Azure.IoT Build 0:6ae2f7bca550 6045 DISPOSITION_INSTANCE* disposition_instance = (DISPOSITION_INSTANCE*)disposition;
Azure.IoT Build 0:6ae2f7bca550 6046 amqpvalue_destroy(disposition_instance->composite_value);
Azure.IoT Build 0:6ae2f7bca550 6047 amqpalloc_free(disposition_instance);
Azure.IoT Build 0:6ae2f7bca550 6048 }
Azure.IoT Build 0:6ae2f7bca550 6049 }
Azure.IoT Build 0:6ae2f7bca550 6050
Azure.IoT Build 0:6ae2f7bca550 6051 AMQP_VALUE amqpvalue_create_disposition(DISPOSITION_HANDLE disposition)
Azure.IoT Build 0:6ae2f7bca550 6052 {
Azure.IoT Build 0:6ae2f7bca550 6053 AMQP_VALUE result;
Azure.IoT Build 0:6ae2f7bca550 6054
Azure.IoT Build 0:6ae2f7bca550 6055 if (disposition == NULL)
Azure.IoT Build 0:6ae2f7bca550 6056 {
Azure.IoT Build 0:6ae2f7bca550 6057 result = NULL;
Azure.IoT Build 0:6ae2f7bca550 6058 }
Azure.IoT Build 0:6ae2f7bca550 6059 else
Azure.IoT Build 0:6ae2f7bca550 6060 {
Azure.IoT Build 0:6ae2f7bca550 6061 DISPOSITION_INSTANCE* disposition_instance = (DISPOSITION_INSTANCE*)disposition;
Azure.IoT Build 0:6ae2f7bca550 6062 result = amqpvalue_clone(disposition_instance->composite_value);
Azure.IoT Build 0:6ae2f7bca550 6063 }
Azure.IoT Build 0:6ae2f7bca550 6064
Azure.IoT Build 0:6ae2f7bca550 6065 return result;
Azure.IoT Build 0:6ae2f7bca550 6066 }
Azure.IoT Build 0:6ae2f7bca550 6067
Azure.IoT Build 0:6ae2f7bca550 6068 bool is_disposition_type_by_descriptor(AMQP_VALUE descriptor)
Azure.IoT Build 0:6ae2f7bca550 6069 {
Azure.IoT Build 0:6ae2f7bca550 6070 bool result;
Azure.IoT Build 0:6ae2f7bca550 6071
Azure.IoT Build 0:6ae2f7bca550 6072 uint64_t descriptor_ulong;
Azure.IoT Build 0:6ae2f7bca550 6073 if ((amqpvalue_get_ulong(descriptor, &descriptor_ulong) == 0) &&
Azure.IoT Build 0:6ae2f7bca550 6074 (descriptor_ulong == 21))
Azure.IoT Build 0:6ae2f7bca550 6075 {
Azure.IoT Build 0:6ae2f7bca550 6076 result = true;
Azure.IoT Build 0:6ae2f7bca550 6077 }
Azure.IoT Build 0:6ae2f7bca550 6078 else
Azure.IoT Build 0:6ae2f7bca550 6079 {
Azure.IoT Build 0:6ae2f7bca550 6080 result = false;
Azure.IoT Build 0:6ae2f7bca550 6081 }
Azure.IoT Build 0:6ae2f7bca550 6082
Azure.IoT Build 0:6ae2f7bca550 6083 return result;
Azure.IoT Build 0:6ae2f7bca550 6084 }
Azure.IoT Build 0:6ae2f7bca550 6085
Azure.IoT Build 0:6ae2f7bca550 6086
Azure.IoT Build 0:6ae2f7bca550 6087 int amqpvalue_get_disposition(AMQP_VALUE value, DISPOSITION_HANDLE* disposition_handle)
Azure.IoT Build 0:6ae2f7bca550 6088 {
Azure.IoT Build 0:6ae2f7bca550 6089 int result;
Azure.IoT Build 0:6ae2f7bca550 6090 DISPOSITION_INSTANCE* disposition_instance = (DISPOSITION_INSTANCE*)disposition_create_internal();
Azure.IoT Build 0:6ae2f7bca550 6091 *disposition_handle = disposition_instance;
Azure.IoT Build 0:6ae2f7bca550 6092 if (*disposition_handle == NULL)
Azure.IoT Build 0:6ae2f7bca550 6093 {
Azure.IoT Build 0:6ae2f7bca550 6094 result = __LINE__;
Azure.IoT Build 0:6ae2f7bca550 6095 }
Azure.IoT Build 0:6ae2f7bca550 6096 else
Azure.IoT Build 0:6ae2f7bca550 6097 {
Azure.IoT Build 0:6ae2f7bca550 6098 AMQP_VALUE list_value = amqpvalue_get_inplace_described_value(value);
Azure.IoT Build 0:6ae2f7bca550 6099 if (list_value == NULL)
Azure.IoT Build 0:6ae2f7bca550 6100 {
Azure.IoT Build 0:6ae2f7bca550 6101 disposition_destroy(*disposition_handle);
Azure.IoT Build 0:6ae2f7bca550 6102 result = __LINE__;
Azure.IoT Build 0:6ae2f7bca550 6103 }
Azure.IoT Build 0:6ae2f7bca550 6104 else
Azure.IoT Build 0:6ae2f7bca550 6105 {
Azure.IoT Build 0:6ae2f7bca550 6106 do
Azure.IoT Build 0:6ae2f7bca550 6107 {
Azure.IoT Build 0:6ae2f7bca550 6108 AMQP_VALUE item_value;
Azure.IoT Build 0:6ae2f7bca550 6109 /* role */
Azure.IoT Build 0:6ae2f7bca550 6110 item_value = amqpvalue_get_list_item(list_value, 0);
Azure.IoT Build 0:6ae2f7bca550 6111 if (item_value == NULL)
Azure.IoT Build 0:6ae2f7bca550 6112 {
Azure.IoT Build 0:6ae2f7bca550 6113 {
Azure.IoT Build 0:6ae2f7bca550 6114 disposition_destroy(*disposition_handle);
Azure.IoT Build 0:6ae2f7bca550 6115 result = __LINE__;
Azure.IoT Build 0:6ae2f7bca550 6116 break;
Azure.IoT Build 0:6ae2f7bca550 6117 }
Azure.IoT Build 0:6ae2f7bca550 6118 }
Azure.IoT Build 0:6ae2f7bca550 6119 else
Azure.IoT Build 0:6ae2f7bca550 6120 {
Azure.IoT Build 0:6ae2f7bca550 6121 role role;
Azure.IoT Build 0:6ae2f7bca550 6122 if (amqpvalue_get_role(item_value, &role) != 0)
Azure.IoT Build 0:6ae2f7bca550 6123 {
Azure.IoT Build 0:6ae2f7bca550 6124 disposition_destroy(*disposition_handle);
Azure.IoT Build 0:6ae2f7bca550 6125 result = __LINE__;
Azure.IoT Build 0:6ae2f7bca550 6126 break;
Azure.IoT Build 0:6ae2f7bca550 6127 }
Azure.IoT Build 0:6ae2f7bca550 6128
Azure.IoT Build 0:6ae2f7bca550 6129 amqpvalue_destroy(item_value);
Azure.IoT Build 0:6ae2f7bca550 6130 }
Azure.IoT Build 0:6ae2f7bca550 6131 /* first */
Azure.IoT Build 0:6ae2f7bca550 6132 item_value = amqpvalue_get_list_item(list_value, 1);
Azure.IoT Build 0:6ae2f7bca550 6133 if (item_value == NULL)
Azure.IoT Build 0:6ae2f7bca550 6134 {
Azure.IoT Build 0:6ae2f7bca550 6135 {
Azure.IoT Build 0:6ae2f7bca550 6136 disposition_destroy(*disposition_handle);
Azure.IoT Build 0:6ae2f7bca550 6137 result = __LINE__;
Azure.IoT Build 0:6ae2f7bca550 6138 break;
Azure.IoT Build 0:6ae2f7bca550 6139 }
Azure.IoT Build 0:6ae2f7bca550 6140 }
Azure.IoT Build 0:6ae2f7bca550 6141 else
Azure.IoT Build 0:6ae2f7bca550 6142 {
Azure.IoT Build 0:6ae2f7bca550 6143 delivery_number first;
Azure.IoT Build 0:6ae2f7bca550 6144 if (amqpvalue_get_delivery_number(item_value, &first) != 0)
Azure.IoT Build 0:6ae2f7bca550 6145 {
Azure.IoT Build 0:6ae2f7bca550 6146 disposition_destroy(*disposition_handle);
Azure.IoT Build 0:6ae2f7bca550 6147 result = __LINE__;
Azure.IoT Build 0:6ae2f7bca550 6148 break;
Azure.IoT Build 0:6ae2f7bca550 6149 }
Azure.IoT Build 0:6ae2f7bca550 6150
Azure.IoT Build 0:6ae2f7bca550 6151 amqpvalue_destroy(item_value);
Azure.IoT Build 0:6ae2f7bca550 6152 }
Azure.IoT Build 0:6ae2f7bca550 6153 /* last */
Azure.IoT Build 0:6ae2f7bca550 6154 item_value = amqpvalue_get_list_item(list_value, 2);
Azure.IoT Build 0:6ae2f7bca550 6155 if (item_value == NULL)
Azure.IoT Build 0:6ae2f7bca550 6156 {
Azure.IoT Build 0:6ae2f7bca550 6157 /* do nothing */
Azure.IoT Build 0:6ae2f7bca550 6158 }
Azure.IoT Build 0:6ae2f7bca550 6159 else
Azure.IoT Build 0:6ae2f7bca550 6160 {
Azure.IoT Build 0:6ae2f7bca550 6161 delivery_number last;
Azure.IoT Build 0:6ae2f7bca550 6162 if (amqpvalue_get_delivery_number(item_value, &last) != 0)
Azure.IoT Build 0:6ae2f7bca550 6163 {
Azure.IoT Build 0:6ae2f7bca550 6164 if (amqpvalue_get_type(item_value) != AMQP_TYPE_NULL)
Azure.IoT Build 0:6ae2f7bca550 6165 {
Azure.IoT Build 0:6ae2f7bca550 6166 disposition_destroy(*disposition_handle);
Azure.IoT Build 0:6ae2f7bca550 6167 result = __LINE__;
Azure.IoT Build 0:6ae2f7bca550 6168 break;
Azure.IoT Build 0:6ae2f7bca550 6169 }
Azure.IoT Build 0:6ae2f7bca550 6170 }
Azure.IoT Build 0:6ae2f7bca550 6171
Azure.IoT Build 0:6ae2f7bca550 6172 amqpvalue_destroy(item_value);
Azure.IoT Build 0:6ae2f7bca550 6173 }
Azure.IoT Build 0:6ae2f7bca550 6174 /* settled */
Azure.IoT Build 0:6ae2f7bca550 6175 item_value = amqpvalue_get_list_item(list_value, 3);
Azure.IoT Build 0:6ae2f7bca550 6176 if (item_value == NULL)
Azure.IoT Build 0:6ae2f7bca550 6177 {
Azure.IoT Build 0:6ae2f7bca550 6178 /* do nothing */
Azure.IoT Build 0:6ae2f7bca550 6179 }
Azure.IoT Build 0:6ae2f7bca550 6180 else
Azure.IoT Build 0:6ae2f7bca550 6181 {
Azure.IoT Build 0:6ae2f7bca550 6182 bool settled;
Azure.IoT Build 0:6ae2f7bca550 6183 if (amqpvalue_get_boolean(item_value, &settled) != 0)
Azure.IoT Build 0:6ae2f7bca550 6184 {
Azure.IoT Build 0:6ae2f7bca550 6185 if (amqpvalue_get_type(item_value) != AMQP_TYPE_NULL)
Azure.IoT Build 0:6ae2f7bca550 6186 {
Azure.IoT Build 0:6ae2f7bca550 6187 disposition_destroy(*disposition_handle);
Azure.IoT Build 0:6ae2f7bca550 6188 result = __LINE__;
Azure.IoT Build 0:6ae2f7bca550 6189 break;
Azure.IoT Build 0:6ae2f7bca550 6190 }
Azure.IoT Build 0:6ae2f7bca550 6191 }
Azure.IoT Build 0:6ae2f7bca550 6192
Azure.IoT Build 0:6ae2f7bca550 6193 amqpvalue_destroy(item_value);
Azure.IoT Build 0:6ae2f7bca550 6194 }
Azure.IoT Build 0:6ae2f7bca550 6195 /* state */
Azure.IoT Build 0:6ae2f7bca550 6196 item_value = amqpvalue_get_list_item(list_value, 4);
Azure.IoT Build 0:6ae2f7bca550 6197 if (item_value == NULL)
Azure.IoT Build 0:6ae2f7bca550 6198 {
Azure.IoT Build 0:6ae2f7bca550 6199 /* do nothing */
Azure.IoT Build 0:6ae2f7bca550 6200 }
Azure.IoT Build 0:6ae2f7bca550 6201 else
Azure.IoT Build 0:6ae2f7bca550 6202 {
Azure.IoT Build 0:6ae2f7bca550 6203 amqpvalue_destroy(item_value);
Azure.IoT Build 0:6ae2f7bca550 6204 }
Azure.IoT Build 0:6ae2f7bca550 6205 /* batchable */
Azure.IoT Build 0:6ae2f7bca550 6206 item_value = amqpvalue_get_list_item(list_value, 5);
Azure.IoT Build 0:6ae2f7bca550 6207 if (item_value == NULL)
Azure.IoT Build 0:6ae2f7bca550 6208 {
Azure.IoT Build 0:6ae2f7bca550 6209 /* do nothing */
Azure.IoT Build 0:6ae2f7bca550 6210 }
Azure.IoT Build 0:6ae2f7bca550 6211 else
Azure.IoT Build 0:6ae2f7bca550 6212 {
Azure.IoT Build 0:6ae2f7bca550 6213 bool batchable;
Azure.IoT Build 0:6ae2f7bca550 6214 if (amqpvalue_get_boolean(item_value, &batchable) != 0)
Azure.IoT Build 0:6ae2f7bca550 6215 {
Azure.IoT Build 0:6ae2f7bca550 6216 if (amqpvalue_get_type(item_value) != AMQP_TYPE_NULL)
Azure.IoT Build 0:6ae2f7bca550 6217 {
Azure.IoT Build 0:6ae2f7bca550 6218 disposition_destroy(*disposition_handle);
Azure.IoT Build 0:6ae2f7bca550 6219 result = __LINE__;
Azure.IoT Build 0:6ae2f7bca550 6220 break;
Azure.IoT Build 0:6ae2f7bca550 6221 }
Azure.IoT Build 0:6ae2f7bca550 6222 }
Azure.IoT Build 0:6ae2f7bca550 6223
Azure.IoT Build 0:6ae2f7bca550 6224 amqpvalue_destroy(item_value);
Azure.IoT Build 0:6ae2f7bca550 6225 }
Azure.IoT Build 0:6ae2f7bca550 6226
Azure.IoT Build 0:6ae2f7bca550 6227 disposition_instance->composite_value = amqpvalue_clone(value);
Azure.IoT Build 0:6ae2f7bca550 6228
Azure.IoT Build 0:6ae2f7bca550 6229 result = 0;
Azure.IoT Build 0:6ae2f7bca550 6230 } while (0);
Azure.IoT Build 0:6ae2f7bca550 6231 }
Azure.IoT Build 0:6ae2f7bca550 6232 }
Azure.IoT Build 0:6ae2f7bca550 6233
Azure.IoT Build 0:6ae2f7bca550 6234 return result;
Azure.IoT Build 0:6ae2f7bca550 6235 }
Azure.IoT Build 0:6ae2f7bca550 6236
Azure.IoT Build 0:6ae2f7bca550 6237 int disposition_get_role(DISPOSITION_HANDLE disposition, role* role_value)
Azure.IoT Build 0:6ae2f7bca550 6238 {
Azure.IoT Build 0:6ae2f7bca550 6239 int result;
Azure.IoT Build 0:6ae2f7bca550 6240
Azure.IoT Build 0:6ae2f7bca550 6241 if (disposition == NULL)
Azure.IoT Build 0:6ae2f7bca550 6242 {
Azure.IoT Build 0:6ae2f7bca550 6243 result = __LINE__;
Azure.IoT Build 0:6ae2f7bca550 6244 }
Azure.IoT Build 0:6ae2f7bca550 6245 else
Azure.IoT Build 0:6ae2f7bca550 6246 {
Azure.IoT Build 0:6ae2f7bca550 6247 DISPOSITION_INSTANCE* disposition_instance = (DISPOSITION_INSTANCE*)disposition;
Azure.IoT Build 0:6ae2f7bca550 6248 AMQP_VALUE item_value = amqpvalue_get_composite_item_in_place(disposition_instance->composite_value, 0);
Azure.IoT Build 0:6ae2f7bca550 6249 if (item_value == NULL)
Azure.IoT Build 0:6ae2f7bca550 6250 {
Azure.IoT Build 0:6ae2f7bca550 6251 result = __LINE__;
Azure.IoT Build 0:6ae2f7bca550 6252 }
Azure.IoT Build 0:6ae2f7bca550 6253 else
Azure.IoT Build 0:6ae2f7bca550 6254 {
Azure.IoT Build 0:6ae2f7bca550 6255 if (amqpvalue_get_role(item_value, role_value) != 0)
Azure.IoT Build 0:6ae2f7bca550 6256 {
Azure.IoT Build 0:6ae2f7bca550 6257 result = __LINE__;
Azure.IoT Build 0:6ae2f7bca550 6258 }
Azure.IoT Build 0:6ae2f7bca550 6259 else
Azure.IoT Build 0:6ae2f7bca550 6260 {
Azure.IoT Build 0:6ae2f7bca550 6261 result = 0;
Azure.IoT Build 0:6ae2f7bca550 6262 }
Azure.IoT Build 0:6ae2f7bca550 6263 }
Azure.IoT Build 0:6ae2f7bca550 6264 }
Azure.IoT Build 0:6ae2f7bca550 6265
Azure.IoT Build 0:6ae2f7bca550 6266 return result;
Azure.IoT Build 0:6ae2f7bca550 6267 }
Azure.IoT Build 0:6ae2f7bca550 6268
Azure.IoT Build 0:6ae2f7bca550 6269 int disposition_set_role(DISPOSITION_HANDLE disposition, role role_value)
Azure.IoT Build 0:6ae2f7bca550 6270 {
Azure.IoT Build 0:6ae2f7bca550 6271 int result;
Azure.IoT Build 0:6ae2f7bca550 6272
Azure.IoT Build 0:6ae2f7bca550 6273 if (disposition == NULL)
Azure.IoT Build 0:6ae2f7bca550 6274 {
Azure.IoT Build 0:6ae2f7bca550 6275 result = __LINE__;
Azure.IoT Build 0:6ae2f7bca550 6276 }
Azure.IoT Build 0:6ae2f7bca550 6277 else
Azure.IoT Build 0:6ae2f7bca550 6278 {
Azure.IoT Build 0:6ae2f7bca550 6279 DISPOSITION_INSTANCE* disposition_instance = (DISPOSITION_INSTANCE*)disposition;
Azure.IoT Build 0:6ae2f7bca550 6280 AMQP_VALUE role_amqp_value = amqpvalue_create_role(role_value);
Azure.IoT Build 0:6ae2f7bca550 6281 if (role_amqp_value == NULL)
Azure.IoT Build 0:6ae2f7bca550 6282 {
Azure.IoT Build 0:6ae2f7bca550 6283 result = __LINE__;
Azure.IoT Build 0:6ae2f7bca550 6284 }
Azure.IoT Build 0:6ae2f7bca550 6285 else
Azure.IoT Build 0:6ae2f7bca550 6286 {
Azure.IoT Build 0:6ae2f7bca550 6287 if (amqpvalue_set_composite_item(disposition_instance->composite_value, 0, role_amqp_value) != 0)
Azure.IoT Build 0:6ae2f7bca550 6288 {
Azure.IoT Build 0:6ae2f7bca550 6289 result = __LINE__;
Azure.IoT Build 0:6ae2f7bca550 6290 }
Azure.IoT Build 0:6ae2f7bca550 6291 else
Azure.IoT Build 0:6ae2f7bca550 6292 {
Azure.IoT Build 0:6ae2f7bca550 6293 result = 0;
Azure.IoT Build 0:6ae2f7bca550 6294 }
Azure.IoT Build 0:6ae2f7bca550 6295
Azure.IoT Build 0:6ae2f7bca550 6296 amqpvalue_destroy(role_amqp_value);
Azure.IoT Build 0:6ae2f7bca550 6297 }
Azure.IoT Build 0:6ae2f7bca550 6298 }
Azure.IoT Build 0:6ae2f7bca550 6299
Azure.IoT Build 0:6ae2f7bca550 6300 return result;
Azure.IoT Build 0:6ae2f7bca550 6301 }
Azure.IoT Build 0:6ae2f7bca550 6302
Azure.IoT Build 0:6ae2f7bca550 6303 int disposition_get_first(DISPOSITION_HANDLE disposition, delivery_number* first_value)
Azure.IoT Build 0:6ae2f7bca550 6304 {
Azure.IoT Build 0:6ae2f7bca550 6305 int result;
Azure.IoT Build 0:6ae2f7bca550 6306
Azure.IoT Build 0:6ae2f7bca550 6307 if (disposition == NULL)
Azure.IoT Build 0:6ae2f7bca550 6308 {
Azure.IoT Build 0:6ae2f7bca550 6309 result = __LINE__;
Azure.IoT Build 0:6ae2f7bca550 6310 }
Azure.IoT Build 0:6ae2f7bca550 6311 else
Azure.IoT Build 0:6ae2f7bca550 6312 {
Azure.IoT Build 0:6ae2f7bca550 6313 DISPOSITION_INSTANCE* disposition_instance = (DISPOSITION_INSTANCE*)disposition;
Azure.IoT Build 0:6ae2f7bca550 6314 AMQP_VALUE item_value = amqpvalue_get_composite_item_in_place(disposition_instance->composite_value, 1);
Azure.IoT Build 0:6ae2f7bca550 6315 if (item_value == NULL)
Azure.IoT Build 0:6ae2f7bca550 6316 {
Azure.IoT Build 0:6ae2f7bca550 6317 result = __LINE__;
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 if (amqpvalue_get_delivery_number(item_value, first_value) != 0)
Azure.IoT Build 0:6ae2f7bca550 6322 {
Azure.IoT Build 0:6ae2f7bca550 6323 result = __LINE__;
Azure.IoT Build 0:6ae2f7bca550 6324 }
Azure.IoT Build 0:6ae2f7bca550 6325 else
Azure.IoT Build 0:6ae2f7bca550 6326 {
Azure.IoT Build 0:6ae2f7bca550 6327 result = 0;
Azure.IoT Build 0:6ae2f7bca550 6328 }
Azure.IoT Build 0:6ae2f7bca550 6329 }
Azure.IoT Build 0:6ae2f7bca550 6330 }
Azure.IoT Build 0:6ae2f7bca550 6331
Azure.IoT Build 0:6ae2f7bca550 6332 return result;
Azure.IoT Build 0:6ae2f7bca550 6333 }
Azure.IoT Build 0:6ae2f7bca550 6334
Azure.IoT Build 0:6ae2f7bca550 6335 int disposition_set_first(DISPOSITION_HANDLE disposition, delivery_number first_value)
Azure.IoT Build 0:6ae2f7bca550 6336 {
Azure.IoT Build 0:6ae2f7bca550 6337 int result;
Azure.IoT Build 0:6ae2f7bca550 6338
Azure.IoT Build 0:6ae2f7bca550 6339 if (disposition == NULL)
Azure.IoT Build 0:6ae2f7bca550 6340 {
Azure.IoT Build 0:6ae2f7bca550 6341 result = __LINE__;
Azure.IoT Build 0:6ae2f7bca550 6342 }
Azure.IoT Build 0:6ae2f7bca550 6343 else
Azure.IoT Build 0:6ae2f7bca550 6344 {
Azure.IoT Build 0:6ae2f7bca550 6345 DISPOSITION_INSTANCE* disposition_instance = (DISPOSITION_INSTANCE*)disposition;
Azure.IoT Build 0:6ae2f7bca550 6346 AMQP_VALUE first_amqp_value = amqpvalue_create_delivery_number(first_value);
Azure.IoT Build 0:6ae2f7bca550 6347 if (first_amqp_value == NULL)
Azure.IoT Build 0:6ae2f7bca550 6348 {
Azure.IoT Build 0:6ae2f7bca550 6349 result = __LINE__;
Azure.IoT Build 0:6ae2f7bca550 6350 }
Azure.IoT Build 0:6ae2f7bca550 6351 else
Azure.IoT Build 0:6ae2f7bca550 6352 {
Azure.IoT Build 0:6ae2f7bca550 6353 if (amqpvalue_set_composite_item(disposition_instance->composite_value, 1, first_amqp_value) != 0)
Azure.IoT Build 0:6ae2f7bca550 6354 {
Azure.IoT Build 0:6ae2f7bca550 6355 result = __LINE__;
Azure.IoT Build 0:6ae2f7bca550 6356 }
Azure.IoT Build 0:6ae2f7bca550 6357 else
Azure.IoT Build 0:6ae2f7bca550 6358 {
Azure.IoT Build 0:6ae2f7bca550 6359 result = 0;
Azure.IoT Build 0:6ae2f7bca550 6360 }
Azure.IoT Build 0:6ae2f7bca550 6361
Azure.IoT Build 0:6ae2f7bca550 6362 amqpvalue_destroy(first_amqp_value);
Azure.IoT Build 0:6ae2f7bca550 6363 }
Azure.IoT Build 0:6ae2f7bca550 6364 }
Azure.IoT Build 0:6ae2f7bca550 6365
Azure.IoT Build 0:6ae2f7bca550 6366 return result;
Azure.IoT Build 0:6ae2f7bca550 6367 }
Azure.IoT Build 0:6ae2f7bca550 6368
Azure.IoT Build 0:6ae2f7bca550 6369 int disposition_get_last(DISPOSITION_HANDLE disposition, delivery_number* last_value)
Azure.IoT Build 0:6ae2f7bca550 6370 {
Azure.IoT Build 0:6ae2f7bca550 6371 int result;
Azure.IoT Build 0:6ae2f7bca550 6372
Azure.IoT Build 0:6ae2f7bca550 6373 if (disposition == NULL)
Azure.IoT Build 0:6ae2f7bca550 6374 {
Azure.IoT Build 0:6ae2f7bca550 6375 result = __LINE__;
Azure.IoT Build 0:6ae2f7bca550 6376 }
Azure.IoT Build 0:6ae2f7bca550 6377 else
Azure.IoT Build 0:6ae2f7bca550 6378 {
Azure.IoT Build 0:6ae2f7bca550 6379 DISPOSITION_INSTANCE* disposition_instance = (DISPOSITION_INSTANCE*)disposition;
Azure.IoT Build 0:6ae2f7bca550 6380 AMQP_VALUE item_value = amqpvalue_get_composite_item_in_place(disposition_instance->composite_value, 2);
Azure.IoT Build 0:6ae2f7bca550 6381 if (item_value == 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 if (amqpvalue_get_delivery_number(item_value, last_value) != 0)
Azure.IoT Build 0:6ae2f7bca550 6388 {
Azure.IoT Build 0:6ae2f7bca550 6389 result = __LINE__;
Azure.IoT Build 0:6ae2f7bca550 6390 }
Azure.IoT Build 0:6ae2f7bca550 6391 else
Azure.IoT Build 0:6ae2f7bca550 6392 {
Azure.IoT Build 0:6ae2f7bca550 6393 result = 0;
Azure.IoT Build 0:6ae2f7bca550 6394 }
Azure.IoT Build 0:6ae2f7bca550 6395 }
Azure.IoT Build 0:6ae2f7bca550 6396 }
Azure.IoT Build 0:6ae2f7bca550 6397
Azure.IoT Build 0:6ae2f7bca550 6398 return result;
Azure.IoT Build 0:6ae2f7bca550 6399 }
Azure.IoT Build 0:6ae2f7bca550 6400
Azure.IoT Build 0:6ae2f7bca550 6401 int disposition_set_last(DISPOSITION_HANDLE disposition, delivery_number last_value)
Azure.IoT Build 0:6ae2f7bca550 6402 {
Azure.IoT Build 0:6ae2f7bca550 6403 int result;
Azure.IoT Build 0:6ae2f7bca550 6404
Azure.IoT Build 0:6ae2f7bca550 6405 if (disposition == NULL)
Azure.IoT Build 0:6ae2f7bca550 6406 {
Azure.IoT Build 0:6ae2f7bca550 6407 result = __LINE__;
Azure.IoT Build 0:6ae2f7bca550 6408 }
Azure.IoT Build 0:6ae2f7bca550 6409 else
Azure.IoT Build 0:6ae2f7bca550 6410 {
Azure.IoT Build 0:6ae2f7bca550 6411 DISPOSITION_INSTANCE* disposition_instance = (DISPOSITION_INSTANCE*)disposition;
Azure.IoT Build 0:6ae2f7bca550 6412 AMQP_VALUE last_amqp_value = amqpvalue_create_delivery_number(last_value);
Azure.IoT Build 0:6ae2f7bca550 6413 if (last_amqp_value == NULL)
Azure.IoT Build 0:6ae2f7bca550 6414 {
Azure.IoT Build 0:6ae2f7bca550 6415 result = __LINE__;
Azure.IoT Build 0:6ae2f7bca550 6416 }
Azure.IoT Build 0:6ae2f7bca550 6417 else
Azure.IoT Build 0:6ae2f7bca550 6418 {
Azure.IoT Build 0:6ae2f7bca550 6419 if (amqpvalue_set_composite_item(disposition_instance->composite_value, 2, last_amqp_value) != 0)
Azure.IoT Build 0:6ae2f7bca550 6420 {
Azure.IoT Build 0:6ae2f7bca550 6421 result = __LINE__;
Azure.IoT Build 0:6ae2f7bca550 6422 }
Azure.IoT Build 0:6ae2f7bca550 6423 else
Azure.IoT Build 0:6ae2f7bca550 6424 {
Azure.IoT Build 0:6ae2f7bca550 6425 result = 0;
Azure.IoT Build 0:6ae2f7bca550 6426 }
Azure.IoT Build 0:6ae2f7bca550 6427
Azure.IoT Build 0:6ae2f7bca550 6428 amqpvalue_destroy(last_amqp_value);
Azure.IoT Build 0:6ae2f7bca550 6429 }
Azure.IoT Build 0:6ae2f7bca550 6430 }
Azure.IoT Build 0:6ae2f7bca550 6431
Azure.IoT Build 0:6ae2f7bca550 6432 return result;
Azure.IoT Build 0:6ae2f7bca550 6433 }
Azure.IoT Build 0:6ae2f7bca550 6434
Azure.IoT Build 0:6ae2f7bca550 6435 int disposition_get_settled(DISPOSITION_HANDLE disposition, bool* settled_value)
Azure.IoT Build 0:6ae2f7bca550 6436 {
Azure.IoT Build 0:6ae2f7bca550 6437 int result;
Azure.IoT Build 0:6ae2f7bca550 6438
Azure.IoT Build 0:6ae2f7bca550 6439 if (disposition == NULL)
Azure.IoT Build 0:6ae2f7bca550 6440 {
Azure.IoT Build 0:6ae2f7bca550 6441 result = __LINE__;
Azure.IoT Build 0:6ae2f7bca550 6442 }
Azure.IoT Build 0:6ae2f7bca550 6443 else
Azure.IoT Build 0:6ae2f7bca550 6444 {
Azure.IoT Build 0:6ae2f7bca550 6445 DISPOSITION_INSTANCE* disposition_instance = (DISPOSITION_INSTANCE*)disposition;
Azure.IoT Build 0:6ae2f7bca550 6446 AMQP_VALUE item_value = amqpvalue_get_composite_item_in_place(disposition_instance->composite_value, 3);
Azure.IoT Build 0:6ae2f7bca550 6447 if (item_value == 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 if (amqpvalue_get_boolean(item_value, settled_value) != 0)
Azure.IoT Build 0:6ae2f7bca550 6454 {
Azure.IoT Build 0:6ae2f7bca550 6455 result = __LINE__;
Azure.IoT Build 0:6ae2f7bca550 6456 }
Azure.IoT Build 0:6ae2f7bca550 6457 else
Azure.IoT Build 0:6ae2f7bca550 6458 {
Azure.IoT Build 0:6ae2f7bca550 6459 result = 0;
Azure.IoT Build 0:6ae2f7bca550 6460 }
Azure.IoT Build 0:6ae2f7bca550 6461 }
Azure.IoT Build 0:6ae2f7bca550 6462 }
Azure.IoT Build 0:6ae2f7bca550 6463
Azure.IoT Build 0:6ae2f7bca550 6464 return result;
Azure.IoT Build 0:6ae2f7bca550 6465 }
Azure.IoT Build 0:6ae2f7bca550 6466
Azure.IoT Build 0:6ae2f7bca550 6467 int disposition_set_settled(DISPOSITION_HANDLE disposition, bool settled_value)
Azure.IoT Build 0:6ae2f7bca550 6468 {
Azure.IoT Build 0:6ae2f7bca550 6469 int result;
Azure.IoT Build 0:6ae2f7bca550 6470
Azure.IoT Build 0:6ae2f7bca550 6471 if (disposition == NULL)
Azure.IoT Build 0:6ae2f7bca550 6472 {
Azure.IoT Build 0:6ae2f7bca550 6473 result = __LINE__;
Azure.IoT Build 0:6ae2f7bca550 6474 }
Azure.IoT Build 0:6ae2f7bca550 6475 else
Azure.IoT Build 0:6ae2f7bca550 6476 {
Azure.IoT Build 0:6ae2f7bca550 6477 DISPOSITION_INSTANCE* disposition_instance = (DISPOSITION_INSTANCE*)disposition;
Azure.IoT Build 0:6ae2f7bca550 6478 AMQP_VALUE settled_amqp_value = amqpvalue_create_boolean(settled_value);
Azure.IoT Build 0:6ae2f7bca550 6479 if (settled_amqp_value == NULL)
Azure.IoT Build 0:6ae2f7bca550 6480 {
Azure.IoT Build 0:6ae2f7bca550 6481 result = __LINE__;
Azure.IoT Build 0:6ae2f7bca550 6482 }
Azure.IoT Build 0:6ae2f7bca550 6483 else
Azure.IoT Build 0:6ae2f7bca550 6484 {
Azure.IoT Build 0:6ae2f7bca550 6485 if (amqpvalue_set_composite_item(disposition_instance->composite_value, 3, settled_amqp_value) != 0)
Azure.IoT Build 0:6ae2f7bca550 6486 {
Azure.IoT Build 0:6ae2f7bca550 6487 result = __LINE__;
Azure.IoT Build 0:6ae2f7bca550 6488 }
Azure.IoT Build 0:6ae2f7bca550 6489 else
Azure.IoT Build 0:6ae2f7bca550 6490 {
Azure.IoT Build 0:6ae2f7bca550 6491 result = 0;
Azure.IoT Build 0:6ae2f7bca550 6492 }
Azure.IoT Build 0:6ae2f7bca550 6493
Azure.IoT Build 0:6ae2f7bca550 6494 amqpvalue_destroy(settled_amqp_value);
Azure.IoT Build 0:6ae2f7bca550 6495 }
Azure.IoT Build 0:6ae2f7bca550 6496 }
Azure.IoT Build 0:6ae2f7bca550 6497
Azure.IoT Build 0:6ae2f7bca550 6498 return result;
Azure.IoT Build 0:6ae2f7bca550 6499 }
Azure.IoT Build 0:6ae2f7bca550 6500
Azure.IoT Build 0:6ae2f7bca550 6501 int disposition_get_state(DISPOSITION_HANDLE disposition, AMQP_VALUE* state_value)
Azure.IoT Build 0:6ae2f7bca550 6502 {
Azure.IoT Build 0:6ae2f7bca550 6503 int result;
Azure.IoT Build 0:6ae2f7bca550 6504
Azure.IoT Build 0:6ae2f7bca550 6505 if (disposition == NULL)
Azure.IoT Build 0:6ae2f7bca550 6506 {
Azure.IoT Build 0:6ae2f7bca550 6507 result = __LINE__;
Azure.IoT Build 0:6ae2f7bca550 6508 }
Azure.IoT Build 0:6ae2f7bca550 6509 else
Azure.IoT Build 0:6ae2f7bca550 6510 {
Azure.IoT Build 0:6ae2f7bca550 6511 DISPOSITION_INSTANCE* disposition_instance = (DISPOSITION_INSTANCE*)disposition;
Azure.IoT Build 0:6ae2f7bca550 6512 AMQP_VALUE item_value = amqpvalue_get_composite_item_in_place(disposition_instance->composite_value, 4);
Azure.IoT Build 0:6ae2f7bca550 6513 if (item_value == 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 *state_value = item_value;
Azure.IoT Build 0:6ae2f7bca550 6520 result = 0;
Azure.IoT Build 0:6ae2f7bca550 6521 }
Azure.IoT Build 0:6ae2f7bca550 6522 }
Azure.IoT Build 0:6ae2f7bca550 6523
Azure.IoT Build 0:6ae2f7bca550 6524 return result;
Azure.IoT Build 0:6ae2f7bca550 6525 }
Azure.IoT Build 0:6ae2f7bca550 6526
Azure.IoT Build 0:6ae2f7bca550 6527 int disposition_set_state(DISPOSITION_HANDLE disposition, AMQP_VALUE state_value)
Azure.IoT Build 0:6ae2f7bca550 6528 {
Azure.IoT Build 0:6ae2f7bca550 6529 int result;
Azure.IoT Build 0:6ae2f7bca550 6530
Azure.IoT Build 0:6ae2f7bca550 6531 if (disposition == NULL)
Azure.IoT Build 0:6ae2f7bca550 6532 {
Azure.IoT Build 0:6ae2f7bca550 6533 result = __LINE__;
Azure.IoT Build 0:6ae2f7bca550 6534 }
Azure.IoT Build 0:6ae2f7bca550 6535 else
Azure.IoT Build 0:6ae2f7bca550 6536 {
Azure.IoT Build 0:6ae2f7bca550 6537 DISPOSITION_INSTANCE* disposition_instance = (DISPOSITION_INSTANCE*)disposition;
Azure.IoT Build 0:6ae2f7bca550 6538 AMQP_VALUE state_amqp_value = amqpvalue_clone(state_value);
Azure.IoT Build 0:6ae2f7bca550 6539 if (state_amqp_value == NULL)
Azure.IoT Build 0:6ae2f7bca550 6540 {
Azure.IoT Build 0:6ae2f7bca550 6541 result = __LINE__;
Azure.IoT Build 0:6ae2f7bca550 6542 }
Azure.IoT Build 0:6ae2f7bca550 6543 else
Azure.IoT Build 0:6ae2f7bca550 6544 {
Azure.IoT Build 0:6ae2f7bca550 6545 if (amqpvalue_set_composite_item(disposition_instance->composite_value, 4, state_amqp_value) != 0)
Azure.IoT Build 0:6ae2f7bca550 6546 {
Azure.IoT Build 0:6ae2f7bca550 6547 result = __LINE__;
Azure.IoT Build 0:6ae2f7bca550 6548 }
Azure.IoT Build 0:6ae2f7bca550 6549 else
Azure.IoT Build 0:6ae2f7bca550 6550 {
Azure.IoT Build 0:6ae2f7bca550 6551 result = 0;
Azure.IoT Build 0:6ae2f7bca550 6552 }
Azure.IoT Build 0:6ae2f7bca550 6553
Azure.IoT Build 0:6ae2f7bca550 6554 amqpvalue_destroy(state_amqp_value);
Azure.IoT Build 0:6ae2f7bca550 6555 }
Azure.IoT Build 0:6ae2f7bca550 6556 }
Azure.IoT Build 0:6ae2f7bca550 6557
Azure.IoT Build 0:6ae2f7bca550 6558 return result;
Azure.IoT Build 0:6ae2f7bca550 6559 }
Azure.IoT Build 0:6ae2f7bca550 6560
Azure.IoT Build 0:6ae2f7bca550 6561 int disposition_get_batchable(DISPOSITION_HANDLE disposition, bool* batchable_value)
Azure.IoT Build 0:6ae2f7bca550 6562 {
Azure.IoT Build 0:6ae2f7bca550 6563 int result;
Azure.IoT Build 0:6ae2f7bca550 6564
Azure.IoT Build 0:6ae2f7bca550 6565 if (disposition == NULL)
Azure.IoT Build 0:6ae2f7bca550 6566 {
Azure.IoT Build 0:6ae2f7bca550 6567 result = __LINE__;
Azure.IoT Build 0:6ae2f7bca550 6568 }
Azure.IoT Build 0:6ae2f7bca550 6569 else
Azure.IoT Build 0:6ae2f7bca550 6570 {
Azure.IoT Build 0:6ae2f7bca550 6571 DISPOSITION_INSTANCE* disposition_instance = (DISPOSITION_INSTANCE*)disposition;
Azure.IoT Build 0:6ae2f7bca550 6572 AMQP_VALUE item_value = amqpvalue_get_composite_item_in_place(disposition_instance->composite_value, 5);
Azure.IoT Build 0:6ae2f7bca550 6573 if (item_value == NULL)
Azure.IoT Build 0:6ae2f7bca550 6574 {
Azure.IoT Build 0:6ae2f7bca550 6575 result = __LINE__;
Azure.IoT Build 0:6ae2f7bca550 6576 }
Azure.IoT Build 0:6ae2f7bca550 6577 else
Azure.IoT Build 0:6ae2f7bca550 6578 {
Azure.IoT Build 0:6ae2f7bca550 6579 if (amqpvalue_get_boolean(item_value, batchable_value) != 0)
Azure.IoT Build 0:6ae2f7bca550 6580 {
Azure.IoT Build 0:6ae2f7bca550 6581 result = __LINE__;
Azure.IoT Build 0:6ae2f7bca550 6582 }
Azure.IoT Build 0:6ae2f7bca550 6583 else
Azure.IoT Build 0:6ae2f7bca550 6584 {
Azure.IoT Build 0:6ae2f7bca550 6585 result = 0;
Azure.IoT Build 0:6ae2f7bca550 6586 }
Azure.IoT Build 0:6ae2f7bca550 6587 }
Azure.IoT Build 0:6ae2f7bca550 6588 }
Azure.IoT Build 0:6ae2f7bca550 6589
Azure.IoT Build 0:6ae2f7bca550 6590 return result;
Azure.IoT Build 0:6ae2f7bca550 6591 }
Azure.IoT Build 0:6ae2f7bca550 6592
Azure.IoT Build 0:6ae2f7bca550 6593 int disposition_set_batchable(DISPOSITION_HANDLE disposition, bool batchable_value)
Azure.IoT Build 0:6ae2f7bca550 6594 {
Azure.IoT Build 0:6ae2f7bca550 6595 int result;
Azure.IoT Build 0:6ae2f7bca550 6596
Azure.IoT Build 0:6ae2f7bca550 6597 if (disposition == NULL)
Azure.IoT Build 0:6ae2f7bca550 6598 {
Azure.IoT Build 0:6ae2f7bca550 6599 result = __LINE__;
Azure.IoT Build 0:6ae2f7bca550 6600 }
Azure.IoT Build 0:6ae2f7bca550 6601 else
Azure.IoT Build 0:6ae2f7bca550 6602 {
Azure.IoT Build 0:6ae2f7bca550 6603 DISPOSITION_INSTANCE* disposition_instance = (DISPOSITION_INSTANCE*)disposition;
Azure.IoT Build 0:6ae2f7bca550 6604 AMQP_VALUE batchable_amqp_value = amqpvalue_create_boolean(batchable_value);
Azure.IoT Build 0:6ae2f7bca550 6605 if (batchable_amqp_value == NULL)
Azure.IoT Build 0:6ae2f7bca550 6606 {
Azure.IoT Build 0:6ae2f7bca550 6607 result = __LINE__;
Azure.IoT Build 0:6ae2f7bca550 6608 }
Azure.IoT Build 0:6ae2f7bca550 6609 else
Azure.IoT Build 0:6ae2f7bca550 6610 {
Azure.IoT Build 0:6ae2f7bca550 6611 if (amqpvalue_set_composite_item(disposition_instance->composite_value, 5, batchable_amqp_value) != 0)
Azure.IoT Build 0:6ae2f7bca550 6612 {
Azure.IoT Build 0:6ae2f7bca550 6613 result = __LINE__;
Azure.IoT Build 0:6ae2f7bca550 6614 }
Azure.IoT Build 0:6ae2f7bca550 6615 else
Azure.IoT Build 0:6ae2f7bca550 6616 {
Azure.IoT Build 0:6ae2f7bca550 6617 result = 0;
Azure.IoT Build 0:6ae2f7bca550 6618 }
Azure.IoT Build 0:6ae2f7bca550 6619
Azure.IoT Build 0:6ae2f7bca550 6620 amqpvalue_destroy(batchable_amqp_value);
Azure.IoT Build 0:6ae2f7bca550 6621 }
Azure.IoT Build 0:6ae2f7bca550 6622 }
Azure.IoT Build 0:6ae2f7bca550 6623
Azure.IoT Build 0:6ae2f7bca550 6624 return result;
Azure.IoT Build 0:6ae2f7bca550 6625 }
Azure.IoT Build 0:6ae2f7bca550 6626
Azure.IoT Build 0:6ae2f7bca550 6627
Azure.IoT Build 0:6ae2f7bca550 6628 /* detach */
Azure.IoT Build 0:6ae2f7bca550 6629
Azure.IoT Build 0:6ae2f7bca550 6630 typedef struct DETACH_INSTANCE_TAG
Azure.IoT Build 0:6ae2f7bca550 6631 {
Azure.IoT Build 0:6ae2f7bca550 6632 AMQP_VALUE composite_value;
Azure.IoT Build 0:6ae2f7bca550 6633 } DETACH_INSTANCE;
Azure.IoT Build 0:6ae2f7bca550 6634
Azure.IoT Build 0:6ae2f7bca550 6635 static DETACH_HANDLE detach_create_internal(void)
Azure.IoT Build 0:6ae2f7bca550 6636 {
Azure.IoT Build 0:6ae2f7bca550 6637 DETACH_INSTANCE* detach_instance = (DETACH_INSTANCE*)amqpalloc_malloc(sizeof(DETACH_INSTANCE));
Azure.IoT Build 0:6ae2f7bca550 6638 if (detach_instance != NULL)
Azure.IoT Build 0:6ae2f7bca550 6639 {
Azure.IoT Build 0:6ae2f7bca550 6640 detach_instance->composite_value = NULL;
Azure.IoT Build 0:6ae2f7bca550 6641 }
Azure.IoT Build 0:6ae2f7bca550 6642
Azure.IoT Build 0:6ae2f7bca550 6643 return detach_instance;
Azure.IoT Build 0:6ae2f7bca550 6644 }
Azure.IoT Build 0:6ae2f7bca550 6645
Azure.IoT Build 0:6ae2f7bca550 6646 DETACH_HANDLE detach_create(handle handle_value)
Azure.IoT Build 0:6ae2f7bca550 6647 {
Azure.IoT Build 0:6ae2f7bca550 6648 DETACH_INSTANCE* detach_instance = (DETACH_INSTANCE*)amqpalloc_malloc(sizeof(DETACH_INSTANCE));
Azure.IoT Build 0:6ae2f7bca550 6649 if (detach_instance != NULL)
Azure.IoT Build 0:6ae2f7bca550 6650 {
Azure.IoT Build 0:6ae2f7bca550 6651 detach_instance->composite_value = amqpvalue_create_composite_with_ulong_descriptor(22);
Azure.IoT Build 0:6ae2f7bca550 6652 if (detach_instance->composite_value == NULL)
Azure.IoT Build 0:6ae2f7bca550 6653 {
Azure.IoT Build 0:6ae2f7bca550 6654 amqpalloc_free(detach_instance);
Azure.IoT Build 0:6ae2f7bca550 6655 detach_instance = NULL;
Azure.IoT Build 0:6ae2f7bca550 6656 }
Azure.IoT Build 0:6ae2f7bca550 6657 else
Azure.IoT Build 0:6ae2f7bca550 6658 {
Azure.IoT Build 0:6ae2f7bca550 6659 AMQP_VALUE handle_amqp_value;
Azure.IoT Build 0:6ae2f7bca550 6660 int result = 0;
Azure.IoT Build 0:6ae2f7bca550 6661
Azure.IoT Build 0:6ae2f7bca550 6662 handle_amqp_value = amqpvalue_create_handle(handle_value);
Azure.IoT Build 0:6ae2f7bca550 6663 if ((result == 0) && (amqpvalue_set_composite_item(detach_instance->composite_value, 0, handle_amqp_value) != 0))
Azure.IoT Build 0:6ae2f7bca550 6664 {
Azure.IoT Build 0:6ae2f7bca550 6665 result = __LINE__;
Azure.IoT Build 0:6ae2f7bca550 6666 }
Azure.IoT Build 0:6ae2f7bca550 6667
Azure.IoT Build 0:6ae2f7bca550 6668 amqpvalue_destroy(handle_amqp_value);
Azure.IoT Build 0:6ae2f7bca550 6669 }
Azure.IoT Build 0:6ae2f7bca550 6670 }
Azure.IoT Build 0:6ae2f7bca550 6671
Azure.IoT Build 0:6ae2f7bca550 6672 return detach_instance;
Azure.IoT Build 0:6ae2f7bca550 6673 }
Azure.IoT Build 0:6ae2f7bca550 6674
Azure.IoT Build 0:6ae2f7bca550 6675 DETACH_HANDLE detach_clone(DETACH_HANDLE value)
Azure.IoT Build 0:6ae2f7bca550 6676 {
Azure.IoT Build 0:6ae2f7bca550 6677 DETACH_INSTANCE* detach_instance = (DETACH_INSTANCE*)amqpalloc_malloc(sizeof(DETACH_INSTANCE));
Azure.IoT Build 0:6ae2f7bca550 6678 if (detach_instance != NULL)
Azure.IoT Build 0:6ae2f7bca550 6679 {
Azure.IoT Build 0:6ae2f7bca550 6680 detach_instance->composite_value = amqpvalue_clone(((DETACH_INSTANCE*)value)->composite_value);
Azure.IoT Build 0:6ae2f7bca550 6681 if (detach_instance->composite_value == NULL)
Azure.IoT Build 0:6ae2f7bca550 6682 {
Azure.IoT Build 0:6ae2f7bca550 6683 amqpalloc_free(detach_instance);
Azure.IoT Build 0:6ae2f7bca550 6684 detach_instance = NULL;
Azure.IoT Build 0:6ae2f7bca550 6685 }
Azure.IoT Build 0:6ae2f7bca550 6686 }
Azure.IoT Build 0:6ae2f7bca550 6687
Azure.IoT Build 0:6ae2f7bca550 6688 return detach_instance;
Azure.IoT Build 0:6ae2f7bca550 6689 }
Azure.IoT Build 0:6ae2f7bca550 6690
Azure.IoT Build 0:6ae2f7bca550 6691 void detach_destroy(DETACH_HANDLE detach)
Azure.IoT Build 0:6ae2f7bca550 6692 {
Azure.IoT Build 0:6ae2f7bca550 6693 if (detach != NULL)
Azure.IoT Build 0:6ae2f7bca550 6694 {
Azure.IoT Build 0:6ae2f7bca550 6695 DETACH_INSTANCE* detach_instance = (DETACH_INSTANCE*)detach;
Azure.IoT Build 0:6ae2f7bca550 6696 amqpvalue_destroy(detach_instance->composite_value);
Azure.IoT Build 0:6ae2f7bca550 6697 amqpalloc_free(detach_instance);
Azure.IoT Build 0:6ae2f7bca550 6698 }
Azure.IoT Build 0:6ae2f7bca550 6699 }
Azure.IoT Build 0:6ae2f7bca550 6700
Azure.IoT Build 0:6ae2f7bca550 6701 AMQP_VALUE amqpvalue_create_detach(DETACH_HANDLE detach)
Azure.IoT Build 0:6ae2f7bca550 6702 {
Azure.IoT Build 0:6ae2f7bca550 6703 AMQP_VALUE result;
Azure.IoT Build 0:6ae2f7bca550 6704
Azure.IoT Build 0:6ae2f7bca550 6705 if (detach == NULL)
Azure.IoT Build 0:6ae2f7bca550 6706 {
Azure.IoT Build 0:6ae2f7bca550 6707 result = NULL;
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 DETACH_INSTANCE* detach_instance = (DETACH_INSTANCE*)detach;
Azure.IoT Build 0:6ae2f7bca550 6712 result = amqpvalue_clone(detach_instance->composite_value);
Azure.IoT Build 0:6ae2f7bca550 6713 }
Azure.IoT Build 0:6ae2f7bca550 6714
Azure.IoT Build 0:6ae2f7bca550 6715 return result;
Azure.IoT Build 0:6ae2f7bca550 6716 }
Azure.IoT Build 0:6ae2f7bca550 6717
Azure.IoT Build 0:6ae2f7bca550 6718 bool is_detach_type_by_descriptor(AMQP_VALUE descriptor)
Azure.IoT Build 0:6ae2f7bca550 6719 {
Azure.IoT Build 0:6ae2f7bca550 6720 bool result;
Azure.IoT Build 0:6ae2f7bca550 6721
Azure.IoT Build 0:6ae2f7bca550 6722 uint64_t descriptor_ulong;
Azure.IoT Build 0:6ae2f7bca550 6723 if ((amqpvalue_get_ulong(descriptor, &descriptor_ulong) == 0) &&
Azure.IoT Build 0:6ae2f7bca550 6724 (descriptor_ulong == 22))
Azure.IoT Build 0:6ae2f7bca550 6725 {
Azure.IoT Build 0:6ae2f7bca550 6726 result = true;
Azure.IoT Build 0:6ae2f7bca550 6727 }
Azure.IoT Build 0:6ae2f7bca550 6728 else
Azure.IoT Build 0:6ae2f7bca550 6729 {
Azure.IoT Build 0:6ae2f7bca550 6730 result = false;
Azure.IoT Build 0:6ae2f7bca550 6731 }
Azure.IoT Build 0:6ae2f7bca550 6732
Azure.IoT Build 0:6ae2f7bca550 6733 return result;
Azure.IoT Build 0:6ae2f7bca550 6734 }
Azure.IoT Build 0:6ae2f7bca550 6735
Azure.IoT Build 0:6ae2f7bca550 6736
Azure.IoT Build 0:6ae2f7bca550 6737 int amqpvalue_get_detach(AMQP_VALUE value, DETACH_HANDLE* detach_handle)
Azure.IoT Build 0:6ae2f7bca550 6738 {
Azure.IoT Build 0:6ae2f7bca550 6739 int result;
Azure.IoT Build 0:6ae2f7bca550 6740 DETACH_INSTANCE* detach_instance = (DETACH_INSTANCE*)detach_create_internal();
Azure.IoT Build 0:6ae2f7bca550 6741 *detach_handle = detach_instance;
Azure.IoT Build 0:6ae2f7bca550 6742 if (*detach_handle == NULL)
Azure.IoT Build 0:6ae2f7bca550 6743 {
Azure.IoT Build 0:6ae2f7bca550 6744 result = __LINE__;
Azure.IoT Build 0:6ae2f7bca550 6745 }
Azure.IoT Build 0:6ae2f7bca550 6746 else
Azure.IoT Build 0:6ae2f7bca550 6747 {
Azure.IoT Build 0:6ae2f7bca550 6748 AMQP_VALUE list_value = amqpvalue_get_inplace_described_value(value);
Azure.IoT Build 0:6ae2f7bca550 6749 if (list_value == NULL)
Azure.IoT Build 0:6ae2f7bca550 6750 {
Azure.IoT Build 0:6ae2f7bca550 6751 detach_destroy(*detach_handle);
Azure.IoT Build 0:6ae2f7bca550 6752 result = __LINE__;
Azure.IoT Build 0:6ae2f7bca550 6753 }
Azure.IoT Build 0:6ae2f7bca550 6754 else
Azure.IoT Build 0:6ae2f7bca550 6755 {
Azure.IoT Build 0:6ae2f7bca550 6756 do
Azure.IoT Build 0:6ae2f7bca550 6757 {
Azure.IoT Build 0:6ae2f7bca550 6758 AMQP_VALUE item_value;
Azure.IoT Build 0:6ae2f7bca550 6759 /* handle */
Azure.IoT Build 0:6ae2f7bca550 6760 item_value = amqpvalue_get_list_item(list_value, 0);
Azure.IoT Build 0:6ae2f7bca550 6761 if (item_value == NULL)
Azure.IoT Build 0:6ae2f7bca550 6762 {
Azure.IoT Build 0:6ae2f7bca550 6763 {
Azure.IoT Build 0:6ae2f7bca550 6764 detach_destroy(*detach_handle);
Azure.IoT Build 0:6ae2f7bca550 6765 result = __LINE__;
Azure.IoT Build 0:6ae2f7bca550 6766 break;
Azure.IoT Build 0:6ae2f7bca550 6767 }
Azure.IoT Build 0:6ae2f7bca550 6768 }
Azure.IoT Build 0:6ae2f7bca550 6769 else
Azure.IoT Build 0:6ae2f7bca550 6770 {
Azure.IoT Build 0:6ae2f7bca550 6771 handle handle;
Azure.IoT Build 0:6ae2f7bca550 6772 if (amqpvalue_get_handle(item_value, &handle) != 0)
Azure.IoT Build 0:6ae2f7bca550 6773 {
Azure.IoT Build 0:6ae2f7bca550 6774 detach_destroy(*detach_handle);
Azure.IoT Build 0:6ae2f7bca550 6775 result = __LINE__;
Azure.IoT Build 0:6ae2f7bca550 6776 break;
Azure.IoT Build 0:6ae2f7bca550 6777 }
Azure.IoT Build 0:6ae2f7bca550 6778
Azure.IoT Build 0:6ae2f7bca550 6779 amqpvalue_destroy(item_value);
Azure.IoT Build 0:6ae2f7bca550 6780 }
Azure.IoT Build 0:6ae2f7bca550 6781 /* closed */
Azure.IoT Build 0:6ae2f7bca550 6782 item_value = amqpvalue_get_list_item(list_value, 1);
Azure.IoT Build 0:6ae2f7bca550 6783 if (item_value == NULL)
Azure.IoT Build 0:6ae2f7bca550 6784 {
Azure.IoT Build 0:6ae2f7bca550 6785 /* do nothing */
Azure.IoT Build 0:6ae2f7bca550 6786 }
Azure.IoT Build 0:6ae2f7bca550 6787 else
Azure.IoT Build 0:6ae2f7bca550 6788 {
Azure.IoT Build 0:6ae2f7bca550 6789 bool closed;
Azure.IoT Build 0:6ae2f7bca550 6790 if (amqpvalue_get_boolean(item_value, &closed) != 0)
Azure.IoT Build 0:6ae2f7bca550 6791 {
Azure.IoT Build 0:6ae2f7bca550 6792 if (amqpvalue_get_type(item_value) != AMQP_TYPE_NULL)
Azure.IoT Build 0:6ae2f7bca550 6793 {
Azure.IoT Build 0:6ae2f7bca550 6794 detach_destroy(*detach_handle);
Azure.IoT Build 0:6ae2f7bca550 6795 result = __LINE__;
Azure.IoT Build 0:6ae2f7bca550 6796 break;
Azure.IoT Build 0:6ae2f7bca550 6797 }
Azure.IoT Build 0:6ae2f7bca550 6798 }
Azure.IoT Build 0:6ae2f7bca550 6799
Azure.IoT Build 0:6ae2f7bca550 6800 amqpvalue_destroy(item_value);
Azure.IoT Build 0:6ae2f7bca550 6801 }
Azure.IoT Build 0:6ae2f7bca550 6802 /* error */
Azure.IoT Build 0:6ae2f7bca550 6803 item_value = amqpvalue_get_list_item(list_value, 2);
Azure.IoT Build 0:6ae2f7bca550 6804 if (item_value == NULL)
Azure.IoT Build 0:6ae2f7bca550 6805 {
Azure.IoT Build 0:6ae2f7bca550 6806 /* do nothing */
Azure.IoT Build 0:6ae2f7bca550 6807 }
Azure.IoT Build 0:6ae2f7bca550 6808 else
Azure.IoT Build 0:6ae2f7bca550 6809 {
Azure.IoT Build 0:6ae2f7bca550 6810 ERROR_HANDLE error;
Azure.IoT Build 0:6ae2f7bca550 6811 if (amqpvalue_get_error(item_value, &error) != 0)
Azure.IoT Build 0:6ae2f7bca550 6812 {
Azure.IoT Build 0:6ae2f7bca550 6813 if (amqpvalue_get_type(item_value) != AMQP_TYPE_NULL)
Azure.IoT Build 0:6ae2f7bca550 6814 {
Azure.IoT Build 0:6ae2f7bca550 6815 detach_destroy(*detach_handle);
Azure.IoT Build 0:6ae2f7bca550 6816 result = __LINE__;
Azure.IoT Build 0:6ae2f7bca550 6817 break;
Azure.IoT Build 0:6ae2f7bca550 6818 }
Azure.IoT Build 0:6ae2f7bca550 6819 }
Azure.IoT Build 0:6ae2f7bca550 6820
Azure.IoT Build 0:6ae2f7bca550 6821 amqpvalue_destroy(item_value);
Azure.IoT Build 0:6ae2f7bca550 6822 }
Azure.IoT Build 0:6ae2f7bca550 6823
Azure.IoT Build 0:6ae2f7bca550 6824 detach_instance->composite_value = amqpvalue_clone(value);
Azure.IoT Build 0:6ae2f7bca550 6825
Azure.IoT Build 0:6ae2f7bca550 6826 result = 0;
Azure.IoT Build 0:6ae2f7bca550 6827 } while (0);
Azure.IoT Build 0:6ae2f7bca550 6828 }
Azure.IoT Build 0:6ae2f7bca550 6829 }
Azure.IoT Build 0:6ae2f7bca550 6830
Azure.IoT Build 0:6ae2f7bca550 6831 return result;
Azure.IoT Build 0:6ae2f7bca550 6832 }
Azure.IoT Build 0:6ae2f7bca550 6833
Azure.IoT Build 0:6ae2f7bca550 6834 int detach_get_handle(DETACH_HANDLE detach, handle* handle_value)
Azure.IoT Build 0:6ae2f7bca550 6835 {
Azure.IoT Build 0:6ae2f7bca550 6836 int result;
Azure.IoT Build 0:6ae2f7bca550 6837
Azure.IoT Build 0:6ae2f7bca550 6838 if (detach == NULL)
Azure.IoT Build 0:6ae2f7bca550 6839 {
Azure.IoT Build 0:6ae2f7bca550 6840 result = __LINE__;
Azure.IoT Build 0:6ae2f7bca550 6841 }
Azure.IoT Build 0:6ae2f7bca550 6842 else
Azure.IoT Build 0:6ae2f7bca550 6843 {
Azure.IoT Build 0:6ae2f7bca550 6844 DETACH_INSTANCE* detach_instance = (DETACH_INSTANCE*)detach;
Azure.IoT Build 0:6ae2f7bca550 6845 AMQP_VALUE item_value = amqpvalue_get_composite_item_in_place(detach_instance->composite_value, 0);
Azure.IoT Build 0:6ae2f7bca550 6846 if (item_value == NULL)
Azure.IoT Build 0:6ae2f7bca550 6847 {
Azure.IoT Build 0:6ae2f7bca550 6848 result = __LINE__;
Azure.IoT Build 0:6ae2f7bca550 6849 }
Azure.IoT Build 0:6ae2f7bca550 6850 else
Azure.IoT Build 0:6ae2f7bca550 6851 {
Azure.IoT Build 0:6ae2f7bca550 6852 if (amqpvalue_get_handle(item_value, handle_value) != 0)
Azure.IoT Build 0:6ae2f7bca550 6853 {
Azure.IoT Build 0:6ae2f7bca550 6854 result = __LINE__;
Azure.IoT Build 0:6ae2f7bca550 6855 }
Azure.IoT Build 0:6ae2f7bca550 6856 else
Azure.IoT Build 0:6ae2f7bca550 6857 {
Azure.IoT Build 0:6ae2f7bca550 6858 result = 0;
Azure.IoT Build 0:6ae2f7bca550 6859 }
Azure.IoT Build 0:6ae2f7bca550 6860 }
Azure.IoT Build 0:6ae2f7bca550 6861 }
Azure.IoT Build 0:6ae2f7bca550 6862
Azure.IoT Build 0:6ae2f7bca550 6863 return result;
Azure.IoT Build 0:6ae2f7bca550 6864 }
Azure.IoT Build 0:6ae2f7bca550 6865
Azure.IoT Build 0:6ae2f7bca550 6866 int detach_set_handle(DETACH_HANDLE detach, handle handle_value)
Azure.IoT Build 0:6ae2f7bca550 6867 {
Azure.IoT Build 0:6ae2f7bca550 6868 int result;
Azure.IoT Build 0:6ae2f7bca550 6869
Azure.IoT Build 0:6ae2f7bca550 6870 if (detach == NULL)
Azure.IoT Build 0:6ae2f7bca550 6871 {
Azure.IoT Build 0:6ae2f7bca550 6872 result = __LINE__;
Azure.IoT Build 0:6ae2f7bca550 6873 }
Azure.IoT Build 0:6ae2f7bca550 6874 else
Azure.IoT Build 0:6ae2f7bca550 6875 {
Azure.IoT Build 0:6ae2f7bca550 6876 DETACH_INSTANCE* detach_instance = (DETACH_INSTANCE*)detach;
Azure.IoT Build 0:6ae2f7bca550 6877 AMQP_VALUE handle_amqp_value = amqpvalue_create_handle(handle_value);
Azure.IoT Build 0:6ae2f7bca550 6878 if (handle_amqp_value == NULL)
Azure.IoT Build 0:6ae2f7bca550 6879 {
Azure.IoT Build 0:6ae2f7bca550 6880 result = __LINE__;
Azure.IoT Build 0:6ae2f7bca550 6881 }
Azure.IoT Build 0:6ae2f7bca550 6882 else
Azure.IoT Build 0:6ae2f7bca550 6883 {
Azure.IoT Build 0:6ae2f7bca550 6884 if (amqpvalue_set_composite_item(detach_instance->composite_value, 0, handle_amqp_value) != 0)
Azure.IoT Build 0:6ae2f7bca550 6885 {
Azure.IoT Build 0:6ae2f7bca550 6886 result = __LINE__;
Azure.IoT Build 0:6ae2f7bca550 6887 }
Azure.IoT Build 0:6ae2f7bca550 6888 else
Azure.IoT Build 0:6ae2f7bca550 6889 {
Azure.IoT Build 0:6ae2f7bca550 6890 result = 0;
Azure.IoT Build 0:6ae2f7bca550 6891 }
Azure.IoT Build 0:6ae2f7bca550 6892
Azure.IoT Build 0:6ae2f7bca550 6893 amqpvalue_destroy(handle_amqp_value);
Azure.IoT Build 0:6ae2f7bca550 6894 }
Azure.IoT Build 0:6ae2f7bca550 6895 }
Azure.IoT Build 0:6ae2f7bca550 6896
Azure.IoT Build 0:6ae2f7bca550 6897 return result;
Azure.IoT Build 0:6ae2f7bca550 6898 }
Azure.IoT Build 0:6ae2f7bca550 6899
Azure.IoT Build 0:6ae2f7bca550 6900 int detach_get_closed(DETACH_HANDLE detach, bool* closed_value)
Azure.IoT Build 0:6ae2f7bca550 6901 {
Azure.IoT Build 0:6ae2f7bca550 6902 int result;
Azure.IoT Build 0:6ae2f7bca550 6903
Azure.IoT Build 0:6ae2f7bca550 6904 if (detach == NULL)
Azure.IoT Build 0:6ae2f7bca550 6905 {
Azure.IoT Build 0:6ae2f7bca550 6906 result = __LINE__;
Azure.IoT Build 0:6ae2f7bca550 6907 }
Azure.IoT Build 0:6ae2f7bca550 6908 else
Azure.IoT Build 0:6ae2f7bca550 6909 {
Azure.IoT Build 0:6ae2f7bca550 6910 DETACH_INSTANCE* detach_instance = (DETACH_INSTANCE*)detach;
Azure.IoT Build 0:6ae2f7bca550 6911 AMQP_VALUE item_value = amqpvalue_get_composite_item_in_place(detach_instance->composite_value, 1);
Azure.IoT Build 0:6ae2f7bca550 6912 if (item_value == NULL)
Azure.IoT Build 0:6ae2f7bca550 6913 {
Azure.IoT Build 0:6ae2f7bca550 6914 result = __LINE__;
Azure.IoT Build 0:6ae2f7bca550 6915 }
Azure.IoT Build 0:6ae2f7bca550 6916 else
Azure.IoT Build 0:6ae2f7bca550 6917 {
Azure.IoT Build 0:6ae2f7bca550 6918 if (amqpvalue_get_boolean(item_value, closed_value) != 0)
Azure.IoT Build 0:6ae2f7bca550 6919 {
Azure.IoT Build 0:6ae2f7bca550 6920 result = __LINE__;
Azure.IoT Build 0:6ae2f7bca550 6921 }
Azure.IoT Build 0:6ae2f7bca550 6922 else
Azure.IoT Build 0:6ae2f7bca550 6923 {
Azure.IoT Build 0:6ae2f7bca550 6924 result = 0;
Azure.IoT Build 0:6ae2f7bca550 6925 }
Azure.IoT Build 0:6ae2f7bca550 6926 }
Azure.IoT Build 0:6ae2f7bca550 6927 }
Azure.IoT Build 0:6ae2f7bca550 6928
Azure.IoT Build 0:6ae2f7bca550 6929 return result;
Azure.IoT Build 0:6ae2f7bca550 6930 }
Azure.IoT Build 0:6ae2f7bca550 6931
Azure.IoT Build 0:6ae2f7bca550 6932 int detach_set_closed(DETACH_HANDLE detach, bool closed_value)
Azure.IoT Build 0:6ae2f7bca550 6933 {
Azure.IoT Build 0:6ae2f7bca550 6934 int result;
Azure.IoT Build 0:6ae2f7bca550 6935
Azure.IoT Build 0:6ae2f7bca550 6936 if (detach == NULL)
Azure.IoT Build 0:6ae2f7bca550 6937 {
Azure.IoT Build 0:6ae2f7bca550 6938 result = __LINE__;
Azure.IoT Build 0:6ae2f7bca550 6939 }
Azure.IoT Build 0:6ae2f7bca550 6940 else
Azure.IoT Build 0:6ae2f7bca550 6941 {
Azure.IoT Build 0:6ae2f7bca550 6942 DETACH_INSTANCE* detach_instance = (DETACH_INSTANCE*)detach;
Azure.IoT Build 0:6ae2f7bca550 6943 AMQP_VALUE closed_amqp_value = amqpvalue_create_boolean(closed_value);
Azure.IoT Build 0:6ae2f7bca550 6944 if (closed_amqp_value == NULL)
Azure.IoT Build 0:6ae2f7bca550 6945 {
Azure.IoT Build 0:6ae2f7bca550 6946 result = __LINE__;
Azure.IoT Build 0:6ae2f7bca550 6947 }
Azure.IoT Build 0:6ae2f7bca550 6948 else
Azure.IoT Build 0:6ae2f7bca550 6949 {
Azure.IoT Build 0:6ae2f7bca550 6950 if (amqpvalue_set_composite_item(detach_instance->composite_value, 1, closed_amqp_value) != 0)
Azure.IoT Build 0:6ae2f7bca550 6951 {
Azure.IoT Build 0:6ae2f7bca550 6952 result = __LINE__;
Azure.IoT Build 0:6ae2f7bca550 6953 }
Azure.IoT Build 0:6ae2f7bca550 6954 else
Azure.IoT Build 0:6ae2f7bca550 6955 {
Azure.IoT Build 0:6ae2f7bca550 6956 result = 0;
Azure.IoT Build 0:6ae2f7bca550 6957 }
Azure.IoT Build 0:6ae2f7bca550 6958
Azure.IoT Build 0:6ae2f7bca550 6959 amqpvalue_destroy(closed_amqp_value);
Azure.IoT Build 0:6ae2f7bca550 6960 }
Azure.IoT Build 0:6ae2f7bca550 6961 }
Azure.IoT Build 0:6ae2f7bca550 6962
Azure.IoT Build 0:6ae2f7bca550 6963 return result;
Azure.IoT Build 0:6ae2f7bca550 6964 }
Azure.IoT Build 0:6ae2f7bca550 6965
Azure.IoT Build 0:6ae2f7bca550 6966 int detach_get_error(DETACH_HANDLE detach, ERROR_HANDLE* error_value)
Azure.IoT Build 0:6ae2f7bca550 6967 {
Azure.IoT Build 0:6ae2f7bca550 6968 int result;
Azure.IoT Build 0:6ae2f7bca550 6969
Azure.IoT Build 0:6ae2f7bca550 6970 if (detach == NULL)
Azure.IoT Build 0:6ae2f7bca550 6971 {
Azure.IoT Build 0:6ae2f7bca550 6972 result = __LINE__;
Azure.IoT Build 0:6ae2f7bca550 6973 }
Azure.IoT Build 0:6ae2f7bca550 6974 else
Azure.IoT Build 0:6ae2f7bca550 6975 {
Azure.IoT Build 0:6ae2f7bca550 6976 DETACH_INSTANCE* detach_instance = (DETACH_INSTANCE*)detach;
Azure.IoT Build 0:6ae2f7bca550 6977 AMQP_VALUE item_value = amqpvalue_get_composite_item_in_place(detach_instance->composite_value, 2);
Azure.IoT Build 0:6ae2f7bca550 6978 if (item_value == NULL)
Azure.IoT Build 0:6ae2f7bca550 6979 {
Azure.IoT Build 0:6ae2f7bca550 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 if (amqpvalue_get_error(item_value, error_value) != 0)
Azure.IoT Build 0:6ae2f7bca550 6985 {
Azure.IoT Build 0:6ae2f7bca550 6986 result = __LINE__;
Azure.IoT Build 0:6ae2f7bca550 6987 }
Azure.IoT Build 0:6ae2f7bca550 6988 else
Azure.IoT Build 0:6ae2f7bca550 6989 {
Azure.IoT Build 0:6ae2f7bca550 6990 result = 0;
Azure.IoT Build 0:6ae2f7bca550 6991 }
Azure.IoT Build 0:6ae2f7bca550 6992 }
Azure.IoT Build 0:6ae2f7bca550 6993 }
Azure.IoT Build 0:6ae2f7bca550 6994
Azure.IoT Build 0:6ae2f7bca550 6995 return result;
Azure.IoT Build 0:6ae2f7bca550 6996 }
Azure.IoT Build 0:6ae2f7bca550 6997
Azure.IoT Build 0:6ae2f7bca550 6998 int detach_set_error(DETACH_HANDLE detach, ERROR_HANDLE error_value)
Azure.IoT Build 0:6ae2f7bca550 6999 {
Azure.IoT Build 0:6ae2f7bca550 7000 int result;
Azure.IoT Build 0:6ae2f7bca550 7001
Azure.IoT Build 0:6ae2f7bca550 7002 if (detach == NULL)
Azure.IoT Build 0:6ae2f7bca550 7003 {
Azure.IoT Build 0:6ae2f7bca550 7004 result = __LINE__;
Azure.IoT Build 0:6ae2f7bca550 7005 }
Azure.IoT Build 0:6ae2f7bca550 7006 else
Azure.IoT Build 0:6ae2f7bca550 7007 {
Azure.IoT Build 0:6ae2f7bca550 7008 DETACH_INSTANCE* detach_instance = (DETACH_INSTANCE*)detach;
Azure.IoT Build 0:6ae2f7bca550 7009 AMQP_VALUE error_amqp_value = amqpvalue_create_error(error_value);
Azure.IoT Build 0:6ae2f7bca550 7010 if (error_amqp_value == NULL)
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 if (amqpvalue_set_composite_item(detach_instance->composite_value, 2, error_amqp_value) != 0)
Azure.IoT Build 0:6ae2f7bca550 7017 {
Azure.IoT Build 0:6ae2f7bca550 7018 result = __LINE__;
Azure.IoT Build 0:6ae2f7bca550 7019 }
Azure.IoT Build 0:6ae2f7bca550 7020 else
Azure.IoT Build 0:6ae2f7bca550 7021 {
Azure.IoT Build 0:6ae2f7bca550 7022 result = 0;
Azure.IoT Build 0:6ae2f7bca550 7023 }
Azure.IoT Build 0:6ae2f7bca550 7024
Azure.IoT Build 0:6ae2f7bca550 7025 amqpvalue_destroy(error_amqp_value);
Azure.IoT Build 0:6ae2f7bca550 7026 }
Azure.IoT Build 0:6ae2f7bca550 7027 }
Azure.IoT Build 0:6ae2f7bca550 7028
Azure.IoT Build 0:6ae2f7bca550 7029 return result;
Azure.IoT Build 0:6ae2f7bca550 7030 }
Azure.IoT Build 0:6ae2f7bca550 7031
Azure.IoT Build 0:6ae2f7bca550 7032
Azure.IoT Build 0:6ae2f7bca550 7033 /* end */
Azure.IoT Build 0:6ae2f7bca550 7034
Azure.IoT Build 0:6ae2f7bca550 7035 typedef struct END_INSTANCE_TAG
Azure.IoT Build 0:6ae2f7bca550 7036 {
Azure.IoT Build 0:6ae2f7bca550 7037 AMQP_VALUE composite_value;
Azure.IoT Build 0:6ae2f7bca550 7038 } END_INSTANCE;
Azure.IoT Build 0:6ae2f7bca550 7039
Azure.IoT Build 0:6ae2f7bca550 7040 static END_HANDLE end_create_internal(void)
Azure.IoT Build 0:6ae2f7bca550 7041 {
Azure.IoT Build 0:6ae2f7bca550 7042 END_INSTANCE* end_instance = (END_INSTANCE*)amqpalloc_malloc(sizeof(END_INSTANCE));
Azure.IoT Build 0:6ae2f7bca550 7043 if (end_instance != NULL)
Azure.IoT Build 0:6ae2f7bca550 7044 {
Azure.IoT Build 0:6ae2f7bca550 7045 end_instance->composite_value = NULL;
Azure.IoT Build 0:6ae2f7bca550 7046 }
Azure.IoT Build 0:6ae2f7bca550 7047
Azure.IoT Build 0:6ae2f7bca550 7048 return end_instance;
Azure.IoT Build 0:6ae2f7bca550 7049 }
Azure.IoT Build 0:6ae2f7bca550 7050
Azure.IoT Build 0:6ae2f7bca550 7051 END_HANDLE end_create(void)
Azure.IoT Build 0:6ae2f7bca550 7052 {
Azure.IoT Build 0:6ae2f7bca550 7053 END_INSTANCE* end_instance = (END_INSTANCE*)amqpalloc_malloc(sizeof(END_INSTANCE));
Azure.IoT Build 0:6ae2f7bca550 7054 if (end_instance != NULL)
Azure.IoT Build 0:6ae2f7bca550 7055 {
Azure.IoT Build 0:6ae2f7bca550 7056 end_instance->composite_value = amqpvalue_create_composite_with_ulong_descriptor(23);
Azure.IoT Build 0:6ae2f7bca550 7057 if (end_instance->composite_value == NULL)
Azure.IoT Build 0:6ae2f7bca550 7058 {
Azure.IoT Build 0:6ae2f7bca550 7059 amqpalloc_free(end_instance);
Azure.IoT Build 0:6ae2f7bca550 7060 end_instance = NULL;
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 end_instance;
Azure.IoT Build 0:6ae2f7bca550 7065 }
Azure.IoT Build 0:6ae2f7bca550 7066
Azure.IoT Build 0:6ae2f7bca550 7067 END_HANDLE end_clone(END_HANDLE value)
Azure.IoT Build 0:6ae2f7bca550 7068 {
Azure.IoT Build 0:6ae2f7bca550 7069 END_INSTANCE* end_instance = (END_INSTANCE*)amqpalloc_malloc(sizeof(END_INSTANCE));
Azure.IoT Build 0:6ae2f7bca550 7070 if (end_instance != NULL)
Azure.IoT Build 0:6ae2f7bca550 7071 {
Azure.IoT Build 0:6ae2f7bca550 7072 end_instance->composite_value = amqpvalue_clone(((END_INSTANCE*)value)->composite_value);
Azure.IoT Build 0:6ae2f7bca550 7073 if (end_instance->composite_value == NULL)
Azure.IoT Build 0:6ae2f7bca550 7074 {
Azure.IoT Build 0:6ae2f7bca550 7075 amqpalloc_free(end_instance);
Azure.IoT Build 0:6ae2f7bca550 7076 end_instance = NULL;
Azure.IoT Build 0:6ae2f7bca550 7077 }
Azure.IoT Build 0:6ae2f7bca550 7078 }
Azure.IoT Build 0:6ae2f7bca550 7079
Azure.IoT Build 0:6ae2f7bca550 7080 return end_instance;
Azure.IoT Build 0:6ae2f7bca550 7081 }
Azure.IoT Build 0:6ae2f7bca550 7082
Azure.IoT Build 0:6ae2f7bca550 7083 void end_destroy(END_HANDLE end)
Azure.IoT Build 0:6ae2f7bca550 7084 {
Azure.IoT Build 0:6ae2f7bca550 7085 if (end != NULL)
Azure.IoT Build 0:6ae2f7bca550 7086 {
Azure.IoT Build 0:6ae2f7bca550 7087 END_INSTANCE* end_instance = (END_INSTANCE*)end;
Azure.IoT Build 0:6ae2f7bca550 7088 amqpvalue_destroy(end_instance->composite_value);
Azure.IoT Build 0:6ae2f7bca550 7089 amqpalloc_free(end_instance);
Azure.IoT Build 0:6ae2f7bca550 7090 }
Azure.IoT Build 0:6ae2f7bca550 7091 }
Azure.IoT Build 0:6ae2f7bca550 7092
Azure.IoT Build 0:6ae2f7bca550 7093 AMQP_VALUE amqpvalue_create_end(END_HANDLE end)
Azure.IoT Build 0:6ae2f7bca550 7094 {
Azure.IoT Build 0:6ae2f7bca550 7095 AMQP_VALUE result;
Azure.IoT Build 0:6ae2f7bca550 7096
Azure.IoT Build 0:6ae2f7bca550 7097 if (end == NULL)
Azure.IoT Build 0:6ae2f7bca550 7098 {
Azure.IoT Build 0:6ae2f7bca550 7099 result = NULL;
Azure.IoT Build 0:6ae2f7bca550 7100 }
Azure.IoT Build 0:6ae2f7bca550 7101 else
Azure.IoT Build 0:6ae2f7bca550 7102 {
Azure.IoT Build 0:6ae2f7bca550 7103 END_INSTANCE* end_instance = (END_INSTANCE*)end;
Azure.IoT Build 0:6ae2f7bca550 7104 result = amqpvalue_clone(end_instance->composite_value);
Azure.IoT Build 0:6ae2f7bca550 7105 }
Azure.IoT Build 0:6ae2f7bca550 7106
Azure.IoT Build 0:6ae2f7bca550 7107 return result;
Azure.IoT Build 0:6ae2f7bca550 7108 }
Azure.IoT Build 0:6ae2f7bca550 7109
Azure.IoT Build 0:6ae2f7bca550 7110 bool is_end_type_by_descriptor(AMQP_VALUE descriptor)
Azure.IoT Build 0:6ae2f7bca550 7111 {
Azure.IoT Build 0:6ae2f7bca550 7112 bool result;
Azure.IoT Build 0:6ae2f7bca550 7113
Azure.IoT Build 0:6ae2f7bca550 7114 uint64_t descriptor_ulong;
Azure.IoT Build 0:6ae2f7bca550 7115 if ((amqpvalue_get_ulong(descriptor, &descriptor_ulong) == 0) &&
Azure.IoT Build 0:6ae2f7bca550 7116 (descriptor_ulong == 23))
Azure.IoT Build 0:6ae2f7bca550 7117 {
Azure.IoT Build 0:6ae2f7bca550 7118 result = true;
Azure.IoT Build 0:6ae2f7bca550 7119 }
Azure.IoT Build 0:6ae2f7bca550 7120 else
Azure.IoT Build 0:6ae2f7bca550 7121 {
Azure.IoT Build 0:6ae2f7bca550 7122 result = false;
Azure.IoT Build 0:6ae2f7bca550 7123 }
Azure.IoT Build 0:6ae2f7bca550 7124
Azure.IoT Build 0:6ae2f7bca550 7125 return result;
Azure.IoT Build 0:6ae2f7bca550 7126 }
Azure.IoT Build 0:6ae2f7bca550 7127
Azure.IoT Build 0:6ae2f7bca550 7128
Azure.IoT Build 0:6ae2f7bca550 7129 int amqpvalue_get_end(AMQP_VALUE value, END_HANDLE* end_handle)
Azure.IoT Build 0:6ae2f7bca550 7130 {
Azure.IoT Build 0:6ae2f7bca550 7131 int result;
Azure.IoT Build 0:6ae2f7bca550 7132 END_INSTANCE* end_instance = (END_INSTANCE*)end_create_internal();
Azure.IoT Build 0:6ae2f7bca550 7133 *end_handle = end_instance;
Azure.IoT Build 0:6ae2f7bca550 7134 if (*end_handle == NULL)
Azure.IoT Build 0:6ae2f7bca550 7135 {
Azure.IoT Build 0:6ae2f7bca550 7136 result = __LINE__;
Azure.IoT Build 0:6ae2f7bca550 7137 }
Azure.IoT Build 0:6ae2f7bca550 7138 else
Azure.IoT Build 0:6ae2f7bca550 7139 {
Azure.IoT Build 0:6ae2f7bca550 7140 AMQP_VALUE list_value = amqpvalue_get_inplace_described_value(value);
Azure.IoT Build 0:6ae2f7bca550 7141 if (list_value == NULL)
Azure.IoT Build 0:6ae2f7bca550 7142 {
Azure.IoT Build 0:6ae2f7bca550 7143 end_destroy(*end_handle);
Azure.IoT Build 0:6ae2f7bca550 7144 result = __LINE__;
Azure.IoT Build 0:6ae2f7bca550 7145 }
Azure.IoT Build 0:6ae2f7bca550 7146 else
Azure.IoT Build 0:6ae2f7bca550 7147 {
Azure.IoT Build 0:6ae2f7bca550 7148 do
Azure.IoT Build 0:6ae2f7bca550 7149 {
Azure.IoT Build 0:6ae2f7bca550 7150 AMQP_VALUE item_value;
Azure.IoT Build 0:6ae2f7bca550 7151 /* error */
Azure.IoT Build 0:6ae2f7bca550 7152 item_value = amqpvalue_get_list_item(list_value, 0);
Azure.IoT Build 0:6ae2f7bca550 7153 if (item_value == NULL)
Azure.IoT Build 0:6ae2f7bca550 7154 {
Azure.IoT Build 0:6ae2f7bca550 7155 /* do nothing */
Azure.IoT Build 0:6ae2f7bca550 7156 }
Azure.IoT Build 0:6ae2f7bca550 7157 else
Azure.IoT Build 0:6ae2f7bca550 7158 {
Azure.IoT Build 0:6ae2f7bca550 7159 ERROR_HANDLE error;
Azure.IoT Build 0:6ae2f7bca550 7160 if (amqpvalue_get_error(item_value, &error) != 0)
Azure.IoT Build 0:6ae2f7bca550 7161 {
Azure.IoT Build 0:6ae2f7bca550 7162 if (amqpvalue_get_type(item_value) != AMQP_TYPE_NULL)
Azure.IoT Build 0:6ae2f7bca550 7163 {
Azure.IoT Build 0:6ae2f7bca550 7164 end_destroy(*end_handle);
Azure.IoT Build 0:6ae2f7bca550 7165 result = __LINE__;
Azure.IoT Build 0:6ae2f7bca550 7166 break;
Azure.IoT Build 0:6ae2f7bca550 7167 }
Azure.IoT Build 0:6ae2f7bca550 7168 }
Azure.IoT Build 0:6ae2f7bca550 7169
Azure.IoT Build 0:6ae2f7bca550 7170 amqpvalue_destroy(item_value);
Azure.IoT Build 0:6ae2f7bca550 7171 }
Azure.IoT Build 0:6ae2f7bca550 7172
Azure.IoT Build 0:6ae2f7bca550 7173 end_instance->composite_value = amqpvalue_clone(value);
Azure.IoT Build 0:6ae2f7bca550 7174
Azure.IoT Build 0:6ae2f7bca550 7175 result = 0;
Azure.IoT Build 0:6ae2f7bca550 7176 } while (0);
Azure.IoT Build 0:6ae2f7bca550 7177 }
Azure.IoT Build 0:6ae2f7bca550 7178 }
Azure.IoT Build 0:6ae2f7bca550 7179
Azure.IoT Build 0:6ae2f7bca550 7180 return result;
Azure.IoT Build 0:6ae2f7bca550 7181 }
Azure.IoT Build 0:6ae2f7bca550 7182
Azure.IoT Build 0:6ae2f7bca550 7183 int end_get_error(END_HANDLE end, ERROR_HANDLE* error_value)
Azure.IoT Build 0:6ae2f7bca550 7184 {
Azure.IoT Build 0:6ae2f7bca550 7185 int result;
Azure.IoT Build 0:6ae2f7bca550 7186
Azure.IoT Build 0:6ae2f7bca550 7187 if (end == NULL)
Azure.IoT Build 0:6ae2f7bca550 7188 {
Azure.IoT Build 0:6ae2f7bca550 7189 result = __LINE__;
Azure.IoT Build 0:6ae2f7bca550 7190 }
Azure.IoT Build 0:6ae2f7bca550 7191 else
Azure.IoT Build 0:6ae2f7bca550 7192 {
Azure.IoT Build 0:6ae2f7bca550 7193 END_INSTANCE* end_instance = (END_INSTANCE*)end;
Azure.IoT Build 0:6ae2f7bca550 7194 AMQP_VALUE item_value = amqpvalue_get_composite_item_in_place(end_instance->composite_value, 0);
Azure.IoT Build 0:6ae2f7bca550 7195 if (item_value == NULL)
Azure.IoT Build 0:6ae2f7bca550 7196 {
Azure.IoT Build 0:6ae2f7bca550 7197 result = __LINE__;
Azure.IoT Build 0:6ae2f7bca550 7198 }
Azure.IoT Build 0:6ae2f7bca550 7199 else
Azure.IoT Build 0:6ae2f7bca550 7200 {
Azure.IoT Build 0:6ae2f7bca550 7201 if (amqpvalue_get_error(item_value, error_value) != 0)
Azure.IoT Build 0:6ae2f7bca550 7202 {
Azure.IoT Build 0:6ae2f7bca550 7203 result = __LINE__;
Azure.IoT Build 0:6ae2f7bca550 7204 }
Azure.IoT Build 0:6ae2f7bca550 7205 else
Azure.IoT Build 0:6ae2f7bca550 7206 {
Azure.IoT Build 0:6ae2f7bca550 7207 result = 0;
Azure.IoT Build 0:6ae2f7bca550 7208 }
Azure.IoT Build 0:6ae2f7bca550 7209 }
Azure.IoT Build 0:6ae2f7bca550 7210 }
Azure.IoT Build 0:6ae2f7bca550 7211
Azure.IoT Build 0:6ae2f7bca550 7212 return result;
Azure.IoT Build 0:6ae2f7bca550 7213 }
Azure.IoT Build 0:6ae2f7bca550 7214
Azure.IoT Build 0:6ae2f7bca550 7215 int end_set_error(END_HANDLE end, ERROR_HANDLE error_value)
Azure.IoT Build 0:6ae2f7bca550 7216 {
Azure.IoT Build 0:6ae2f7bca550 7217 int result;
Azure.IoT Build 0:6ae2f7bca550 7218
Azure.IoT Build 0:6ae2f7bca550 7219 if (end == NULL)
Azure.IoT Build 0:6ae2f7bca550 7220 {
Azure.IoT Build 0:6ae2f7bca550 7221 result = __LINE__;
Azure.IoT Build 0:6ae2f7bca550 7222 }
Azure.IoT Build 0:6ae2f7bca550 7223 else
Azure.IoT Build 0:6ae2f7bca550 7224 {
Azure.IoT Build 0:6ae2f7bca550 7225 END_INSTANCE* end_instance = (END_INSTANCE*)end;
Azure.IoT Build 0:6ae2f7bca550 7226 AMQP_VALUE error_amqp_value = amqpvalue_create_error(error_value);
Azure.IoT Build 0:6ae2f7bca550 7227 if (error_amqp_value == NULL)
Azure.IoT Build 0:6ae2f7bca550 7228 {
Azure.IoT Build 0:6ae2f7bca550 7229 result = __LINE__;
Azure.IoT Build 0:6ae2f7bca550 7230 }
Azure.IoT Build 0:6ae2f7bca550 7231 else
Azure.IoT Build 0:6ae2f7bca550 7232 {
Azure.IoT Build 0:6ae2f7bca550 7233 if (amqpvalue_set_composite_item(end_instance->composite_value, 0, error_amqp_value) != 0)
Azure.IoT Build 0:6ae2f7bca550 7234 {
Azure.IoT Build 0:6ae2f7bca550 7235 result = __LINE__;
Azure.IoT Build 0:6ae2f7bca550 7236 }
Azure.IoT Build 0:6ae2f7bca550 7237 else
Azure.IoT Build 0:6ae2f7bca550 7238 {
Azure.IoT Build 0:6ae2f7bca550 7239 result = 0;
Azure.IoT Build 0:6ae2f7bca550 7240 }
Azure.IoT Build 0:6ae2f7bca550 7241
Azure.IoT Build 0:6ae2f7bca550 7242 amqpvalue_destroy(error_amqp_value);
Azure.IoT Build 0:6ae2f7bca550 7243 }
Azure.IoT Build 0:6ae2f7bca550 7244 }
Azure.IoT Build 0:6ae2f7bca550 7245
Azure.IoT Build 0:6ae2f7bca550 7246 return result;
Azure.IoT Build 0:6ae2f7bca550 7247 }
Azure.IoT Build 0:6ae2f7bca550 7248
Azure.IoT Build 0:6ae2f7bca550 7249
Azure.IoT Build 0:6ae2f7bca550 7250 /* close */
Azure.IoT Build 0:6ae2f7bca550 7251
Azure.IoT Build 0:6ae2f7bca550 7252 typedef struct CLOSE_INSTANCE_TAG
Azure.IoT Build 0:6ae2f7bca550 7253 {
Azure.IoT Build 0:6ae2f7bca550 7254 AMQP_VALUE composite_value;
Azure.IoT Build 0:6ae2f7bca550 7255 } CLOSE_INSTANCE;
Azure.IoT Build 0:6ae2f7bca550 7256
Azure.IoT Build 0:6ae2f7bca550 7257 static CLOSE_HANDLE close_create_internal(void)
Azure.IoT Build 0:6ae2f7bca550 7258 {
Azure.IoT Build 0:6ae2f7bca550 7259 CLOSE_INSTANCE* close_instance = (CLOSE_INSTANCE*)amqpalloc_malloc(sizeof(CLOSE_INSTANCE));
Azure.IoT Build 0:6ae2f7bca550 7260 if (close_instance != NULL)
Azure.IoT Build 0:6ae2f7bca550 7261 {
Azure.IoT Build 0:6ae2f7bca550 7262 close_instance->composite_value = NULL;
Azure.IoT Build 0:6ae2f7bca550 7263 }
Azure.IoT Build 0:6ae2f7bca550 7264
Azure.IoT Build 0:6ae2f7bca550 7265 return close_instance;
Azure.IoT Build 0:6ae2f7bca550 7266 }
Azure.IoT Build 0:6ae2f7bca550 7267
Azure.IoT Build 0:6ae2f7bca550 7268 CLOSE_HANDLE close_create(void)
Azure.IoT Build 0:6ae2f7bca550 7269 {
Azure.IoT Build 0:6ae2f7bca550 7270 CLOSE_INSTANCE* close_instance = (CLOSE_INSTANCE*)amqpalloc_malloc(sizeof(CLOSE_INSTANCE));
Azure.IoT Build 0:6ae2f7bca550 7271 if (close_instance != NULL)
Azure.IoT Build 0:6ae2f7bca550 7272 {
Azure.IoT Build 0:6ae2f7bca550 7273 close_instance->composite_value = amqpvalue_create_composite_with_ulong_descriptor(24);
Azure.IoT Build 0:6ae2f7bca550 7274 if (close_instance->composite_value == NULL)
Azure.IoT Build 0:6ae2f7bca550 7275 {
Azure.IoT Build 0:6ae2f7bca550 7276 amqpalloc_free(close_instance);
Azure.IoT Build 0:6ae2f7bca550 7277 close_instance = NULL;
Azure.IoT Build 0:6ae2f7bca550 7278 }
Azure.IoT Build 0:6ae2f7bca550 7279 }
Azure.IoT Build 0:6ae2f7bca550 7280
Azure.IoT Build 0:6ae2f7bca550 7281 return close_instance;
Azure.IoT Build 0:6ae2f7bca550 7282 }
Azure.IoT Build 0:6ae2f7bca550 7283
Azure.IoT Build 0:6ae2f7bca550 7284 CLOSE_HANDLE close_clone(CLOSE_HANDLE value)
Azure.IoT Build 0:6ae2f7bca550 7285 {
Azure.IoT Build 0:6ae2f7bca550 7286 CLOSE_INSTANCE* close_instance = (CLOSE_INSTANCE*)amqpalloc_malloc(sizeof(CLOSE_INSTANCE));
Azure.IoT Build 0:6ae2f7bca550 7287 if (close_instance != NULL)
Azure.IoT Build 0:6ae2f7bca550 7288 {
Azure.IoT Build 0:6ae2f7bca550 7289 close_instance->composite_value = amqpvalue_clone(((CLOSE_INSTANCE*)value)->composite_value);
Azure.IoT Build 0:6ae2f7bca550 7290 if (close_instance->composite_value == NULL)
Azure.IoT Build 0:6ae2f7bca550 7291 {
Azure.IoT Build 0:6ae2f7bca550 7292 amqpalloc_free(close_instance);
Azure.IoT Build 0:6ae2f7bca550 7293 close_instance = NULL;
Azure.IoT Build 0:6ae2f7bca550 7294 }
Azure.IoT Build 0:6ae2f7bca550 7295 }
Azure.IoT Build 0:6ae2f7bca550 7296
Azure.IoT Build 0:6ae2f7bca550 7297 return close_instance;
Azure.IoT Build 0:6ae2f7bca550 7298 }
Azure.IoT Build 0:6ae2f7bca550 7299
Azure.IoT Build 0:6ae2f7bca550 7300 void close_destroy(CLOSE_HANDLE close)
Azure.IoT Build 0:6ae2f7bca550 7301 {
Azure.IoT Build 0:6ae2f7bca550 7302 if (close != NULL)
Azure.IoT Build 0:6ae2f7bca550 7303 {
Azure.IoT Build 0:6ae2f7bca550 7304 CLOSE_INSTANCE* close_instance = (CLOSE_INSTANCE*)close;
Azure.IoT Build 0:6ae2f7bca550 7305 amqpvalue_destroy(close_instance->composite_value);
Azure.IoT Build 0:6ae2f7bca550 7306 amqpalloc_free(close_instance);
Azure.IoT Build 0:6ae2f7bca550 7307 }
Azure.IoT Build 0:6ae2f7bca550 7308 }
Azure.IoT Build 0:6ae2f7bca550 7309
Azure.IoT Build 0:6ae2f7bca550 7310 AMQP_VALUE amqpvalue_create_close(CLOSE_HANDLE close)
Azure.IoT Build 0:6ae2f7bca550 7311 {
Azure.IoT Build 0:6ae2f7bca550 7312 AMQP_VALUE result;
Azure.IoT Build 0:6ae2f7bca550 7313
Azure.IoT Build 0:6ae2f7bca550 7314 if (close == NULL)
Azure.IoT Build 0:6ae2f7bca550 7315 {
Azure.IoT Build 0:6ae2f7bca550 7316 result = NULL;
Azure.IoT Build 0:6ae2f7bca550 7317 }
Azure.IoT Build 0:6ae2f7bca550 7318 else
Azure.IoT Build 0:6ae2f7bca550 7319 {
Azure.IoT Build 0:6ae2f7bca550 7320 CLOSE_INSTANCE* close_instance = (CLOSE_INSTANCE*)close;
Azure.IoT Build 0:6ae2f7bca550 7321 result = amqpvalue_clone(close_instance->composite_value);
Azure.IoT Build 0:6ae2f7bca550 7322 }
Azure.IoT Build 0:6ae2f7bca550 7323
Azure.IoT Build 0:6ae2f7bca550 7324 return result;
Azure.IoT Build 0:6ae2f7bca550 7325 }
Azure.IoT Build 0:6ae2f7bca550 7326
Azure.IoT Build 0:6ae2f7bca550 7327 bool is_close_type_by_descriptor(AMQP_VALUE descriptor)
Azure.IoT Build 0:6ae2f7bca550 7328 {
Azure.IoT Build 0:6ae2f7bca550 7329 bool result;
Azure.IoT Build 0:6ae2f7bca550 7330
Azure.IoT Build 0:6ae2f7bca550 7331 uint64_t descriptor_ulong;
Azure.IoT Build 0:6ae2f7bca550 7332 if ((amqpvalue_get_ulong(descriptor, &descriptor_ulong) == 0) &&
Azure.IoT Build 0:6ae2f7bca550 7333 (descriptor_ulong == 24))
Azure.IoT Build 0:6ae2f7bca550 7334 {
Azure.IoT Build 0:6ae2f7bca550 7335 result = true;
Azure.IoT Build 0:6ae2f7bca550 7336 }
Azure.IoT Build 0:6ae2f7bca550 7337 else
Azure.IoT Build 0:6ae2f7bca550 7338 {
Azure.IoT Build 0:6ae2f7bca550 7339 result = false;
Azure.IoT Build 0:6ae2f7bca550 7340 }
Azure.IoT Build 0:6ae2f7bca550 7341
Azure.IoT Build 0:6ae2f7bca550 7342 return result;
Azure.IoT Build 0:6ae2f7bca550 7343 }
Azure.IoT Build 0:6ae2f7bca550 7344
Azure.IoT Build 0:6ae2f7bca550 7345
Azure.IoT Build 0:6ae2f7bca550 7346 int amqpvalue_get_close(AMQP_VALUE value, CLOSE_HANDLE* close_handle)
Azure.IoT Build 0:6ae2f7bca550 7347 {
Azure.IoT Build 0:6ae2f7bca550 7348 int result;
Azure.IoT Build 0:6ae2f7bca550 7349 CLOSE_INSTANCE* close_instance = (CLOSE_INSTANCE*)close_create_internal();
Azure.IoT Build 0:6ae2f7bca550 7350 *close_handle = close_instance;
Azure.IoT Build 0:6ae2f7bca550 7351 if (*close_handle == NULL)
Azure.IoT Build 0:6ae2f7bca550 7352 {
Azure.IoT Build 0:6ae2f7bca550 7353 result = __LINE__;
Azure.IoT Build 0:6ae2f7bca550 7354 }
Azure.IoT Build 0:6ae2f7bca550 7355 else
Azure.IoT Build 0:6ae2f7bca550 7356 {
Azure.IoT Build 0:6ae2f7bca550 7357 AMQP_VALUE list_value = amqpvalue_get_inplace_described_value(value);
Azure.IoT Build 0:6ae2f7bca550 7358 if (list_value == NULL)
Azure.IoT Build 0:6ae2f7bca550 7359 {
Azure.IoT Build 0:6ae2f7bca550 7360 close_destroy(*close_handle);
Azure.IoT Build 0:6ae2f7bca550 7361 result = __LINE__;
Azure.IoT Build 0:6ae2f7bca550 7362 }
Azure.IoT Build 0:6ae2f7bca550 7363 else
Azure.IoT Build 0:6ae2f7bca550 7364 {
Azure.IoT Build 0:6ae2f7bca550 7365 do
Azure.IoT Build 0:6ae2f7bca550 7366 {
Azure.IoT Build 0:6ae2f7bca550 7367 AMQP_VALUE item_value;
Azure.IoT Build 0:6ae2f7bca550 7368 /* error */
Azure.IoT Build 0:6ae2f7bca550 7369 item_value = amqpvalue_get_list_item(list_value, 0);
Azure.IoT Build 0:6ae2f7bca550 7370 if (item_value == NULL)
Azure.IoT Build 0:6ae2f7bca550 7371 {
Azure.IoT Build 0:6ae2f7bca550 7372 /* do nothing */
Azure.IoT Build 0:6ae2f7bca550 7373 }
Azure.IoT Build 0:6ae2f7bca550 7374 else
Azure.IoT Build 0:6ae2f7bca550 7375 {
Azure.IoT Build 0:6ae2f7bca550 7376 ERROR_HANDLE error;
Azure.IoT Build 0:6ae2f7bca550 7377 if (amqpvalue_get_error(item_value, &error) != 0)
Azure.IoT Build 0:6ae2f7bca550 7378 {
Azure.IoT Build 0:6ae2f7bca550 7379 if (amqpvalue_get_type(item_value) != AMQP_TYPE_NULL)
Azure.IoT Build 0:6ae2f7bca550 7380 {
Azure.IoT Build 0:6ae2f7bca550 7381 close_destroy(*close_handle);
Azure.IoT Build 0:6ae2f7bca550 7382 result = __LINE__;
Azure.IoT Build 0:6ae2f7bca550 7383 break;
Azure.IoT Build 0:6ae2f7bca550 7384 }
Azure.IoT Build 0:6ae2f7bca550 7385 }
Azure.IoT Build 0:6ae2f7bca550 7386
Azure.IoT Build 0:6ae2f7bca550 7387 amqpvalue_destroy(item_value);
Azure.IoT Build 0:6ae2f7bca550 7388 }
Azure.IoT Build 0:6ae2f7bca550 7389
Azure.IoT Build 0:6ae2f7bca550 7390 close_instance->composite_value = amqpvalue_clone(value);
Azure.IoT Build 0:6ae2f7bca550 7391
Azure.IoT Build 0:6ae2f7bca550 7392 result = 0;
Azure.IoT Build 0:6ae2f7bca550 7393 } while (0);
Azure.IoT Build 0:6ae2f7bca550 7394 }
Azure.IoT Build 0:6ae2f7bca550 7395 }
Azure.IoT Build 0:6ae2f7bca550 7396
Azure.IoT Build 0:6ae2f7bca550 7397 return result;
Azure.IoT Build 0:6ae2f7bca550 7398 }
Azure.IoT Build 0:6ae2f7bca550 7399
Azure.IoT Build 0:6ae2f7bca550 7400 int close_get_error(CLOSE_HANDLE close, ERROR_HANDLE* error_value)
Azure.IoT Build 0:6ae2f7bca550 7401 {
Azure.IoT Build 0:6ae2f7bca550 7402 int result;
Azure.IoT Build 0:6ae2f7bca550 7403
Azure.IoT Build 0:6ae2f7bca550 7404 if (close == NULL)
Azure.IoT Build 0:6ae2f7bca550 7405 {
Azure.IoT Build 0:6ae2f7bca550 7406 result = __LINE__;
Azure.IoT Build 0:6ae2f7bca550 7407 }
Azure.IoT Build 0:6ae2f7bca550 7408 else
Azure.IoT Build 0:6ae2f7bca550 7409 {
Azure.IoT Build 0:6ae2f7bca550 7410 CLOSE_INSTANCE* close_instance = (CLOSE_INSTANCE*)close;
Azure.IoT Build 0:6ae2f7bca550 7411 AMQP_VALUE item_value = amqpvalue_get_composite_item_in_place(close_instance->composite_value, 0);
Azure.IoT Build 0:6ae2f7bca550 7412 if (item_value == NULL)
Azure.IoT Build 0:6ae2f7bca550 7413 {
Azure.IoT Build 0:6ae2f7bca550 7414 result = __LINE__;
Azure.IoT Build 0:6ae2f7bca550 7415 }
Azure.IoT Build 0:6ae2f7bca550 7416 else
Azure.IoT Build 0:6ae2f7bca550 7417 {
Azure.IoT Build 0:6ae2f7bca550 7418 if (amqpvalue_get_error(item_value, error_value) != 0)
Azure.IoT Build 0:6ae2f7bca550 7419 {
Azure.IoT Build 0:6ae2f7bca550 7420 result = __LINE__;
Azure.IoT Build 0:6ae2f7bca550 7421 }
Azure.IoT Build 0:6ae2f7bca550 7422 else
Azure.IoT Build 0:6ae2f7bca550 7423 {
Azure.IoT Build 0:6ae2f7bca550 7424 result = 0;
Azure.IoT Build 0:6ae2f7bca550 7425 }
Azure.IoT Build 0:6ae2f7bca550 7426 }
Azure.IoT Build 0:6ae2f7bca550 7427 }
Azure.IoT Build 0:6ae2f7bca550 7428
Azure.IoT Build 0:6ae2f7bca550 7429 return result;
Azure.IoT Build 0:6ae2f7bca550 7430 }
Azure.IoT Build 0:6ae2f7bca550 7431
Azure.IoT Build 0:6ae2f7bca550 7432 int close_set_error(CLOSE_HANDLE close, ERROR_HANDLE error_value)
Azure.IoT Build 0:6ae2f7bca550 7433 {
Azure.IoT Build 0:6ae2f7bca550 7434 int result;
Azure.IoT Build 0:6ae2f7bca550 7435
Azure.IoT Build 0:6ae2f7bca550 7436 if (close == NULL)
Azure.IoT Build 0:6ae2f7bca550 7437 {
Azure.IoT Build 0:6ae2f7bca550 7438 result = __LINE__;
Azure.IoT Build 0:6ae2f7bca550 7439 }
Azure.IoT Build 0:6ae2f7bca550 7440 else
Azure.IoT Build 0:6ae2f7bca550 7441 {
Azure.IoT Build 0:6ae2f7bca550 7442 CLOSE_INSTANCE* close_instance = (CLOSE_INSTANCE*)close;
Azure.IoT Build 0:6ae2f7bca550 7443 AMQP_VALUE error_amqp_value = amqpvalue_create_error(error_value);
Azure.IoT Build 0:6ae2f7bca550 7444 if (error_amqp_value == NULL)
Azure.IoT Build 0:6ae2f7bca550 7445 {
Azure.IoT Build 0:6ae2f7bca550 7446 result = __LINE__;
Azure.IoT Build 0:6ae2f7bca550 7447 }
Azure.IoT Build 0:6ae2f7bca550 7448 else
Azure.IoT Build 0:6ae2f7bca550 7449 {
Azure.IoT Build 0:6ae2f7bca550 7450 if (amqpvalue_set_composite_item(close_instance->composite_value, 0, error_amqp_value) != 0)
Azure.IoT Build 0:6ae2f7bca550 7451 {
Azure.IoT Build 0:6ae2f7bca550 7452 result = __LINE__;
Azure.IoT Build 0:6ae2f7bca550 7453 }
Azure.IoT Build 0:6ae2f7bca550 7454 else
Azure.IoT Build 0:6ae2f7bca550 7455 {
Azure.IoT Build 0:6ae2f7bca550 7456 result = 0;
Azure.IoT Build 0:6ae2f7bca550 7457 }
Azure.IoT Build 0:6ae2f7bca550 7458
Azure.IoT Build 0:6ae2f7bca550 7459 amqpvalue_destroy(error_amqp_value);
Azure.IoT Build 0:6ae2f7bca550 7460 }
Azure.IoT Build 0:6ae2f7bca550 7461 }
Azure.IoT Build 0:6ae2f7bca550 7462
Azure.IoT Build 0:6ae2f7bca550 7463 return result;
Azure.IoT Build 0:6ae2f7bca550 7464 }
Azure.IoT Build 0:6ae2f7bca550 7465
Azure.IoT Build 0:6ae2f7bca550 7466
Azure.IoT Build 0:6ae2f7bca550 7467 /* sasl-code */
Azure.IoT Build 0:6ae2f7bca550 7468
Azure.IoT Build 0:6ae2f7bca550 7469 AMQP_VALUE amqpvalue_create_sasl_code(sasl_code value)
Azure.IoT Build 0:6ae2f7bca550 7470 {
Azure.IoT Build 0:6ae2f7bca550 7471 return amqpvalue_create_ubyte(value);
Azure.IoT Build 0:6ae2f7bca550 7472 }
Azure.IoT Build 0:6ae2f7bca550 7473
Azure.IoT Build 0:6ae2f7bca550 7474 /* sasl-mechanisms */
Azure.IoT Build 0:6ae2f7bca550 7475
Azure.IoT Build 0:6ae2f7bca550 7476 typedef struct SASL_MECHANISMS_INSTANCE_TAG
Azure.IoT Build 0:6ae2f7bca550 7477 {
Azure.IoT Build 0:6ae2f7bca550 7478 AMQP_VALUE composite_value;
Azure.IoT Build 0:6ae2f7bca550 7479 } SASL_MECHANISMS_INSTANCE;
Azure.IoT Build 0:6ae2f7bca550 7480
Azure.IoT Build 0:6ae2f7bca550 7481 static SASL_MECHANISMS_HANDLE sasl_mechanisms_create_internal(void)
Azure.IoT Build 0:6ae2f7bca550 7482 {
Azure.IoT Build 0:6ae2f7bca550 7483 SASL_MECHANISMS_INSTANCE* sasl_mechanisms_instance = (SASL_MECHANISMS_INSTANCE*)amqpalloc_malloc(sizeof(SASL_MECHANISMS_INSTANCE));
Azure.IoT Build 0:6ae2f7bca550 7484 if (sasl_mechanisms_instance != NULL)
Azure.IoT Build 0:6ae2f7bca550 7485 {
Azure.IoT Build 0:6ae2f7bca550 7486 sasl_mechanisms_instance->composite_value = NULL;
Azure.IoT Build 0:6ae2f7bca550 7487 }
Azure.IoT Build 0:6ae2f7bca550 7488
Azure.IoT Build 0:6ae2f7bca550 7489 return sasl_mechanisms_instance;
Azure.IoT Build 0:6ae2f7bca550 7490 }
Azure.IoT Build 0:6ae2f7bca550 7491
Azure.IoT Build 0:6ae2f7bca550 7492 SASL_MECHANISMS_HANDLE sasl_mechanisms_create(AMQP_VALUE sasl_server_mechanisms_value)
Azure.IoT Build 0:6ae2f7bca550 7493 {
Azure.IoT Build 0:6ae2f7bca550 7494 SASL_MECHANISMS_INSTANCE* sasl_mechanisms_instance = (SASL_MECHANISMS_INSTANCE*)amqpalloc_malloc(sizeof(SASL_MECHANISMS_INSTANCE));
Azure.IoT Build 0:6ae2f7bca550 7495 if (sasl_mechanisms_instance != NULL)
Azure.IoT Build 0:6ae2f7bca550 7496 {
Azure.IoT Build 0:6ae2f7bca550 7497 sasl_mechanisms_instance->composite_value = amqpvalue_create_composite_with_ulong_descriptor(64);
Azure.IoT Build 0:6ae2f7bca550 7498 if (sasl_mechanisms_instance->composite_value == NULL)
Azure.IoT Build 0:6ae2f7bca550 7499 {
Azure.IoT Build 0:6ae2f7bca550 7500 amqpalloc_free(sasl_mechanisms_instance);
Azure.IoT Build 0:6ae2f7bca550 7501 sasl_mechanisms_instance = NULL;
Azure.IoT Build 0:6ae2f7bca550 7502 }
Azure.IoT Build 0:6ae2f7bca550 7503 else
Azure.IoT Build 0:6ae2f7bca550 7504 {
Azure.IoT Build 0:6ae2f7bca550 7505 AMQP_VALUE sasl_server_mechanisms_amqp_value;
Azure.IoT Build 0:6ae2f7bca550 7506 int result = 0;
Azure.IoT Build 0:6ae2f7bca550 7507
Azure.IoT Build 0:6ae2f7bca550 7508 sasl_server_mechanisms_amqp_value = sasl_server_mechanisms_value;
Azure.IoT Build 0:6ae2f7bca550 7509 if ((result == 0) && (amqpvalue_set_composite_item(sasl_mechanisms_instance->composite_value, 0, sasl_server_mechanisms_amqp_value) != 0))
Azure.IoT Build 0:6ae2f7bca550 7510 {
Azure.IoT Build 0:6ae2f7bca550 7511 result = __LINE__;
Azure.IoT Build 0:6ae2f7bca550 7512 }
Azure.IoT Build 0:6ae2f7bca550 7513
Azure.IoT Build 0:6ae2f7bca550 7514 amqpvalue_destroy(sasl_server_mechanisms_amqp_value);
Azure.IoT Build 0:6ae2f7bca550 7515 }
Azure.IoT Build 0:6ae2f7bca550 7516 }
Azure.IoT Build 0:6ae2f7bca550 7517
Azure.IoT Build 0:6ae2f7bca550 7518 return sasl_mechanisms_instance;
Azure.IoT Build 0:6ae2f7bca550 7519 }
Azure.IoT Build 0:6ae2f7bca550 7520
Azure.IoT Build 0:6ae2f7bca550 7521 SASL_MECHANISMS_HANDLE sasl_mechanisms_clone(SASL_MECHANISMS_HANDLE value)
Azure.IoT Build 0:6ae2f7bca550 7522 {
Azure.IoT Build 0:6ae2f7bca550 7523 SASL_MECHANISMS_INSTANCE* sasl_mechanisms_instance = (SASL_MECHANISMS_INSTANCE*)amqpalloc_malloc(sizeof(SASL_MECHANISMS_INSTANCE));
Azure.IoT Build 0:6ae2f7bca550 7524 if (sasl_mechanisms_instance != NULL)
Azure.IoT Build 0:6ae2f7bca550 7525 {
Azure.IoT Build 0:6ae2f7bca550 7526 sasl_mechanisms_instance->composite_value = amqpvalue_clone(((SASL_MECHANISMS_INSTANCE*)value)->composite_value);
Azure.IoT Build 0:6ae2f7bca550 7527 if (sasl_mechanisms_instance->composite_value == NULL)
Azure.IoT Build 0:6ae2f7bca550 7528 {
Azure.IoT Build 0:6ae2f7bca550 7529 amqpalloc_free(sasl_mechanisms_instance);
Azure.IoT Build 0:6ae2f7bca550 7530 sasl_mechanisms_instance = NULL;
Azure.IoT Build 0:6ae2f7bca550 7531 }
Azure.IoT Build 0:6ae2f7bca550 7532 }
Azure.IoT Build 0:6ae2f7bca550 7533
Azure.IoT Build 0:6ae2f7bca550 7534 return sasl_mechanisms_instance;
Azure.IoT Build 0:6ae2f7bca550 7535 }
Azure.IoT Build 0:6ae2f7bca550 7536
Azure.IoT Build 0:6ae2f7bca550 7537 void sasl_mechanisms_destroy(SASL_MECHANISMS_HANDLE sasl_mechanisms)
Azure.IoT Build 0:6ae2f7bca550 7538 {
Azure.IoT Build 0:6ae2f7bca550 7539 if (sasl_mechanisms != NULL)
Azure.IoT Build 0:6ae2f7bca550 7540 {
Azure.IoT Build 0:6ae2f7bca550 7541 SASL_MECHANISMS_INSTANCE* sasl_mechanisms_instance = (SASL_MECHANISMS_INSTANCE*)sasl_mechanisms;
Azure.IoT Build 0:6ae2f7bca550 7542 amqpvalue_destroy(sasl_mechanisms_instance->composite_value);
Azure.IoT Build 0:6ae2f7bca550 7543 amqpalloc_free(sasl_mechanisms_instance);
Azure.IoT Build 0:6ae2f7bca550 7544 }
Azure.IoT Build 0:6ae2f7bca550 7545 }
Azure.IoT Build 0:6ae2f7bca550 7546
Azure.IoT Build 0:6ae2f7bca550 7547 AMQP_VALUE amqpvalue_create_sasl_mechanisms(SASL_MECHANISMS_HANDLE sasl_mechanisms)
Azure.IoT Build 0:6ae2f7bca550 7548 {
Azure.IoT Build 0:6ae2f7bca550 7549 AMQP_VALUE result;
Azure.IoT Build 0:6ae2f7bca550 7550
Azure.IoT Build 0:6ae2f7bca550 7551 if (sasl_mechanisms == NULL)
Azure.IoT Build 0:6ae2f7bca550 7552 {
Azure.IoT Build 0:6ae2f7bca550 7553 result = NULL;
Azure.IoT Build 0:6ae2f7bca550 7554 }
Azure.IoT Build 0:6ae2f7bca550 7555 else
Azure.IoT Build 0:6ae2f7bca550 7556 {
Azure.IoT Build 0:6ae2f7bca550 7557 SASL_MECHANISMS_INSTANCE* sasl_mechanisms_instance = (SASL_MECHANISMS_INSTANCE*)sasl_mechanisms;
Azure.IoT Build 0:6ae2f7bca550 7558 result = amqpvalue_clone(sasl_mechanisms_instance->composite_value);
Azure.IoT Build 0:6ae2f7bca550 7559 }
Azure.IoT Build 0:6ae2f7bca550 7560
Azure.IoT Build 0:6ae2f7bca550 7561 return result;
Azure.IoT Build 0:6ae2f7bca550 7562 }
Azure.IoT Build 0:6ae2f7bca550 7563
Azure.IoT Build 0:6ae2f7bca550 7564 bool is_sasl_mechanisms_type_by_descriptor(AMQP_VALUE descriptor)
Azure.IoT Build 0:6ae2f7bca550 7565 {
Azure.IoT Build 0:6ae2f7bca550 7566 bool result;
Azure.IoT Build 0:6ae2f7bca550 7567
Azure.IoT Build 0:6ae2f7bca550 7568 uint64_t descriptor_ulong;
Azure.IoT Build 0:6ae2f7bca550 7569 if ((amqpvalue_get_ulong(descriptor, &descriptor_ulong) == 0) &&
Azure.IoT Build 0:6ae2f7bca550 7570 (descriptor_ulong == 64))
Azure.IoT Build 0:6ae2f7bca550 7571 {
Azure.IoT Build 0:6ae2f7bca550 7572 result = true;
Azure.IoT Build 0:6ae2f7bca550 7573 }
Azure.IoT Build 0:6ae2f7bca550 7574 else
Azure.IoT Build 0:6ae2f7bca550 7575 {
Azure.IoT Build 0:6ae2f7bca550 7576 result = false;
Azure.IoT Build 0:6ae2f7bca550 7577 }
Azure.IoT Build 0:6ae2f7bca550 7578
Azure.IoT Build 0:6ae2f7bca550 7579 return result;
Azure.IoT Build 0:6ae2f7bca550 7580 }
Azure.IoT Build 0:6ae2f7bca550 7581
Azure.IoT Build 0:6ae2f7bca550 7582
Azure.IoT Build 0:6ae2f7bca550 7583 int amqpvalue_get_sasl_mechanisms(AMQP_VALUE value, SASL_MECHANISMS_HANDLE* sasl_mechanisms_handle)
Azure.IoT Build 0:6ae2f7bca550 7584 {
Azure.IoT Build 0:6ae2f7bca550 7585 int result;
Azure.IoT Build 0:6ae2f7bca550 7586 SASL_MECHANISMS_INSTANCE* sasl_mechanisms_instance = (SASL_MECHANISMS_INSTANCE*)sasl_mechanisms_create_internal();
Azure.IoT Build 0:6ae2f7bca550 7587 *sasl_mechanisms_handle = sasl_mechanisms_instance;
Azure.IoT Build 0:6ae2f7bca550 7588 if (*sasl_mechanisms_handle == NULL)
Azure.IoT Build 0:6ae2f7bca550 7589 {
Azure.IoT Build 0:6ae2f7bca550 7590 result = __LINE__;
Azure.IoT Build 0:6ae2f7bca550 7591 }
Azure.IoT Build 0:6ae2f7bca550 7592 else
Azure.IoT Build 0:6ae2f7bca550 7593 {
Azure.IoT Build 0:6ae2f7bca550 7594 AMQP_VALUE list_value = amqpvalue_get_inplace_described_value(value);
Azure.IoT Build 0:6ae2f7bca550 7595 if (list_value == NULL)
Azure.IoT Build 0:6ae2f7bca550 7596 {
Azure.IoT Build 0:6ae2f7bca550 7597 sasl_mechanisms_destroy(*sasl_mechanisms_handle);
Azure.IoT Build 0:6ae2f7bca550 7598 result = __LINE__;
Azure.IoT Build 0:6ae2f7bca550 7599 }
Azure.IoT Build 0:6ae2f7bca550 7600 else
Azure.IoT Build 0:6ae2f7bca550 7601 {
Azure.IoT Build 0:6ae2f7bca550 7602 do
Azure.IoT Build 0:6ae2f7bca550 7603 {
Azure.IoT Build 0:6ae2f7bca550 7604 AMQP_VALUE item_value;
Azure.IoT Build 0:6ae2f7bca550 7605 /* sasl-server-mechanisms */
Azure.IoT Build 0:6ae2f7bca550 7606 item_value = amqpvalue_get_list_item(list_value, 0);
Azure.IoT Build 0:6ae2f7bca550 7607 if (item_value == NULL)
Azure.IoT Build 0:6ae2f7bca550 7608 {
Azure.IoT Build 0:6ae2f7bca550 7609 {
Azure.IoT Build 0:6ae2f7bca550 7610 sasl_mechanisms_destroy(*sasl_mechanisms_handle);
Azure.IoT Build 0:6ae2f7bca550 7611 result = __LINE__;
Azure.IoT Build 0:6ae2f7bca550 7612 break;
Azure.IoT Build 0:6ae2f7bca550 7613 }
Azure.IoT Build 0:6ae2f7bca550 7614 }
Azure.IoT Build 0:6ae2f7bca550 7615 else
Azure.IoT Build 0:6ae2f7bca550 7616 {
Azure.IoT Build 0:6ae2f7bca550 7617 const char* sasl_server_mechanisms;
Azure.IoT Build 0:6ae2f7bca550 7618 AMQP_VALUE sasl_server_mechanisms_array;
Azure.IoT Build 0:6ae2f7bca550 7619 if ((amqpvalue_get_array(item_value, &sasl_server_mechanisms_array) != 0) &&
Azure.IoT Build 0:6ae2f7bca550 7620 (amqpvalue_get_symbol(item_value, &sasl_server_mechanisms) != 0))
Azure.IoT Build 0:6ae2f7bca550 7621 {
Azure.IoT Build 0:6ae2f7bca550 7622 sasl_mechanisms_destroy(*sasl_mechanisms_handle);
Azure.IoT Build 0:6ae2f7bca550 7623 result = __LINE__;
Azure.IoT Build 0:6ae2f7bca550 7624 break;
Azure.IoT Build 0:6ae2f7bca550 7625 }
Azure.IoT Build 0:6ae2f7bca550 7626
Azure.IoT Build 0:6ae2f7bca550 7627 amqpvalue_destroy(item_value);
Azure.IoT Build 0:6ae2f7bca550 7628 }
Azure.IoT Build 0:6ae2f7bca550 7629
Azure.IoT Build 0:6ae2f7bca550 7630 sasl_mechanisms_instance->composite_value = amqpvalue_clone(value);
Azure.IoT Build 0:6ae2f7bca550 7631
Azure.IoT Build 0:6ae2f7bca550 7632 result = 0;
Azure.IoT Build 0:6ae2f7bca550 7633 } while (0);
Azure.IoT Build 0:6ae2f7bca550 7634 }
Azure.IoT Build 0:6ae2f7bca550 7635 }
Azure.IoT Build 0:6ae2f7bca550 7636
Azure.IoT Build 0:6ae2f7bca550 7637 return result;
Azure.IoT Build 0:6ae2f7bca550 7638 }
Azure.IoT Build 0:6ae2f7bca550 7639
Azure.IoT Build 0:6ae2f7bca550 7640 int sasl_mechanisms_get_sasl_server_mechanisms(SASL_MECHANISMS_HANDLE sasl_mechanisms, AMQP_VALUE* sasl_server_mechanisms_value)
Azure.IoT Build 0:6ae2f7bca550 7641 {
Azure.IoT Build 0:6ae2f7bca550 7642 int result;
Azure.IoT Build 0:6ae2f7bca550 7643
Azure.IoT Build 0:6ae2f7bca550 7644 if (sasl_mechanisms == NULL)
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 else
Azure.IoT Build 0:6ae2f7bca550 7649 {
Azure.IoT Build 0:6ae2f7bca550 7650 SASL_MECHANISMS_INSTANCE* sasl_mechanisms_instance = (SASL_MECHANISMS_INSTANCE*)sasl_mechanisms;
Azure.IoT Build 0:6ae2f7bca550 7651 AMQP_VALUE item_value = amqpvalue_get_composite_item_in_place(sasl_mechanisms_instance->composite_value, 0);
Azure.IoT Build 0:6ae2f7bca550 7652 if (item_value == NULL)
Azure.IoT Build 0:6ae2f7bca550 7653 {
Azure.IoT Build 0:6ae2f7bca550 7654 result = __LINE__;
Azure.IoT Build 0:6ae2f7bca550 7655 }
Azure.IoT Build 0:6ae2f7bca550 7656 else
Azure.IoT Build 0:6ae2f7bca550 7657 {
Azure.IoT Build 0:6ae2f7bca550 7658 if (amqpvalue_get_array(item_value, sasl_server_mechanisms_value) != 0)
Azure.IoT Build 0:6ae2f7bca550 7659 {
Azure.IoT Build 0:6ae2f7bca550 7660 result = __LINE__;
Azure.IoT Build 0:6ae2f7bca550 7661 }
Azure.IoT Build 0:6ae2f7bca550 7662 else
Azure.IoT Build 0:6ae2f7bca550 7663 {
Azure.IoT Build 0:6ae2f7bca550 7664 result = 0;
Azure.IoT Build 0:6ae2f7bca550 7665 }
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 result;
Azure.IoT Build 0:6ae2f7bca550 7670 }
Azure.IoT Build 0:6ae2f7bca550 7671
Azure.IoT Build 0:6ae2f7bca550 7672 int sasl_mechanisms_set_sasl_server_mechanisms(SASL_MECHANISMS_HANDLE sasl_mechanisms, AMQP_VALUE sasl_server_mechanisms_value)
Azure.IoT Build 0:6ae2f7bca550 7673 {
Azure.IoT Build 0:6ae2f7bca550 7674 int result;
Azure.IoT Build 0:6ae2f7bca550 7675
Azure.IoT Build 0:6ae2f7bca550 7676 if (sasl_mechanisms == NULL)
Azure.IoT Build 0:6ae2f7bca550 7677 {
Azure.IoT Build 0:6ae2f7bca550 7678 result = __LINE__;
Azure.IoT Build 0:6ae2f7bca550 7679 }
Azure.IoT Build 0:6ae2f7bca550 7680 else
Azure.IoT Build 0:6ae2f7bca550 7681 {
Azure.IoT Build 0:6ae2f7bca550 7682 SASL_MECHANISMS_INSTANCE* sasl_mechanisms_instance = (SASL_MECHANISMS_INSTANCE*)sasl_mechanisms;
Azure.IoT Build 0:6ae2f7bca550 7683 AMQP_VALUE sasl_server_mechanisms_amqp_value = amqpvalue_clone(sasl_server_mechanisms_value);
Azure.IoT Build 0:6ae2f7bca550 7684 if (sasl_server_mechanisms_amqp_value == NULL)
Azure.IoT Build 0:6ae2f7bca550 7685 {
Azure.IoT Build 0:6ae2f7bca550 7686 result = __LINE__;
Azure.IoT Build 0:6ae2f7bca550 7687 }
Azure.IoT Build 0:6ae2f7bca550 7688 else
Azure.IoT Build 0:6ae2f7bca550 7689 {
Azure.IoT Build 0:6ae2f7bca550 7690 if (amqpvalue_set_composite_item(sasl_mechanisms_instance->composite_value, 0, sasl_server_mechanisms_amqp_value) != 0)
Azure.IoT Build 0:6ae2f7bca550 7691 {
Azure.IoT Build 0:6ae2f7bca550 7692 result = __LINE__;
Azure.IoT Build 0:6ae2f7bca550 7693 }
Azure.IoT Build 0:6ae2f7bca550 7694 else
Azure.IoT Build 0:6ae2f7bca550 7695 {
Azure.IoT Build 0:6ae2f7bca550 7696 result = 0;
Azure.IoT Build 0:6ae2f7bca550 7697 }
Azure.IoT Build 0:6ae2f7bca550 7698
Azure.IoT Build 0:6ae2f7bca550 7699 amqpvalue_destroy(sasl_server_mechanisms_amqp_value);
Azure.IoT Build 0:6ae2f7bca550 7700 }
Azure.IoT Build 0:6ae2f7bca550 7701 }
Azure.IoT Build 0:6ae2f7bca550 7702
Azure.IoT Build 0:6ae2f7bca550 7703 return result;
Azure.IoT Build 0:6ae2f7bca550 7704 }
Azure.IoT Build 0:6ae2f7bca550 7705
Azure.IoT Build 0:6ae2f7bca550 7706
Azure.IoT Build 0:6ae2f7bca550 7707 /* sasl-init */
Azure.IoT Build 0:6ae2f7bca550 7708
Azure.IoT Build 0:6ae2f7bca550 7709 typedef struct SASL_INIT_INSTANCE_TAG
Azure.IoT Build 0:6ae2f7bca550 7710 {
Azure.IoT Build 0:6ae2f7bca550 7711 AMQP_VALUE composite_value;
Azure.IoT Build 0:6ae2f7bca550 7712 } SASL_INIT_INSTANCE;
Azure.IoT Build 0:6ae2f7bca550 7713
Azure.IoT Build 0:6ae2f7bca550 7714 static SASL_INIT_HANDLE sasl_init_create_internal(void)
Azure.IoT Build 0:6ae2f7bca550 7715 {
Azure.IoT Build 0:6ae2f7bca550 7716 SASL_INIT_INSTANCE* sasl_init_instance = (SASL_INIT_INSTANCE*)amqpalloc_malloc(sizeof(SASL_INIT_INSTANCE));
Azure.IoT Build 0:6ae2f7bca550 7717 if (sasl_init_instance != NULL)
Azure.IoT Build 0:6ae2f7bca550 7718 {
Azure.IoT Build 0:6ae2f7bca550 7719 sasl_init_instance->composite_value = NULL;
Azure.IoT Build 0:6ae2f7bca550 7720 }
Azure.IoT Build 0:6ae2f7bca550 7721
Azure.IoT Build 0:6ae2f7bca550 7722 return sasl_init_instance;
Azure.IoT Build 0:6ae2f7bca550 7723 }
Azure.IoT Build 0:6ae2f7bca550 7724
Azure.IoT Build 0:6ae2f7bca550 7725 SASL_INIT_HANDLE sasl_init_create(const char* mechanism_value)
Azure.IoT Build 0:6ae2f7bca550 7726 {
Azure.IoT Build 0:6ae2f7bca550 7727 SASL_INIT_INSTANCE* sasl_init_instance = (SASL_INIT_INSTANCE*)amqpalloc_malloc(sizeof(SASL_INIT_INSTANCE));
Azure.IoT Build 0:6ae2f7bca550 7728 if (sasl_init_instance != NULL)
Azure.IoT Build 0:6ae2f7bca550 7729 {
Azure.IoT Build 0:6ae2f7bca550 7730 sasl_init_instance->composite_value = amqpvalue_create_composite_with_ulong_descriptor(65);
Azure.IoT Build 0:6ae2f7bca550 7731 if (sasl_init_instance->composite_value == NULL)
Azure.IoT Build 0:6ae2f7bca550 7732 {
Azure.IoT Build 0:6ae2f7bca550 7733 amqpalloc_free(sasl_init_instance);
Azure.IoT Build 0:6ae2f7bca550 7734 sasl_init_instance = NULL;
Azure.IoT Build 0:6ae2f7bca550 7735 }
Azure.IoT Build 0:6ae2f7bca550 7736 else
Azure.IoT Build 0:6ae2f7bca550 7737 {
Azure.IoT Build 0:6ae2f7bca550 7738 AMQP_VALUE mechanism_amqp_value;
Azure.IoT Build 0:6ae2f7bca550 7739 int result = 0;
Azure.IoT Build 0:6ae2f7bca550 7740
Azure.IoT Build 0:6ae2f7bca550 7741 mechanism_amqp_value = amqpvalue_create_symbol(mechanism_value);
Azure.IoT Build 0:6ae2f7bca550 7742 if ((result == 0) && (amqpvalue_set_composite_item(sasl_init_instance->composite_value, 0, mechanism_amqp_value) != 0))
Azure.IoT Build 0:6ae2f7bca550 7743 {
Azure.IoT Build 0:6ae2f7bca550 7744 result = __LINE__;
Azure.IoT Build 0:6ae2f7bca550 7745 }
Azure.IoT Build 0:6ae2f7bca550 7746
Azure.IoT Build 0:6ae2f7bca550 7747 amqpvalue_destroy(mechanism_amqp_value);
Azure.IoT Build 0:6ae2f7bca550 7748 }
Azure.IoT Build 0:6ae2f7bca550 7749 }
Azure.IoT Build 0:6ae2f7bca550 7750
Azure.IoT Build 0:6ae2f7bca550 7751 return sasl_init_instance;
Azure.IoT Build 0:6ae2f7bca550 7752 }
Azure.IoT Build 0:6ae2f7bca550 7753
Azure.IoT Build 0:6ae2f7bca550 7754 SASL_INIT_HANDLE sasl_init_clone(SASL_INIT_HANDLE value)
Azure.IoT Build 0:6ae2f7bca550 7755 {
Azure.IoT Build 0:6ae2f7bca550 7756 SASL_INIT_INSTANCE* sasl_init_instance = (SASL_INIT_INSTANCE*)amqpalloc_malloc(sizeof(SASL_INIT_INSTANCE));
Azure.IoT Build 0:6ae2f7bca550 7757 if (sasl_init_instance != NULL)
Azure.IoT Build 0:6ae2f7bca550 7758 {
Azure.IoT Build 0:6ae2f7bca550 7759 sasl_init_instance->composite_value = amqpvalue_clone(((SASL_INIT_INSTANCE*)value)->composite_value);
Azure.IoT Build 0:6ae2f7bca550 7760 if (sasl_init_instance->composite_value == NULL)
Azure.IoT Build 0:6ae2f7bca550 7761 {
Azure.IoT Build 0:6ae2f7bca550 7762 amqpalloc_free(sasl_init_instance);
Azure.IoT Build 0:6ae2f7bca550 7763 sasl_init_instance = NULL;
Azure.IoT Build 0:6ae2f7bca550 7764 }
Azure.IoT Build 0:6ae2f7bca550 7765 }
Azure.IoT Build 0:6ae2f7bca550 7766
Azure.IoT Build 0:6ae2f7bca550 7767 return sasl_init_instance;
Azure.IoT Build 0:6ae2f7bca550 7768 }
Azure.IoT Build 0:6ae2f7bca550 7769
Azure.IoT Build 0:6ae2f7bca550 7770 void sasl_init_destroy(SASL_INIT_HANDLE sasl_init)
Azure.IoT Build 0:6ae2f7bca550 7771 {
Azure.IoT Build 0:6ae2f7bca550 7772 if (sasl_init != NULL)
Azure.IoT Build 0:6ae2f7bca550 7773 {
Azure.IoT Build 0:6ae2f7bca550 7774 SASL_INIT_INSTANCE* sasl_init_instance = (SASL_INIT_INSTANCE*)sasl_init;
Azure.IoT Build 0:6ae2f7bca550 7775 amqpvalue_destroy(sasl_init_instance->composite_value);
Azure.IoT Build 0:6ae2f7bca550 7776 amqpalloc_free(sasl_init_instance);
Azure.IoT Build 0:6ae2f7bca550 7777 }
Azure.IoT Build 0:6ae2f7bca550 7778 }
Azure.IoT Build 0:6ae2f7bca550 7779
Azure.IoT Build 0:6ae2f7bca550 7780 AMQP_VALUE amqpvalue_create_sasl_init(SASL_INIT_HANDLE sasl_init)
Azure.IoT Build 0:6ae2f7bca550 7781 {
Azure.IoT Build 0:6ae2f7bca550 7782 AMQP_VALUE result;
Azure.IoT Build 0:6ae2f7bca550 7783
Azure.IoT Build 0:6ae2f7bca550 7784 if (sasl_init == NULL)
Azure.IoT Build 0:6ae2f7bca550 7785 {
Azure.IoT Build 0:6ae2f7bca550 7786 result = NULL;
Azure.IoT Build 0:6ae2f7bca550 7787 }
Azure.IoT Build 0:6ae2f7bca550 7788 else
Azure.IoT Build 0:6ae2f7bca550 7789 {
Azure.IoT Build 0:6ae2f7bca550 7790 SASL_INIT_INSTANCE* sasl_init_instance = (SASL_INIT_INSTANCE*)sasl_init;
Azure.IoT Build 0:6ae2f7bca550 7791 result = amqpvalue_clone(sasl_init_instance->composite_value);
Azure.IoT Build 0:6ae2f7bca550 7792 }
Azure.IoT Build 0:6ae2f7bca550 7793
Azure.IoT Build 0:6ae2f7bca550 7794 return result;
Azure.IoT Build 0:6ae2f7bca550 7795 }
Azure.IoT Build 0:6ae2f7bca550 7796
Azure.IoT Build 0:6ae2f7bca550 7797 bool is_sasl_init_type_by_descriptor(AMQP_VALUE descriptor)
Azure.IoT Build 0:6ae2f7bca550 7798 {
Azure.IoT Build 0:6ae2f7bca550 7799 bool result;
Azure.IoT Build 0:6ae2f7bca550 7800
Azure.IoT Build 0:6ae2f7bca550 7801 uint64_t descriptor_ulong;
Azure.IoT Build 0:6ae2f7bca550 7802 if ((amqpvalue_get_ulong(descriptor, &descriptor_ulong) == 0) &&
Azure.IoT Build 0:6ae2f7bca550 7803 (descriptor_ulong == 65))
Azure.IoT Build 0:6ae2f7bca550 7804 {
Azure.IoT Build 0:6ae2f7bca550 7805 result = true;
Azure.IoT Build 0:6ae2f7bca550 7806 }
Azure.IoT Build 0:6ae2f7bca550 7807 else
Azure.IoT Build 0:6ae2f7bca550 7808 {
Azure.IoT Build 0:6ae2f7bca550 7809 result = false;
Azure.IoT Build 0:6ae2f7bca550 7810 }
Azure.IoT Build 0:6ae2f7bca550 7811
Azure.IoT Build 0:6ae2f7bca550 7812 return result;
Azure.IoT Build 0:6ae2f7bca550 7813 }
Azure.IoT Build 0:6ae2f7bca550 7814
Azure.IoT Build 0:6ae2f7bca550 7815
Azure.IoT Build 0:6ae2f7bca550 7816 int amqpvalue_get_sasl_init(AMQP_VALUE value, SASL_INIT_HANDLE* sasl_init_handle)
Azure.IoT Build 0:6ae2f7bca550 7817 {
Azure.IoT Build 0:6ae2f7bca550 7818 int result;
Azure.IoT Build 0:6ae2f7bca550 7819 SASL_INIT_INSTANCE* sasl_init_instance = (SASL_INIT_INSTANCE*)sasl_init_create_internal();
Azure.IoT Build 0:6ae2f7bca550 7820 *sasl_init_handle = sasl_init_instance;
Azure.IoT Build 0:6ae2f7bca550 7821 if (*sasl_init_handle == NULL)
Azure.IoT Build 0:6ae2f7bca550 7822 {
Azure.IoT Build 0:6ae2f7bca550 7823 result = __LINE__;
Azure.IoT Build 0:6ae2f7bca550 7824 }
Azure.IoT Build 0:6ae2f7bca550 7825 else
Azure.IoT Build 0:6ae2f7bca550 7826 {
Azure.IoT Build 0:6ae2f7bca550 7827 AMQP_VALUE list_value = amqpvalue_get_inplace_described_value(value);
Azure.IoT Build 0:6ae2f7bca550 7828 if (list_value == NULL)
Azure.IoT Build 0:6ae2f7bca550 7829 {
Azure.IoT Build 0:6ae2f7bca550 7830 sasl_init_destroy(*sasl_init_handle);
Azure.IoT Build 0:6ae2f7bca550 7831 result = __LINE__;
Azure.IoT Build 0:6ae2f7bca550 7832 }
Azure.IoT Build 0:6ae2f7bca550 7833 else
Azure.IoT Build 0:6ae2f7bca550 7834 {
Azure.IoT Build 0:6ae2f7bca550 7835 do
Azure.IoT Build 0:6ae2f7bca550 7836 {
Azure.IoT Build 0:6ae2f7bca550 7837 AMQP_VALUE item_value;
Azure.IoT Build 0:6ae2f7bca550 7838 /* mechanism */
Azure.IoT Build 0:6ae2f7bca550 7839 item_value = amqpvalue_get_list_item(list_value, 0);
Azure.IoT Build 0:6ae2f7bca550 7840 if (item_value == NULL)
Azure.IoT Build 0:6ae2f7bca550 7841 {
Azure.IoT Build 0:6ae2f7bca550 7842 {
Azure.IoT Build 0:6ae2f7bca550 7843 sasl_init_destroy(*sasl_init_handle);
Azure.IoT Build 0:6ae2f7bca550 7844 result = __LINE__;
Azure.IoT Build 0:6ae2f7bca550 7845 break;
Azure.IoT Build 0:6ae2f7bca550 7846 }
Azure.IoT Build 0:6ae2f7bca550 7847 }
Azure.IoT Build 0:6ae2f7bca550 7848 else
Azure.IoT Build 0:6ae2f7bca550 7849 {
Azure.IoT Build 0:6ae2f7bca550 7850 const char* mechanism;
Azure.IoT Build 0:6ae2f7bca550 7851 if (amqpvalue_get_symbol(item_value, &mechanism) != 0)
Azure.IoT Build 0:6ae2f7bca550 7852 {
Azure.IoT Build 0:6ae2f7bca550 7853 sasl_init_destroy(*sasl_init_handle);
Azure.IoT Build 0:6ae2f7bca550 7854 result = __LINE__;
Azure.IoT Build 0:6ae2f7bca550 7855 break;
Azure.IoT Build 0:6ae2f7bca550 7856 }
Azure.IoT Build 0:6ae2f7bca550 7857
Azure.IoT Build 0:6ae2f7bca550 7858 amqpvalue_destroy(item_value);
Azure.IoT Build 0:6ae2f7bca550 7859 }
Azure.IoT Build 0:6ae2f7bca550 7860 /* initial-response */
Azure.IoT Build 0:6ae2f7bca550 7861 item_value = amqpvalue_get_list_item(list_value, 1);
Azure.IoT Build 0:6ae2f7bca550 7862 if (item_value == NULL)
Azure.IoT Build 0:6ae2f7bca550 7863 {
Azure.IoT Build 0:6ae2f7bca550 7864 /* do nothing */
Azure.IoT Build 0:6ae2f7bca550 7865 }
Azure.IoT Build 0:6ae2f7bca550 7866 else
Azure.IoT Build 0:6ae2f7bca550 7867 {
Azure.IoT Build 0:6ae2f7bca550 7868 amqp_binary initial_response;
Azure.IoT Build 0:6ae2f7bca550 7869 if (amqpvalue_get_binary(item_value, &initial_response) != 0)
Azure.IoT Build 0:6ae2f7bca550 7870 {
Azure.IoT Build 0:6ae2f7bca550 7871 if (amqpvalue_get_type(item_value) != AMQP_TYPE_NULL)
Azure.IoT Build 0:6ae2f7bca550 7872 {
Azure.IoT Build 0:6ae2f7bca550 7873 sasl_init_destroy(*sasl_init_handle);
Azure.IoT Build 0:6ae2f7bca550 7874 result = __LINE__;
Azure.IoT Build 0:6ae2f7bca550 7875 break;
Azure.IoT Build 0:6ae2f7bca550 7876 }
Azure.IoT Build 0:6ae2f7bca550 7877 }
Azure.IoT Build 0:6ae2f7bca550 7878
Azure.IoT Build 0:6ae2f7bca550 7879 amqpvalue_destroy(item_value);
Azure.IoT Build 0:6ae2f7bca550 7880 }
Azure.IoT Build 0:6ae2f7bca550 7881 /* hostname */
Azure.IoT Build 0:6ae2f7bca550 7882 item_value = amqpvalue_get_list_item(list_value, 2);
Azure.IoT Build 0:6ae2f7bca550 7883 if (item_value == NULL)
Azure.IoT Build 0:6ae2f7bca550 7884 {
Azure.IoT Build 0:6ae2f7bca550 7885 /* do nothing */
Azure.IoT Build 0:6ae2f7bca550 7886 }
Azure.IoT Build 0:6ae2f7bca550 7887 else
Azure.IoT Build 0:6ae2f7bca550 7888 {
Azure.IoT Build 0:6ae2f7bca550 7889 const char* hostname;
Azure.IoT Build 0:6ae2f7bca550 7890 if (amqpvalue_get_string(item_value, &hostname) != 0)
Azure.IoT Build 0:6ae2f7bca550 7891 {
Azure.IoT Build 0:6ae2f7bca550 7892 if (amqpvalue_get_type(item_value) != AMQP_TYPE_NULL)
Azure.IoT Build 0:6ae2f7bca550 7893 {
Azure.IoT Build 0:6ae2f7bca550 7894 sasl_init_destroy(*sasl_init_handle);
Azure.IoT Build 0:6ae2f7bca550 7895 result = __LINE__;
Azure.IoT Build 0:6ae2f7bca550 7896 break;
Azure.IoT Build 0:6ae2f7bca550 7897 }
Azure.IoT Build 0:6ae2f7bca550 7898 }
Azure.IoT Build 0:6ae2f7bca550 7899
Azure.IoT Build 0:6ae2f7bca550 7900 amqpvalue_destroy(item_value);
Azure.IoT Build 0:6ae2f7bca550 7901 }
Azure.IoT Build 0:6ae2f7bca550 7902
Azure.IoT Build 0:6ae2f7bca550 7903 sasl_init_instance->composite_value = amqpvalue_clone(value);
Azure.IoT Build 0:6ae2f7bca550 7904
Azure.IoT Build 0:6ae2f7bca550 7905 result = 0;
Azure.IoT Build 0:6ae2f7bca550 7906 } while (0);
Azure.IoT Build 0:6ae2f7bca550 7907 }
Azure.IoT Build 0:6ae2f7bca550 7908 }
Azure.IoT Build 0:6ae2f7bca550 7909
Azure.IoT Build 0:6ae2f7bca550 7910 return result;
Azure.IoT Build 0:6ae2f7bca550 7911 }
Azure.IoT Build 0:6ae2f7bca550 7912
Azure.IoT Build 0:6ae2f7bca550 7913 int sasl_init_get_mechanism(SASL_INIT_HANDLE sasl_init, const char** mechanism_value)
Azure.IoT Build 0:6ae2f7bca550 7914 {
Azure.IoT Build 0:6ae2f7bca550 7915 int result;
Azure.IoT Build 0:6ae2f7bca550 7916
Azure.IoT Build 0:6ae2f7bca550 7917 if (sasl_init == NULL)
Azure.IoT Build 0:6ae2f7bca550 7918 {
Azure.IoT Build 0:6ae2f7bca550 7919 result = __LINE__;
Azure.IoT Build 0:6ae2f7bca550 7920 }
Azure.IoT Build 0:6ae2f7bca550 7921 else
Azure.IoT Build 0:6ae2f7bca550 7922 {
Azure.IoT Build 0:6ae2f7bca550 7923 SASL_INIT_INSTANCE* sasl_init_instance = (SASL_INIT_INSTANCE*)sasl_init;
Azure.IoT Build 0:6ae2f7bca550 7924 AMQP_VALUE item_value = amqpvalue_get_composite_item_in_place(sasl_init_instance->composite_value, 0);
Azure.IoT Build 0:6ae2f7bca550 7925 if (item_value == NULL)
Azure.IoT Build 0:6ae2f7bca550 7926 {
Azure.IoT Build 0:6ae2f7bca550 7927 result = __LINE__;
Azure.IoT Build 0:6ae2f7bca550 7928 }
Azure.IoT Build 0:6ae2f7bca550 7929 else
Azure.IoT Build 0:6ae2f7bca550 7930 {
Azure.IoT Build 0:6ae2f7bca550 7931 if (amqpvalue_get_symbol(item_value, mechanism_value) != 0)
Azure.IoT Build 0:6ae2f7bca550 7932 {
Azure.IoT Build 0:6ae2f7bca550 7933 result = __LINE__;
Azure.IoT Build 0:6ae2f7bca550 7934 }
Azure.IoT Build 0:6ae2f7bca550 7935 else
Azure.IoT Build 0:6ae2f7bca550 7936 {
Azure.IoT Build 0:6ae2f7bca550 7937 result = 0;
Azure.IoT Build 0:6ae2f7bca550 7938 }
Azure.IoT Build 0:6ae2f7bca550 7939 }
Azure.IoT Build 0:6ae2f7bca550 7940 }
Azure.IoT Build 0:6ae2f7bca550 7941
Azure.IoT Build 0:6ae2f7bca550 7942 return result;
Azure.IoT Build 0:6ae2f7bca550 7943 }
Azure.IoT Build 0:6ae2f7bca550 7944
Azure.IoT Build 0:6ae2f7bca550 7945 int sasl_init_set_mechanism(SASL_INIT_HANDLE sasl_init, const char* mechanism_value)
Azure.IoT Build 0:6ae2f7bca550 7946 {
Azure.IoT Build 0:6ae2f7bca550 7947 int result;
Azure.IoT Build 0:6ae2f7bca550 7948
Azure.IoT Build 0:6ae2f7bca550 7949 if (sasl_init == NULL)
Azure.IoT Build 0:6ae2f7bca550 7950 {
Azure.IoT Build 0:6ae2f7bca550 7951 result = __LINE__;
Azure.IoT Build 0:6ae2f7bca550 7952 }
Azure.IoT Build 0:6ae2f7bca550 7953 else
Azure.IoT Build 0:6ae2f7bca550 7954 {
Azure.IoT Build 0:6ae2f7bca550 7955 SASL_INIT_INSTANCE* sasl_init_instance = (SASL_INIT_INSTANCE*)sasl_init;
Azure.IoT Build 0:6ae2f7bca550 7956 AMQP_VALUE mechanism_amqp_value = amqpvalue_create_symbol(mechanism_value);
Azure.IoT Build 0:6ae2f7bca550 7957 if (mechanism_amqp_value == NULL)
Azure.IoT Build 0:6ae2f7bca550 7958 {
Azure.IoT Build 0:6ae2f7bca550 7959 result = __LINE__;
Azure.IoT Build 0:6ae2f7bca550 7960 }
Azure.IoT Build 0:6ae2f7bca550 7961 else
Azure.IoT Build 0:6ae2f7bca550 7962 {
Azure.IoT Build 0:6ae2f7bca550 7963 if (amqpvalue_set_composite_item(sasl_init_instance->composite_value, 0, mechanism_amqp_value) != 0)
Azure.IoT Build 0:6ae2f7bca550 7964 {
Azure.IoT Build 0:6ae2f7bca550 7965 result = __LINE__;
Azure.IoT Build 0:6ae2f7bca550 7966 }
Azure.IoT Build 0:6ae2f7bca550 7967 else
Azure.IoT Build 0:6ae2f7bca550 7968 {
Azure.IoT Build 0:6ae2f7bca550 7969 result = 0;
Azure.IoT Build 0:6ae2f7bca550 7970 }
Azure.IoT Build 0:6ae2f7bca550 7971
Azure.IoT Build 0:6ae2f7bca550 7972 amqpvalue_destroy(mechanism_amqp_value);
Azure.IoT Build 0:6ae2f7bca550 7973 }
Azure.IoT Build 0:6ae2f7bca550 7974 }
Azure.IoT Build 0:6ae2f7bca550 7975
Azure.IoT Build 0:6ae2f7bca550 7976 return result;
Azure.IoT Build 0:6ae2f7bca550 7977 }
Azure.IoT Build 0:6ae2f7bca550 7978
Azure.IoT Build 0:6ae2f7bca550 7979 int sasl_init_get_initial_response(SASL_INIT_HANDLE sasl_init, amqp_binary* initial_response_value)
Azure.IoT Build 0:6ae2f7bca550 7980 {
Azure.IoT Build 0:6ae2f7bca550 7981 int result;
Azure.IoT Build 0:6ae2f7bca550 7982
Azure.IoT Build 0:6ae2f7bca550 7983 if (sasl_init == NULL)
Azure.IoT Build 0:6ae2f7bca550 7984 {
Azure.IoT Build 0:6ae2f7bca550 7985 result = __LINE__;
Azure.IoT Build 0:6ae2f7bca550 7986 }
Azure.IoT Build 0:6ae2f7bca550 7987 else
Azure.IoT Build 0:6ae2f7bca550 7988 {
Azure.IoT Build 0:6ae2f7bca550 7989 SASL_INIT_INSTANCE* sasl_init_instance = (SASL_INIT_INSTANCE*)sasl_init;
Azure.IoT Build 0:6ae2f7bca550 7990 AMQP_VALUE item_value = amqpvalue_get_composite_item_in_place(sasl_init_instance->composite_value, 1);
Azure.IoT Build 0:6ae2f7bca550 7991 if (item_value == NULL)
Azure.IoT Build 0:6ae2f7bca550 7992 {
Azure.IoT Build 0:6ae2f7bca550 7993 result = __LINE__;
Azure.IoT Build 0:6ae2f7bca550 7994 }
Azure.IoT Build 0:6ae2f7bca550 7995 else
Azure.IoT Build 0:6ae2f7bca550 7996 {
Azure.IoT Build 0:6ae2f7bca550 7997 if (amqpvalue_get_binary(item_value, initial_response_value) != 0)
Azure.IoT Build 0:6ae2f7bca550 7998 {
Azure.IoT Build 0:6ae2f7bca550 7999 result = __LINE__;
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 result = 0;
Azure.IoT Build 0:6ae2f7bca550 8004 }
Azure.IoT Build 0:6ae2f7bca550 8005 }
Azure.IoT Build 0:6ae2f7bca550 8006 }
Azure.IoT Build 0:6ae2f7bca550 8007
Azure.IoT Build 0:6ae2f7bca550 8008 return result;
Azure.IoT Build 0:6ae2f7bca550 8009 }
Azure.IoT Build 0:6ae2f7bca550 8010
Azure.IoT Build 0:6ae2f7bca550 8011 int sasl_init_set_initial_response(SASL_INIT_HANDLE sasl_init, amqp_binary initial_response_value)
Azure.IoT Build 0:6ae2f7bca550 8012 {
Azure.IoT Build 0:6ae2f7bca550 8013 int result;
Azure.IoT Build 0:6ae2f7bca550 8014
Azure.IoT Build 0:6ae2f7bca550 8015 if (sasl_init == NULL)
Azure.IoT Build 0:6ae2f7bca550 8016 {
Azure.IoT Build 0:6ae2f7bca550 8017 result = __LINE__;
Azure.IoT Build 0:6ae2f7bca550 8018 }
Azure.IoT Build 0:6ae2f7bca550 8019 else
Azure.IoT Build 0:6ae2f7bca550 8020 {
Azure.IoT Build 0:6ae2f7bca550 8021 SASL_INIT_INSTANCE* sasl_init_instance = (SASL_INIT_INSTANCE*)sasl_init;
Azure.IoT Build 0:6ae2f7bca550 8022 AMQP_VALUE initial_response_amqp_value = amqpvalue_create_binary(initial_response_value);
Azure.IoT Build 0:6ae2f7bca550 8023 if (initial_response_amqp_value == NULL)
Azure.IoT Build 0:6ae2f7bca550 8024 {
Azure.IoT Build 0:6ae2f7bca550 8025 result = __LINE__;
Azure.IoT Build 0:6ae2f7bca550 8026 }
Azure.IoT Build 0:6ae2f7bca550 8027 else
Azure.IoT Build 0:6ae2f7bca550 8028 {
Azure.IoT Build 0:6ae2f7bca550 8029 if (amqpvalue_set_composite_item(sasl_init_instance->composite_value, 1, initial_response_amqp_value) != 0)
Azure.IoT Build 0:6ae2f7bca550 8030 {
Azure.IoT Build 0:6ae2f7bca550 8031 result = __LINE__;
Azure.IoT Build 0:6ae2f7bca550 8032 }
Azure.IoT Build 0:6ae2f7bca550 8033 else
Azure.IoT Build 0:6ae2f7bca550 8034 {
Azure.IoT Build 0:6ae2f7bca550 8035 result = 0;
Azure.IoT Build 0:6ae2f7bca550 8036 }
Azure.IoT Build 0:6ae2f7bca550 8037
Azure.IoT Build 0:6ae2f7bca550 8038 amqpvalue_destroy(initial_response_amqp_value);
Azure.IoT Build 0:6ae2f7bca550 8039 }
Azure.IoT Build 0:6ae2f7bca550 8040 }
Azure.IoT Build 0:6ae2f7bca550 8041
Azure.IoT Build 0:6ae2f7bca550 8042 return result;
Azure.IoT Build 0:6ae2f7bca550 8043 }
Azure.IoT Build 0:6ae2f7bca550 8044
Azure.IoT Build 0:6ae2f7bca550 8045 int sasl_init_get_hostname(SASL_INIT_HANDLE sasl_init, const char** hostname_value)
Azure.IoT Build 0:6ae2f7bca550 8046 {
Azure.IoT Build 0:6ae2f7bca550 8047 int result;
Azure.IoT Build 0:6ae2f7bca550 8048
Azure.IoT Build 0:6ae2f7bca550 8049 if (sasl_init == NULL)
Azure.IoT Build 0:6ae2f7bca550 8050 {
Azure.IoT Build 0:6ae2f7bca550 8051 result = __LINE__;
Azure.IoT Build 0:6ae2f7bca550 8052 }
Azure.IoT Build 0:6ae2f7bca550 8053 else
Azure.IoT Build 0:6ae2f7bca550 8054 {
Azure.IoT Build 0:6ae2f7bca550 8055 SASL_INIT_INSTANCE* sasl_init_instance = (SASL_INIT_INSTANCE*)sasl_init;
Azure.IoT Build 0:6ae2f7bca550 8056 AMQP_VALUE item_value = amqpvalue_get_composite_item_in_place(sasl_init_instance->composite_value, 2);
Azure.IoT Build 0:6ae2f7bca550 8057 if (item_value == NULL)
Azure.IoT Build 0:6ae2f7bca550 8058 {
Azure.IoT Build 0:6ae2f7bca550 8059 result = __LINE__;
Azure.IoT Build 0:6ae2f7bca550 8060 }
Azure.IoT Build 0:6ae2f7bca550 8061 else
Azure.IoT Build 0:6ae2f7bca550 8062 {
Azure.IoT Build 0:6ae2f7bca550 8063 if (amqpvalue_get_string(item_value, hostname_value) != 0)
Azure.IoT Build 0:6ae2f7bca550 8064 {
Azure.IoT Build 0:6ae2f7bca550 8065 result = __LINE__;
Azure.IoT Build 0:6ae2f7bca550 8066 }
Azure.IoT Build 0:6ae2f7bca550 8067 else
Azure.IoT Build 0:6ae2f7bca550 8068 {
Azure.IoT Build 0:6ae2f7bca550 8069 result = 0;
Azure.IoT Build 0:6ae2f7bca550 8070 }
Azure.IoT Build 0:6ae2f7bca550 8071 }
Azure.IoT Build 0:6ae2f7bca550 8072 }
Azure.IoT Build 0:6ae2f7bca550 8073
Azure.IoT Build 0:6ae2f7bca550 8074 return result;
Azure.IoT Build 0:6ae2f7bca550 8075 }
Azure.IoT Build 0:6ae2f7bca550 8076
Azure.IoT Build 0:6ae2f7bca550 8077 int sasl_init_set_hostname(SASL_INIT_HANDLE sasl_init, const char* hostname_value)
Azure.IoT Build 0:6ae2f7bca550 8078 {
Azure.IoT Build 0:6ae2f7bca550 8079 int result;
Azure.IoT Build 0:6ae2f7bca550 8080
Azure.IoT Build 0:6ae2f7bca550 8081 if (sasl_init == NULL)
Azure.IoT Build 0:6ae2f7bca550 8082 {
Azure.IoT Build 0:6ae2f7bca550 8083 result = __LINE__;
Azure.IoT Build 0:6ae2f7bca550 8084 }
Azure.IoT Build 0:6ae2f7bca550 8085 else
Azure.IoT Build 0:6ae2f7bca550 8086 {
Azure.IoT Build 0:6ae2f7bca550 8087 SASL_INIT_INSTANCE* sasl_init_instance = (SASL_INIT_INSTANCE*)sasl_init;
Azure.IoT Build 0:6ae2f7bca550 8088 AMQP_VALUE hostname_amqp_value = amqpvalue_create_string(hostname_value);
Azure.IoT Build 0:6ae2f7bca550 8089 if (hostname_amqp_value == NULL)
Azure.IoT Build 0:6ae2f7bca550 8090 {
Azure.IoT Build 0:6ae2f7bca550 8091 result = __LINE__;
Azure.IoT Build 0:6ae2f7bca550 8092 }
Azure.IoT Build 0:6ae2f7bca550 8093 else
Azure.IoT Build 0:6ae2f7bca550 8094 {
Azure.IoT Build 0:6ae2f7bca550 8095 if (amqpvalue_set_composite_item(sasl_init_instance->composite_value, 2, hostname_amqp_value) != 0)
Azure.IoT Build 0:6ae2f7bca550 8096 {
Azure.IoT Build 0:6ae2f7bca550 8097 result = __LINE__;
Azure.IoT Build 0:6ae2f7bca550 8098 }
Azure.IoT Build 0:6ae2f7bca550 8099 else
Azure.IoT Build 0:6ae2f7bca550 8100 {
Azure.IoT Build 0:6ae2f7bca550 8101 result = 0;
Azure.IoT Build 0:6ae2f7bca550 8102 }
Azure.IoT Build 0:6ae2f7bca550 8103
Azure.IoT Build 0:6ae2f7bca550 8104 amqpvalue_destroy(hostname_amqp_value);
Azure.IoT Build 0:6ae2f7bca550 8105 }
Azure.IoT Build 0:6ae2f7bca550 8106 }
Azure.IoT Build 0:6ae2f7bca550 8107
Azure.IoT Build 0:6ae2f7bca550 8108 return result;
Azure.IoT Build 0:6ae2f7bca550 8109 }
Azure.IoT Build 0:6ae2f7bca550 8110
Azure.IoT Build 0:6ae2f7bca550 8111
Azure.IoT Build 0:6ae2f7bca550 8112 /* sasl-challenge */
Azure.IoT Build 0:6ae2f7bca550 8113
Azure.IoT Build 0:6ae2f7bca550 8114 typedef struct SASL_CHALLENGE_INSTANCE_TAG
Azure.IoT Build 0:6ae2f7bca550 8115 {
Azure.IoT Build 0:6ae2f7bca550 8116 AMQP_VALUE composite_value;
Azure.IoT Build 0:6ae2f7bca550 8117 } SASL_CHALLENGE_INSTANCE;
Azure.IoT Build 0:6ae2f7bca550 8118
Azure.IoT Build 0:6ae2f7bca550 8119 static SASL_CHALLENGE_HANDLE sasl_challenge_create_internal(void)
Azure.IoT Build 0:6ae2f7bca550 8120 {
Azure.IoT Build 0:6ae2f7bca550 8121 SASL_CHALLENGE_INSTANCE* sasl_challenge_instance = (SASL_CHALLENGE_INSTANCE*)amqpalloc_malloc(sizeof(SASL_CHALLENGE_INSTANCE));
Azure.IoT Build 0:6ae2f7bca550 8122 if (sasl_challenge_instance != NULL)
Azure.IoT Build 0:6ae2f7bca550 8123 {
Azure.IoT Build 0:6ae2f7bca550 8124 sasl_challenge_instance->composite_value = NULL;
Azure.IoT Build 0:6ae2f7bca550 8125 }
Azure.IoT Build 0:6ae2f7bca550 8126
Azure.IoT Build 0:6ae2f7bca550 8127 return sasl_challenge_instance;
Azure.IoT Build 0:6ae2f7bca550 8128 }
Azure.IoT Build 0:6ae2f7bca550 8129
Azure.IoT Build 0:6ae2f7bca550 8130 SASL_CHALLENGE_HANDLE sasl_challenge_create(amqp_binary challenge_value)
Azure.IoT Build 0:6ae2f7bca550 8131 {
Azure.IoT Build 0:6ae2f7bca550 8132 SASL_CHALLENGE_INSTANCE* sasl_challenge_instance = (SASL_CHALLENGE_INSTANCE*)amqpalloc_malloc(sizeof(SASL_CHALLENGE_INSTANCE));
Azure.IoT Build 0:6ae2f7bca550 8133 if (sasl_challenge_instance != NULL)
Azure.IoT Build 0:6ae2f7bca550 8134 {
Azure.IoT Build 0:6ae2f7bca550 8135 sasl_challenge_instance->composite_value = amqpvalue_create_composite_with_ulong_descriptor(66);
Azure.IoT Build 0:6ae2f7bca550 8136 if (sasl_challenge_instance->composite_value == NULL)
Azure.IoT Build 0:6ae2f7bca550 8137 {
Azure.IoT Build 0:6ae2f7bca550 8138 amqpalloc_free(sasl_challenge_instance);
Azure.IoT Build 0:6ae2f7bca550 8139 sasl_challenge_instance = NULL;
Azure.IoT Build 0:6ae2f7bca550 8140 }
Azure.IoT Build 0:6ae2f7bca550 8141 else
Azure.IoT Build 0:6ae2f7bca550 8142 {
Azure.IoT Build 0:6ae2f7bca550 8143 AMQP_VALUE challenge_amqp_value;
Azure.IoT Build 0:6ae2f7bca550 8144 int result = 0;
Azure.IoT Build 0:6ae2f7bca550 8145
Azure.IoT Build 0:6ae2f7bca550 8146 challenge_amqp_value = amqpvalue_create_binary(challenge_value);
Azure.IoT Build 0:6ae2f7bca550 8147 if ((result == 0) && (amqpvalue_set_composite_item(sasl_challenge_instance->composite_value, 0, challenge_amqp_value) != 0))
Azure.IoT Build 0:6ae2f7bca550 8148 {
Azure.IoT Build 0:6ae2f7bca550 8149 result = __LINE__;
Azure.IoT Build 0:6ae2f7bca550 8150 }
Azure.IoT Build 0:6ae2f7bca550 8151
Azure.IoT Build 0:6ae2f7bca550 8152 amqpvalue_destroy(challenge_amqp_value);
Azure.IoT Build 0:6ae2f7bca550 8153 }
Azure.IoT Build 0:6ae2f7bca550 8154 }
Azure.IoT Build 0:6ae2f7bca550 8155
Azure.IoT Build 0:6ae2f7bca550 8156 return sasl_challenge_instance;
Azure.IoT Build 0:6ae2f7bca550 8157 }
Azure.IoT Build 0:6ae2f7bca550 8158
Azure.IoT Build 0:6ae2f7bca550 8159 SASL_CHALLENGE_HANDLE sasl_challenge_clone(SASL_CHALLENGE_HANDLE value)
Azure.IoT Build 0:6ae2f7bca550 8160 {
Azure.IoT Build 0:6ae2f7bca550 8161 SASL_CHALLENGE_INSTANCE* sasl_challenge_instance = (SASL_CHALLENGE_INSTANCE*)amqpalloc_malloc(sizeof(SASL_CHALLENGE_INSTANCE));
Azure.IoT Build 0:6ae2f7bca550 8162 if (sasl_challenge_instance != NULL)
Azure.IoT Build 0:6ae2f7bca550 8163 {
Azure.IoT Build 0:6ae2f7bca550 8164 sasl_challenge_instance->composite_value = amqpvalue_clone(((SASL_CHALLENGE_INSTANCE*)value)->composite_value);
Azure.IoT Build 0:6ae2f7bca550 8165 if (sasl_challenge_instance->composite_value == NULL)
Azure.IoT Build 0:6ae2f7bca550 8166 {
Azure.IoT Build 0:6ae2f7bca550 8167 amqpalloc_free(sasl_challenge_instance);
Azure.IoT Build 0:6ae2f7bca550 8168 sasl_challenge_instance = NULL;
Azure.IoT Build 0:6ae2f7bca550 8169 }
Azure.IoT Build 0:6ae2f7bca550 8170 }
Azure.IoT Build 0:6ae2f7bca550 8171
Azure.IoT Build 0:6ae2f7bca550 8172 return sasl_challenge_instance;
Azure.IoT Build 0:6ae2f7bca550 8173 }
Azure.IoT Build 0:6ae2f7bca550 8174
Azure.IoT Build 0:6ae2f7bca550 8175 void sasl_challenge_destroy(SASL_CHALLENGE_HANDLE sasl_challenge)
Azure.IoT Build 0:6ae2f7bca550 8176 {
Azure.IoT Build 0:6ae2f7bca550 8177 if (sasl_challenge != NULL)
Azure.IoT Build 0:6ae2f7bca550 8178 {
Azure.IoT Build 0:6ae2f7bca550 8179 SASL_CHALLENGE_INSTANCE* sasl_challenge_instance = (SASL_CHALLENGE_INSTANCE*)sasl_challenge;
Azure.IoT Build 0:6ae2f7bca550 8180 amqpvalue_destroy(sasl_challenge_instance->composite_value);
Azure.IoT Build 0:6ae2f7bca550 8181 amqpalloc_free(sasl_challenge_instance);
Azure.IoT Build 0:6ae2f7bca550 8182 }
Azure.IoT Build 0:6ae2f7bca550 8183 }
Azure.IoT Build 0:6ae2f7bca550 8184
Azure.IoT Build 0:6ae2f7bca550 8185 AMQP_VALUE amqpvalue_create_sasl_challenge(SASL_CHALLENGE_HANDLE sasl_challenge)
Azure.IoT Build 0:6ae2f7bca550 8186 {
Azure.IoT Build 0:6ae2f7bca550 8187 AMQP_VALUE result;
Azure.IoT Build 0:6ae2f7bca550 8188
Azure.IoT Build 0:6ae2f7bca550 8189 if (sasl_challenge == NULL)
Azure.IoT Build 0:6ae2f7bca550 8190 {
Azure.IoT Build 0:6ae2f7bca550 8191 result = NULL;
Azure.IoT Build 0:6ae2f7bca550 8192 }
Azure.IoT Build 0:6ae2f7bca550 8193 else
Azure.IoT Build 0:6ae2f7bca550 8194 {
Azure.IoT Build 0:6ae2f7bca550 8195 SASL_CHALLENGE_INSTANCE* sasl_challenge_instance = (SASL_CHALLENGE_INSTANCE*)sasl_challenge;
Azure.IoT Build 0:6ae2f7bca550 8196 result = amqpvalue_clone(sasl_challenge_instance->composite_value);
Azure.IoT Build 0:6ae2f7bca550 8197 }
Azure.IoT Build 0:6ae2f7bca550 8198
Azure.IoT Build 0:6ae2f7bca550 8199 return result;
Azure.IoT Build 0:6ae2f7bca550 8200 }
Azure.IoT Build 0:6ae2f7bca550 8201
Azure.IoT Build 0:6ae2f7bca550 8202 bool is_sasl_challenge_type_by_descriptor(AMQP_VALUE descriptor)
Azure.IoT Build 0:6ae2f7bca550 8203 {
Azure.IoT Build 0:6ae2f7bca550 8204 bool result;
Azure.IoT Build 0:6ae2f7bca550 8205
Azure.IoT Build 0:6ae2f7bca550 8206 uint64_t descriptor_ulong;
Azure.IoT Build 0:6ae2f7bca550 8207 if ((amqpvalue_get_ulong(descriptor, &descriptor_ulong) == 0) &&
Azure.IoT Build 0:6ae2f7bca550 8208 (descriptor_ulong == 66))
Azure.IoT Build 0:6ae2f7bca550 8209 {
Azure.IoT Build 0:6ae2f7bca550 8210 result = true;
Azure.IoT Build 0:6ae2f7bca550 8211 }
Azure.IoT Build 0:6ae2f7bca550 8212 else
Azure.IoT Build 0:6ae2f7bca550 8213 {
Azure.IoT Build 0:6ae2f7bca550 8214 result = false;
Azure.IoT Build 0:6ae2f7bca550 8215 }
Azure.IoT Build 0:6ae2f7bca550 8216
Azure.IoT Build 0:6ae2f7bca550 8217 return result;
Azure.IoT Build 0:6ae2f7bca550 8218 }
Azure.IoT Build 0:6ae2f7bca550 8219
Azure.IoT Build 0:6ae2f7bca550 8220
Azure.IoT Build 0:6ae2f7bca550 8221 int amqpvalue_get_sasl_challenge(AMQP_VALUE value, SASL_CHALLENGE_HANDLE* sasl_challenge_handle)
Azure.IoT Build 0:6ae2f7bca550 8222 {
Azure.IoT Build 0:6ae2f7bca550 8223 int result;
Azure.IoT Build 0:6ae2f7bca550 8224 SASL_CHALLENGE_INSTANCE* sasl_challenge_instance = (SASL_CHALLENGE_INSTANCE*)sasl_challenge_create_internal();
Azure.IoT Build 0:6ae2f7bca550 8225 *sasl_challenge_handle = sasl_challenge_instance;
Azure.IoT Build 0:6ae2f7bca550 8226 if (*sasl_challenge_handle == NULL)
Azure.IoT Build 0:6ae2f7bca550 8227 {
Azure.IoT Build 0:6ae2f7bca550 8228 result = __LINE__;
Azure.IoT Build 0:6ae2f7bca550 8229 }
Azure.IoT Build 0:6ae2f7bca550 8230 else
Azure.IoT Build 0:6ae2f7bca550 8231 {
Azure.IoT Build 0:6ae2f7bca550 8232 AMQP_VALUE list_value = amqpvalue_get_inplace_described_value(value);
Azure.IoT Build 0:6ae2f7bca550 8233 if (list_value == NULL)
Azure.IoT Build 0:6ae2f7bca550 8234 {
Azure.IoT Build 0:6ae2f7bca550 8235 sasl_challenge_destroy(*sasl_challenge_handle);
Azure.IoT Build 0:6ae2f7bca550 8236 result = __LINE__;
Azure.IoT Build 0:6ae2f7bca550 8237 }
Azure.IoT Build 0:6ae2f7bca550 8238 else
Azure.IoT Build 0:6ae2f7bca550 8239 {
Azure.IoT Build 0:6ae2f7bca550 8240 do
Azure.IoT Build 0:6ae2f7bca550 8241 {
Azure.IoT Build 0:6ae2f7bca550 8242 AMQP_VALUE item_value;
Azure.IoT Build 0:6ae2f7bca550 8243 /* challenge */
Azure.IoT Build 0:6ae2f7bca550 8244 item_value = amqpvalue_get_list_item(list_value, 0);
Azure.IoT Build 0:6ae2f7bca550 8245 if (item_value == NULL)
Azure.IoT Build 0:6ae2f7bca550 8246 {
Azure.IoT Build 0:6ae2f7bca550 8247 {
Azure.IoT Build 0:6ae2f7bca550 8248 sasl_challenge_destroy(*sasl_challenge_handle);
Azure.IoT Build 0:6ae2f7bca550 8249 result = __LINE__;
Azure.IoT Build 0:6ae2f7bca550 8250 break;
Azure.IoT Build 0:6ae2f7bca550 8251 }
Azure.IoT Build 0:6ae2f7bca550 8252 }
Azure.IoT Build 0:6ae2f7bca550 8253 else
Azure.IoT Build 0:6ae2f7bca550 8254 {
Azure.IoT Build 0:6ae2f7bca550 8255 amqp_binary challenge;
Azure.IoT Build 0:6ae2f7bca550 8256 if (amqpvalue_get_binary(item_value, &challenge) != 0)
Azure.IoT Build 0:6ae2f7bca550 8257 {
Azure.IoT Build 0:6ae2f7bca550 8258 sasl_challenge_destroy(*sasl_challenge_handle);
Azure.IoT Build 0:6ae2f7bca550 8259 result = __LINE__;
Azure.IoT Build 0:6ae2f7bca550 8260 break;
Azure.IoT Build 0:6ae2f7bca550 8261 }
Azure.IoT Build 0:6ae2f7bca550 8262
Azure.IoT Build 0:6ae2f7bca550 8263 amqpvalue_destroy(item_value);
Azure.IoT Build 0:6ae2f7bca550 8264 }
Azure.IoT Build 0:6ae2f7bca550 8265
Azure.IoT Build 0:6ae2f7bca550 8266 sasl_challenge_instance->composite_value = amqpvalue_clone(value);
Azure.IoT Build 0:6ae2f7bca550 8267
Azure.IoT Build 0:6ae2f7bca550 8268 result = 0;
Azure.IoT Build 0:6ae2f7bca550 8269 } while (0);
Azure.IoT Build 0:6ae2f7bca550 8270 }
Azure.IoT Build 0:6ae2f7bca550 8271 }
Azure.IoT Build 0:6ae2f7bca550 8272
Azure.IoT Build 0:6ae2f7bca550 8273 return result;
Azure.IoT Build 0:6ae2f7bca550 8274 }
Azure.IoT Build 0:6ae2f7bca550 8275
Azure.IoT Build 0:6ae2f7bca550 8276 int sasl_challenge_get_challenge(SASL_CHALLENGE_HANDLE sasl_challenge, amqp_binary* challenge_value)
Azure.IoT Build 0:6ae2f7bca550 8277 {
Azure.IoT Build 0:6ae2f7bca550 8278 int result;
Azure.IoT Build 0:6ae2f7bca550 8279
Azure.IoT Build 0:6ae2f7bca550 8280 if (sasl_challenge == NULL)
Azure.IoT Build 0:6ae2f7bca550 8281 {
Azure.IoT Build 0:6ae2f7bca550 8282 result = __LINE__;
Azure.IoT Build 0:6ae2f7bca550 8283 }
Azure.IoT Build 0:6ae2f7bca550 8284 else
Azure.IoT Build 0:6ae2f7bca550 8285 {
Azure.IoT Build 0:6ae2f7bca550 8286 SASL_CHALLENGE_INSTANCE* sasl_challenge_instance = (SASL_CHALLENGE_INSTANCE*)sasl_challenge;
Azure.IoT Build 0:6ae2f7bca550 8287 AMQP_VALUE item_value = amqpvalue_get_composite_item_in_place(sasl_challenge_instance->composite_value, 0);
Azure.IoT Build 0:6ae2f7bca550 8288 if (item_value == NULL)
Azure.IoT Build 0:6ae2f7bca550 8289 {
Azure.IoT Build 0:6ae2f7bca550 8290 result = __LINE__;
Azure.IoT Build 0:6ae2f7bca550 8291 }
Azure.IoT Build 0:6ae2f7bca550 8292 else
Azure.IoT Build 0:6ae2f7bca550 8293 {
Azure.IoT Build 0:6ae2f7bca550 8294 if (amqpvalue_get_binary(item_value, challenge_value) != 0)
Azure.IoT Build 0:6ae2f7bca550 8295 {
Azure.IoT Build 0:6ae2f7bca550 8296 result = __LINE__;
Azure.IoT Build 0:6ae2f7bca550 8297 }
Azure.IoT Build 0:6ae2f7bca550 8298 else
Azure.IoT Build 0:6ae2f7bca550 8299 {
Azure.IoT Build 0:6ae2f7bca550 8300 result = 0;
Azure.IoT Build 0:6ae2f7bca550 8301 }
Azure.IoT Build 0:6ae2f7bca550 8302 }
Azure.IoT Build 0:6ae2f7bca550 8303 }
Azure.IoT Build 0:6ae2f7bca550 8304
Azure.IoT Build 0:6ae2f7bca550 8305 return result;
Azure.IoT Build 0:6ae2f7bca550 8306 }
Azure.IoT Build 0:6ae2f7bca550 8307
Azure.IoT Build 0:6ae2f7bca550 8308 int sasl_challenge_set_challenge(SASL_CHALLENGE_HANDLE sasl_challenge, amqp_binary challenge_value)
Azure.IoT Build 0:6ae2f7bca550 8309 {
Azure.IoT Build 0:6ae2f7bca550 8310 int result;
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 result = __LINE__;
Azure.IoT Build 0:6ae2f7bca550 8315 }
Azure.IoT Build 0:6ae2f7bca550 8316 else
Azure.IoT Build 0:6ae2f7bca550 8317 {
Azure.IoT Build 0:6ae2f7bca550 8318 SASL_CHALLENGE_INSTANCE* sasl_challenge_instance = (SASL_CHALLENGE_INSTANCE*)sasl_challenge;
Azure.IoT Build 0:6ae2f7bca550 8319 AMQP_VALUE challenge_amqp_value = amqpvalue_create_binary(challenge_value);
Azure.IoT Build 0:6ae2f7bca550 8320 if (challenge_amqp_value == NULL)
Azure.IoT Build 0:6ae2f7bca550 8321 {
Azure.IoT Build 0:6ae2f7bca550 8322 result = __LINE__;
Azure.IoT Build 0:6ae2f7bca550 8323 }
Azure.IoT Build 0:6ae2f7bca550 8324 else
Azure.IoT Build 0:6ae2f7bca550 8325 {
Azure.IoT Build 0:6ae2f7bca550 8326 if (amqpvalue_set_composite_item(sasl_challenge_instance->composite_value, 0, challenge_amqp_value) != 0)
Azure.IoT Build 0:6ae2f7bca550 8327 {
Azure.IoT Build 0:6ae2f7bca550 8328 result = __LINE__;
Azure.IoT Build 0:6ae2f7bca550 8329 }
Azure.IoT Build 0:6ae2f7bca550 8330 else
Azure.IoT Build 0:6ae2f7bca550 8331 {
Azure.IoT Build 0:6ae2f7bca550 8332 result = 0;
Azure.IoT Build 0:6ae2f7bca550 8333 }
Azure.IoT Build 0:6ae2f7bca550 8334
Azure.IoT Build 0:6ae2f7bca550 8335 amqpvalue_destroy(challenge_amqp_value);
Azure.IoT Build 0:6ae2f7bca550 8336 }
Azure.IoT Build 0:6ae2f7bca550 8337 }
Azure.IoT Build 0:6ae2f7bca550 8338
Azure.IoT Build 0:6ae2f7bca550 8339 return result;
Azure.IoT Build 0:6ae2f7bca550 8340 }
Azure.IoT Build 0:6ae2f7bca550 8341
Azure.IoT Build 0:6ae2f7bca550 8342
Azure.IoT Build 0:6ae2f7bca550 8343 /* sasl-response */
Azure.IoT Build 0:6ae2f7bca550 8344
Azure.IoT Build 0:6ae2f7bca550 8345 typedef struct SASL_RESPONSE_INSTANCE_TAG
Azure.IoT Build 0:6ae2f7bca550 8346 {
Azure.IoT Build 0:6ae2f7bca550 8347 AMQP_VALUE composite_value;
Azure.IoT Build 0:6ae2f7bca550 8348 } SASL_RESPONSE_INSTANCE;
Azure.IoT Build 0:6ae2f7bca550 8349
Azure.IoT Build 0:6ae2f7bca550 8350 static SASL_RESPONSE_HANDLE sasl_response_create_internal(void)
Azure.IoT Build 0:6ae2f7bca550 8351 {
Azure.IoT Build 0:6ae2f7bca550 8352 SASL_RESPONSE_INSTANCE* sasl_response_instance = (SASL_RESPONSE_INSTANCE*)amqpalloc_malloc(sizeof(SASL_RESPONSE_INSTANCE));
Azure.IoT Build 0:6ae2f7bca550 8353 if (sasl_response_instance != NULL)
Azure.IoT Build 0:6ae2f7bca550 8354 {
Azure.IoT Build 0:6ae2f7bca550 8355 sasl_response_instance->composite_value = NULL;
Azure.IoT Build 0:6ae2f7bca550 8356 }
Azure.IoT Build 0:6ae2f7bca550 8357
Azure.IoT Build 0:6ae2f7bca550 8358 return sasl_response_instance;
Azure.IoT Build 0:6ae2f7bca550 8359 }
Azure.IoT Build 0:6ae2f7bca550 8360
Azure.IoT Build 0:6ae2f7bca550 8361 SASL_RESPONSE_HANDLE sasl_response_create(amqp_binary response_value)
Azure.IoT Build 0:6ae2f7bca550 8362 {
Azure.IoT Build 0:6ae2f7bca550 8363 SASL_RESPONSE_INSTANCE* sasl_response_instance = (SASL_RESPONSE_INSTANCE*)amqpalloc_malloc(sizeof(SASL_RESPONSE_INSTANCE));
Azure.IoT Build 0:6ae2f7bca550 8364 if (sasl_response_instance != NULL)
Azure.IoT Build 0:6ae2f7bca550 8365 {
Azure.IoT Build 0:6ae2f7bca550 8366 sasl_response_instance->composite_value = amqpvalue_create_composite_with_ulong_descriptor(67);
Azure.IoT Build 0:6ae2f7bca550 8367 if (sasl_response_instance->composite_value == NULL)
Azure.IoT Build 0:6ae2f7bca550 8368 {
Azure.IoT Build 0:6ae2f7bca550 8369 amqpalloc_free(sasl_response_instance);
Azure.IoT Build 0:6ae2f7bca550 8370 sasl_response_instance = NULL;
Azure.IoT Build 0:6ae2f7bca550 8371 }
Azure.IoT Build 0:6ae2f7bca550 8372 else
Azure.IoT Build 0:6ae2f7bca550 8373 {
Azure.IoT Build 0:6ae2f7bca550 8374 AMQP_VALUE response_amqp_value;
Azure.IoT Build 0:6ae2f7bca550 8375 int result = 0;
Azure.IoT Build 0:6ae2f7bca550 8376
Azure.IoT Build 0:6ae2f7bca550 8377 response_amqp_value = amqpvalue_create_binary(response_value);
Azure.IoT Build 0:6ae2f7bca550 8378 if ((result == 0) && (amqpvalue_set_composite_item(sasl_response_instance->composite_value, 0, response_amqp_value) != 0))
Azure.IoT Build 0:6ae2f7bca550 8379 {
Azure.IoT Build 0:6ae2f7bca550 8380 result = __LINE__;
Azure.IoT Build 0:6ae2f7bca550 8381 }
Azure.IoT Build 0:6ae2f7bca550 8382
Azure.IoT Build 0:6ae2f7bca550 8383 amqpvalue_destroy(response_amqp_value);
Azure.IoT Build 0:6ae2f7bca550 8384 }
Azure.IoT Build 0:6ae2f7bca550 8385 }
Azure.IoT Build 0:6ae2f7bca550 8386
Azure.IoT Build 0:6ae2f7bca550 8387 return sasl_response_instance;
Azure.IoT Build 0:6ae2f7bca550 8388 }
Azure.IoT Build 0:6ae2f7bca550 8389
Azure.IoT Build 0:6ae2f7bca550 8390 SASL_RESPONSE_HANDLE sasl_response_clone(SASL_RESPONSE_HANDLE value)
Azure.IoT Build 0:6ae2f7bca550 8391 {
Azure.IoT Build 0:6ae2f7bca550 8392 SASL_RESPONSE_INSTANCE* sasl_response_instance = (SASL_RESPONSE_INSTANCE*)amqpalloc_malloc(sizeof(SASL_RESPONSE_INSTANCE));
Azure.IoT Build 0:6ae2f7bca550 8393 if (sasl_response_instance != NULL)
Azure.IoT Build 0:6ae2f7bca550 8394 {
Azure.IoT Build 0:6ae2f7bca550 8395 sasl_response_instance->composite_value = amqpvalue_clone(((SASL_RESPONSE_INSTANCE*)value)->composite_value);
Azure.IoT Build 0:6ae2f7bca550 8396 if (sasl_response_instance->composite_value == NULL)
Azure.IoT Build 0:6ae2f7bca550 8397 {
Azure.IoT Build 0:6ae2f7bca550 8398 amqpalloc_free(sasl_response_instance);
Azure.IoT Build 0:6ae2f7bca550 8399 sasl_response_instance = NULL;
Azure.IoT Build 0:6ae2f7bca550 8400 }
Azure.IoT Build 0:6ae2f7bca550 8401 }
Azure.IoT Build 0:6ae2f7bca550 8402
Azure.IoT Build 0:6ae2f7bca550 8403 return sasl_response_instance;
Azure.IoT Build 0:6ae2f7bca550 8404 }
Azure.IoT Build 0:6ae2f7bca550 8405
Azure.IoT Build 0:6ae2f7bca550 8406 void sasl_response_destroy(SASL_RESPONSE_HANDLE sasl_response)
Azure.IoT Build 0:6ae2f7bca550 8407 {
Azure.IoT Build 0:6ae2f7bca550 8408 if (sasl_response != NULL)
Azure.IoT Build 0:6ae2f7bca550 8409 {
Azure.IoT Build 0:6ae2f7bca550 8410 SASL_RESPONSE_INSTANCE* sasl_response_instance = (SASL_RESPONSE_INSTANCE*)sasl_response;
Azure.IoT Build 0:6ae2f7bca550 8411 amqpvalue_destroy(sasl_response_instance->composite_value);
Azure.IoT Build 0:6ae2f7bca550 8412 amqpalloc_free(sasl_response_instance);
Azure.IoT Build 0:6ae2f7bca550 8413 }
Azure.IoT Build 0:6ae2f7bca550 8414 }
Azure.IoT Build 0:6ae2f7bca550 8415
Azure.IoT Build 0:6ae2f7bca550 8416 AMQP_VALUE amqpvalue_create_sasl_response(SASL_RESPONSE_HANDLE sasl_response)
Azure.IoT Build 0:6ae2f7bca550 8417 {
Azure.IoT Build 0:6ae2f7bca550 8418 AMQP_VALUE result;
Azure.IoT Build 0:6ae2f7bca550 8419
Azure.IoT Build 0:6ae2f7bca550 8420 if (sasl_response == NULL)
Azure.IoT Build 0:6ae2f7bca550 8421 {
Azure.IoT Build 0:6ae2f7bca550 8422 result = NULL;
Azure.IoT Build 0:6ae2f7bca550 8423 }
Azure.IoT Build 0:6ae2f7bca550 8424 else
Azure.IoT Build 0:6ae2f7bca550 8425 {
Azure.IoT Build 0:6ae2f7bca550 8426 SASL_RESPONSE_INSTANCE* sasl_response_instance = (SASL_RESPONSE_INSTANCE*)sasl_response;
Azure.IoT Build 0:6ae2f7bca550 8427 result = amqpvalue_clone(sasl_response_instance->composite_value);
Azure.IoT Build 0:6ae2f7bca550 8428 }
Azure.IoT Build 0:6ae2f7bca550 8429
Azure.IoT Build 0:6ae2f7bca550 8430 return result;
Azure.IoT Build 0:6ae2f7bca550 8431 }
Azure.IoT Build 0:6ae2f7bca550 8432
Azure.IoT Build 0:6ae2f7bca550 8433 bool is_sasl_response_type_by_descriptor(AMQP_VALUE descriptor)
Azure.IoT Build 0:6ae2f7bca550 8434 {
Azure.IoT Build 0:6ae2f7bca550 8435 bool result;
Azure.IoT Build 0:6ae2f7bca550 8436
Azure.IoT Build 0:6ae2f7bca550 8437 uint64_t descriptor_ulong;
Azure.IoT Build 0:6ae2f7bca550 8438 if ((amqpvalue_get_ulong(descriptor, &descriptor_ulong) == 0) &&
Azure.IoT Build 0:6ae2f7bca550 8439 (descriptor_ulong == 67))
Azure.IoT Build 0:6ae2f7bca550 8440 {
Azure.IoT Build 0:6ae2f7bca550 8441 result = true;
Azure.IoT Build 0:6ae2f7bca550 8442 }
Azure.IoT Build 0:6ae2f7bca550 8443 else
Azure.IoT Build 0:6ae2f7bca550 8444 {
Azure.IoT Build 0:6ae2f7bca550 8445 result = false;
Azure.IoT Build 0:6ae2f7bca550 8446 }
Azure.IoT Build 0:6ae2f7bca550 8447
Azure.IoT Build 0:6ae2f7bca550 8448 return result;
Azure.IoT Build 0:6ae2f7bca550 8449 }
Azure.IoT Build 0:6ae2f7bca550 8450
Azure.IoT Build 0:6ae2f7bca550 8451
Azure.IoT Build 0:6ae2f7bca550 8452 int amqpvalue_get_sasl_response(AMQP_VALUE value, SASL_RESPONSE_HANDLE* sasl_response_handle)
Azure.IoT Build 0:6ae2f7bca550 8453 {
Azure.IoT Build 0:6ae2f7bca550 8454 int result;
Azure.IoT Build 0:6ae2f7bca550 8455 SASL_RESPONSE_INSTANCE* sasl_response_instance = (SASL_RESPONSE_INSTANCE*)sasl_response_create_internal();
Azure.IoT Build 0:6ae2f7bca550 8456 *sasl_response_handle = sasl_response_instance;
Azure.IoT Build 0:6ae2f7bca550 8457 if (*sasl_response_handle == NULL)
Azure.IoT Build 0:6ae2f7bca550 8458 {
Azure.IoT Build 0:6ae2f7bca550 8459 result = __LINE__;
Azure.IoT Build 0:6ae2f7bca550 8460 }
Azure.IoT Build 0:6ae2f7bca550 8461 else
Azure.IoT Build 0:6ae2f7bca550 8462 {
Azure.IoT Build 0:6ae2f7bca550 8463 AMQP_VALUE list_value = amqpvalue_get_inplace_described_value(value);
Azure.IoT Build 0:6ae2f7bca550 8464 if (list_value == NULL)
Azure.IoT Build 0:6ae2f7bca550 8465 {
Azure.IoT Build 0:6ae2f7bca550 8466 sasl_response_destroy(*sasl_response_handle);
Azure.IoT Build 0:6ae2f7bca550 8467 result = __LINE__;
Azure.IoT Build 0:6ae2f7bca550 8468 }
Azure.IoT Build 0:6ae2f7bca550 8469 else
Azure.IoT Build 0:6ae2f7bca550 8470 {
Azure.IoT Build 0:6ae2f7bca550 8471 do
Azure.IoT Build 0:6ae2f7bca550 8472 {
Azure.IoT Build 0:6ae2f7bca550 8473 AMQP_VALUE item_value;
Azure.IoT Build 0:6ae2f7bca550 8474 /* response */
Azure.IoT Build 0:6ae2f7bca550 8475 item_value = amqpvalue_get_list_item(list_value, 0);
Azure.IoT Build 0:6ae2f7bca550 8476 if (item_value == NULL)
Azure.IoT Build 0:6ae2f7bca550 8477 {
Azure.IoT Build 0:6ae2f7bca550 8478 {
Azure.IoT Build 0:6ae2f7bca550 8479 sasl_response_destroy(*sasl_response_handle);
Azure.IoT Build 0:6ae2f7bca550 8480 result = __LINE__;
Azure.IoT Build 0:6ae2f7bca550 8481 break;
Azure.IoT Build 0:6ae2f7bca550 8482 }
Azure.IoT Build 0:6ae2f7bca550 8483 }
Azure.IoT Build 0:6ae2f7bca550 8484 else
Azure.IoT Build 0:6ae2f7bca550 8485 {
Azure.IoT Build 0:6ae2f7bca550 8486 amqp_binary response;
Azure.IoT Build 0:6ae2f7bca550 8487 if (amqpvalue_get_binary(item_value, &response) != 0)
Azure.IoT Build 0:6ae2f7bca550 8488 {
Azure.IoT Build 0:6ae2f7bca550 8489 sasl_response_destroy(*sasl_response_handle);
Azure.IoT Build 0:6ae2f7bca550 8490 result = __LINE__;
Azure.IoT Build 0:6ae2f7bca550 8491 break;
Azure.IoT Build 0:6ae2f7bca550 8492 }
Azure.IoT Build 0:6ae2f7bca550 8493
Azure.IoT Build 0:6ae2f7bca550 8494 amqpvalue_destroy(item_value);
Azure.IoT Build 0:6ae2f7bca550 8495 }
Azure.IoT Build 0:6ae2f7bca550 8496
Azure.IoT Build 0:6ae2f7bca550 8497 sasl_response_instance->composite_value = amqpvalue_clone(value);
Azure.IoT Build 0:6ae2f7bca550 8498
Azure.IoT Build 0:6ae2f7bca550 8499 result = 0;
Azure.IoT Build 0:6ae2f7bca550 8500 } while (0);
Azure.IoT Build 0:6ae2f7bca550 8501 }
Azure.IoT Build 0:6ae2f7bca550 8502 }
Azure.IoT Build 0:6ae2f7bca550 8503
Azure.IoT Build 0:6ae2f7bca550 8504 return result;
Azure.IoT Build 0:6ae2f7bca550 8505 }
Azure.IoT Build 0:6ae2f7bca550 8506
Azure.IoT Build 0:6ae2f7bca550 8507 int sasl_response_get_response(SASL_RESPONSE_HANDLE sasl_response, amqp_binary* response_value)
Azure.IoT Build 0:6ae2f7bca550 8508 {
Azure.IoT Build 0:6ae2f7bca550 8509 int result;
Azure.IoT Build 0:6ae2f7bca550 8510
Azure.IoT Build 0:6ae2f7bca550 8511 if (sasl_response == NULL)
Azure.IoT Build 0:6ae2f7bca550 8512 {
Azure.IoT Build 0:6ae2f7bca550 8513 result = __LINE__;
Azure.IoT Build 0:6ae2f7bca550 8514 }
Azure.IoT Build 0:6ae2f7bca550 8515 else
Azure.IoT Build 0:6ae2f7bca550 8516 {
Azure.IoT Build 0:6ae2f7bca550 8517 SASL_RESPONSE_INSTANCE* sasl_response_instance = (SASL_RESPONSE_INSTANCE*)sasl_response;
Azure.IoT Build 0:6ae2f7bca550 8518 AMQP_VALUE item_value = amqpvalue_get_composite_item_in_place(sasl_response_instance->composite_value, 0);
Azure.IoT Build 0:6ae2f7bca550 8519 if (item_value == NULL)
Azure.IoT Build 0:6ae2f7bca550 8520 {
Azure.IoT Build 0:6ae2f7bca550 8521 result = __LINE__;
Azure.IoT Build 0:6ae2f7bca550 8522 }
Azure.IoT Build 0:6ae2f7bca550 8523 else
Azure.IoT Build 0:6ae2f7bca550 8524 {
Azure.IoT Build 0:6ae2f7bca550 8525 if (amqpvalue_get_binary(item_value, response_value) != 0)
Azure.IoT Build 0:6ae2f7bca550 8526 {
Azure.IoT Build 0:6ae2f7bca550 8527 result = __LINE__;
Azure.IoT Build 0:6ae2f7bca550 8528 }
Azure.IoT Build 0:6ae2f7bca550 8529 else
Azure.IoT Build 0:6ae2f7bca550 8530 {
Azure.IoT Build 0:6ae2f7bca550 8531 result = 0;
Azure.IoT Build 0:6ae2f7bca550 8532 }
Azure.IoT Build 0:6ae2f7bca550 8533 }
Azure.IoT Build 0:6ae2f7bca550 8534 }
Azure.IoT Build 0:6ae2f7bca550 8535
Azure.IoT Build 0:6ae2f7bca550 8536 return result;
Azure.IoT Build 0:6ae2f7bca550 8537 }
Azure.IoT Build 0:6ae2f7bca550 8538
Azure.IoT Build 0:6ae2f7bca550 8539 int sasl_response_set_response(SASL_RESPONSE_HANDLE sasl_response, amqp_binary response_value)
Azure.IoT Build 0:6ae2f7bca550 8540 {
Azure.IoT Build 0:6ae2f7bca550 8541 int result;
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 result = __LINE__;
Azure.IoT Build 0:6ae2f7bca550 8546 }
Azure.IoT Build 0:6ae2f7bca550 8547 else
Azure.IoT Build 0:6ae2f7bca550 8548 {
Azure.IoT Build 0:6ae2f7bca550 8549 SASL_RESPONSE_INSTANCE* sasl_response_instance = (SASL_RESPONSE_INSTANCE*)sasl_response;
Azure.IoT Build 0:6ae2f7bca550 8550 AMQP_VALUE response_amqp_value = amqpvalue_create_binary(response_value);
Azure.IoT Build 0:6ae2f7bca550 8551 if (response_amqp_value == NULL)
Azure.IoT Build 0:6ae2f7bca550 8552 {
Azure.IoT Build 0:6ae2f7bca550 8553 result = __LINE__;
Azure.IoT Build 0:6ae2f7bca550 8554 }
Azure.IoT Build 0:6ae2f7bca550 8555 else
Azure.IoT Build 0:6ae2f7bca550 8556 {
Azure.IoT Build 0:6ae2f7bca550 8557 if (amqpvalue_set_composite_item(sasl_response_instance->composite_value, 0, response_amqp_value) != 0)
Azure.IoT Build 0:6ae2f7bca550 8558 {
Azure.IoT Build 0:6ae2f7bca550 8559 result = __LINE__;
Azure.IoT Build 0:6ae2f7bca550 8560 }
Azure.IoT Build 0:6ae2f7bca550 8561 else
Azure.IoT Build 0:6ae2f7bca550 8562 {
Azure.IoT Build 0:6ae2f7bca550 8563 result = 0;
Azure.IoT Build 0:6ae2f7bca550 8564 }
Azure.IoT Build 0:6ae2f7bca550 8565
Azure.IoT Build 0:6ae2f7bca550 8566 amqpvalue_destroy(response_amqp_value);
Azure.IoT Build 0:6ae2f7bca550 8567 }
Azure.IoT Build 0:6ae2f7bca550 8568 }
Azure.IoT Build 0:6ae2f7bca550 8569
Azure.IoT Build 0:6ae2f7bca550 8570 return result;
Azure.IoT Build 0:6ae2f7bca550 8571 }
Azure.IoT Build 0:6ae2f7bca550 8572
Azure.IoT Build 0:6ae2f7bca550 8573
Azure.IoT Build 0:6ae2f7bca550 8574 /* sasl-outcome */
Azure.IoT Build 0:6ae2f7bca550 8575
Azure.IoT Build 0:6ae2f7bca550 8576 typedef struct SASL_OUTCOME_INSTANCE_TAG
Azure.IoT Build 0:6ae2f7bca550 8577 {
Azure.IoT Build 0:6ae2f7bca550 8578 AMQP_VALUE composite_value;
Azure.IoT Build 0:6ae2f7bca550 8579 } SASL_OUTCOME_INSTANCE;
Azure.IoT Build 0:6ae2f7bca550 8580
Azure.IoT Build 0:6ae2f7bca550 8581 static SASL_OUTCOME_HANDLE sasl_outcome_create_internal(void)
Azure.IoT Build 0:6ae2f7bca550 8582 {
Azure.IoT Build 0:6ae2f7bca550 8583 SASL_OUTCOME_INSTANCE* sasl_outcome_instance = (SASL_OUTCOME_INSTANCE*)amqpalloc_malloc(sizeof(SASL_OUTCOME_INSTANCE));
Azure.IoT Build 0:6ae2f7bca550 8584 if (sasl_outcome_instance != NULL)
Azure.IoT Build 0:6ae2f7bca550 8585 {
Azure.IoT Build 0:6ae2f7bca550 8586 sasl_outcome_instance->composite_value = NULL;
Azure.IoT Build 0:6ae2f7bca550 8587 }
Azure.IoT Build 0:6ae2f7bca550 8588
Azure.IoT Build 0:6ae2f7bca550 8589 return sasl_outcome_instance;
Azure.IoT Build 0:6ae2f7bca550 8590 }
Azure.IoT Build 0:6ae2f7bca550 8591
Azure.IoT Build 0:6ae2f7bca550 8592 SASL_OUTCOME_HANDLE sasl_outcome_create(sasl_code code_value)
Azure.IoT Build 0:6ae2f7bca550 8593 {
Azure.IoT Build 0:6ae2f7bca550 8594 SASL_OUTCOME_INSTANCE* sasl_outcome_instance = (SASL_OUTCOME_INSTANCE*)amqpalloc_malloc(sizeof(SASL_OUTCOME_INSTANCE));
Azure.IoT Build 0:6ae2f7bca550 8595 if (sasl_outcome_instance != NULL)
Azure.IoT Build 0:6ae2f7bca550 8596 {
Azure.IoT Build 0:6ae2f7bca550 8597 sasl_outcome_instance->composite_value = amqpvalue_create_composite_with_ulong_descriptor(68);
Azure.IoT Build 0:6ae2f7bca550 8598 if (sasl_outcome_instance->composite_value == NULL)
Azure.IoT Build 0:6ae2f7bca550 8599 {
Azure.IoT Build 0:6ae2f7bca550 8600 amqpalloc_free(sasl_outcome_instance);
Azure.IoT Build 0:6ae2f7bca550 8601 sasl_outcome_instance = NULL;
Azure.IoT Build 0:6ae2f7bca550 8602 }
Azure.IoT Build 0:6ae2f7bca550 8603 else
Azure.IoT Build 0:6ae2f7bca550 8604 {
Azure.IoT Build 0:6ae2f7bca550 8605 AMQP_VALUE code_amqp_value;
Azure.IoT Build 0:6ae2f7bca550 8606 int result = 0;
Azure.IoT Build 0:6ae2f7bca550 8607
Azure.IoT Build 0:6ae2f7bca550 8608 code_amqp_value = amqpvalue_create_sasl_code(code_value);
Azure.IoT Build 0:6ae2f7bca550 8609 if ((result == 0) && (amqpvalue_set_composite_item(sasl_outcome_instance->composite_value, 0, code_amqp_value) != 0))
Azure.IoT Build 0:6ae2f7bca550 8610 {
Azure.IoT Build 0:6ae2f7bca550 8611 result = __LINE__;
Azure.IoT Build 0:6ae2f7bca550 8612 }
Azure.IoT Build 0:6ae2f7bca550 8613
Azure.IoT Build 0:6ae2f7bca550 8614 amqpvalue_destroy(code_amqp_value);
Azure.IoT Build 0:6ae2f7bca550 8615 }
Azure.IoT Build 0:6ae2f7bca550 8616 }
Azure.IoT Build 0:6ae2f7bca550 8617
Azure.IoT Build 0:6ae2f7bca550 8618 return sasl_outcome_instance;
Azure.IoT Build 0:6ae2f7bca550 8619 }
Azure.IoT Build 0:6ae2f7bca550 8620
Azure.IoT Build 0:6ae2f7bca550 8621 SASL_OUTCOME_HANDLE sasl_outcome_clone(SASL_OUTCOME_HANDLE value)
Azure.IoT Build 0:6ae2f7bca550 8622 {
Azure.IoT Build 0:6ae2f7bca550 8623 SASL_OUTCOME_INSTANCE* sasl_outcome_instance = (SASL_OUTCOME_INSTANCE*)amqpalloc_malloc(sizeof(SASL_OUTCOME_INSTANCE));
Azure.IoT Build 0:6ae2f7bca550 8624 if (sasl_outcome_instance != NULL)
Azure.IoT Build 0:6ae2f7bca550 8625 {
Azure.IoT Build 0:6ae2f7bca550 8626 sasl_outcome_instance->composite_value = amqpvalue_clone(((SASL_OUTCOME_INSTANCE*)value)->composite_value);
Azure.IoT Build 0:6ae2f7bca550 8627 if (sasl_outcome_instance->composite_value == NULL)
Azure.IoT Build 0:6ae2f7bca550 8628 {
Azure.IoT Build 0:6ae2f7bca550 8629 amqpalloc_free(sasl_outcome_instance);
Azure.IoT Build 0:6ae2f7bca550 8630 sasl_outcome_instance = NULL;
Azure.IoT Build 0:6ae2f7bca550 8631 }
Azure.IoT Build 0:6ae2f7bca550 8632 }
Azure.IoT Build 0:6ae2f7bca550 8633
Azure.IoT Build 0:6ae2f7bca550 8634 return sasl_outcome_instance;
Azure.IoT Build 0:6ae2f7bca550 8635 }
Azure.IoT Build 0:6ae2f7bca550 8636
Azure.IoT Build 0:6ae2f7bca550 8637 void sasl_outcome_destroy(SASL_OUTCOME_HANDLE sasl_outcome)
Azure.IoT Build 0:6ae2f7bca550 8638 {
Azure.IoT Build 0:6ae2f7bca550 8639 if (sasl_outcome != NULL)
Azure.IoT Build 0:6ae2f7bca550 8640 {
Azure.IoT Build 0:6ae2f7bca550 8641 SASL_OUTCOME_INSTANCE* sasl_outcome_instance = (SASL_OUTCOME_INSTANCE*)sasl_outcome;
Azure.IoT Build 0:6ae2f7bca550 8642 amqpvalue_destroy(sasl_outcome_instance->composite_value);
Azure.IoT Build 0:6ae2f7bca550 8643 amqpalloc_free(sasl_outcome_instance);
Azure.IoT Build 0:6ae2f7bca550 8644 }
Azure.IoT Build 0:6ae2f7bca550 8645 }
Azure.IoT Build 0:6ae2f7bca550 8646
Azure.IoT Build 0:6ae2f7bca550 8647 AMQP_VALUE amqpvalue_create_sasl_outcome(SASL_OUTCOME_HANDLE sasl_outcome)
Azure.IoT Build 0:6ae2f7bca550 8648 {
Azure.IoT Build 0:6ae2f7bca550 8649 AMQP_VALUE result;
Azure.IoT Build 0:6ae2f7bca550 8650
Azure.IoT Build 0:6ae2f7bca550 8651 if (sasl_outcome == NULL)
Azure.IoT Build 0:6ae2f7bca550 8652 {
Azure.IoT Build 0:6ae2f7bca550 8653 result = NULL;
Azure.IoT Build 0:6ae2f7bca550 8654 }
Azure.IoT Build 0:6ae2f7bca550 8655 else
Azure.IoT Build 0:6ae2f7bca550 8656 {
Azure.IoT Build 0:6ae2f7bca550 8657 SASL_OUTCOME_INSTANCE* sasl_outcome_instance = (SASL_OUTCOME_INSTANCE*)sasl_outcome;
Azure.IoT Build 0:6ae2f7bca550 8658 result = amqpvalue_clone(sasl_outcome_instance->composite_value);
Azure.IoT Build 0:6ae2f7bca550 8659 }
Azure.IoT Build 0:6ae2f7bca550 8660
Azure.IoT Build 0:6ae2f7bca550 8661 return result;
Azure.IoT Build 0:6ae2f7bca550 8662 }
Azure.IoT Build 0:6ae2f7bca550 8663
Azure.IoT Build 0:6ae2f7bca550 8664 bool is_sasl_outcome_type_by_descriptor(AMQP_VALUE descriptor)
Azure.IoT Build 0:6ae2f7bca550 8665 {
Azure.IoT Build 0:6ae2f7bca550 8666 bool result;
Azure.IoT Build 0:6ae2f7bca550 8667
Azure.IoT Build 0:6ae2f7bca550 8668 uint64_t descriptor_ulong;
Azure.IoT Build 0:6ae2f7bca550 8669 if ((amqpvalue_get_ulong(descriptor, &descriptor_ulong) == 0) &&
Azure.IoT Build 0:6ae2f7bca550 8670 (descriptor_ulong == 68))
Azure.IoT Build 0:6ae2f7bca550 8671 {
Azure.IoT Build 0:6ae2f7bca550 8672 result = true;
Azure.IoT Build 0:6ae2f7bca550 8673 }
Azure.IoT Build 0:6ae2f7bca550 8674 else
Azure.IoT Build 0:6ae2f7bca550 8675 {
Azure.IoT Build 0:6ae2f7bca550 8676 result = false;
Azure.IoT Build 0:6ae2f7bca550 8677 }
Azure.IoT Build 0:6ae2f7bca550 8678
Azure.IoT Build 0:6ae2f7bca550 8679 return result;
Azure.IoT Build 0:6ae2f7bca550 8680 }
Azure.IoT Build 0:6ae2f7bca550 8681
Azure.IoT Build 0:6ae2f7bca550 8682
Azure.IoT Build 0:6ae2f7bca550 8683 int amqpvalue_get_sasl_outcome(AMQP_VALUE value, SASL_OUTCOME_HANDLE* sasl_outcome_handle)
Azure.IoT Build 0:6ae2f7bca550 8684 {
Azure.IoT Build 0:6ae2f7bca550 8685 int result;
Azure.IoT Build 0:6ae2f7bca550 8686 SASL_OUTCOME_INSTANCE* sasl_outcome_instance = (SASL_OUTCOME_INSTANCE*)sasl_outcome_create_internal();
Azure.IoT Build 0:6ae2f7bca550 8687 *sasl_outcome_handle = sasl_outcome_instance;
Azure.IoT Build 0:6ae2f7bca550 8688 if (*sasl_outcome_handle == NULL)
Azure.IoT Build 0:6ae2f7bca550 8689 {
Azure.IoT Build 0:6ae2f7bca550 8690 result = __LINE__;
Azure.IoT Build 0:6ae2f7bca550 8691 }
Azure.IoT Build 0:6ae2f7bca550 8692 else
Azure.IoT Build 0:6ae2f7bca550 8693 {
Azure.IoT Build 0:6ae2f7bca550 8694 AMQP_VALUE list_value = amqpvalue_get_inplace_described_value(value);
Azure.IoT Build 0:6ae2f7bca550 8695 if (list_value == NULL)
Azure.IoT Build 0:6ae2f7bca550 8696 {
Azure.IoT Build 0:6ae2f7bca550 8697 sasl_outcome_destroy(*sasl_outcome_handle);
Azure.IoT Build 0:6ae2f7bca550 8698 result = __LINE__;
Azure.IoT Build 0:6ae2f7bca550 8699 }
Azure.IoT Build 0:6ae2f7bca550 8700 else
Azure.IoT Build 0:6ae2f7bca550 8701 {
Azure.IoT Build 0:6ae2f7bca550 8702 do
Azure.IoT Build 0:6ae2f7bca550 8703 {
Azure.IoT Build 0:6ae2f7bca550 8704 AMQP_VALUE item_value;
Azure.IoT Build 0:6ae2f7bca550 8705 /* code */
Azure.IoT Build 0:6ae2f7bca550 8706 item_value = amqpvalue_get_list_item(list_value, 0);
Azure.IoT Build 0:6ae2f7bca550 8707 if (item_value == NULL)
Azure.IoT Build 0:6ae2f7bca550 8708 {
Azure.IoT Build 0:6ae2f7bca550 8709 {
Azure.IoT Build 0:6ae2f7bca550 8710 sasl_outcome_destroy(*sasl_outcome_handle);
Azure.IoT Build 0:6ae2f7bca550 8711 result = __LINE__;
Azure.IoT Build 0:6ae2f7bca550 8712 break;
Azure.IoT Build 0:6ae2f7bca550 8713 }
Azure.IoT Build 0:6ae2f7bca550 8714 }
Azure.IoT Build 0:6ae2f7bca550 8715 else
Azure.IoT Build 0:6ae2f7bca550 8716 {
Azure.IoT Build 0:6ae2f7bca550 8717 sasl_code code;
Azure.IoT Build 0:6ae2f7bca550 8718 if (amqpvalue_get_sasl_code(item_value, &code) != 0)
Azure.IoT Build 0:6ae2f7bca550 8719 {
Azure.IoT Build 0:6ae2f7bca550 8720 sasl_outcome_destroy(*sasl_outcome_handle);
Azure.IoT Build 0:6ae2f7bca550 8721 result = __LINE__;
Azure.IoT Build 0:6ae2f7bca550 8722 break;
Azure.IoT Build 0:6ae2f7bca550 8723 }
Azure.IoT Build 0:6ae2f7bca550 8724
Azure.IoT Build 0:6ae2f7bca550 8725 amqpvalue_destroy(item_value);
Azure.IoT Build 0:6ae2f7bca550 8726 }
Azure.IoT Build 0:6ae2f7bca550 8727 /* additional-data */
Azure.IoT Build 0:6ae2f7bca550 8728 item_value = amqpvalue_get_list_item(list_value, 1);
Azure.IoT Build 0:6ae2f7bca550 8729 if (item_value == NULL)
Azure.IoT Build 0:6ae2f7bca550 8730 {
Azure.IoT Build 0:6ae2f7bca550 8731 /* do nothing */
Azure.IoT Build 0:6ae2f7bca550 8732 }
Azure.IoT Build 0:6ae2f7bca550 8733 else
Azure.IoT Build 0:6ae2f7bca550 8734 {
Azure.IoT Build 0:6ae2f7bca550 8735 amqp_binary additional_data;
Azure.IoT Build 0:6ae2f7bca550 8736 if (amqpvalue_get_binary(item_value, &additional_data) != 0)
Azure.IoT Build 0:6ae2f7bca550 8737 {
Azure.IoT Build 0:6ae2f7bca550 8738 if (amqpvalue_get_type(item_value) != AMQP_TYPE_NULL)
Azure.IoT Build 0:6ae2f7bca550 8739 {
Azure.IoT Build 0:6ae2f7bca550 8740 sasl_outcome_destroy(*sasl_outcome_handle);
Azure.IoT Build 0:6ae2f7bca550 8741 result = __LINE__;
Azure.IoT Build 0:6ae2f7bca550 8742 break;
Azure.IoT Build 0:6ae2f7bca550 8743 }
Azure.IoT Build 0:6ae2f7bca550 8744 }
Azure.IoT Build 0:6ae2f7bca550 8745
Azure.IoT Build 0:6ae2f7bca550 8746 amqpvalue_destroy(item_value);
Azure.IoT Build 0:6ae2f7bca550 8747 }
Azure.IoT Build 0:6ae2f7bca550 8748
Azure.IoT Build 0:6ae2f7bca550 8749 sasl_outcome_instance->composite_value = amqpvalue_clone(value);
Azure.IoT Build 0:6ae2f7bca550 8750
Azure.IoT Build 0:6ae2f7bca550 8751 result = 0;
Azure.IoT Build 0:6ae2f7bca550 8752 } while (0);
Azure.IoT Build 0:6ae2f7bca550 8753 }
Azure.IoT Build 0:6ae2f7bca550 8754 }
Azure.IoT Build 0:6ae2f7bca550 8755
Azure.IoT Build 0:6ae2f7bca550 8756 return result;
Azure.IoT Build 0:6ae2f7bca550 8757 }
Azure.IoT Build 0:6ae2f7bca550 8758
Azure.IoT Build 0:6ae2f7bca550 8759 int sasl_outcome_get_code(SASL_OUTCOME_HANDLE sasl_outcome, sasl_code* code_value)
Azure.IoT Build 0:6ae2f7bca550 8760 {
Azure.IoT Build 0:6ae2f7bca550 8761 int result;
Azure.IoT Build 0:6ae2f7bca550 8762
Azure.IoT Build 0:6ae2f7bca550 8763 if (sasl_outcome == NULL)
Azure.IoT Build 0:6ae2f7bca550 8764 {
Azure.IoT Build 0:6ae2f7bca550 8765 result = __LINE__;
Azure.IoT Build 0:6ae2f7bca550 8766 }
Azure.IoT Build 0:6ae2f7bca550 8767 else
Azure.IoT Build 0:6ae2f7bca550 8768 {
Azure.IoT Build 0:6ae2f7bca550 8769 SASL_OUTCOME_INSTANCE* sasl_outcome_instance = (SASL_OUTCOME_INSTANCE*)sasl_outcome;
Azure.IoT Build 0:6ae2f7bca550 8770 AMQP_VALUE item_value = amqpvalue_get_composite_item_in_place(sasl_outcome_instance->composite_value, 0);
Azure.IoT Build 0:6ae2f7bca550 8771 if (item_value == NULL)
Azure.IoT Build 0:6ae2f7bca550 8772 {
Azure.IoT Build 0:6ae2f7bca550 8773 result = __LINE__;
Azure.IoT Build 0:6ae2f7bca550 8774 }
Azure.IoT Build 0:6ae2f7bca550 8775 else
Azure.IoT Build 0:6ae2f7bca550 8776 {
Azure.IoT Build 0:6ae2f7bca550 8777 if (amqpvalue_get_sasl_code(item_value, code_value) != 0)
Azure.IoT Build 0:6ae2f7bca550 8778 {
Azure.IoT Build 0:6ae2f7bca550 8779 result = __LINE__;
Azure.IoT Build 0:6ae2f7bca550 8780 }
Azure.IoT Build 0:6ae2f7bca550 8781 else
Azure.IoT Build 0:6ae2f7bca550 8782 {
Azure.IoT Build 0:6ae2f7bca550 8783 result = 0;
Azure.IoT Build 0:6ae2f7bca550 8784 }
Azure.IoT Build 0:6ae2f7bca550 8785 }
Azure.IoT Build 0:6ae2f7bca550 8786 }
Azure.IoT Build 0:6ae2f7bca550 8787
Azure.IoT Build 0:6ae2f7bca550 8788 return result;
Azure.IoT Build 0:6ae2f7bca550 8789 }
Azure.IoT Build 0:6ae2f7bca550 8790
Azure.IoT Build 0:6ae2f7bca550 8791 int sasl_outcome_set_code(SASL_OUTCOME_HANDLE sasl_outcome, sasl_code code_value)
Azure.IoT Build 0:6ae2f7bca550 8792 {
Azure.IoT Build 0:6ae2f7bca550 8793 int result;
Azure.IoT Build 0:6ae2f7bca550 8794
Azure.IoT Build 0:6ae2f7bca550 8795 if (sasl_outcome == NULL)
Azure.IoT Build 0:6ae2f7bca550 8796 {
Azure.IoT Build 0:6ae2f7bca550 8797 result = __LINE__;
Azure.IoT Build 0:6ae2f7bca550 8798 }
Azure.IoT Build 0:6ae2f7bca550 8799 else
Azure.IoT Build 0:6ae2f7bca550 8800 {
Azure.IoT Build 0:6ae2f7bca550 8801 SASL_OUTCOME_INSTANCE* sasl_outcome_instance = (SASL_OUTCOME_INSTANCE*)sasl_outcome;
Azure.IoT Build 0:6ae2f7bca550 8802 AMQP_VALUE code_amqp_value = amqpvalue_create_sasl_code(code_value);
Azure.IoT Build 0:6ae2f7bca550 8803 if (code_amqp_value == NULL)
Azure.IoT Build 0:6ae2f7bca550 8804 {
Azure.IoT Build 0:6ae2f7bca550 8805 result = __LINE__;
Azure.IoT Build 0:6ae2f7bca550 8806 }
Azure.IoT Build 0:6ae2f7bca550 8807 else
Azure.IoT Build 0:6ae2f7bca550 8808 {
Azure.IoT Build 0:6ae2f7bca550 8809 if (amqpvalue_set_composite_item(sasl_outcome_instance->composite_value, 0, code_amqp_value) != 0)
Azure.IoT Build 0:6ae2f7bca550 8810 {
Azure.IoT Build 0:6ae2f7bca550 8811 result = __LINE__;
Azure.IoT Build 0:6ae2f7bca550 8812 }
Azure.IoT Build 0:6ae2f7bca550 8813 else
Azure.IoT Build 0:6ae2f7bca550 8814 {
Azure.IoT Build 0:6ae2f7bca550 8815 result = 0;
Azure.IoT Build 0:6ae2f7bca550 8816 }
Azure.IoT Build 0:6ae2f7bca550 8817
Azure.IoT Build 0:6ae2f7bca550 8818 amqpvalue_destroy(code_amqp_value);
Azure.IoT Build 0:6ae2f7bca550 8819 }
Azure.IoT Build 0:6ae2f7bca550 8820 }
Azure.IoT Build 0:6ae2f7bca550 8821
Azure.IoT Build 0:6ae2f7bca550 8822 return result;
Azure.IoT Build 0:6ae2f7bca550 8823 }
Azure.IoT Build 0:6ae2f7bca550 8824
Azure.IoT Build 0:6ae2f7bca550 8825 int sasl_outcome_get_additional_data(SASL_OUTCOME_HANDLE sasl_outcome, amqp_binary* additional_data_value)
Azure.IoT Build 0:6ae2f7bca550 8826 {
Azure.IoT Build 0:6ae2f7bca550 8827 int result;
Azure.IoT Build 0:6ae2f7bca550 8828
Azure.IoT Build 0:6ae2f7bca550 8829 if (sasl_outcome == NULL)
Azure.IoT Build 0:6ae2f7bca550 8830 {
Azure.IoT Build 0:6ae2f7bca550 8831 result = __LINE__;
Azure.IoT Build 0:6ae2f7bca550 8832 }
Azure.IoT Build 0:6ae2f7bca550 8833 else
Azure.IoT Build 0:6ae2f7bca550 8834 {
Azure.IoT Build 0:6ae2f7bca550 8835 SASL_OUTCOME_INSTANCE* sasl_outcome_instance = (SASL_OUTCOME_INSTANCE*)sasl_outcome;
Azure.IoT Build 0:6ae2f7bca550 8836 AMQP_VALUE item_value = amqpvalue_get_composite_item_in_place(sasl_outcome_instance->composite_value, 1);
Azure.IoT Build 0:6ae2f7bca550 8837 if (item_value == NULL)
Azure.IoT Build 0:6ae2f7bca550 8838 {
Azure.IoT Build 0:6ae2f7bca550 8839 result = __LINE__;
Azure.IoT Build 0:6ae2f7bca550 8840 }
Azure.IoT Build 0:6ae2f7bca550 8841 else
Azure.IoT Build 0:6ae2f7bca550 8842 {
Azure.IoT Build 0:6ae2f7bca550 8843 if (amqpvalue_get_binary(item_value, additional_data_value) != 0)
Azure.IoT Build 0:6ae2f7bca550 8844 {
Azure.IoT Build 0:6ae2f7bca550 8845 result = __LINE__;
Azure.IoT Build 0:6ae2f7bca550 8846 }
Azure.IoT Build 0:6ae2f7bca550 8847 else
Azure.IoT Build 0:6ae2f7bca550 8848 {
Azure.IoT Build 0:6ae2f7bca550 8849 result = 0;
Azure.IoT Build 0:6ae2f7bca550 8850 }
Azure.IoT Build 0:6ae2f7bca550 8851 }
Azure.IoT Build 0:6ae2f7bca550 8852 }
Azure.IoT Build 0:6ae2f7bca550 8853
Azure.IoT Build 0:6ae2f7bca550 8854 return result;
Azure.IoT Build 0:6ae2f7bca550 8855 }
Azure.IoT Build 0:6ae2f7bca550 8856
Azure.IoT Build 0:6ae2f7bca550 8857 int sasl_outcome_set_additional_data(SASL_OUTCOME_HANDLE sasl_outcome, amqp_binary additional_data_value)
Azure.IoT Build 0:6ae2f7bca550 8858 {
Azure.IoT Build 0:6ae2f7bca550 8859 int result;
Azure.IoT Build 0:6ae2f7bca550 8860
Azure.IoT Build 0:6ae2f7bca550 8861 if (sasl_outcome == NULL)
Azure.IoT Build 0:6ae2f7bca550 8862 {
Azure.IoT Build 0:6ae2f7bca550 8863 result = __LINE__;
Azure.IoT Build 0:6ae2f7bca550 8864 }
Azure.IoT Build 0:6ae2f7bca550 8865 else
Azure.IoT Build 0:6ae2f7bca550 8866 {
Azure.IoT Build 0:6ae2f7bca550 8867 SASL_OUTCOME_INSTANCE* sasl_outcome_instance = (SASL_OUTCOME_INSTANCE*)sasl_outcome;
Azure.IoT Build 0:6ae2f7bca550 8868 AMQP_VALUE additional_data_amqp_value = amqpvalue_create_binary(additional_data_value);
Azure.IoT Build 0:6ae2f7bca550 8869 if (additional_data_amqp_value == NULL)
Azure.IoT Build 0:6ae2f7bca550 8870 {
Azure.IoT Build 0:6ae2f7bca550 8871 result = __LINE__;
Azure.IoT Build 0:6ae2f7bca550 8872 }
Azure.IoT Build 0:6ae2f7bca550 8873 else
Azure.IoT Build 0:6ae2f7bca550 8874 {
Azure.IoT Build 0:6ae2f7bca550 8875 if (amqpvalue_set_composite_item(sasl_outcome_instance->composite_value, 1, additional_data_amqp_value) != 0)
Azure.IoT Build 0:6ae2f7bca550 8876 {
Azure.IoT Build 0:6ae2f7bca550 8877 result = __LINE__;
Azure.IoT Build 0:6ae2f7bca550 8878 }
Azure.IoT Build 0:6ae2f7bca550 8879 else
Azure.IoT Build 0:6ae2f7bca550 8880 {
Azure.IoT Build 0:6ae2f7bca550 8881 result = 0;
Azure.IoT Build 0:6ae2f7bca550 8882 }
Azure.IoT Build 0:6ae2f7bca550 8883
Azure.IoT Build 0:6ae2f7bca550 8884 amqpvalue_destroy(additional_data_amqp_value);
Azure.IoT Build 0:6ae2f7bca550 8885 }
Azure.IoT Build 0:6ae2f7bca550 8886 }
Azure.IoT Build 0:6ae2f7bca550 8887
Azure.IoT Build 0:6ae2f7bca550 8888 return result;
Azure.IoT Build 0:6ae2f7bca550 8889 }
Azure.IoT Build 0:6ae2f7bca550 8890
Azure.IoT Build 0:6ae2f7bca550 8891
Azure.IoT Build 0:6ae2f7bca550 8892 /* terminus-durability */
Azure.IoT Build 0:6ae2f7bca550 8893
Azure.IoT Build 0:6ae2f7bca550 8894 AMQP_VALUE amqpvalue_create_terminus_durability(terminus_durability value)
Azure.IoT Build 0:6ae2f7bca550 8895 {
Azure.IoT Build 0:6ae2f7bca550 8896 return amqpvalue_create_uint(value);
Azure.IoT Build 0:6ae2f7bca550 8897 }
Azure.IoT Build 0:6ae2f7bca550 8898
Azure.IoT Build 0:6ae2f7bca550 8899 /* terminus-expiry-policy */
Azure.IoT Build 0:6ae2f7bca550 8900
Azure.IoT Build 0:6ae2f7bca550 8901 AMQP_VALUE amqpvalue_create_terminus_expiry_policy(terminus_expiry_policy value)
Azure.IoT Build 0:6ae2f7bca550 8902 {
Azure.IoT Build 0:6ae2f7bca550 8903 return amqpvalue_create_symbol(value);
Azure.IoT Build 0:6ae2f7bca550 8904 }
Azure.IoT Build 0:6ae2f7bca550 8905
Azure.IoT Build 0:6ae2f7bca550 8906 /* node-properties */
Azure.IoT Build 0:6ae2f7bca550 8907
Azure.IoT Build 0:6ae2f7bca550 8908 AMQP_VALUE amqpvalue_create_node_properties(node_properties value)
Azure.IoT Build 0:6ae2f7bca550 8909 {
Azure.IoT Build 0:6ae2f7bca550 8910 return amqpvalue_create_fields(value);
Azure.IoT Build 0:6ae2f7bca550 8911 }
Azure.IoT Build 0:6ae2f7bca550 8912
Azure.IoT Build 0:6ae2f7bca550 8913 /* filter-set */
Azure.IoT Build 0:6ae2f7bca550 8914
Azure.IoT Build 0:6ae2f7bca550 8915 AMQP_VALUE amqpvalue_create_filter_set(AMQP_VALUE value)
Azure.IoT Build 0:6ae2f7bca550 8916 {
Azure.IoT Build 0:6ae2f7bca550 8917 return amqpvalue_clone(value);
Azure.IoT Build 0:6ae2f7bca550 8918 }
Azure.IoT Build 0:6ae2f7bca550 8919
Azure.IoT Build 0:6ae2f7bca550 8920 /* source */
Azure.IoT Build 0:6ae2f7bca550 8921
Azure.IoT Build 0:6ae2f7bca550 8922 typedef struct SOURCE_INSTANCE_TAG
Azure.IoT Build 0:6ae2f7bca550 8923 {
Azure.IoT Build 0:6ae2f7bca550 8924 AMQP_VALUE composite_value;
Azure.IoT Build 0:6ae2f7bca550 8925 } SOURCE_INSTANCE;
Azure.IoT Build 0:6ae2f7bca550 8926
Azure.IoT Build 0:6ae2f7bca550 8927 static SOURCE_HANDLE source_create_internal(void)
Azure.IoT Build 0:6ae2f7bca550 8928 {
Azure.IoT Build 0:6ae2f7bca550 8929 SOURCE_INSTANCE* source_instance = (SOURCE_INSTANCE*)amqpalloc_malloc(sizeof(SOURCE_INSTANCE));
Azure.IoT Build 0:6ae2f7bca550 8930 if (source_instance != NULL)
Azure.IoT Build 0:6ae2f7bca550 8931 {
Azure.IoT Build 0:6ae2f7bca550 8932 source_instance->composite_value = NULL;
Azure.IoT Build 0:6ae2f7bca550 8933 }
Azure.IoT Build 0:6ae2f7bca550 8934
Azure.IoT Build 0:6ae2f7bca550 8935 return source_instance;
Azure.IoT Build 0:6ae2f7bca550 8936 }
Azure.IoT Build 0:6ae2f7bca550 8937
Azure.IoT Build 0:6ae2f7bca550 8938 SOURCE_HANDLE source_create(void)
Azure.IoT Build 0:6ae2f7bca550 8939 {
Azure.IoT Build 0:6ae2f7bca550 8940 SOURCE_INSTANCE* source_instance = (SOURCE_INSTANCE*)amqpalloc_malloc(sizeof(SOURCE_INSTANCE));
Azure.IoT Build 0:6ae2f7bca550 8941 if (source_instance != NULL)
Azure.IoT Build 0:6ae2f7bca550 8942 {
Azure.IoT Build 0:6ae2f7bca550 8943 source_instance->composite_value = amqpvalue_create_composite_with_ulong_descriptor(40);
Azure.IoT Build 0:6ae2f7bca550 8944 if (source_instance->composite_value == NULL)
Azure.IoT Build 0:6ae2f7bca550 8945 {
Azure.IoT Build 0:6ae2f7bca550 8946 amqpalloc_free(source_instance);
Azure.IoT Build 0:6ae2f7bca550 8947 source_instance = NULL;
Azure.IoT Build 0:6ae2f7bca550 8948 }
Azure.IoT Build 0:6ae2f7bca550 8949 }
Azure.IoT Build 0:6ae2f7bca550 8950
Azure.IoT Build 0:6ae2f7bca550 8951 return source_instance;
Azure.IoT Build 0:6ae2f7bca550 8952 }
Azure.IoT Build 0:6ae2f7bca550 8953
Azure.IoT Build 0:6ae2f7bca550 8954 SOURCE_HANDLE source_clone(SOURCE_HANDLE value)
Azure.IoT Build 0:6ae2f7bca550 8955 {
Azure.IoT Build 0:6ae2f7bca550 8956 SOURCE_INSTANCE* source_instance = (SOURCE_INSTANCE*)amqpalloc_malloc(sizeof(SOURCE_INSTANCE));
Azure.IoT Build 0:6ae2f7bca550 8957 if (source_instance != NULL)
Azure.IoT Build 0:6ae2f7bca550 8958 {
Azure.IoT Build 0:6ae2f7bca550 8959 source_instance->composite_value = amqpvalue_clone(((SOURCE_INSTANCE*)value)->composite_value);
Azure.IoT Build 0:6ae2f7bca550 8960 if (source_instance->composite_value == NULL)
Azure.IoT Build 0:6ae2f7bca550 8961 {
Azure.IoT Build 0:6ae2f7bca550 8962 amqpalloc_free(source_instance);
Azure.IoT Build 0:6ae2f7bca550 8963 source_instance = NULL;
Azure.IoT Build 0:6ae2f7bca550 8964 }
Azure.IoT Build 0:6ae2f7bca550 8965 }
Azure.IoT Build 0:6ae2f7bca550 8966
Azure.IoT Build 0:6ae2f7bca550 8967 return source_instance;
Azure.IoT Build 0:6ae2f7bca550 8968 }
Azure.IoT Build 0:6ae2f7bca550 8969
Azure.IoT Build 0:6ae2f7bca550 8970 void source_destroy(SOURCE_HANDLE source)
Azure.IoT Build 0:6ae2f7bca550 8971 {
Azure.IoT Build 0:6ae2f7bca550 8972 if (source != NULL)
Azure.IoT Build 0:6ae2f7bca550 8973 {
Azure.IoT Build 0:6ae2f7bca550 8974 SOURCE_INSTANCE* source_instance = (SOURCE_INSTANCE*)source;
Azure.IoT Build 0:6ae2f7bca550 8975 amqpvalue_destroy(source_instance->composite_value);
Azure.IoT Build 0:6ae2f7bca550 8976 amqpalloc_free(source_instance);
Azure.IoT Build 0:6ae2f7bca550 8977 }
Azure.IoT Build 0:6ae2f7bca550 8978 }
Azure.IoT Build 0:6ae2f7bca550 8979
Azure.IoT Build 0:6ae2f7bca550 8980 AMQP_VALUE amqpvalue_create_source(SOURCE_HANDLE source)
Azure.IoT Build 0:6ae2f7bca550 8981 {
Azure.IoT Build 0:6ae2f7bca550 8982 AMQP_VALUE result;
Azure.IoT Build 0:6ae2f7bca550 8983
Azure.IoT Build 0:6ae2f7bca550 8984 if (source == NULL)
Azure.IoT Build 0:6ae2f7bca550 8985 {
Azure.IoT Build 0:6ae2f7bca550 8986 result = NULL;
Azure.IoT Build 0:6ae2f7bca550 8987 }
Azure.IoT Build 0:6ae2f7bca550 8988 else
Azure.IoT Build 0:6ae2f7bca550 8989 {
Azure.IoT Build 0:6ae2f7bca550 8990 SOURCE_INSTANCE* source_instance = (SOURCE_INSTANCE*)source;
Azure.IoT Build 0:6ae2f7bca550 8991 result = amqpvalue_clone(source_instance->composite_value);
Azure.IoT Build 0:6ae2f7bca550 8992 }
Azure.IoT Build 0:6ae2f7bca550 8993
Azure.IoT Build 0:6ae2f7bca550 8994 return result;
Azure.IoT Build 0:6ae2f7bca550 8995 }
Azure.IoT Build 0:6ae2f7bca550 8996
Azure.IoT Build 0:6ae2f7bca550 8997 bool is_source_type_by_descriptor(AMQP_VALUE descriptor)
Azure.IoT Build 0:6ae2f7bca550 8998 {
Azure.IoT Build 0:6ae2f7bca550 8999 bool result;
Azure.IoT Build 0:6ae2f7bca550 9000
Azure.IoT Build 0:6ae2f7bca550 9001 uint64_t descriptor_ulong;
Azure.IoT Build 0:6ae2f7bca550 9002 if ((amqpvalue_get_ulong(descriptor, &descriptor_ulong) == 0) &&
Azure.IoT Build 0:6ae2f7bca550 9003 (descriptor_ulong == 40))
Azure.IoT Build 0:6ae2f7bca550 9004 {
Azure.IoT Build 0:6ae2f7bca550 9005 result = true;
Azure.IoT Build 0:6ae2f7bca550 9006 }
Azure.IoT Build 0:6ae2f7bca550 9007 else
Azure.IoT Build 0:6ae2f7bca550 9008 {
Azure.IoT Build 0:6ae2f7bca550 9009 result = false;
Azure.IoT Build 0:6ae2f7bca550 9010 }
Azure.IoT Build 0:6ae2f7bca550 9011
Azure.IoT Build 0:6ae2f7bca550 9012 return result;
Azure.IoT Build 0:6ae2f7bca550 9013 }
Azure.IoT Build 0:6ae2f7bca550 9014
Azure.IoT Build 0:6ae2f7bca550 9015
Azure.IoT Build 0:6ae2f7bca550 9016 int amqpvalue_get_source(AMQP_VALUE value, SOURCE_HANDLE* source_handle)
Azure.IoT Build 0:6ae2f7bca550 9017 {
Azure.IoT Build 0:6ae2f7bca550 9018 int result;
Azure.IoT Build 0:6ae2f7bca550 9019 SOURCE_INSTANCE* source_instance = (SOURCE_INSTANCE*)source_create_internal();
Azure.IoT Build 0:6ae2f7bca550 9020 *source_handle = source_instance;
Azure.IoT Build 0:6ae2f7bca550 9021 if (*source_handle == NULL)
Azure.IoT Build 0:6ae2f7bca550 9022 {
Azure.IoT Build 0:6ae2f7bca550 9023 result = __LINE__;
Azure.IoT Build 0:6ae2f7bca550 9024 }
Azure.IoT Build 0:6ae2f7bca550 9025 else
Azure.IoT Build 0:6ae2f7bca550 9026 {
Azure.IoT Build 0:6ae2f7bca550 9027 AMQP_VALUE list_value = amqpvalue_get_inplace_described_value(value);
Azure.IoT Build 0:6ae2f7bca550 9028 if (list_value == NULL)
Azure.IoT Build 0:6ae2f7bca550 9029 {
Azure.IoT Build 0:6ae2f7bca550 9030 source_destroy(*source_handle);
Azure.IoT Build 0:6ae2f7bca550 9031 result = __LINE__;
Azure.IoT Build 0:6ae2f7bca550 9032 }
Azure.IoT Build 0:6ae2f7bca550 9033 else
Azure.IoT Build 0:6ae2f7bca550 9034 {
Azure.IoT Build 0:6ae2f7bca550 9035 do
Azure.IoT Build 0:6ae2f7bca550 9036 {
Azure.IoT Build 0:6ae2f7bca550 9037 AMQP_VALUE item_value;
Azure.IoT Build 0:6ae2f7bca550 9038 /* address */
Azure.IoT Build 0:6ae2f7bca550 9039 item_value = amqpvalue_get_list_item(list_value, 0);
Azure.IoT Build 0:6ae2f7bca550 9040 if (item_value == NULL)
Azure.IoT Build 0:6ae2f7bca550 9041 {
Azure.IoT Build 0:6ae2f7bca550 9042 /* do nothing */
Azure.IoT Build 0:6ae2f7bca550 9043 }
Azure.IoT Build 0:6ae2f7bca550 9044 else
Azure.IoT Build 0:6ae2f7bca550 9045 {
Azure.IoT Build 0:6ae2f7bca550 9046 amqpvalue_destroy(item_value);
Azure.IoT Build 0:6ae2f7bca550 9047 }
Azure.IoT Build 0:6ae2f7bca550 9048 /* durable */
Azure.IoT Build 0:6ae2f7bca550 9049 item_value = amqpvalue_get_list_item(list_value, 1);
Azure.IoT Build 0:6ae2f7bca550 9050 if (item_value == NULL)
Azure.IoT Build 0:6ae2f7bca550 9051 {
Azure.IoT Build 0:6ae2f7bca550 9052 /* do nothing */
Azure.IoT Build 0:6ae2f7bca550 9053 }
Azure.IoT Build 0:6ae2f7bca550 9054 else
Azure.IoT Build 0:6ae2f7bca550 9055 {
Azure.IoT Build 0:6ae2f7bca550 9056 terminus_durability durable;
Azure.IoT Build 0:6ae2f7bca550 9057 if (amqpvalue_get_terminus_durability(item_value, &durable) != 0)
Azure.IoT Build 0:6ae2f7bca550 9058 {
Azure.IoT Build 0:6ae2f7bca550 9059 if (amqpvalue_get_type(item_value) != AMQP_TYPE_NULL)
Azure.IoT Build 0:6ae2f7bca550 9060 {
Azure.IoT Build 0:6ae2f7bca550 9061 source_destroy(*source_handle);
Azure.IoT Build 0:6ae2f7bca550 9062 result = __LINE__;
Azure.IoT Build 0:6ae2f7bca550 9063 break;
Azure.IoT Build 0:6ae2f7bca550 9064 }
Azure.IoT Build 0:6ae2f7bca550 9065 }
Azure.IoT Build 0:6ae2f7bca550 9066
Azure.IoT Build 0:6ae2f7bca550 9067 amqpvalue_destroy(item_value);
Azure.IoT Build 0:6ae2f7bca550 9068 }
Azure.IoT Build 0:6ae2f7bca550 9069 /* expiry-policy */
Azure.IoT Build 0:6ae2f7bca550 9070 item_value = amqpvalue_get_list_item(list_value, 2);
Azure.IoT Build 0:6ae2f7bca550 9071 if (item_value == NULL)
Azure.IoT Build 0:6ae2f7bca550 9072 {
Azure.IoT Build 0:6ae2f7bca550 9073 /* do nothing */
Azure.IoT Build 0:6ae2f7bca550 9074 }
Azure.IoT Build 0:6ae2f7bca550 9075 else
Azure.IoT Build 0:6ae2f7bca550 9076 {
Azure.IoT Build 0:6ae2f7bca550 9077 terminus_expiry_policy expiry_policy;
Azure.IoT Build 0:6ae2f7bca550 9078 if (amqpvalue_get_terminus_expiry_policy(item_value, &expiry_policy) != 0)
Azure.IoT Build 0:6ae2f7bca550 9079 {
Azure.IoT Build 0:6ae2f7bca550 9080 if (amqpvalue_get_type(item_value) != AMQP_TYPE_NULL)
Azure.IoT Build 0:6ae2f7bca550 9081 {
Azure.IoT Build 0:6ae2f7bca550 9082 source_destroy(*source_handle);
Azure.IoT Build 0:6ae2f7bca550 9083 result = __LINE__;
Azure.IoT Build 0:6ae2f7bca550 9084 break;
Azure.IoT Build 0:6ae2f7bca550 9085 }
Azure.IoT Build 0:6ae2f7bca550 9086 }
Azure.IoT Build 0:6ae2f7bca550 9087
Azure.IoT Build 0:6ae2f7bca550 9088 amqpvalue_destroy(item_value);
Azure.IoT Build 0:6ae2f7bca550 9089 }
Azure.IoT Build 0:6ae2f7bca550 9090 /* timeout */
Azure.IoT Build 0:6ae2f7bca550 9091 item_value = amqpvalue_get_list_item(list_value, 3);
Azure.IoT Build 0:6ae2f7bca550 9092 if (item_value == NULL)
Azure.IoT Build 0:6ae2f7bca550 9093 {
Azure.IoT Build 0:6ae2f7bca550 9094 /* do nothing */
Azure.IoT Build 0:6ae2f7bca550 9095 }
Azure.IoT Build 0:6ae2f7bca550 9096 else
Azure.IoT Build 0:6ae2f7bca550 9097 {
Azure.IoT Build 0:6ae2f7bca550 9098 seconds timeout;
Azure.IoT Build 0:6ae2f7bca550 9099 if (amqpvalue_get_seconds(item_value, &timeout) != 0)
Azure.IoT Build 0:6ae2f7bca550 9100 {
Azure.IoT Build 0:6ae2f7bca550 9101 if (amqpvalue_get_type(item_value) != AMQP_TYPE_NULL)
Azure.IoT Build 0:6ae2f7bca550 9102 {
Azure.IoT Build 0:6ae2f7bca550 9103 source_destroy(*source_handle);
Azure.IoT Build 0:6ae2f7bca550 9104 result = __LINE__;
Azure.IoT Build 0:6ae2f7bca550 9105 break;
Azure.IoT Build 0:6ae2f7bca550 9106 }
Azure.IoT Build 0:6ae2f7bca550 9107 }
Azure.IoT Build 0:6ae2f7bca550 9108
Azure.IoT Build 0:6ae2f7bca550 9109 amqpvalue_destroy(item_value);
Azure.IoT Build 0:6ae2f7bca550 9110 }
Azure.IoT Build 0:6ae2f7bca550 9111 /* dynamic */
Azure.IoT Build 0:6ae2f7bca550 9112 item_value = amqpvalue_get_list_item(list_value, 4);
Azure.IoT Build 0:6ae2f7bca550 9113 if (item_value == NULL)
Azure.IoT Build 0:6ae2f7bca550 9114 {
Azure.IoT Build 0:6ae2f7bca550 9115 /* do nothing */
Azure.IoT Build 0:6ae2f7bca550 9116 }
Azure.IoT Build 0:6ae2f7bca550 9117 else
Azure.IoT Build 0:6ae2f7bca550 9118 {
Azure.IoT Build 0:6ae2f7bca550 9119 bool dynamic;
Azure.IoT Build 0:6ae2f7bca550 9120 if (amqpvalue_get_boolean(item_value, &dynamic) != 0)
Azure.IoT Build 0:6ae2f7bca550 9121 {
Azure.IoT Build 0:6ae2f7bca550 9122 if (amqpvalue_get_type(item_value) != AMQP_TYPE_NULL)
Azure.IoT Build 0:6ae2f7bca550 9123 {
Azure.IoT Build 0:6ae2f7bca550 9124 source_destroy(*source_handle);
Azure.IoT Build 0:6ae2f7bca550 9125 result = __LINE__;
Azure.IoT Build 0:6ae2f7bca550 9126 break;
Azure.IoT Build 0:6ae2f7bca550 9127 }
Azure.IoT Build 0:6ae2f7bca550 9128 }
Azure.IoT Build 0:6ae2f7bca550 9129
Azure.IoT Build 0:6ae2f7bca550 9130 amqpvalue_destroy(item_value);
Azure.IoT Build 0:6ae2f7bca550 9131 }
Azure.IoT Build 0:6ae2f7bca550 9132 /* dynamic-node-properties */
Azure.IoT Build 0:6ae2f7bca550 9133 item_value = amqpvalue_get_list_item(list_value, 5);
Azure.IoT Build 0:6ae2f7bca550 9134 if (item_value == NULL)
Azure.IoT Build 0:6ae2f7bca550 9135 {
Azure.IoT Build 0:6ae2f7bca550 9136 /* do nothing */
Azure.IoT Build 0:6ae2f7bca550 9137 }
Azure.IoT Build 0:6ae2f7bca550 9138 else
Azure.IoT Build 0:6ae2f7bca550 9139 {
Azure.IoT Build 0:6ae2f7bca550 9140 node_properties dynamic_node_properties;
Azure.IoT Build 0:6ae2f7bca550 9141 if (amqpvalue_get_node_properties(item_value, &dynamic_node_properties) != 0)
Azure.IoT Build 0:6ae2f7bca550 9142 {
Azure.IoT Build 0:6ae2f7bca550 9143 if (amqpvalue_get_type(item_value) != AMQP_TYPE_NULL)
Azure.IoT Build 0:6ae2f7bca550 9144 {
Azure.IoT Build 0:6ae2f7bca550 9145 source_destroy(*source_handle);
Azure.IoT Build 0:6ae2f7bca550 9146 result = __LINE__;
Azure.IoT Build 0:6ae2f7bca550 9147 break;
Azure.IoT Build 0:6ae2f7bca550 9148 }
Azure.IoT Build 0:6ae2f7bca550 9149 }
Azure.IoT Build 0:6ae2f7bca550 9150
Azure.IoT Build 0:6ae2f7bca550 9151 amqpvalue_destroy(item_value);
Azure.IoT Build 0:6ae2f7bca550 9152 }
Azure.IoT Build 0:6ae2f7bca550 9153 /* distribution-mode */
Azure.IoT Build 0:6ae2f7bca550 9154 item_value = amqpvalue_get_list_item(list_value, 6);
Azure.IoT Build 0:6ae2f7bca550 9155 if (item_value == NULL)
Azure.IoT Build 0:6ae2f7bca550 9156 {
Azure.IoT Build 0:6ae2f7bca550 9157 /* do nothing */
Azure.IoT Build 0:6ae2f7bca550 9158 }
Azure.IoT Build 0:6ae2f7bca550 9159 else
Azure.IoT Build 0:6ae2f7bca550 9160 {
Azure.IoT Build 0:6ae2f7bca550 9161 const char* distribution_mode;
Azure.IoT Build 0:6ae2f7bca550 9162 if (amqpvalue_get_symbol(item_value, &distribution_mode) != 0)
Azure.IoT Build 0:6ae2f7bca550 9163 {
Azure.IoT Build 0:6ae2f7bca550 9164 if (amqpvalue_get_type(item_value) != AMQP_TYPE_NULL)
Azure.IoT Build 0:6ae2f7bca550 9165 {
Azure.IoT Build 0:6ae2f7bca550 9166 source_destroy(*source_handle);
Azure.IoT Build 0:6ae2f7bca550 9167 result = __LINE__;
Azure.IoT Build 0:6ae2f7bca550 9168 break;
Azure.IoT Build 0:6ae2f7bca550 9169 }
Azure.IoT Build 0:6ae2f7bca550 9170 }
Azure.IoT Build 0:6ae2f7bca550 9171
Azure.IoT Build 0:6ae2f7bca550 9172 amqpvalue_destroy(item_value);
Azure.IoT Build 0:6ae2f7bca550 9173 }
Azure.IoT Build 0:6ae2f7bca550 9174 /* filter */
Azure.IoT Build 0:6ae2f7bca550 9175 item_value = amqpvalue_get_list_item(list_value, 7);
Azure.IoT Build 0:6ae2f7bca550 9176 if (item_value == NULL)
Azure.IoT Build 0:6ae2f7bca550 9177 {
Azure.IoT Build 0:6ae2f7bca550 9178 /* do nothing */
Azure.IoT Build 0:6ae2f7bca550 9179 }
Azure.IoT Build 0:6ae2f7bca550 9180 else
Azure.IoT Build 0:6ae2f7bca550 9181 {
Azure.IoT Build 0:6ae2f7bca550 9182 filter_set filter;
Azure.IoT Build 0:6ae2f7bca550 9183 if (amqpvalue_get_filter_set(item_value, &filter) != 0)
Azure.IoT Build 0:6ae2f7bca550 9184 {
Azure.IoT Build 0:6ae2f7bca550 9185 if (amqpvalue_get_type(item_value) != AMQP_TYPE_NULL)
Azure.IoT Build 0:6ae2f7bca550 9186 {
Azure.IoT Build 0:6ae2f7bca550 9187 source_destroy(*source_handle);
Azure.IoT Build 0:6ae2f7bca550 9188 result = __LINE__;
Azure.IoT Build 0:6ae2f7bca550 9189 break;
Azure.IoT Build 0:6ae2f7bca550 9190 }
Azure.IoT Build 0:6ae2f7bca550 9191 }
Azure.IoT Build 0:6ae2f7bca550 9192
Azure.IoT Build 0:6ae2f7bca550 9193 amqpvalue_destroy(item_value);
Azure.IoT Build 0:6ae2f7bca550 9194 }
Azure.IoT Build 0:6ae2f7bca550 9195 /* default-outcome */
Azure.IoT Build 0:6ae2f7bca550 9196 item_value = amqpvalue_get_list_item(list_value, 8);
Azure.IoT Build 0:6ae2f7bca550 9197 if (item_value == NULL)
Azure.IoT Build 0:6ae2f7bca550 9198 {
Azure.IoT Build 0:6ae2f7bca550 9199 /* do nothing */
Azure.IoT Build 0:6ae2f7bca550 9200 }
Azure.IoT Build 0:6ae2f7bca550 9201 else
Azure.IoT Build 0:6ae2f7bca550 9202 {
Azure.IoT Build 0:6ae2f7bca550 9203 amqpvalue_destroy(item_value);
Azure.IoT Build 0:6ae2f7bca550 9204 }
Azure.IoT Build 0:6ae2f7bca550 9205 /* outcomes */
Azure.IoT Build 0:6ae2f7bca550 9206 item_value = amqpvalue_get_list_item(list_value, 9);
Azure.IoT Build 0:6ae2f7bca550 9207 if (item_value == NULL)
Azure.IoT Build 0:6ae2f7bca550 9208 {
Azure.IoT Build 0:6ae2f7bca550 9209 /* do nothing */
Azure.IoT Build 0:6ae2f7bca550 9210 }
Azure.IoT Build 0:6ae2f7bca550 9211 else
Azure.IoT Build 0:6ae2f7bca550 9212 {
Azure.IoT Build 0:6ae2f7bca550 9213 const char* outcomes;
Azure.IoT Build 0:6ae2f7bca550 9214 AMQP_VALUE outcomes_array;
Azure.IoT Build 0:6ae2f7bca550 9215 if ((amqpvalue_get_array(item_value, &outcomes_array) != 0) &&
Azure.IoT Build 0:6ae2f7bca550 9216 (amqpvalue_get_symbol(item_value, &outcomes) != 0))
Azure.IoT Build 0:6ae2f7bca550 9217 {
Azure.IoT Build 0:6ae2f7bca550 9218 if (amqpvalue_get_type(item_value) != AMQP_TYPE_NULL)
Azure.IoT Build 0:6ae2f7bca550 9219 {
Azure.IoT Build 0:6ae2f7bca550 9220 source_destroy(*source_handle);
Azure.IoT Build 0:6ae2f7bca550 9221 result = __LINE__;
Azure.IoT Build 0:6ae2f7bca550 9222 break;
Azure.IoT Build 0:6ae2f7bca550 9223 }
Azure.IoT Build 0:6ae2f7bca550 9224 }
Azure.IoT Build 0:6ae2f7bca550 9225
Azure.IoT Build 0:6ae2f7bca550 9226 amqpvalue_destroy(item_value);
Azure.IoT Build 0:6ae2f7bca550 9227 }
Azure.IoT Build 0:6ae2f7bca550 9228 /* capabilities */
Azure.IoT Build 0:6ae2f7bca550 9229 item_value = amqpvalue_get_list_item(list_value, 10);
Azure.IoT Build 0:6ae2f7bca550 9230 if (item_value == NULL)
Azure.IoT Build 0:6ae2f7bca550 9231 {
Azure.IoT Build 0:6ae2f7bca550 9232 /* do nothing */
Azure.IoT Build 0:6ae2f7bca550 9233 }
Azure.IoT Build 0:6ae2f7bca550 9234 else
Azure.IoT Build 0:6ae2f7bca550 9235 {
Azure.IoT Build 0:6ae2f7bca550 9236 const char* capabilities;
Azure.IoT Build 0:6ae2f7bca550 9237 AMQP_VALUE capabilities_array;
Azure.IoT Build 0:6ae2f7bca550 9238 if ((amqpvalue_get_array(item_value, &capabilities_array) != 0) &&
Azure.IoT Build 0:6ae2f7bca550 9239 (amqpvalue_get_symbol(item_value, &capabilities) != 0))
Azure.IoT Build 0:6ae2f7bca550 9240 {
Azure.IoT Build 0:6ae2f7bca550 9241 if (amqpvalue_get_type(item_value) != AMQP_TYPE_NULL)
Azure.IoT Build 0:6ae2f7bca550 9242 {
Azure.IoT Build 0:6ae2f7bca550 9243 source_destroy(*source_handle);
Azure.IoT Build 0:6ae2f7bca550 9244 result = __LINE__;
Azure.IoT Build 0:6ae2f7bca550 9245 break;
Azure.IoT Build 0:6ae2f7bca550 9246 }
Azure.IoT Build 0:6ae2f7bca550 9247 }
Azure.IoT Build 0:6ae2f7bca550 9248
Azure.IoT Build 0:6ae2f7bca550 9249 amqpvalue_destroy(item_value);
Azure.IoT Build 0:6ae2f7bca550 9250 }
Azure.IoT Build 0:6ae2f7bca550 9251
Azure.IoT Build 0:6ae2f7bca550 9252 source_instance->composite_value = amqpvalue_clone(value);
Azure.IoT Build 0:6ae2f7bca550 9253
Azure.IoT Build 0:6ae2f7bca550 9254 result = 0;
Azure.IoT Build 0:6ae2f7bca550 9255 } while (0);
Azure.IoT Build 0:6ae2f7bca550 9256 }
Azure.IoT Build 0:6ae2f7bca550 9257 }
Azure.IoT Build 0:6ae2f7bca550 9258
Azure.IoT Build 0:6ae2f7bca550 9259 return result;
Azure.IoT Build 0:6ae2f7bca550 9260 }
Azure.IoT Build 0:6ae2f7bca550 9261
Azure.IoT Build 0:6ae2f7bca550 9262 int source_get_address(SOURCE_HANDLE source, AMQP_VALUE* address_value)
Azure.IoT Build 0:6ae2f7bca550 9263 {
Azure.IoT Build 0:6ae2f7bca550 9264 int result;
Azure.IoT Build 0:6ae2f7bca550 9265
Azure.IoT Build 0:6ae2f7bca550 9266 if (source == NULL)
Azure.IoT Build 0:6ae2f7bca550 9267 {
Azure.IoT Build 0:6ae2f7bca550 9268 result = __LINE__;
Azure.IoT Build 0:6ae2f7bca550 9269 }
Azure.IoT Build 0:6ae2f7bca550 9270 else
Azure.IoT Build 0:6ae2f7bca550 9271 {
Azure.IoT Build 0:6ae2f7bca550 9272 SOURCE_INSTANCE* source_instance = (SOURCE_INSTANCE*)source;
Azure.IoT Build 0:6ae2f7bca550 9273 AMQP_VALUE item_value = amqpvalue_get_composite_item_in_place(source_instance->composite_value, 0);
Azure.IoT Build 0:6ae2f7bca550 9274 if (item_value == NULL)
Azure.IoT Build 0:6ae2f7bca550 9275 {
Azure.IoT Build 0:6ae2f7bca550 9276 result = __LINE__;
Azure.IoT Build 0:6ae2f7bca550 9277 }
Azure.IoT Build 0:6ae2f7bca550 9278 else
Azure.IoT Build 0:6ae2f7bca550 9279 {
Azure.IoT Build 0:6ae2f7bca550 9280 *address_value = item_value;
Azure.IoT Build 0:6ae2f7bca550 9281 result = 0;
Azure.IoT Build 0:6ae2f7bca550 9282 }
Azure.IoT Build 0:6ae2f7bca550 9283 }
Azure.IoT Build 0:6ae2f7bca550 9284
Azure.IoT Build 0:6ae2f7bca550 9285 return result;
Azure.IoT Build 0:6ae2f7bca550 9286 }
Azure.IoT Build 0:6ae2f7bca550 9287
Azure.IoT Build 0:6ae2f7bca550 9288 int source_set_address(SOURCE_HANDLE source, AMQP_VALUE address_value)
Azure.IoT Build 0:6ae2f7bca550 9289 {
Azure.IoT Build 0:6ae2f7bca550 9290 int result;
Azure.IoT Build 0:6ae2f7bca550 9291
Azure.IoT Build 0:6ae2f7bca550 9292 if (source == NULL)
Azure.IoT Build 0:6ae2f7bca550 9293 {
Azure.IoT Build 0:6ae2f7bca550 9294 result = __LINE__;
Azure.IoT Build 0:6ae2f7bca550 9295 }
Azure.IoT Build 0:6ae2f7bca550 9296 else
Azure.IoT Build 0:6ae2f7bca550 9297 {
Azure.IoT Build 0:6ae2f7bca550 9298 SOURCE_INSTANCE* source_instance = (SOURCE_INSTANCE*)source;
Azure.IoT Build 0:6ae2f7bca550 9299 AMQP_VALUE address_amqp_value = amqpvalue_clone(address_value);
Azure.IoT Build 0:6ae2f7bca550 9300 if (address_amqp_value == NULL)
Azure.IoT Build 0:6ae2f7bca550 9301 {
Azure.IoT Build 0:6ae2f7bca550 9302 result = __LINE__;
Azure.IoT Build 0:6ae2f7bca550 9303 }
Azure.IoT Build 0:6ae2f7bca550 9304 else
Azure.IoT Build 0:6ae2f7bca550 9305 {
Azure.IoT Build 0:6ae2f7bca550 9306 if (amqpvalue_set_composite_item(source_instance->composite_value, 0, address_amqp_value) != 0)
Azure.IoT Build 0:6ae2f7bca550 9307 {
Azure.IoT Build 0:6ae2f7bca550 9308 result = __LINE__;
Azure.IoT Build 0:6ae2f7bca550 9309 }
Azure.IoT Build 0:6ae2f7bca550 9310 else
Azure.IoT Build 0:6ae2f7bca550 9311 {
Azure.IoT Build 0:6ae2f7bca550 9312 result = 0;
Azure.IoT Build 0:6ae2f7bca550 9313 }
Azure.IoT Build 0:6ae2f7bca550 9314
Azure.IoT Build 0:6ae2f7bca550 9315 amqpvalue_destroy(address_amqp_value);
Azure.IoT Build 0:6ae2f7bca550 9316 }
Azure.IoT Build 0:6ae2f7bca550 9317 }
Azure.IoT Build 0:6ae2f7bca550 9318
Azure.IoT Build 0:6ae2f7bca550 9319 return result;
Azure.IoT Build 0:6ae2f7bca550 9320 }
Azure.IoT Build 0:6ae2f7bca550 9321
Azure.IoT Build 0:6ae2f7bca550 9322 int source_get_durable(SOURCE_HANDLE source, terminus_durability* durable_value)
Azure.IoT Build 0:6ae2f7bca550 9323 {
Azure.IoT Build 0:6ae2f7bca550 9324 int result;
Azure.IoT Build 0:6ae2f7bca550 9325
Azure.IoT Build 0:6ae2f7bca550 9326 if (source == NULL)
Azure.IoT Build 0:6ae2f7bca550 9327 {
Azure.IoT Build 0:6ae2f7bca550 9328 result = __LINE__;
Azure.IoT Build 0:6ae2f7bca550 9329 }
Azure.IoT Build 0:6ae2f7bca550 9330 else
Azure.IoT Build 0:6ae2f7bca550 9331 {
Azure.IoT Build 0:6ae2f7bca550 9332 SOURCE_INSTANCE* source_instance = (SOURCE_INSTANCE*)source;
Azure.IoT Build 0:6ae2f7bca550 9333 AMQP_VALUE item_value = amqpvalue_get_composite_item_in_place(source_instance->composite_value, 1);
Azure.IoT Build 0:6ae2f7bca550 9334 if (item_value == NULL)
Azure.IoT Build 0:6ae2f7bca550 9335 {
Azure.IoT Build 0:6ae2f7bca550 9336 result = __LINE__;
Azure.IoT Build 0:6ae2f7bca550 9337 }
Azure.IoT Build 0:6ae2f7bca550 9338 else
Azure.IoT Build 0:6ae2f7bca550 9339 {
Azure.IoT Build 0:6ae2f7bca550 9340 if (amqpvalue_get_terminus_durability(item_value, durable_value) != 0)
Azure.IoT Build 0:6ae2f7bca550 9341 {
Azure.IoT Build 0:6ae2f7bca550 9342 result = __LINE__;
Azure.IoT Build 0:6ae2f7bca550 9343 }
Azure.IoT Build 0:6ae2f7bca550 9344 else
Azure.IoT Build 0:6ae2f7bca550 9345 {
Azure.IoT Build 0:6ae2f7bca550 9346 result = 0;
Azure.IoT Build 0:6ae2f7bca550 9347 }
Azure.IoT Build 0:6ae2f7bca550 9348 }
Azure.IoT Build 0:6ae2f7bca550 9349 }
Azure.IoT Build 0:6ae2f7bca550 9350
Azure.IoT Build 0:6ae2f7bca550 9351 return result;
Azure.IoT Build 0:6ae2f7bca550 9352 }
Azure.IoT Build 0:6ae2f7bca550 9353
Azure.IoT Build 0:6ae2f7bca550 9354 int source_set_durable(SOURCE_HANDLE source, terminus_durability durable_value)
Azure.IoT Build 0:6ae2f7bca550 9355 {
Azure.IoT Build 0:6ae2f7bca550 9356 int result;
Azure.IoT Build 0:6ae2f7bca550 9357
Azure.IoT Build 0:6ae2f7bca550 9358 if (source == NULL)
Azure.IoT Build 0:6ae2f7bca550 9359 {
Azure.IoT Build 0:6ae2f7bca550 9360 result = __LINE__;
Azure.IoT Build 0:6ae2f7bca550 9361 }
Azure.IoT Build 0:6ae2f7bca550 9362 else
Azure.IoT Build 0:6ae2f7bca550 9363 {
Azure.IoT Build 0:6ae2f7bca550 9364 SOURCE_INSTANCE* source_instance = (SOURCE_INSTANCE*)source;
Azure.IoT Build 0:6ae2f7bca550 9365 AMQP_VALUE durable_amqp_value = amqpvalue_create_terminus_durability(durable_value);
Azure.IoT Build 0:6ae2f7bca550 9366 if (durable_amqp_value == NULL)
Azure.IoT Build 0:6ae2f7bca550 9367 {
Azure.IoT Build 0:6ae2f7bca550 9368 result = __LINE__;
Azure.IoT Build 0:6ae2f7bca550 9369 }
Azure.IoT Build 0:6ae2f7bca550 9370 else
Azure.IoT Build 0:6ae2f7bca550 9371 {
Azure.IoT Build 0:6ae2f7bca550 9372 if (amqpvalue_set_composite_item(source_instance->composite_value, 1, durable_amqp_value) != 0)
Azure.IoT Build 0:6ae2f7bca550 9373 {
Azure.IoT Build 0:6ae2f7bca550 9374 result = __LINE__;
Azure.IoT Build 0:6ae2f7bca550 9375 }
Azure.IoT Build 0:6ae2f7bca550 9376 else
Azure.IoT Build 0:6ae2f7bca550 9377 {
Azure.IoT Build 0:6ae2f7bca550 9378 result = 0;
Azure.IoT Build 0:6ae2f7bca550 9379 }
Azure.IoT Build 0:6ae2f7bca550 9380
Azure.IoT Build 0:6ae2f7bca550 9381 amqpvalue_destroy(durable_amqp_value);
Azure.IoT Build 0:6ae2f7bca550 9382 }
Azure.IoT Build 0:6ae2f7bca550 9383 }
Azure.IoT Build 0:6ae2f7bca550 9384
Azure.IoT Build 0:6ae2f7bca550 9385 return result;
Azure.IoT Build 0:6ae2f7bca550 9386 }
Azure.IoT Build 0:6ae2f7bca550 9387
Azure.IoT Build 0:6ae2f7bca550 9388 int source_get_expiry_policy(SOURCE_HANDLE source, terminus_expiry_policy* expiry_policy_value)
Azure.IoT Build 0:6ae2f7bca550 9389 {
Azure.IoT Build 0:6ae2f7bca550 9390 int result;
Azure.IoT Build 0:6ae2f7bca550 9391
Azure.IoT Build 0:6ae2f7bca550 9392 if (source == NULL)
Azure.IoT Build 0:6ae2f7bca550 9393 {
Azure.IoT Build 0:6ae2f7bca550 9394 result = __LINE__;
Azure.IoT Build 0:6ae2f7bca550 9395 }
Azure.IoT Build 0:6ae2f7bca550 9396 else
Azure.IoT Build 0:6ae2f7bca550 9397 {
Azure.IoT Build 0:6ae2f7bca550 9398 SOURCE_INSTANCE* source_instance = (SOURCE_INSTANCE*)source;
Azure.IoT Build 0:6ae2f7bca550 9399 AMQP_VALUE item_value = amqpvalue_get_composite_item_in_place(source_instance->composite_value, 2);
Azure.IoT Build 0:6ae2f7bca550 9400 if (item_value == NULL)
Azure.IoT Build 0:6ae2f7bca550 9401 {
Azure.IoT Build 0:6ae2f7bca550 9402 result = __LINE__;
Azure.IoT Build 0:6ae2f7bca550 9403 }
Azure.IoT Build 0:6ae2f7bca550 9404 else
Azure.IoT Build 0:6ae2f7bca550 9405 {
Azure.IoT Build 0:6ae2f7bca550 9406 if (amqpvalue_get_terminus_expiry_policy(item_value, expiry_policy_value) != 0)
Azure.IoT Build 0:6ae2f7bca550 9407 {
Azure.IoT Build 0:6ae2f7bca550 9408 result = __LINE__;
Azure.IoT Build 0:6ae2f7bca550 9409 }
Azure.IoT Build 0:6ae2f7bca550 9410 else
Azure.IoT Build 0:6ae2f7bca550 9411 {
Azure.IoT Build 0:6ae2f7bca550 9412 result = 0;
Azure.IoT Build 0:6ae2f7bca550 9413 }
Azure.IoT Build 0:6ae2f7bca550 9414 }
Azure.IoT Build 0:6ae2f7bca550 9415 }
Azure.IoT Build 0:6ae2f7bca550 9416
Azure.IoT Build 0:6ae2f7bca550 9417 return result;
Azure.IoT Build 0:6ae2f7bca550 9418 }
Azure.IoT Build 0:6ae2f7bca550 9419
Azure.IoT Build 0:6ae2f7bca550 9420 int source_set_expiry_policy(SOURCE_HANDLE source, terminus_expiry_policy expiry_policy_value)
Azure.IoT Build 0:6ae2f7bca550 9421 {
Azure.IoT Build 0:6ae2f7bca550 9422 int result;
Azure.IoT Build 0:6ae2f7bca550 9423
Azure.IoT Build 0:6ae2f7bca550 9424 if (source == NULL)
Azure.IoT Build 0:6ae2f7bca550 9425 {
Azure.IoT Build 0:6ae2f7bca550 9426 result = __LINE__;
Azure.IoT Build 0:6ae2f7bca550 9427 }
Azure.IoT Build 0:6ae2f7bca550 9428 else
Azure.IoT Build 0:6ae2f7bca550 9429 {
Azure.IoT Build 0:6ae2f7bca550 9430 SOURCE_INSTANCE* source_instance = (SOURCE_INSTANCE*)source;
Azure.IoT Build 0:6ae2f7bca550 9431 AMQP_VALUE expiry_policy_amqp_value = amqpvalue_create_terminus_expiry_policy(expiry_policy_value);
Azure.IoT Build 0:6ae2f7bca550 9432 if (expiry_policy_amqp_value == NULL)
Azure.IoT Build 0:6ae2f7bca550 9433 {
Azure.IoT Build 0:6ae2f7bca550 9434 result = __LINE__;
Azure.IoT Build 0:6ae2f7bca550 9435 }
Azure.IoT Build 0:6ae2f7bca550 9436 else
Azure.IoT Build 0:6ae2f7bca550 9437 {
Azure.IoT Build 0:6ae2f7bca550 9438 if (amqpvalue_set_composite_item(source_instance->composite_value, 2, expiry_policy_amqp_value) != 0)
Azure.IoT Build 0:6ae2f7bca550 9439 {
Azure.IoT Build 0:6ae2f7bca550 9440 result = __LINE__;
Azure.IoT Build 0:6ae2f7bca550 9441 }
Azure.IoT Build 0:6ae2f7bca550 9442 else
Azure.IoT Build 0:6ae2f7bca550 9443 {
Azure.IoT Build 0:6ae2f7bca550 9444 result = 0;
Azure.IoT Build 0:6ae2f7bca550 9445 }
Azure.IoT Build 0:6ae2f7bca550 9446
Azure.IoT Build 0:6ae2f7bca550 9447 amqpvalue_destroy(expiry_policy_amqp_value);
Azure.IoT Build 0:6ae2f7bca550 9448 }
Azure.IoT Build 0:6ae2f7bca550 9449 }
Azure.IoT Build 0:6ae2f7bca550 9450
Azure.IoT Build 0:6ae2f7bca550 9451 return result;
Azure.IoT Build 0:6ae2f7bca550 9452 }
Azure.IoT Build 0:6ae2f7bca550 9453
Azure.IoT Build 0:6ae2f7bca550 9454 int source_get_timeout(SOURCE_HANDLE source, seconds* timeout_value)
Azure.IoT Build 0:6ae2f7bca550 9455 {
Azure.IoT Build 0:6ae2f7bca550 9456 int result;
Azure.IoT Build 0:6ae2f7bca550 9457
Azure.IoT Build 0:6ae2f7bca550 9458 if (source == NULL)
Azure.IoT Build 0:6ae2f7bca550 9459 {
Azure.IoT Build 0:6ae2f7bca550 9460 result = __LINE__;
Azure.IoT Build 0:6ae2f7bca550 9461 }
Azure.IoT Build 0:6ae2f7bca550 9462 else
Azure.IoT Build 0:6ae2f7bca550 9463 {
Azure.IoT Build 0:6ae2f7bca550 9464 SOURCE_INSTANCE* source_instance = (SOURCE_INSTANCE*)source;
Azure.IoT Build 0:6ae2f7bca550 9465 AMQP_VALUE item_value = amqpvalue_get_composite_item_in_place(source_instance->composite_value, 3);
Azure.IoT Build 0:6ae2f7bca550 9466 if (item_value == NULL)
Azure.IoT Build 0:6ae2f7bca550 9467 {
Azure.IoT Build 0:6ae2f7bca550 9468 result = __LINE__;
Azure.IoT Build 0:6ae2f7bca550 9469 }
Azure.IoT Build 0:6ae2f7bca550 9470 else
Azure.IoT Build 0:6ae2f7bca550 9471 {
Azure.IoT Build 0:6ae2f7bca550 9472 if (amqpvalue_get_seconds(item_value, timeout_value) != 0)
Azure.IoT Build 0:6ae2f7bca550 9473 {
Azure.IoT Build 0:6ae2f7bca550 9474 result = __LINE__;
Azure.IoT Build 0:6ae2f7bca550 9475 }
Azure.IoT Build 0:6ae2f7bca550 9476 else
Azure.IoT Build 0:6ae2f7bca550 9477 {
Azure.IoT Build 0:6ae2f7bca550 9478 result = 0;
Azure.IoT Build 0:6ae2f7bca550 9479 }
Azure.IoT Build 0:6ae2f7bca550 9480 }
Azure.IoT Build 0:6ae2f7bca550 9481 }
Azure.IoT Build 0:6ae2f7bca550 9482
Azure.IoT Build 0:6ae2f7bca550 9483 return result;
Azure.IoT Build 0:6ae2f7bca550 9484 }
Azure.IoT Build 0:6ae2f7bca550 9485
Azure.IoT Build 0:6ae2f7bca550 9486 int source_set_timeout(SOURCE_HANDLE source, seconds timeout_value)
Azure.IoT Build 0:6ae2f7bca550 9487 {
Azure.IoT Build 0:6ae2f7bca550 9488 int result;
Azure.IoT Build 0:6ae2f7bca550 9489
Azure.IoT Build 0:6ae2f7bca550 9490 if (source == NULL)
Azure.IoT Build 0:6ae2f7bca550 9491 {
Azure.IoT Build 0:6ae2f7bca550 9492 result = __LINE__;
Azure.IoT Build 0:6ae2f7bca550 9493 }
Azure.IoT Build 0:6ae2f7bca550 9494 else
Azure.IoT Build 0:6ae2f7bca550 9495 {
Azure.IoT Build 0:6ae2f7bca550 9496 SOURCE_INSTANCE* source_instance = (SOURCE_INSTANCE*)source;
Azure.IoT Build 0:6ae2f7bca550 9497 AMQP_VALUE timeout_amqp_value = amqpvalue_create_seconds(timeout_value);
Azure.IoT Build 0:6ae2f7bca550 9498 if (timeout_amqp_value == NULL)
Azure.IoT Build 0:6ae2f7bca550 9499 {
Azure.IoT Build 0:6ae2f7bca550 9500 result = __LINE__;
Azure.IoT Build 0:6ae2f7bca550 9501 }
Azure.IoT Build 0:6ae2f7bca550 9502 else
Azure.IoT Build 0:6ae2f7bca550 9503 {
Azure.IoT Build 0:6ae2f7bca550 9504 if (amqpvalue_set_composite_item(source_instance->composite_value, 3, timeout_amqp_value) != 0)
Azure.IoT Build 0:6ae2f7bca550 9505 {
Azure.IoT Build 0:6ae2f7bca550 9506 result = __LINE__;
Azure.IoT Build 0:6ae2f7bca550 9507 }
Azure.IoT Build 0:6ae2f7bca550 9508 else
Azure.IoT Build 0:6ae2f7bca550 9509 {
Azure.IoT Build 0:6ae2f7bca550 9510 result = 0;
Azure.IoT Build 0:6ae2f7bca550 9511 }
Azure.IoT Build 0:6ae2f7bca550 9512
Azure.IoT Build 0:6ae2f7bca550 9513 amqpvalue_destroy(timeout_amqp_value);
Azure.IoT Build 0:6ae2f7bca550 9514 }
Azure.IoT Build 0:6ae2f7bca550 9515 }
Azure.IoT Build 0:6ae2f7bca550 9516
Azure.IoT Build 0:6ae2f7bca550 9517 return result;
Azure.IoT Build 0:6ae2f7bca550 9518 }
Azure.IoT Build 0:6ae2f7bca550 9519
Azure.IoT Build 0:6ae2f7bca550 9520 int source_get_dynamic(SOURCE_HANDLE source, bool* dynamic_value)
Azure.IoT Build 0:6ae2f7bca550 9521 {
Azure.IoT Build 0:6ae2f7bca550 9522 int result;
Azure.IoT Build 0:6ae2f7bca550 9523
Azure.IoT Build 0:6ae2f7bca550 9524 if (source == NULL)
Azure.IoT Build 0:6ae2f7bca550 9525 {
Azure.IoT Build 0:6ae2f7bca550 9526 result = __LINE__;
Azure.IoT Build 0:6ae2f7bca550 9527 }
Azure.IoT Build 0:6ae2f7bca550 9528 else
Azure.IoT Build 0:6ae2f7bca550 9529 {
Azure.IoT Build 0:6ae2f7bca550 9530 SOURCE_INSTANCE* source_instance = (SOURCE_INSTANCE*)source;
Azure.IoT Build 0:6ae2f7bca550 9531 AMQP_VALUE item_value = amqpvalue_get_composite_item_in_place(source_instance->composite_value, 4);
Azure.IoT Build 0:6ae2f7bca550 9532 if (item_value == NULL)
Azure.IoT Build 0:6ae2f7bca550 9533 {
Azure.IoT Build 0:6ae2f7bca550 9534 result = __LINE__;
Azure.IoT Build 0:6ae2f7bca550 9535 }
Azure.IoT Build 0:6ae2f7bca550 9536 else
Azure.IoT Build 0:6ae2f7bca550 9537 {
Azure.IoT Build 0:6ae2f7bca550 9538 if (amqpvalue_get_boolean(item_value, dynamic_value) != 0)
Azure.IoT Build 0:6ae2f7bca550 9539 {
Azure.IoT Build 0:6ae2f7bca550 9540 result = __LINE__;
Azure.IoT Build 0:6ae2f7bca550 9541 }
Azure.IoT Build 0:6ae2f7bca550 9542 else
Azure.IoT Build 0:6ae2f7bca550 9543 {
Azure.IoT Build 0:6ae2f7bca550 9544 result = 0;
Azure.IoT Build 0:6ae2f7bca550 9545 }
Azure.IoT Build 0:6ae2f7bca550 9546 }
Azure.IoT Build 0:6ae2f7bca550 9547 }
Azure.IoT Build 0:6ae2f7bca550 9548
Azure.IoT Build 0:6ae2f7bca550 9549 return result;
Azure.IoT Build 0:6ae2f7bca550 9550 }
Azure.IoT Build 0:6ae2f7bca550 9551
Azure.IoT Build 0:6ae2f7bca550 9552 int source_set_dynamic(SOURCE_HANDLE source, bool dynamic_value)
Azure.IoT Build 0:6ae2f7bca550 9553 {
Azure.IoT Build 0:6ae2f7bca550 9554 int result;
Azure.IoT Build 0:6ae2f7bca550 9555
Azure.IoT Build 0:6ae2f7bca550 9556 if (source == NULL)
Azure.IoT Build 0:6ae2f7bca550 9557 {
Azure.IoT Build 0:6ae2f7bca550 9558 result = __LINE__;
Azure.IoT Build 0:6ae2f7bca550 9559 }
Azure.IoT Build 0:6ae2f7bca550 9560 else
Azure.IoT Build 0:6ae2f7bca550 9561 {
Azure.IoT Build 0:6ae2f7bca550 9562 SOURCE_INSTANCE* source_instance = (SOURCE_INSTANCE*)source;
Azure.IoT Build 0:6ae2f7bca550 9563 AMQP_VALUE dynamic_amqp_value = amqpvalue_create_boolean(dynamic_value);
Azure.IoT Build 0:6ae2f7bca550 9564 if (dynamic_amqp_value == NULL)
Azure.IoT Build 0:6ae2f7bca550 9565 {
Azure.IoT Build 0:6ae2f7bca550 9566 result = __LINE__;
Azure.IoT Build 0:6ae2f7bca550 9567 }
Azure.IoT Build 0:6ae2f7bca550 9568 else
Azure.IoT Build 0:6ae2f7bca550 9569 {
Azure.IoT Build 0:6ae2f7bca550 9570 if (amqpvalue_set_composite_item(source_instance->composite_value, 4, dynamic_amqp_value) != 0)
Azure.IoT Build 0:6ae2f7bca550 9571 {
Azure.IoT Build 0:6ae2f7bca550 9572 result = __LINE__;
Azure.IoT Build 0:6ae2f7bca550 9573 }
Azure.IoT Build 0:6ae2f7bca550 9574 else
Azure.IoT Build 0:6ae2f7bca550 9575 {
Azure.IoT Build 0:6ae2f7bca550 9576 result = 0;
Azure.IoT Build 0:6ae2f7bca550 9577 }
Azure.IoT Build 0:6ae2f7bca550 9578
Azure.IoT Build 0:6ae2f7bca550 9579 amqpvalue_destroy(dynamic_amqp_value);
Azure.IoT Build 0:6ae2f7bca550 9580 }
Azure.IoT Build 0:6ae2f7bca550 9581 }
Azure.IoT Build 0:6ae2f7bca550 9582
Azure.IoT Build 0:6ae2f7bca550 9583 return result;
Azure.IoT Build 0:6ae2f7bca550 9584 }
Azure.IoT Build 0:6ae2f7bca550 9585
Azure.IoT Build 0:6ae2f7bca550 9586 int source_get_dynamic_node_properties(SOURCE_HANDLE source, node_properties* dynamic_node_properties_value)
Azure.IoT Build 0:6ae2f7bca550 9587 {
Azure.IoT Build 0:6ae2f7bca550 9588 int result;
Azure.IoT Build 0:6ae2f7bca550 9589
Azure.IoT Build 0:6ae2f7bca550 9590 if (source == NULL)
Azure.IoT Build 0:6ae2f7bca550 9591 {
Azure.IoT Build 0:6ae2f7bca550 9592 result = __LINE__;
Azure.IoT Build 0:6ae2f7bca550 9593 }
Azure.IoT Build 0:6ae2f7bca550 9594 else
Azure.IoT Build 0:6ae2f7bca550 9595 {
Azure.IoT Build 0:6ae2f7bca550 9596 SOURCE_INSTANCE* source_instance = (SOURCE_INSTANCE*)source;
Azure.IoT Build 0:6ae2f7bca550 9597 AMQP_VALUE item_value = amqpvalue_get_composite_item_in_place(source_instance->composite_value, 5);
Azure.IoT Build 0:6ae2f7bca550 9598 if (item_value == NULL)
Azure.IoT Build 0:6ae2f7bca550 9599 {
Azure.IoT Build 0:6ae2f7bca550 9600 result = __LINE__;
Azure.IoT Build 0:6ae2f7bca550 9601 }
Azure.IoT Build 0:6ae2f7bca550 9602 else
Azure.IoT Build 0:6ae2f7bca550 9603 {
Azure.IoT Build 0:6ae2f7bca550 9604 if (amqpvalue_get_node_properties(item_value, dynamic_node_properties_value) != 0)
Azure.IoT Build 0:6ae2f7bca550 9605 {
Azure.IoT Build 0:6ae2f7bca550 9606 result = __LINE__;
Azure.IoT Build 0:6ae2f7bca550 9607 }
Azure.IoT Build 0:6ae2f7bca550 9608 else
Azure.IoT Build 0:6ae2f7bca550 9609 {
Azure.IoT Build 0:6ae2f7bca550 9610 result = 0;
Azure.IoT Build 0:6ae2f7bca550 9611 }
Azure.IoT Build 0:6ae2f7bca550 9612 }
Azure.IoT Build 0:6ae2f7bca550 9613 }
Azure.IoT Build 0:6ae2f7bca550 9614
Azure.IoT Build 0:6ae2f7bca550 9615 return result;
Azure.IoT Build 0:6ae2f7bca550 9616 }
Azure.IoT Build 0:6ae2f7bca550 9617
Azure.IoT Build 0:6ae2f7bca550 9618 int source_set_dynamic_node_properties(SOURCE_HANDLE source, node_properties dynamic_node_properties_value)
Azure.IoT Build 0:6ae2f7bca550 9619 {
Azure.IoT Build 0:6ae2f7bca550 9620 int result;
Azure.IoT Build 0:6ae2f7bca550 9621
Azure.IoT Build 0:6ae2f7bca550 9622 if (source == NULL)
Azure.IoT Build 0:6ae2f7bca550 9623 {
Azure.IoT Build 0:6ae2f7bca550 9624 result = __LINE__;
Azure.IoT Build 0:6ae2f7bca550 9625 }
Azure.IoT Build 0:6ae2f7bca550 9626 else
Azure.IoT Build 0:6ae2f7bca550 9627 {
Azure.IoT Build 0:6ae2f7bca550 9628 SOURCE_INSTANCE* source_instance = (SOURCE_INSTANCE*)source;
Azure.IoT Build 0:6ae2f7bca550 9629 AMQP_VALUE dynamic_node_properties_amqp_value = amqpvalue_create_node_properties(dynamic_node_properties_value);
Azure.IoT Build 0:6ae2f7bca550 9630 if (dynamic_node_properties_amqp_value == NULL)
Azure.IoT Build 0:6ae2f7bca550 9631 {
Azure.IoT Build 0:6ae2f7bca550 9632 result = __LINE__;
Azure.IoT Build 0:6ae2f7bca550 9633 }
Azure.IoT Build 0:6ae2f7bca550 9634 else
Azure.IoT Build 0:6ae2f7bca550 9635 {
Azure.IoT Build 0:6ae2f7bca550 9636 if (amqpvalue_set_composite_item(source_instance->composite_value, 5, dynamic_node_properties_amqp_value) != 0)
Azure.IoT Build 0:6ae2f7bca550 9637 {
Azure.IoT Build 0:6ae2f7bca550 9638 result = __LINE__;
Azure.IoT Build 0:6ae2f7bca550 9639 }
Azure.IoT Build 0:6ae2f7bca550 9640 else
Azure.IoT Build 0:6ae2f7bca550 9641 {
Azure.IoT Build 0:6ae2f7bca550 9642 result = 0;
Azure.IoT Build 0:6ae2f7bca550 9643 }
Azure.IoT Build 0:6ae2f7bca550 9644
Azure.IoT Build 0:6ae2f7bca550 9645 amqpvalue_destroy(dynamic_node_properties_amqp_value);
Azure.IoT Build 0:6ae2f7bca550 9646 }
Azure.IoT Build 0:6ae2f7bca550 9647 }
Azure.IoT Build 0:6ae2f7bca550 9648
Azure.IoT Build 0:6ae2f7bca550 9649 return result;
Azure.IoT Build 0:6ae2f7bca550 9650 }
Azure.IoT Build 0:6ae2f7bca550 9651
Azure.IoT Build 0:6ae2f7bca550 9652 int source_get_distribution_mode(SOURCE_HANDLE source, const char** distribution_mode_value)
Azure.IoT Build 0:6ae2f7bca550 9653 {
Azure.IoT Build 0:6ae2f7bca550 9654 int result;
Azure.IoT Build 0:6ae2f7bca550 9655
Azure.IoT Build 0:6ae2f7bca550 9656 if (source == NULL)
Azure.IoT Build 0:6ae2f7bca550 9657 {
Azure.IoT Build 0:6ae2f7bca550 9658 result = __LINE__;
Azure.IoT Build 0:6ae2f7bca550 9659 }
Azure.IoT Build 0:6ae2f7bca550 9660 else
Azure.IoT Build 0:6ae2f7bca550 9661 {
Azure.IoT Build 0:6ae2f7bca550 9662 SOURCE_INSTANCE* source_instance = (SOURCE_INSTANCE*)source;
Azure.IoT Build 0:6ae2f7bca550 9663 AMQP_VALUE item_value = amqpvalue_get_composite_item_in_place(source_instance->composite_value, 6);
Azure.IoT Build 0:6ae2f7bca550 9664 if (item_value == NULL)
Azure.IoT Build 0:6ae2f7bca550 9665 {
Azure.IoT Build 0:6ae2f7bca550 9666 result = __LINE__;
Azure.IoT Build 0:6ae2f7bca550 9667 }
Azure.IoT Build 0:6ae2f7bca550 9668 else
Azure.IoT Build 0:6ae2f7bca550 9669 {
Azure.IoT Build 0:6ae2f7bca550 9670 if (amqpvalue_get_symbol(item_value, distribution_mode_value) != 0)
Azure.IoT Build 0:6ae2f7bca550 9671 {
Azure.IoT Build 0:6ae2f7bca550 9672 result = __LINE__;
Azure.IoT Build 0:6ae2f7bca550 9673 }
Azure.IoT Build 0:6ae2f7bca550 9674 else
Azure.IoT Build 0:6ae2f7bca550 9675 {
Azure.IoT Build 0:6ae2f7bca550 9676 result = 0;
Azure.IoT Build 0:6ae2f7bca550 9677 }
Azure.IoT Build 0:6ae2f7bca550 9678 }
Azure.IoT Build 0:6ae2f7bca550 9679 }
Azure.IoT Build 0:6ae2f7bca550 9680
Azure.IoT Build 0:6ae2f7bca550 9681 return result;
Azure.IoT Build 0:6ae2f7bca550 9682 }
Azure.IoT Build 0:6ae2f7bca550 9683
Azure.IoT Build 0:6ae2f7bca550 9684 int source_set_distribution_mode(SOURCE_HANDLE source, const char* distribution_mode_value)
Azure.IoT Build 0:6ae2f7bca550 9685 {
Azure.IoT Build 0:6ae2f7bca550 9686 int result;
Azure.IoT Build 0:6ae2f7bca550 9687
Azure.IoT Build 0:6ae2f7bca550 9688 if (source == NULL)
Azure.IoT Build 0:6ae2f7bca550 9689 {
Azure.IoT Build 0:6ae2f7bca550 9690 result = __LINE__;
Azure.IoT Build 0:6ae2f7bca550 9691 }
Azure.IoT Build 0:6ae2f7bca550 9692 else
Azure.IoT Build 0:6ae2f7bca550 9693 {
Azure.IoT Build 0:6ae2f7bca550 9694 SOURCE_INSTANCE* source_instance = (SOURCE_INSTANCE*)source;
Azure.IoT Build 0:6ae2f7bca550 9695 AMQP_VALUE distribution_mode_amqp_value = amqpvalue_create_symbol(distribution_mode_value);
Azure.IoT Build 0:6ae2f7bca550 9696 if (distribution_mode_amqp_value == NULL)
Azure.IoT Build 0:6ae2f7bca550 9697 {
Azure.IoT Build 0:6ae2f7bca550 9698 result = __LINE__;
Azure.IoT Build 0:6ae2f7bca550 9699 }
Azure.IoT Build 0:6ae2f7bca550 9700 else
Azure.IoT Build 0:6ae2f7bca550 9701 {
Azure.IoT Build 0:6ae2f7bca550 9702 if (amqpvalue_set_composite_item(source_instance->composite_value, 6, distribution_mode_amqp_value) != 0)
Azure.IoT Build 0:6ae2f7bca550 9703 {
Azure.IoT Build 0:6ae2f7bca550 9704 result = __LINE__;
Azure.IoT Build 0:6ae2f7bca550 9705 }
Azure.IoT Build 0:6ae2f7bca550 9706 else
Azure.IoT Build 0:6ae2f7bca550 9707 {
Azure.IoT Build 0:6ae2f7bca550 9708 result = 0;
Azure.IoT Build 0:6ae2f7bca550 9709 }
Azure.IoT Build 0:6ae2f7bca550 9710
Azure.IoT Build 0:6ae2f7bca550 9711 amqpvalue_destroy(distribution_mode_amqp_value);
Azure.IoT Build 0:6ae2f7bca550 9712 }
Azure.IoT Build 0:6ae2f7bca550 9713 }
Azure.IoT Build 0:6ae2f7bca550 9714
Azure.IoT Build 0:6ae2f7bca550 9715 return result;
Azure.IoT Build 0:6ae2f7bca550 9716 }
Azure.IoT Build 0:6ae2f7bca550 9717
Azure.IoT Build 0:6ae2f7bca550 9718 int source_get_filter(SOURCE_HANDLE source, filter_set* filter_value)
Azure.IoT Build 0:6ae2f7bca550 9719 {
Azure.IoT Build 0:6ae2f7bca550 9720 int result;
Azure.IoT Build 0:6ae2f7bca550 9721
Azure.IoT Build 0:6ae2f7bca550 9722 if (source == NULL)
Azure.IoT Build 0:6ae2f7bca550 9723 {
Azure.IoT Build 0:6ae2f7bca550 9724 result = __LINE__;
Azure.IoT Build 0:6ae2f7bca550 9725 }
Azure.IoT Build 0:6ae2f7bca550 9726 else
Azure.IoT Build 0:6ae2f7bca550 9727 {
Azure.IoT Build 0:6ae2f7bca550 9728 SOURCE_INSTANCE* source_instance = (SOURCE_INSTANCE*)source;
Azure.IoT Build 0:6ae2f7bca550 9729 AMQP_VALUE item_value = amqpvalue_get_composite_item_in_place(source_instance->composite_value, 7);
Azure.IoT Build 0:6ae2f7bca550 9730 if (item_value == NULL)
Azure.IoT Build 0:6ae2f7bca550 9731 {
Azure.IoT Build 0:6ae2f7bca550 9732 result = __LINE__;
Azure.IoT Build 0:6ae2f7bca550 9733 }
Azure.IoT Build 0:6ae2f7bca550 9734 else
Azure.IoT Build 0:6ae2f7bca550 9735 {
Azure.IoT Build 0:6ae2f7bca550 9736 if (amqpvalue_get_filter_set(item_value, filter_value) != 0)
Azure.IoT Build 0:6ae2f7bca550 9737 {
Azure.IoT Build 0:6ae2f7bca550 9738 result = __LINE__;
Azure.IoT Build 0:6ae2f7bca550 9739 }
Azure.IoT Build 0:6ae2f7bca550 9740 else
Azure.IoT Build 0:6ae2f7bca550 9741 {
Azure.IoT Build 0:6ae2f7bca550 9742 result = 0;
Azure.IoT Build 0:6ae2f7bca550 9743 }
Azure.IoT Build 0:6ae2f7bca550 9744 }
Azure.IoT Build 0:6ae2f7bca550 9745 }
Azure.IoT Build 0:6ae2f7bca550 9746
Azure.IoT Build 0:6ae2f7bca550 9747 return result;
Azure.IoT Build 0:6ae2f7bca550 9748 }
Azure.IoT Build 0:6ae2f7bca550 9749
Azure.IoT Build 0:6ae2f7bca550 9750 int source_set_filter(SOURCE_HANDLE source, filter_set filter_value)
Azure.IoT Build 0:6ae2f7bca550 9751 {
Azure.IoT Build 0:6ae2f7bca550 9752 int result;
Azure.IoT Build 0:6ae2f7bca550 9753
Azure.IoT Build 0:6ae2f7bca550 9754 if (source == NULL)
Azure.IoT Build 0:6ae2f7bca550 9755 {
Azure.IoT Build 0:6ae2f7bca550 9756 result = __LINE__;
Azure.IoT Build 0:6ae2f7bca550 9757 }
Azure.IoT Build 0:6ae2f7bca550 9758 else
Azure.IoT Build 0:6ae2f7bca550 9759 {
Azure.IoT Build 0:6ae2f7bca550 9760 SOURCE_INSTANCE* source_instance = (SOURCE_INSTANCE*)source;
Azure.IoT Build 0:6ae2f7bca550 9761 AMQP_VALUE filter_amqp_value = amqpvalue_create_filter_set(filter_value);
Azure.IoT Build 0:6ae2f7bca550 9762 if (filter_amqp_value == NULL)
Azure.IoT Build 0:6ae2f7bca550 9763 {
Azure.IoT Build 0:6ae2f7bca550 9764 result = __LINE__;
Azure.IoT Build 0:6ae2f7bca550 9765 }
Azure.IoT Build 0:6ae2f7bca550 9766 else
Azure.IoT Build 0:6ae2f7bca550 9767 {
Azure.IoT Build 0:6ae2f7bca550 9768 if (amqpvalue_set_composite_item(source_instance->composite_value, 7, filter_amqp_value) != 0)
Azure.IoT Build 0:6ae2f7bca550 9769 {
Azure.IoT Build 0:6ae2f7bca550 9770 result = __LINE__;
Azure.IoT Build 0:6ae2f7bca550 9771 }
Azure.IoT Build 0:6ae2f7bca550 9772 else
Azure.IoT Build 0:6ae2f7bca550 9773 {
Azure.IoT Build 0:6ae2f7bca550 9774 result = 0;
Azure.IoT Build 0:6ae2f7bca550 9775 }
Azure.IoT Build 0:6ae2f7bca550 9776
Azure.IoT Build 0:6ae2f7bca550 9777 amqpvalue_destroy(filter_amqp_value);
Azure.IoT Build 0:6ae2f7bca550 9778 }
Azure.IoT Build 0:6ae2f7bca550 9779 }
Azure.IoT Build 0:6ae2f7bca550 9780
Azure.IoT Build 0:6ae2f7bca550 9781 return result;
Azure.IoT Build 0:6ae2f7bca550 9782 }
Azure.IoT Build 0:6ae2f7bca550 9783
Azure.IoT Build 0:6ae2f7bca550 9784 int source_get_default_outcome(SOURCE_HANDLE source, AMQP_VALUE* default_outcome_value)
Azure.IoT Build 0:6ae2f7bca550 9785 {
Azure.IoT Build 0:6ae2f7bca550 9786 int result;
Azure.IoT Build 0:6ae2f7bca550 9787
Azure.IoT Build 0:6ae2f7bca550 9788 if (source == NULL)
Azure.IoT Build 0:6ae2f7bca550 9789 {
Azure.IoT Build 0:6ae2f7bca550 9790 result = __LINE__;
Azure.IoT Build 0:6ae2f7bca550 9791 }
Azure.IoT Build 0:6ae2f7bca550 9792 else
Azure.IoT Build 0:6ae2f7bca550 9793 {
Azure.IoT Build 0:6ae2f7bca550 9794 SOURCE_INSTANCE* source_instance = (SOURCE_INSTANCE*)source;
Azure.IoT Build 0:6ae2f7bca550 9795 AMQP_VALUE item_value = amqpvalue_get_composite_item_in_place(source_instance->composite_value, 8);
Azure.IoT Build 0:6ae2f7bca550 9796 if (item_value == NULL)
Azure.IoT Build 0:6ae2f7bca550 9797 {
Azure.IoT Build 0:6ae2f7bca550 9798 result = __LINE__;
Azure.IoT Build 0:6ae2f7bca550 9799 }
Azure.IoT Build 0:6ae2f7bca550 9800 else
Azure.IoT Build 0:6ae2f7bca550 9801 {
Azure.IoT Build 0:6ae2f7bca550 9802 *default_outcome_value = item_value;
Azure.IoT Build 0:6ae2f7bca550 9803 result = 0;
Azure.IoT Build 0:6ae2f7bca550 9804 }
Azure.IoT Build 0:6ae2f7bca550 9805 }
Azure.IoT Build 0:6ae2f7bca550 9806
Azure.IoT Build 0:6ae2f7bca550 9807 return result;
Azure.IoT Build 0:6ae2f7bca550 9808 }
Azure.IoT Build 0:6ae2f7bca550 9809
Azure.IoT Build 0:6ae2f7bca550 9810 int source_set_default_outcome(SOURCE_HANDLE source, AMQP_VALUE default_outcome_value)
Azure.IoT Build 0:6ae2f7bca550 9811 {
Azure.IoT Build 0:6ae2f7bca550 9812 int result;
Azure.IoT Build 0:6ae2f7bca550 9813
Azure.IoT Build 0:6ae2f7bca550 9814 if (source == NULL)
Azure.IoT Build 0:6ae2f7bca550 9815 {
Azure.IoT Build 0:6ae2f7bca550 9816 result = __LINE__;
Azure.IoT Build 0:6ae2f7bca550 9817 }
Azure.IoT Build 0:6ae2f7bca550 9818 else
Azure.IoT Build 0:6ae2f7bca550 9819 {
Azure.IoT Build 0:6ae2f7bca550 9820 SOURCE_INSTANCE* source_instance = (SOURCE_INSTANCE*)source;
Azure.IoT Build 0:6ae2f7bca550 9821 AMQP_VALUE default_outcome_amqp_value = amqpvalue_clone(default_outcome_value);
Azure.IoT Build 0:6ae2f7bca550 9822 if (default_outcome_amqp_value == NULL)
Azure.IoT Build 0:6ae2f7bca550 9823 {
Azure.IoT Build 0:6ae2f7bca550 9824 result = __LINE__;
Azure.IoT Build 0:6ae2f7bca550 9825 }
Azure.IoT Build 0:6ae2f7bca550 9826 else
Azure.IoT Build 0:6ae2f7bca550 9827 {
Azure.IoT Build 0:6ae2f7bca550 9828 if (amqpvalue_set_composite_item(source_instance->composite_value, 8, default_outcome_amqp_value) != 0)
Azure.IoT Build 0:6ae2f7bca550 9829 {
Azure.IoT Build 0:6ae2f7bca550 9830 result = __LINE__;
Azure.IoT Build 0:6ae2f7bca550 9831 }
Azure.IoT Build 0:6ae2f7bca550 9832 else
Azure.IoT Build 0:6ae2f7bca550 9833 {
Azure.IoT Build 0:6ae2f7bca550 9834 result = 0;
Azure.IoT Build 0:6ae2f7bca550 9835 }
Azure.IoT Build 0:6ae2f7bca550 9836
Azure.IoT Build 0:6ae2f7bca550 9837 amqpvalue_destroy(default_outcome_amqp_value);
Azure.IoT Build 0:6ae2f7bca550 9838 }
Azure.IoT Build 0:6ae2f7bca550 9839 }
Azure.IoT Build 0:6ae2f7bca550 9840
Azure.IoT Build 0:6ae2f7bca550 9841 return result;
Azure.IoT Build 0:6ae2f7bca550 9842 }
Azure.IoT Build 0:6ae2f7bca550 9843
Azure.IoT Build 0:6ae2f7bca550 9844 int source_get_outcomes(SOURCE_HANDLE source, AMQP_VALUE* outcomes_value)
Azure.IoT Build 0:6ae2f7bca550 9845 {
Azure.IoT Build 0:6ae2f7bca550 9846 int result;
Azure.IoT Build 0:6ae2f7bca550 9847
Azure.IoT Build 0:6ae2f7bca550 9848 if (source == NULL)
Azure.IoT Build 0:6ae2f7bca550 9849 {
Azure.IoT Build 0:6ae2f7bca550 9850 result = __LINE__;
Azure.IoT Build 0:6ae2f7bca550 9851 }
Azure.IoT Build 0:6ae2f7bca550 9852 else
Azure.IoT Build 0:6ae2f7bca550 9853 {
Azure.IoT Build 0:6ae2f7bca550 9854 SOURCE_INSTANCE* source_instance = (SOURCE_INSTANCE*)source;
Azure.IoT Build 0:6ae2f7bca550 9855 AMQP_VALUE item_value = amqpvalue_get_composite_item_in_place(source_instance->composite_value, 9);
Azure.IoT Build 0:6ae2f7bca550 9856 if (item_value == NULL)
Azure.IoT Build 0:6ae2f7bca550 9857 {
Azure.IoT Build 0:6ae2f7bca550 9858 result = __LINE__;
Azure.IoT Build 0:6ae2f7bca550 9859 }
Azure.IoT Build 0:6ae2f7bca550 9860 else
Azure.IoT Build 0:6ae2f7bca550 9861 {
Azure.IoT Build 0:6ae2f7bca550 9862 if (amqpvalue_get_array(item_value, outcomes_value) != 0)
Azure.IoT Build 0:6ae2f7bca550 9863 {
Azure.IoT Build 0:6ae2f7bca550 9864 result = __LINE__;
Azure.IoT Build 0:6ae2f7bca550 9865 }
Azure.IoT Build 0:6ae2f7bca550 9866 else
Azure.IoT Build 0:6ae2f7bca550 9867 {
Azure.IoT Build 0:6ae2f7bca550 9868 result = 0;
Azure.IoT Build 0:6ae2f7bca550 9869 }
Azure.IoT Build 0:6ae2f7bca550 9870 }
Azure.IoT Build 0:6ae2f7bca550 9871 }
Azure.IoT Build 0:6ae2f7bca550 9872
Azure.IoT Build 0:6ae2f7bca550 9873 return result;
Azure.IoT Build 0:6ae2f7bca550 9874 }
Azure.IoT Build 0:6ae2f7bca550 9875
Azure.IoT Build 0:6ae2f7bca550 9876 int source_set_outcomes(SOURCE_HANDLE source, AMQP_VALUE outcomes_value)
Azure.IoT Build 0:6ae2f7bca550 9877 {
Azure.IoT Build 0:6ae2f7bca550 9878 int result;
Azure.IoT Build 0:6ae2f7bca550 9879
Azure.IoT Build 0:6ae2f7bca550 9880 if (source == NULL)
Azure.IoT Build 0:6ae2f7bca550 9881 {
Azure.IoT Build 0:6ae2f7bca550 9882 result = __LINE__;
Azure.IoT Build 0:6ae2f7bca550 9883 }
Azure.IoT Build 0:6ae2f7bca550 9884 else
Azure.IoT Build 0:6ae2f7bca550 9885 {
Azure.IoT Build 0:6ae2f7bca550 9886 SOURCE_INSTANCE* source_instance = (SOURCE_INSTANCE*)source;
Azure.IoT Build 0:6ae2f7bca550 9887 AMQP_VALUE outcomes_amqp_value = amqpvalue_clone(outcomes_value);
Azure.IoT Build 0:6ae2f7bca550 9888 if (outcomes_amqp_value == NULL)
Azure.IoT Build 0:6ae2f7bca550 9889 {
Azure.IoT Build 0:6ae2f7bca550 9890 result = __LINE__;
Azure.IoT Build 0:6ae2f7bca550 9891 }
Azure.IoT Build 0:6ae2f7bca550 9892 else
Azure.IoT Build 0:6ae2f7bca550 9893 {
Azure.IoT Build 0:6ae2f7bca550 9894 if (amqpvalue_set_composite_item(source_instance->composite_value, 9, outcomes_amqp_value) != 0)
Azure.IoT Build 0:6ae2f7bca550 9895 {
Azure.IoT Build 0:6ae2f7bca550 9896 result = __LINE__;
Azure.IoT Build 0:6ae2f7bca550 9897 }
Azure.IoT Build 0:6ae2f7bca550 9898 else
Azure.IoT Build 0:6ae2f7bca550 9899 {
Azure.IoT Build 0:6ae2f7bca550 9900 result = 0;
Azure.IoT Build 0:6ae2f7bca550 9901 }
Azure.IoT Build 0:6ae2f7bca550 9902
Azure.IoT Build 0:6ae2f7bca550 9903 amqpvalue_destroy(outcomes_amqp_value);
Azure.IoT Build 0:6ae2f7bca550 9904 }
Azure.IoT Build 0:6ae2f7bca550 9905 }
Azure.IoT Build 0:6ae2f7bca550 9906
Azure.IoT Build 0:6ae2f7bca550 9907 return result;
Azure.IoT Build 0:6ae2f7bca550 9908 }
Azure.IoT Build 0:6ae2f7bca550 9909
Azure.IoT Build 0:6ae2f7bca550 9910 int source_get_capabilities(SOURCE_HANDLE source, AMQP_VALUE* capabilities_value)
Azure.IoT Build 0:6ae2f7bca550 9911 {
Azure.IoT Build 0:6ae2f7bca550 9912 int result;
Azure.IoT Build 0:6ae2f7bca550 9913
Azure.IoT Build 0:6ae2f7bca550 9914 if (source == NULL)
Azure.IoT Build 0:6ae2f7bca550 9915 {
Azure.IoT Build 0:6ae2f7bca550 9916 result = __LINE__;
Azure.IoT Build 0:6ae2f7bca550 9917 }
Azure.IoT Build 0:6ae2f7bca550 9918 else
Azure.IoT Build 0:6ae2f7bca550 9919 {
Azure.IoT Build 0:6ae2f7bca550 9920 SOURCE_INSTANCE* source_instance = (SOURCE_INSTANCE*)source;
Azure.IoT Build 0:6ae2f7bca550 9921 AMQP_VALUE item_value = amqpvalue_get_composite_item_in_place(source_instance->composite_value, 10);
Azure.IoT Build 0:6ae2f7bca550 9922 if (item_value == NULL)
Azure.IoT Build 0:6ae2f7bca550 9923 {
Azure.IoT Build 0:6ae2f7bca550 9924 result = __LINE__;
Azure.IoT Build 0:6ae2f7bca550 9925 }
Azure.IoT Build 0:6ae2f7bca550 9926 else
Azure.IoT Build 0:6ae2f7bca550 9927 {
Azure.IoT Build 0:6ae2f7bca550 9928 if (amqpvalue_get_array(item_value, capabilities_value) != 0)
Azure.IoT Build 0:6ae2f7bca550 9929 {
Azure.IoT Build 0:6ae2f7bca550 9930 result = __LINE__;
Azure.IoT Build 0:6ae2f7bca550 9931 }
Azure.IoT Build 0:6ae2f7bca550 9932 else
Azure.IoT Build 0:6ae2f7bca550 9933 {
Azure.IoT Build 0:6ae2f7bca550 9934 result = 0;
Azure.IoT Build 0:6ae2f7bca550 9935 }
Azure.IoT Build 0:6ae2f7bca550 9936 }
Azure.IoT Build 0:6ae2f7bca550 9937 }
Azure.IoT Build 0:6ae2f7bca550 9938
Azure.IoT Build 0:6ae2f7bca550 9939 return result;
Azure.IoT Build 0:6ae2f7bca550 9940 }
Azure.IoT Build 0:6ae2f7bca550 9941
Azure.IoT Build 0:6ae2f7bca550 9942 int source_set_capabilities(SOURCE_HANDLE source, AMQP_VALUE capabilities_value)
Azure.IoT Build 0:6ae2f7bca550 9943 {
Azure.IoT Build 0:6ae2f7bca550 9944 int result;
Azure.IoT Build 0:6ae2f7bca550 9945
Azure.IoT Build 0:6ae2f7bca550 9946 if (source == NULL)
Azure.IoT Build 0:6ae2f7bca550 9947 {
Azure.IoT Build 0:6ae2f7bca550 9948 result = __LINE__;
Azure.IoT Build 0:6ae2f7bca550 9949 }
Azure.IoT Build 0:6ae2f7bca550 9950 else
Azure.IoT Build 0:6ae2f7bca550 9951 {
Azure.IoT Build 0:6ae2f7bca550 9952 SOURCE_INSTANCE* source_instance = (SOURCE_INSTANCE*)source;
Azure.IoT Build 0:6ae2f7bca550 9953 AMQP_VALUE capabilities_amqp_value = amqpvalue_clone(capabilities_value);
Azure.IoT Build 0:6ae2f7bca550 9954 if (capabilities_amqp_value == NULL)
Azure.IoT Build 0:6ae2f7bca550 9955 {
Azure.IoT Build 0:6ae2f7bca550 9956 result = __LINE__;
Azure.IoT Build 0:6ae2f7bca550 9957 }
Azure.IoT Build 0:6ae2f7bca550 9958 else
Azure.IoT Build 0:6ae2f7bca550 9959 {
Azure.IoT Build 0:6ae2f7bca550 9960 if (amqpvalue_set_composite_item(source_instance->composite_value, 10, capabilities_amqp_value) != 0)
Azure.IoT Build 0:6ae2f7bca550 9961 {
Azure.IoT Build 0:6ae2f7bca550 9962 result = __LINE__;
Azure.IoT Build 0:6ae2f7bca550 9963 }
Azure.IoT Build 0:6ae2f7bca550 9964 else
Azure.IoT Build 0:6ae2f7bca550 9965 {
Azure.IoT Build 0:6ae2f7bca550 9966 result = 0;
Azure.IoT Build 0:6ae2f7bca550 9967 }
Azure.IoT Build 0:6ae2f7bca550 9968
Azure.IoT Build 0:6ae2f7bca550 9969 amqpvalue_destroy(capabilities_amqp_value);
Azure.IoT Build 0:6ae2f7bca550 9970 }
Azure.IoT Build 0:6ae2f7bca550 9971 }
Azure.IoT Build 0:6ae2f7bca550 9972
Azure.IoT Build 0:6ae2f7bca550 9973 return result;
Azure.IoT Build 0:6ae2f7bca550 9974 }
Azure.IoT Build 0:6ae2f7bca550 9975
Azure.IoT Build 0:6ae2f7bca550 9976
Azure.IoT Build 0:6ae2f7bca550 9977 /* target */
Azure.IoT Build 0:6ae2f7bca550 9978
Azure.IoT Build 0:6ae2f7bca550 9979 typedef struct TARGET_INSTANCE_TAG
Azure.IoT Build 0:6ae2f7bca550 9980 {
Azure.IoT Build 0:6ae2f7bca550 9981 AMQP_VALUE composite_value;
Azure.IoT Build 0:6ae2f7bca550 9982 } TARGET_INSTANCE;
Azure.IoT Build 0:6ae2f7bca550 9983
Azure.IoT Build 0:6ae2f7bca550 9984 static TARGET_HANDLE target_create_internal(void)
Azure.IoT Build 0:6ae2f7bca550 9985 {
Azure.IoT Build 0:6ae2f7bca550 9986 TARGET_INSTANCE* target_instance = (TARGET_INSTANCE*)amqpalloc_malloc(sizeof(TARGET_INSTANCE));
Azure.IoT Build 0:6ae2f7bca550 9987 if (target_instance != NULL)
Azure.IoT Build 0:6ae2f7bca550 9988 {
Azure.IoT Build 0:6ae2f7bca550 9989 target_instance->composite_value = NULL;
Azure.IoT Build 0:6ae2f7bca550 9990 }
Azure.IoT Build 0:6ae2f7bca550 9991
Azure.IoT Build 0:6ae2f7bca550 9992 return target_instance;
Azure.IoT Build 0:6ae2f7bca550 9993 }
Azure.IoT Build 0:6ae2f7bca550 9994
Azure.IoT Build 0:6ae2f7bca550 9995 TARGET_HANDLE target_create(void)
Azure.IoT Build 0:6ae2f7bca550 9996 {
Azure.IoT Build 0:6ae2f7bca550 9997 TARGET_INSTANCE* target_instance = (TARGET_INSTANCE*)amqpalloc_malloc(sizeof(TARGET_INSTANCE));
Azure.IoT Build 0:6ae2f7bca550 9998 if (target_instance != NULL)
Azure.IoT Build 0:6ae2f7bca550 9999 {
Azure.IoT Build 0:6ae2f7bca550 10000 target_instance->composite_value = amqpvalue_create_composite_with_ulong_descriptor(41);
Azure.IoT Build 0:6ae2f7bca550 10001 if (target_instance->composite_value == NULL)
Azure.IoT Build 0:6ae2f7bca550 10002 {
Azure.IoT Build 0:6ae2f7bca550 10003 amqpalloc_free(target_instance);
Azure.IoT Build 0:6ae2f7bca550 10004 target_instance = NULL;
Azure.IoT Build 0:6ae2f7bca550 10005 }
Azure.IoT Build 0:6ae2f7bca550 10006 }
Azure.IoT Build 0:6ae2f7bca550 10007
Azure.IoT Build 0:6ae2f7bca550 10008 return target_instance;
Azure.IoT Build 0:6ae2f7bca550 10009 }
Azure.IoT Build 0:6ae2f7bca550 10010
Azure.IoT Build 0:6ae2f7bca550 10011 TARGET_HANDLE target_clone(TARGET_HANDLE value)
Azure.IoT Build 0:6ae2f7bca550 10012 {
Azure.IoT Build 0:6ae2f7bca550 10013 TARGET_INSTANCE* target_instance = (TARGET_INSTANCE*)amqpalloc_malloc(sizeof(TARGET_INSTANCE));
Azure.IoT Build 0:6ae2f7bca550 10014 if (target_instance != NULL)
Azure.IoT Build 0:6ae2f7bca550 10015 {
Azure.IoT Build 0:6ae2f7bca550 10016 target_instance->composite_value = amqpvalue_clone(((TARGET_INSTANCE*)value)->composite_value);
Azure.IoT Build 0:6ae2f7bca550 10017 if (target_instance->composite_value == NULL)
Azure.IoT Build 0:6ae2f7bca550 10018 {
Azure.IoT Build 0:6ae2f7bca550 10019 amqpalloc_free(target_instance);
Azure.IoT Build 0:6ae2f7bca550 10020 target_instance = NULL;
Azure.IoT Build 0:6ae2f7bca550 10021 }
Azure.IoT Build 0:6ae2f7bca550 10022 }
Azure.IoT Build 0:6ae2f7bca550 10023
Azure.IoT Build 0:6ae2f7bca550 10024 return target_instance;
Azure.IoT Build 0:6ae2f7bca550 10025 }
Azure.IoT Build 0:6ae2f7bca550 10026
Azure.IoT Build 0:6ae2f7bca550 10027 void target_destroy(TARGET_HANDLE target)
Azure.IoT Build 0:6ae2f7bca550 10028 {
Azure.IoT Build 0:6ae2f7bca550 10029 if (target != NULL)
Azure.IoT Build 0:6ae2f7bca550 10030 {
Azure.IoT Build 0:6ae2f7bca550 10031 TARGET_INSTANCE* target_instance = (TARGET_INSTANCE*)target;
Azure.IoT Build 0:6ae2f7bca550 10032 amqpvalue_destroy(target_instance->composite_value);
Azure.IoT Build 0:6ae2f7bca550 10033 amqpalloc_free(target_instance);
Azure.IoT Build 0:6ae2f7bca550 10034 }
Azure.IoT Build 0:6ae2f7bca550 10035 }
Azure.IoT Build 0:6ae2f7bca550 10036
Azure.IoT Build 0:6ae2f7bca550 10037 AMQP_VALUE amqpvalue_create_target(TARGET_HANDLE target)
Azure.IoT Build 0:6ae2f7bca550 10038 {
Azure.IoT Build 0:6ae2f7bca550 10039 AMQP_VALUE result;
Azure.IoT Build 0:6ae2f7bca550 10040
Azure.IoT Build 0:6ae2f7bca550 10041 if (target == NULL)
Azure.IoT Build 0:6ae2f7bca550 10042 {
Azure.IoT Build 0:6ae2f7bca550 10043 result = NULL;
Azure.IoT Build 0:6ae2f7bca550 10044 }
Azure.IoT Build 0:6ae2f7bca550 10045 else
Azure.IoT Build 0:6ae2f7bca550 10046 {
Azure.IoT Build 0:6ae2f7bca550 10047 TARGET_INSTANCE* target_instance = (TARGET_INSTANCE*)target;
Azure.IoT Build 0:6ae2f7bca550 10048 result = amqpvalue_clone(target_instance->composite_value);
Azure.IoT Build 0:6ae2f7bca550 10049 }
Azure.IoT Build 0:6ae2f7bca550 10050
Azure.IoT Build 0:6ae2f7bca550 10051 return result;
Azure.IoT Build 0:6ae2f7bca550 10052 }
Azure.IoT Build 0:6ae2f7bca550 10053
Azure.IoT Build 0:6ae2f7bca550 10054 bool is_target_type_by_descriptor(AMQP_VALUE descriptor)
Azure.IoT Build 0:6ae2f7bca550 10055 {
Azure.IoT Build 0:6ae2f7bca550 10056 bool result;
Azure.IoT Build 0:6ae2f7bca550 10057
Azure.IoT Build 0:6ae2f7bca550 10058 uint64_t descriptor_ulong;
Azure.IoT Build 0:6ae2f7bca550 10059 if ((amqpvalue_get_ulong(descriptor, &descriptor_ulong) == 0) &&
Azure.IoT Build 0:6ae2f7bca550 10060 (descriptor_ulong == 41))
Azure.IoT Build 0:6ae2f7bca550 10061 {
Azure.IoT Build 0:6ae2f7bca550 10062 result = true;
Azure.IoT Build 0:6ae2f7bca550 10063 }
Azure.IoT Build 0:6ae2f7bca550 10064 else
Azure.IoT Build 0:6ae2f7bca550 10065 {
Azure.IoT Build 0:6ae2f7bca550 10066 result = false;
Azure.IoT Build 0:6ae2f7bca550 10067 }
Azure.IoT Build 0:6ae2f7bca550 10068
Azure.IoT Build 0:6ae2f7bca550 10069 return result;
Azure.IoT Build 0:6ae2f7bca550 10070 }
Azure.IoT Build 0:6ae2f7bca550 10071
Azure.IoT Build 0:6ae2f7bca550 10072
Azure.IoT Build 0:6ae2f7bca550 10073 int amqpvalue_get_target(AMQP_VALUE value, TARGET_HANDLE* target_handle)
Azure.IoT Build 0:6ae2f7bca550 10074 {
Azure.IoT Build 0:6ae2f7bca550 10075 int result;
Azure.IoT Build 0:6ae2f7bca550 10076 TARGET_INSTANCE* target_instance = (TARGET_INSTANCE*)target_create_internal();
Azure.IoT Build 0:6ae2f7bca550 10077 *target_handle = target_instance;
Azure.IoT Build 0:6ae2f7bca550 10078 if (*target_handle == NULL)
Azure.IoT Build 0:6ae2f7bca550 10079 {
Azure.IoT Build 0:6ae2f7bca550 10080 result = __LINE__;
Azure.IoT Build 0:6ae2f7bca550 10081 }
Azure.IoT Build 0:6ae2f7bca550 10082 else
Azure.IoT Build 0:6ae2f7bca550 10083 {
Azure.IoT Build 0:6ae2f7bca550 10084 AMQP_VALUE list_value = amqpvalue_get_inplace_described_value(value);
Azure.IoT Build 0:6ae2f7bca550 10085 if (list_value == NULL)
Azure.IoT Build 0:6ae2f7bca550 10086 {
Azure.IoT Build 0:6ae2f7bca550 10087 target_destroy(*target_handle);
Azure.IoT Build 0:6ae2f7bca550 10088 result = __LINE__;
Azure.IoT Build 0:6ae2f7bca550 10089 }
Azure.IoT Build 0:6ae2f7bca550 10090 else
Azure.IoT Build 0:6ae2f7bca550 10091 {
Azure.IoT Build 0:6ae2f7bca550 10092 do
Azure.IoT Build 0:6ae2f7bca550 10093 {
Azure.IoT Build 0:6ae2f7bca550 10094 AMQP_VALUE item_value;
Azure.IoT Build 0:6ae2f7bca550 10095 /* address */
Azure.IoT Build 0:6ae2f7bca550 10096 item_value = amqpvalue_get_list_item(list_value, 0);
Azure.IoT Build 0:6ae2f7bca550 10097 if (item_value == NULL)
Azure.IoT Build 0:6ae2f7bca550 10098 {
Azure.IoT Build 0:6ae2f7bca550 10099 /* do nothing */
Azure.IoT Build 0:6ae2f7bca550 10100 }
Azure.IoT Build 0:6ae2f7bca550 10101 else
Azure.IoT Build 0:6ae2f7bca550 10102 {
Azure.IoT Build 0:6ae2f7bca550 10103 amqpvalue_destroy(item_value);
Azure.IoT Build 0:6ae2f7bca550 10104 }
Azure.IoT Build 0:6ae2f7bca550 10105 /* durable */
Azure.IoT Build 0:6ae2f7bca550 10106 item_value = amqpvalue_get_list_item(list_value, 1);
Azure.IoT Build 0:6ae2f7bca550 10107 if (item_value == NULL)
Azure.IoT Build 0:6ae2f7bca550 10108 {
Azure.IoT Build 0:6ae2f7bca550 10109 /* do nothing */
Azure.IoT Build 0:6ae2f7bca550 10110 }
Azure.IoT Build 0:6ae2f7bca550 10111 else
Azure.IoT Build 0:6ae2f7bca550 10112 {
Azure.IoT Build 0:6ae2f7bca550 10113 terminus_durability durable;
Azure.IoT Build 0:6ae2f7bca550 10114 if (amqpvalue_get_terminus_durability(item_value, &durable) != 0)
Azure.IoT Build 0:6ae2f7bca550 10115 {
Azure.IoT Build 0:6ae2f7bca550 10116 if (amqpvalue_get_type(item_value) != AMQP_TYPE_NULL)
Azure.IoT Build 0:6ae2f7bca550 10117 {
Azure.IoT Build 0:6ae2f7bca550 10118 target_destroy(*target_handle);
Azure.IoT Build 0:6ae2f7bca550 10119 result = __LINE__;
Azure.IoT Build 0:6ae2f7bca550 10120 break;
Azure.IoT Build 0:6ae2f7bca550 10121 }
Azure.IoT Build 0:6ae2f7bca550 10122 }
Azure.IoT Build 0:6ae2f7bca550 10123
Azure.IoT Build 0:6ae2f7bca550 10124 amqpvalue_destroy(item_value);
Azure.IoT Build 0:6ae2f7bca550 10125 }
Azure.IoT Build 0:6ae2f7bca550 10126 /* expiry-policy */
Azure.IoT Build 0:6ae2f7bca550 10127 item_value = amqpvalue_get_list_item(list_value, 2);
Azure.IoT Build 0:6ae2f7bca550 10128 if (item_value == NULL)
Azure.IoT Build 0:6ae2f7bca550 10129 {
Azure.IoT Build 0:6ae2f7bca550 10130 /* do nothing */
Azure.IoT Build 0:6ae2f7bca550 10131 }
Azure.IoT Build 0:6ae2f7bca550 10132 else
Azure.IoT Build 0:6ae2f7bca550 10133 {
Azure.IoT Build 0:6ae2f7bca550 10134 terminus_expiry_policy expiry_policy;
Azure.IoT Build 0:6ae2f7bca550 10135 if (amqpvalue_get_terminus_expiry_policy(item_value, &expiry_policy) != 0)
Azure.IoT Build 0:6ae2f7bca550 10136 {
Azure.IoT Build 0:6ae2f7bca550 10137 if (amqpvalue_get_type(item_value) != AMQP_TYPE_NULL)
Azure.IoT Build 0:6ae2f7bca550 10138 {
Azure.IoT Build 0:6ae2f7bca550 10139 target_destroy(*target_handle);
Azure.IoT Build 0:6ae2f7bca550 10140 result = __LINE__;
Azure.IoT Build 0:6ae2f7bca550 10141 break;
Azure.IoT Build 0:6ae2f7bca550 10142 }
Azure.IoT Build 0:6ae2f7bca550 10143 }
Azure.IoT Build 0:6ae2f7bca550 10144
Azure.IoT Build 0:6ae2f7bca550 10145 amqpvalue_destroy(item_value);
Azure.IoT Build 0:6ae2f7bca550 10146 }
Azure.IoT Build 0:6ae2f7bca550 10147 /* timeout */
Azure.IoT Build 0:6ae2f7bca550 10148 item_value = amqpvalue_get_list_item(list_value, 3);
Azure.IoT Build 0:6ae2f7bca550 10149 if (item_value == NULL)
Azure.IoT Build 0:6ae2f7bca550 10150 {
Azure.IoT Build 0:6ae2f7bca550 10151 /* do nothing */
Azure.IoT Build 0:6ae2f7bca550 10152 }
Azure.IoT Build 0:6ae2f7bca550 10153 else
Azure.IoT Build 0:6ae2f7bca550 10154 {
Azure.IoT Build 0:6ae2f7bca550 10155 seconds timeout;
Azure.IoT Build 0:6ae2f7bca550 10156 if (amqpvalue_get_seconds(item_value, &timeout) != 0)
Azure.IoT Build 0:6ae2f7bca550 10157 {
Azure.IoT Build 0:6ae2f7bca550 10158 if (amqpvalue_get_type(item_value) != AMQP_TYPE_NULL)
Azure.IoT Build 0:6ae2f7bca550 10159 {
Azure.IoT Build 0:6ae2f7bca550 10160 target_destroy(*target_handle);
Azure.IoT Build 0:6ae2f7bca550 10161 result = __LINE__;
Azure.IoT Build 0:6ae2f7bca550 10162 break;
Azure.IoT Build 0:6ae2f7bca550 10163 }
Azure.IoT Build 0:6ae2f7bca550 10164 }
Azure.IoT Build 0:6ae2f7bca550 10165
Azure.IoT Build 0:6ae2f7bca550 10166 amqpvalue_destroy(item_value);
Azure.IoT Build 0:6ae2f7bca550 10167 }
Azure.IoT Build 0:6ae2f7bca550 10168 /* dynamic */
Azure.IoT Build 0:6ae2f7bca550 10169 item_value = amqpvalue_get_list_item(list_value, 4);
Azure.IoT Build 0:6ae2f7bca550 10170 if (item_value == NULL)
Azure.IoT Build 0:6ae2f7bca550 10171 {
Azure.IoT Build 0:6ae2f7bca550 10172 /* do nothing */
Azure.IoT Build 0:6ae2f7bca550 10173 }
Azure.IoT Build 0:6ae2f7bca550 10174 else
Azure.IoT Build 0:6ae2f7bca550 10175 {
Azure.IoT Build 0:6ae2f7bca550 10176 bool dynamic;
Azure.IoT Build 0:6ae2f7bca550 10177 if (amqpvalue_get_boolean(item_value, &dynamic) != 0)
Azure.IoT Build 0:6ae2f7bca550 10178 {
Azure.IoT Build 0:6ae2f7bca550 10179 if (amqpvalue_get_type(item_value) != AMQP_TYPE_NULL)
Azure.IoT Build 0:6ae2f7bca550 10180 {
Azure.IoT Build 0:6ae2f7bca550 10181 target_destroy(*target_handle);
Azure.IoT Build 0:6ae2f7bca550 10182 result = __LINE__;
Azure.IoT Build 0:6ae2f7bca550 10183 break;
Azure.IoT Build 0:6ae2f7bca550 10184 }
Azure.IoT Build 0:6ae2f7bca550 10185 }
Azure.IoT Build 0:6ae2f7bca550 10186
Azure.IoT Build 0:6ae2f7bca550 10187 amqpvalue_destroy(item_value);
Azure.IoT Build 0:6ae2f7bca550 10188 }
Azure.IoT Build 0:6ae2f7bca550 10189 /* dynamic-node-properties */
Azure.IoT Build 0:6ae2f7bca550 10190 item_value = amqpvalue_get_list_item(list_value, 5);
Azure.IoT Build 0:6ae2f7bca550 10191 if (item_value == NULL)
Azure.IoT Build 0:6ae2f7bca550 10192 {
Azure.IoT Build 0:6ae2f7bca550 10193 /* do nothing */
Azure.IoT Build 0:6ae2f7bca550 10194 }
Azure.IoT Build 0:6ae2f7bca550 10195 else
Azure.IoT Build 0:6ae2f7bca550 10196 {
Azure.IoT Build 0:6ae2f7bca550 10197 node_properties dynamic_node_properties;
Azure.IoT Build 0:6ae2f7bca550 10198 if (amqpvalue_get_node_properties(item_value, &dynamic_node_properties) != 0)
Azure.IoT Build 0:6ae2f7bca550 10199 {
Azure.IoT Build 0:6ae2f7bca550 10200 if (amqpvalue_get_type(item_value) != AMQP_TYPE_NULL)
Azure.IoT Build 0:6ae2f7bca550 10201 {
Azure.IoT Build 0:6ae2f7bca550 10202 target_destroy(*target_handle);
Azure.IoT Build 0:6ae2f7bca550 10203 result = __LINE__;
Azure.IoT Build 0:6ae2f7bca550 10204 break;
Azure.IoT Build 0:6ae2f7bca550 10205 }
Azure.IoT Build 0:6ae2f7bca550 10206 }
Azure.IoT Build 0:6ae2f7bca550 10207
Azure.IoT Build 0:6ae2f7bca550 10208 amqpvalue_destroy(item_value);
Azure.IoT Build 0:6ae2f7bca550 10209 }
Azure.IoT Build 0:6ae2f7bca550 10210 /* capabilities */
Azure.IoT Build 0:6ae2f7bca550 10211 item_value = amqpvalue_get_list_item(list_value, 6);
Azure.IoT Build 0:6ae2f7bca550 10212 if (item_value == NULL)
Azure.IoT Build 0:6ae2f7bca550 10213 {
Azure.IoT Build 0:6ae2f7bca550 10214 /* do nothing */
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 const char* capabilities;
Azure.IoT Build 0:6ae2f7bca550 10219 AMQP_VALUE capabilities_array;
Azure.IoT Build 0:6ae2f7bca550 10220 if ((amqpvalue_get_array(item_value, &capabilities_array) != 0) &&
Azure.IoT Build 0:6ae2f7bca550 10221 (amqpvalue_get_symbol(item_value, &capabilities) != 0))
Azure.IoT Build 0:6ae2f7bca550 10222 {
Azure.IoT Build 0:6ae2f7bca550 10223 if (amqpvalue_get_type(item_value) != AMQP_TYPE_NULL)
Azure.IoT Build 0:6ae2f7bca550 10224 {
Azure.IoT Build 0:6ae2f7bca550 10225 target_destroy(*target_handle);
Azure.IoT Build 0:6ae2f7bca550 10226 result = __LINE__;
Azure.IoT Build 0:6ae2f7bca550 10227 break;
Azure.IoT Build 0:6ae2f7bca550 10228 }
Azure.IoT Build 0:6ae2f7bca550 10229 }
Azure.IoT Build 0:6ae2f7bca550 10230
Azure.IoT Build 0:6ae2f7bca550 10231 amqpvalue_destroy(item_value);
Azure.IoT Build 0:6ae2f7bca550 10232 }
Azure.IoT Build 0:6ae2f7bca550 10233
Azure.IoT Build 0:6ae2f7bca550 10234 target_instance->composite_value = amqpvalue_clone(value);
Azure.IoT Build 0:6ae2f7bca550 10235
Azure.IoT Build 0:6ae2f7bca550 10236 result = 0;
Azure.IoT Build 0:6ae2f7bca550 10237 } while (0);
Azure.IoT Build 0:6ae2f7bca550 10238 }
Azure.IoT Build 0:6ae2f7bca550 10239 }
Azure.IoT Build 0:6ae2f7bca550 10240
Azure.IoT Build 0:6ae2f7bca550 10241 return result;
Azure.IoT Build 0:6ae2f7bca550 10242 }
Azure.IoT Build 0:6ae2f7bca550 10243
Azure.IoT Build 0:6ae2f7bca550 10244 int target_get_address(TARGET_HANDLE target, AMQP_VALUE* address_value)
Azure.IoT Build 0:6ae2f7bca550 10245 {
Azure.IoT Build 0:6ae2f7bca550 10246 int result;
Azure.IoT Build 0:6ae2f7bca550 10247
Azure.IoT Build 0:6ae2f7bca550 10248 if (target == NULL)
Azure.IoT Build 0:6ae2f7bca550 10249 {
Azure.IoT Build 0:6ae2f7bca550 10250 result = __LINE__;
Azure.IoT Build 0:6ae2f7bca550 10251 }
Azure.IoT Build 0:6ae2f7bca550 10252 else
Azure.IoT Build 0:6ae2f7bca550 10253 {
Azure.IoT Build 0:6ae2f7bca550 10254 TARGET_INSTANCE* target_instance = (TARGET_INSTANCE*)target;
Azure.IoT Build 0:6ae2f7bca550 10255 AMQP_VALUE item_value = amqpvalue_get_composite_item_in_place(target_instance->composite_value, 0);
Azure.IoT Build 0:6ae2f7bca550 10256 if (item_value == NULL)
Azure.IoT Build 0:6ae2f7bca550 10257 {
Azure.IoT Build 0:6ae2f7bca550 10258 result = __LINE__;
Azure.IoT Build 0:6ae2f7bca550 10259 }
Azure.IoT Build 0:6ae2f7bca550 10260 else
Azure.IoT Build 0:6ae2f7bca550 10261 {
Azure.IoT Build 0:6ae2f7bca550 10262 *address_value = item_value;
Azure.IoT Build 0:6ae2f7bca550 10263 result = 0;
Azure.IoT Build 0:6ae2f7bca550 10264 }
Azure.IoT Build 0:6ae2f7bca550 10265 }
Azure.IoT Build 0:6ae2f7bca550 10266
Azure.IoT Build 0:6ae2f7bca550 10267 return result;
Azure.IoT Build 0:6ae2f7bca550 10268 }
Azure.IoT Build 0:6ae2f7bca550 10269
Azure.IoT Build 0:6ae2f7bca550 10270 int target_set_address(TARGET_HANDLE target, AMQP_VALUE address_value)
Azure.IoT Build 0:6ae2f7bca550 10271 {
Azure.IoT Build 0:6ae2f7bca550 10272 int result;
Azure.IoT Build 0:6ae2f7bca550 10273
Azure.IoT Build 0:6ae2f7bca550 10274 if (target == NULL)
Azure.IoT Build 0:6ae2f7bca550 10275 {
Azure.IoT Build 0:6ae2f7bca550 10276 result = __LINE__;
Azure.IoT Build 0:6ae2f7bca550 10277 }
Azure.IoT Build 0:6ae2f7bca550 10278 else
Azure.IoT Build 0:6ae2f7bca550 10279 {
Azure.IoT Build 0:6ae2f7bca550 10280 TARGET_INSTANCE* target_instance = (TARGET_INSTANCE*)target;
Azure.IoT Build 0:6ae2f7bca550 10281 AMQP_VALUE address_amqp_value = amqpvalue_clone(address_value);
Azure.IoT Build 0:6ae2f7bca550 10282 if (address_amqp_value == NULL)
Azure.IoT Build 0:6ae2f7bca550 10283 {
Azure.IoT Build 0:6ae2f7bca550 10284 result = __LINE__;
Azure.IoT Build 0:6ae2f7bca550 10285 }
Azure.IoT Build 0:6ae2f7bca550 10286 else
Azure.IoT Build 0:6ae2f7bca550 10287 {
Azure.IoT Build 0:6ae2f7bca550 10288 if (amqpvalue_set_composite_item(target_instance->composite_value, 0, address_amqp_value) != 0)
Azure.IoT Build 0:6ae2f7bca550 10289 {
Azure.IoT Build 0:6ae2f7bca550 10290 result = __LINE__;
Azure.IoT Build 0:6ae2f7bca550 10291 }
Azure.IoT Build 0:6ae2f7bca550 10292 else
Azure.IoT Build 0:6ae2f7bca550 10293 {
Azure.IoT Build 0:6ae2f7bca550 10294 result = 0;
Azure.IoT Build 0:6ae2f7bca550 10295 }
Azure.IoT Build 0:6ae2f7bca550 10296
Azure.IoT Build 0:6ae2f7bca550 10297 amqpvalue_destroy(address_amqp_value);
Azure.IoT Build 0:6ae2f7bca550 10298 }
Azure.IoT Build 0:6ae2f7bca550 10299 }
Azure.IoT Build 0:6ae2f7bca550 10300
Azure.IoT Build 0:6ae2f7bca550 10301 return result;
Azure.IoT Build 0:6ae2f7bca550 10302 }
Azure.IoT Build 0:6ae2f7bca550 10303
Azure.IoT Build 0:6ae2f7bca550 10304 int target_get_durable(TARGET_HANDLE target, terminus_durability* durable_value)
Azure.IoT Build 0:6ae2f7bca550 10305 {
Azure.IoT Build 0:6ae2f7bca550 10306 int result;
Azure.IoT Build 0:6ae2f7bca550 10307
Azure.IoT Build 0:6ae2f7bca550 10308 if (target == NULL)
Azure.IoT Build 0:6ae2f7bca550 10309 {
Azure.IoT Build 0:6ae2f7bca550 10310 result = __LINE__;
Azure.IoT Build 0:6ae2f7bca550 10311 }
Azure.IoT Build 0:6ae2f7bca550 10312 else
Azure.IoT Build 0:6ae2f7bca550 10313 {
Azure.IoT Build 0:6ae2f7bca550 10314 TARGET_INSTANCE* target_instance = (TARGET_INSTANCE*)target;
Azure.IoT Build 0:6ae2f7bca550 10315 AMQP_VALUE item_value = amqpvalue_get_composite_item_in_place(target_instance->composite_value, 1);
Azure.IoT Build 0:6ae2f7bca550 10316 if (item_value == NULL)
Azure.IoT Build 0:6ae2f7bca550 10317 {
Azure.IoT Build 0:6ae2f7bca550 10318 result = __LINE__;
Azure.IoT Build 0:6ae2f7bca550 10319 }
Azure.IoT Build 0:6ae2f7bca550 10320 else
Azure.IoT Build 0:6ae2f7bca550 10321 {
Azure.IoT Build 0:6ae2f7bca550 10322 if (amqpvalue_get_terminus_durability(item_value, durable_value) != 0)
Azure.IoT Build 0:6ae2f7bca550 10323 {
Azure.IoT Build 0:6ae2f7bca550 10324 result = __LINE__;
Azure.IoT Build 0:6ae2f7bca550 10325 }
Azure.IoT Build 0:6ae2f7bca550 10326 else
Azure.IoT Build 0:6ae2f7bca550 10327 {
Azure.IoT Build 0:6ae2f7bca550 10328 result = 0;
Azure.IoT Build 0:6ae2f7bca550 10329 }
Azure.IoT Build 0:6ae2f7bca550 10330 }
Azure.IoT Build 0:6ae2f7bca550 10331 }
Azure.IoT Build 0:6ae2f7bca550 10332
Azure.IoT Build 0:6ae2f7bca550 10333 return result;
Azure.IoT Build 0:6ae2f7bca550 10334 }
Azure.IoT Build 0:6ae2f7bca550 10335
Azure.IoT Build 0:6ae2f7bca550 10336 int target_set_durable(TARGET_HANDLE target, terminus_durability durable_value)
Azure.IoT Build 0:6ae2f7bca550 10337 {
Azure.IoT Build 0:6ae2f7bca550 10338 int result;
Azure.IoT Build 0:6ae2f7bca550 10339
Azure.IoT Build 0:6ae2f7bca550 10340 if (target == NULL)
Azure.IoT Build 0:6ae2f7bca550 10341 {
Azure.IoT Build 0:6ae2f7bca550 10342 result = __LINE__;
Azure.IoT Build 0:6ae2f7bca550 10343 }
Azure.IoT Build 0:6ae2f7bca550 10344 else
Azure.IoT Build 0:6ae2f7bca550 10345 {
Azure.IoT Build 0:6ae2f7bca550 10346 TARGET_INSTANCE* target_instance = (TARGET_INSTANCE*)target;
Azure.IoT Build 0:6ae2f7bca550 10347 AMQP_VALUE durable_amqp_value = amqpvalue_create_terminus_durability(durable_value);
Azure.IoT Build 0:6ae2f7bca550 10348 if (durable_amqp_value == NULL)
Azure.IoT Build 0:6ae2f7bca550 10349 {
Azure.IoT Build 0:6ae2f7bca550 10350 result = __LINE__;
Azure.IoT Build 0:6ae2f7bca550 10351 }
Azure.IoT Build 0:6ae2f7bca550 10352 else
Azure.IoT Build 0:6ae2f7bca550 10353 {
Azure.IoT Build 0:6ae2f7bca550 10354 if (amqpvalue_set_composite_item(target_instance->composite_value, 1, durable_amqp_value) != 0)
Azure.IoT Build 0:6ae2f7bca550 10355 {
Azure.IoT Build 0:6ae2f7bca550 10356 result = __LINE__;
Azure.IoT Build 0:6ae2f7bca550 10357 }
Azure.IoT Build 0:6ae2f7bca550 10358 else
Azure.IoT Build 0:6ae2f7bca550 10359 {
Azure.IoT Build 0:6ae2f7bca550 10360 result = 0;
Azure.IoT Build 0:6ae2f7bca550 10361 }
Azure.IoT Build 0:6ae2f7bca550 10362
Azure.IoT Build 0:6ae2f7bca550 10363 amqpvalue_destroy(durable_amqp_value);
Azure.IoT Build 0:6ae2f7bca550 10364 }
Azure.IoT Build 0:6ae2f7bca550 10365 }
Azure.IoT Build 0:6ae2f7bca550 10366
Azure.IoT Build 0:6ae2f7bca550 10367 return result;
Azure.IoT Build 0:6ae2f7bca550 10368 }
Azure.IoT Build 0:6ae2f7bca550 10369
Azure.IoT Build 0:6ae2f7bca550 10370 int target_get_expiry_policy(TARGET_HANDLE target, terminus_expiry_policy* expiry_policy_value)
Azure.IoT Build 0:6ae2f7bca550 10371 {
Azure.IoT Build 0:6ae2f7bca550 10372 int result;
Azure.IoT Build 0:6ae2f7bca550 10373
Azure.IoT Build 0:6ae2f7bca550 10374 if (target == NULL)
Azure.IoT Build 0:6ae2f7bca550 10375 {
Azure.IoT Build 0:6ae2f7bca550 10376 result = __LINE__;
Azure.IoT Build 0:6ae2f7bca550 10377 }
Azure.IoT Build 0:6ae2f7bca550 10378 else
Azure.IoT Build 0:6ae2f7bca550 10379 {
Azure.IoT Build 0:6ae2f7bca550 10380 TARGET_INSTANCE* target_instance = (TARGET_INSTANCE*)target;
Azure.IoT Build 0:6ae2f7bca550 10381 AMQP_VALUE item_value = amqpvalue_get_composite_item_in_place(target_instance->composite_value, 2);
Azure.IoT Build 0:6ae2f7bca550 10382 if (item_value == NULL)
Azure.IoT Build 0:6ae2f7bca550 10383 {
Azure.IoT Build 0:6ae2f7bca550 10384 result = __LINE__;
Azure.IoT Build 0:6ae2f7bca550 10385 }
Azure.IoT Build 0:6ae2f7bca550 10386 else
Azure.IoT Build 0:6ae2f7bca550 10387 {
Azure.IoT Build 0:6ae2f7bca550 10388 if (amqpvalue_get_terminus_expiry_policy(item_value, expiry_policy_value) != 0)
Azure.IoT Build 0:6ae2f7bca550 10389 {
Azure.IoT Build 0:6ae2f7bca550 10390 result = __LINE__;
Azure.IoT Build 0:6ae2f7bca550 10391 }
Azure.IoT Build 0:6ae2f7bca550 10392 else
Azure.IoT Build 0:6ae2f7bca550 10393 {
Azure.IoT Build 0:6ae2f7bca550 10394 result = 0;
Azure.IoT Build 0:6ae2f7bca550 10395 }
Azure.IoT Build 0:6ae2f7bca550 10396 }
Azure.IoT Build 0:6ae2f7bca550 10397 }
Azure.IoT Build 0:6ae2f7bca550 10398
Azure.IoT Build 0:6ae2f7bca550 10399 return result;
Azure.IoT Build 0:6ae2f7bca550 10400 }
Azure.IoT Build 0:6ae2f7bca550 10401
Azure.IoT Build 0:6ae2f7bca550 10402 int target_set_expiry_policy(TARGET_HANDLE target, terminus_expiry_policy expiry_policy_value)
Azure.IoT Build 0:6ae2f7bca550 10403 {
Azure.IoT Build 0:6ae2f7bca550 10404 int result;
Azure.IoT Build 0:6ae2f7bca550 10405
Azure.IoT Build 0:6ae2f7bca550 10406 if (target == NULL)
Azure.IoT Build 0:6ae2f7bca550 10407 {
Azure.IoT Build 0:6ae2f7bca550 10408 result = __LINE__;
Azure.IoT Build 0:6ae2f7bca550 10409 }
Azure.IoT Build 0:6ae2f7bca550 10410 else
Azure.IoT Build 0:6ae2f7bca550 10411 {
Azure.IoT Build 0:6ae2f7bca550 10412 TARGET_INSTANCE* target_instance = (TARGET_INSTANCE*)target;
Azure.IoT Build 0:6ae2f7bca550 10413 AMQP_VALUE expiry_policy_amqp_value = amqpvalue_create_terminus_expiry_policy(expiry_policy_value);
Azure.IoT Build 0:6ae2f7bca550 10414 if (expiry_policy_amqp_value == NULL)
Azure.IoT Build 0:6ae2f7bca550 10415 {
Azure.IoT Build 0:6ae2f7bca550 10416 result = __LINE__;
Azure.IoT Build 0:6ae2f7bca550 10417 }
Azure.IoT Build 0:6ae2f7bca550 10418 else
Azure.IoT Build 0:6ae2f7bca550 10419 {
Azure.IoT Build 0:6ae2f7bca550 10420 if (amqpvalue_set_composite_item(target_instance->composite_value, 2, expiry_policy_amqp_value) != 0)
Azure.IoT Build 0:6ae2f7bca550 10421 {
Azure.IoT Build 0:6ae2f7bca550 10422 result = __LINE__;
Azure.IoT Build 0:6ae2f7bca550 10423 }
Azure.IoT Build 0:6ae2f7bca550 10424 else
Azure.IoT Build 0:6ae2f7bca550 10425 {
Azure.IoT Build 0:6ae2f7bca550 10426 result = 0;
Azure.IoT Build 0:6ae2f7bca550 10427 }
Azure.IoT Build 0:6ae2f7bca550 10428
Azure.IoT Build 0:6ae2f7bca550 10429 amqpvalue_destroy(expiry_policy_amqp_value);
Azure.IoT Build 0:6ae2f7bca550 10430 }
Azure.IoT Build 0:6ae2f7bca550 10431 }
Azure.IoT Build 0:6ae2f7bca550 10432
Azure.IoT Build 0:6ae2f7bca550 10433 return result;
Azure.IoT Build 0:6ae2f7bca550 10434 }
Azure.IoT Build 0:6ae2f7bca550 10435
Azure.IoT Build 0:6ae2f7bca550 10436 int target_get_timeout(TARGET_HANDLE target, seconds* timeout_value)
Azure.IoT Build 0:6ae2f7bca550 10437 {
Azure.IoT Build 0:6ae2f7bca550 10438 int result;
Azure.IoT Build 0:6ae2f7bca550 10439
Azure.IoT Build 0:6ae2f7bca550 10440 if (target == NULL)
Azure.IoT Build 0:6ae2f7bca550 10441 {
Azure.IoT Build 0:6ae2f7bca550 10442 result = __LINE__;
Azure.IoT Build 0:6ae2f7bca550 10443 }
Azure.IoT Build 0:6ae2f7bca550 10444 else
Azure.IoT Build 0:6ae2f7bca550 10445 {
Azure.IoT Build 0:6ae2f7bca550 10446 TARGET_INSTANCE* target_instance = (TARGET_INSTANCE*)target;
Azure.IoT Build 0:6ae2f7bca550 10447 AMQP_VALUE item_value = amqpvalue_get_composite_item_in_place(target_instance->composite_value, 3);
Azure.IoT Build 0:6ae2f7bca550 10448 if (item_value == NULL)
Azure.IoT Build 0:6ae2f7bca550 10449 {
Azure.IoT Build 0:6ae2f7bca550 10450 result = __LINE__;
Azure.IoT Build 0:6ae2f7bca550 10451 }
Azure.IoT Build 0:6ae2f7bca550 10452 else
Azure.IoT Build 0:6ae2f7bca550 10453 {
Azure.IoT Build 0:6ae2f7bca550 10454 if (amqpvalue_get_seconds(item_value, timeout_value) != 0)
Azure.IoT Build 0:6ae2f7bca550 10455 {
Azure.IoT Build 0:6ae2f7bca550 10456 result = __LINE__;
Azure.IoT Build 0:6ae2f7bca550 10457 }
Azure.IoT Build 0:6ae2f7bca550 10458 else
Azure.IoT Build 0:6ae2f7bca550 10459 {
Azure.IoT Build 0:6ae2f7bca550 10460 result = 0;
Azure.IoT Build 0:6ae2f7bca550 10461 }
Azure.IoT Build 0:6ae2f7bca550 10462 }
Azure.IoT Build 0:6ae2f7bca550 10463 }
Azure.IoT Build 0:6ae2f7bca550 10464
Azure.IoT Build 0:6ae2f7bca550 10465 return result;
Azure.IoT Build 0:6ae2f7bca550 10466 }
Azure.IoT Build 0:6ae2f7bca550 10467
Azure.IoT Build 0:6ae2f7bca550 10468 int target_set_timeout(TARGET_HANDLE target, seconds timeout_value)
Azure.IoT Build 0:6ae2f7bca550 10469 {
Azure.IoT Build 0:6ae2f7bca550 10470 int result;
Azure.IoT Build 0:6ae2f7bca550 10471
Azure.IoT Build 0:6ae2f7bca550 10472 if (target == NULL)
Azure.IoT Build 0:6ae2f7bca550 10473 {
Azure.IoT Build 0:6ae2f7bca550 10474 result = __LINE__;
Azure.IoT Build 0:6ae2f7bca550 10475 }
Azure.IoT Build 0:6ae2f7bca550 10476 else
Azure.IoT Build 0:6ae2f7bca550 10477 {
Azure.IoT Build 0:6ae2f7bca550 10478 TARGET_INSTANCE* target_instance = (TARGET_INSTANCE*)target;
Azure.IoT Build 0:6ae2f7bca550 10479 AMQP_VALUE timeout_amqp_value = amqpvalue_create_seconds(timeout_value);
Azure.IoT Build 0:6ae2f7bca550 10480 if (timeout_amqp_value == NULL)
Azure.IoT Build 0:6ae2f7bca550 10481 {
Azure.IoT Build 0:6ae2f7bca550 10482 result = __LINE__;
Azure.IoT Build 0:6ae2f7bca550 10483 }
Azure.IoT Build 0:6ae2f7bca550 10484 else
Azure.IoT Build 0:6ae2f7bca550 10485 {
Azure.IoT Build 0:6ae2f7bca550 10486 if (amqpvalue_set_composite_item(target_instance->composite_value, 3, timeout_amqp_value) != 0)
Azure.IoT Build 0:6ae2f7bca550 10487 {
Azure.IoT Build 0:6ae2f7bca550 10488 result = __LINE__;
Azure.IoT Build 0:6ae2f7bca550 10489 }
Azure.IoT Build 0:6ae2f7bca550 10490 else
Azure.IoT Build 0:6ae2f7bca550 10491 {
Azure.IoT Build 0:6ae2f7bca550 10492 result = 0;
Azure.IoT Build 0:6ae2f7bca550 10493 }
Azure.IoT Build 0:6ae2f7bca550 10494
Azure.IoT Build 0:6ae2f7bca550 10495 amqpvalue_destroy(timeout_amqp_value);
Azure.IoT Build 0:6ae2f7bca550 10496 }
Azure.IoT Build 0:6ae2f7bca550 10497 }
Azure.IoT Build 0:6ae2f7bca550 10498
Azure.IoT Build 0:6ae2f7bca550 10499 return result;
Azure.IoT Build 0:6ae2f7bca550 10500 }
Azure.IoT Build 0:6ae2f7bca550 10501
Azure.IoT Build 0:6ae2f7bca550 10502 int target_get_dynamic(TARGET_HANDLE target, bool* dynamic_value)
Azure.IoT Build 0:6ae2f7bca550 10503 {
Azure.IoT Build 0:6ae2f7bca550 10504 int result;
Azure.IoT Build 0:6ae2f7bca550 10505
Azure.IoT Build 0:6ae2f7bca550 10506 if (target == NULL)
Azure.IoT Build 0:6ae2f7bca550 10507 {
Azure.IoT Build 0:6ae2f7bca550 10508 result = __LINE__;
Azure.IoT Build 0:6ae2f7bca550 10509 }
Azure.IoT Build 0:6ae2f7bca550 10510 else
Azure.IoT Build 0:6ae2f7bca550 10511 {
Azure.IoT Build 0:6ae2f7bca550 10512 TARGET_INSTANCE* target_instance = (TARGET_INSTANCE*)target;
Azure.IoT Build 0:6ae2f7bca550 10513 AMQP_VALUE item_value = amqpvalue_get_composite_item_in_place(target_instance->composite_value, 4);
Azure.IoT Build 0:6ae2f7bca550 10514 if (item_value == NULL)
Azure.IoT Build 0:6ae2f7bca550 10515 {
Azure.IoT Build 0:6ae2f7bca550 10516 result = __LINE__;
Azure.IoT Build 0:6ae2f7bca550 10517 }
Azure.IoT Build 0:6ae2f7bca550 10518 else
Azure.IoT Build 0:6ae2f7bca550 10519 {
Azure.IoT Build 0:6ae2f7bca550 10520 if (amqpvalue_get_boolean(item_value, dynamic_value) != 0)
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 result = 0;
Azure.IoT Build 0:6ae2f7bca550 10527 }
Azure.IoT Build 0:6ae2f7bca550 10528 }
Azure.IoT Build 0:6ae2f7bca550 10529 }
Azure.IoT Build 0:6ae2f7bca550 10530
Azure.IoT Build 0:6ae2f7bca550 10531 return result;
Azure.IoT Build 0:6ae2f7bca550 10532 }
Azure.IoT Build 0:6ae2f7bca550 10533
Azure.IoT Build 0:6ae2f7bca550 10534 int target_set_dynamic(TARGET_HANDLE target, bool dynamic_value)
Azure.IoT Build 0:6ae2f7bca550 10535 {
Azure.IoT Build 0:6ae2f7bca550 10536 int result;
Azure.IoT Build 0:6ae2f7bca550 10537
Azure.IoT Build 0:6ae2f7bca550 10538 if (target == NULL)
Azure.IoT Build 0:6ae2f7bca550 10539 {
Azure.IoT Build 0:6ae2f7bca550 10540 result = __LINE__;
Azure.IoT Build 0:6ae2f7bca550 10541 }
Azure.IoT Build 0:6ae2f7bca550 10542 else
Azure.IoT Build 0:6ae2f7bca550 10543 {
Azure.IoT Build 0:6ae2f7bca550 10544 TARGET_INSTANCE* target_instance = (TARGET_INSTANCE*)target;
Azure.IoT Build 0:6ae2f7bca550 10545 AMQP_VALUE dynamic_amqp_value = amqpvalue_create_boolean(dynamic_value);
Azure.IoT Build 0:6ae2f7bca550 10546 if (dynamic_amqp_value == NULL)
Azure.IoT Build 0:6ae2f7bca550 10547 {
Azure.IoT Build 0:6ae2f7bca550 10548 result = __LINE__;
Azure.IoT Build 0:6ae2f7bca550 10549 }
Azure.IoT Build 0:6ae2f7bca550 10550 else
Azure.IoT Build 0:6ae2f7bca550 10551 {
Azure.IoT Build 0:6ae2f7bca550 10552 if (amqpvalue_set_composite_item(target_instance->composite_value, 4, dynamic_amqp_value) != 0)
Azure.IoT Build 0:6ae2f7bca550 10553 {
Azure.IoT Build 0:6ae2f7bca550 10554 result = __LINE__;
Azure.IoT Build 0:6ae2f7bca550 10555 }
Azure.IoT Build 0:6ae2f7bca550 10556 else
Azure.IoT Build 0:6ae2f7bca550 10557 {
Azure.IoT Build 0:6ae2f7bca550 10558 result = 0;
Azure.IoT Build 0:6ae2f7bca550 10559 }
Azure.IoT Build 0:6ae2f7bca550 10560
Azure.IoT Build 0:6ae2f7bca550 10561 amqpvalue_destroy(dynamic_amqp_value);
Azure.IoT Build 0:6ae2f7bca550 10562 }
Azure.IoT Build 0:6ae2f7bca550 10563 }
Azure.IoT Build 0:6ae2f7bca550 10564
Azure.IoT Build 0:6ae2f7bca550 10565 return result;
Azure.IoT Build 0:6ae2f7bca550 10566 }
Azure.IoT Build 0:6ae2f7bca550 10567
Azure.IoT Build 0:6ae2f7bca550 10568 int target_get_dynamic_node_properties(TARGET_HANDLE target, node_properties* dynamic_node_properties_value)
Azure.IoT Build 0:6ae2f7bca550 10569 {
Azure.IoT Build 0:6ae2f7bca550 10570 int result;
Azure.IoT Build 0:6ae2f7bca550 10571
Azure.IoT Build 0:6ae2f7bca550 10572 if (target == NULL)
Azure.IoT Build 0:6ae2f7bca550 10573 {
Azure.IoT Build 0:6ae2f7bca550 10574 result = __LINE__;
Azure.IoT Build 0:6ae2f7bca550 10575 }
Azure.IoT Build 0:6ae2f7bca550 10576 else
Azure.IoT Build 0:6ae2f7bca550 10577 {
Azure.IoT Build 0:6ae2f7bca550 10578 TARGET_INSTANCE* target_instance = (TARGET_INSTANCE*)target;
Azure.IoT Build 0:6ae2f7bca550 10579 AMQP_VALUE item_value = amqpvalue_get_composite_item_in_place(target_instance->composite_value, 5);
Azure.IoT Build 0:6ae2f7bca550 10580 if (item_value == NULL)
Azure.IoT Build 0:6ae2f7bca550 10581 {
Azure.IoT Build 0:6ae2f7bca550 10582 result = __LINE__;
Azure.IoT Build 0:6ae2f7bca550 10583 }
Azure.IoT Build 0:6ae2f7bca550 10584 else
Azure.IoT Build 0:6ae2f7bca550 10585 {
Azure.IoT Build 0:6ae2f7bca550 10586 if (amqpvalue_get_node_properties(item_value, dynamic_node_properties_value) != 0)
Azure.IoT Build 0:6ae2f7bca550 10587 {
Azure.IoT Build 0:6ae2f7bca550 10588 result = __LINE__;
Azure.IoT Build 0:6ae2f7bca550 10589 }
Azure.IoT Build 0:6ae2f7bca550 10590 else
Azure.IoT Build 0:6ae2f7bca550 10591 {
Azure.IoT Build 0:6ae2f7bca550 10592 result = 0;
Azure.IoT Build 0:6ae2f7bca550 10593 }
Azure.IoT Build 0:6ae2f7bca550 10594 }
Azure.IoT Build 0:6ae2f7bca550 10595 }
Azure.IoT Build 0:6ae2f7bca550 10596
Azure.IoT Build 0:6ae2f7bca550 10597 return result;
Azure.IoT Build 0:6ae2f7bca550 10598 }
Azure.IoT Build 0:6ae2f7bca550 10599
Azure.IoT Build 0:6ae2f7bca550 10600 int target_set_dynamic_node_properties(TARGET_HANDLE target, node_properties dynamic_node_properties_value)
Azure.IoT Build 0:6ae2f7bca550 10601 {
Azure.IoT Build 0:6ae2f7bca550 10602 int result;
Azure.IoT Build 0:6ae2f7bca550 10603
Azure.IoT Build 0:6ae2f7bca550 10604 if (target == NULL)
Azure.IoT Build 0:6ae2f7bca550 10605 {
Azure.IoT Build 0:6ae2f7bca550 10606 result = __LINE__;
Azure.IoT Build 0:6ae2f7bca550 10607 }
Azure.IoT Build 0:6ae2f7bca550 10608 else
Azure.IoT Build 0:6ae2f7bca550 10609 {
Azure.IoT Build 0:6ae2f7bca550 10610 TARGET_INSTANCE* target_instance = (TARGET_INSTANCE*)target;
Azure.IoT Build 0:6ae2f7bca550 10611 AMQP_VALUE dynamic_node_properties_amqp_value = amqpvalue_create_node_properties(dynamic_node_properties_value);
Azure.IoT Build 0:6ae2f7bca550 10612 if (dynamic_node_properties_amqp_value == NULL)
Azure.IoT Build 0:6ae2f7bca550 10613 {
Azure.IoT Build 0:6ae2f7bca550 10614 result = __LINE__;
Azure.IoT Build 0:6ae2f7bca550 10615 }
Azure.IoT Build 0:6ae2f7bca550 10616 else
Azure.IoT Build 0:6ae2f7bca550 10617 {
Azure.IoT Build 0:6ae2f7bca550 10618 if (amqpvalue_set_composite_item(target_instance->composite_value, 5, dynamic_node_properties_amqp_value) != 0)
Azure.IoT Build 0:6ae2f7bca550 10619 {
Azure.IoT Build 0:6ae2f7bca550 10620 result = __LINE__;
Azure.IoT Build 0:6ae2f7bca550 10621 }
Azure.IoT Build 0:6ae2f7bca550 10622 else
Azure.IoT Build 0:6ae2f7bca550 10623 {
Azure.IoT Build 0:6ae2f7bca550 10624 result = 0;
Azure.IoT Build 0:6ae2f7bca550 10625 }
Azure.IoT Build 0:6ae2f7bca550 10626
Azure.IoT Build 0:6ae2f7bca550 10627 amqpvalue_destroy(dynamic_node_properties_amqp_value);
Azure.IoT Build 0:6ae2f7bca550 10628 }
Azure.IoT Build 0:6ae2f7bca550 10629 }
Azure.IoT Build 0:6ae2f7bca550 10630
Azure.IoT Build 0:6ae2f7bca550 10631 return result;
Azure.IoT Build 0:6ae2f7bca550 10632 }
Azure.IoT Build 0:6ae2f7bca550 10633
Azure.IoT Build 0:6ae2f7bca550 10634 int target_get_capabilities(TARGET_HANDLE target, AMQP_VALUE* capabilities_value)
Azure.IoT Build 0:6ae2f7bca550 10635 {
Azure.IoT Build 0:6ae2f7bca550 10636 int result;
Azure.IoT Build 0:6ae2f7bca550 10637
Azure.IoT Build 0:6ae2f7bca550 10638 if (target == NULL)
Azure.IoT Build 0:6ae2f7bca550 10639 {
Azure.IoT Build 0:6ae2f7bca550 10640 result = __LINE__;
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 TARGET_INSTANCE* target_instance = (TARGET_INSTANCE*)target;
Azure.IoT Build 0:6ae2f7bca550 10645 AMQP_VALUE item_value = amqpvalue_get_composite_item_in_place(target_instance->composite_value, 6);
Azure.IoT Build 0:6ae2f7bca550 10646 if (item_value == NULL)
Azure.IoT Build 0:6ae2f7bca550 10647 {
Azure.IoT Build 0:6ae2f7bca550 10648 result = __LINE__;
Azure.IoT Build 0:6ae2f7bca550 10649 }
Azure.IoT Build 0:6ae2f7bca550 10650 else
Azure.IoT Build 0:6ae2f7bca550 10651 {
Azure.IoT Build 0:6ae2f7bca550 10652 if (amqpvalue_get_array(item_value, capabilities_value) != 0)
Azure.IoT Build 0:6ae2f7bca550 10653 {
Azure.IoT Build 0:6ae2f7bca550 10654 result = __LINE__;
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_capabilities(TARGET_HANDLE target, AMQP_VALUE capabilities_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 capabilities_amqp_value = amqpvalue_clone(capabilities_value);
Azure.IoT Build 0:6ae2f7bca550 10678 if (capabilities_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, 6, capabilities_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(capabilities_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
Azure.IoT Build 0:6ae2f7bca550 10701 /* annotations */
Azure.IoT Build 0:6ae2f7bca550 10702
Azure.IoT Build 0:6ae2f7bca550 10703 AMQP_VALUE amqpvalue_create_annotations(AMQP_VALUE value)
Azure.IoT Build 0:6ae2f7bca550 10704 {
Azure.IoT Build 0:6ae2f7bca550 10705 return amqpvalue_clone(value);
Azure.IoT Build 0:6ae2f7bca550 10706 }
Azure.IoT Build 0:6ae2f7bca550 10707
Azure.IoT Build 0:6ae2f7bca550 10708 /* message-id-ulong */
Azure.IoT Build 0:6ae2f7bca550 10709
Azure.IoT Build 0:6ae2f7bca550 10710 AMQP_VALUE amqpvalue_create_message_id_ulong(message_id_ulong value)
Azure.IoT Build 0:6ae2f7bca550 10711 {
Azure.IoT Build 0:6ae2f7bca550 10712 return amqpvalue_create_ulong(value);
Azure.IoT Build 0:6ae2f7bca550 10713 }
Azure.IoT Build 0:6ae2f7bca550 10714
Azure.IoT Build 0:6ae2f7bca550 10715 /* message-id-uuid */
Azure.IoT Build 0:6ae2f7bca550 10716
Azure.IoT Build 0:6ae2f7bca550 10717 AMQP_VALUE amqpvalue_create_message_id_uuid(message_id_uuid value)
Azure.IoT Build 0:6ae2f7bca550 10718 {
Azure.IoT Build 0:6ae2f7bca550 10719 return amqpvalue_create_uuid(value);
Azure.IoT Build 0:6ae2f7bca550 10720 }
Azure.IoT Build 0:6ae2f7bca550 10721
Azure.IoT Build 0:6ae2f7bca550 10722 /* message-id-binary */
Azure.IoT Build 0:6ae2f7bca550 10723
Azure.IoT Build 0:6ae2f7bca550 10724 AMQP_VALUE amqpvalue_create_message_id_binary(message_id_binary value)
Azure.IoT Build 0:6ae2f7bca550 10725 {
Azure.IoT Build 0:6ae2f7bca550 10726 return amqpvalue_create_binary(value);
Azure.IoT Build 0:6ae2f7bca550 10727 }
Azure.IoT Build 0:6ae2f7bca550 10728
Azure.IoT Build 0:6ae2f7bca550 10729 /* message-id-string */
Azure.IoT Build 0:6ae2f7bca550 10730
Azure.IoT Build 0:6ae2f7bca550 10731 AMQP_VALUE amqpvalue_create_message_id_string(message_id_string value)
Azure.IoT Build 0:6ae2f7bca550 10732 {
Azure.IoT Build 0:6ae2f7bca550 10733 return amqpvalue_create_string(value);
Azure.IoT Build 0:6ae2f7bca550 10734 }
Azure.IoT Build 0:6ae2f7bca550 10735
Azure.IoT Build 0:6ae2f7bca550 10736 /* address-string */
Azure.IoT Build 0:6ae2f7bca550 10737
Azure.IoT Build 0:6ae2f7bca550 10738 AMQP_VALUE amqpvalue_create_address_string(address_string value)
Azure.IoT Build 0:6ae2f7bca550 10739 {
Azure.IoT Build 0:6ae2f7bca550 10740 return amqpvalue_create_string(value);
Azure.IoT Build 0:6ae2f7bca550 10741 }
Azure.IoT Build 0:6ae2f7bca550 10742
Azure.IoT Build 0:6ae2f7bca550 10743 /* header */
Azure.IoT Build 0:6ae2f7bca550 10744
Azure.IoT Build 0:6ae2f7bca550 10745 typedef struct HEADER_INSTANCE_TAG
Azure.IoT Build 0:6ae2f7bca550 10746 {
Azure.IoT Build 0:6ae2f7bca550 10747 AMQP_VALUE composite_value;
Azure.IoT Build 0:6ae2f7bca550 10748 } HEADER_INSTANCE;
Azure.IoT Build 0:6ae2f7bca550 10749
Azure.IoT Build 0:6ae2f7bca550 10750 static HEADER_HANDLE header_create_internal(void)
Azure.IoT Build 0:6ae2f7bca550 10751 {
Azure.IoT Build 0:6ae2f7bca550 10752 HEADER_INSTANCE* header_instance = (HEADER_INSTANCE*)amqpalloc_malloc(sizeof(HEADER_INSTANCE));
Azure.IoT Build 0:6ae2f7bca550 10753 if (header_instance != NULL)
Azure.IoT Build 0:6ae2f7bca550 10754 {
Azure.IoT Build 0:6ae2f7bca550 10755 header_instance->composite_value = NULL;
Azure.IoT Build 0:6ae2f7bca550 10756 }
Azure.IoT Build 0:6ae2f7bca550 10757
Azure.IoT Build 0:6ae2f7bca550 10758 return header_instance;
Azure.IoT Build 0:6ae2f7bca550 10759 }
Azure.IoT Build 0:6ae2f7bca550 10760
Azure.IoT Build 0:6ae2f7bca550 10761 HEADER_HANDLE header_create(void)
Azure.IoT Build 0:6ae2f7bca550 10762 {
Azure.IoT Build 0:6ae2f7bca550 10763 HEADER_INSTANCE* header_instance = (HEADER_INSTANCE*)amqpalloc_malloc(sizeof(HEADER_INSTANCE));
Azure.IoT Build 0:6ae2f7bca550 10764 if (header_instance != NULL)
Azure.IoT Build 0:6ae2f7bca550 10765 {
Azure.IoT Build 0:6ae2f7bca550 10766 header_instance->composite_value = amqpvalue_create_composite_with_ulong_descriptor(112);
Azure.IoT Build 0:6ae2f7bca550 10767 if (header_instance->composite_value == NULL)
Azure.IoT Build 0:6ae2f7bca550 10768 {
Azure.IoT Build 0:6ae2f7bca550 10769 amqpalloc_free(header_instance);
Azure.IoT Build 0:6ae2f7bca550 10770 header_instance = NULL;
Azure.IoT Build 0:6ae2f7bca550 10771 }
Azure.IoT Build 0:6ae2f7bca550 10772 }
Azure.IoT Build 0:6ae2f7bca550 10773
Azure.IoT Build 0:6ae2f7bca550 10774 return header_instance;
Azure.IoT Build 0:6ae2f7bca550 10775 }
Azure.IoT Build 0:6ae2f7bca550 10776
Azure.IoT Build 0:6ae2f7bca550 10777 HEADER_HANDLE header_clone(HEADER_HANDLE value)
Azure.IoT Build 0:6ae2f7bca550 10778 {
Azure.IoT Build 0:6ae2f7bca550 10779 HEADER_INSTANCE* header_instance = (HEADER_INSTANCE*)amqpalloc_malloc(sizeof(HEADER_INSTANCE));
Azure.IoT Build 0:6ae2f7bca550 10780 if (header_instance != NULL)
Azure.IoT Build 0:6ae2f7bca550 10781 {
Azure.IoT Build 0:6ae2f7bca550 10782 header_instance->composite_value = amqpvalue_clone(((HEADER_INSTANCE*)value)->composite_value);
Azure.IoT Build 0:6ae2f7bca550 10783 if (header_instance->composite_value == NULL)
Azure.IoT Build 0:6ae2f7bca550 10784 {
Azure.IoT Build 0:6ae2f7bca550 10785 amqpalloc_free(header_instance);
Azure.IoT Build 0:6ae2f7bca550 10786 header_instance = NULL;
Azure.IoT Build 0:6ae2f7bca550 10787 }
Azure.IoT Build 0:6ae2f7bca550 10788 }
Azure.IoT Build 0:6ae2f7bca550 10789
Azure.IoT Build 0:6ae2f7bca550 10790 return header_instance;
Azure.IoT Build 0:6ae2f7bca550 10791 }
Azure.IoT Build 0:6ae2f7bca550 10792
Azure.IoT Build 0:6ae2f7bca550 10793 void header_destroy(HEADER_HANDLE header)
Azure.IoT Build 0:6ae2f7bca550 10794 {
Azure.IoT Build 0:6ae2f7bca550 10795 if (header != NULL)
Azure.IoT Build 0:6ae2f7bca550 10796 {
Azure.IoT Build 0:6ae2f7bca550 10797 HEADER_INSTANCE* header_instance = (HEADER_INSTANCE*)header;
Azure.IoT Build 0:6ae2f7bca550 10798 amqpvalue_destroy(header_instance->composite_value);
Azure.IoT Build 0:6ae2f7bca550 10799 amqpalloc_free(header_instance);
Azure.IoT Build 0:6ae2f7bca550 10800 }
Azure.IoT Build 0:6ae2f7bca550 10801 }
Azure.IoT Build 0:6ae2f7bca550 10802
Azure.IoT Build 0:6ae2f7bca550 10803 AMQP_VALUE amqpvalue_create_header(HEADER_HANDLE header)
Azure.IoT Build 0:6ae2f7bca550 10804 {
Azure.IoT Build 0:6ae2f7bca550 10805 AMQP_VALUE result;
Azure.IoT Build 0:6ae2f7bca550 10806
Azure.IoT Build 0:6ae2f7bca550 10807 if (header == NULL)
Azure.IoT Build 0:6ae2f7bca550 10808 {
Azure.IoT Build 0:6ae2f7bca550 10809 result = NULL;
Azure.IoT Build 0:6ae2f7bca550 10810 }
Azure.IoT Build 0:6ae2f7bca550 10811 else
Azure.IoT Build 0:6ae2f7bca550 10812 {
Azure.IoT Build 0:6ae2f7bca550 10813 HEADER_INSTANCE* header_instance = (HEADER_INSTANCE*)header;
Azure.IoT Build 0:6ae2f7bca550 10814 result = amqpvalue_clone(header_instance->composite_value);
Azure.IoT Build 0:6ae2f7bca550 10815 }
Azure.IoT Build 0:6ae2f7bca550 10816
Azure.IoT Build 0:6ae2f7bca550 10817 return result;
Azure.IoT Build 0:6ae2f7bca550 10818 }
Azure.IoT Build 0:6ae2f7bca550 10819
Azure.IoT Build 0:6ae2f7bca550 10820 bool is_header_type_by_descriptor(AMQP_VALUE descriptor)
Azure.IoT Build 0:6ae2f7bca550 10821 {
Azure.IoT Build 0:6ae2f7bca550 10822 bool result;
Azure.IoT Build 0:6ae2f7bca550 10823
Azure.IoT Build 0:6ae2f7bca550 10824 uint64_t descriptor_ulong;
Azure.IoT Build 0:6ae2f7bca550 10825 if ((amqpvalue_get_ulong(descriptor, &descriptor_ulong) == 0) &&
Azure.IoT Build 0:6ae2f7bca550 10826 (descriptor_ulong == 112))
Azure.IoT Build 0:6ae2f7bca550 10827 {
Azure.IoT Build 0:6ae2f7bca550 10828 result = true;
Azure.IoT Build 0:6ae2f7bca550 10829 }
Azure.IoT Build 0:6ae2f7bca550 10830 else
Azure.IoT Build 0:6ae2f7bca550 10831 {
Azure.IoT Build 0:6ae2f7bca550 10832 result = false;
Azure.IoT Build 0:6ae2f7bca550 10833 }
Azure.IoT Build 0:6ae2f7bca550 10834
Azure.IoT Build 0:6ae2f7bca550 10835 return result;
Azure.IoT Build 0:6ae2f7bca550 10836 }
Azure.IoT Build 0:6ae2f7bca550 10837
Azure.IoT Build 0:6ae2f7bca550 10838
Azure.IoT Build 0:6ae2f7bca550 10839 int amqpvalue_get_header(AMQP_VALUE value, HEADER_HANDLE* header_handle)
Azure.IoT Build 0:6ae2f7bca550 10840 {
Azure.IoT Build 0:6ae2f7bca550 10841 int result;
Azure.IoT Build 0:6ae2f7bca550 10842 HEADER_INSTANCE* header_instance = (HEADER_INSTANCE*)header_create_internal();
Azure.IoT Build 0:6ae2f7bca550 10843 *header_handle = header_instance;
Azure.IoT Build 0:6ae2f7bca550 10844 if (*header_handle == NULL)
Azure.IoT Build 0:6ae2f7bca550 10845 {
Azure.IoT Build 0:6ae2f7bca550 10846 result = __LINE__;
Azure.IoT Build 0:6ae2f7bca550 10847 }
Azure.IoT Build 0:6ae2f7bca550 10848 else
Azure.IoT Build 0:6ae2f7bca550 10849 {
Azure.IoT Build 0:6ae2f7bca550 10850 AMQP_VALUE list_value = amqpvalue_get_inplace_described_value(value);
Azure.IoT Build 0:6ae2f7bca550 10851 if (list_value == NULL)
Azure.IoT Build 0:6ae2f7bca550 10852 {
Azure.IoT Build 0:6ae2f7bca550 10853 header_destroy(*header_handle);
Azure.IoT Build 0:6ae2f7bca550 10854 result = __LINE__;
Azure.IoT Build 0:6ae2f7bca550 10855 }
Azure.IoT Build 0:6ae2f7bca550 10856 else
Azure.IoT Build 0:6ae2f7bca550 10857 {
Azure.IoT Build 0:6ae2f7bca550 10858 do
Azure.IoT Build 0:6ae2f7bca550 10859 {
Azure.IoT Build 0:6ae2f7bca550 10860 AMQP_VALUE item_value;
Azure.IoT Build 0:6ae2f7bca550 10861 /* durable */
Azure.IoT Build 0:6ae2f7bca550 10862 item_value = amqpvalue_get_list_item(list_value, 0);
Azure.IoT Build 0:6ae2f7bca550 10863 if (item_value == NULL)
Azure.IoT Build 0:6ae2f7bca550 10864 {
Azure.IoT Build 0:6ae2f7bca550 10865 /* do nothing */
Azure.IoT Build 0:6ae2f7bca550 10866 }
Azure.IoT Build 0:6ae2f7bca550 10867 else
Azure.IoT Build 0:6ae2f7bca550 10868 {
Azure.IoT Build 0:6ae2f7bca550 10869 bool durable;
Azure.IoT Build 0:6ae2f7bca550 10870 if (amqpvalue_get_boolean(item_value, &durable) != 0)
Azure.IoT Build 0:6ae2f7bca550 10871 {
Azure.IoT Build 0:6ae2f7bca550 10872 if (amqpvalue_get_type(item_value) != AMQP_TYPE_NULL)
Azure.IoT Build 0:6ae2f7bca550 10873 {
Azure.IoT Build 0:6ae2f7bca550 10874 header_destroy(*header_handle);
Azure.IoT Build 0:6ae2f7bca550 10875 result = __LINE__;
Azure.IoT Build 0:6ae2f7bca550 10876 break;
Azure.IoT Build 0:6ae2f7bca550 10877 }
Azure.IoT Build 0:6ae2f7bca550 10878 }
Azure.IoT Build 0:6ae2f7bca550 10879
Azure.IoT Build 0:6ae2f7bca550 10880 amqpvalue_destroy(item_value);
Azure.IoT Build 0:6ae2f7bca550 10881 }
Azure.IoT Build 0:6ae2f7bca550 10882 /* priority */
Azure.IoT Build 0:6ae2f7bca550 10883 item_value = amqpvalue_get_list_item(list_value, 1);
Azure.IoT Build 0:6ae2f7bca550 10884 if (item_value == NULL)
Azure.IoT Build 0:6ae2f7bca550 10885 {
Azure.IoT Build 0:6ae2f7bca550 10886 /* do nothing */
Azure.IoT Build 0:6ae2f7bca550 10887 }
Azure.IoT Build 0:6ae2f7bca550 10888 else
Azure.IoT Build 0:6ae2f7bca550 10889 {
Azure.IoT Build 0:6ae2f7bca550 10890 uint8_t priority;
Azure.IoT Build 0:6ae2f7bca550 10891 if (amqpvalue_get_ubyte(item_value, &priority) != 0)
Azure.IoT Build 0:6ae2f7bca550 10892 {
Azure.IoT Build 0:6ae2f7bca550 10893 if (amqpvalue_get_type(item_value) != AMQP_TYPE_NULL)
Azure.IoT Build 0:6ae2f7bca550 10894 {
Azure.IoT Build 0:6ae2f7bca550 10895 header_destroy(*header_handle);
Azure.IoT Build 0:6ae2f7bca550 10896 result = __LINE__;
Azure.IoT Build 0:6ae2f7bca550 10897 break;
Azure.IoT Build 0:6ae2f7bca550 10898 }
Azure.IoT Build 0:6ae2f7bca550 10899 }
Azure.IoT Build 0:6ae2f7bca550 10900
Azure.IoT Build 0:6ae2f7bca550 10901 amqpvalue_destroy(item_value);
Azure.IoT Build 0:6ae2f7bca550 10902 }
Azure.IoT Build 0:6ae2f7bca550 10903 /* ttl */
Azure.IoT Build 0:6ae2f7bca550 10904 item_value = amqpvalue_get_list_item(list_value, 2);
Azure.IoT Build 0:6ae2f7bca550 10905 if (item_value == NULL)
Azure.IoT Build 0:6ae2f7bca550 10906 {
Azure.IoT Build 0:6ae2f7bca550 10907 /* do nothing */
Azure.IoT Build 0:6ae2f7bca550 10908 }
Azure.IoT Build 0:6ae2f7bca550 10909 else
Azure.IoT Build 0:6ae2f7bca550 10910 {
Azure.IoT Build 0:6ae2f7bca550 10911 milliseconds ttl;
Azure.IoT Build 0:6ae2f7bca550 10912 if (amqpvalue_get_milliseconds(item_value, &ttl) != 0)
Azure.IoT Build 0:6ae2f7bca550 10913 {
Azure.IoT Build 0:6ae2f7bca550 10914 if (amqpvalue_get_type(item_value) != AMQP_TYPE_NULL)
Azure.IoT Build 0:6ae2f7bca550 10915 {
Azure.IoT Build 0:6ae2f7bca550 10916 header_destroy(*header_handle);
Azure.IoT Build 0:6ae2f7bca550 10917 result = __LINE__;
Azure.IoT Build 0:6ae2f7bca550 10918 break;
Azure.IoT Build 0:6ae2f7bca550 10919 }
Azure.IoT Build 0:6ae2f7bca550 10920 }
Azure.IoT Build 0:6ae2f7bca550 10921
Azure.IoT Build 0:6ae2f7bca550 10922 amqpvalue_destroy(item_value);
Azure.IoT Build 0:6ae2f7bca550 10923 }
Azure.IoT Build 0:6ae2f7bca550 10924 /* first-acquirer */
Azure.IoT Build 0:6ae2f7bca550 10925 item_value = amqpvalue_get_list_item(list_value, 3);
Azure.IoT Build 0:6ae2f7bca550 10926 if (item_value == NULL)
Azure.IoT Build 0:6ae2f7bca550 10927 {
Azure.IoT Build 0:6ae2f7bca550 10928 /* do nothing */
Azure.IoT Build 0:6ae2f7bca550 10929 }
Azure.IoT Build 0:6ae2f7bca550 10930 else
Azure.IoT Build 0:6ae2f7bca550 10931 {
Azure.IoT Build 0:6ae2f7bca550 10932 bool first_acquirer;
Azure.IoT Build 0:6ae2f7bca550 10933 if (amqpvalue_get_boolean(item_value, &first_acquirer) != 0)
Azure.IoT Build 0:6ae2f7bca550 10934 {
Azure.IoT Build 0:6ae2f7bca550 10935 if (amqpvalue_get_type(item_value) != AMQP_TYPE_NULL)
Azure.IoT Build 0:6ae2f7bca550 10936 {
Azure.IoT Build 0:6ae2f7bca550 10937 header_destroy(*header_handle);
Azure.IoT Build 0:6ae2f7bca550 10938 result = __LINE__;
Azure.IoT Build 0:6ae2f7bca550 10939 break;
Azure.IoT Build 0:6ae2f7bca550 10940 }
Azure.IoT Build 0:6ae2f7bca550 10941 }
Azure.IoT Build 0:6ae2f7bca550 10942
Azure.IoT Build 0:6ae2f7bca550 10943 amqpvalue_destroy(item_value);
Azure.IoT Build 0:6ae2f7bca550 10944 }
Azure.IoT Build 0:6ae2f7bca550 10945 /* delivery-count */
Azure.IoT Build 0:6ae2f7bca550 10946 item_value = amqpvalue_get_list_item(list_value, 4);
Azure.IoT Build 0:6ae2f7bca550 10947 if (item_value == NULL)
Azure.IoT Build 0:6ae2f7bca550 10948 {
Azure.IoT Build 0:6ae2f7bca550 10949 /* do nothing */
Azure.IoT Build 0:6ae2f7bca550 10950 }
Azure.IoT Build 0:6ae2f7bca550 10951 else
Azure.IoT Build 0:6ae2f7bca550 10952 {
Azure.IoT Build 0:6ae2f7bca550 10953 uint32_t delivery_count;
Azure.IoT Build 0:6ae2f7bca550 10954 if (amqpvalue_get_uint(item_value, &delivery_count) != 0)
Azure.IoT Build 0:6ae2f7bca550 10955 {
Azure.IoT Build 0:6ae2f7bca550 10956 if (amqpvalue_get_type(item_value) != AMQP_TYPE_NULL)
Azure.IoT Build 0:6ae2f7bca550 10957 {
Azure.IoT Build 0:6ae2f7bca550 10958 header_destroy(*header_handle);
Azure.IoT Build 0:6ae2f7bca550 10959 result = __LINE__;
Azure.IoT Build 0:6ae2f7bca550 10960 break;
Azure.IoT Build 0:6ae2f7bca550 10961 }
Azure.IoT Build 0:6ae2f7bca550 10962 }
Azure.IoT Build 0:6ae2f7bca550 10963
Azure.IoT Build 0:6ae2f7bca550 10964 amqpvalue_destroy(item_value);
Azure.IoT Build 0:6ae2f7bca550 10965 }
Azure.IoT Build 0:6ae2f7bca550 10966
Azure.IoT Build 0:6ae2f7bca550 10967 header_instance->composite_value = amqpvalue_clone(value);
Azure.IoT Build 0:6ae2f7bca550 10968
Azure.IoT Build 0:6ae2f7bca550 10969 result = 0;
Azure.IoT Build 0:6ae2f7bca550 10970 } while (0);
Azure.IoT Build 0:6ae2f7bca550 10971 }
Azure.IoT Build 0:6ae2f7bca550 10972 }
Azure.IoT Build 0:6ae2f7bca550 10973
Azure.IoT Build 0:6ae2f7bca550 10974 return result;
Azure.IoT Build 0:6ae2f7bca550 10975 }
Azure.IoT Build 0:6ae2f7bca550 10976
Azure.IoT Build 0:6ae2f7bca550 10977 int header_get_durable(HEADER_HANDLE header, bool* durable_value)
Azure.IoT Build 0:6ae2f7bca550 10978 {
Azure.IoT Build 0:6ae2f7bca550 10979 int result;
Azure.IoT Build 0:6ae2f7bca550 10980
Azure.IoT Build 0:6ae2f7bca550 10981 if (header == NULL)
Azure.IoT Build 0:6ae2f7bca550 10982 {
Azure.IoT Build 0:6ae2f7bca550 10983 result = __LINE__;
Azure.IoT Build 0:6ae2f7bca550 10984 }
Azure.IoT Build 0:6ae2f7bca550 10985 else
Azure.IoT Build 0:6ae2f7bca550 10986 {
Azure.IoT Build 0:6ae2f7bca550 10987 HEADER_INSTANCE* header_instance = (HEADER_INSTANCE*)header;
Azure.IoT Build 0:6ae2f7bca550 10988 AMQP_VALUE item_value = amqpvalue_get_composite_item_in_place(header_instance->composite_value, 0);
Azure.IoT Build 0:6ae2f7bca550 10989 if (item_value == NULL)
Azure.IoT Build 0:6ae2f7bca550 10990 {
Azure.IoT Build 0:6ae2f7bca550 10991 result = __LINE__;
Azure.IoT Build 0:6ae2f7bca550 10992 }
Azure.IoT Build 0:6ae2f7bca550 10993 else
Azure.IoT Build 0:6ae2f7bca550 10994 {
Azure.IoT Build 0:6ae2f7bca550 10995 if (amqpvalue_get_boolean(item_value, durable_value) != 0)
Azure.IoT Build 0:6ae2f7bca550 10996 {
Azure.IoT Build 0:6ae2f7bca550 10997 result = __LINE__;
Azure.IoT Build 0:6ae2f7bca550 10998 }
Azure.IoT Build 0:6ae2f7bca550 10999 else
Azure.IoT Build 0:6ae2f7bca550 11000 {
Azure.IoT Build 0:6ae2f7bca550 11001 result = 0;
Azure.IoT Build 0:6ae2f7bca550 11002 }
Azure.IoT Build 0:6ae2f7bca550 11003 }
Azure.IoT Build 0:6ae2f7bca550 11004 }
Azure.IoT Build 0:6ae2f7bca550 11005
Azure.IoT Build 0:6ae2f7bca550 11006 return result;
Azure.IoT Build 0:6ae2f7bca550 11007 }
Azure.IoT Build 0:6ae2f7bca550 11008
Azure.IoT Build 0:6ae2f7bca550 11009 int header_set_durable(HEADER_HANDLE header, bool durable_value)
Azure.IoT Build 0:6ae2f7bca550 11010 {
Azure.IoT Build 0:6ae2f7bca550 11011 int result;
Azure.IoT Build 0:6ae2f7bca550 11012
Azure.IoT Build 0:6ae2f7bca550 11013 if (header == NULL)
Azure.IoT Build 0:6ae2f7bca550 11014 {
Azure.IoT Build 0:6ae2f7bca550 11015 result = __LINE__;
Azure.IoT Build 0:6ae2f7bca550 11016 }
Azure.IoT Build 0:6ae2f7bca550 11017 else
Azure.IoT Build 0:6ae2f7bca550 11018 {
Azure.IoT Build 0:6ae2f7bca550 11019 HEADER_INSTANCE* header_instance = (HEADER_INSTANCE*)header;
Azure.IoT Build 0:6ae2f7bca550 11020 AMQP_VALUE durable_amqp_value = amqpvalue_create_boolean(durable_value);
Azure.IoT Build 0:6ae2f7bca550 11021 if (durable_amqp_value == NULL)
Azure.IoT Build 0:6ae2f7bca550 11022 {
Azure.IoT Build 0:6ae2f7bca550 11023 result = __LINE__;
Azure.IoT Build 0:6ae2f7bca550 11024 }
Azure.IoT Build 0:6ae2f7bca550 11025 else
Azure.IoT Build 0:6ae2f7bca550 11026 {
Azure.IoT Build 0:6ae2f7bca550 11027 if (amqpvalue_set_composite_item(header_instance->composite_value, 0, durable_amqp_value) != 0)
Azure.IoT Build 0:6ae2f7bca550 11028 {
Azure.IoT Build 0:6ae2f7bca550 11029 result = __LINE__;
Azure.IoT Build 0:6ae2f7bca550 11030 }
Azure.IoT Build 0:6ae2f7bca550 11031 else
Azure.IoT Build 0:6ae2f7bca550 11032 {
Azure.IoT Build 0:6ae2f7bca550 11033 result = 0;
Azure.IoT Build 0:6ae2f7bca550 11034 }
Azure.IoT Build 0:6ae2f7bca550 11035
Azure.IoT Build 0:6ae2f7bca550 11036 amqpvalue_destroy(durable_amqp_value);
Azure.IoT Build 0:6ae2f7bca550 11037 }
Azure.IoT Build 0:6ae2f7bca550 11038 }
Azure.IoT Build 0:6ae2f7bca550 11039
Azure.IoT Build 0:6ae2f7bca550 11040 return result;
Azure.IoT Build 0:6ae2f7bca550 11041 }
Azure.IoT Build 0:6ae2f7bca550 11042
Azure.IoT Build 0:6ae2f7bca550 11043 int header_get_priority(HEADER_HANDLE header, uint8_t* priority_value)
Azure.IoT Build 0:6ae2f7bca550 11044 {
Azure.IoT Build 0:6ae2f7bca550 11045 int result;
Azure.IoT Build 0:6ae2f7bca550 11046
Azure.IoT Build 0:6ae2f7bca550 11047 if (header == NULL)
Azure.IoT Build 0:6ae2f7bca550 11048 {
Azure.IoT Build 0:6ae2f7bca550 11049 result = __LINE__;
Azure.IoT Build 0:6ae2f7bca550 11050 }
Azure.IoT Build 0:6ae2f7bca550 11051 else
Azure.IoT Build 0:6ae2f7bca550 11052 {
Azure.IoT Build 0:6ae2f7bca550 11053 HEADER_INSTANCE* header_instance = (HEADER_INSTANCE*)header;
Azure.IoT Build 0:6ae2f7bca550 11054 AMQP_VALUE item_value = amqpvalue_get_composite_item_in_place(header_instance->composite_value, 1);
Azure.IoT Build 0:6ae2f7bca550 11055 if (item_value == NULL)
Azure.IoT Build 0:6ae2f7bca550 11056 {
Azure.IoT Build 0:6ae2f7bca550 11057 result = __LINE__;
Azure.IoT Build 0:6ae2f7bca550 11058 }
Azure.IoT Build 0:6ae2f7bca550 11059 else
Azure.IoT Build 0:6ae2f7bca550 11060 {
Azure.IoT Build 0:6ae2f7bca550 11061 if (amqpvalue_get_ubyte(item_value, priority_value) != 0)
Azure.IoT Build 0:6ae2f7bca550 11062 {
Azure.IoT Build 0:6ae2f7bca550 11063 result = __LINE__;
Azure.IoT Build 0:6ae2f7bca550 11064 }
Azure.IoT Build 0:6ae2f7bca550 11065 else
Azure.IoT Build 0:6ae2f7bca550 11066 {
Azure.IoT Build 0:6ae2f7bca550 11067 result = 0;
Azure.IoT Build 0:6ae2f7bca550 11068 }
Azure.IoT Build 0:6ae2f7bca550 11069 }
Azure.IoT Build 0:6ae2f7bca550 11070 }
Azure.IoT Build 0:6ae2f7bca550 11071
Azure.IoT Build 0:6ae2f7bca550 11072 return result;
Azure.IoT Build 0:6ae2f7bca550 11073 }
Azure.IoT Build 0:6ae2f7bca550 11074
Azure.IoT Build 0:6ae2f7bca550 11075 int header_set_priority(HEADER_HANDLE header, uint8_t priority_value)
Azure.IoT Build 0:6ae2f7bca550 11076 {
Azure.IoT Build 0:6ae2f7bca550 11077 int result;
Azure.IoT Build 0:6ae2f7bca550 11078
Azure.IoT Build 0:6ae2f7bca550 11079 if (header == NULL)
Azure.IoT Build 0:6ae2f7bca550 11080 {
Azure.IoT Build 0:6ae2f7bca550 11081 result = __LINE__;
Azure.IoT Build 0:6ae2f7bca550 11082 }
Azure.IoT Build 0:6ae2f7bca550 11083 else
Azure.IoT Build 0:6ae2f7bca550 11084 {
Azure.IoT Build 0:6ae2f7bca550 11085 HEADER_INSTANCE* header_instance = (HEADER_INSTANCE*)header;
Azure.IoT Build 0:6ae2f7bca550 11086 AMQP_VALUE priority_amqp_value = amqpvalue_create_ubyte(priority_value);
Azure.IoT Build 0:6ae2f7bca550 11087 if (priority_amqp_value == NULL)
Azure.IoT Build 0:6ae2f7bca550 11088 {
Azure.IoT Build 0:6ae2f7bca550 11089 result = __LINE__;
Azure.IoT Build 0:6ae2f7bca550 11090 }
Azure.IoT Build 0:6ae2f7bca550 11091 else
Azure.IoT Build 0:6ae2f7bca550 11092 {
Azure.IoT Build 0:6ae2f7bca550 11093 if (amqpvalue_set_composite_item(header_instance->composite_value, 1, priority_amqp_value) != 0)
Azure.IoT Build 0:6ae2f7bca550 11094 {
Azure.IoT Build 0:6ae2f7bca550 11095 result = __LINE__;
Azure.IoT Build 0:6ae2f7bca550 11096 }
Azure.IoT Build 0:6ae2f7bca550 11097 else
Azure.IoT Build 0:6ae2f7bca550 11098 {
Azure.IoT Build 0:6ae2f7bca550 11099 result = 0;
Azure.IoT Build 0:6ae2f7bca550 11100 }
Azure.IoT Build 0:6ae2f7bca550 11101
Azure.IoT Build 0:6ae2f7bca550 11102 amqpvalue_destroy(priority_amqp_value);
Azure.IoT Build 0:6ae2f7bca550 11103 }
Azure.IoT Build 0:6ae2f7bca550 11104 }
Azure.IoT Build 0:6ae2f7bca550 11105
Azure.IoT Build 0:6ae2f7bca550 11106 return result;
Azure.IoT Build 0:6ae2f7bca550 11107 }
Azure.IoT Build 0:6ae2f7bca550 11108
Azure.IoT Build 0:6ae2f7bca550 11109 int header_get_ttl(HEADER_HANDLE header, milliseconds* ttl_value)
Azure.IoT Build 0:6ae2f7bca550 11110 {
Azure.IoT Build 0:6ae2f7bca550 11111 int result;
Azure.IoT Build 0:6ae2f7bca550 11112
Azure.IoT Build 0:6ae2f7bca550 11113 if (header == NULL)
Azure.IoT Build 0:6ae2f7bca550 11114 {
Azure.IoT Build 0:6ae2f7bca550 11115 result = __LINE__;
Azure.IoT Build 0:6ae2f7bca550 11116 }
Azure.IoT Build 0:6ae2f7bca550 11117 else
Azure.IoT Build 0:6ae2f7bca550 11118 {
Azure.IoT Build 0:6ae2f7bca550 11119 HEADER_INSTANCE* header_instance = (HEADER_INSTANCE*)header;
Azure.IoT Build 0:6ae2f7bca550 11120 AMQP_VALUE item_value = amqpvalue_get_composite_item_in_place(header_instance->composite_value, 2);
Azure.IoT Build 0:6ae2f7bca550 11121 if (item_value == NULL)
Azure.IoT Build 0:6ae2f7bca550 11122 {
Azure.IoT Build 0:6ae2f7bca550 11123 result = __LINE__;
Azure.IoT Build 0:6ae2f7bca550 11124 }
Azure.IoT Build 0:6ae2f7bca550 11125 else
Azure.IoT Build 0:6ae2f7bca550 11126 {
Azure.IoT Build 0:6ae2f7bca550 11127 if (amqpvalue_get_milliseconds(item_value, ttl_value) != 0)
Azure.IoT Build 0:6ae2f7bca550 11128 {
Azure.IoT Build 0:6ae2f7bca550 11129 result = __LINE__;
Azure.IoT Build 0:6ae2f7bca550 11130 }
Azure.IoT Build 0:6ae2f7bca550 11131 else
Azure.IoT Build 0:6ae2f7bca550 11132 {
Azure.IoT Build 0:6ae2f7bca550 11133 result = 0;
Azure.IoT Build 0:6ae2f7bca550 11134 }
Azure.IoT Build 0:6ae2f7bca550 11135 }
Azure.IoT Build 0:6ae2f7bca550 11136 }
Azure.IoT Build 0:6ae2f7bca550 11137
Azure.IoT Build 0:6ae2f7bca550 11138 return result;
Azure.IoT Build 0:6ae2f7bca550 11139 }
Azure.IoT Build 0:6ae2f7bca550 11140
Azure.IoT Build 0:6ae2f7bca550 11141 int header_set_ttl(HEADER_HANDLE header, milliseconds ttl_value)
Azure.IoT Build 0:6ae2f7bca550 11142 {
Azure.IoT Build 0:6ae2f7bca550 11143 int result;
Azure.IoT Build 0:6ae2f7bca550 11144
Azure.IoT Build 0:6ae2f7bca550 11145 if (header == NULL)
Azure.IoT Build 0:6ae2f7bca550 11146 {
Azure.IoT Build 0:6ae2f7bca550 11147 result = __LINE__;
Azure.IoT Build 0:6ae2f7bca550 11148 }
Azure.IoT Build 0:6ae2f7bca550 11149 else
Azure.IoT Build 0:6ae2f7bca550 11150 {
Azure.IoT Build 0:6ae2f7bca550 11151 HEADER_INSTANCE* header_instance = (HEADER_INSTANCE*)header;
Azure.IoT Build 0:6ae2f7bca550 11152 AMQP_VALUE ttl_amqp_value = amqpvalue_create_milliseconds(ttl_value);
Azure.IoT Build 0:6ae2f7bca550 11153 if (ttl_amqp_value == NULL)
Azure.IoT Build 0:6ae2f7bca550 11154 {
Azure.IoT Build 0:6ae2f7bca550 11155 result = __LINE__;
Azure.IoT Build 0:6ae2f7bca550 11156 }
Azure.IoT Build 0:6ae2f7bca550 11157 else
Azure.IoT Build 0:6ae2f7bca550 11158 {
Azure.IoT Build 0:6ae2f7bca550 11159 if (amqpvalue_set_composite_item(header_instance->composite_value, 2, ttl_amqp_value) != 0)
Azure.IoT Build 0:6ae2f7bca550 11160 {
Azure.IoT Build 0:6ae2f7bca550 11161 result = __LINE__;
Azure.IoT Build 0:6ae2f7bca550 11162 }
Azure.IoT Build 0:6ae2f7bca550 11163 else
Azure.IoT Build 0:6ae2f7bca550 11164 {
Azure.IoT Build 0:6ae2f7bca550 11165 result = 0;
Azure.IoT Build 0:6ae2f7bca550 11166 }
Azure.IoT Build 0:6ae2f7bca550 11167
Azure.IoT Build 0:6ae2f7bca550 11168 amqpvalue_destroy(ttl_amqp_value);
Azure.IoT Build 0:6ae2f7bca550 11169 }
Azure.IoT Build 0:6ae2f7bca550 11170 }
Azure.IoT Build 0:6ae2f7bca550 11171
Azure.IoT Build 0:6ae2f7bca550 11172 return result;
Azure.IoT Build 0:6ae2f7bca550 11173 }
Azure.IoT Build 0:6ae2f7bca550 11174
Azure.IoT Build 0:6ae2f7bca550 11175 int header_get_first_acquirer(HEADER_HANDLE header, bool* first_acquirer_value)
Azure.IoT Build 0:6ae2f7bca550 11176 {
Azure.IoT Build 0:6ae2f7bca550 11177 int result;
Azure.IoT Build 0:6ae2f7bca550 11178
Azure.IoT Build 0:6ae2f7bca550 11179 if (header == NULL)
Azure.IoT Build 0:6ae2f7bca550 11180 {
Azure.IoT Build 0:6ae2f7bca550 11181 result = __LINE__;
Azure.IoT Build 0:6ae2f7bca550 11182 }
Azure.IoT Build 0:6ae2f7bca550 11183 else
Azure.IoT Build 0:6ae2f7bca550 11184 {
Azure.IoT Build 0:6ae2f7bca550 11185 HEADER_INSTANCE* header_instance = (HEADER_INSTANCE*)header;
Azure.IoT Build 0:6ae2f7bca550 11186 AMQP_VALUE item_value = amqpvalue_get_composite_item_in_place(header_instance->composite_value, 3);
Azure.IoT Build 0:6ae2f7bca550 11187 if (item_value == NULL)
Azure.IoT Build 0:6ae2f7bca550 11188 {
Azure.IoT Build 0:6ae2f7bca550 11189 result = __LINE__;
Azure.IoT Build 0:6ae2f7bca550 11190 }
Azure.IoT Build 0:6ae2f7bca550 11191 else
Azure.IoT Build 0:6ae2f7bca550 11192 {
Azure.IoT Build 0:6ae2f7bca550 11193 if (amqpvalue_get_boolean(item_value, first_acquirer_value) != 0)
Azure.IoT Build 0:6ae2f7bca550 11194 {
Azure.IoT Build 0:6ae2f7bca550 11195 result = __LINE__;
Azure.IoT Build 0:6ae2f7bca550 11196 }
Azure.IoT Build 0:6ae2f7bca550 11197 else
Azure.IoT Build 0:6ae2f7bca550 11198 {
Azure.IoT Build 0:6ae2f7bca550 11199 result = 0;
Azure.IoT Build 0:6ae2f7bca550 11200 }
Azure.IoT Build 0:6ae2f7bca550 11201 }
Azure.IoT Build 0:6ae2f7bca550 11202 }
Azure.IoT Build 0:6ae2f7bca550 11203
Azure.IoT Build 0:6ae2f7bca550 11204 return result;
Azure.IoT Build 0:6ae2f7bca550 11205 }
Azure.IoT Build 0:6ae2f7bca550 11206
Azure.IoT Build 0:6ae2f7bca550 11207 int header_set_first_acquirer(HEADER_HANDLE header, bool first_acquirer_value)
Azure.IoT Build 0:6ae2f7bca550 11208 {
Azure.IoT Build 0:6ae2f7bca550 11209 int result;
Azure.IoT Build 0:6ae2f7bca550 11210
Azure.IoT Build 0:6ae2f7bca550 11211 if (header == NULL)
Azure.IoT Build 0:6ae2f7bca550 11212 {
Azure.IoT Build 0:6ae2f7bca550 11213 result = __LINE__;
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 HEADER_INSTANCE* header_instance = (HEADER_INSTANCE*)header;
Azure.IoT Build 0:6ae2f7bca550 11218 AMQP_VALUE first_acquirer_amqp_value = amqpvalue_create_boolean(first_acquirer_value);
Azure.IoT Build 0:6ae2f7bca550 11219 if (first_acquirer_amqp_value == NULL)
Azure.IoT Build 0:6ae2f7bca550 11220 {
Azure.IoT Build 0:6ae2f7bca550 11221 result = __LINE__;
Azure.IoT Build 0:6ae2f7bca550 11222 }
Azure.IoT Build 0:6ae2f7bca550 11223 else
Azure.IoT Build 0:6ae2f7bca550 11224 {
Azure.IoT Build 0:6ae2f7bca550 11225 if (amqpvalue_set_composite_item(header_instance->composite_value, 3, first_acquirer_amqp_value) != 0)
Azure.IoT Build 0:6ae2f7bca550 11226 {
Azure.IoT Build 0:6ae2f7bca550 11227 result = __LINE__;
Azure.IoT Build 0:6ae2f7bca550 11228 }
Azure.IoT Build 0:6ae2f7bca550 11229 else
Azure.IoT Build 0:6ae2f7bca550 11230 {
Azure.IoT Build 0:6ae2f7bca550 11231 result = 0;
Azure.IoT Build 0:6ae2f7bca550 11232 }
Azure.IoT Build 0:6ae2f7bca550 11233
Azure.IoT Build 0:6ae2f7bca550 11234 amqpvalue_destroy(first_acquirer_amqp_value);
Azure.IoT Build 0:6ae2f7bca550 11235 }
Azure.IoT Build 0:6ae2f7bca550 11236 }
Azure.IoT Build 0:6ae2f7bca550 11237
Azure.IoT Build 0:6ae2f7bca550 11238 return result;
Azure.IoT Build 0:6ae2f7bca550 11239 }
Azure.IoT Build 0:6ae2f7bca550 11240
Azure.IoT Build 0:6ae2f7bca550 11241 int header_get_delivery_count(HEADER_HANDLE header, uint32_t* delivery_count_value)
Azure.IoT Build 0:6ae2f7bca550 11242 {
Azure.IoT Build 0:6ae2f7bca550 11243 int result;
Azure.IoT Build 0:6ae2f7bca550 11244
Azure.IoT Build 0:6ae2f7bca550 11245 if (header == NULL)
Azure.IoT Build 0:6ae2f7bca550 11246 {
Azure.IoT Build 0:6ae2f7bca550 11247 result = __LINE__;
Azure.IoT Build 0:6ae2f7bca550 11248 }
Azure.IoT Build 0:6ae2f7bca550 11249 else
Azure.IoT Build 0:6ae2f7bca550 11250 {
Azure.IoT Build 0:6ae2f7bca550 11251 HEADER_INSTANCE* header_instance = (HEADER_INSTANCE*)header;
Azure.IoT Build 0:6ae2f7bca550 11252 AMQP_VALUE item_value = amqpvalue_get_composite_item_in_place(header_instance->composite_value, 4);
Azure.IoT Build 0:6ae2f7bca550 11253 if (item_value == NULL)
Azure.IoT Build 0:6ae2f7bca550 11254 {
Azure.IoT Build 0:6ae2f7bca550 11255 result = __LINE__;
Azure.IoT Build 0:6ae2f7bca550 11256 }
Azure.IoT Build 0:6ae2f7bca550 11257 else
Azure.IoT Build 0:6ae2f7bca550 11258 {
Azure.IoT Build 0:6ae2f7bca550 11259 if (amqpvalue_get_uint(item_value, delivery_count_value) != 0)
Azure.IoT Build 0:6ae2f7bca550 11260 {
Azure.IoT Build 0:6ae2f7bca550 11261 result = __LINE__;
Azure.IoT Build 0:6ae2f7bca550 11262 }
Azure.IoT Build 0:6ae2f7bca550 11263 else
Azure.IoT Build 0:6ae2f7bca550 11264 {
Azure.IoT Build 0:6ae2f7bca550 11265 result = 0;
Azure.IoT Build 0:6ae2f7bca550 11266 }
Azure.IoT Build 0:6ae2f7bca550 11267 }
Azure.IoT Build 0:6ae2f7bca550 11268 }
Azure.IoT Build 0:6ae2f7bca550 11269
Azure.IoT Build 0:6ae2f7bca550 11270 return result;
Azure.IoT Build 0:6ae2f7bca550 11271 }
Azure.IoT Build 0:6ae2f7bca550 11272
Azure.IoT Build 0:6ae2f7bca550 11273 int header_set_delivery_count(HEADER_HANDLE header, uint32_t delivery_count_value)
Azure.IoT Build 0:6ae2f7bca550 11274 {
Azure.IoT Build 0:6ae2f7bca550 11275 int result;
Azure.IoT Build 0:6ae2f7bca550 11276
Azure.IoT Build 0:6ae2f7bca550 11277 if (header == NULL)
Azure.IoT Build 0:6ae2f7bca550 11278 {
Azure.IoT Build 0:6ae2f7bca550 11279 result = __LINE__;
Azure.IoT Build 0:6ae2f7bca550 11280 }
Azure.IoT Build 0:6ae2f7bca550 11281 else
Azure.IoT Build 0:6ae2f7bca550 11282 {
Azure.IoT Build 0:6ae2f7bca550 11283 HEADER_INSTANCE* header_instance = (HEADER_INSTANCE*)header;
Azure.IoT Build 0:6ae2f7bca550 11284 AMQP_VALUE delivery_count_amqp_value = amqpvalue_create_uint(delivery_count_value);
Azure.IoT Build 0:6ae2f7bca550 11285 if (delivery_count_amqp_value == NULL)
Azure.IoT Build 0:6ae2f7bca550 11286 {
Azure.IoT Build 0:6ae2f7bca550 11287 result = __LINE__;
Azure.IoT Build 0:6ae2f7bca550 11288 }
Azure.IoT Build 0:6ae2f7bca550 11289 else
Azure.IoT Build 0:6ae2f7bca550 11290 {
Azure.IoT Build 0:6ae2f7bca550 11291 if (amqpvalue_set_composite_item(header_instance->composite_value, 4, delivery_count_amqp_value) != 0)
Azure.IoT Build 0:6ae2f7bca550 11292 {
Azure.IoT Build 0:6ae2f7bca550 11293 result = __LINE__;
Azure.IoT Build 0:6ae2f7bca550 11294 }
Azure.IoT Build 0:6ae2f7bca550 11295 else
Azure.IoT Build 0:6ae2f7bca550 11296 {
Azure.IoT Build 0:6ae2f7bca550 11297 result = 0;
Azure.IoT Build 0:6ae2f7bca550 11298 }
Azure.IoT Build 0:6ae2f7bca550 11299
Azure.IoT Build 0:6ae2f7bca550 11300 amqpvalue_destroy(delivery_count_amqp_value);
Azure.IoT Build 0:6ae2f7bca550 11301 }
Azure.IoT Build 0:6ae2f7bca550 11302 }
Azure.IoT Build 0:6ae2f7bca550 11303
Azure.IoT Build 0:6ae2f7bca550 11304 return result;
Azure.IoT Build 0:6ae2f7bca550 11305 }
Azure.IoT Build 0:6ae2f7bca550 11306
Azure.IoT Build 0:6ae2f7bca550 11307
Azure.IoT Build 0:6ae2f7bca550 11308 /* delivery-annotations */
Azure.IoT Build 0:6ae2f7bca550 11309
Azure.IoT Build 0:6ae2f7bca550 11310 AMQP_VALUE amqpvalue_create_delivery_annotations(delivery_annotations value)
Azure.IoT Build 0:6ae2f7bca550 11311 {
Azure.IoT Build 0:6ae2f7bca550 11312 AMQP_VALUE result;
Azure.IoT Build 0:6ae2f7bca550 11313 AMQP_VALUE described_value = amqpvalue_create_annotations(value);
Azure.IoT Build 0:6ae2f7bca550 11314 if (described_value == NULL)
Azure.IoT Build 0:6ae2f7bca550 11315 {
Azure.IoT Build 0:6ae2f7bca550 11316 result = NULL;
Azure.IoT Build 0:6ae2f7bca550 11317 }
Azure.IoT Build 0:6ae2f7bca550 11318 else
Azure.IoT Build 0:6ae2f7bca550 11319 {
Azure.IoT Build 0:6ae2f7bca550 11320 AMQP_VALUE descriptor = amqpvalue_create_ulong(113);
Azure.IoT Build 0:6ae2f7bca550 11321 if (descriptor == NULL)
Azure.IoT Build 0:6ae2f7bca550 11322 {
Azure.IoT Build 0:6ae2f7bca550 11323 result = NULL;
Azure.IoT Build 0:6ae2f7bca550 11324 }
Azure.IoT Build 0:6ae2f7bca550 11325 else
Azure.IoT Build 0:6ae2f7bca550 11326 {
Azure.IoT Build 0:6ae2f7bca550 11327 result = amqpvalue_create_described(amqpvalue_clone(descriptor), amqpvalue_clone(described_value));
Azure.IoT Build 0:6ae2f7bca550 11328
Azure.IoT Build 0:6ae2f7bca550 11329 amqpvalue_destroy(descriptor);
Azure.IoT Build 0:6ae2f7bca550 11330 }
Azure.IoT Build 0:6ae2f7bca550 11331
Azure.IoT Build 0:6ae2f7bca550 11332 amqpvalue_destroy(described_value);
Azure.IoT Build 0:6ae2f7bca550 11333 }
Azure.IoT Build 0:6ae2f7bca550 11334
Azure.IoT Build 0:6ae2f7bca550 11335 return result;
Azure.IoT Build 0:6ae2f7bca550 11336 }
Azure.IoT Build 0:6ae2f7bca550 11337
Azure.IoT Build 0:6ae2f7bca550 11338 bool is_delivery_annotations_type_by_descriptor(AMQP_VALUE descriptor)
Azure.IoT Build 0:6ae2f7bca550 11339 {
Azure.IoT Build 0:6ae2f7bca550 11340 bool result;
Azure.IoT Build 0:6ae2f7bca550 11341
Azure.IoT Build 0:6ae2f7bca550 11342 uint64_t descriptor_ulong;
Azure.IoT Build 0:6ae2f7bca550 11343 if ((amqpvalue_get_ulong(descriptor, &descriptor_ulong) == 0) &&
Azure.IoT Build 0:6ae2f7bca550 11344 (descriptor_ulong == 113))
Azure.IoT Build 0:6ae2f7bca550 11345 {
Azure.IoT Build 0:6ae2f7bca550 11346 result = true;
Azure.IoT Build 0:6ae2f7bca550 11347 }
Azure.IoT Build 0:6ae2f7bca550 11348 else
Azure.IoT Build 0:6ae2f7bca550 11349 {
Azure.IoT Build 0:6ae2f7bca550 11350 result = false;
Azure.IoT Build 0:6ae2f7bca550 11351 }
Azure.IoT Build 0:6ae2f7bca550 11352
Azure.IoT Build 0:6ae2f7bca550 11353 return result;
Azure.IoT Build 0:6ae2f7bca550 11354 }
Azure.IoT Build 0:6ae2f7bca550 11355
Azure.IoT Build 0:6ae2f7bca550 11356 /* message-annotations */
Azure.IoT Build 0:6ae2f7bca550 11357
Azure.IoT Build 0:6ae2f7bca550 11358 AMQP_VALUE amqpvalue_create_message_annotations(message_annotations value)
Azure.IoT Build 0:6ae2f7bca550 11359 {
Azure.IoT Build 0:6ae2f7bca550 11360 AMQP_VALUE result;
Azure.IoT Build 0:6ae2f7bca550 11361 AMQP_VALUE described_value = amqpvalue_create_annotations(value);
Azure.IoT Build 0:6ae2f7bca550 11362 if (described_value == NULL)
Azure.IoT Build 0:6ae2f7bca550 11363 {
Azure.IoT Build 0:6ae2f7bca550 11364 result = NULL;
Azure.IoT Build 0:6ae2f7bca550 11365 }
Azure.IoT Build 0:6ae2f7bca550 11366 else
Azure.IoT Build 0:6ae2f7bca550 11367 {
Azure.IoT Build 0:6ae2f7bca550 11368 AMQP_VALUE descriptor = amqpvalue_create_ulong(114);
Azure.IoT Build 0:6ae2f7bca550 11369 if (descriptor == NULL)
Azure.IoT Build 0:6ae2f7bca550 11370 {
Azure.IoT Build 0:6ae2f7bca550 11371 result = NULL;
Azure.IoT Build 0:6ae2f7bca550 11372 }
Azure.IoT Build 0:6ae2f7bca550 11373 else
Azure.IoT Build 0:6ae2f7bca550 11374 {
Azure.IoT Build 0:6ae2f7bca550 11375 result = amqpvalue_create_described(amqpvalue_clone(descriptor), amqpvalue_clone(described_value));
Azure.IoT Build 0:6ae2f7bca550 11376
Azure.IoT Build 0:6ae2f7bca550 11377 amqpvalue_destroy(descriptor);
Azure.IoT Build 0:6ae2f7bca550 11378 }
Azure.IoT Build 0:6ae2f7bca550 11379
Azure.IoT Build 0:6ae2f7bca550 11380 amqpvalue_destroy(described_value);
Azure.IoT Build 0:6ae2f7bca550 11381 }
Azure.IoT Build 0:6ae2f7bca550 11382
Azure.IoT Build 0:6ae2f7bca550 11383 return result;
Azure.IoT Build 0:6ae2f7bca550 11384 }
Azure.IoT Build 0:6ae2f7bca550 11385
Azure.IoT Build 0:6ae2f7bca550 11386 bool is_message_annotations_type_by_descriptor(AMQP_VALUE descriptor)
Azure.IoT Build 0:6ae2f7bca550 11387 {
Azure.IoT Build 0:6ae2f7bca550 11388 bool result;
Azure.IoT Build 0:6ae2f7bca550 11389
Azure.IoT Build 0:6ae2f7bca550 11390 uint64_t descriptor_ulong;
Azure.IoT Build 0:6ae2f7bca550 11391 if ((amqpvalue_get_ulong(descriptor, &descriptor_ulong) == 0) &&
Azure.IoT Build 0:6ae2f7bca550 11392 (descriptor_ulong == 114))
Azure.IoT Build 0:6ae2f7bca550 11393 {
Azure.IoT Build 0:6ae2f7bca550 11394 result = true;
Azure.IoT Build 0:6ae2f7bca550 11395 }
Azure.IoT Build 0:6ae2f7bca550 11396 else
Azure.IoT Build 0:6ae2f7bca550 11397 {
Azure.IoT Build 0:6ae2f7bca550 11398 result = false;
Azure.IoT Build 0:6ae2f7bca550 11399 }
Azure.IoT Build 0:6ae2f7bca550 11400
Azure.IoT Build 0:6ae2f7bca550 11401 return result;
Azure.IoT Build 0:6ae2f7bca550 11402 }
Azure.IoT Build 0:6ae2f7bca550 11403
Azure.IoT Build 0:6ae2f7bca550 11404 /* application-properties */
Azure.IoT Build 0:6ae2f7bca550 11405
Azure.IoT Build 0:6ae2f7bca550 11406 AMQP_VALUE amqpvalue_create_application_properties(AMQP_VALUE value)
Azure.IoT Build 0:6ae2f7bca550 11407 {
Azure.IoT Build 0:6ae2f7bca550 11408 AMQP_VALUE result;
Azure.IoT Build 0:6ae2f7bca550 11409 AMQP_VALUE described_value = amqpvalue_clone(value);
Azure.IoT Build 0:6ae2f7bca550 11410 if (described_value == NULL)
Azure.IoT Build 0:6ae2f7bca550 11411 {
Azure.IoT Build 0:6ae2f7bca550 11412 result = NULL;
Azure.IoT Build 0:6ae2f7bca550 11413 }
Azure.IoT Build 0:6ae2f7bca550 11414 else
Azure.IoT Build 0:6ae2f7bca550 11415 {
Azure.IoT Build 0:6ae2f7bca550 11416 AMQP_VALUE descriptor = amqpvalue_create_ulong(116);
Azure.IoT Build 0:6ae2f7bca550 11417 if (descriptor == NULL)
Azure.IoT Build 0:6ae2f7bca550 11418 {
Azure.IoT Build 0:6ae2f7bca550 11419 result = NULL;
Azure.IoT Build 0:6ae2f7bca550 11420 }
Azure.IoT Build 0:6ae2f7bca550 11421 else
Azure.IoT Build 0:6ae2f7bca550 11422 {
Azure.IoT Build 0:6ae2f7bca550 11423 result = amqpvalue_create_described(amqpvalue_clone(descriptor), amqpvalue_clone(described_value));
Azure.IoT Build 0:6ae2f7bca550 11424
Azure.IoT Build 0:6ae2f7bca550 11425 amqpvalue_destroy(descriptor);
Azure.IoT Build 0:6ae2f7bca550 11426 }
Azure.IoT Build 0:6ae2f7bca550 11427
Azure.IoT Build 0:6ae2f7bca550 11428 amqpvalue_destroy(described_value);
Azure.IoT Build 0:6ae2f7bca550 11429 }
Azure.IoT Build 0:6ae2f7bca550 11430
Azure.IoT Build 0:6ae2f7bca550 11431 return result;
Azure.IoT Build 0:6ae2f7bca550 11432 }
Azure.IoT Build 0:6ae2f7bca550 11433
Azure.IoT Build 0:6ae2f7bca550 11434 bool is_application_properties_type_by_descriptor(AMQP_VALUE descriptor)
Azure.IoT Build 0:6ae2f7bca550 11435 {
Azure.IoT Build 0:6ae2f7bca550 11436 bool result;
Azure.IoT Build 0:6ae2f7bca550 11437
Azure.IoT Build 0:6ae2f7bca550 11438 uint64_t descriptor_ulong;
Azure.IoT Build 0:6ae2f7bca550 11439 if ((amqpvalue_get_ulong(descriptor, &descriptor_ulong) == 0) &&
Azure.IoT Build 0:6ae2f7bca550 11440 (descriptor_ulong == 116))
Azure.IoT Build 0:6ae2f7bca550 11441 {
Azure.IoT Build 0:6ae2f7bca550 11442 result = true;
Azure.IoT Build 0:6ae2f7bca550 11443 }
Azure.IoT Build 0:6ae2f7bca550 11444 else
Azure.IoT Build 0:6ae2f7bca550 11445 {
Azure.IoT Build 0:6ae2f7bca550 11446 result = false;
Azure.IoT Build 0:6ae2f7bca550 11447 }
Azure.IoT Build 0:6ae2f7bca550 11448
Azure.IoT Build 0:6ae2f7bca550 11449 return result;
Azure.IoT Build 0:6ae2f7bca550 11450 }
Azure.IoT Build 0:6ae2f7bca550 11451
Azure.IoT Build 0:6ae2f7bca550 11452 /* data */
Azure.IoT Build 0:6ae2f7bca550 11453
Azure.IoT Build 0:6ae2f7bca550 11454 AMQP_VALUE amqpvalue_create_data(data value)
Azure.IoT Build 0:6ae2f7bca550 11455 {
Azure.IoT Build 0:6ae2f7bca550 11456 AMQP_VALUE result;
Azure.IoT Build 0:6ae2f7bca550 11457 AMQP_VALUE described_value = amqpvalue_create_binary(value);
Azure.IoT Build 0:6ae2f7bca550 11458 if (described_value == NULL)
Azure.IoT Build 0:6ae2f7bca550 11459 {
Azure.IoT Build 0:6ae2f7bca550 11460 result = NULL;
Azure.IoT Build 0:6ae2f7bca550 11461 }
Azure.IoT Build 0:6ae2f7bca550 11462 else
Azure.IoT Build 0:6ae2f7bca550 11463 {
Azure.IoT Build 0:6ae2f7bca550 11464 AMQP_VALUE descriptor = amqpvalue_create_ulong(117);
Azure.IoT Build 0:6ae2f7bca550 11465 if (descriptor == NULL)
Azure.IoT Build 0:6ae2f7bca550 11466 {
Azure.IoT Build 0:6ae2f7bca550 11467 result = NULL;
Azure.IoT Build 0:6ae2f7bca550 11468 }
Azure.IoT Build 0:6ae2f7bca550 11469 else
Azure.IoT Build 0:6ae2f7bca550 11470 {
Azure.IoT Build 0:6ae2f7bca550 11471 result = amqpvalue_create_described(amqpvalue_clone(descriptor), amqpvalue_clone(described_value));
Azure.IoT Build 0:6ae2f7bca550 11472
Azure.IoT Build 0:6ae2f7bca550 11473 amqpvalue_destroy(descriptor);
Azure.IoT Build 0:6ae2f7bca550 11474 }
Azure.IoT Build 0:6ae2f7bca550 11475
Azure.IoT Build 0:6ae2f7bca550 11476 amqpvalue_destroy(described_value);
Azure.IoT Build 0:6ae2f7bca550 11477 }
Azure.IoT Build 0:6ae2f7bca550 11478
Azure.IoT Build 0:6ae2f7bca550 11479 return result;
Azure.IoT Build 0:6ae2f7bca550 11480 }
Azure.IoT Build 0:6ae2f7bca550 11481
Azure.IoT Build 0:6ae2f7bca550 11482 bool is_data_type_by_descriptor(AMQP_VALUE descriptor)
Azure.IoT Build 0:6ae2f7bca550 11483 {
Azure.IoT Build 0:6ae2f7bca550 11484 bool result;
Azure.IoT Build 0:6ae2f7bca550 11485
Azure.IoT Build 0:6ae2f7bca550 11486 uint64_t descriptor_ulong;
Azure.IoT Build 0:6ae2f7bca550 11487 if ((amqpvalue_get_ulong(descriptor, &descriptor_ulong) == 0) &&
Azure.IoT Build 0:6ae2f7bca550 11488 (descriptor_ulong == 117))
Azure.IoT Build 0:6ae2f7bca550 11489 {
Azure.IoT Build 0:6ae2f7bca550 11490 result = true;
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 result = false;
Azure.IoT Build 0:6ae2f7bca550 11495 }
Azure.IoT Build 0:6ae2f7bca550 11496
Azure.IoT Build 0:6ae2f7bca550 11497 return result;
Azure.IoT Build 0:6ae2f7bca550 11498 }
Azure.IoT Build 0:6ae2f7bca550 11499
Azure.IoT Build 0:6ae2f7bca550 11500 /* amqp-sequence */
Azure.IoT Build 0:6ae2f7bca550 11501
Azure.IoT Build 0:6ae2f7bca550 11502 AMQP_VALUE amqpvalue_create_amqp_sequence(AMQP_VALUE value)
Azure.IoT Build 0:6ae2f7bca550 11503 {
Azure.IoT Build 0:6ae2f7bca550 11504 AMQP_VALUE result;
Azure.IoT Build 0:6ae2f7bca550 11505 AMQP_VALUE described_value = amqpvalue_clone(value);
Azure.IoT Build 0:6ae2f7bca550 11506 if (described_value == NULL)
Azure.IoT Build 0:6ae2f7bca550 11507 {
Azure.IoT Build 0:6ae2f7bca550 11508 result = NULL;
Azure.IoT Build 0:6ae2f7bca550 11509 }
Azure.IoT Build 0:6ae2f7bca550 11510 else
Azure.IoT Build 0:6ae2f7bca550 11511 {
Azure.IoT Build 0:6ae2f7bca550 11512 AMQP_VALUE descriptor = amqpvalue_create_ulong(118);
Azure.IoT Build 0:6ae2f7bca550 11513 if (descriptor == NULL)
Azure.IoT Build 0:6ae2f7bca550 11514 {
Azure.IoT Build 0:6ae2f7bca550 11515 result = NULL;
Azure.IoT Build 0:6ae2f7bca550 11516 }
Azure.IoT Build 0:6ae2f7bca550 11517 else
Azure.IoT Build 0:6ae2f7bca550 11518 {
Azure.IoT Build 0:6ae2f7bca550 11519 result = amqpvalue_create_described(amqpvalue_clone(descriptor), amqpvalue_clone(described_value));
Azure.IoT Build 0:6ae2f7bca550 11520
Azure.IoT Build 0:6ae2f7bca550 11521 amqpvalue_destroy(descriptor);
Azure.IoT Build 0:6ae2f7bca550 11522 }
Azure.IoT Build 0:6ae2f7bca550 11523
Azure.IoT Build 0:6ae2f7bca550 11524 amqpvalue_destroy(described_value);
Azure.IoT Build 0:6ae2f7bca550 11525 }
Azure.IoT Build 0:6ae2f7bca550 11526
Azure.IoT Build 0:6ae2f7bca550 11527 return result;
Azure.IoT Build 0:6ae2f7bca550 11528 }
Azure.IoT Build 0:6ae2f7bca550 11529
Azure.IoT Build 0:6ae2f7bca550 11530 bool is_amqp_sequence_type_by_descriptor(AMQP_VALUE descriptor)
Azure.IoT Build 0:6ae2f7bca550 11531 {
Azure.IoT Build 0:6ae2f7bca550 11532 bool result;
Azure.IoT Build 0:6ae2f7bca550 11533
Azure.IoT Build 0:6ae2f7bca550 11534 uint64_t descriptor_ulong;
Azure.IoT Build 0:6ae2f7bca550 11535 if ((amqpvalue_get_ulong(descriptor, &descriptor_ulong) == 0) &&
Azure.IoT Build 0:6ae2f7bca550 11536 (descriptor_ulong == 118))
Azure.IoT Build 0:6ae2f7bca550 11537 {
Azure.IoT Build 0:6ae2f7bca550 11538 result = true;
Azure.IoT Build 0:6ae2f7bca550 11539 }
Azure.IoT Build 0:6ae2f7bca550 11540 else
Azure.IoT Build 0:6ae2f7bca550 11541 {
Azure.IoT Build 0:6ae2f7bca550 11542 result = false;
Azure.IoT Build 0:6ae2f7bca550 11543 }
Azure.IoT Build 0:6ae2f7bca550 11544
Azure.IoT Build 0:6ae2f7bca550 11545 return result;
Azure.IoT Build 0:6ae2f7bca550 11546 }
Azure.IoT Build 0:6ae2f7bca550 11547
Azure.IoT Build 0:6ae2f7bca550 11548 /* amqp-value */
Azure.IoT Build 0:6ae2f7bca550 11549
Azure.IoT Build 0:6ae2f7bca550 11550 AMQP_VALUE amqpvalue_create_amqp_value(AMQP_VALUE value)
Azure.IoT Build 0:6ae2f7bca550 11551 {
Azure.IoT Build 0:6ae2f7bca550 11552 AMQP_VALUE result;
Azure.IoT Build 0:6ae2f7bca550 11553 AMQP_VALUE described_value = amqpvalue_clone(value);
Azure.IoT Build 0:6ae2f7bca550 11554 if (described_value == NULL)
Azure.IoT Build 0:6ae2f7bca550 11555 {
Azure.IoT Build 0:6ae2f7bca550 11556 result = NULL;
Azure.IoT Build 0:6ae2f7bca550 11557 }
Azure.IoT Build 0:6ae2f7bca550 11558 else
Azure.IoT Build 0:6ae2f7bca550 11559 {
Azure.IoT Build 0:6ae2f7bca550 11560 AMQP_VALUE descriptor = amqpvalue_create_ulong(119);
Azure.IoT Build 0:6ae2f7bca550 11561 if (descriptor == NULL)
Azure.IoT Build 0:6ae2f7bca550 11562 {
Azure.IoT Build 0:6ae2f7bca550 11563 result = NULL;
Azure.IoT Build 0:6ae2f7bca550 11564 }
Azure.IoT Build 0:6ae2f7bca550 11565 else
Azure.IoT Build 0:6ae2f7bca550 11566 {
Azure.IoT Build 0:6ae2f7bca550 11567 result = amqpvalue_create_described(amqpvalue_clone(descriptor), amqpvalue_clone(described_value));
Azure.IoT Build 0:6ae2f7bca550 11568
Azure.IoT Build 0:6ae2f7bca550 11569 amqpvalue_destroy(descriptor);
Azure.IoT Build 0:6ae2f7bca550 11570 }
Azure.IoT Build 0:6ae2f7bca550 11571
Azure.IoT Build 0:6ae2f7bca550 11572 amqpvalue_destroy(described_value);
Azure.IoT Build 0:6ae2f7bca550 11573 }
Azure.IoT Build 0:6ae2f7bca550 11574
Azure.IoT Build 0:6ae2f7bca550 11575 return result;
Azure.IoT Build 0:6ae2f7bca550 11576 }
Azure.IoT Build 0:6ae2f7bca550 11577
Azure.IoT Build 0:6ae2f7bca550 11578 bool is_amqp_value_type_by_descriptor(AMQP_VALUE descriptor)
Azure.IoT Build 0:6ae2f7bca550 11579 {
Azure.IoT Build 0:6ae2f7bca550 11580 bool result;
Azure.IoT Build 0:6ae2f7bca550 11581
Azure.IoT Build 0:6ae2f7bca550 11582 uint64_t descriptor_ulong;
Azure.IoT Build 0:6ae2f7bca550 11583 if ((amqpvalue_get_ulong(descriptor, &descriptor_ulong) == 0) &&
Azure.IoT Build 0:6ae2f7bca550 11584 (descriptor_ulong == 119))
Azure.IoT Build 0:6ae2f7bca550 11585 {
Azure.IoT Build 0:6ae2f7bca550 11586 result = true;
Azure.IoT Build 0:6ae2f7bca550 11587 }
Azure.IoT Build 0:6ae2f7bca550 11588 else
Azure.IoT Build 0:6ae2f7bca550 11589 {
Azure.IoT Build 0:6ae2f7bca550 11590 result = false;
Azure.IoT Build 0:6ae2f7bca550 11591 }
Azure.IoT Build 0:6ae2f7bca550 11592
Azure.IoT Build 0:6ae2f7bca550 11593 return result;
Azure.IoT Build 0:6ae2f7bca550 11594 }
Azure.IoT Build 0:6ae2f7bca550 11595
Azure.IoT Build 0:6ae2f7bca550 11596 /* footer */
Azure.IoT Build 0:6ae2f7bca550 11597
Azure.IoT Build 0:6ae2f7bca550 11598 AMQP_VALUE amqpvalue_create_footer(footer value)
Azure.IoT Build 0:6ae2f7bca550 11599 {
Azure.IoT Build 0:6ae2f7bca550 11600 AMQP_VALUE result;
Azure.IoT Build 0:6ae2f7bca550 11601 AMQP_VALUE described_value = amqpvalue_create_annotations(value);
Azure.IoT Build 0:6ae2f7bca550 11602 if (described_value == NULL)
Azure.IoT Build 0:6ae2f7bca550 11603 {
Azure.IoT Build 0:6ae2f7bca550 11604 result = NULL;
Azure.IoT Build 0:6ae2f7bca550 11605 }
Azure.IoT Build 0:6ae2f7bca550 11606 else
Azure.IoT Build 0:6ae2f7bca550 11607 {
Azure.IoT Build 0:6ae2f7bca550 11608 AMQP_VALUE descriptor = amqpvalue_create_ulong(120);
Azure.IoT Build 0:6ae2f7bca550 11609 if (descriptor == NULL)
Azure.IoT Build 0:6ae2f7bca550 11610 {
Azure.IoT Build 0:6ae2f7bca550 11611 result = NULL;
Azure.IoT Build 0:6ae2f7bca550 11612 }
Azure.IoT Build 0:6ae2f7bca550 11613 else
Azure.IoT Build 0:6ae2f7bca550 11614 {
Azure.IoT Build 0:6ae2f7bca550 11615 result = amqpvalue_create_described(amqpvalue_clone(descriptor), amqpvalue_clone(described_value));
Azure.IoT Build 0:6ae2f7bca550 11616
Azure.IoT Build 0:6ae2f7bca550 11617 amqpvalue_destroy(descriptor);
Azure.IoT Build 0:6ae2f7bca550 11618 }
Azure.IoT Build 0:6ae2f7bca550 11619
Azure.IoT Build 0:6ae2f7bca550 11620 amqpvalue_destroy(described_value);
Azure.IoT Build 0:6ae2f7bca550 11621 }
Azure.IoT Build 0:6ae2f7bca550 11622
Azure.IoT Build 0:6ae2f7bca550 11623 return result;
Azure.IoT Build 0:6ae2f7bca550 11624 }
Azure.IoT Build 0:6ae2f7bca550 11625
Azure.IoT Build 0:6ae2f7bca550 11626 bool is_footer_type_by_descriptor(AMQP_VALUE descriptor)
Azure.IoT Build 0:6ae2f7bca550 11627 {
Azure.IoT Build 0:6ae2f7bca550 11628 bool result;
Azure.IoT Build 0:6ae2f7bca550 11629
Azure.IoT Build 0:6ae2f7bca550 11630 uint64_t descriptor_ulong;
Azure.IoT Build 0:6ae2f7bca550 11631 if ((amqpvalue_get_ulong(descriptor, &descriptor_ulong) == 0) &&
Azure.IoT Build 0:6ae2f7bca550 11632 (descriptor_ulong == 120))
Azure.IoT Build 0:6ae2f7bca550 11633 {
Azure.IoT Build 0:6ae2f7bca550 11634 result = true;
Azure.IoT Build 0:6ae2f7bca550 11635 }
Azure.IoT Build 0:6ae2f7bca550 11636 else
Azure.IoT Build 0:6ae2f7bca550 11637 {
Azure.IoT Build 0:6ae2f7bca550 11638 result = false;
Azure.IoT Build 0:6ae2f7bca550 11639 }
Azure.IoT Build 0:6ae2f7bca550 11640
Azure.IoT Build 0:6ae2f7bca550 11641 return result;
Azure.IoT Build 0:6ae2f7bca550 11642 }
Azure.IoT Build 0:6ae2f7bca550 11643
Azure.IoT Build 0:6ae2f7bca550 11644 /* properties */
Azure.IoT Build 0:6ae2f7bca550 11645
Azure.IoT Build 0:6ae2f7bca550 11646 typedef struct PROPERTIES_INSTANCE_TAG
Azure.IoT Build 0:6ae2f7bca550 11647 {
Azure.IoT Build 0:6ae2f7bca550 11648 AMQP_VALUE composite_value;
Azure.IoT Build 0:6ae2f7bca550 11649 } PROPERTIES_INSTANCE;
Azure.IoT Build 0:6ae2f7bca550 11650
Azure.IoT Build 0:6ae2f7bca550 11651 static PROPERTIES_HANDLE properties_create_internal(void)
Azure.IoT Build 0:6ae2f7bca550 11652 {
Azure.IoT Build 0:6ae2f7bca550 11653 PROPERTIES_INSTANCE* properties_instance = (PROPERTIES_INSTANCE*)amqpalloc_malloc(sizeof(PROPERTIES_INSTANCE));
Azure.IoT Build 0:6ae2f7bca550 11654 if (properties_instance != NULL)
Azure.IoT Build 0:6ae2f7bca550 11655 {
Azure.IoT Build 0:6ae2f7bca550 11656 properties_instance->composite_value = NULL;
Azure.IoT Build 0:6ae2f7bca550 11657 }
Azure.IoT Build 0:6ae2f7bca550 11658
Azure.IoT Build 0:6ae2f7bca550 11659 return properties_instance;
Azure.IoT Build 0:6ae2f7bca550 11660 }
Azure.IoT Build 0:6ae2f7bca550 11661
Azure.IoT Build 0:6ae2f7bca550 11662 PROPERTIES_HANDLE properties_create(void)
Azure.IoT Build 0:6ae2f7bca550 11663 {
Azure.IoT Build 0:6ae2f7bca550 11664 PROPERTIES_INSTANCE* properties_instance = (PROPERTIES_INSTANCE*)amqpalloc_malloc(sizeof(PROPERTIES_INSTANCE));
Azure.IoT Build 0:6ae2f7bca550 11665 if (properties_instance != NULL)
Azure.IoT Build 0:6ae2f7bca550 11666 {
Azure.IoT Build 0:6ae2f7bca550 11667 properties_instance->composite_value = amqpvalue_create_composite_with_ulong_descriptor(115);
Azure.IoT Build 0:6ae2f7bca550 11668 if (properties_instance->composite_value == NULL)
Azure.IoT Build 0:6ae2f7bca550 11669 {
Azure.IoT Build 0:6ae2f7bca550 11670 amqpalloc_free(properties_instance);
Azure.IoT Build 0:6ae2f7bca550 11671 properties_instance = NULL;
Azure.IoT Build 0:6ae2f7bca550 11672 }
Azure.IoT Build 0:6ae2f7bca550 11673 }
Azure.IoT Build 0:6ae2f7bca550 11674
Azure.IoT Build 0:6ae2f7bca550 11675 return properties_instance;
Azure.IoT Build 0:6ae2f7bca550 11676 }
Azure.IoT Build 0:6ae2f7bca550 11677
Azure.IoT Build 0:6ae2f7bca550 11678 PROPERTIES_HANDLE properties_clone(PROPERTIES_HANDLE value)
Azure.IoT Build 0:6ae2f7bca550 11679 {
Azure.IoT Build 0:6ae2f7bca550 11680 PROPERTIES_INSTANCE* properties_instance = (PROPERTIES_INSTANCE*)amqpalloc_malloc(sizeof(PROPERTIES_INSTANCE));
Azure.IoT Build 0:6ae2f7bca550 11681 if (properties_instance != NULL)
Azure.IoT Build 0:6ae2f7bca550 11682 {
Azure.IoT Build 0:6ae2f7bca550 11683 properties_instance->composite_value = amqpvalue_clone(((PROPERTIES_INSTANCE*)value)->composite_value);
Azure.IoT Build 0:6ae2f7bca550 11684 if (properties_instance->composite_value == NULL)
Azure.IoT Build 0:6ae2f7bca550 11685 {
Azure.IoT Build 0:6ae2f7bca550 11686 amqpalloc_free(properties_instance);
Azure.IoT Build 0:6ae2f7bca550 11687 properties_instance = NULL;
Azure.IoT Build 0:6ae2f7bca550 11688 }
Azure.IoT Build 0:6ae2f7bca550 11689 }
Azure.IoT Build 0:6ae2f7bca550 11690
Azure.IoT Build 0:6ae2f7bca550 11691 return properties_instance;
Azure.IoT Build 0:6ae2f7bca550 11692 }
Azure.IoT Build 0:6ae2f7bca550 11693
Azure.IoT Build 0:6ae2f7bca550 11694 void properties_destroy(PROPERTIES_HANDLE properties)
Azure.IoT Build 0:6ae2f7bca550 11695 {
Azure.IoT Build 0:6ae2f7bca550 11696 if (properties != NULL)
Azure.IoT Build 0:6ae2f7bca550 11697 {
Azure.IoT Build 0:6ae2f7bca550 11698 PROPERTIES_INSTANCE* properties_instance = (PROPERTIES_INSTANCE*)properties;
Azure.IoT Build 0:6ae2f7bca550 11699 amqpvalue_destroy(properties_instance->composite_value);
Azure.IoT Build 0:6ae2f7bca550 11700 amqpalloc_free(properties_instance);
Azure.IoT Build 0:6ae2f7bca550 11701 }
Azure.IoT Build 0:6ae2f7bca550 11702 }
Azure.IoT Build 0:6ae2f7bca550 11703
Azure.IoT Build 0:6ae2f7bca550 11704 AMQP_VALUE amqpvalue_create_properties(PROPERTIES_HANDLE properties)
Azure.IoT Build 0:6ae2f7bca550 11705 {
Azure.IoT Build 0:6ae2f7bca550 11706 AMQP_VALUE result;
Azure.IoT Build 0:6ae2f7bca550 11707
Azure.IoT Build 0:6ae2f7bca550 11708 if (properties == 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 PROPERTIES_INSTANCE* properties_instance = (PROPERTIES_INSTANCE*)properties;
Azure.IoT Build 0:6ae2f7bca550 11715 result = amqpvalue_clone(properties_instance->composite_value);
Azure.IoT Build 0:6ae2f7bca550 11716 }
Azure.IoT Build 0:6ae2f7bca550 11717
Azure.IoT Build 0:6ae2f7bca550 11718 return result;
Azure.IoT Build 0:6ae2f7bca550 11719 }
Azure.IoT Build 0:6ae2f7bca550 11720
Azure.IoT Build 0:6ae2f7bca550 11721 bool is_properties_type_by_descriptor(AMQP_VALUE descriptor)
Azure.IoT Build 0:6ae2f7bca550 11722 {
Azure.IoT Build 0:6ae2f7bca550 11723 bool result;
Azure.IoT Build 0:6ae2f7bca550 11724
Azure.IoT Build 0:6ae2f7bca550 11725 uint64_t descriptor_ulong;
Azure.IoT Build 0:6ae2f7bca550 11726 if ((amqpvalue_get_ulong(descriptor, &descriptor_ulong) == 0) &&
Azure.IoT Build 0:6ae2f7bca550 11727 (descriptor_ulong == 115))
Azure.IoT Build 0:6ae2f7bca550 11728 {
Azure.IoT Build 0:6ae2f7bca550 11729 result = true;
Azure.IoT Build 0:6ae2f7bca550 11730 }
Azure.IoT Build 0:6ae2f7bca550 11731 else
Azure.IoT Build 0:6ae2f7bca550 11732 {
Azure.IoT Build 0:6ae2f7bca550 11733 result = false;
Azure.IoT Build 0:6ae2f7bca550 11734 }
Azure.IoT Build 0:6ae2f7bca550 11735
Azure.IoT Build 0:6ae2f7bca550 11736 return result;
Azure.IoT Build 0:6ae2f7bca550 11737 }
Azure.IoT Build 0:6ae2f7bca550 11738
Azure.IoT Build 0:6ae2f7bca550 11739
Azure.IoT Build 0:6ae2f7bca550 11740 int amqpvalue_get_properties(AMQP_VALUE value, PROPERTIES_HANDLE* properties_handle)
Azure.IoT Build 0:6ae2f7bca550 11741 {
Azure.IoT Build 0:6ae2f7bca550 11742 int result;
Azure.IoT Build 0:6ae2f7bca550 11743 PROPERTIES_INSTANCE* properties_instance = (PROPERTIES_INSTANCE*)properties_create_internal();
Azure.IoT Build 0:6ae2f7bca550 11744 *properties_handle = properties_instance;
Azure.IoT Build 0:6ae2f7bca550 11745 if (*properties_handle == NULL)
Azure.IoT Build 0:6ae2f7bca550 11746 {
Azure.IoT Build 0:6ae2f7bca550 11747 result = __LINE__;
Azure.IoT Build 0:6ae2f7bca550 11748 }
Azure.IoT Build 0:6ae2f7bca550 11749 else
Azure.IoT Build 0:6ae2f7bca550 11750 {
Azure.IoT Build 0:6ae2f7bca550 11751 AMQP_VALUE list_value = amqpvalue_get_inplace_described_value(value);
Azure.IoT Build 0:6ae2f7bca550 11752 if (list_value == NULL)
Azure.IoT Build 0:6ae2f7bca550 11753 {
Azure.IoT Build 0:6ae2f7bca550 11754 properties_destroy(*properties_handle);
Azure.IoT Build 0:6ae2f7bca550 11755 result = __LINE__;
Azure.IoT Build 0:6ae2f7bca550 11756 }
Azure.IoT Build 0:6ae2f7bca550 11757 else
Azure.IoT Build 0:6ae2f7bca550 11758 {
Azure.IoT Build 0:6ae2f7bca550 11759 do
Azure.IoT Build 0:6ae2f7bca550 11760 {
Azure.IoT Build 0:6ae2f7bca550 11761 AMQP_VALUE item_value;
Azure.IoT Build 0:6ae2f7bca550 11762 /* message-id */
Azure.IoT Build 0:6ae2f7bca550 11763 item_value = amqpvalue_get_list_item(list_value, 0);
Azure.IoT Build 0:6ae2f7bca550 11764 if (item_value == NULL)
Azure.IoT Build 0:6ae2f7bca550 11765 {
Azure.IoT Build 0:6ae2f7bca550 11766 /* do nothing */
Azure.IoT Build 0:6ae2f7bca550 11767 }
Azure.IoT Build 0:6ae2f7bca550 11768 else
Azure.IoT Build 0:6ae2f7bca550 11769 {
Azure.IoT Build 0:6ae2f7bca550 11770 amqpvalue_destroy(item_value);
Azure.IoT Build 0:6ae2f7bca550 11771 }
Azure.IoT Build 0:6ae2f7bca550 11772 /* user-id */
Azure.IoT Build 0:6ae2f7bca550 11773 item_value = amqpvalue_get_list_item(list_value, 1);
Azure.IoT Build 0:6ae2f7bca550 11774 if (item_value == NULL)
Azure.IoT Build 0:6ae2f7bca550 11775 {
Azure.IoT Build 0:6ae2f7bca550 11776 /* do nothing */
Azure.IoT Build 0:6ae2f7bca550 11777 }
Azure.IoT Build 0:6ae2f7bca550 11778 else
Azure.IoT Build 0:6ae2f7bca550 11779 {
Azure.IoT Build 0:6ae2f7bca550 11780 amqp_binary user_id;
Azure.IoT Build 0:6ae2f7bca550 11781 if (amqpvalue_get_binary(item_value, &user_id) != 0)
Azure.IoT Build 0:6ae2f7bca550 11782 {
Azure.IoT Build 0:6ae2f7bca550 11783 if (amqpvalue_get_type(item_value) != AMQP_TYPE_NULL)
Azure.IoT Build 0:6ae2f7bca550 11784 {
Azure.IoT Build 0:6ae2f7bca550 11785 properties_destroy(*properties_handle);
Azure.IoT Build 0:6ae2f7bca550 11786 result = __LINE__;
Azure.IoT Build 0:6ae2f7bca550 11787 break;
Azure.IoT Build 0:6ae2f7bca550 11788 }
Azure.IoT Build 0:6ae2f7bca550 11789 }
Azure.IoT Build 0:6ae2f7bca550 11790
Azure.IoT Build 0:6ae2f7bca550 11791 amqpvalue_destroy(item_value);
Azure.IoT Build 0:6ae2f7bca550 11792 }
Azure.IoT Build 0:6ae2f7bca550 11793 /* to */
Azure.IoT Build 0:6ae2f7bca550 11794 item_value = amqpvalue_get_list_item(list_value, 2);
Azure.IoT Build 0:6ae2f7bca550 11795 if (item_value == NULL)
Azure.IoT Build 0:6ae2f7bca550 11796 {
Azure.IoT Build 0:6ae2f7bca550 11797 /* do nothing */
Azure.IoT Build 0:6ae2f7bca550 11798 }
Azure.IoT Build 0:6ae2f7bca550 11799 else
Azure.IoT Build 0:6ae2f7bca550 11800 {
Azure.IoT Build 0:6ae2f7bca550 11801 amqpvalue_destroy(item_value);
Azure.IoT Build 0:6ae2f7bca550 11802 }
Azure.IoT Build 0:6ae2f7bca550 11803 /* subject */
Azure.IoT Build 0:6ae2f7bca550 11804 item_value = amqpvalue_get_list_item(list_value, 3);
Azure.IoT Build 0:6ae2f7bca550 11805 if (item_value == NULL)
Azure.IoT Build 0:6ae2f7bca550 11806 {
Azure.IoT Build 0:6ae2f7bca550 11807 /* do nothing */
Azure.IoT Build 0:6ae2f7bca550 11808 }
Azure.IoT Build 0:6ae2f7bca550 11809 else
Azure.IoT Build 0:6ae2f7bca550 11810 {
Azure.IoT Build 0:6ae2f7bca550 11811 const char* subject;
Azure.IoT Build 0:6ae2f7bca550 11812 if (amqpvalue_get_string(item_value, &subject) != 0)
Azure.IoT Build 0:6ae2f7bca550 11813 {
Azure.IoT Build 0:6ae2f7bca550 11814 if (amqpvalue_get_type(item_value) != AMQP_TYPE_NULL)
Azure.IoT Build 0:6ae2f7bca550 11815 {
Azure.IoT Build 0:6ae2f7bca550 11816 properties_destroy(*properties_handle);
Azure.IoT Build 0:6ae2f7bca550 11817 result = __LINE__;
Azure.IoT Build 0:6ae2f7bca550 11818 break;
Azure.IoT Build 0:6ae2f7bca550 11819 }
Azure.IoT Build 0:6ae2f7bca550 11820 }
Azure.IoT Build 0:6ae2f7bca550 11821
Azure.IoT Build 0:6ae2f7bca550 11822 amqpvalue_destroy(item_value);
Azure.IoT Build 0:6ae2f7bca550 11823 }
Azure.IoT Build 0:6ae2f7bca550 11824 /* reply-to */
Azure.IoT Build 0:6ae2f7bca550 11825 item_value = amqpvalue_get_list_item(list_value, 4);
Azure.IoT Build 0:6ae2f7bca550 11826 if (item_value == NULL)
Azure.IoT Build 0:6ae2f7bca550 11827 {
Azure.IoT Build 0:6ae2f7bca550 11828 /* do nothing */
Azure.IoT Build 0:6ae2f7bca550 11829 }
Azure.IoT Build 0:6ae2f7bca550 11830 else
Azure.IoT Build 0:6ae2f7bca550 11831 {
Azure.IoT Build 0:6ae2f7bca550 11832 amqpvalue_destroy(item_value);
Azure.IoT Build 0:6ae2f7bca550 11833 }
Azure.IoT Build 0:6ae2f7bca550 11834 /* correlation-id */
Azure.IoT Build 0:6ae2f7bca550 11835 item_value = amqpvalue_get_list_item(list_value, 5);
Azure.IoT Build 0:6ae2f7bca550 11836 if (item_value == NULL)
Azure.IoT Build 0:6ae2f7bca550 11837 {
Azure.IoT Build 0:6ae2f7bca550 11838 /* do nothing */
Azure.IoT Build 0:6ae2f7bca550 11839 }
Azure.IoT Build 0:6ae2f7bca550 11840 else
Azure.IoT Build 0:6ae2f7bca550 11841 {
Azure.IoT Build 0:6ae2f7bca550 11842 amqpvalue_destroy(item_value);
Azure.IoT Build 0:6ae2f7bca550 11843 }
Azure.IoT Build 0:6ae2f7bca550 11844 /* content-type */
Azure.IoT Build 0:6ae2f7bca550 11845 item_value = amqpvalue_get_list_item(list_value, 6);
Azure.IoT Build 0:6ae2f7bca550 11846 if (item_value == NULL)
Azure.IoT Build 0:6ae2f7bca550 11847 {
Azure.IoT Build 0:6ae2f7bca550 11848 /* do nothing */
Azure.IoT Build 0:6ae2f7bca550 11849 }
Azure.IoT Build 0:6ae2f7bca550 11850 else
Azure.IoT Build 0:6ae2f7bca550 11851 {
Azure.IoT Build 0:6ae2f7bca550 11852 const char* content_type;
Azure.IoT Build 0:6ae2f7bca550 11853 if (amqpvalue_get_symbol(item_value, &content_type) != 0)
Azure.IoT Build 0:6ae2f7bca550 11854 {
Azure.IoT Build 0:6ae2f7bca550 11855 if (amqpvalue_get_type(item_value) != AMQP_TYPE_NULL)
Azure.IoT Build 0:6ae2f7bca550 11856 {
Azure.IoT Build 0:6ae2f7bca550 11857 properties_destroy(*properties_handle);
Azure.IoT Build 0:6ae2f7bca550 11858 result = __LINE__;
Azure.IoT Build 0:6ae2f7bca550 11859 break;
Azure.IoT Build 0:6ae2f7bca550 11860 }
Azure.IoT Build 0:6ae2f7bca550 11861 }
Azure.IoT Build 0:6ae2f7bca550 11862
Azure.IoT Build 0:6ae2f7bca550 11863 amqpvalue_destroy(item_value);
Azure.IoT Build 0:6ae2f7bca550 11864 }
Azure.IoT Build 0:6ae2f7bca550 11865 /* content-encoding */
Azure.IoT Build 0:6ae2f7bca550 11866 item_value = amqpvalue_get_list_item(list_value, 7);
Azure.IoT Build 0:6ae2f7bca550 11867 if (item_value == NULL)
Azure.IoT Build 0:6ae2f7bca550 11868 {
Azure.IoT Build 0:6ae2f7bca550 11869 /* do nothing */
Azure.IoT Build 0:6ae2f7bca550 11870 }
Azure.IoT Build 0:6ae2f7bca550 11871 else
Azure.IoT Build 0:6ae2f7bca550 11872 {
Azure.IoT Build 0:6ae2f7bca550 11873 const char* content_encoding;
Azure.IoT Build 0:6ae2f7bca550 11874 if (amqpvalue_get_symbol(item_value, &content_encoding) != 0)
Azure.IoT Build 0:6ae2f7bca550 11875 {
Azure.IoT Build 0:6ae2f7bca550 11876 if (amqpvalue_get_type(item_value) != AMQP_TYPE_NULL)
Azure.IoT Build 0:6ae2f7bca550 11877 {
Azure.IoT Build 0:6ae2f7bca550 11878 properties_destroy(*properties_handle);
Azure.IoT Build 0:6ae2f7bca550 11879 result = __LINE__;
Azure.IoT Build 0:6ae2f7bca550 11880 break;
Azure.IoT Build 0:6ae2f7bca550 11881 }
Azure.IoT Build 0:6ae2f7bca550 11882 }
Azure.IoT Build 0:6ae2f7bca550 11883
Azure.IoT Build 0:6ae2f7bca550 11884 amqpvalue_destroy(item_value);
Azure.IoT Build 0:6ae2f7bca550 11885 }
Azure.IoT Build 0:6ae2f7bca550 11886 /* absolute-expiry-time */
Azure.IoT Build 0:6ae2f7bca550 11887 item_value = amqpvalue_get_list_item(list_value, 8);
Azure.IoT Build 0:6ae2f7bca550 11888 if (item_value == NULL)
Azure.IoT Build 0:6ae2f7bca550 11889 {
Azure.IoT Build 0:6ae2f7bca550 11890 /* do nothing */
Azure.IoT Build 0:6ae2f7bca550 11891 }
Azure.IoT Build 0:6ae2f7bca550 11892 else
Azure.IoT Build 0:6ae2f7bca550 11893 {
Azure.IoT Build 0:6ae2f7bca550 11894 timestamp absolute_expiry_time;
Azure.IoT Build 0:6ae2f7bca550 11895 if (amqpvalue_get_timestamp(item_value, &absolute_expiry_time) != 0)
Azure.IoT Build 0:6ae2f7bca550 11896 {
Azure.IoT Build 0:6ae2f7bca550 11897 if (amqpvalue_get_type(item_value) != AMQP_TYPE_NULL)
Azure.IoT Build 0:6ae2f7bca550 11898 {
Azure.IoT Build 0:6ae2f7bca550 11899 properties_destroy(*properties_handle);
Azure.IoT Build 0:6ae2f7bca550 11900 result = __LINE__;
Azure.IoT Build 0:6ae2f7bca550 11901 break;
Azure.IoT Build 0:6ae2f7bca550 11902 }
Azure.IoT Build 0:6ae2f7bca550 11903 }
Azure.IoT Build 0:6ae2f7bca550 11904
Azure.IoT Build 0:6ae2f7bca550 11905 amqpvalue_destroy(item_value);
Azure.IoT Build 0:6ae2f7bca550 11906 }
Azure.IoT Build 0:6ae2f7bca550 11907 /* creation-time */
Azure.IoT Build 0:6ae2f7bca550 11908 item_value = amqpvalue_get_list_item(list_value, 9);
Azure.IoT Build 0:6ae2f7bca550 11909 if (item_value == NULL)
Azure.IoT Build 0:6ae2f7bca550 11910 {
Azure.IoT Build 0:6ae2f7bca550 11911 /* do nothing */
Azure.IoT Build 0:6ae2f7bca550 11912 }
Azure.IoT Build 0:6ae2f7bca550 11913 else
Azure.IoT Build 0:6ae2f7bca550 11914 {
Azure.IoT Build 0:6ae2f7bca550 11915 timestamp creation_time;
Azure.IoT Build 0:6ae2f7bca550 11916 if (amqpvalue_get_timestamp(item_value, &creation_time) != 0)
Azure.IoT Build 0:6ae2f7bca550 11917 {
Azure.IoT Build 0:6ae2f7bca550 11918 if (amqpvalue_get_type(item_value) != AMQP_TYPE_NULL)
Azure.IoT Build 0:6ae2f7bca550 11919 {
Azure.IoT Build 0:6ae2f7bca550 11920 properties_destroy(*properties_handle);
Azure.IoT Build 0:6ae2f7bca550 11921 result = __LINE__;
Azure.IoT Build 0:6ae2f7bca550 11922 break;
Azure.IoT Build 0:6ae2f7bca550 11923 }
Azure.IoT Build 0:6ae2f7bca550 11924 }
Azure.IoT Build 0:6ae2f7bca550 11925
Azure.IoT Build 0:6ae2f7bca550 11926 amqpvalue_destroy(item_value);
Azure.IoT Build 0:6ae2f7bca550 11927 }
Azure.IoT Build 0:6ae2f7bca550 11928 /* group-id */
Azure.IoT Build 0:6ae2f7bca550 11929 item_value = amqpvalue_get_list_item(list_value, 10);
Azure.IoT Build 0:6ae2f7bca550 11930 if (item_value == NULL)
Azure.IoT Build 0:6ae2f7bca550 11931 {
Azure.IoT Build 0:6ae2f7bca550 11932 /* do nothing */
Azure.IoT Build 0:6ae2f7bca550 11933 }
Azure.IoT Build 0:6ae2f7bca550 11934 else
Azure.IoT Build 0:6ae2f7bca550 11935 {
Azure.IoT Build 0:6ae2f7bca550 11936 const char* group_id;
Azure.IoT Build 0:6ae2f7bca550 11937 if (amqpvalue_get_string(item_value, &group_id) != 0)
Azure.IoT Build 0:6ae2f7bca550 11938 {
Azure.IoT Build 0:6ae2f7bca550 11939 if (amqpvalue_get_type(item_value) != AMQP_TYPE_NULL)
Azure.IoT Build 0:6ae2f7bca550 11940 {
Azure.IoT Build 0:6ae2f7bca550 11941 properties_destroy(*properties_handle);
Azure.IoT Build 0:6ae2f7bca550 11942 result = __LINE__;
Azure.IoT Build 0:6ae2f7bca550 11943 break;
Azure.IoT Build 0:6ae2f7bca550 11944 }
Azure.IoT Build 0:6ae2f7bca550 11945 }
Azure.IoT Build 0:6ae2f7bca550 11946
Azure.IoT Build 0:6ae2f7bca550 11947 amqpvalue_destroy(item_value);
Azure.IoT Build 0:6ae2f7bca550 11948 }
Azure.IoT Build 0:6ae2f7bca550 11949 /* group-sequence */
Azure.IoT Build 0:6ae2f7bca550 11950 item_value = amqpvalue_get_list_item(list_value, 11);
Azure.IoT Build 0:6ae2f7bca550 11951 if (item_value == NULL)
Azure.IoT Build 0:6ae2f7bca550 11952 {
Azure.IoT Build 0:6ae2f7bca550 11953 /* do nothing */
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 sequence_no group_sequence;
Azure.IoT Build 0:6ae2f7bca550 11958 if (amqpvalue_get_sequence_no(item_value, &group_sequence) != 0)
Azure.IoT Build 0:6ae2f7bca550 11959 {
Azure.IoT Build 0:6ae2f7bca550 11960 if (amqpvalue_get_type(item_value) != AMQP_TYPE_NULL)
Azure.IoT Build 0:6ae2f7bca550 11961 {
Azure.IoT Build 0:6ae2f7bca550 11962 properties_destroy(*properties_handle);
Azure.IoT Build 0:6ae2f7bca550 11963 result = __LINE__;
Azure.IoT Build 0:6ae2f7bca550 11964 break;
Azure.IoT Build 0:6ae2f7bca550 11965 }
Azure.IoT Build 0:6ae2f7bca550 11966 }
Azure.IoT Build 0:6ae2f7bca550 11967
Azure.IoT Build 0:6ae2f7bca550 11968 amqpvalue_destroy(item_value);
Azure.IoT Build 0:6ae2f7bca550 11969 }
Azure.IoT Build 0:6ae2f7bca550 11970 /* reply-to-group-id */
Azure.IoT Build 0:6ae2f7bca550 11971 item_value = amqpvalue_get_list_item(list_value, 12);
Azure.IoT Build 0:6ae2f7bca550 11972 if (item_value == NULL)
Azure.IoT Build 0:6ae2f7bca550 11973 {
Azure.IoT Build 0:6ae2f7bca550 11974 /* do nothing */
Azure.IoT Build 0:6ae2f7bca550 11975 }
Azure.IoT Build 0:6ae2f7bca550 11976 else
Azure.IoT Build 0:6ae2f7bca550 11977 {
Azure.IoT Build 0:6ae2f7bca550 11978 const char* reply_to_group_id;
Azure.IoT Build 0:6ae2f7bca550 11979 if (amqpvalue_get_string(item_value, &reply_to_group_id) != 0)
Azure.IoT Build 0:6ae2f7bca550 11980 {
Azure.IoT Build 0:6ae2f7bca550 11981 if (amqpvalue_get_type(item_value) != AMQP_TYPE_NULL)
Azure.IoT Build 0:6ae2f7bca550 11982 {
Azure.IoT Build 0:6ae2f7bca550 11983 properties_destroy(*properties_handle);
Azure.IoT Build 0:6ae2f7bca550 11984 result = __LINE__;
Azure.IoT Build 0:6ae2f7bca550 11985 break;
Azure.IoT Build 0:6ae2f7bca550 11986 }
Azure.IoT Build 0:6ae2f7bca550 11987 }
Azure.IoT Build 0:6ae2f7bca550 11988
Azure.IoT Build 0:6ae2f7bca550 11989 amqpvalue_destroy(item_value);
Azure.IoT Build 0:6ae2f7bca550 11990 }
Azure.IoT Build 0:6ae2f7bca550 11991
Azure.IoT Build 0:6ae2f7bca550 11992 properties_instance->composite_value = amqpvalue_clone(value);
Azure.IoT Build 0:6ae2f7bca550 11993
Azure.IoT Build 0:6ae2f7bca550 11994 result = 0;
Azure.IoT Build 0:6ae2f7bca550 11995 } while (0);
Azure.IoT Build 0:6ae2f7bca550 11996 }
Azure.IoT Build 0:6ae2f7bca550 11997 }
Azure.IoT Build 0:6ae2f7bca550 11998
Azure.IoT Build 0:6ae2f7bca550 11999 return result;
Azure.IoT Build 0:6ae2f7bca550 12000 }
Azure.IoT Build 0:6ae2f7bca550 12001
Azure.IoT Build 0:6ae2f7bca550 12002 int properties_get_message_id(PROPERTIES_HANDLE properties, AMQP_VALUE* message_id_value)
Azure.IoT Build 0:6ae2f7bca550 12003 {
Azure.IoT Build 0:6ae2f7bca550 12004 int result;
Azure.IoT Build 0:6ae2f7bca550 12005
Azure.IoT Build 0:6ae2f7bca550 12006 if (properties == NULL)
Azure.IoT Build 0:6ae2f7bca550 12007 {
Azure.IoT Build 0:6ae2f7bca550 12008 result = __LINE__;
Azure.IoT Build 0:6ae2f7bca550 12009 }
Azure.IoT Build 0:6ae2f7bca550 12010 else
Azure.IoT Build 0:6ae2f7bca550 12011 {
Azure.IoT Build 0:6ae2f7bca550 12012 PROPERTIES_INSTANCE* properties_instance = (PROPERTIES_INSTANCE*)properties;
Azure.IoT Build 0:6ae2f7bca550 12013 AMQP_VALUE item_value = amqpvalue_get_composite_item_in_place(properties_instance->composite_value, 0);
Azure.IoT Build 0:6ae2f7bca550 12014 if (item_value == NULL)
Azure.IoT Build 0:6ae2f7bca550 12015 {
Azure.IoT Build 0:6ae2f7bca550 12016 result = __LINE__;
Azure.IoT Build 0:6ae2f7bca550 12017 }
Azure.IoT Build 0:6ae2f7bca550 12018 else
Azure.IoT Build 0:6ae2f7bca550 12019 {
Azure.IoT Build 0:6ae2f7bca550 12020 *message_id_value = item_value;
Azure.IoT Build 0:6ae2f7bca550 12021 result = 0;
Azure.IoT Build 0:6ae2f7bca550 12022 }
Azure.IoT Build 0:6ae2f7bca550 12023 }
Azure.IoT Build 0:6ae2f7bca550 12024
Azure.IoT Build 0:6ae2f7bca550 12025 return result;
Azure.IoT Build 0:6ae2f7bca550 12026 }
Azure.IoT Build 0:6ae2f7bca550 12027
Azure.IoT Build 0:6ae2f7bca550 12028 int properties_set_message_id(PROPERTIES_HANDLE properties, AMQP_VALUE message_id_value)
Azure.IoT Build 0:6ae2f7bca550 12029 {
Azure.IoT Build 0:6ae2f7bca550 12030 int result;
Azure.IoT Build 0:6ae2f7bca550 12031
Azure.IoT Build 0:6ae2f7bca550 12032 if (properties == NULL)
Azure.IoT Build 0:6ae2f7bca550 12033 {
Azure.IoT Build 0:6ae2f7bca550 12034 result = __LINE__;
Azure.IoT Build 0:6ae2f7bca550 12035 }
Azure.IoT Build 0:6ae2f7bca550 12036 else
Azure.IoT Build 0:6ae2f7bca550 12037 {
Azure.IoT Build 0:6ae2f7bca550 12038 PROPERTIES_INSTANCE* properties_instance = (PROPERTIES_INSTANCE*)properties;
Azure.IoT Build 0:6ae2f7bca550 12039 AMQP_VALUE message_id_amqp_value = amqpvalue_clone(message_id_value);
Azure.IoT Build 0:6ae2f7bca550 12040 if (message_id_amqp_value == NULL)
Azure.IoT Build 0:6ae2f7bca550 12041 {
Azure.IoT Build 0:6ae2f7bca550 12042 result = __LINE__;
Azure.IoT Build 0:6ae2f7bca550 12043 }
Azure.IoT Build 0:6ae2f7bca550 12044 else
Azure.IoT Build 0:6ae2f7bca550 12045 {
Azure.IoT Build 0:6ae2f7bca550 12046 if (amqpvalue_set_composite_item(properties_instance->composite_value, 0, message_id_amqp_value) != 0)
Azure.IoT Build 0:6ae2f7bca550 12047 {
Azure.IoT Build 0:6ae2f7bca550 12048 result = __LINE__;
Azure.IoT Build 0:6ae2f7bca550 12049 }
Azure.IoT Build 0:6ae2f7bca550 12050 else
Azure.IoT Build 0:6ae2f7bca550 12051 {
Azure.IoT Build 0:6ae2f7bca550 12052 result = 0;
Azure.IoT Build 0:6ae2f7bca550 12053 }
Azure.IoT Build 0:6ae2f7bca550 12054
Azure.IoT Build 0:6ae2f7bca550 12055 amqpvalue_destroy(message_id_amqp_value);
Azure.IoT Build 0:6ae2f7bca550 12056 }
Azure.IoT Build 0:6ae2f7bca550 12057 }
Azure.IoT Build 0:6ae2f7bca550 12058
Azure.IoT Build 0:6ae2f7bca550 12059 return result;
Azure.IoT Build 0:6ae2f7bca550 12060 }
Azure.IoT Build 0:6ae2f7bca550 12061
Azure.IoT Build 0:6ae2f7bca550 12062 int properties_get_user_id(PROPERTIES_HANDLE properties, amqp_binary* user_id_value)
Azure.IoT Build 0:6ae2f7bca550 12063 {
Azure.IoT Build 0:6ae2f7bca550 12064 int result;
Azure.IoT Build 0:6ae2f7bca550 12065
Azure.IoT Build 0:6ae2f7bca550 12066 if (properties == NULL)
Azure.IoT Build 0:6ae2f7bca550 12067 {
Azure.IoT Build 0:6ae2f7bca550 12068 result = __LINE__;
Azure.IoT Build 0:6ae2f7bca550 12069 }
Azure.IoT Build 0:6ae2f7bca550 12070 else
Azure.IoT Build 0:6ae2f7bca550 12071 {
Azure.IoT Build 0:6ae2f7bca550 12072 PROPERTIES_INSTANCE* properties_instance = (PROPERTIES_INSTANCE*)properties;
Azure.IoT Build 0:6ae2f7bca550 12073 AMQP_VALUE item_value = amqpvalue_get_composite_item_in_place(properties_instance->composite_value, 1);
Azure.IoT Build 0:6ae2f7bca550 12074 if (item_value == NULL)
Azure.IoT Build 0:6ae2f7bca550 12075 {
Azure.IoT Build 0:6ae2f7bca550 12076 result = __LINE__;
Azure.IoT Build 0:6ae2f7bca550 12077 }
Azure.IoT Build 0:6ae2f7bca550 12078 else
Azure.IoT Build 0:6ae2f7bca550 12079 {
Azure.IoT Build 0:6ae2f7bca550 12080 if (amqpvalue_get_binary(item_value, user_id_value) != 0)
Azure.IoT Build 0:6ae2f7bca550 12081 {
Azure.IoT Build 0:6ae2f7bca550 12082 result = __LINE__;
Azure.IoT Build 0:6ae2f7bca550 12083 }
Azure.IoT Build 0:6ae2f7bca550 12084 else
Azure.IoT Build 0:6ae2f7bca550 12085 {
Azure.IoT Build 0:6ae2f7bca550 12086 result = 0;
Azure.IoT Build 0:6ae2f7bca550 12087 }
Azure.IoT Build 0:6ae2f7bca550 12088 }
Azure.IoT Build 0:6ae2f7bca550 12089 }
Azure.IoT Build 0:6ae2f7bca550 12090
Azure.IoT Build 0:6ae2f7bca550 12091 return result;
Azure.IoT Build 0:6ae2f7bca550 12092 }
Azure.IoT Build 0:6ae2f7bca550 12093
Azure.IoT Build 0:6ae2f7bca550 12094 int properties_set_user_id(PROPERTIES_HANDLE properties, amqp_binary user_id_value)
Azure.IoT Build 0:6ae2f7bca550 12095 {
Azure.IoT Build 0:6ae2f7bca550 12096 int result;
Azure.IoT Build 0:6ae2f7bca550 12097
Azure.IoT Build 0:6ae2f7bca550 12098 if (properties == NULL)
Azure.IoT Build 0:6ae2f7bca550 12099 {
Azure.IoT Build 0:6ae2f7bca550 12100 result = __LINE__;
Azure.IoT Build 0:6ae2f7bca550 12101 }
Azure.IoT Build 0:6ae2f7bca550 12102 else
Azure.IoT Build 0:6ae2f7bca550 12103 {
Azure.IoT Build 0:6ae2f7bca550 12104 PROPERTIES_INSTANCE* properties_instance = (PROPERTIES_INSTANCE*)properties;
Azure.IoT Build 0:6ae2f7bca550 12105 AMQP_VALUE user_id_amqp_value = amqpvalue_create_binary(user_id_value);
Azure.IoT Build 0:6ae2f7bca550 12106 if (user_id_amqp_value == NULL)
Azure.IoT Build 0:6ae2f7bca550 12107 {
Azure.IoT Build 0:6ae2f7bca550 12108 result = __LINE__;
Azure.IoT Build 0:6ae2f7bca550 12109 }
Azure.IoT Build 0:6ae2f7bca550 12110 else
Azure.IoT Build 0:6ae2f7bca550 12111 {
Azure.IoT Build 0:6ae2f7bca550 12112 if (amqpvalue_set_composite_item(properties_instance->composite_value, 1, user_id_amqp_value) != 0)
Azure.IoT Build 0:6ae2f7bca550 12113 {
Azure.IoT Build 0:6ae2f7bca550 12114 result = __LINE__;
Azure.IoT Build 0:6ae2f7bca550 12115 }
Azure.IoT Build 0:6ae2f7bca550 12116 else
Azure.IoT Build 0:6ae2f7bca550 12117 {
Azure.IoT Build 0:6ae2f7bca550 12118 result = 0;
Azure.IoT Build 0:6ae2f7bca550 12119 }
Azure.IoT Build 0:6ae2f7bca550 12120
Azure.IoT Build 0:6ae2f7bca550 12121 amqpvalue_destroy(user_id_amqp_value);
Azure.IoT Build 0:6ae2f7bca550 12122 }
Azure.IoT Build 0:6ae2f7bca550 12123 }
Azure.IoT Build 0:6ae2f7bca550 12124
Azure.IoT Build 0:6ae2f7bca550 12125 return result;
Azure.IoT Build 0:6ae2f7bca550 12126 }
Azure.IoT Build 0:6ae2f7bca550 12127
Azure.IoT Build 0:6ae2f7bca550 12128 int properties_get_to(PROPERTIES_HANDLE properties, AMQP_VALUE* to_value)
Azure.IoT Build 0:6ae2f7bca550 12129 {
Azure.IoT Build 0:6ae2f7bca550 12130 int result;
Azure.IoT Build 0:6ae2f7bca550 12131
Azure.IoT Build 0:6ae2f7bca550 12132 if (properties == NULL)
Azure.IoT Build 0:6ae2f7bca550 12133 {
Azure.IoT Build 0:6ae2f7bca550 12134 result = __LINE__;
Azure.IoT Build 0:6ae2f7bca550 12135 }
Azure.IoT Build 0:6ae2f7bca550 12136 else
Azure.IoT Build 0:6ae2f7bca550 12137 {
Azure.IoT Build 0:6ae2f7bca550 12138 PROPERTIES_INSTANCE* properties_instance = (PROPERTIES_INSTANCE*)properties;
Azure.IoT Build 0:6ae2f7bca550 12139 AMQP_VALUE item_value = amqpvalue_get_composite_item_in_place(properties_instance->composite_value, 2);
Azure.IoT Build 0:6ae2f7bca550 12140 if (item_value == NULL)
Azure.IoT Build 0:6ae2f7bca550 12141 {
Azure.IoT Build 0:6ae2f7bca550 12142 result = __LINE__;
Azure.IoT Build 0:6ae2f7bca550 12143 }
Azure.IoT Build 0:6ae2f7bca550 12144 else
Azure.IoT Build 0:6ae2f7bca550 12145 {
Azure.IoT Build 0:6ae2f7bca550 12146 *to_value = item_value;
Azure.IoT Build 0:6ae2f7bca550 12147 result = 0;
Azure.IoT Build 0:6ae2f7bca550 12148 }
Azure.IoT Build 0:6ae2f7bca550 12149 }
Azure.IoT Build 0:6ae2f7bca550 12150
Azure.IoT Build 0:6ae2f7bca550 12151 return result;
Azure.IoT Build 0:6ae2f7bca550 12152 }
Azure.IoT Build 0:6ae2f7bca550 12153
Azure.IoT Build 0:6ae2f7bca550 12154 int properties_set_to(PROPERTIES_HANDLE properties, AMQP_VALUE to_value)
Azure.IoT Build 0:6ae2f7bca550 12155 {
Azure.IoT Build 0:6ae2f7bca550 12156 int result;
Azure.IoT Build 0:6ae2f7bca550 12157
Azure.IoT Build 0:6ae2f7bca550 12158 if (properties == NULL)
Azure.IoT Build 0:6ae2f7bca550 12159 {
Azure.IoT Build 0:6ae2f7bca550 12160 result = __LINE__;
Azure.IoT Build 0:6ae2f7bca550 12161 }
Azure.IoT Build 0:6ae2f7bca550 12162 else
Azure.IoT Build 0:6ae2f7bca550 12163 {
Azure.IoT Build 0:6ae2f7bca550 12164 PROPERTIES_INSTANCE* properties_instance = (PROPERTIES_INSTANCE*)properties;
Azure.IoT Build 0:6ae2f7bca550 12165 AMQP_VALUE to_amqp_value = amqpvalue_clone(to_value);
Azure.IoT Build 0:6ae2f7bca550 12166 if (to_amqp_value == NULL)
Azure.IoT Build 0:6ae2f7bca550 12167 {
Azure.IoT Build 0:6ae2f7bca550 12168 result = __LINE__;
Azure.IoT Build 0:6ae2f7bca550 12169 }
Azure.IoT Build 0:6ae2f7bca550 12170 else
Azure.IoT Build 0:6ae2f7bca550 12171 {
Azure.IoT Build 0:6ae2f7bca550 12172 if (amqpvalue_set_composite_item(properties_instance->composite_value, 2, to_amqp_value) != 0)
Azure.IoT Build 0:6ae2f7bca550 12173 {
Azure.IoT Build 0:6ae2f7bca550 12174 result = __LINE__;
Azure.IoT Build 0:6ae2f7bca550 12175 }
Azure.IoT Build 0:6ae2f7bca550 12176 else
Azure.IoT Build 0:6ae2f7bca550 12177 {
Azure.IoT Build 0:6ae2f7bca550 12178 result = 0;
Azure.IoT Build 0:6ae2f7bca550 12179 }
Azure.IoT Build 0:6ae2f7bca550 12180
Azure.IoT Build 0:6ae2f7bca550 12181 amqpvalue_destroy(to_amqp_value);
Azure.IoT Build 0:6ae2f7bca550 12182 }
Azure.IoT Build 0:6ae2f7bca550 12183 }
Azure.IoT Build 0:6ae2f7bca550 12184
Azure.IoT Build 0:6ae2f7bca550 12185 return result;
Azure.IoT Build 0:6ae2f7bca550 12186 }
Azure.IoT Build 0:6ae2f7bca550 12187
Azure.IoT Build 0:6ae2f7bca550 12188 int properties_get_subject(PROPERTIES_HANDLE properties, const char** subject_value)
Azure.IoT Build 0:6ae2f7bca550 12189 {
Azure.IoT Build 0:6ae2f7bca550 12190 int result;
Azure.IoT Build 0:6ae2f7bca550 12191
Azure.IoT Build 0:6ae2f7bca550 12192 if (properties == NULL)
Azure.IoT Build 0:6ae2f7bca550 12193 {
Azure.IoT Build 0:6ae2f7bca550 12194 result = __LINE__;
Azure.IoT Build 0:6ae2f7bca550 12195 }
Azure.IoT Build 0:6ae2f7bca550 12196 else
Azure.IoT Build 0:6ae2f7bca550 12197 {
Azure.IoT Build 0:6ae2f7bca550 12198 PROPERTIES_INSTANCE* properties_instance = (PROPERTIES_INSTANCE*)properties;
Azure.IoT Build 0:6ae2f7bca550 12199 AMQP_VALUE item_value = amqpvalue_get_composite_item_in_place(properties_instance->composite_value, 3);
Azure.IoT Build 0:6ae2f7bca550 12200 if (item_value == NULL)
Azure.IoT Build 0:6ae2f7bca550 12201 {
Azure.IoT Build 0:6ae2f7bca550 12202 result = __LINE__;
Azure.IoT Build 0:6ae2f7bca550 12203 }
Azure.IoT Build 0:6ae2f7bca550 12204 else
Azure.IoT Build 0:6ae2f7bca550 12205 {
Azure.IoT Build 0:6ae2f7bca550 12206 if (amqpvalue_get_string(item_value, subject_value) != 0)
Azure.IoT Build 0:6ae2f7bca550 12207 {
Azure.IoT Build 0:6ae2f7bca550 12208 result = __LINE__;
Azure.IoT Build 0:6ae2f7bca550 12209 }
Azure.IoT Build 0:6ae2f7bca550 12210 else
Azure.IoT Build 0:6ae2f7bca550 12211 {
Azure.IoT Build 0:6ae2f7bca550 12212 result = 0;
Azure.IoT Build 0:6ae2f7bca550 12213 }
Azure.IoT Build 0:6ae2f7bca550 12214 }
Azure.IoT Build 0:6ae2f7bca550 12215 }
Azure.IoT Build 0:6ae2f7bca550 12216
Azure.IoT Build 0:6ae2f7bca550 12217 return result;
Azure.IoT Build 0:6ae2f7bca550 12218 }
Azure.IoT Build 0:6ae2f7bca550 12219
Azure.IoT Build 0:6ae2f7bca550 12220 int properties_set_subject(PROPERTIES_HANDLE properties, const char* subject_value)
Azure.IoT Build 0:6ae2f7bca550 12221 {
Azure.IoT Build 0:6ae2f7bca550 12222 int result;
Azure.IoT Build 0:6ae2f7bca550 12223
Azure.IoT Build 0:6ae2f7bca550 12224 if (properties == NULL)
Azure.IoT Build 0:6ae2f7bca550 12225 {
Azure.IoT Build 0:6ae2f7bca550 12226 result = __LINE__;
Azure.IoT Build 0:6ae2f7bca550 12227 }
Azure.IoT Build 0:6ae2f7bca550 12228 else
Azure.IoT Build 0:6ae2f7bca550 12229 {
Azure.IoT Build 0:6ae2f7bca550 12230 PROPERTIES_INSTANCE* properties_instance = (PROPERTIES_INSTANCE*)properties;
Azure.IoT Build 0:6ae2f7bca550 12231 AMQP_VALUE subject_amqp_value = amqpvalue_create_string(subject_value);
Azure.IoT Build 0:6ae2f7bca550 12232 if (subject_amqp_value == NULL)
Azure.IoT Build 0:6ae2f7bca550 12233 {
Azure.IoT Build 0:6ae2f7bca550 12234 result = __LINE__;
Azure.IoT Build 0:6ae2f7bca550 12235 }
Azure.IoT Build 0:6ae2f7bca550 12236 else
Azure.IoT Build 0:6ae2f7bca550 12237 {
Azure.IoT Build 0:6ae2f7bca550 12238 if (amqpvalue_set_composite_item(properties_instance->composite_value, 3, subject_amqp_value) != 0)
Azure.IoT Build 0:6ae2f7bca550 12239 {
Azure.IoT Build 0:6ae2f7bca550 12240 result = __LINE__;
Azure.IoT Build 0:6ae2f7bca550 12241 }
Azure.IoT Build 0:6ae2f7bca550 12242 else
Azure.IoT Build 0:6ae2f7bca550 12243 {
Azure.IoT Build 0:6ae2f7bca550 12244 result = 0;
Azure.IoT Build 0:6ae2f7bca550 12245 }
Azure.IoT Build 0:6ae2f7bca550 12246
Azure.IoT Build 0:6ae2f7bca550 12247 amqpvalue_destroy(subject_amqp_value);
Azure.IoT Build 0:6ae2f7bca550 12248 }
Azure.IoT Build 0:6ae2f7bca550 12249 }
Azure.IoT Build 0:6ae2f7bca550 12250
Azure.IoT Build 0:6ae2f7bca550 12251 return result;
Azure.IoT Build 0:6ae2f7bca550 12252 }
Azure.IoT Build 0:6ae2f7bca550 12253
Azure.IoT Build 0:6ae2f7bca550 12254 int properties_get_reply_to(PROPERTIES_HANDLE properties, AMQP_VALUE* reply_to_value)
Azure.IoT Build 0:6ae2f7bca550 12255 {
Azure.IoT Build 0:6ae2f7bca550 12256 int result;
Azure.IoT Build 0:6ae2f7bca550 12257
Azure.IoT Build 0:6ae2f7bca550 12258 if (properties == NULL)
Azure.IoT Build 0:6ae2f7bca550 12259 {
Azure.IoT Build 0:6ae2f7bca550 12260 result = __LINE__;
Azure.IoT Build 0:6ae2f7bca550 12261 }
Azure.IoT Build 0:6ae2f7bca550 12262 else
Azure.IoT Build 0:6ae2f7bca550 12263 {
Azure.IoT Build 0:6ae2f7bca550 12264 PROPERTIES_INSTANCE* properties_instance = (PROPERTIES_INSTANCE*)properties;
Azure.IoT Build 0:6ae2f7bca550 12265 AMQP_VALUE item_value = amqpvalue_get_composite_item_in_place(properties_instance->composite_value, 4);
Azure.IoT Build 0:6ae2f7bca550 12266 if (item_value == NULL)
Azure.IoT Build 0:6ae2f7bca550 12267 {
Azure.IoT Build 0:6ae2f7bca550 12268 result = __LINE__;
Azure.IoT Build 0:6ae2f7bca550 12269 }
Azure.IoT Build 0:6ae2f7bca550 12270 else
Azure.IoT Build 0:6ae2f7bca550 12271 {
Azure.IoT Build 0:6ae2f7bca550 12272 *reply_to_value = item_value;
Azure.IoT Build 0:6ae2f7bca550 12273 result = 0;
Azure.IoT Build 0:6ae2f7bca550 12274 }
Azure.IoT Build 0:6ae2f7bca550 12275 }
Azure.IoT Build 0:6ae2f7bca550 12276
Azure.IoT Build 0:6ae2f7bca550 12277 return result;
Azure.IoT Build 0:6ae2f7bca550 12278 }
Azure.IoT Build 0:6ae2f7bca550 12279
Azure.IoT Build 0:6ae2f7bca550 12280 int properties_set_reply_to(PROPERTIES_HANDLE properties, AMQP_VALUE reply_to_value)
Azure.IoT Build 0:6ae2f7bca550 12281 {
Azure.IoT Build 0:6ae2f7bca550 12282 int result;
Azure.IoT Build 0:6ae2f7bca550 12283
Azure.IoT Build 0:6ae2f7bca550 12284 if (properties == NULL)
Azure.IoT Build 0:6ae2f7bca550 12285 {
Azure.IoT Build 0:6ae2f7bca550 12286 result = __LINE__;
Azure.IoT Build 0:6ae2f7bca550 12287 }
Azure.IoT Build 0:6ae2f7bca550 12288 else
Azure.IoT Build 0:6ae2f7bca550 12289 {
Azure.IoT Build 0:6ae2f7bca550 12290 PROPERTIES_INSTANCE* properties_instance = (PROPERTIES_INSTANCE*)properties;
Azure.IoT Build 0:6ae2f7bca550 12291 AMQP_VALUE reply_to_amqp_value = amqpvalue_clone(reply_to_value);
Azure.IoT Build 0:6ae2f7bca550 12292 if (reply_to_amqp_value == NULL)
Azure.IoT Build 0:6ae2f7bca550 12293 {
Azure.IoT Build 0:6ae2f7bca550 12294 result = __LINE__;
Azure.IoT Build 0:6ae2f7bca550 12295 }
Azure.IoT Build 0:6ae2f7bca550 12296 else
Azure.IoT Build 0:6ae2f7bca550 12297 {
Azure.IoT Build 0:6ae2f7bca550 12298 if (amqpvalue_set_composite_item(properties_instance->composite_value, 4, reply_to_amqp_value) != 0)
Azure.IoT Build 0:6ae2f7bca550 12299 {
Azure.IoT Build 0:6ae2f7bca550 12300 result = __LINE__;
Azure.IoT Build 0:6ae2f7bca550 12301 }
Azure.IoT Build 0:6ae2f7bca550 12302 else
Azure.IoT Build 0:6ae2f7bca550 12303 {
Azure.IoT Build 0:6ae2f7bca550 12304 result = 0;
Azure.IoT Build 0:6ae2f7bca550 12305 }
Azure.IoT Build 0:6ae2f7bca550 12306
Azure.IoT Build 0:6ae2f7bca550 12307 amqpvalue_destroy(reply_to_amqp_value);
Azure.IoT Build 0:6ae2f7bca550 12308 }
Azure.IoT Build 0:6ae2f7bca550 12309 }
Azure.IoT Build 0:6ae2f7bca550 12310
Azure.IoT Build 0:6ae2f7bca550 12311 return result;
Azure.IoT Build 0:6ae2f7bca550 12312 }
Azure.IoT Build 0:6ae2f7bca550 12313
Azure.IoT Build 0:6ae2f7bca550 12314 int properties_get_correlation_id(PROPERTIES_HANDLE properties, AMQP_VALUE* correlation_id_value)
Azure.IoT Build 0:6ae2f7bca550 12315 {
Azure.IoT Build 0:6ae2f7bca550 12316 int result;
Azure.IoT Build 0:6ae2f7bca550 12317
Azure.IoT Build 0:6ae2f7bca550 12318 if (properties == NULL)
Azure.IoT Build 0:6ae2f7bca550 12319 {
Azure.IoT Build 0:6ae2f7bca550 12320 result = __LINE__;
Azure.IoT Build 0:6ae2f7bca550 12321 }
Azure.IoT Build 0:6ae2f7bca550 12322 else
Azure.IoT Build 0:6ae2f7bca550 12323 {
Azure.IoT Build 0:6ae2f7bca550 12324 PROPERTIES_INSTANCE* properties_instance = (PROPERTIES_INSTANCE*)properties;
Azure.IoT Build 0:6ae2f7bca550 12325 AMQP_VALUE item_value = amqpvalue_get_composite_item_in_place(properties_instance->composite_value, 5);
Azure.IoT Build 0:6ae2f7bca550 12326 if (item_value == NULL)
Azure.IoT Build 0:6ae2f7bca550 12327 {
Azure.IoT Build 0:6ae2f7bca550 12328 result = __LINE__;
Azure.IoT Build 0:6ae2f7bca550 12329 }
Azure.IoT Build 0:6ae2f7bca550 12330 else
Azure.IoT Build 0:6ae2f7bca550 12331 {
Azure.IoT Build 0:6ae2f7bca550 12332 *correlation_id_value = item_value;
Azure.IoT Build 0:6ae2f7bca550 12333 result = 0;
Azure.IoT Build 0:6ae2f7bca550 12334 }
Azure.IoT Build 0:6ae2f7bca550 12335 }
Azure.IoT Build 0:6ae2f7bca550 12336
Azure.IoT Build 0:6ae2f7bca550 12337 return result;
Azure.IoT Build 0:6ae2f7bca550 12338 }
Azure.IoT Build 0:6ae2f7bca550 12339
Azure.IoT Build 0:6ae2f7bca550 12340 int properties_set_correlation_id(PROPERTIES_HANDLE properties, AMQP_VALUE correlation_id_value)
Azure.IoT Build 0:6ae2f7bca550 12341 {
Azure.IoT Build 0:6ae2f7bca550 12342 int result;
Azure.IoT Build 0:6ae2f7bca550 12343
Azure.IoT Build 0:6ae2f7bca550 12344 if (properties == NULL)
Azure.IoT Build 0:6ae2f7bca550 12345 {
Azure.IoT Build 0:6ae2f7bca550 12346 result = __LINE__;
Azure.IoT Build 0:6ae2f7bca550 12347 }
Azure.IoT Build 0:6ae2f7bca550 12348 else
Azure.IoT Build 0:6ae2f7bca550 12349 {
Azure.IoT Build 0:6ae2f7bca550 12350 PROPERTIES_INSTANCE* properties_instance = (PROPERTIES_INSTANCE*)properties;
Azure.IoT Build 0:6ae2f7bca550 12351 AMQP_VALUE correlation_id_amqp_value = amqpvalue_clone(correlation_id_value);
Azure.IoT Build 0:6ae2f7bca550 12352 if (correlation_id_amqp_value == NULL)
Azure.IoT Build 0:6ae2f7bca550 12353 {
Azure.IoT Build 0:6ae2f7bca550 12354 result = __LINE__;
Azure.IoT Build 0:6ae2f7bca550 12355 }
Azure.IoT Build 0:6ae2f7bca550 12356 else
Azure.IoT Build 0:6ae2f7bca550 12357 {
Azure.IoT Build 0:6ae2f7bca550 12358 if (amqpvalue_set_composite_item(properties_instance->composite_value, 5, correlation_id_amqp_value) != 0)
Azure.IoT Build 0:6ae2f7bca550 12359 {
Azure.IoT Build 0:6ae2f7bca550 12360 result = __LINE__;
Azure.IoT Build 0:6ae2f7bca550 12361 }
Azure.IoT Build 0:6ae2f7bca550 12362 else
Azure.IoT Build 0:6ae2f7bca550 12363 {
Azure.IoT Build 0:6ae2f7bca550 12364 result = 0;
Azure.IoT Build 0:6ae2f7bca550 12365 }
Azure.IoT Build 0:6ae2f7bca550 12366
Azure.IoT Build 0:6ae2f7bca550 12367 amqpvalue_destroy(correlation_id_amqp_value);
Azure.IoT Build 0:6ae2f7bca550 12368 }
Azure.IoT Build 0:6ae2f7bca550 12369 }
Azure.IoT Build 0:6ae2f7bca550 12370
Azure.IoT Build 0:6ae2f7bca550 12371 return result;
Azure.IoT Build 0:6ae2f7bca550 12372 }
Azure.IoT Build 0:6ae2f7bca550 12373
Azure.IoT Build 0:6ae2f7bca550 12374 int properties_get_content_type(PROPERTIES_HANDLE properties, const char** content_type_value)
Azure.IoT Build 0:6ae2f7bca550 12375 {
Azure.IoT Build 0:6ae2f7bca550 12376 int result;
Azure.IoT Build 0:6ae2f7bca550 12377
Azure.IoT Build 0:6ae2f7bca550 12378 if (properties == NULL)
Azure.IoT Build 0:6ae2f7bca550 12379 {
Azure.IoT Build 0:6ae2f7bca550 12380 result = __LINE__;
Azure.IoT Build 0:6ae2f7bca550 12381 }
Azure.IoT Build 0:6ae2f7bca550 12382 else
Azure.IoT Build 0:6ae2f7bca550 12383 {
Azure.IoT Build 0:6ae2f7bca550 12384 PROPERTIES_INSTANCE* properties_instance = (PROPERTIES_INSTANCE*)properties;
Azure.IoT Build 0:6ae2f7bca550 12385 AMQP_VALUE item_value = amqpvalue_get_composite_item_in_place(properties_instance->composite_value, 6);
Azure.IoT Build 0:6ae2f7bca550 12386 if (item_value == NULL)
Azure.IoT Build 0:6ae2f7bca550 12387 {
Azure.IoT Build 0:6ae2f7bca550 12388 result = __LINE__;
Azure.IoT Build 0:6ae2f7bca550 12389 }
Azure.IoT Build 0:6ae2f7bca550 12390 else
Azure.IoT Build 0:6ae2f7bca550 12391 {
Azure.IoT Build 0:6ae2f7bca550 12392 if (amqpvalue_get_symbol(item_value, content_type_value) != 0)
Azure.IoT Build 0:6ae2f7bca550 12393 {
Azure.IoT Build 0:6ae2f7bca550 12394 result = __LINE__;
Azure.IoT Build 0:6ae2f7bca550 12395 }
Azure.IoT Build 0:6ae2f7bca550 12396 else
Azure.IoT Build 0:6ae2f7bca550 12397 {
Azure.IoT Build 0:6ae2f7bca550 12398 result = 0;
Azure.IoT Build 0:6ae2f7bca550 12399 }
Azure.IoT Build 0:6ae2f7bca550 12400 }
Azure.IoT Build 0:6ae2f7bca550 12401 }
Azure.IoT Build 0:6ae2f7bca550 12402
Azure.IoT Build 0:6ae2f7bca550 12403 return result;
Azure.IoT Build 0:6ae2f7bca550 12404 }
Azure.IoT Build 0:6ae2f7bca550 12405
Azure.IoT Build 0:6ae2f7bca550 12406 int properties_set_content_type(PROPERTIES_HANDLE properties, const char* content_type_value)
Azure.IoT Build 0:6ae2f7bca550 12407 {
Azure.IoT Build 0:6ae2f7bca550 12408 int result;
Azure.IoT Build 0:6ae2f7bca550 12409
Azure.IoT Build 0:6ae2f7bca550 12410 if (properties == NULL)
Azure.IoT Build 0:6ae2f7bca550 12411 {
Azure.IoT Build 0:6ae2f7bca550 12412 result = __LINE__;
Azure.IoT Build 0:6ae2f7bca550 12413 }
Azure.IoT Build 0:6ae2f7bca550 12414 else
Azure.IoT Build 0:6ae2f7bca550 12415 {
Azure.IoT Build 0:6ae2f7bca550 12416 PROPERTIES_INSTANCE* properties_instance = (PROPERTIES_INSTANCE*)properties;
Azure.IoT Build 0:6ae2f7bca550 12417 AMQP_VALUE content_type_amqp_value = amqpvalue_create_symbol(content_type_value);
Azure.IoT Build 0:6ae2f7bca550 12418 if (content_type_amqp_value == NULL)
Azure.IoT Build 0:6ae2f7bca550 12419 {
Azure.IoT Build 0:6ae2f7bca550 12420 result = __LINE__;
Azure.IoT Build 0:6ae2f7bca550 12421 }
Azure.IoT Build 0:6ae2f7bca550 12422 else
Azure.IoT Build 0:6ae2f7bca550 12423 {
Azure.IoT Build 0:6ae2f7bca550 12424 if (amqpvalue_set_composite_item(properties_instance->composite_value, 6, content_type_amqp_value) != 0)
Azure.IoT Build 0:6ae2f7bca550 12425 {
Azure.IoT Build 0:6ae2f7bca550 12426 result = __LINE__;
Azure.IoT Build 0:6ae2f7bca550 12427 }
Azure.IoT Build 0:6ae2f7bca550 12428 else
Azure.IoT Build 0:6ae2f7bca550 12429 {
Azure.IoT Build 0:6ae2f7bca550 12430 result = 0;
Azure.IoT Build 0:6ae2f7bca550 12431 }
Azure.IoT Build 0:6ae2f7bca550 12432
Azure.IoT Build 0:6ae2f7bca550 12433 amqpvalue_destroy(content_type_amqp_value);
Azure.IoT Build 0:6ae2f7bca550 12434 }
Azure.IoT Build 0:6ae2f7bca550 12435 }
Azure.IoT Build 0:6ae2f7bca550 12436
Azure.IoT Build 0:6ae2f7bca550 12437 return result;
Azure.IoT Build 0:6ae2f7bca550 12438 }
Azure.IoT Build 0:6ae2f7bca550 12439
Azure.IoT Build 0:6ae2f7bca550 12440 int properties_get_content_encoding(PROPERTIES_HANDLE properties, const char** content_encoding_value)
Azure.IoT Build 0:6ae2f7bca550 12441 {
Azure.IoT Build 0:6ae2f7bca550 12442 int result;
Azure.IoT Build 0:6ae2f7bca550 12443
Azure.IoT Build 0:6ae2f7bca550 12444 if (properties == NULL)
Azure.IoT Build 0:6ae2f7bca550 12445 {
Azure.IoT Build 0:6ae2f7bca550 12446 result = __LINE__;
Azure.IoT Build 0:6ae2f7bca550 12447 }
Azure.IoT Build 0:6ae2f7bca550 12448 else
Azure.IoT Build 0:6ae2f7bca550 12449 {
Azure.IoT Build 0:6ae2f7bca550 12450 PROPERTIES_INSTANCE* properties_instance = (PROPERTIES_INSTANCE*)properties;
Azure.IoT Build 0:6ae2f7bca550 12451 AMQP_VALUE item_value = amqpvalue_get_composite_item_in_place(properties_instance->composite_value, 7);
Azure.IoT Build 0:6ae2f7bca550 12452 if (item_value == NULL)
Azure.IoT Build 0:6ae2f7bca550 12453 {
Azure.IoT Build 0:6ae2f7bca550 12454 result = __LINE__;
Azure.IoT Build 0:6ae2f7bca550 12455 }
Azure.IoT Build 0:6ae2f7bca550 12456 else
Azure.IoT Build 0:6ae2f7bca550 12457 {
Azure.IoT Build 0:6ae2f7bca550 12458 if (amqpvalue_get_symbol(item_value, content_encoding_value) != 0)
Azure.IoT Build 0:6ae2f7bca550 12459 {
Azure.IoT Build 0:6ae2f7bca550 12460 result = __LINE__;
Azure.IoT Build 0:6ae2f7bca550 12461 }
Azure.IoT Build 0:6ae2f7bca550 12462 else
Azure.IoT Build 0:6ae2f7bca550 12463 {
Azure.IoT Build 0:6ae2f7bca550 12464 result = 0;
Azure.IoT Build 0:6ae2f7bca550 12465 }
Azure.IoT Build 0:6ae2f7bca550 12466 }
Azure.IoT Build 0:6ae2f7bca550 12467 }
Azure.IoT Build 0:6ae2f7bca550 12468
Azure.IoT Build 0:6ae2f7bca550 12469 return result;
Azure.IoT Build 0:6ae2f7bca550 12470 }
Azure.IoT Build 0:6ae2f7bca550 12471
Azure.IoT Build 0:6ae2f7bca550 12472 int properties_set_content_encoding(PROPERTIES_HANDLE properties, const char* content_encoding_value)
Azure.IoT Build 0:6ae2f7bca550 12473 {
Azure.IoT Build 0:6ae2f7bca550 12474 int result;
Azure.IoT Build 0:6ae2f7bca550 12475
Azure.IoT Build 0:6ae2f7bca550 12476 if (properties == NULL)
Azure.IoT Build 0:6ae2f7bca550 12477 {
Azure.IoT Build 0:6ae2f7bca550 12478 result = __LINE__;
Azure.IoT Build 0:6ae2f7bca550 12479 }
Azure.IoT Build 0:6ae2f7bca550 12480 else
Azure.IoT Build 0:6ae2f7bca550 12481 {
Azure.IoT Build 0:6ae2f7bca550 12482 PROPERTIES_INSTANCE* properties_instance = (PROPERTIES_INSTANCE*)properties;
Azure.IoT Build 0:6ae2f7bca550 12483 AMQP_VALUE content_encoding_amqp_value = amqpvalue_create_symbol(content_encoding_value);
Azure.IoT Build 0:6ae2f7bca550 12484 if (content_encoding_amqp_value == NULL)
Azure.IoT Build 0:6ae2f7bca550 12485 {
Azure.IoT Build 0:6ae2f7bca550 12486 result = __LINE__;
Azure.IoT Build 0:6ae2f7bca550 12487 }
Azure.IoT Build 0:6ae2f7bca550 12488 else
Azure.IoT Build 0:6ae2f7bca550 12489 {
Azure.IoT Build 0:6ae2f7bca550 12490 if (amqpvalue_set_composite_item(properties_instance->composite_value, 7, content_encoding_amqp_value) != 0)
Azure.IoT Build 0:6ae2f7bca550 12491 {
Azure.IoT Build 0:6ae2f7bca550 12492 result = __LINE__;
Azure.IoT Build 0:6ae2f7bca550 12493 }
Azure.IoT Build 0:6ae2f7bca550 12494 else
Azure.IoT Build 0:6ae2f7bca550 12495 {
Azure.IoT Build 0:6ae2f7bca550 12496 result = 0;
Azure.IoT Build 0:6ae2f7bca550 12497 }
Azure.IoT Build 0:6ae2f7bca550 12498
Azure.IoT Build 0:6ae2f7bca550 12499 amqpvalue_destroy(content_encoding_amqp_value);
Azure.IoT Build 0:6ae2f7bca550 12500 }
Azure.IoT Build 0:6ae2f7bca550 12501 }
Azure.IoT Build 0:6ae2f7bca550 12502
Azure.IoT Build 0:6ae2f7bca550 12503 return result;
Azure.IoT Build 0:6ae2f7bca550 12504 }
Azure.IoT Build 0:6ae2f7bca550 12505
Azure.IoT Build 0:6ae2f7bca550 12506 int properties_get_absolute_expiry_time(PROPERTIES_HANDLE properties, timestamp* absolute_expiry_time_value)
Azure.IoT Build 0:6ae2f7bca550 12507 {
Azure.IoT Build 0:6ae2f7bca550 12508 int result;
Azure.IoT Build 0:6ae2f7bca550 12509
Azure.IoT Build 0:6ae2f7bca550 12510 if (properties == NULL)
Azure.IoT Build 0:6ae2f7bca550 12511 {
Azure.IoT Build 0:6ae2f7bca550 12512 result = __LINE__;
Azure.IoT Build 0:6ae2f7bca550 12513 }
Azure.IoT Build 0:6ae2f7bca550 12514 else
Azure.IoT Build 0:6ae2f7bca550 12515 {
Azure.IoT Build 0:6ae2f7bca550 12516 PROPERTIES_INSTANCE* properties_instance = (PROPERTIES_INSTANCE*)properties;
Azure.IoT Build 0:6ae2f7bca550 12517 AMQP_VALUE item_value = amqpvalue_get_composite_item_in_place(properties_instance->composite_value, 8);
Azure.IoT Build 0:6ae2f7bca550 12518 if (item_value == NULL)
Azure.IoT Build 0:6ae2f7bca550 12519 {
Azure.IoT Build 0:6ae2f7bca550 12520 result = __LINE__;
Azure.IoT Build 0:6ae2f7bca550 12521 }
Azure.IoT Build 0:6ae2f7bca550 12522 else
Azure.IoT Build 0:6ae2f7bca550 12523 {
Azure.IoT Build 0:6ae2f7bca550 12524 if (amqpvalue_get_timestamp(item_value, absolute_expiry_time_value) != 0)
Azure.IoT Build 0:6ae2f7bca550 12525 {
Azure.IoT Build 0:6ae2f7bca550 12526 result = __LINE__;
Azure.IoT Build 0:6ae2f7bca550 12527 }
Azure.IoT Build 0:6ae2f7bca550 12528 else
Azure.IoT Build 0:6ae2f7bca550 12529 {
Azure.IoT Build 0:6ae2f7bca550 12530 result = 0;
Azure.IoT Build 0:6ae2f7bca550 12531 }
Azure.IoT Build 0:6ae2f7bca550 12532 }
Azure.IoT Build 0:6ae2f7bca550 12533 }
Azure.IoT Build 0:6ae2f7bca550 12534
Azure.IoT Build 0:6ae2f7bca550 12535 return result;
Azure.IoT Build 0:6ae2f7bca550 12536 }
Azure.IoT Build 0:6ae2f7bca550 12537
Azure.IoT Build 0:6ae2f7bca550 12538 int properties_set_absolute_expiry_time(PROPERTIES_HANDLE properties, timestamp absolute_expiry_time_value)
Azure.IoT Build 0:6ae2f7bca550 12539 {
Azure.IoT Build 0:6ae2f7bca550 12540 int result;
Azure.IoT Build 0:6ae2f7bca550 12541
Azure.IoT Build 0:6ae2f7bca550 12542 if (properties == NULL)
Azure.IoT Build 0:6ae2f7bca550 12543 {
Azure.IoT Build 0:6ae2f7bca550 12544 result = __LINE__;
Azure.IoT Build 0:6ae2f7bca550 12545 }
Azure.IoT Build 0:6ae2f7bca550 12546 else
Azure.IoT Build 0:6ae2f7bca550 12547 {
Azure.IoT Build 0:6ae2f7bca550 12548 PROPERTIES_INSTANCE* properties_instance = (PROPERTIES_INSTANCE*)properties;
Azure.IoT Build 0:6ae2f7bca550 12549 AMQP_VALUE absolute_expiry_time_amqp_value = amqpvalue_create_timestamp(absolute_expiry_time_value);
Azure.IoT Build 0:6ae2f7bca550 12550 if (absolute_expiry_time_amqp_value == NULL)
Azure.IoT Build 0:6ae2f7bca550 12551 {
Azure.IoT Build 0:6ae2f7bca550 12552 result = __LINE__;
Azure.IoT Build 0:6ae2f7bca550 12553 }
Azure.IoT Build 0:6ae2f7bca550 12554 else
Azure.IoT Build 0:6ae2f7bca550 12555 {
Azure.IoT Build 0:6ae2f7bca550 12556 if (amqpvalue_set_composite_item(properties_instance->composite_value, 8, absolute_expiry_time_amqp_value) != 0)
Azure.IoT Build 0:6ae2f7bca550 12557 {
Azure.IoT Build 0:6ae2f7bca550 12558 result = __LINE__;
Azure.IoT Build 0:6ae2f7bca550 12559 }
Azure.IoT Build 0:6ae2f7bca550 12560 else
Azure.IoT Build 0:6ae2f7bca550 12561 {
Azure.IoT Build 0:6ae2f7bca550 12562 result = 0;
Azure.IoT Build 0:6ae2f7bca550 12563 }
Azure.IoT Build 0:6ae2f7bca550 12564
Azure.IoT Build 0:6ae2f7bca550 12565 amqpvalue_destroy(absolute_expiry_time_amqp_value);
Azure.IoT Build 0:6ae2f7bca550 12566 }
Azure.IoT Build 0:6ae2f7bca550 12567 }
Azure.IoT Build 0:6ae2f7bca550 12568
Azure.IoT Build 0:6ae2f7bca550 12569 return result;
Azure.IoT Build 0:6ae2f7bca550 12570 }
Azure.IoT Build 0:6ae2f7bca550 12571
Azure.IoT Build 0:6ae2f7bca550 12572 int properties_get_creation_time(PROPERTIES_HANDLE properties, timestamp* creation_time_value)
Azure.IoT Build 0:6ae2f7bca550 12573 {
Azure.IoT Build 0:6ae2f7bca550 12574 int result;
Azure.IoT Build 0:6ae2f7bca550 12575
Azure.IoT Build 0:6ae2f7bca550 12576 if (properties == NULL)
Azure.IoT Build 0:6ae2f7bca550 12577 {
Azure.IoT Build 0:6ae2f7bca550 12578 result = __LINE__;
Azure.IoT Build 0:6ae2f7bca550 12579 }
Azure.IoT Build 0:6ae2f7bca550 12580 else
Azure.IoT Build 0:6ae2f7bca550 12581 {
Azure.IoT Build 0:6ae2f7bca550 12582 PROPERTIES_INSTANCE* properties_instance = (PROPERTIES_INSTANCE*)properties;
Azure.IoT Build 0:6ae2f7bca550 12583 AMQP_VALUE item_value = amqpvalue_get_composite_item_in_place(properties_instance->composite_value, 9);
Azure.IoT Build 0:6ae2f7bca550 12584 if (item_value == NULL)
Azure.IoT Build 0:6ae2f7bca550 12585 {
Azure.IoT Build 0:6ae2f7bca550 12586 result = __LINE__;
Azure.IoT Build 0:6ae2f7bca550 12587 }
Azure.IoT Build 0:6ae2f7bca550 12588 else
Azure.IoT Build 0:6ae2f7bca550 12589 {
Azure.IoT Build 0:6ae2f7bca550 12590 if (amqpvalue_get_timestamp(item_value, creation_time_value) != 0)
Azure.IoT Build 0:6ae2f7bca550 12591 {
Azure.IoT Build 0:6ae2f7bca550 12592 result = __LINE__;
Azure.IoT Build 0:6ae2f7bca550 12593 }
Azure.IoT Build 0:6ae2f7bca550 12594 else
Azure.IoT Build 0:6ae2f7bca550 12595 {
Azure.IoT Build 0:6ae2f7bca550 12596 result = 0;
Azure.IoT Build 0:6ae2f7bca550 12597 }
Azure.IoT Build 0:6ae2f7bca550 12598 }
Azure.IoT Build 0:6ae2f7bca550 12599 }
Azure.IoT Build 0:6ae2f7bca550 12600
Azure.IoT Build 0:6ae2f7bca550 12601 return result;
Azure.IoT Build 0:6ae2f7bca550 12602 }
Azure.IoT Build 0:6ae2f7bca550 12603
Azure.IoT Build 0:6ae2f7bca550 12604 int properties_set_creation_time(PROPERTIES_HANDLE properties, timestamp creation_time_value)
Azure.IoT Build 0:6ae2f7bca550 12605 {
Azure.IoT Build 0:6ae2f7bca550 12606 int result;
Azure.IoT Build 0:6ae2f7bca550 12607
Azure.IoT Build 0:6ae2f7bca550 12608 if (properties == NULL)
Azure.IoT Build 0:6ae2f7bca550 12609 {
Azure.IoT Build 0:6ae2f7bca550 12610 result = __LINE__;
Azure.IoT Build 0:6ae2f7bca550 12611 }
Azure.IoT Build 0:6ae2f7bca550 12612 else
Azure.IoT Build 0:6ae2f7bca550 12613 {
Azure.IoT Build 0:6ae2f7bca550 12614 PROPERTIES_INSTANCE* properties_instance = (PROPERTIES_INSTANCE*)properties;
Azure.IoT Build 0:6ae2f7bca550 12615 AMQP_VALUE creation_time_amqp_value = amqpvalue_create_timestamp(creation_time_value);
Azure.IoT Build 0:6ae2f7bca550 12616 if (creation_time_amqp_value == NULL)
Azure.IoT Build 0:6ae2f7bca550 12617 {
Azure.IoT Build 0:6ae2f7bca550 12618 result = __LINE__;
Azure.IoT Build 0:6ae2f7bca550 12619 }
Azure.IoT Build 0:6ae2f7bca550 12620 else
Azure.IoT Build 0:6ae2f7bca550 12621 {
Azure.IoT Build 0:6ae2f7bca550 12622 if (amqpvalue_set_composite_item(properties_instance->composite_value, 9, creation_time_amqp_value) != 0)
Azure.IoT Build 0:6ae2f7bca550 12623 {
Azure.IoT Build 0:6ae2f7bca550 12624 result = __LINE__;
Azure.IoT Build 0:6ae2f7bca550 12625 }
Azure.IoT Build 0:6ae2f7bca550 12626 else
Azure.IoT Build 0:6ae2f7bca550 12627 {
Azure.IoT Build 0:6ae2f7bca550 12628 result = 0;
Azure.IoT Build 0:6ae2f7bca550 12629 }
Azure.IoT Build 0:6ae2f7bca550 12630
Azure.IoT Build 0:6ae2f7bca550 12631 amqpvalue_destroy(creation_time_amqp_value);
Azure.IoT Build 0:6ae2f7bca550 12632 }
Azure.IoT Build 0:6ae2f7bca550 12633 }
Azure.IoT Build 0:6ae2f7bca550 12634
Azure.IoT Build 0:6ae2f7bca550 12635 return result;
Azure.IoT Build 0:6ae2f7bca550 12636 }
Azure.IoT Build 0:6ae2f7bca550 12637
Azure.IoT Build 0:6ae2f7bca550 12638 int properties_get_group_id(PROPERTIES_HANDLE properties, const char** group_id_value)
Azure.IoT Build 0:6ae2f7bca550 12639 {
Azure.IoT Build 0:6ae2f7bca550 12640 int result;
Azure.IoT Build 0:6ae2f7bca550 12641
Azure.IoT Build 0:6ae2f7bca550 12642 if (properties == NULL)
Azure.IoT Build 0:6ae2f7bca550 12643 {
Azure.IoT Build 0:6ae2f7bca550 12644 result = __LINE__;
Azure.IoT Build 0:6ae2f7bca550 12645 }
Azure.IoT Build 0:6ae2f7bca550 12646 else
Azure.IoT Build 0:6ae2f7bca550 12647 {
Azure.IoT Build 0:6ae2f7bca550 12648 PROPERTIES_INSTANCE* properties_instance = (PROPERTIES_INSTANCE*)properties;
Azure.IoT Build 0:6ae2f7bca550 12649 AMQP_VALUE item_value = amqpvalue_get_composite_item_in_place(properties_instance->composite_value, 10);
Azure.IoT Build 0:6ae2f7bca550 12650 if (item_value == NULL)
Azure.IoT Build 0:6ae2f7bca550 12651 {
Azure.IoT Build 0:6ae2f7bca550 12652 result = __LINE__;
Azure.IoT Build 0:6ae2f7bca550 12653 }
Azure.IoT Build 0:6ae2f7bca550 12654 else
Azure.IoT Build 0:6ae2f7bca550 12655 {
Azure.IoT Build 0:6ae2f7bca550 12656 if (amqpvalue_get_string(item_value, group_id_value) != 0)
Azure.IoT Build 0:6ae2f7bca550 12657 {
Azure.IoT Build 0:6ae2f7bca550 12658 result = __LINE__;
Azure.IoT Build 0:6ae2f7bca550 12659 }
Azure.IoT Build 0:6ae2f7bca550 12660 else
Azure.IoT Build 0:6ae2f7bca550 12661 {
Azure.IoT Build 0:6ae2f7bca550 12662 result = 0;
Azure.IoT Build 0:6ae2f7bca550 12663 }
Azure.IoT Build 0:6ae2f7bca550 12664 }
Azure.IoT Build 0:6ae2f7bca550 12665 }
Azure.IoT Build 0:6ae2f7bca550 12666
Azure.IoT Build 0:6ae2f7bca550 12667 return result;
Azure.IoT Build 0:6ae2f7bca550 12668 }
Azure.IoT Build 0:6ae2f7bca550 12669
Azure.IoT Build 0:6ae2f7bca550 12670 int properties_set_group_id(PROPERTIES_HANDLE properties, const char* group_id_value)
Azure.IoT Build 0:6ae2f7bca550 12671 {
Azure.IoT Build 0:6ae2f7bca550 12672 int result;
Azure.IoT Build 0:6ae2f7bca550 12673
Azure.IoT Build 0:6ae2f7bca550 12674 if (properties == NULL)
Azure.IoT Build 0:6ae2f7bca550 12675 {
Azure.IoT Build 0:6ae2f7bca550 12676 result = __LINE__;
Azure.IoT Build 0:6ae2f7bca550 12677 }
Azure.IoT Build 0:6ae2f7bca550 12678 else
Azure.IoT Build 0:6ae2f7bca550 12679 {
Azure.IoT Build 0:6ae2f7bca550 12680 PROPERTIES_INSTANCE* properties_instance = (PROPERTIES_INSTANCE*)properties;
Azure.IoT Build 0:6ae2f7bca550 12681 AMQP_VALUE group_id_amqp_value = amqpvalue_create_string(group_id_value);
Azure.IoT Build 0:6ae2f7bca550 12682 if (group_id_amqp_value == NULL)
Azure.IoT Build 0:6ae2f7bca550 12683 {
Azure.IoT Build 0:6ae2f7bca550 12684 result = __LINE__;
Azure.IoT Build 0:6ae2f7bca550 12685 }
Azure.IoT Build 0:6ae2f7bca550 12686 else
Azure.IoT Build 0:6ae2f7bca550 12687 {
Azure.IoT Build 0:6ae2f7bca550 12688 if (amqpvalue_set_composite_item(properties_instance->composite_value, 10, group_id_amqp_value) != 0)
Azure.IoT Build 0:6ae2f7bca550 12689 {
Azure.IoT Build 0:6ae2f7bca550 12690 result = __LINE__;
Azure.IoT Build 0:6ae2f7bca550 12691 }
Azure.IoT Build 0:6ae2f7bca550 12692 else
Azure.IoT Build 0:6ae2f7bca550 12693 {
Azure.IoT Build 0:6ae2f7bca550 12694 result = 0;
Azure.IoT Build 0:6ae2f7bca550 12695 }
Azure.IoT Build 0:6ae2f7bca550 12696
Azure.IoT Build 0:6ae2f7bca550 12697 amqpvalue_destroy(group_id_amqp_value);
Azure.IoT Build 0:6ae2f7bca550 12698 }
Azure.IoT Build 0:6ae2f7bca550 12699 }
Azure.IoT Build 0:6ae2f7bca550 12700
Azure.IoT Build 0:6ae2f7bca550 12701 return result;
Azure.IoT Build 0:6ae2f7bca550 12702 }
Azure.IoT Build 0:6ae2f7bca550 12703
Azure.IoT Build 0:6ae2f7bca550 12704 int properties_get_group_sequence(PROPERTIES_HANDLE properties, sequence_no* group_sequence_value)
Azure.IoT Build 0:6ae2f7bca550 12705 {
Azure.IoT Build 0:6ae2f7bca550 12706 int result;
Azure.IoT Build 0:6ae2f7bca550 12707
Azure.IoT Build 0:6ae2f7bca550 12708 if (properties == NULL)
Azure.IoT Build 0:6ae2f7bca550 12709 {
Azure.IoT Build 0:6ae2f7bca550 12710 result = __LINE__;
Azure.IoT Build 0:6ae2f7bca550 12711 }
Azure.IoT Build 0:6ae2f7bca550 12712 else
Azure.IoT Build 0:6ae2f7bca550 12713 {
Azure.IoT Build 0:6ae2f7bca550 12714 PROPERTIES_INSTANCE* properties_instance = (PROPERTIES_INSTANCE*)properties;
Azure.IoT Build 0:6ae2f7bca550 12715 AMQP_VALUE item_value = amqpvalue_get_composite_item_in_place(properties_instance->composite_value, 11);
Azure.IoT Build 0:6ae2f7bca550 12716 if (item_value == NULL)
Azure.IoT Build 0:6ae2f7bca550 12717 {
Azure.IoT Build 0:6ae2f7bca550 12718 result = __LINE__;
Azure.IoT Build 0:6ae2f7bca550 12719 }
Azure.IoT Build 0:6ae2f7bca550 12720 else
Azure.IoT Build 0:6ae2f7bca550 12721 {
Azure.IoT Build 0:6ae2f7bca550 12722 if (amqpvalue_get_sequence_no(item_value, group_sequence_value) != 0)
Azure.IoT Build 0:6ae2f7bca550 12723 {
Azure.IoT Build 0:6ae2f7bca550 12724 result = __LINE__;
Azure.IoT Build 0:6ae2f7bca550 12725 }
Azure.IoT Build 0:6ae2f7bca550 12726 else
Azure.IoT Build 0:6ae2f7bca550 12727 {
Azure.IoT Build 0:6ae2f7bca550 12728 result = 0;
Azure.IoT Build 0:6ae2f7bca550 12729 }
Azure.IoT Build 0:6ae2f7bca550 12730 }
Azure.IoT Build 0:6ae2f7bca550 12731 }
Azure.IoT Build 0:6ae2f7bca550 12732
Azure.IoT Build 0:6ae2f7bca550 12733 return result;
Azure.IoT Build 0:6ae2f7bca550 12734 }
Azure.IoT Build 0:6ae2f7bca550 12735
Azure.IoT Build 0:6ae2f7bca550 12736 int properties_set_group_sequence(PROPERTIES_HANDLE properties, sequence_no group_sequence_value)
Azure.IoT Build 0:6ae2f7bca550 12737 {
Azure.IoT Build 0:6ae2f7bca550 12738 int result;
Azure.IoT Build 0:6ae2f7bca550 12739
Azure.IoT Build 0:6ae2f7bca550 12740 if (properties == NULL)
Azure.IoT Build 0:6ae2f7bca550 12741 {
Azure.IoT Build 0:6ae2f7bca550 12742 result = __LINE__;
Azure.IoT Build 0:6ae2f7bca550 12743 }
Azure.IoT Build 0:6ae2f7bca550 12744 else
Azure.IoT Build 0:6ae2f7bca550 12745 {
Azure.IoT Build 0:6ae2f7bca550 12746 PROPERTIES_INSTANCE* properties_instance = (PROPERTIES_INSTANCE*)properties;
Azure.IoT Build 0:6ae2f7bca550 12747 AMQP_VALUE group_sequence_amqp_value = amqpvalue_create_sequence_no(group_sequence_value);
Azure.IoT Build 0:6ae2f7bca550 12748 if (group_sequence_amqp_value == NULL)
Azure.IoT Build 0:6ae2f7bca550 12749 {
Azure.IoT Build 0:6ae2f7bca550 12750 result = __LINE__;
Azure.IoT Build 0:6ae2f7bca550 12751 }
Azure.IoT Build 0:6ae2f7bca550 12752 else
Azure.IoT Build 0:6ae2f7bca550 12753 {
Azure.IoT Build 0:6ae2f7bca550 12754 if (amqpvalue_set_composite_item(properties_instance->composite_value, 11, group_sequence_amqp_value) != 0)
Azure.IoT Build 0:6ae2f7bca550 12755 {
Azure.IoT Build 0:6ae2f7bca550 12756 result = __LINE__;
Azure.IoT Build 0:6ae2f7bca550 12757 }
Azure.IoT Build 0:6ae2f7bca550 12758 else
Azure.IoT Build 0:6ae2f7bca550 12759 {
Azure.IoT Build 0:6ae2f7bca550 12760 result = 0;
Azure.IoT Build 0:6ae2f7bca550 12761 }
Azure.IoT Build 0:6ae2f7bca550 12762
Azure.IoT Build 0:6ae2f7bca550 12763 amqpvalue_destroy(group_sequence_amqp_value);
Azure.IoT Build 0:6ae2f7bca550 12764 }
Azure.IoT Build 0:6ae2f7bca550 12765 }
Azure.IoT Build 0:6ae2f7bca550 12766
Azure.IoT Build 0:6ae2f7bca550 12767 return result;
Azure.IoT Build 0:6ae2f7bca550 12768 }
Azure.IoT Build 0:6ae2f7bca550 12769
Azure.IoT Build 0:6ae2f7bca550 12770 int properties_get_reply_to_group_id(PROPERTIES_HANDLE properties, const char** reply_to_group_id_value)
Azure.IoT Build 0:6ae2f7bca550 12771 {
Azure.IoT Build 0:6ae2f7bca550 12772 int result;
Azure.IoT Build 0:6ae2f7bca550 12773
Azure.IoT Build 0:6ae2f7bca550 12774 if (properties == NULL)
Azure.IoT Build 0:6ae2f7bca550 12775 {
Azure.IoT Build 0:6ae2f7bca550 12776 result = __LINE__;
Azure.IoT Build 0:6ae2f7bca550 12777 }
Azure.IoT Build 0:6ae2f7bca550 12778 else
Azure.IoT Build 0:6ae2f7bca550 12779 {
Azure.IoT Build 0:6ae2f7bca550 12780 PROPERTIES_INSTANCE* properties_instance = (PROPERTIES_INSTANCE*)properties;
Azure.IoT Build 0:6ae2f7bca550 12781 AMQP_VALUE item_value = amqpvalue_get_composite_item_in_place(properties_instance->composite_value, 12);
Azure.IoT Build 0:6ae2f7bca550 12782 if (item_value == NULL)
Azure.IoT Build 0:6ae2f7bca550 12783 {
Azure.IoT Build 0:6ae2f7bca550 12784 result = __LINE__;
Azure.IoT Build 0:6ae2f7bca550 12785 }
Azure.IoT Build 0:6ae2f7bca550 12786 else
Azure.IoT Build 0:6ae2f7bca550 12787 {
Azure.IoT Build 0:6ae2f7bca550 12788 if (amqpvalue_get_string(item_value, reply_to_group_id_value) != 0)
Azure.IoT Build 0:6ae2f7bca550 12789 {
Azure.IoT Build 0:6ae2f7bca550 12790 result = __LINE__;
Azure.IoT Build 0:6ae2f7bca550 12791 }
Azure.IoT Build 0:6ae2f7bca550 12792 else
Azure.IoT Build 0:6ae2f7bca550 12793 {
Azure.IoT Build 0:6ae2f7bca550 12794 result = 0;
Azure.IoT Build 0:6ae2f7bca550 12795 }
Azure.IoT Build 0:6ae2f7bca550 12796 }
Azure.IoT Build 0:6ae2f7bca550 12797 }
Azure.IoT Build 0:6ae2f7bca550 12798
Azure.IoT Build 0:6ae2f7bca550 12799 return result;
Azure.IoT Build 0:6ae2f7bca550 12800 }
Azure.IoT Build 0:6ae2f7bca550 12801
Azure.IoT Build 0:6ae2f7bca550 12802 int properties_set_reply_to_group_id(PROPERTIES_HANDLE properties, const char* reply_to_group_id_value)
Azure.IoT Build 0:6ae2f7bca550 12803 {
Azure.IoT Build 0:6ae2f7bca550 12804 int result;
Azure.IoT Build 0:6ae2f7bca550 12805
Azure.IoT Build 0:6ae2f7bca550 12806 if (properties == NULL)
Azure.IoT Build 0:6ae2f7bca550 12807 {
Azure.IoT Build 0:6ae2f7bca550 12808 result = __LINE__;
Azure.IoT Build 0:6ae2f7bca550 12809 }
Azure.IoT Build 0:6ae2f7bca550 12810 else
Azure.IoT Build 0:6ae2f7bca550 12811 {
Azure.IoT Build 0:6ae2f7bca550 12812 PROPERTIES_INSTANCE* properties_instance = (PROPERTIES_INSTANCE*)properties;
Azure.IoT Build 0:6ae2f7bca550 12813 AMQP_VALUE reply_to_group_id_amqp_value = amqpvalue_create_string(reply_to_group_id_value);
Azure.IoT Build 0:6ae2f7bca550 12814 if (reply_to_group_id_amqp_value == NULL)
Azure.IoT Build 0:6ae2f7bca550 12815 {
Azure.IoT Build 0:6ae2f7bca550 12816 result = __LINE__;
Azure.IoT Build 0:6ae2f7bca550 12817 }
Azure.IoT Build 0:6ae2f7bca550 12818 else
Azure.IoT Build 0:6ae2f7bca550 12819 {
Azure.IoT Build 0:6ae2f7bca550 12820 if (amqpvalue_set_composite_item(properties_instance->composite_value, 12, reply_to_group_id_amqp_value) != 0)
Azure.IoT Build 0:6ae2f7bca550 12821 {
Azure.IoT Build 0:6ae2f7bca550 12822 result = __LINE__;
Azure.IoT Build 0:6ae2f7bca550 12823 }
Azure.IoT Build 0:6ae2f7bca550 12824 else
Azure.IoT Build 0:6ae2f7bca550 12825 {
Azure.IoT Build 0:6ae2f7bca550 12826 result = 0;
Azure.IoT Build 0:6ae2f7bca550 12827 }
Azure.IoT Build 0:6ae2f7bca550 12828
Azure.IoT Build 0:6ae2f7bca550 12829 amqpvalue_destroy(reply_to_group_id_amqp_value);
Azure.IoT Build 0:6ae2f7bca550 12830 }
Azure.IoT Build 0:6ae2f7bca550 12831 }
Azure.IoT Build 0:6ae2f7bca550 12832
Azure.IoT Build 0:6ae2f7bca550 12833 return result;
Azure.IoT Build 0:6ae2f7bca550 12834 }
Azure.IoT Build 0:6ae2f7bca550 12835
Azure.IoT Build 0:6ae2f7bca550 12836
Azure.IoT Build 0:6ae2f7bca550 12837 /* received */
Azure.IoT Build 0:6ae2f7bca550 12838
Azure.IoT Build 0:6ae2f7bca550 12839 typedef struct RECEIVED_INSTANCE_TAG
Azure.IoT Build 0:6ae2f7bca550 12840 {
Azure.IoT Build 0:6ae2f7bca550 12841 AMQP_VALUE composite_value;
Azure.IoT Build 0:6ae2f7bca550 12842 } RECEIVED_INSTANCE;
Azure.IoT Build 0:6ae2f7bca550 12843
Azure.IoT Build 0:6ae2f7bca550 12844 static RECEIVED_HANDLE received_create_internal(void)
Azure.IoT Build 0:6ae2f7bca550 12845 {
Azure.IoT Build 0:6ae2f7bca550 12846 RECEIVED_INSTANCE* received_instance = (RECEIVED_INSTANCE*)amqpalloc_malloc(sizeof(RECEIVED_INSTANCE));
Azure.IoT Build 0:6ae2f7bca550 12847 if (received_instance != NULL)
Azure.IoT Build 0:6ae2f7bca550 12848 {
Azure.IoT Build 0:6ae2f7bca550 12849 received_instance->composite_value = NULL;
Azure.IoT Build 0:6ae2f7bca550 12850 }
Azure.IoT Build 0:6ae2f7bca550 12851
Azure.IoT Build 0:6ae2f7bca550 12852 return received_instance;
Azure.IoT Build 0:6ae2f7bca550 12853 }
Azure.IoT Build 0:6ae2f7bca550 12854
Azure.IoT Build 0:6ae2f7bca550 12855 RECEIVED_HANDLE received_create(uint32_t section_number_value, uint64_t section_offset_value)
Azure.IoT Build 0:6ae2f7bca550 12856 {
Azure.IoT Build 0:6ae2f7bca550 12857 RECEIVED_INSTANCE* received_instance = (RECEIVED_INSTANCE*)amqpalloc_malloc(sizeof(RECEIVED_INSTANCE));
Azure.IoT Build 0:6ae2f7bca550 12858 if (received_instance != NULL)
Azure.IoT Build 0:6ae2f7bca550 12859 {
Azure.IoT Build 0:6ae2f7bca550 12860 received_instance->composite_value = amqpvalue_create_composite_with_ulong_descriptor(35);
Azure.IoT Build 0:6ae2f7bca550 12861 if (received_instance->composite_value == NULL)
Azure.IoT Build 0:6ae2f7bca550 12862 {
Azure.IoT Build 0:6ae2f7bca550 12863 amqpalloc_free(received_instance);
Azure.IoT Build 0:6ae2f7bca550 12864 received_instance = NULL;
Azure.IoT Build 0:6ae2f7bca550 12865 }
Azure.IoT Build 0:6ae2f7bca550 12866 else
Azure.IoT Build 0:6ae2f7bca550 12867 {
Azure.IoT Build 0:6ae2f7bca550 12868 AMQP_VALUE section_number_amqp_value;
Azure.IoT Build 0:6ae2f7bca550 12869 AMQP_VALUE section_offset_amqp_value;
Azure.IoT Build 0:6ae2f7bca550 12870 int result = 0;
Azure.IoT Build 0:6ae2f7bca550 12871
Azure.IoT Build 0:6ae2f7bca550 12872 section_number_amqp_value = amqpvalue_create_uint(section_number_value);
Azure.IoT Build 0:6ae2f7bca550 12873 if ((result == 0) && (amqpvalue_set_composite_item(received_instance->composite_value, 0, section_number_amqp_value) != 0))
Azure.IoT Build 0:6ae2f7bca550 12874 {
Azure.IoT Build 0:6ae2f7bca550 12875 result = __LINE__;
Azure.IoT Build 0:6ae2f7bca550 12876 }
Azure.IoT Build 0:6ae2f7bca550 12877 section_offset_amqp_value = amqpvalue_create_ulong(section_offset_value);
Azure.IoT Build 0:6ae2f7bca550 12878 if ((result == 0) && (amqpvalue_set_composite_item(received_instance->composite_value, 1, section_offset_amqp_value) != 0))
Azure.IoT Build 0:6ae2f7bca550 12879 {
Azure.IoT Build 0:6ae2f7bca550 12880 result = __LINE__;
Azure.IoT Build 0:6ae2f7bca550 12881 }
Azure.IoT Build 0:6ae2f7bca550 12882
Azure.IoT Build 0:6ae2f7bca550 12883 amqpvalue_destroy(section_number_amqp_value);
Azure.IoT Build 0:6ae2f7bca550 12884 amqpvalue_destroy(section_offset_amqp_value);
Azure.IoT Build 0:6ae2f7bca550 12885 }
Azure.IoT Build 0:6ae2f7bca550 12886 }
Azure.IoT Build 0:6ae2f7bca550 12887
Azure.IoT Build 0:6ae2f7bca550 12888 return received_instance;
Azure.IoT Build 0:6ae2f7bca550 12889 }
Azure.IoT Build 0:6ae2f7bca550 12890
Azure.IoT Build 0:6ae2f7bca550 12891 RECEIVED_HANDLE received_clone(RECEIVED_HANDLE value)
Azure.IoT Build 0:6ae2f7bca550 12892 {
Azure.IoT Build 0:6ae2f7bca550 12893 RECEIVED_INSTANCE* received_instance = (RECEIVED_INSTANCE*)amqpalloc_malloc(sizeof(RECEIVED_INSTANCE));
Azure.IoT Build 0:6ae2f7bca550 12894 if (received_instance != NULL)
Azure.IoT Build 0:6ae2f7bca550 12895 {
Azure.IoT Build 0:6ae2f7bca550 12896 received_instance->composite_value = amqpvalue_clone(((RECEIVED_INSTANCE*)value)->composite_value);
Azure.IoT Build 0:6ae2f7bca550 12897 if (received_instance->composite_value == NULL)
Azure.IoT Build 0:6ae2f7bca550 12898 {
Azure.IoT Build 0:6ae2f7bca550 12899 amqpalloc_free(received_instance);
Azure.IoT Build 0:6ae2f7bca550 12900 received_instance = NULL;
Azure.IoT Build 0:6ae2f7bca550 12901 }
Azure.IoT Build 0:6ae2f7bca550 12902 }
Azure.IoT Build 0:6ae2f7bca550 12903
Azure.IoT Build 0:6ae2f7bca550 12904 return received_instance;
Azure.IoT Build 0:6ae2f7bca550 12905 }
Azure.IoT Build 0:6ae2f7bca550 12906
Azure.IoT Build 0:6ae2f7bca550 12907 void received_destroy(RECEIVED_HANDLE received)
Azure.IoT Build 0:6ae2f7bca550 12908 {
Azure.IoT Build 0:6ae2f7bca550 12909 if (received != NULL)
Azure.IoT Build 0:6ae2f7bca550 12910 {
Azure.IoT Build 0:6ae2f7bca550 12911 RECEIVED_INSTANCE* received_instance = (RECEIVED_INSTANCE*)received;
Azure.IoT Build 0:6ae2f7bca550 12912 amqpvalue_destroy(received_instance->composite_value);
Azure.IoT Build 0:6ae2f7bca550 12913 amqpalloc_free(received_instance);
Azure.IoT Build 0:6ae2f7bca550 12914 }
Azure.IoT Build 0:6ae2f7bca550 12915 }
Azure.IoT Build 0:6ae2f7bca550 12916
Azure.IoT Build 0:6ae2f7bca550 12917 AMQP_VALUE amqpvalue_create_received(RECEIVED_HANDLE received)
Azure.IoT Build 0:6ae2f7bca550 12918 {
Azure.IoT Build 0:6ae2f7bca550 12919 AMQP_VALUE result;
Azure.IoT Build 0:6ae2f7bca550 12920
Azure.IoT Build 0:6ae2f7bca550 12921 if (received == NULL)
Azure.IoT Build 0:6ae2f7bca550 12922 {
Azure.IoT Build 0:6ae2f7bca550 12923 result = NULL;
Azure.IoT Build 0:6ae2f7bca550 12924 }
Azure.IoT Build 0:6ae2f7bca550 12925 else
Azure.IoT Build 0:6ae2f7bca550 12926 {
Azure.IoT Build 0:6ae2f7bca550 12927 RECEIVED_INSTANCE* received_instance = (RECEIVED_INSTANCE*)received;
Azure.IoT Build 0:6ae2f7bca550 12928 result = amqpvalue_clone(received_instance->composite_value);
Azure.IoT Build 0:6ae2f7bca550 12929 }
Azure.IoT Build 0:6ae2f7bca550 12930
Azure.IoT Build 0:6ae2f7bca550 12931 return result;
Azure.IoT Build 0:6ae2f7bca550 12932 }
Azure.IoT Build 0:6ae2f7bca550 12933
Azure.IoT Build 0:6ae2f7bca550 12934 bool is_received_type_by_descriptor(AMQP_VALUE descriptor)
Azure.IoT Build 0:6ae2f7bca550 12935 {
Azure.IoT Build 0:6ae2f7bca550 12936 bool result;
Azure.IoT Build 0:6ae2f7bca550 12937
Azure.IoT Build 0:6ae2f7bca550 12938 uint64_t descriptor_ulong;
Azure.IoT Build 0:6ae2f7bca550 12939 if ((amqpvalue_get_ulong(descriptor, &descriptor_ulong) == 0) &&
Azure.IoT Build 0:6ae2f7bca550 12940 (descriptor_ulong == 35))
Azure.IoT Build 0:6ae2f7bca550 12941 {
Azure.IoT Build 0:6ae2f7bca550 12942 result = true;
Azure.IoT Build 0:6ae2f7bca550 12943 }
Azure.IoT Build 0:6ae2f7bca550 12944 else
Azure.IoT Build 0:6ae2f7bca550 12945 {
Azure.IoT Build 0:6ae2f7bca550 12946 result = false;
Azure.IoT Build 0:6ae2f7bca550 12947 }
Azure.IoT Build 0:6ae2f7bca550 12948
Azure.IoT Build 0:6ae2f7bca550 12949 return result;
Azure.IoT Build 0:6ae2f7bca550 12950 }
Azure.IoT Build 0:6ae2f7bca550 12951
Azure.IoT Build 0:6ae2f7bca550 12952
Azure.IoT Build 0:6ae2f7bca550 12953 int amqpvalue_get_received(AMQP_VALUE value, RECEIVED_HANDLE* received_handle)
Azure.IoT Build 0:6ae2f7bca550 12954 {
Azure.IoT Build 0:6ae2f7bca550 12955 int result;
Azure.IoT Build 0:6ae2f7bca550 12956 RECEIVED_INSTANCE* received_instance = (RECEIVED_INSTANCE*)received_create_internal();
Azure.IoT Build 0:6ae2f7bca550 12957 *received_handle = received_instance;
Azure.IoT Build 0:6ae2f7bca550 12958 if (*received_handle == NULL)
Azure.IoT Build 0:6ae2f7bca550 12959 {
Azure.IoT Build 0:6ae2f7bca550 12960 result = __LINE__;
Azure.IoT Build 0:6ae2f7bca550 12961 }
Azure.IoT Build 0:6ae2f7bca550 12962 else
Azure.IoT Build 0:6ae2f7bca550 12963 {
Azure.IoT Build 0:6ae2f7bca550 12964 AMQP_VALUE list_value = amqpvalue_get_inplace_described_value(value);
Azure.IoT Build 0:6ae2f7bca550 12965 if (list_value == NULL)
Azure.IoT Build 0:6ae2f7bca550 12966 {
Azure.IoT Build 0:6ae2f7bca550 12967 received_destroy(*received_handle);
Azure.IoT Build 0:6ae2f7bca550 12968 result = __LINE__;
Azure.IoT Build 0:6ae2f7bca550 12969 }
Azure.IoT Build 0:6ae2f7bca550 12970 else
Azure.IoT Build 0:6ae2f7bca550 12971 {
Azure.IoT Build 0:6ae2f7bca550 12972 do
Azure.IoT Build 0:6ae2f7bca550 12973 {
Azure.IoT Build 0:6ae2f7bca550 12974 AMQP_VALUE item_value;
Azure.IoT Build 0:6ae2f7bca550 12975 /* section-number */
Azure.IoT Build 0:6ae2f7bca550 12976 item_value = amqpvalue_get_list_item(list_value, 0);
Azure.IoT Build 0:6ae2f7bca550 12977 if (item_value == NULL)
Azure.IoT Build 0:6ae2f7bca550 12978 {
Azure.IoT Build 0:6ae2f7bca550 12979 {
Azure.IoT Build 0:6ae2f7bca550 12980 received_destroy(*received_handle);
Azure.IoT Build 0:6ae2f7bca550 12981 result = __LINE__;
Azure.IoT Build 0:6ae2f7bca550 12982 break;
Azure.IoT Build 0:6ae2f7bca550 12983 }
Azure.IoT Build 0:6ae2f7bca550 12984 }
Azure.IoT Build 0:6ae2f7bca550 12985 else
Azure.IoT Build 0:6ae2f7bca550 12986 {
Azure.IoT Build 0:6ae2f7bca550 12987 uint32_t section_number;
Azure.IoT Build 0:6ae2f7bca550 12988 if (amqpvalue_get_uint(item_value, &section_number) != 0)
Azure.IoT Build 0:6ae2f7bca550 12989 {
Azure.IoT Build 0:6ae2f7bca550 12990 received_destroy(*received_handle);
Azure.IoT Build 0:6ae2f7bca550 12991 result = __LINE__;
Azure.IoT Build 0:6ae2f7bca550 12992 break;
Azure.IoT Build 0:6ae2f7bca550 12993 }
Azure.IoT Build 0:6ae2f7bca550 12994
Azure.IoT Build 0:6ae2f7bca550 12995 amqpvalue_destroy(item_value);
Azure.IoT Build 0:6ae2f7bca550 12996 }
Azure.IoT Build 0:6ae2f7bca550 12997 /* section-offset */
Azure.IoT Build 0:6ae2f7bca550 12998 item_value = amqpvalue_get_list_item(list_value, 1);
Azure.IoT Build 0:6ae2f7bca550 12999 if (item_value == NULL)
Azure.IoT Build 0:6ae2f7bca550 13000 {
Azure.IoT Build 0:6ae2f7bca550 13001 {
Azure.IoT Build 0:6ae2f7bca550 13002 received_destroy(*received_handle);
Azure.IoT Build 0:6ae2f7bca550 13003 result = __LINE__;
Azure.IoT Build 0:6ae2f7bca550 13004 break;
Azure.IoT Build 0:6ae2f7bca550 13005 }
Azure.IoT Build 0:6ae2f7bca550 13006 }
Azure.IoT Build 0:6ae2f7bca550 13007 else
Azure.IoT Build 0:6ae2f7bca550 13008 {
Azure.IoT Build 0:6ae2f7bca550 13009 uint64_t section_offset;
Azure.IoT Build 0:6ae2f7bca550 13010 if (amqpvalue_get_ulong(item_value, &section_offset) != 0)
Azure.IoT Build 0:6ae2f7bca550 13011 {
Azure.IoT Build 0:6ae2f7bca550 13012 received_destroy(*received_handle);
Azure.IoT Build 0:6ae2f7bca550 13013 result = __LINE__;
Azure.IoT Build 0:6ae2f7bca550 13014 break;
Azure.IoT Build 0:6ae2f7bca550 13015 }
Azure.IoT Build 0:6ae2f7bca550 13016
Azure.IoT Build 0:6ae2f7bca550 13017 amqpvalue_destroy(item_value);
Azure.IoT Build 0:6ae2f7bca550 13018 }
Azure.IoT Build 0:6ae2f7bca550 13019
Azure.IoT Build 0:6ae2f7bca550 13020 received_instance->composite_value = amqpvalue_clone(value);
Azure.IoT Build 0:6ae2f7bca550 13021
Azure.IoT Build 0:6ae2f7bca550 13022 result = 0;
Azure.IoT Build 0:6ae2f7bca550 13023 } while (0);
Azure.IoT Build 0:6ae2f7bca550 13024 }
Azure.IoT Build 0:6ae2f7bca550 13025 }
Azure.IoT Build 0:6ae2f7bca550 13026
Azure.IoT Build 0:6ae2f7bca550 13027 return result;
Azure.IoT Build 0:6ae2f7bca550 13028 }
Azure.IoT Build 0:6ae2f7bca550 13029
Azure.IoT Build 0:6ae2f7bca550 13030 int received_get_section_number(RECEIVED_HANDLE received, uint32_t* section_number_value)
Azure.IoT Build 0:6ae2f7bca550 13031 {
Azure.IoT Build 0:6ae2f7bca550 13032 int result;
Azure.IoT Build 0:6ae2f7bca550 13033
Azure.IoT Build 0:6ae2f7bca550 13034 if (received == NULL)
Azure.IoT Build 0:6ae2f7bca550 13035 {
Azure.IoT Build 0:6ae2f7bca550 13036 result = __LINE__;
Azure.IoT Build 0:6ae2f7bca550 13037 }
Azure.IoT Build 0:6ae2f7bca550 13038 else
Azure.IoT Build 0:6ae2f7bca550 13039 {
Azure.IoT Build 0:6ae2f7bca550 13040 RECEIVED_INSTANCE* received_instance = (RECEIVED_INSTANCE*)received;
Azure.IoT Build 0:6ae2f7bca550 13041 AMQP_VALUE item_value = amqpvalue_get_composite_item_in_place(received_instance->composite_value, 0);
Azure.IoT Build 0:6ae2f7bca550 13042 if (item_value == NULL)
Azure.IoT Build 0:6ae2f7bca550 13043 {
Azure.IoT Build 0:6ae2f7bca550 13044 result = __LINE__;
Azure.IoT Build 0:6ae2f7bca550 13045 }
Azure.IoT Build 0:6ae2f7bca550 13046 else
Azure.IoT Build 0:6ae2f7bca550 13047 {
Azure.IoT Build 0:6ae2f7bca550 13048 if (amqpvalue_get_uint(item_value, section_number_value) != 0)
Azure.IoT Build 0:6ae2f7bca550 13049 {
Azure.IoT Build 0:6ae2f7bca550 13050 result = __LINE__;
Azure.IoT Build 0:6ae2f7bca550 13051 }
Azure.IoT Build 0:6ae2f7bca550 13052 else
Azure.IoT Build 0:6ae2f7bca550 13053 {
Azure.IoT Build 0:6ae2f7bca550 13054 result = 0;
Azure.IoT Build 0:6ae2f7bca550 13055 }
Azure.IoT Build 0:6ae2f7bca550 13056 }
Azure.IoT Build 0:6ae2f7bca550 13057 }
Azure.IoT Build 0:6ae2f7bca550 13058
Azure.IoT Build 0:6ae2f7bca550 13059 return result;
Azure.IoT Build 0:6ae2f7bca550 13060 }
Azure.IoT Build 0:6ae2f7bca550 13061
Azure.IoT Build 0:6ae2f7bca550 13062 int received_set_section_number(RECEIVED_HANDLE received, uint32_t section_number_value)
Azure.IoT Build 0:6ae2f7bca550 13063 {
Azure.IoT Build 0:6ae2f7bca550 13064 int result;
Azure.IoT Build 0:6ae2f7bca550 13065
Azure.IoT Build 0:6ae2f7bca550 13066 if (received == NULL)
Azure.IoT Build 0:6ae2f7bca550 13067 {
Azure.IoT Build 0:6ae2f7bca550 13068 result = __LINE__;
Azure.IoT Build 0:6ae2f7bca550 13069 }
Azure.IoT Build 0:6ae2f7bca550 13070 else
Azure.IoT Build 0:6ae2f7bca550 13071 {
Azure.IoT Build 0:6ae2f7bca550 13072 RECEIVED_INSTANCE* received_instance = (RECEIVED_INSTANCE*)received;
Azure.IoT Build 0:6ae2f7bca550 13073 AMQP_VALUE section_number_amqp_value = amqpvalue_create_uint(section_number_value);
Azure.IoT Build 0:6ae2f7bca550 13074 if (section_number_amqp_value == NULL)
Azure.IoT Build 0:6ae2f7bca550 13075 {
Azure.IoT Build 0:6ae2f7bca550 13076 result = __LINE__;
Azure.IoT Build 0:6ae2f7bca550 13077 }
Azure.IoT Build 0:6ae2f7bca550 13078 else
Azure.IoT Build 0:6ae2f7bca550 13079 {
Azure.IoT Build 0:6ae2f7bca550 13080 if (amqpvalue_set_composite_item(received_instance->composite_value, 0, section_number_amqp_value) != 0)
Azure.IoT Build 0:6ae2f7bca550 13081 {
Azure.IoT Build 0:6ae2f7bca550 13082 result = __LINE__;
Azure.IoT Build 0:6ae2f7bca550 13083 }
Azure.IoT Build 0:6ae2f7bca550 13084 else
Azure.IoT Build 0:6ae2f7bca550 13085 {
Azure.IoT Build 0:6ae2f7bca550 13086 result = 0;
Azure.IoT Build 0:6ae2f7bca550 13087 }
Azure.IoT Build 0:6ae2f7bca550 13088
Azure.IoT Build 0:6ae2f7bca550 13089 amqpvalue_destroy(section_number_amqp_value);
Azure.IoT Build 0:6ae2f7bca550 13090 }
Azure.IoT Build 0:6ae2f7bca550 13091 }
Azure.IoT Build 0:6ae2f7bca550 13092
Azure.IoT Build 0:6ae2f7bca550 13093 return result;
Azure.IoT Build 0:6ae2f7bca550 13094 }
Azure.IoT Build 0:6ae2f7bca550 13095
Azure.IoT Build 0:6ae2f7bca550 13096 int received_get_section_offset(RECEIVED_HANDLE received, uint64_t* section_offset_value)
Azure.IoT Build 0:6ae2f7bca550 13097 {
Azure.IoT Build 0:6ae2f7bca550 13098 int result;
Azure.IoT Build 0:6ae2f7bca550 13099
Azure.IoT Build 0:6ae2f7bca550 13100 if (received == NULL)
Azure.IoT Build 0:6ae2f7bca550 13101 {
Azure.IoT Build 0:6ae2f7bca550 13102 result = __LINE__;
Azure.IoT Build 0:6ae2f7bca550 13103 }
Azure.IoT Build 0:6ae2f7bca550 13104 else
Azure.IoT Build 0:6ae2f7bca550 13105 {
Azure.IoT Build 0:6ae2f7bca550 13106 RECEIVED_INSTANCE* received_instance = (RECEIVED_INSTANCE*)received;
Azure.IoT Build 0:6ae2f7bca550 13107 AMQP_VALUE item_value = amqpvalue_get_composite_item_in_place(received_instance->composite_value, 1);
Azure.IoT Build 0:6ae2f7bca550 13108 if (item_value == NULL)
Azure.IoT Build 0:6ae2f7bca550 13109 {
Azure.IoT Build 0:6ae2f7bca550 13110 result = __LINE__;
Azure.IoT Build 0:6ae2f7bca550 13111 }
Azure.IoT Build 0:6ae2f7bca550 13112 else
Azure.IoT Build 0:6ae2f7bca550 13113 {
Azure.IoT Build 0:6ae2f7bca550 13114 if (amqpvalue_get_ulong(item_value, section_offset_value) != 0)
Azure.IoT Build 0:6ae2f7bca550 13115 {
Azure.IoT Build 0:6ae2f7bca550 13116 result = __LINE__;
Azure.IoT Build 0:6ae2f7bca550 13117 }
Azure.IoT Build 0:6ae2f7bca550 13118 else
Azure.IoT Build 0:6ae2f7bca550 13119 {
Azure.IoT Build 0:6ae2f7bca550 13120 result = 0;
Azure.IoT Build 0:6ae2f7bca550 13121 }
Azure.IoT Build 0:6ae2f7bca550 13122 }
Azure.IoT Build 0:6ae2f7bca550 13123 }
Azure.IoT Build 0:6ae2f7bca550 13124
Azure.IoT Build 0:6ae2f7bca550 13125 return result;
Azure.IoT Build 0:6ae2f7bca550 13126 }
Azure.IoT Build 0:6ae2f7bca550 13127
Azure.IoT Build 0:6ae2f7bca550 13128 int received_set_section_offset(RECEIVED_HANDLE received, uint64_t section_offset_value)
Azure.IoT Build 0:6ae2f7bca550 13129 {
Azure.IoT Build 0:6ae2f7bca550 13130 int result;
Azure.IoT Build 0:6ae2f7bca550 13131
Azure.IoT Build 0:6ae2f7bca550 13132 if (received == NULL)
Azure.IoT Build 0:6ae2f7bca550 13133 {
Azure.IoT Build 0:6ae2f7bca550 13134 result = __LINE__;
Azure.IoT Build 0:6ae2f7bca550 13135 }
Azure.IoT Build 0:6ae2f7bca550 13136 else
Azure.IoT Build 0:6ae2f7bca550 13137 {
Azure.IoT Build 0:6ae2f7bca550 13138 RECEIVED_INSTANCE* received_instance = (RECEIVED_INSTANCE*)received;
Azure.IoT Build 0:6ae2f7bca550 13139 AMQP_VALUE section_offset_amqp_value = amqpvalue_create_ulong(section_offset_value);
Azure.IoT Build 0:6ae2f7bca550 13140 if (section_offset_amqp_value == NULL)
Azure.IoT Build 0:6ae2f7bca550 13141 {
Azure.IoT Build 0:6ae2f7bca550 13142 result = __LINE__;
Azure.IoT Build 0:6ae2f7bca550 13143 }
Azure.IoT Build 0:6ae2f7bca550 13144 else
Azure.IoT Build 0:6ae2f7bca550 13145 {
Azure.IoT Build 0:6ae2f7bca550 13146 if (amqpvalue_set_composite_item(received_instance->composite_value, 1, section_offset_amqp_value) != 0)
Azure.IoT Build 0:6ae2f7bca550 13147 {
Azure.IoT Build 0:6ae2f7bca550 13148 result = __LINE__;
Azure.IoT Build 0:6ae2f7bca550 13149 }
Azure.IoT Build 0:6ae2f7bca550 13150 else
Azure.IoT Build 0:6ae2f7bca550 13151 {
Azure.IoT Build 0:6ae2f7bca550 13152 result = 0;
Azure.IoT Build 0:6ae2f7bca550 13153 }
Azure.IoT Build 0:6ae2f7bca550 13154
Azure.IoT Build 0:6ae2f7bca550 13155 amqpvalue_destroy(section_offset_amqp_value);
Azure.IoT Build 0:6ae2f7bca550 13156 }
Azure.IoT Build 0:6ae2f7bca550 13157 }
Azure.IoT Build 0:6ae2f7bca550 13158
Azure.IoT Build 0:6ae2f7bca550 13159 return result;
Azure.IoT Build 0:6ae2f7bca550 13160 }
Azure.IoT Build 0:6ae2f7bca550 13161
Azure.IoT Build 0:6ae2f7bca550 13162
Azure.IoT Build 0:6ae2f7bca550 13163 /* accepted */
Azure.IoT Build 0:6ae2f7bca550 13164
Azure.IoT Build 0:6ae2f7bca550 13165 typedef struct ACCEPTED_INSTANCE_TAG
Azure.IoT Build 0:6ae2f7bca550 13166 {
Azure.IoT Build 0:6ae2f7bca550 13167 AMQP_VALUE composite_value;
Azure.IoT Build 0:6ae2f7bca550 13168 } ACCEPTED_INSTANCE;
Azure.IoT Build 0:6ae2f7bca550 13169
Azure.IoT Build 0:6ae2f7bca550 13170 static ACCEPTED_HANDLE accepted_create_internal(void)
Azure.IoT Build 0:6ae2f7bca550 13171 {
Azure.IoT Build 0:6ae2f7bca550 13172 ACCEPTED_INSTANCE* accepted_instance = (ACCEPTED_INSTANCE*)amqpalloc_malloc(sizeof(ACCEPTED_INSTANCE));
Azure.IoT Build 0:6ae2f7bca550 13173 if (accepted_instance != NULL)
Azure.IoT Build 0:6ae2f7bca550 13174 {
Azure.IoT Build 0:6ae2f7bca550 13175 accepted_instance->composite_value = NULL;
Azure.IoT Build 0:6ae2f7bca550 13176 }
Azure.IoT Build 0:6ae2f7bca550 13177
Azure.IoT Build 0:6ae2f7bca550 13178 return accepted_instance;
Azure.IoT Build 0:6ae2f7bca550 13179 }
Azure.IoT Build 0:6ae2f7bca550 13180
Azure.IoT Build 0:6ae2f7bca550 13181 ACCEPTED_HANDLE accepted_create(void)
Azure.IoT Build 0:6ae2f7bca550 13182 {
Azure.IoT Build 0:6ae2f7bca550 13183 ACCEPTED_INSTANCE* accepted_instance = (ACCEPTED_INSTANCE*)amqpalloc_malloc(sizeof(ACCEPTED_INSTANCE));
Azure.IoT Build 0:6ae2f7bca550 13184 if (accepted_instance != NULL)
Azure.IoT Build 0:6ae2f7bca550 13185 {
Azure.IoT Build 0:6ae2f7bca550 13186 accepted_instance->composite_value = amqpvalue_create_composite_with_ulong_descriptor(36);
Azure.IoT Build 0:6ae2f7bca550 13187 if (accepted_instance->composite_value == NULL)
Azure.IoT Build 0:6ae2f7bca550 13188 {
Azure.IoT Build 0:6ae2f7bca550 13189 amqpalloc_free(accepted_instance);
Azure.IoT Build 0:6ae2f7bca550 13190 accepted_instance = NULL;
Azure.IoT Build 0:6ae2f7bca550 13191 }
Azure.IoT Build 0:6ae2f7bca550 13192 }
Azure.IoT Build 0:6ae2f7bca550 13193
Azure.IoT Build 0:6ae2f7bca550 13194 return accepted_instance;
Azure.IoT Build 0:6ae2f7bca550 13195 }
Azure.IoT Build 0:6ae2f7bca550 13196
Azure.IoT Build 0:6ae2f7bca550 13197 ACCEPTED_HANDLE accepted_clone(ACCEPTED_HANDLE value)
Azure.IoT Build 0:6ae2f7bca550 13198 {
Azure.IoT Build 0:6ae2f7bca550 13199 ACCEPTED_INSTANCE* accepted_instance = (ACCEPTED_INSTANCE*)amqpalloc_malloc(sizeof(ACCEPTED_INSTANCE));
Azure.IoT Build 0:6ae2f7bca550 13200 if (accepted_instance != NULL)
Azure.IoT Build 0:6ae2f7bca550 13201 {
Azure.IoT Build 0:6ae2f7bca550 13202 accepted_instance->composite_value = amqpvalue_clone(((ACCEPTED_INSTANCE*)value)->composite_value);
Azure.IoT Build 0:6ae2f7bca550 13203 if (accepted_instance->composite_value == NULL)
Azure.IoT Build 0:6ae2f7bca550 13204 {
Azure.IoT Build 0:6ae2f7bca550 13205 amqpalloc_free(accepted_instance);
Azure.IoT Build 0:6ae2f7bca550 13206 accepted_instance = NULL;
Azure.IoT Build 0:6ae2f7bca550 13207 }
Azure.IoT Build 0:6ae2f7bca550 13208 }
Azure.IoT Build 0:6ae2f7bca550 13209
Azure.IoT Build 0:6ae2f7bca550 13210 return accepted_instance;
Azure.IoT Build 0:6ae2f7bca550 13211 }
Azure.IoT Build 0:6ae2f7bca550 13212
Azure.IoT Build 0:6ae2f7bca550 13213 void accepted_destroy(ACCEPTED_HANDLE accepted)
Azure.IoT Build 0:6ae2f7bca550 13214 {
Azure.IoT Build 0:6ae2f7bca550 13215 if (accepted != NULL)
Azure.IoT Build 0:6ae2f7bca550 13216 {
Azure.IoT Build 0:6ae2f7bca550 13217 ACCEPTED_INSTANCE* accepted_instance = (ACCEPTED_INSTANCE*)accepted;
Azure.IoT Build 0:6ae2f7bca550 13218 amqpvalue_destroy(accepted_instance->composite_value);
Azure.IoT Build 0:6ae2f7bca550 13219 amqpalloc_free(accepted_instance);
Azure.IoT Build 0:6ae2f7bca550 13220 }
Azure.IoT Build 0:6ae2f7bca550 13221 }
Azure.IoT Build 0:6ae2f7bca550 13222
Azure.IoT Build 0:6ae2f7bca550 13223 AMQP_VALUE amqpvalue_create_accepted(ACCEPTED_HANDLE accepted)
Azure.IoT Build 0:6ae2f7bca550 13224 {
Azure.IoT Build 0:6ae2f7bca550 13225 AMQP_VALUE result;
Azure.IoT Build 0:6ae2f7bca550 13226
Azure.IoT Build 0:6ae2f7bca550 13227 if (accepted == NULL)
Azure.IoT Build 0:6ae2f7bca550 13228 {
Azure.IoT Build 0:6ae2f7bca550 13229 result = NULL;
Azure.IoT Build 0:6ae2f7bca550 13230 }
Azure.IoT Build 0:6ae2f7bca550 13231 else
Azure.IoT Build 0:6ae2f7bca550 13232 {
Azure.IoT Build 0:6ae2f7bca550 13233 ACCEPTED_INSTANCE* accepted_instance = (ACCEPTED_INSTANCE*)accepted;
Azure.IoT Build 0:6ae2f7bca550 13234 result = amqpvalue_clone(accepted_instance->composite_value);
Azure.IoT Build 0:6ae2f7bca550 13235 }
Azure.IoT Build 0:6ae2f7bca550 13236
Azure.IoT Build 0:6ae2f7bca550 13237 return result;
Azure.IoT Build 0:6ae2f7bca550 13238 }
Azure.IoT Build 0:6ae2f7bca550 13239
Azure.IoT Build 0:6ae2f7bca550 13240 bool is_accepted_type_by_descriptor(AMQP_VALUE descriptor)
Azure.IoT Build 0:6ae2f7bca550 13241 {
Azure.IoT Build 0:6ae2f7bca550 13242 bool result;
Azure.IoT Build 0:6ae2f7bca550 13243
Azure.IoT Build 0:6ae2f7bca550 13244 uint64_t descriptor_ulong;
Azure.IoT Build 0:6ae2f7bca550 13245 if ((amqpvalue_get_ulong(descriptor, &descriptor_ulong) == 0) &&
Azure.IoT Build 0:6ae2f7bca550 13246 (descriptor_ulong == 36))
Azure.IoT Build 0:6ae2f7bca550 13247 {
Azure.IoT Build 0:6ae2f7bca550 13248 result = true;
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 result = false;
Azure.IoT Build 0:6ae2f7bca550 13253 }
Azure.IoT Build 0:6ae2f7bca550 13254
Azure.IoT Build 0:6ae2f7bca550 13255 return result;
Azure.IoT Build 0:6ae2f7bca550 13256 }
Azure.IoT Build 0:6ae2f7bca550 13257
Azure.IoT Build 0:6ae2f7bca550 13258
Azure.IoT Build 0:6ae2f7bca550 13259 int amqpvalue_get_accepted(AMQP_VALUE value, ACCEPTED_HANDLE* accepted_handle)
Azure.IoT Build 0:6ae2f7bca550 13260 {
Azure.IoT Build 0:6ae2f7bca550 13261 int result;
Azure.IoT Build 0:6ae2f7bca550 13262 ACCEPTED_INSTANCE* accepted_instance = (ACCEPTED_INSTANCE*)accepted_create_internal();
Azure.IoT Build 0:6ae2f7bca550 13263 *accepted_handle = accepted_instance;
Azure.IoT Build 0:6ae2f7bca550 13264 if (*accepted_handle == NULL)
Azure.IoT Build 0:6ae2f7bca550 13265 {
Azure.IoT Build 0:6ae2f7bca550 13266 result = __LINE__;
Azure.IoT Build 0:6ae2f7bca550 13267 }
Azure.IoT Build 0:6ae2f7bca550 13268 else
Azure.IoT Build 0:6ae2f7bca550 13269 {
Azure.IoT Build 0:6ae2f7bca550 13270 AMQP_VALUE list_value = amqpvalue_get_inplace_described_value(value);
Azure.IoT Build 0:6ae2f7bca550 13271 if (list_value == NULL)
Azure.IoT Build 0:6ae2f7bca550 13272 {
Azure.IoT Build 0:6ae2f7bca550 13273 accepted_destroy(*accepted_handle);
Azure.IoT Build 0:6ae2f7bca550 13274 result = __LINE__;
Azure.IoT Build 0:6ae2f7bca550 13275 }
Azure.IoT Build 0:6ae2f7bca550 13276 else
Azure.IoT Build 0:6ae2f7bca550 13277 {
Azure.IoT Build 0:6ae2f7bca550 13278 do
Azure.IoT Build 0:6ae2f7bca550 13279 {
Azure.IoT Build 0:6ae2f7bca550 13280
Azure.IoT Build 0:6ae2f7bca550 13281 accepted_instance->composite_value = amqpvalue_clone(value);
Azure.IoT Build 0:6ae2f7bca550 13282
Azure.IoT Build 0:6ae2f7bca550 13283 result = 0;
Azure.IoT Build 0:6ae2f7bca550 13284 } while (0);
Azure.IoT Build 0:6ae2f7bca550 13285 }
Azure.IoT Build 0:6ae2f7bca550 13286 }
Azure.IoT Build 0:6ae2f7bca550 13287
Azure.IoT Build 0:6ae2f7bca550 13288 return result;
Azure.IoT Build 0:6ae2f7bca550 13289 }
Azure.IoT Build 0:6ae2f7bca550 13290
Azure.IoT Build 0:6ae2f7bca550 13291
Azure.IoT Build 0:6ae2f7bca550 13292 /* rejected */
Azure.IoT Build 0:6ae2f7bca550 13293
Azure.IoT Build 0:6ae2f7bca550 13294 typedef struct REJECTED_INSTANCE_TAG
Azure.IoT Build 0:6ae2f7bca550 13295 {
Azure.IoT Build 0:6ae2f7bca550 13296 AMQP_VALUE composite_value;
Azure.IoT Build 0:6ae2f7bca550 13297 } REJECTED_INSTANCE;
Azure.IoT Build 0:6ae2f7bca550 13298
Azure.IoT Build 0:6ae2f7bca550 13299 static REJECTED_HANDLE rejected_create_internal(void)
Azure.IoT Build 0:6ae2f7bca550 13300 {
Azure.IoT Build 0:6ae2f7bca550 13301 REJECTED_INSTANCE* rejected_instance = (REJECTED_INSTANCE*)amqpalloc_malloc(sizeof(REJECTED_INSTANCE));
Azure.IoT Build 0:6ae2f7bca550 13302 if (rejected_instance != NULL)
Azure.IoT Build 0:6ae2f7bca550 13303 {
Azure.IoT Build 0:6ae2f7bca550 13304 rejected_instance->composite_value = NULL;
Azure.IoT Build 0:6ae2f7bca550 13305 }
Azure.IoT Build 0:6ae2f7bca550 13306
Azure.IoT Build 0:6ae2f7bca550 13307 return rejected_instance;
Azure.IoT Build 0:6ae2f7bca550 13308 }
Azure.IoT Build 0:6ae2f7bca550 13309
Azure.IoT Build 0:6ae2f7bca550 13310 REJECTED_HANDLE rejected_create(void)
Azure.IoT Build 0:6ae2f7bca550 13311 {
Azure.IoT Build 0:6ae2f7bca550 13312 REJECTED_INSTANCE* rejected_instance = (REJECTED_INSTANCE*)amqpalloc_malloc(sizeof(REJECTED_INSTANCE));
Azure.IoT Build 0:6ae2f7bca550 13313 if (rejected_instance != NULL)
Azure.IoT Build 0:6ae2f7bca550 13314 {
Azure.IoT Build 0:6ae2f7bca550 13315 rejected_instance->composite_value = amqpvalue_create_composite_with_ulong_descriptor(37);
Azure.IoT Build 0:6ae2f7bca550 13316 if (rejected_instance->composite_value == NULL)
Azure.IoT Build 0:6ae2f7bca550 13317 {
Azure.IoT Build 0:6ae2f7bca550 13318 amqpalloc_free(rejected_instance);
Azure.IoT Build 0:6ae2f7bca550 13319 rejected_instance = NULL;
Azure.IoT Build 0:6ae2f7bca550 13320 }
Azure.IoT Build 0:6ae2f7bca550 13321 }
Azure.IoT Build 0:6ae2f7bca550 13322
Azure.IoT Build 0:6ae2f7bca550 13323 return rejected_instance;
Azure.IoT Build 0:6ae2f7bca550 13324 }
Azure.IoT Build 0:6ae2f7bca550 13325
Azure.IoT Build 0:6ae2f7bca550 13326 REJECTED_HANDLE rejected_clone(REJECTED_HANDLE value)
Azure.IoT Build 0:6ae2f7bca550 13327 {
Azure.IoT Build 0:6ae2f7bca550 13328 REJECTED_INSTANCE* rejected_instance = (REJECTED_INSTANCE*)amqpalloc_malloc(sizeof(REJECTED_INSTANCE));
Azure.IoT Build 0:6ae2f7bca550 13329 if (rejected_instance != NULL)
Azure.IoT Build 0:6ae2f7bca550 13330 {
Azure.IoT Build 0:6ae2f7bca550 13331 rejected_instance->composite_value = amqpvalue_clone(((REJECTED_INSTANCE*)value)->composite_value);
Azure.IoT Build 0:6ae2f7bca550 13332 if (rejected_instance->composite_value == NULL)
Azure.IoT Build 0:6ae2f7bca550 13333 {
Azure.IoT Build 0:6ae2f7bca550 13334 amqpalloc_free(rejected_instance);
Azure.IoT Build 0:6ae2f7bca550 13335 rejected_instance = NULL;
Azure.IoT Build 0:6ae2f7bca550 13336 }
Azure.IoT Build 0:6ae2f7bca550 13337 }
Azure.IoT Build 0:6ae2f7bca550 13338
Azure.IoT Build 0:6ae2f7bca550 13339 return rejected_instance;
Azure.IoT Build 0:6ae2f7bca550 13340 }
Azure.IoT Build 0:6ae2f7bca550 13341
Azure.IoT Build 0:6ae2f7bca550 13342 void rejected_destroy(REJECTED_HANDLE rejected)
Azure.IoT Build 0:6ae2f7bca550 13343 {
Azure.IoT Build 0:6ae2f7bca550 13344 if (rejected != NULL)
Azure.IoT Build 0:6ae2f7bca550 13345 {
Azure.IoT Build 0:6ae2f7bca550 13346 REJECTED_INSTANCE* rejected_instance = (REJECTED_INSTANCE*)rejected;
Azure.IoT Build 0:6ae2f7bca550 13347 amqpvalue_destroy(rejected_instance->composite_value);
Azure.IoT Build 0:6ae2f7bca550 13348 amqpalloc_free(rejected_instance);
Azure.IoT Build 0:6ae2f7bca550 13349 }
Azure.IoT Build 0:6ae2f7bca550 13350 }
Azure.IoT Build 0:6ae2f7bca550 13351
Azure.IoT Build 0:6ae2f7bca550 13352 AMQP_VALUE amqpvalue_create_rejected(REJECTED_HANDLE rejected)
Azure.IoT Build 0:6ae2f7bca550 13353 {
Azure.IoT Build 0:6ae2f7bca550 13354 AMQP_VALUE result;
Azure.IoT Build 0:6ae2f7bca550 13355
Azure.IoT Build 0:6ae2f7bca550 13356 if (rejected == NULL)
Azure.IoT Build 0:6ae2f7bca550 13357 {
Azure.IoT Build 0:6ae2f7bca550 13358 result = NULL;
Azure.IoT Build 0:6ae2f7bca550 13359 }
Azure.IoT Build 0:6ae2f7bca550 13360 else
Azure.IoT Build 0:6ae2f7bca550 13361 {
Azure.IoT Build 0:6ae2f7bca550 13362 REJECTED_INSTANCE* rejected_instance = (REJECTED_INSTANCE*)rejected;
Azure.IoT Build 0:6ae2f7bca550 13363 result = amqpvalue_clone(rejected_instance->composite_value);
Azure.IoT Build 0:6ae2f7bca550 13364 }
Azure.IoT Build 0:6ae2f7bca550 13365
Azure.IoT Build 0:6ae2f7bca550 13366 return result;
Azure.IoT Build 0:6ae2f7bca550 13367 }
Azure.IoT Build 0:6ae2f7bca550 13368
Azure.IoT Build 0:6ae2f7bca550 13369 bool is_rejected_type_by_descriptor(AMQP_VALUE descriptor)
Azure.IoT Build 0:6ae2f7bca550 13370 {
Azure.IoT Build 0:6ae2f7bca550 13371 bool result;
Azure.IoT Build 0:6ae2f7bca550 13372
Azure.IoT Build 0:6ae2f7bca550 13373 uint64_t descriptor_ulong;
Azure.IoT Build 0:6ae2f7bca550 13374 if ((amqpvalue_get_ulong(descriptor, &descriptor_ulong) == 0) &&
Azure.IoT Build 0:6ae2f7bca550 13375 (descriptor_ulong == 37))
Azure.IoT Build 0:6ae2f7bca550 13376 {
Azure.IoT Build 0:6ae2f7bca550 13377 result = true;
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 result = false;
Azure.IoT Build 0:6ae2f7bca550 13382 }
Azure.IoT Build 0:6ae2f7bca550 13383
Azure.IoT Build 0:6ae2f7bca550 13384 return result;
Azure.IoT Build 0:6ae2f7bca550 13385 }
Azure.IoT Build 0:6ae2f7bca550 13386
Azure.IoT Build 0:6ae2f7bca550 13387
Azure.IoT Build 0:6ae2f7bca550 13388 int amqpvalue_get_rejected(AMQP_VALUE value, REJECTED_HANDLE* rejected_handle)
Azure.IoT Build 0:6ae2f7bca550 13389 {
Azure.IoT Build 0:6ae2f7bca550 13390 int result;
Azure.IoT Build 0:6ae2f7bca550 13391 REJECTED_INSTANCE* rejected_instance = (REJECTED_INSTANCE*)rejected_create_internal();
Azure.IoT Build 0:6ae2f7bca550 13392 *rejected_handle = rejected_instance;
Azure.IoT Build 0:6ae2f7bca550 13393 if (*rejected_handle == NULL)
Azure.IoT Build 0:6ae2f7bca550 13394 {
Azure.IoT Build 0:6ae2f7bca550 13395 result = __LINE__;
Azure.IoT Build 0:6ae2f7bca550 13396 }
Azure.IoT Build 0:6ae2f7bca550 13397 else
Azure.IoT Build 0:6ae2f7bca550 13398 {
Azure.IoT Build 0:6ae2f7bca550 13399 AMQP_VALUE list_value = amqpvalue_get_inplace_described_value(value);
Azure.IoT Build 0:6ae2f7bca550 13400 if (list_value == NULL)
Azure.IoT Build 0:6ae2f7bca550 13401 {
Azure.IoT Build 0:6ae2f7bca550 13402 rejected_destroy(*rejected_handle);
Azure.IoT Build 0:6ae2f7bca550 13403 result = __LINE__;
Azure.IoT Build 0:6ae2f7bca550 13404 }
Azure.IoT Build 0:6ae2f7bca550 13405 else
Azure.IoT Build 0:6ae2f7bca550 13406 {
Azure.IoT Build 0:6ae2f7bca550 13407 do
Azure.IoT Build 0:6ae2f7bca550 13408 {
Azure.IoT Build 0:6ae2f7bca550 13409 AMQP_VALUE item_value;
Azure.IoT Build 0:6ae2f7bca550 13410 /* error */
Azure.IoT Build 0:6ae2f7bca550 13411 item_value = amqpvalue_get_list_item(list_value, 0);
Azure.IoT Build 0:6ae2f7bca550 13412 if (item_value == NULL)
Azure.IoT Build 0:6ae2f7bca550 13413 {
Azure.IoT Build 0:6ae2f7bca550 13414 /* do nothing */
Azure.IoT Build 0:6ae2f7bca550 13415 }
Azure.IoT Build 0:6ae2f7bca550 13416 else
Azure.IoT Build 0:6ae2f7bca550 13417 {
Azure.IoT Build 0:6ae2f7bca550 13418 ERROR_HANDLE error;
Azure.IoT Build 0:6ae2f7bca550 13419 if (amqpvalue_get_error(item_value, &error) != 0)
Azure.IoT Build 0:6ae2f7bca550 13420 {
Azure.IoT Build 0:6ae2f7bca550 13421 if (amqpvalue_get_type(item_value) != AMQP_TYPE_NULL)
Azure.IoT Build 0:6ae2f7bca550 13422 {
Azure.IoT Build 0:6ae2f7bca550 13423 rejected_destroy(*rejected_handle);
Azure.IoT Build 0:6ae2f7bca550 13424 result = __LINE__;
Azure.IoT Build 0:6ae2f7bca550 13425 break;
Azure.IoT Build 0:6ae2f7bca550 13426 }
Azure.IoT Build 0:6ae2f7bca550 13427 }
Azure.IoT Build 0:6ae2f7bca550 13428
Azure.IoT Build 0:6ae2f7bca550 13429 amqpvalue_destroy(item_value);
Azure.IoT Build 0:6ae2f7bca550 13430 }
Azure.IoT Build 0:6ae2f7bca550 13431
Azure.IoT Build 0:6ae2f7bca550 13432 rejected_instance->composite_value = amqpvalue_clone(value);
Azure.IoT Build 0:6ae2f7bca550 13433
Azure.IoT Build 0:6ae2f7bca550 13434 result = 0;
Azure.IoT Build 0:6ae2f7bca550 13435 } while (0);
Azure.IoT Build 0:6ae2f7bca550 13436 }
Azure.IoT Build 0:6ae2f7bca550 13437 }
Azure.IoT Build 0:6ae2f7bca550 13438
Azure.IoT Build 0:6ae2f7bca550 13439 return result;
Azure.IoT Build 0:6ae2f7bca550 13440 }
Azure.IoT Build 0:6ae2f7bca550 13441
Azure.IoT Build 0:6ae2f7bca550 13442 int rejected_get_error(REJECTED_HANDLE rejected, ERROR_HANDLE* error_value)
Azure.IoT Build 0:6ae2f7bca550 13443 {
Azure.IoT Build 0:6ae2f7bca550 13444 int result;
Azure.IoT Build 0:6ae2f7bca550 13445
Azure.IoT Build 0:6ae2f7bca550 13446 if (rejected == NULL)
Azure.IoT Build 0:6ae2f7bca550 13447 {
Azure.IoT Build 0:6ae2f7bca550 13448 result = __LINE__;
Azure.IoT Build 0:6ae2f7bca550 13449 }
Azure.IoT Build 0:6ae2f7bca550 13450 else
Azure.IoT Build 0:6ae2f7bca550 13451 {
Azure.IoT Build 0:6ae2f7bca550 13452 REJECTED_INSTANCE* rejected_instance = (REJECTED_INSTANCE*)rejected;
Azure.IoT Build 0:6ae2f7bca550 13453 AMQP_VALUE item_value = amqpvalue_get_composite_item_in_place(rejected_instance->composite_value, 0);
Azure.IoT Build 0:6ae2f7bca550 13454 if (item_value == NULL)
Azure.IoT Build 0:6ae2f7bca550 13455 {
Azure.IoT Build 0:6ae2f7bca550 13456 result = __LINE__;
Azure.IoT Build 0:6ae2f7bca550 13457 }
Azure.IoT Build 0:6ae2f7bca550 13458 else
Azure.IoT Build 0:6ae2f7bca550 13459 {
Azure.IoT Build 0:6ae2f7bca550 13460 if (amqpvalue_get_error(item_value, error_value) != 0)
Azure.IoT Build 0:6ae2f7bca550 13461 {
Azure.IoT Build 0:6ae2f7bca550 13462 result = __LINE__;
Azure.IoT Build 0:6ae2f7bca550 13463 }
Azure.IoT Build 0:6ae2f7bca550 13464 else
Azure.IoT Build 0:6ae2f7bca550 13465 {
Azure.IoT Build 0:6ae2f7bca550 13466 result = 0;
Azure.IoT Build 0:6ae2f7bca550 13467 }
Azure.IoT Build 0:6ae2f7bca550 13468 }
Azure.IoT Build 0:6ae2f7bca550 13469 }
Azure.IoT Build 0:6ae2f7bca550 13470
Azure.IoT Build 0:6ae2f7bca550 13471 return result;
Azure.IoT Build 0:6ae2f7bca550 13472 }
Azure.IoT Build 0:6ae2f7bca550 13473
Azure.IoT Build 0:6ae2f7bca550 13474 int rejected_set_error(REJECTED_HANDLE rejected, ERROR_HANDLE error_value)
Azure.IoT Build 0:6ae2f7bca550 13475 {
Azure.IoT Build 0:6ae2f7bca550 13476 int result;
Azure.IoT Build 0:6ae2f7bca550 13477
Azure.IoT Build 0:6ae2f7bca550 13478 if (rejected == NULL)
Azure.IoT Build 0:6ae2f7bca550 13479 {
Azure.IoT Build 0:6ae2f7bca550 13480 result = __LINE__;
Azure.IoT Build 0:6ae2f7bca550 13481 }
Azure.IoT Build 0:6ae2f7bca550 13482 else
Azure.IoT Build 0:6ae2f7bca550 13483 {
Azure.IoT Build 0:6ae2f7bca550 13484 REJECTED_INSTANCE* rejected_instance = (REJECTED_INSTANCE*)rejected;
Azure.IoT Build 0:6ae2f7bca550 13485 AMQP_VALUE error_amqp_value = amqpvalue_create_error(error_value);
Azure.IoT Build 0:6ae2f7bca550 13486 if (error_amqp_value == NULL)
Azure.IoT Build 0:6ae2f7bca550 13487 {
Azure.IoT Build 0:6ae2f7bca550 13488 result = __LINE__;
Azure.IoT Build 0:6ae2f7bca550 13489 }
Azure.IoT Build 0:6ae2f7bca550 13490 else
Azure.IoT Build 0:6ae2f7bca550 13491 {
Azure.IoT Build 0:6ae2f7bca550 13492 if (amqpvalue_set_composite_item(rejected_instance->composite_value, 0, error_amqp_value) != 0)
Azure.IoT Build 0:6ae2f7bca550 13493 {
Azure.IoT Build 0:6ae2f7bca550 13494 result = __LINE__;
Azure.IoT Build 0:6ae2f7bca550 13495 }
Azure.IoT Build 0:6ae2f7bca550 13496 else
Azure.IoT Build 0:6ae2f7bca550 13497 {
Azure.IoT Build 0:6ae2f7bca550 13498 result = 0;
Azure.IoT Build 0:6ae2f7bca550 13499 }
Azure.IoT Build 0:6ae2f7bca550 13500
Azure.IoT Build 0:6ae2f7bca550 13501 amqpvalue_destroy(error_amqp_value);
Azure.IoT Build 0:6ae2f7bca550 13502 }
Azure.IoT Build 0:6ae2f7bca550 13503 }
Azure.IoT Build 0:6ae2f7bca550 13504
Azure.IoT Build 0:6ae2f7bca550 13505 return result;
Azure.IoT Build 0:6ae2f7bca550 13506 }
Azure.IoT Build 0:6ae2f7bca550 13507
Azure.IoT Build 0:6ae2f7bca550 13508
Azure.IoT Build 0:6ae2f7bca550 13509 /* released */
Azure.IoT Build 0:6ae2f7bca550 13510
Azure.IoT Build 0:6ae2f7bca550 13511 typedef struct RELEASED_INSTANCE_TAG
Azure.IoT Build 0:6ae2f7bca550 13512 {
Azure.IoT Build 0:6ae2f7bca550 13513 AMQP_VALUE composite_value;
Azure.IoT Build 0:6ae2f7bca550 13514 } RELEASED_INSTANCE;
Azure.IoT Build 0:6ae2f7bca550 13515
Azure.IoT Build 0:6ae2f7bca550 13516 static RELEASED_HANDLE released_create_internal(void)
Azure.IoT Build 0:6ae2f7bca550 13517 {
Azure.IoT Build 0:6ae2f7bca550 13518 RELEASED_INSTANCE* released_instance = (RELEASED_INSTANCE*)amqpalloc_malloc(sizeof(RELEASED_INSTANCE));
Azure.IoT Build 0:6ae2f7bca550 13519 if (released_instance != NULL)
Azure.IoT Build 0:6ae2f7bca550 13520 {
Azure.IoT Build 0:6ae2f7bca550 13521 released_instance->composite_value = NULL;
Azure.IoT Build 0:6ae2f7bca550 13522 }
Azure.IoT Build 0:6ae2f7bca550 13523
Azure.IoT Build 0:6ae2f7bca550 13524 return released_instance;
Azure.IoT Build 0:6ae2f7bca550 13525 }
Azure.IoT Build 0:6ae2f7bca550 13526
Azure.IoT Build 0:6ae2f7bca550 13527 RELEASED_HANDLE released_create(void)
Azure.IoT Build 0:6ae2f7bca550 13528 {
Azure.IoT Build 0:6ae2f7bca550 13529 RELEASED_INSTANCE* released_instance = (RELEASED_INSTANCE*)amqpalloc_malloc(sizeof(RELEASED_INSTANCE));
Azure.IoT Build 0:6ae2f7bca550 13530 if (released_instance != NULL)
Azure.IoT Build 0:6ae2f7bca550 13531 {
Azure.IoT Build 0:6ae2f7bca550 13532 released_instance->composite_value = amqpvalue_create_composite_with_ulong_descriptor(38);
Azure.IoT Build 0:6ae2f7bca550 13533 if (released_instance->composite_value == NULL)
Azure.IoT Build 0:6ae2f7bca550 13534 {
Azure.IoT Build 0:6ae2f7bca550 13535 amqpalloc_free(released_instance);
Azure.IoT Build 0:6ae2f7bca550 13536 released_instance = NULL;
Azure.IoT Build 0:6ae2f7bca550 13537 }
Azure.IoT Build 0:6ae2f7bca550 13538 }
Azure.IoT Build 0:6ae2f7bca550 13539
Azure.IoT Build 0:6ae2f7bca550 13540 return released_instance;
Azure.IoT Build 0:6ae2f7bca550 13541 }
Azure.IoT Build 0:6ae2f7bca550 13542
Azure.IoT Build 0:6ae2f7bca550 13543 RELEASED_HANDLE released_clone(RELEASED_HANDLE value)
Azure.IoT Build 0:6ae2f7bca550 13544 {
Azure.IoT Build 0:6ae2f7bca550 13545 RELEASED_INSTANCE* released_instance = (RELEASED_INSTANCE*)amqpalloc_malloc(sizeof(RELEASED_INSTANCE));
Azure.IoT Build 0:6ae2f7bca550 13546 if (released_instance != NULL)
Azure.IoT Build 0:6ae2f7bca550 13547 {
Azure.IoT Build 0:6ae2f7bca550 13548 released_instance->composite_value = amqpvalue_clone(((RELEASED_INSTANCE*)value)->composite_value);
Azure.IoT Build 0:6ae2f7bca550 13549 if (released_instance->composite_value == NULL)
Azure.IoT Build 0:6ae2f7bca550 13550 {
Azure.IoT Build 0:6ae2f7bca550 13551 amqpalloc_free(released_instance);
Azure.IoT Build 0:6ae2f7bca550 13552 released_instance = NULL;
Azure.IoT Build 0:6ae2f7bca550 13553 }
Azure.IoT Build 0:6ae2f7bca550 13554 }
Azure.IoT Build 0:6ae2f7bca550 13555
Azure.IoT Build 0:6ae2f7bca550 13556 return released_instance;
Azure.IoT Build 0:6ae2f7bca550 13557 }
Azure.IoT Build 0:6ae2f7bca550 13558
Azure.IoT Build 0:6ae2f7bca550 13559 void released_destroy(RELEASED_HANDLE released)
Azure.IoT Build 0:6ae2f7bca550 13560 {
Azure.IoT Build 0:6ae2f7bca550 13561 if (released != NULL)
Azure.IoT Build 0:6ae2f7bca550 13562 {
Azure.IoT Build 0:6ae2f7bca550 13563 RELEASED_INSTANCE* released_instance = (RELEASED_INSTANCE*)released;
Azure.IoT Build 0:6ae2f7bca550 13564 amqpvalue_destroy(released_instance->composite_value);
Azure.IoT Build 0:6ae2f7bca550 13565 amqpalloc_free(released_instance);
Azure.IoT Build 0:6ae2f7bca550 13566 }
Azure.IoT Build 0:6ae2f7bca550 13567 }
Azure.IoT Build 0:6ae2f7bca550 13568
Azure.IoT Build 0:6ae2f7bca550 13569 AMQP_VALUE amqpvalue_create_released(RELEASED_HANDLE released)
Azure.IoT Build 0:6ae2f7bca550 13570 {
Azure.IoT Build 0:6ae2f7bca550 13571 AMQP_VALUE result;
Azure.IoT Build 0:6ae2f7bca550 13572
Azure.IoT Build 0:6ae2f7bca550 13573 if (released == NULL)
Azure.IoT Build 0:6ae2f7bca550 13574 {
Azure.IoT Build 0:6ae2f7bca550 13575 result = NULL;
Azure.IoT Build 0:6ae2f7bca550 13576 }
Azure.IoT Build 0:6ae2f7bca550 13577 else
Azure.IoT Build 0:6ae2f7bca550 13578 {
Azure.IoT Build 0:6ae2f7bca550 13579 RELEASED_INSTANCE* released_instance = (RELEASED_INSTANCE*)released;
Azure.IoT Build 0:6ae2f7bca550 13580 result = amqpvalue_clone(released_instance->composite_value);
Azure.IoT Build 0:6ae2f7bca550 13581 }
Azure.IoT Build 0:6ae2f7bca550 13582
Azure.IoT Build 0:6ae2f7bca550 13583 return result;
Azure.IoT Build 0:6ae2f7bca550 13584 }
Azure.IoT Build 0:6ae2f7bca550 13585
Azure.IoT Build 0:6ae2f7bca550 13586 bool is_released_type_by_descriptor(AMQP_VALUE descriptor)
Azure.IoT Build 0:6ae2f7bca550 13587 {
Azure.IoT Build 0:6ae2f7bca550 13588 bool result;
Azure.IoT Build 0:6ae2f7bca550 13589
Azure.IoT Build 0:6ae2f7bca550 13590 uint64_t descriptor_ulong;
Azure.IoT Build 0:6ae2f7bca550 13591 if ((amqpvalue_get_ulong(descriptor, &descriptor_ulong) == 0) &&
Azure.IoT Build 0:6ae2f7bca550 13592 (descriptor_ulong == 38))
Azure.IoT Build 0:6ae2f7bca550 13593 {
Azure.IoT Build 0:6ae2f7bca550 13594 result = true;
Azure.IoT Build 0:6ae2f7bca550 13595 }
Azure.IoT Build 0:6ae2f7bca550 13596 else
Azure.IoT Build 0:6ae2f7bca550 13597 {
Azure.IoT Build 0:6ae2f7bca550 13598 result = false;
Azure.IoT Build 0:6ae2f7bca550 13599 }
Azure.IoT Build 0:6ae2f7bca550 13600
Azure.IoT Build 0:6ae2f7bca550 13601 return result;
Azure.IoT Build 0:6ae2f7bca550 13602 }
Azure.IoT Build 0:6ae2f7bca550 13603
Azure.IoT Build 0:6ae2f7bca550 13604
Azure.IoT Build 0:6ae2f7bca550 13605 int amqpvalue_get_released(AMQP_VALUE value, RELEASED_HANDLE* released_handle)
Azure.IoT Build 0:6ae2f7bca550 13606 {
Azure.IoT Build 0:6ae2f7bca550 13607 int result;
Azure.IoT Build 0:6ae2f7bca550 13608 RELEASED_INSTANCE* released_instance = (RELEASED_INSTANCE*)released_create_internal();
Azure.IoT Build 0:6ae2f7bca550 13609 *released_handle = released_instance;
Azure.IoT Build 0:6ae2f7bca550 13610 if (*released_handle == NULL)
Azure.IoT Build 0:6ae2f7bca550 13611 {
Azure.IoT Build 0:6ae2f7bca550 13612 result = __LINE__;
Azure.IoT Build 0:6ae2f7bca550 13613 }
Azure.IoT Build 0:6ae2f7bca550 13614 else
Azure.IoT Build 0:6ae2f7bca550 13615 {
Azure.IoT Build 0:6ae2f7bca550 13616 AMQP_VALUE list_value = amqpvalue_get_inplace_described_value(value);
Azure.IoT Build 0:6ae2f7bca550 13617 if (list_value == NULL)
Azure.IoT Build 0:6ae2f7bca550 13618 {
Azure.IoT Build 0:6ae2f7bca550 13619 released_destroy(*released_handle);
Azure.IoT Build 0:6ae2f7bca550 13620 result = __LINE__;
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 do
Azure.IoT Build 0:6ae2f7bca550 13625 {
Azure.IoT Build 0:6ae2f7bca550 13626
Azure.IoT Build 0:6ae2f7bca550 13627 released_instance->composite_value = amqpvalue_clone(value);
Azure.IoT Build 0:6ae2f7bca550 13628
Azure.IoT Build 0:6ae2f7bca550 13629 result = 0;
Azure.IoT Build 0:6ae2f7bca550 13630 } while (0);
Azure.IoT Build 0:6ae2f7bca550 13631 }
Azure.IoT Build 0:6ae2f7bca550 13632 }
Azure.IoT Build 0:6ae2f7bca550 13633
Azure.IoT Build 0:6ae2f7bca550 13634 return result;
Azure.IoT Build 0:6ae2f7bca550 13635 }
Azure.IoT Build 0:6ae2f7bca550 13636
Azure.IoT Build 0:6ae2f7bca550 13637
Azure.IoT Build 0:6ae2f7bca550 13638 /* modified */
Azure.IoT Build 0:6ae2f7bca550 13639
Azure.IoT Build 0:6ae2f7bca550 13640 typedef struct MODIFIED_INSTANCE_TAG
Azure.IoT Build 0:6ae2f7bca550 13641 {
Azure.IoT Build 0:6ae2f7bca550 13642 AMQP_VALUE composite_value;
Azure.IoT Build 0:6ae2f7bca550 13643 } MODIFIED_INSTANCE;
Azure.IoT Build 0:6ae2f7bca550 13644
Azure.IoT Build 0:6ae2f7bca550 13645 static MODIFIED_HANDLE modified_create_internal(void)
Azure.IoT Build 0:6ae2f7bca550 13646 {
Azure.IoT Build 0:6ae2f7bca550 13647 MODIFIED_INSTANCE* modified_instance = (MODIFIED_INSTANCE*)amqpalloc_malloc(sizeof(MODIFIED_INSTANCE));
Azure.IoT Build 0:6ae2f7bca550 13648 if (modified_instance != NULL)
Azure.IoT Build 0:6ae2f7bca550 13649 {
Azure.IoT Build 0:6ae2f7bca550 13650 modified_instance->composite_value = NULL;
Azure.IoT Build 0:6ae2f7bca550 13651 }
Azure.IoT Build 0:6ae2f7bca550 13652
Azure.IoT Build 0:6ae2f7bca550 13653 return modified_instance;
Azure.IoT Build 0:6ae2f7bca550 13654 }
Azure.IoT Build 0:6ae2f7bca550 13655
Azure.IoT Build 0:6ae2f7bca550 13656 MODIFIED_HANDLE modified_create(void)
Azure.IoT Build 0:6ae2f7bca550 13657 {
Azure.IoT Build 0:6ae2f7bca550 13658 MODIFIED_INSTANCE* modified_instance = (MODIFIED_INSTANCE*)amqpalloc_malloc(sizeof(MODIFIED_INSTANCE));
Azure.IoT Build 0:6ae2f7bca550 13659 if (modified_instance != NULL)
Azure.IoT Build 0:6ae2f7bca550 13660 {
Azure.IoT Build 0:6ae2f7bca550 13661 modified_instance->composite_value = amqpvalue_create_composite_with_ulong_descriptor(39);
Azure.IoT Build 0:6ae2f7bca550 13662 if (modified_instance->composite_value == NULL)
Azure.IoT Build 0:6ae2f7bca550 13663 {
Azure.IoT Build 0:6ae2f7bca550 13664 amqpalloc_free(modified_instance);
Azure.IoT Build 0:6ae2f7bca550 13665 modified_instance = NULL;
Azure.IoT Build 0:6ae2f7bca550 13666 }
Azure.IoT Build 0:6ae2f7bca550 13667 }
Azure.IoT Build 0:6ae2f7bca550 13668
Azure.IoT Build 0:6ae2f7bca550 13669 return modified_instance;
Azure.IoT Build 0:6ae2f7bca550 13670 }
Azure.IoT Build 0:6ae2f7bca550 13671
Azure.IoT Build 0:6ae2f7bca550 13672 MODIFIED_HANDLE modified_clone(MODIFIED_HANDLE value)
Azure.IoT Build 0:6ae2f7bca550 13673 {
Azure.IoT Build 0:6ae2f7bca550 13674 MODIFIED_INSTANCE* modified_instance = (MODIFIED_INSTANCE*)amqpalloc_malloc(sizeof(MODIFIED_INSTANCE));
Azure.IoT Build 0:6ae2f7bca550 13675 if (modified_instance != NULL)
Azure.IoT Build 0:6ae2f7bca550 13676 {
Azure.IoT Build 0:6ae2f7bca550 13677 modified_instance->composite_value = amqpvalue_clone(((MODIFIED_INSTANCE*)value)->composite_value);
Azure.IoT Build 0:6ae2f7bca550 13678 if (modified_instance->composite_value == NULL)
Azure.IoT Build 0:6ae2f7bca550 13679 {
Azure.IoT Build 0:6ae2f7bca550 13680 amqpalloc_free(modified_instance);
Azure.IoT Build 0:6ae2f7bca550 13681 modified_instance = NULL;
Azure.IoT Build 0:6ae2f7bca550 13682 }
Azure.IoT Build 0:6ae2f7bca550 13683 }
Azure.IoT Build 0:6ae2f7bca550 13684
Azure.IoT Build 0:6ae2f7bca550 13685 return modified_instance;
Azure.IoT Build 0:6ae2f7bca550 13686 }
Azure.IoT Build 0:6ae2f7bca550 13687
Azure.IoT Build 0:6ae2f7bca550 13688 void modified_destroy(MODIFIED_HANDLE modified)
Azure.IoT Build 0:6ae2f7bca550 13689 {
Azure.IoT Build 0:6ae2f7bca550 13690 if (modified != NULL)
Azure.IoT Build 0:6ae2f7bca550 13691 {
Azure.IoT Build 0:6ae2f7bca550 13692 MODIFIED_INSTANCE* modified_instance = (MODIFIED_INSTANCE*)modified;
Azure.IoT Build 0:6ae2f7bca550 13693 amqpvalue_destroy(modified_instance->composite_value);
Azure.IoT Build 0:6ae2f7bca550 13694 amqpalloc_free(modified_instance);
Azure.IoT Build 0:6ae2f7bca550 13695 }
Azure.IoT Build 0:6ae2f7bca550 13696 }
Azure.IoT Build 0:6ae2f7bca550 13697
Azure.IoT Build 0:6ae2f7bca550 13698 AMQP_VALUE amqpvalue_create_modified(MODIFIED_HANDLE modified)
Azure.IoT Build 0:6ae2f7bca550 13699 {
Azure.IoT Build 0:6ae2f7bca550 13700 AMQP_VALUE result;
Azure.IoT Build 0:6ae2f7bca550 13701
Azure.IoT Build 0:6ae2f7bca550 13702 if (modified == NULL)
Azure.IoT Build 0:6ae2f7bca550 13703 {
Azure.IoT Build 0:6ae2f7bca550 13704 result = NULL;
Azure.IoT Build 0:6ae2f7bca550 13705 }
Azure.IoT Build 0:6ae2f7bca550 13706 else
Azure.IoT Build 0:6ae2f7bca550 13707 {
Azure.IoT Build 0:6ae2f7bca550 13708 MODIFIED_INSTANCE* modified_instance = (MODIFIED_INSTANCE*)modified;
Azure.IoT Build 0:6ae2f7bca550 13709 result = amqpvalue_clone(modified_instance->composite_value);
Azure.IoT Build 0:6ae2f7bca550 13710 }
Azure.IoT Build 0:6ae2f7bca550 13711
Azure.IoT Build 0:6ae2f7bca550 13712 return result;
Azure.IoT Build 0:6ae2f7bca550 13713 }
Azure.IoT Build 0:6ae2f7bca550 13714
Azure.IoT Build 0:6ae2f7bca550 13715 bool is_modified_type_by_descriptor(AMQP_VALUE descriptor)
Azure.IoT Build 0:6ae2f7bca550 13716 {
Azure.IoT Build 0:6ae2f7bca550 13717 bool result;
Azure.IoT Build 0:6ae2f7bca550 13718
Azure.IoT Build 0:6ae2f7bca550 13719 uint64_t descriptor_ulong;
Azure.IoT Build 0:6ae2f7bca550 13720 if ((amqpvalue_get_ulong(descriptor, &descriptor_ulong) == 0) &&
Azure.IoT Build 0:6ae2f7bca550 13721 (descriptor_ulong == 39))
Azure.IoT Build 0:6ae2f7bca550 13722 {
Azure.IoT Build 0:6ae2f7bca550 13723 result = true;
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 result = false;
Azure.IoT Build 0:6ae2f7bca550 13728 }
Azure.IoT Build 0:6ae2f7bca550 13729
Azure.IoT Build 0:6ae2f7bca550 13730 return result;
Azure.IoT Build 0:6ae2f7bca550 13731 }
Azure.IoT Build 0:6ae2f7bca550 13732
Azure.IoT Build 0:6ae2f7bca550 13733
Azure.IoT Build 0:6ae2f7bca550 13734 int amqpvalue_get_modified(AMQP_VALUE value, MODIFIED_HANDLE* modified_handle)
Azure.IoT Build 0:6ae2f7bca550 13735 {
Azure.IoT Build 0:6ae2f7bca550 13736 int result;
Azure.IoT Build 0:6ae2f7bca550 13737 MODIFIED_INSTANCE* modified_instance = (MODIFIED_INSTANCE*)modified_create_internal();
Azure.IoT Build 0:6ae2f7bca550 13738 *modified_handle = modified_instance;
Azure.IoT Build 0:6ae2f7bca550 13739 if (*modified_handle == NULL)
Azure.IoT Build 0:6ae2f7bca550 13740 {
Azure.IoT Build 0:6ae2f7bca550 13741 result = __LINE__;
Azure.IoT Build 0:6ae2f7bca550 13742 }
Azure.IoT Build 0:6ae2f7bca550 13743 else
Azure.IoT Build 0:6ae2f7bca550 13744 {
Azure.IoT Build 0:6ae2f7bca550 13745 AMQP_VALUE list_value = amqpvalue_get_inplace_described_value(value);
Azure.IoT Build 0:6ae2f7bca550 13746 if (list_value == NULL)
Azure.IoT Build 0:6ae2f7bca550 13747 {
Azure.IoT Build 0:6ae2f7bca550 13748 modified_destroy(*modified_handle);
Azure.IoT Build 0:6ae2f7bca550 13749 result = __LINE__;
Azure.IoT Build 0:6ae2f7bca550 13750 }
Azure.IoT Build 0:6ae2f7bca550 13751 else
Azure.IoT Build 0:6ae2f7bca550 13752 {
Azure.IoT Build 0:6ae2f7bca550 13753 do
Azure.IoT Build 0:6ae2f7bca550 13754 {
Azure.IoT Build 0:6ae2f7bca550 13755 AMQP_VALUE item_value;
Azure.IoT Build 0:6ae2f7bca550 13756 /* delivery-failed */
Azure.IoT Build 0:6ae2f7bca550 13757 item_value = amqpvalue_get_list_item(list_value, 0);
Azure.IoT Build 0:6ae2f7bca550 13758 if (item_value == NULL)
Azure.IoT Build 0:6ae2f7bca550 13759 {
Azure.IoT Build 0:6ae2f7bca550 13760 /* do nothing */
Azure.IoT Build 0:6ae2f7bca550 13761 }
Azure.IoT Build 0:6ae2f7bca550 13762 else
Azure.IoT Build 0:6ae2f7bca550 13763 {
Azure.IoT Build 0:6ae2f7bca550 13764 bool delivery_failed;
Azure.IoT Build 0:6ae2f7bca550 13765 if (amqpvalue_get_boolean(item_value, &delivery_failed) != 0)
Azure.IoT Build 0:6ae2f7bca550 13766 {
Azure.IoT Build 0:6ae2f7bca550 13767 if (amqpvalue_get_type(item_value) != AMQP_TYPE_NULL)
Azure.IoT Build 0:6ae2f7bca550 13768 {
Azure.IoT Build 0:6ae2f7bca550 13769 modified_destroy(*modified_handle);
Azure.IoT Build 0:6ae2f7bca550 13770 result = __LINE__;
Azure.IoT Build 0:6ae2f7bca550 13771 break;
Azure.IoT Build 0:6ae2f7bca550 13772 }
Azure.IoT Build 0:6ae2f7bca550 13773 }
Azure.IoT Build 0:6ae2f7bca550 13774
Azure.IoT Build 0:6ae2f7bca550 13775 amqpvalue_destroy(item_value);
Azure.IoT Build 0:6ae2f7bca550 13776 }
Azure.IoT Build 0:6ae2f7bca550 13777 /* undeliverable-here */
Azure.IoT Build 0:6ae2f7bca550 13778 item_value = amqpvalue_get_list_item(list_value, 1);
Azure.IoT Build 0:6ae2f7bca550 13779 if (item_value == NULL)
Azure.IoT Build 0:6ae2f7bca550 13780 {
Azure.IoT Build 0:6ae2f7bca550 13781 /* do nothing */
Azure.IoT Build 0:6ae2f7bca550 13782 }
Azure.IoT Build 0:6ae2f7bca550 13783 else
Azure.IoT Build 0:6ae2f7bca550 13784 {
Azure.IoT Build 0:6ae2f7bca550 13785 bool undeliverable_here;
Azure.IoT Build 0:6ae2f7bca550 13786 if (amqpvalue_get_boolean(item_value, &undeliverable_here) != 0)
Azure.IoT Build 0:6ae2f7bca550 13787 {
Azure.IoT Build 0:6ae2f7bca550 13788 if (amqpvalue_get_type(item_value) != AMQP_TYPE_NULL)
Azure.IoT Build 0:6ae2f7bca550 13789 {
Azure.IoT Build 0:6ae2f7bca550 13790 modified_destroy(*modified_handle);
Azure.IoT Build 0:6ae2f7bca550 13791 result = __LINE__;
Azure.IoT Build 0:6ae2f7bca550 13792 break;
Azure.IoT Build 0:6ae2f7bca550 13793 }
Azure.IoT Build 0:6ae2f7bca550 13794 }
Azure.IoT Build 0:6ae2f7bca550 13795
Azure.IoT Build 0:6ae2f7bca550 13796 amqpvalue_destroy(item_value);
Azure.IoT Build 0:6ae2f7bca550 13797 }
Azure.IoT Build 0:6ae2f7bca550 13798 /* message-annotations */
Azure.IoT Build 0:6ae2f7bca550 13799 item_value = amqpvalue_get_list_item(list_value, 2);
Azure.IoT Build 0:6ae2f7bca550 13800 if (item_value == NULL)
Azure.IoT Build 0:6ae2f7bca550 13801 {
Azure.IoT Build 0:6ae2f7bca550 13802 /* do nothing */
Azure.IoT Build 0:6ae2f7bca550 13803 }
Azure.IoT Build 0:6ae2f7bca550 13804 else
Azure.IoT Build 0:6ae2f7bca550 13805 {
Azure.IoT Build 0:6ae2f7bca550 13806 fields message_annotations;
Azure.IoT Build 0:6ae2f7bca550 13807 if (amqpvalue_get_fields(item_value, &message_annotations) != 0)
Azure.IoT Build 0:6ae2f7bca550 13808 {
Azure.IoT Build 0:6ae2f7bca550 13809 if (amqpvalue_get_type(item_value) != AMQP_TYPE_NULL)
Azure.IoT Build 0:6ae2f7bca550 13810 {
Azure.IoT Build 0:6ae2f7bca550 13811 modified_destroy(*modified_handle);
Azure.IoT Build 0:6ae2f7bca550 13812 result = __LINE__;
Azure.IoT Build 0:6ae2f7bca550 13813 break;
Azure.IoT Build 0:6ae2f7bca550 13814 }
Azure.IoT Build 0:6ae2f7bca550 13815 }
Azure.IoT Build 0:6ae2f7bca550 13816
Azure.IoT Build 0:6ae2f7bca550 13817 amqpvalue_destroy(item_value);
Azure.IoT Build 0:6ae2f7bca550 13818 }
Azure.IoT Build 0:6ae2f7bca550 13819
Azure.IoT Build 0:6ae2f7bca550 13820 modified_instance->composite_value = amqpvalue_clone(value);
Azure.IoT Build 0:6ae2f7bca550 13821
Azure.IoT Build 0:6ae2f7bca550 13822 result = 0;
Azure.IoT Build 0:6ae2f7bca550 13823 } while (0);
Azure.IoT Build 0:6ae2f7bca550 13824 }
Azure.IoT Build 0:6ae2f7bca550 13825 }
Azure.IoT Build 0:6ae2f7bca550 13826
Azure.IoT Build 0:6ae2f7bca550 13827 return result;
Azure.IoT Build 0:6ae2f7bca550 13828 }
Azure.IoT Build 0:6ae2f7bca550 13829
Azure.IoT Build 0:6ae2f7bca550 13830 int modified_get_delivery_failed(MODIFIED_HANDLE modified, bool* delivery_failed_value)
Azure.IoT Build 0:6ae2f7bca550 13831 {
Azure.IoT Build 0:6ae2f7bca550 13832 int result;
Azure.IoT Build 0:6ae2f7bca550 13833
Azure.IoT Build 0:6ae2f7bca550 13834 if (modified == NULL)
Azure.IoT Build 0:6ae2f7bca550 13835 {
Azure.IoT Build 0:6ae2f7bca550 13836 result = __LINE__;
Azure.IoT Build 0:6ae2f7bca550 13837 }
Azure.IoT Build 0:6ae2f7bca550 13838 else
Azure.IoT Build 0:6ae2f7bca550 13839 {
Azure.IoT Build 0:6ae2f7bca550 13840 MODIFIED_INSTANCE* modified_instance = (MODIFIED_INSTANCE*)modified;
Azure.IoT Build 0:6ae2f7bca550 13841 AMQP_VALUE item_value = amqpvalue_get_composite_item_in_place(modified_instance->composite_value, 0);
Azure.IoT Build 0:6ae2f7bca550 13842 if (item_value == NULL)
Azure.IoT Build 0:6ae2f7bca550 13843 {
Azure.IoT Build 0:6ae2f7bca550 13844 result = __LINE__;
Azure.IoT Build 0:6ae2f7bca550 13845 }
Azure.IoT Build 0:6ae2f7bca550 13846 else
Azure.IoT Build 0:6ae2f7bca550 13847 {
Azure.IoT Build 0:6ae2f7bca550 13848 if (amqpvalue_get_boolean(item_value, delivery_failed_value) != 0)
Azure.IoT Build 0:6ae2f7bca550 13849 {
Azure.IoT Build 0:6ae2f7bca550 13850 result = __LINE__;
Azure.IoT Build 0:6ae2f7bca550 13851 }
Azure.IoT Build 0:6ae2f7bca550 13852 else
Azure.IoT Build 0:6ae2f7bca550 13853 {
Azure.IoT Build 0:6ae2f7bca550 13854 result = 0;
Azure.IoT Build 0:6ae2f7bca550 13855 }
Azure.IoT Build 0:6ae2f7bca550 13856 }
Azure.IoT Build 0:6ae2f7bca550 13857 }
Azure.IoT Build 0:6ae2f7bca550 13858
Azure.IoT Build 0:6ae2f7bca550 13859 return result;
Azure.IoT Build 0:6ae2f7bca550 13860 }
Azure.IoT Build 0:6ae2f7bca550 13861
Azure.IoT Build 0:6ae2f7bca550 13862 int modified_set_delivery_failed(MODIFIED_HANDLE modified, bool delivery_failed_value)
Azure.IoT Build 0:6ae2f7bca550 13863 {
Azure.IoT Build 0:6ae2f7bca550 13864 int result;
Azure.IoT Build 0:6ae2f7bca550 13865
Azure.IoT Build 0:6ae2f7bca550 13866 if (modified == NULL)
Azure.IoT Build 0:6ae2f7bca550 13867 {
Azure.IoT Build 0:6ae2f7bca550 13868 result = __LINE__;
Azure.IoT Build 0:6ae2f7bca550 13869 }
Azure.IoT Build 0:6ae2f7bca550 13870 else
Azure.IoT Build 0:6ae2f7bca550 13871 {
Azure.IoT Build 0:6ae2f7bca550 13872 MODIFIED_INSTANCE* modified_instance = (MODIFIED_INSTANCE*)modified;
Azure.IoT Build 0:6ae2f7bca550 13873 AMQP_VALUE delivery_failed_amqp_value = amqpvalue_create_boolean(delivery_failed_value);
Azure.IoT Build 0:6ae2f7bca550 13874 if (delivery_failed_amqp_value == NULL)
Azure.IoT Build 0:6ae2f7bca550 13875 {
Azure.IoT Build 0:6ae2f7bca550 13876 result = __LINE__;
Azure.IoT Build 0:6ae2f7bca550 13877 }
Azure.IoT Build 0:6ae2f7bca550 13878 else
Azure.IoT Build 0:6ae2f7bca550 13879 {
Azure.IoT Build 0:6ae2f7bca550 13880 if (amqpvalue_set_composite_item(modified_instance->composite_value, 0, delivery_failed_amqp_value) != 0)
Azure.IoT Build 0:6ae2f7bca550 13881 {
Azure.IoT Build 0:6ae2f7bca550 13882 result = __LINE__;
Azure.IoT Build 0:6ae2f7bca550 13883 }
Azure.IoT Build 0:6ae2f7bca550 13884 else
Azure.IoT Build 0:6ae2f7bca550 13885 {
Azure.IoT Build 0:6ae2f7bca550 13886 result = 0;
Azure.IoT Build 0:6ae2f7bca550 13887 }
Azure.IoT Build 0:6ae2f7bca550 13888
Azure.IoT Build 0:6ae2f7bca550 13889 amqpvalue_destroy(delivery_failed_amqp_value);
Azure.IoT Build 0:6ae2f7bca550 13890 }
Azure.IoT Build 0:6ae2f7bca550 13891 }
Azure.IoT Build 0:6ae2f7bca550 13892
Azure.IoT Build 0:6ae2f7bca550 13893 return result;
Azure.IoT Build 0:6ae2f7bca550 13894 }
Azure.IoT Build 0:6ae2f7bca550 13895
Azure.IoT Build 0:6ae2f7bca550 13896 int modified_get_undeliverable_here(MODIFIED_HANDLE modified, bool* undeliverable_here_value)
Azure.IoT Build 0:6ae2f7bca550 13897 {
Azure.IoT Build 0:6ae2f7bca550 13898 int result;
Azure.IoT Build 0:6ae2f7bca550 13899
Azure.IoT Build 0:6ae2f7bca550 13900 if (modified == NULL)
Azure.IoT Build 0:6ae2f7bca550 13901 {
Azure.IoT Build 0:6ae2f7bca550 13902 result = __LINE__;
Azure.IoT Build 0:6ae2f7bca550 13903 }
Azure.IoT Build 0:6ae2f7bca550 13904 else
Azure.IoT Build 0:6ae2f7bca550 13905 {
Azure.IoT Build 0:6ae2f7bca550 13906 MODIFIED_INSTANCE* modified_instance = (MODIFIED_INSTANCE*)modified;
Azure.IoT Build 0:6ae2f7bca550 13907 AMQP_VALUE item_value = amqpvalue_get_composite_item_in_place(modified_instance->composite_value, 1);
Azure.IoT Build 0:6ae2f7bca550 13908 if (item_value == NULL)
Azure.IoT Build 0:6ae2f7bca550 13909 {
Azure.IoT Build 0:6ae2f7bca550 13910 result = __LINE__;
Azure.IoT Build 0:6ae2f7bca550 13911 }
Azure.IoT Build 0:6ae2f7bca550 13912 else
Azure.IoT Build 0:6ae2f7bca550 13913 {
Azure.IoT Build 0:6ae2f7bca550 13914 if (amqpvalue_get_boolean(item_value, undeliverable_here_value) != 0)
Azure.IoT Build 0:6ae2f7bca550 13915 {
Azure.IoT Build 0:6ae2f7bca550 13916 result = __LINE__;
Azure.IoT Build 0:6ae2f7bca550 13917 }
Azure.IoT Build 0:6ae2f7bca550 13918 else
Azure.IoT Build 0:6ae2f7bca550 13919 {
Azure.IoT Build 0:6ae2f7bca550 13920 result = 0;
Azure.IoT Build 0:6ae2f7bca550 13921 }
Azure.IoT Build 0:6ae2f7bca550 13922 }
Azure.IoT Build 0:6ae2f7bca550 13923 }
Azure.IoT Build 0:6ae2f7bca550 13924
Azure.IoT Build 0:6ae2f7bca550 13925 return result;
Azure.IoT Build 0:6ae2f7bca550 13926 }
Azure.IoT Build 0:6ae2f7bca550 13927
Azure.IoT Build 0:6ae2f7bca550 13928 int modified_set_undeliverable_here(MODIFIED_HANDLE modified, bool undeliverable_here_value)
Azure.IoT Build 0:6ae2f7bca550 13929 {
Azure.IoT Build 0:6ae2f7bca550 13930 int result;
Azure.IoT Build 0:6ae2f7bca550 13931
Azure.IoT Build 0:6ae2f7bca550 13932 if (modified == NULL)
Azure.IoT Build 0:6ae2f7bca550 13933 {
Azure.IoT Build 0:6ae2f7bca550 13934 result = __LINE__;
Azure.IoT Build 0:6ae2f7bca550 13935 }
Azure.IoT Build 0:6ae2f7bca550 13936 else
Azure.IoT Build 0:6ae2f7bca550 13937 {
Azure.IoT Build 0:6ae2f7bca550 13938 MODIFIED_INSTANCE* modified_instance = (MODIFIED_INSTANCE*)modified;
Azure.IoT Build 0:6ae2f7bca550 13939 AMQP_VALUE undeliverable_here_amqp_value = amqpvalue_create_boolean(undeliverable_here_value);
Azure.IoT Build 0:6ae2f7bca550 13940 if (undeliverable_here_amqp_value == NULL)
Azure.IoT Build 0:6ae2f7bca550 13941 {
Azure.IoT Build 0:6ae2f7bca550 13942 result = __LINE__;
Azure.IoT Build 0:6ae2f7bca550 13943 }
Azure.IoT Build 0:6ae2f7bca550 13944 else
Azure.IoT Build 0:6ae2f7bca550 13945 {
Azure.IoT Build 0:6ae2f7bca550 13946 if (amqpvalue_set_composite_item(modified_instance->composite_value, 1, undeliverable_here_amqp_value) != 0)
Azure.IoT Build 0:6ae2f7bca550 13947 {
Azure.IoT Build 0:6ae2f7bca550 13948 result = __LINE__;
Azure.IoT Build 0:6ae2f7bca550 13949 }
Azure.IoT Build 0:6ae2f7bca550 13950 else
Azure.IoT Build 0:6ae2f7bca550 13951 {
Azure.IoT Build 0:6ae2f7bca550 13952 result = 0;
Azure.IoT Build 0:6ae2f7bca550 13953 }
Azure.IoT Build 0:6ae2f7bca550 13954
Azure.IoT Build 0:6ae2f7bca550 13955 amqpvalue_destroy(undeliverable_here_amqp_value);
Azure.IoT Build 0:6ae2f7bca550 13956 }
Azure.IoT Build 0:6ae2f7bca550 13957 }
Azure.IoT Build 0:6ae2f7bca550 13958
Azure.IoT Build 0:6ae2f7bca550 13959 return result;
Azure.IoT Build 0:6ae2f7bca550 13960 }
Azure.IoT Build 0:6ae2f7bca550 13961
Azure.IoT Build 0:6ae2f7bca550 13962 int modified_get_message_annotations(MODIFIED_HANDLE modified, fields* message_annotations_value)
Azure.IoT Build 0:6ae2f7bca550 13963 {
Azure.IoT Build 0:6ae2f7bca550 13964 int result;
Azure.IoT Build 0:6ae2f7bca550 13965
Azure.IoT Build 0:6ae2f7bca550 13966 if (modified == NULL)
Azure.IoT Build 0:6ae2f7bca550 13967 {
Azure.IoT Build 0:6ae2f7bca550 13968 result = __LINE__;
Azure.IoT Build 0:6ae2f7bca550 13969 }
Azure.IoT Build 0:6ae2f7bca550 13970 else
Azure.IoT Build 0:6ae2f7bca550 13971 {
Azure.IoT Build 0:6ae2f7bca550 13972 MODIFIED_INSTANCE* modified_instance = (MODIFIED_INSTANCE*)modified;
Azure.IoT Build 0:6ae2f7bca550 13973 AMQP_VALUE item_value = amqpvalue_get_composite_item_in_place(modified_instance->composite_value, 2);
Azure.IoT Build 0:6ae2f7bca550 13974 if (item_value == NULL)
Azure.IoT Build 0:6ae2f7bca550 13975 {
Azure.IoT Build 0:6ae2f7bca550 13976 result = __LINE__;
Azure.IoT Build 0:6ae2f7bca550 13977 }
Azure.IoT Build 0:6ae2f7bca550 13978 else
Azure.IoT Build 0:6ae2f7bca550 13979 {
Azure.IoT Build 0:6ae2f7bca550 13980 if (amqpvalue_get_fields(item_value, message_annotations_value) != 0)
Azure.IoT Build 0:6ae2f7bca550 13981 {
Azure.IoT Build 0:6ae2f7bca550 13982 result = __LINE__;
Azure.IoT Build 0:6ae2f7bca550 13983 }
Azure.IoT Build 0:6ae2f7bca550 13984 else
Azure.IoT Build 0:6ae2f7bca550 13985 {
Azure.IoT Build 0:6ae2f7bca550 13986 result = 0;
Azure.IoT Build 0:6ae2f7bca550 13987 }
Azure.IoT Build 0:6ae2f7bca550 13988 }
Azure.IoT Build 0:6ae2f7bca550 13989 }
Azure.IoT Build 0:6ae2f7bca550 13990
Azure.IoT Build 0:6ae2f7bca550 13991 return result;
Azure.IoT Build 0:6ae2f7bca550 13992 }
Azure.IoT Build 0:6ae2f7bca550 13993
Azure.IoT Build 0:6ae2f7bca550 13994 int modified_set_message_annotations(MODIFIED_HANDLE modified, fields message_annotations_value)
Azure.IoT Build 0:6ae2f7bca550 13995 {
Azure.IoT Build 0:6ae2f7bca550 13996 int result;
Azure.IoT Build 0:6ae2f7bca550 13997
Azure.IoT Build 0:6ae2f7bca550 13998 if (modified == NULL)
Azure.IoT Build 0:6ae2f7bca550 13999 {
Azure.IoT Build 0:6ae2f7bca550 14000 result = __LINE__;
Azure.IoT Build 0:6ae2f7bca550 14001 }
Azure.IoT Build 0:6ae2f7bca550 14002 else
Azure.IoT Build 0:6ae2f7bca550 14003 {
Azure.IoT Build 0:6ae2f7bca550 14004 MODIFIED_INSTANCE* modified_instance = (MODIFIED_INSTANCE*)modified;
Azure.IoT Build 0:6ae2f7bca550 14005 AMQP_VALUE message_annotations_amqp_value = amqpvalue_create_fields(message_annotations_value);
Azure.IoT Build 0:6ae2f7bca550 14006 if (message_annotations_amqp_value == NULL)
Azure.IoT Build 0:6ae2f7bca550 14007 {
Azure.IoT Build 0:6ae2f7bca550 14008 result = __LINE__;
Azure.IoT Build 0:6ae2f7bca550 14009 }
Azure.IoT Build 0:6ae2f7bca550 14010 else
Azure.IoT Build 0:6ae2f7bca550 14011 {
Azure.IoT Build 0:6ae2f7bca550 14012 if (amqpvalue_set_composite_item(modified_instance->composite_value, 2, message_annotations_amqp_value) != 0)
Azure.IoT Build 0:6ae2f7bca550 14013 {
Azure.IoT Build 0:6ae2f7bca550 14014 result = __LINE__;
Azure.IoT Build 0:6ae2f7bca550 14015 }
Azure.IoT Build 0:6ae2f7bca550 14016 else
Azure.IoT Build 0:6ae2f7bca550 14017 {
Azure.IoT Build 0:6ae2f7bca550 14018 result = 0;
Azure.IoT Build 0:6ae2f7bca550 14019 }
Azure.IoT Build 0:6ae2f7bca550 14020
Azure.IoT Build 0:6ae2f7bca550 14021 amqpvalue_destroy(message_annotations_amqp_value);
Azure.IoT Build 0:6ae2f7bca550 14022 }
Azure.IoT Build 0:6ae2f7bca550 14023 }
Azure.IoT Build 0:6ae2f7bca550 14024
Azure.IoT Build 0:6ae2f7bca550 14025 return result;
Azure.IoT Build 0:6ae2f7bca550 14026 }
Azure.IoT Build 0:6ae2f7bca550 14027
Azure.IoT Build 0:6ae2f7bca550 14028