A small memory footprint AMQP implimentation
Dependents: iothub_client_sample_amqp remote_monitoring simplesample_amqp
azure_uamqp_c/message.h@47:365a93fdb5bb, 2018-10-04 (annotated)
- Committer:
- AzureIoTClient
- Date:
- Thu Oct 04 09:16:13 2018 -0700
- Revision:
- 47:365a93fdb5bb
- Parent:
- 46:01f7ca900e07
1.2.10
Who changed what in which revision?
User | Revision | Line number | New contents of line |
---|---|---|---|
Azure.IoT Build | 0:6ae2f7bca550 | 1 | // Copyright (c) Microsoft. All rights reserved. |
Azure.IoT Build | 0:6ae2f7bca550 | 2 | // Licensed under the MIT license. See LICENSE file in the project root for full license information. |
Azure.IoT Build | 0:6ae2f7bca550 | 3 | |
Azure.IoT Build | 0:6ae2f7bca550 | 4 | #ifndef MESSAGE_H |
Azure.IoT Build | 0:6ae2f7bca550 | 5 | #define MESSAGE_H |
Azure.IoT Build | 0:6ae2f7bca550 | 6 | |
Azure.IoT Build | 0:6ae2f7bca550 | 7 | #include "azure_uamqp_c/amqpvalue.h" |
AzureIoTClient | 40:f0ceafa8d570 | 8 | #include "azure_uamqp_c/amqp_definitions_annotations.h" |
AzureIoTClient | 40:f0ceafa8d570 | 9 | #include "azure_uamqp_c/amqp_definitions_message_annotations.h" |
AzureIoTClient | 40:f0ceafa8d570 | 10 | #include "azure_uamqp_c/amqp_definitions_sequence_no.h" |
AzureIoTClient | 40:f0ceafa8d570 | 11 | #include "azure_uamqp_c/amqp_definitions_properties.h" |
AzureIoTClient | 40:f0ceafa8d570 | 12 | #include "azure_uamqp_c/amqp_definitions_milliseconds.h" |
AzureIoTClient | 40:f0ceafa8d570 | 13 | #include "azure_uamqp_c/amqp_definitions_header.h" |
AzureIoTClient | 40:f0ceafa8d570 | 14 | #include "azure_uamqp_c/amqp_definitions_delivery_annotations.h" |
AzureIoTClient | 40:f0ceafa8d570 | 15 | |
Azure.IoT Build | 0:6ae2f7bca550 | 16 | |
Azure.IoT Build | 0:6ae2f7bca550 | 17 | #ifdef __cplusplus |
Azure.IoT Build | 0:6ae2f7bca550 | 18 | extern "C" { |
Azure.IoT Build | 0:6ae2f7bca550 | 19 | #include <cstddef> |
AzureIoTClient | 24:2c59c2d43ebf | 20 | #include <cstdint> |
Azure.IoT Build | 0:6ae2f7bca550 | 21 | #else |
Azure.IoT Build | 0:6ae2f7bca550 | 22 | #include <stddef.h> |
AzureIoTClient | 24:2c59c2d43ebf | 23 | #include <stdint.h> |
Azure.IoT Build | 0:6ae2f7bca550 | 24 | #endif /* __cplusplus */ |
Azure.IoT Build | 0:6ae2f7bca550 | 25 | |
AzureIoTClient | 10:19ce00951771 | 26 | #include "azure_c_shared_utility/umock_c_prod.h" |
AzureIoTClient | 10:19ce00951771 | 27 | |
AzureIoTClient | 28:add19eb7defa | 28 | #define MESSAGE_BODY_TYPE_VALUES \ |
AzureIoTClient | 28:add19eb7defa | 29 | MESSAGE_BODY_TYPE_NONE, \ |
AzureIoTClient | 28:add19eb7defa | 30 | MESSAGE_BODY_TYPE_DATA, \ |
AzureIoTClient | 28:add19eb7defa | 31 | MESSAGE_BODY_TYPE_SEQUENCE, \ |
AzureIoTClient | 28:add19eb7defa | 32 | MESSAGE_BODY_TYPE_VALUE |
Azure.IoT Build | 0:6ae2f7bca550 | 33 | |
AzureIoTClient | 28:add19eb7defa | 34 | DEFINE_ENUM(MESSAGE_BODY_TYPE, MESSAGE_BODY_TYPE_VALUES) |
AzureIoTClient | 46:01f7ca900e07 | 35 | |
AzureIoTClient | 28:add19eb7defa | 36 | typedef struct MESSAGE_INSTANCE_TAG* MESSAGE_HANDLE; |
AzureIoTClient | 28:add19eb7defa | 37 | typedef struct BINARY_DATA_TAG |
AzureIoTClient | 28:add19eb7defa | 38 | { |
AzureIoTClient | 28:add19eb7defa | 39 | const unsigned char* bytes; |
AzureIoTClient | 28:add19eb7defa | 40 | size_t length; |
AzureIoTClient | 28:add19eb7defa | 41 | } BINARY_DATA; |
Azure.IoT Build | 0:6ae2f7bca550 | 42 | |
AzureIoTClient | 28:add19eb7defa | 43 | MOCKABLE_FUNCTION(, MESSAGE_HANDLE, message_create); |
AzureIoTClient | 28:add19eb7defa | 44 | MOCKABLE_FUNCTION(, MESSAGE_HANDLE, message_clone, MESSAGE_HANDLE, source_message); |
AzureIoTClient | 28:add19eb7defa | 45 | MOCKABLE_FUNCTION(, void, message_destroy, MESSAGE_HANDLE, message); |
AzureIoTClient | 28:add19eb7defa | 46 | MOCKABLE_FUNCTION(, int, message_set_header, MESSAGE_HANDLE, message, HEADER_HANDLE, message_header); |
AzureIoTClient | 28:add19eb7defa | 47 | MOCKABLE_FUNCTION(, int, message_get_header, MESSAGE_HANDLE, message, HEADER_HANDLE*, message_header); |
AzureIoTClient | 28:add19eb7defa | 48 | MOCKABLE_FUNCTION(, int, message_set_delivery_annotations, MESSAGE_HANDLE, message, delivery_annotations, annotations); |
AzureIoTClient | 28:add19eb7defa | 49 | MOCKABLE_FUNCTION(, int, message_get_delivery_annotations, MESSAGE_HANDLE, message, delivery_annotations*, annotations); |
AzureIoTClient | 28:add19eb7defa | 50 | MOCKABLE_FUNCTION(, int, message_set_message_annotations, MESSAGE_HANDLE, message, message_annotations, annotations); |
AzureIoTClient | 28:add19eb7defa | 51 | MOCKABLE_FUNCTION(, int, message_get_message_annotations, MESSAGE_HANDLE, message, message_annotations*, annotations); |
AzureIoTClient | 28:add19eb7defa | 52 | MOCKABLE_FUNCTION(, int, message_set_properties, MESSAGE_HANDLE, message, PROPERTIES_HANDLE, properties); |
AzureIoTClient | 28:add19eb7defa | 53 | MOCKABLE_FUNCTION(, int, message_get_properties, MESSAGE_HANDLE, message, PROPERTIES_HANDLE*, properties); |
AzureIoTClient | 28:add19eb7defa | 54 | MOCKABLE_FUNCTION(, int, message_set_application_properties, MESSAGE_HANDLE, message, AMQP_VALUE, application_properties); |
AzureIoTClient | 28:add19eb7defa | 55 | MOCKABLE_FUNCTION(, int, message_get_application_properties, MESSAGE_HANDLE, message, AMQP_VALUE*, application_properties); |
AzureIoTClient | 28:add19eb7defa | 56 | MOCKABLE_FUNCTION(, int, message_set_footer, MESSAGE_HANDLE, message, annotations, footer); |
AzureIoTClient | 28:add19eb7defa | 57 | MOCKABLE_FUNCTION(, int, message_get_footer, MESSAGE_HANDLE, message, annotations*, footer); |
AzureIoTClient | 28:add19eb7defa | 58 | MOCKABLE_FUNCTION(, int, message_add_body_amqp_data, MESSAGE_HANDLE, message, BINARY_DATA, amqp_data); |
AzureIoTClient | 28:add19eb7defa | 59 | MOCKABLE_FUNCTION(, int, message_get_body_amqp_data_in_place, MESSAGE_HANDLE, message, size_t, index, BINARY_DATA*, amqp_data); |
AzureIoTClient | 28:add19eb7defa | 60 | MOCKABLE_FUNCTION(, int, message_get_body_amqp_data_count, MESSAGE_HANDLE, message, size_t*, count); |
AzureIoTClient | 28:add19eb7defa | 61 | MOCKABLE_FUNCTION(, int, message_set_body_amqp_value, MESSAGE_HANDLE, message, AMQP_VALUE, body_amqp_value); |
AzureIoTClient | 28:add19eb7defa | 62 | MOCKABLE_FUNCTION(, int, message_get_body_amqp_value_in_place, MESSAGE_HANDLE, message, AMQP_VALUE*, body_amqp_value); |
AzureIoTClient | 28:add19eb7defa | 63 | MOCKABLE_FUNCTION(, int, message_add_body_amqp_sequence, MESSAGE_HANDLE, message, AMQP_VALUE, sequence); |
AzureIoTClient | 28:add19eb7defa | 64 | MOCKABLE_FUNCTION(, int, message_get_body_amqp_sequence_in_place, MESSAGE_HANDLE, message, size_t, index, AMQP_VALUE*, sequence); |
AzureIoTClient | 28:add19eb7defa | 65 | MOCKABLE_FUNCTION(, int, message_get_body_amqp_sequence_count, MESSAGE_HANDLE, message, size_t*, count); |
AzureIoTClient | 28:add19eb7defa | 66 | MOCKABLE_FUNCTION(, int, message_get_body_type, MESSAGE_HANDLE, message, MESSAGE_BODY_TYPE*, body_type); |
AzureIoTClient | 28:add19eb7defa | 67 | MOCKABLE_FUNCTION(, int, message_set_message_format, MESSAGE_HANDLE, message, uint32_t, message_format); |
AzureIoTClient | 10:19ce00951771 | 68 | MOCKABLE_FUNCTION(, int, message_get_message_format, MESSAGE_HANDLE, message, uint32_t*, message_format); |
Azure.IoT Build | 0:6ae2f7bca550 | 69 | |
Azure.IoT Build | 0:6ae2f7bca550 | 70 | #ifdef __cplusplus |
Azure.IoT Build | 0:6ae2f7bca550 | 71 | } |
Azure.IoT Build | 0:6ae2f7bca550 | 72 | #endif /* __cplusplus */ |
Azure.IoT Build | 0:6ae2f7bca550 | 73 | |
Azure.IoT Build | 0:6ae2f7bca550 | 74 | #endif /* MESSAGE_H */ |