Lines Matching full:connection

13 #include <aws/http/connection.h>
40 struct mqtt_jni_connection *connection; member
66 struct mqtt_jni_connection *connection; member
72 static void s_mqtt_connection_destroy(JNIEnv *env, struct mqtt_jni_connection *connection);
74 static void s_mqtt_jni_connection_acquire(struct mqtt_jni_connection *connection) { in s_mqtt_jni_connection_acquire() argument
75 size_t old_value = aws_atomic_fetch_add(&connection->ref_count, 1); in s_mqtt_jni_connection_acquire()
80 static void s_on_shutdown_disconnect_complete(struct aws_mqtt_client_connection *connection, void *…
82 static void s_mqtt_jni_connection_release(struct mqtt_jni_connection *connection) { in s_mqtt_jni_connection_release() argument
83 size_t old_value = aws_atomic_fetch_sub(&connection->ref_count, 1); in s_mqtt_jni_connection_release()
89 static void s_mqtt_jni_connection_destroy(struct mqtt_jni_connection *connection) { in s_mqtt_jni_connection_destroy() argument
91 * connection.*/ in s_mqtt_jni_connection_destroy()
93connection->client_connection, s_on_shutdown_disconnect_complete, connection) != AWS_OP_SUCCESS) { in s_mqtt_jni_connection_destroy()
97 … * time. Log it (in case it was unexpected) and then shutdown the underlying connection manually. in s_mqtt_jni_connection_destroy()
99 … AWS_LOGF_DEBUG(AWS_LS_MQTT_CLIENT, "Client disconnect failed. Release the client connection."); in s_mqtt_jni_connection_destroy()
100 s_on_shutdown_disconnect_complete(connection->client_connection, NULL); in s_mqtt_jni_connection_destroy()
105 struct mqtt_jni_connection *connection, in s_mqtt_jni_async_callback_new() argument
116 callback->connection = connection; in s_mqtt_jni_async_callback_new()
124 AWS_FATAL_ASSERT(callback && callback->connection); in s_mqtt_jni_async_callback_destroy()
172 struct mqtt_jni_connection *connection = connect_callback->connection; in s_on_connection_complete() local
175 JavaVM *jvm = connection->jvm; in s_on_connection_complete()
182 jobject mqtt_connection = (*env)->NewLocalRef(env, connection->java_mqtt_connection); in s_on_connection_complete()
190 aws_jni_release_thread_env(connection->jvm, env); in s_on_connection_complete()
201 s_mqtt_jni_connection_release(connection); in s_on_connection_complete()
205 struct mqtt_jni_connection *connection, in s_on_connection_interrupted_internal() argument
212 jobject mqtt_connection = (*env)->NewLocalRef(env, connection->java_mqtt_connection); in s_on_connection_interrupted_internal()
229 struct mqtt_jni_connection *connection = user_data; in s_on_connection_interrupted() local
232 JNIEnv *env = aws_jni_acquire_thread_env(connection->jvm); in s_on_connection_interrupted()
240 aws_jni_release_thread_env(connection->jvm, env); in s_on_connection_interrupted()
252 struct mqtt_jni_connection *connection = user_data; in s_on_connection_success() local
255 JNIEnv *env = aws_jni_acquire_thread_env(connection->jvm); in s_on_connection_success()
260 jobject mqtt_connection = (*env)->NewLocalRef(env, connection->java_mqtt_connection); in s_on_connection_success()
269 aws_jni_release_thread_env(connection->jvm, env); in s_on_connection_success()
279 struct mqtt_jni_connection *connection = user_data; in s_on_connection_failure() local
282 JNIEnv *env = aws_jni_acquire_thread_env(connection->jvm); in s_on_connection_failure()
287 jobject mqtt_connection = (*env)->NewLocalRef(env, connection->java_mqtt_connection); in s_on_connection_failure()
295 aws_jni_release_thread_env(connection->jvm, env); in s_on_connection_failure()
307 struct mqtt_jni_connection *connection = user_data; in s_on_connection_resumed() local
310 JNIEnv *env = aws_jni_acquire_thread_env(connection->jvm); in s_on_connection_resumed()
316 jobject mqtt_connection = (*env)->NewLocalRef(env, connection->java_mqtt_connection); in s_on_connection_resumed()
326 aws_jni_release_thread_env(connection->jvm, env); in s_on_connection_resumed()
334 struct mqtt_jni_connection *jni_connection = connect_callback->connection; in s_on_connection_disconnected()
343 …s_on_connection_interrupted_internal(connect_callback->connection, 0, connect_callback->async_call… in s_on_connection_disconnected()
363 struct mqtt_jni_connection *connection = user_data; in s_on_connection_closed() local
366 JNIEnv *env = aws_jni_acquire_thread_env(connection->jvm); in s_on_connection_closed()
373 if (!(*env)->IsSameObject(env, connection->java_mqtt_connection, NULL)) { in s_on_connection_closed()
374 jobject mqtt_connection = (*env)->NewLocalRef(env, connection->java_mqtt_connection); in s_on_connection_closed()
381 aws_jni_release_thread_env(connection->jvm, env); in s_on_connection_closed()
419 …struct mqtt_jni_connection *connection = aws_mem_calloc(allocator, 1, sizeof(struct mqtt_jni_conne… in s_mqtt_connection_new() local
420 if (!connection) { in s_mqtt_connection_new()
422 env, "MqttClientConnection.mqtt_connect: Out of memory allocating JNI connection"); in s_mqtt_connection_new()
426 aws_atomic_store_int(&connection->ref_count, 1); in s_mqtt_connection_new()
427 connection->java_mqtt_connection = (*env)->NewWeakGlobalRef(env, java_mqtt_connection); in s_mqtt_connection_new()
428 jint jvmresult = (*env)->GetJavaVM(env, &connection->jvm); in s_mqtt_connection_new()
432 connection->client = client3; in s_mqtt_connection_new()
433 connection->client_connection = aws_mqtt_client_connection_new(client3); in s_mqtt_connection_new()
435connection->client_connection = aws_mqtt_client_connection_new_from_mqtt5_client(client5_jni->clie… in s_mqtt_connection_new()
438 if (!connection->client_connection) { in s_mqtt_connection_new()
442 "connection"); in s_mqtt_connection_new()
447 connection->client_connection, s_on_connection_terminated, connection)) { in s_mqtt_connection_new()
455 return connection; in s_mqtt_connection_new()
459 s_mqtt_jni_connection_release(connection); in s_mqtt_connection_new()
464 static void s_mqtt_connection_destroy(JNIEnv *env, struct mqtt_jni_connection *connection) { in s_mqtt_connection_destroy() argument
465 if (connection == NULL) { in s_mqtt_connection_destroy()
469 if (connection->on_message) { in s_mqtt_connection_destroy()
470 s_mqtt_jni_async_callback_destroy(connection->on_message, env); in s_mqtt_connection_destroy()
473 if (connection->java_mqtt_connection) { in s_mqtt_connection_destroy()
474 (*env)->DeleteWeakGlobalRef(env, connection->java_mqtt_connection); in s_mqtt_connection_destroy()
477 aws_tls_connection_options_clean_up(&connection->tls_options); in s_mqtt_connection_destroy()
480 aws_mem_release(allocator, connection); in s_mqtt_connection_destroy()
491 struct mqtt_jni_connection *connection = NULL; in Java_software_amazon_awssdk_crt_mqtt_MqttClientConnection_mqttClientConnectionNewFrom311Client() local
498 connection = s_mqtt_connection_new(env, client3, NULL, jni_mqtt_connection); in Java_software_amazon_awssdk_crt_mqtt_MqttClientConnection_mqttClientConnectionNewFrom311Client()
499 if (!connection) { in Java_software_amazon_awssdk_crt_mqtt_MqttClientConnection_mqttClientConnectionNewFrom311Client()
504connection->client_connection, s_on_connection_success, connection, s_on_connection_failure, conne… in Java_software_amazon_awssdk_crt_mqtt_MqttClientConnection_mqttClientConnectionNewFrom311Client()
506connection->client_connection, s_on_connection_interrupted, connection, s_on_connection_resumed, c… in Java_software_amazon_awssdk_crt_mqtt_MqttClientConnection_mqttClientConnectionNewFrom311Client()
508 connection->client_connection, s_on_connection_closed, connection); in Java_software_amazon_awssdk_crt_mqtt_MqttClientConnection_mqttClientConnectionNewFrom311Client()
510 return (jlong)connection; in Java_software_amazon_awssdk_crt_mqtt_MqttClientConnection_mqttClientConnectionNewFrom311Client()
521 struct mqtt_jni_connection *connection = NULL; in Java_software_amazon_awssdk_crt_mqtt_MqttClientConnection_mqttClientConnectionNewFrom5Client() local
528 connection = s_mqtt_connection_new(env, NULL, client5_jni, jni_mqtt_connection); in Java_software_amazon_awssdk_crt_mqtt_MqttClientConnection_mqttClientConnectionNewFrom5Client()
529 if (!connection) { in Java_software_amazon_awssdk_crt_mqtt_MqttClientConnection_mqttClientConnectionNewFrom5Client()
534connection->client_connection, s_on_connection_success, connection, s_on_connection_failure, conne… in Java_software_amazon_awssdk_crt_mqtt_MqttClientConnection_mqttClientConnectionNewFrom5Client()
536connection->client_connection, s_on_connection_interrupted, connection, s_on_connection_resumed, c… in Java_software_amazon_awssdk_crt_mqtt_MqttClientConnection_mqttClientConnectionNewFrom5Client()
538 connection->client_connection, s_on_connection_closed, connection); in Java_software_amazon_awssdk_crt_mqtt_MqttClientConnection_mqttClientConnectionNewFrom5Client()
540 return (jlong)connection; in Java_software_amazon_awssdk_crt_mqtt_MqttClientConnection_mqttClientConnectionNewFrom5Client()
543 /* The disconnect callback called on shutdown. We will release the underlying connection here, whic…
546 static void s_on_shutdown_disconnect_complete(struct aws_mqtt_client_connection *connection, void *… in s_on_shutdown_disconnect_complete() argument
551 /* Release the underlying mqtt connection */ in s_on_shutdown_disconnect_complete()
552 aws_mqtt_client_connection_release(connection); in s_on_shutdown_disconnect_complete()
566 struct mqtt_jni_connection *connection = (struct mqtt_jni_connection *)jni_connection; in Java_software_amazon_awssdk_crt_mqtt_MqttClientConnection_mqttClientConnectionDestroy() local
567 s_mqtt_jni_connection_destroy(connection); in Java_software_amazon_awssdk_crt_mqtt_MqttClientConnection_mqttClientConnectionDestroy()
590 struct mqtt_jni_connection *connection = (struct mqtt_jni_connection *)jni_connection; in Java_software_amazon_awssdk_crt_mqtt_MqttClientConnection_mqttClientConnectionConnect() local
591 if (!connection) { in Java_software_amazon_awssdk_crt_mqtt_MqttClientConnection_mqttClientConnectionConnect()
592 …aws_jni_throw_runtime_exception(env, "MqttClientConnection.mqtt_connect: Connection is invalid/nul… in Java_software_amazon_awssdk_crt_mqtt_MqttClientConnection_mqttClientConnectionConnect()
607 …struct mqtt_jni_async_callback *connect_callback = s_mqtt_jni_async_callback_new(connection, NULL,… in Java_software_amazon_awssdk_crt_mqtt_MqttClientConnection_mqttClientConnectionConnect()
613 s_mqtt_jni_connection_acquire(connection); in Java_software_amazon_awssdk_crt_mqtt_MqttClientConnection_mqttClientConnectionConnect()
623 memcpy(&connection->socket_options, socket_options, sizeof(struct aws_socket_options)); in Java_software_amazon_awssdk_crt_mqtt_MqttClientConnection_mqttClientConnectionConnect()
629 tls_options = &connection->tls_options; in Java_software_amazon_awssdk_crt_mqtt_MqttClientConnection_mqttClientConnectionConnect()
641 connect_options.socket_options = &connection->socket_options; in Java_software_amazon_awssdk_crt_mqtt_MqttClientConnection_mqttClientConnectionConnect()
651 … int result = aws_mqtt_client_connection_connect(connection->client_connection, &connect_options); in Java_software_amazon_awssdk_crt_mqtt_MqttClientConnection_mqttClientConnectionConnect()
653 s_mqtt_jni_connection_release(connection); in Java_software_amazon_awssdk_crt_mqtt_MqttClientConnection_mqttClientConnectionConnect()
676 struct mqtt_jni_connection *connection = (struct mqtt_jni_connection *)jni_connection; in Java_software_amazon_awssdk_crt_mqtt_MqttClientConnection_mqttClientConnectionDisconnect() local
677 if (!connection) { in Java_software_amazon_awssdk_crt_mqtt_MqttClientConnection_mqttClientConnectionDisconnect()
678 … aws_jni_throw_runtime_exception(env, "MqttClientConnection.mqtt_disconnect: Invalid connection"); in Java_software_amazon_awssdk_crt_mqtt_MqttClientConnection_mqttClientConnectionDisconnect()
682 …struct mqtt_jni_async_callback *disconnect_callback = s_mqtt_jni_async_callback_new(connection, jn… in Java_software_amazon_awssdk_crt_mqtt_MqttClientConnection_mqttClientConnectionDisconnect()
689connection->client_connection, s_on_connection_disconnected, disconnect_callback) != AWS_OP_SUCCES… in Java_software_amazon_awssdk_crt_mqtt_MqttClientConnection_mqttClientConnectionDisconnect()
692 …* Disconnect invoked on a disconnected connection can happen under normal circumstances. Invoke t… in Java_software_amazon_awssdk_crt_mqtt_MqttClientConnection_mqttClientConnectionDisconnect()
700 s_on_connection_disconnected(connection->client_connection, disconnect_callback); in Java_software_amazon_awssdk_crt_mqtt_MqttClientConnection_mqttClientConnectionDisconnect()
710 AWS_FATAL_ASSERT(callback->connection); in s_deliver_ack_success()
720 AWS_FATAL_ASSERT(callback->connection); in s_deliver_ack_failure()
732 struct aws_mqtt_client_connection *connection, in s_on_op_complete() argument
736 AWS_FATAL_ASSERT(connection); in s_on_op_complete()
745 JavaVM *jvm = callback->connection->jvm; in s_on_op_complete()
768 struct aws_mqtt_client_connection *connection, in s_on_ack() argument
783 s_on_op_complete(connection, packet_id, error_code, user_data); in s_on_ack()
790 JavaVM *jvm = handler->connection->jvm; in s_cleanup_handler()
803 struct aws_mqtt_client_connection *connection, in s_on_subscription_delivered() argument
811 AWS_FATAL_ASSERT(connection); in s_on_subscription_delivered()
822 JNIEnv *env = aws_jni_acquire_thread_env(callback->connection->jvm); in s_on_subscription_delivered()
841 aws_jni_release_thread_env(callback->connection->jvm, env); in s_on_subscription_delivered()
857 struct mqtt_jni_connection *connection = (struct mqtt_jni_connection *)jni_connection; in Java_software_amazon_awssdk_crt_mqtt_MqttClientConnection_mqttClientConnectionSubscribe() local
858 if (!connection) { in Java_software_amazon_awssdk_crt_mqtt_MqttClientConnection_mqttClientConnectionSubscribe()
859 … aws_jni_throw_runtime_exception(env, "MqttClientConnection.mqtt_subscribe: Invalid connection"); in Java_software_amazon_awssdk_crt_mqtt_MqttClientConnection_mqttClientConnectionSubscribe()
863 …struct mqtt_jni_async_callback *handler = s_mqtt_jni_async_callback_new(connection, jni_handler, e… in Java_software_amazon_awssdk_crt_mqtt_MqttClientConnection_mqttClientConnectionSubscribe()
872 sub_ack = s_mqtt_jni_async_callback_new(connection, jni_ack, env); in Java_software_amazon_awssdk_crt_mqtt_MqttClientConnection_mqttClientConnectionSubscribe()
883 connection->client_connection, in Java_software_amazon_awssdk_crt_mqtt_MqttClientConnection_mqttClientConnectionSubscribe()
921 struct mqtt_jni_connection *connection = (struct mqtt_jni_connection *)jni_connection; in Java_software_amazon_awssdk_crt_mqtt_MqttClientConnection_mqttClientConnectionOnMessage() local
922 if (!connection) { in Java_software_amazon_awssdk_crt_mqtt_MqttClientConnection_mqttClientConnectionOnMessage()
923 …w_runtime_exception(env, "MqttClientConnection.mqttClientConnectionOnMessage: Invalid connection"); in Java_software_amazon_awssdk_crt_mqtt_MqttClientConnection_mqttClientConnectionOnMessage()
932 …struct mqtt_jni_async_callback *handler = s_mqtt_jni_async_callback_new(connection, jni_handler, e… in Java_software_amazon_awssdk_crt_mqtt_MqttClientConnection_mqttClientConnectionOnMessage()
940 connection->client_connection, s_on_subscription_delivered, handler)) { in Java_software_amazon_awssdk_crt_mqtt_MqttClientConnection_mqttClientConnectionOnMessage()
946 if (connection->on_message) { in Java_software_amazon_awssdk_crt_mqtt_MqttClientConnection_mqttClientConnectionOnMessage()
947 s_mqtt_jni_async_callback_destroy(connection->on_message, env); in Java_software_amazon_awssdk_crt_mqtt_MqttClientConnection_mqttClientConnectionOnMessage()
950 connection->on_message = handler; in Java_software_amazon_awssdk_crt_mqtt_MqttClientConnection_mqttClientConnectionOnMessage()
973 struct mqtt_jni_connection *connection = (struct mqtt_jni_connection *)jni_connection; in Java_software_amazon_awssdk_crt_mqtt_MqttClientConnection_mqttClientConnectionUnsubscribe() local
974 if (!connection) { in Java_software_amazon_awssdk_crt_mqtt_MqttClientConnection_mqttClientConnectionUnsubscribe()
975 … aws_jni_throw_runtime_exception(env, "MqttClientConnection.mqtt_unsubscribe: Invalid connection"); in Java_software_amazon_awssdk_crt_mqtt_MqttClientConnection_mqttClientConnectionUnsubscribe()
979 …struct mqtt_jni_async_callback *unsub_ack = s_mqtt_jni_async_callback_new(connection, jni_ack, env… in Java_software_amazon_awssdk_crt_mqtt_MqttClientConnection_mqttClientConnectionUnsubscribe()
987 …aws_mqtt_client_connection_unsubscribe(connection->client_connection, &topic, s_on_op_complete, un… in Java_software_amazon_awssdk_crt_mqtt_MqttClientConnection_mqttClientConnectionUnsubscribe()
1020 struct mqtt_jni_connection *connection = (struct mqtt_jni_connection *)jni_connection; in Java_software_amazon_awssdk_crt_mqtt_MqttClientConnection_mqttClientConnectionPublish() local
1021 if (!connection) { in Java_software_amazon_awssdk_crt_mqtt_MqttClientConnection_mqttClientConnectionPublish()
1022 … aws_jni_throw_runtime_exception(env, "MqttClientConnection.mqtt_publish: Invalid connection"); in Java_software_amazon_awssdk_crt_mqtt_MqttClientConnection_mqttClientConnectionPublish()
1031 … struct mqtt_jni_async_callback *pub_ack = s_mqtt_jni_async_callback_new(connection, jni_ack, env); in Java_software_amazon_awssdk_crt_mqtt_MqttClientConnection_mqttClientConnectionPublish()
1049 connection->client_connection, &topic, qos, retain, &payload, s_on_op_complete, pub_ack); in Java_software_amazon_awssdk_crt_mqtt_MqttClientConnection_mqttClientConnectionPublish()
1083 struct mqtt_jni_connection *connection = (struct mqtt_jni_connection *)jni_connection; in Java_software_amazon_awssdk_crt_mqtt_MqttClientConnection_mqttClientConnectionSetWill() local
1084 if (!connection) { in Java_software_amazon_awssdk_crt_mqtt_MqttClientConnection_mqttClientConnectionSetWill()
1085 … aws_jni_throw_runtime_exception(env, "MqttClientConnection.mqtt_set_will: Invalid connection"); in Java_software_amazon_awssdk_crt_mqtt_MqttClientConnection_mqttClientConnectionSetWill()
1104 …int result = aws_mqtt_client_connection_set_will(connection->client_connection, &topic, qos, retai… in Java_software_amazon_awssdk_crt_mqtt_MqttClientConnection_mqttClientConnectionSetWill()
1123 struct mqtt_jni_connection *connection = (struct mqtt_jni_connection *)jni_connection; in Java_software_amazon_awssdk_crt_mqtt_MqttClientConnection_mqttClientConnectionSetLogin() local
1124 if (!connection) { in Java_software_amazon_awssdk_crt_mqtt_MqttClientConnection_mqttClientConnectionSetLogin()
1125 … aws_jni_throw_runtime_exception(env, "MqttClientConnection.mqtt_set_login: Invalid connection"); in Java_software_amazon_awssdk_crt_mqtt_MqttClientConnection_mqttClientConnectionSetLogin()
1138 …if (aws_mqtt_client_connection_set_login(connection->client_connection, &username, password_ptr)) { in Java_software_amazon_awssdk_crt_mqtt_MqttClientConnection_mqttClientConnectionSetLogin()
1159 struct mqtt_jni_connection *connection = (struct mqtt_jni_connection *)jni_connection; in Java_software_amazon_awssdk_crt_mqtt_MqttClientConnection_mqttClientConnectionSetReconnectTimeout() local
1160 if (!connection) { in Java_software_amazon_awssdk_crt_mqtt_MqttClientConnection_mqttClientConnectionSetReconnectTimeout()
1161 …ni_throw_runtime_exception(env, "MqttClientConnection.mqtt_reconnect_timeout: Invalid connection"); in Java_software_amazon_awssdk_crt_mqtt_MqttClientConnection_mqttClientConnectionSetReconnectTimeout()
1166 connection->client_connection, jni_min_timeout, jni_max_timeout)) { in Java_software_amazon_awssdk_crt_mqtt_MqttClientConnection_mqttClientConnectionSetReconnectTimeout()
1178 s_mqtt_jni_connection_release(ws_handshake->connection); in s_ws_handshake_destroy()
1188 struct mqtt_jni_connection *connection = user_data; in s_ws_handshake_transform() local
1191 JNIEnv *env = aws_jni_acquire_thread_env(connection->jvm); in s_ws_handshake_transform()
1205 ws_handshake->connection = connection; in s_ws_handshake_transform()
1206 s_mqtt_jni_connection_acquire(ws_handshake->connection); in s_ws_handshake_transform()
1218 jobject mqtt_connection = (*env)->NewLocalRef(env, connection->java_mqtt_connection); in s_ws_handshake_transform()
1229 aws_jni_release_thread_env(connection->jvm, env); in s_ws_handshake_transform()
1239 aws_jni_release_thread_env(connection->jvm, env); in s_ws_handshake_transform()
1250 struct mqtt_jni_connection *connection = (struct mqtt_jni_connection *)jni_connection; in Java_software_amazon_awssdk_crt_mqtt_MqttClientConnection_mqttClientConnectionUseWebsockets() local
1251 if (!connection) { in Java_software_amazon_awssdk_crt_mqtt_MqttClientConnection_mqttClientConnectionUseWebsockets()
1253 … aws_jni_throw_runtime_exception(env, "MqttClientConnection.useWebsockets: Invalid connection"); in Java_software_amazon_awssdk_crt_mqtt_MqttClientConnection_mqttClientConnectionUseWebsockets()
1258 connection->client_connection, s_ws_handshake_transform, connection, NULL, NULL)) { in Java_software_amazon_awssdk_crt_mqtt_MqttClientConnection_mqttClientConnectionUseWebsockets()
1318 struct mqtt_jni_connection *connection = (struct mqtt_jni_connection *)jni_connection; in Java_software_amazon_awssdk_crt_mqtt_MqttClientConnection_mqttClientConnectionSetHttpProxyOptions() local
1354 …if (aws_mqtt_client_connection_set_http_proxy_options(connection->client_connection, &proxy_option… in Java_software_amazon_awssdk_crt_mqtt_MqttClientConnection_mqttClientConnectionSetHttpProxyOptions()
1378 struct mqtt_jni_connection *connection = (struct mqtt_jni_connection *)jni_connection; in Java_software_amazon_awssdk_crt_mqtt_MqttClientConnection_mqttClientConnectionGetOperationStatistics() local
1379 if (!connection) { in Java_software_amazon_awssdk_crt_mqtt_MqttClientConnection_mqttClientConnectionGetOperationStatistics()
1381 …ni_throw_runtime_exception(env, "MqttClientConnection.getOperationStatistics: Invalid connection"); in Java_software_amazon_awssdk_crt_mqtt_MqttClientConnection_mqttClientConnectionGetOperationStatistics()
1398 aws_mqtt_client_connection_get_stats(connection->client_connection, &connection_stats); in Java_software_amazon_awssdk_crt_mqtt_MqttClientConnection_mqttClientConnectionGetOperationStatistics()