/** * Copyright Amazon.com, Inc. or its affiliates. All Rights Reserved. * SPDX-License-Identifier: Apache-2.0. */ #ifndef AWS_JNI_MQTT5_UTILS_H #define AWS_JNI_MQTT5_UTILS_H #include struct aws_mqtt5_user_property; struct aws_mqtt5_packet_connack_view; struct aws_mqtt5_packet_disconnect_view; struct aws_mqtt5_negotiated_settings; struct aws_mqtt5_packet_publish_view; struct aws_mqtt5_packet_puback_view; int s_set_jni_uint32_t_field_in_packet( JNIEnv *env, const uint32_t *native_integer, jobject packet, jfieldID field_id, char *field_name, bool optional); int s_set_jni_uint16_t_field_in_packet( JNIEnv *env, const uint16_t *native_integer, jobject packet, jfieldID field_id, char *field_name, bool optional); int s_set_jni_bool_field_in_packet( JNIEnv *env, const bool *native_boolean, jobject packet, jfieldID field_id, char *field_name, bool optional); int s_set_jni_string_field_in_packet( JNIEnv *env, const struct aws_byte_cursor *native_cursor, jobject packet, jfieldID field_id, char *field_name, bool optional); int s_set_jni_byte_array_field_in_packet( JNIEnv *env, const struct aws_byte_cursor *native_cursor, jobject packet, jfieldID field_id, char *field_name, bool optional); int s_set_user_properties_field( JNIEnv *env, const size_t user_property_count, const struct aws_mqtt5_user_property *packet_properties, jobject packet, jfieldID user_property_field_id); int s_set_int_enum_in_packet( JNIEnv *env, const int *int_enum, jobject packet, jmethodID set_enum_field_id, bool optional); jobject s_aws_mqtt5_client_create_jni_connack_packet_from_native( JNIEnv *env, const struct aws_mqtt5_packet_connack_view *native_connack_data); jobject s_aws_mqtt5_client_create_jni_disconnect_packet_from_native( JNIEnv *env, const struct aws_mqtt5_packet_disconnect_view *native_disconnect_data); jobject s_aws_mqtt5_client_create_jni_negotiated_settings_from_native( JNIEnv *env, const struct aws_mqtt5_negotiated_settings *native_negotiated_settings_data); jobject s_aws_mqtt5_client_create_jni_publish_packet_from_native( JNIEnv *env, const struct aws_mqtt5_packet_publish_view *publish); jobject s_aws_mqtt5_client_create_jni_puback_packet_from_native( JNIEnv *env, struct aws_mqtt5_packet_puback_view *puback_packet); #endif /* AWS_JNI_MQTT5_UTILS_H */