1*3c7ae9deSAndroid Build Coastguard Worker /** 2*3c7ae9deSAndroid Build Coastguard Worker * Copyright Amazon.com, Inc. or its affiliates. All Rights Reserved. 3*3c7ae9deSAndroid Build Coastguard Worker * SPDX-License-Identifier: Apache-2.0. 4*3c7ae9deSAndroid Build Coastguard Worker */ 5*3c7ae9deSAndroid Build Coastguard Worker 6*3c7ae9deSAndroid Build Coastguard Worker #ifndef AWS_JNI_CRT_JAVA_CLASS_IDS_H 7*3c7ae9deSAndroid Build Coastguard Worker #define AWS_JNI_CRT_JAVA_CLASS_IDS_H 8*3c7ae9deSAndroid Build Coastguard Worker 9*3c7ae9deSAndroid Build Coastguard Worker #include <jni.h> 10*3c7ae9deSAndroid Build Coastguard Worker 11*3c7ae9deSAndroid Build Coastguard Worker /* HttpRequestBodyStream */ 12*3c7ae9deSAndroid Build Coastguard Worker struct java_http_request_body_stream_properties { 13*3c7ae9deSAndroid Build Coastguard Worker jmethodID send_outgoing_body; 14*3c7ae9deSAndroid Build Coastguard Worker jmethodID reset_position; 15*3c7ae9deSAndroid Build Coastguard Worker jmethodID get_length; 16*3c7ae9deSAndroid Build Coastguard Worker }; 17*3c7ae9deSAndroid Build Coastguard Worker extern struct java_http_request_body_stream_properties http_request_body_stream_properties; 18*3c7ae9deSAndroid Build Coastguard Worker 19*3c7ae9deSAndroid Build Coastguard Worker /* AwsSigningConfig */ 20*3c7ae9deSAndroid Build Coastguard Worker struct java_aws_signing_config_properties { 21*3c7ae9deSAndroid Build Coastguard Worker jclass aws_signing_config_class; 22*3c7ae9deSAndroid Build Coastguard Worker jfieldID algorithm_field_id; 23*3c7ae9deSAndroid Build Coastguard Worker jfieldID signature_type_field_id; 24*3c7ae9deSAndroid Build Coastguard Worker jfieldID region_field_id; 25*3c7ae9deSAndroid Build Coastguard Worker jfieldID service_field_id; 26*3c7ae9deSAndroid Build Coastguard Worker jfieldID time_field_id; 27*3c7ae9deSAndroid Build Coastguard Worker jfieldID credentials_field_id; 28*3c7ae9deSAndroid Build Coastguard Worker jfieldID credentials_provider_field_id; 29*3c7ae9deSAndroid Build Coastguard Worker jfieldID should_sign_header_field_id; 30*3c7ae9deSAndroid Build Coastguard Worker jfieldID use_double_uri_encode_field_id; 31*3c7ae9deSAndroid Build Coastguard Worker jfieldID should_normalize_uri_path_field_id; 32*3c7ae9deSAndroid Build Coastguard Worker jfieldID omit_session_token_field_id; 33*3c7ae9deSAndroid Build Coastguard Worker jfieldID signed_body_value_field_id; 34*3c7ae9deSAndroid Build Coastguard Worker jfieldID signed_body_header_field_id; 35*3c7ae9deSAndroid Build Coastguard Worker jfieldID expiration_in_seconds_field_id; 36*3c7ae9deSAndroid Build Coastguard Worker }; 37*3c7ae9deSAndroid Build Coastguard Worker extern struct java_aws_signing_config_properties aws_signing_config_properties; 38*3c7ae9deSAndroid Build Coastguard Worker 39*3c7ae9deSAndroid Build Coastguard Worker /* Predicate<T> */ 40*3c7ae9deSAndroid Build Coastguard Worker struct java_predicate_properties { 41*3c7ae9deSAndroid Build Coastguard Worker jclass predicate_class; 42*3c7ae9deSAndroid Build Coastguard Worker jmethodID test_method_id; 43*3c7ae9deSAndroid Build Coastguard Worker }; 44*3c7ae9deSAndroid Build Coastguard Worker extern struct java_predicate_properties predicate_properties; 45*3c7ae9deSAndroid Build Coastguard Worker 46*3c7ae9deSAndroid Build Coastguard Worker /* java/lang/Long */ 47*3c7ae9deSAndroid Build Coastguard Worker struct java_boxed_long_properties { 48*3c7ae9deSAndroid Build Coastguard Worker jclass long_class; 49*3c7ae9deSAndroid Build Coastguard Worker jmethodID constructor; 50*3c7ae9deSAndroid Build Coastguard Worker jmethodID long_value_method_id; 51*3c7ae9deSAndroid Build Coastguard Worker }; 52*3c7ae9deSAndroid Build Coastguard Worker extern struct java_boxed_long_properties boxed_long_properties; 53*3c7ae9deSAndroid Build Coastguard Worker 54*3c7ae9deSAndroid Build Coastguard Worker /* HttpRequest */ 55*3c7ae9deSAndroid Build Coastguard Worker struct java_http_request_properties { 56*3c7ae9deSAndroid Build Coastguard Worker jclass http_request_class; 57*3c7ae9deSAndroid Build Coastguard Worker jmethodID constructor_method_id; 58*3c7ae9deSAndroid Build Coastguard Worker jfieldID body_stream_field_id; 59*3c7ae9deSAndroid Build Coastguard Worker }; 60*3c7ae9deSAndroid Build Coastguard Worker extern struct java_http_request_properties http_request_properties; 61*3c7ae9deSAndroid Build Coastguard Worker 62*3c7ae9deSAndroid Build Coastguard Worker /* CrtResource */ 63*3c7ae9deSAndroid Build Coastguard Worker struct java_crt_resource_properties { 64*3c7ae9deSAndroid Build Coastguard Worker jmethodID get_native_handle_method_id; 65*3c7ae9deSAndroid Build Coastguard Worker jmethodID release_references; 66*3c7ae9deSAndroid Build Coastguard Worker jmethodID add_ref; 67*3c7ae9deSAndroid Build Coastguard Worker jmethodID close; 68*3c7ae9deSAndroid Build Coastguard Worker }; 69*3c7ae9deSAndroid Build Coastguard Worker extern struct java_crt_resource_properties crt_resource_properties; 70*3c7ae9deSAndroid Build Coastguard Worker 71*3c7ae9deSAndroid Build Coastguard Worker /* MqttClientConnection */ 72*3c7ae9deSAndroid Build Coastguard Worker struct java_mqtt_connection_properties { 73*3c7ae9deSAndroid Build Coastguard Worker jmethodID on_connection_complete; 74*3c7ae9deSAndroid Build Coastguard Worker jmethodID on_connection_interrupted; 75*3c7ae9deSAndroid Build Coastguard Worker jmethodID on_connection_resumed; 76*3c7ae9deSAndroid Build Coastguard Worker jmethodID on_connection_closed; 77*3c7ae9deSAndroid Build Coastguard Worker jmethodID on_websocket_handshake; 78*3c7ae9deSAndroid Build Coastguard Worker jmethodID on_connection_success; 79*3c7ae9deSAndroid Build Coastguard Worker jmethodID on_connection_failure; 80*3c7ae9deSAndroid Build Coastguard Worker }; 81*3c7ae9deSAndroid Build Coastguard Worker extern struct java_mqtt_connection_properties mqtt_connection_properties; 82*3c7ae9deSAndroid Build Coastguard Worker 83*3c7ae9deSAndroid Build Coastguard Worker /* MqttClientConnection.MessageHandler */ 84*3c7ae9deSAndroid Build Coastguard Worker struct java_message_handler_properties { 85*3c7ae9deSAndroid Build Coastguard Worker jmethodID deliver; 86*3c7ae9deSAndroid Build Coastguard Worker }; 87*3c7ae9deSAndroid Build Coastguard Worker extern struct java_message_handler_properties message_handler_properties; 88*3c7ae9deSAndroid Build Coastguard Worker 89*3c7ae9deSAndroid Build Coastguard Worker /* MqttClientConnection.MqttClientOperationStatistics */ 90*3c7ae9deSAndroid Build Coastguard Worker struct java_mqtt_connection_operation_statistics_properties { 91*3c7ae9deSAndroid Build Coastguard Worker jclass statistics_class; 92*3c7ae9deSAndroid Build Coastguard Worker jmethodID statistics_constructor_id; 93*3c7ae9deSAndroid Build Coastguard Worker jfieldID incomplete_operation_count_field_id; 94*3c7ae9deSAndroid Build Coastguard Worker jfieldID incomplete_operation_size_field_id; 95*3c7ae9deSAndroid Build Coastguard Worker jfieldID unacked_operation_count_field_id; 96*3c7ae9deSAndroid Build Coastguard Worker jfieldID unacked_operation_size_field_id; 97*3c7ae9deSAndroid Build Coastguard Worker }; 98*3c7ae9deSAndroid Build Coastguard Worker extern struct java_mqtt_connection_operation_statistics_properties mqtt_connection_operation_statistics_properties; 99*3c7ae9deSAndroid Build Coastguard Worker 100*3c7ae9deSAndroid Build Coastguard Worker /* MqttException */ 101*3c7ae9deSAndroid Build Coastguard Worker struct java_mqtt_exception_properties { 102*3c7ae9deSAndroid Build Coastguard Worker jclass jni_mqtt_exception; 103*3c7ae9deSAndroid Build Coastguard Worker jmethodID jni_constructor; 104*3c7ae9deSAndroid Build Coastguard Worker }; 105*3c7ae9deSAndroid Build Coastguard Worker extern struct java_mqtt_exception_properties mqtt_exception_properties; 106*3c7ae9deSAndroid Build Coastguard Worker 107*3c7ae9deSAndroid Build Coastguard Worker /* ByteBuffer */ 108*3c7ae9deSAndroid Build Coastguard Worker struct java_byte_buffer_properties { 109*3c7ae9deSAndroid Build Coastguard Worker jclass cls; 110*3c7ae9deSAndroid Build Coastguard Worker jmethodID get_capacity; /* The total number of bytes in the internal byte array. Stays constant. */ 111*3c7ae9deSAndroid Build Coastguard Worker jmethodID get_limit; /* The max allowed read/write position of the Buffer. limit must be <= capacity. */ 112*3c7ae9deSAndroid Build Coastguard Worker jmethodID set_limit; 113*3c7ae9deSAndroid Build Coastguard Worker jmethodID get_position; /* The current read/write position of the Buffer. position must be <= limit */ 114*3c7ae9deSAndroid Build Coastguard Worker jmethodID set_position; 115*3c7ae9deSAndroid Build Coastguard Worker jmethodID get_remaining; /* Remaining number of bytes before the limit is reached. Equal to (limit - position). */ 116*3c7ae9deSAndroid Build Coastguard Worker jmethodID wrap; /* Creates a new ByteBuffer Object from a Java byte[]. */ 117*3c7ae9deSAndroid Build Coastguard Worker }; 118*3c7ae9deSAndroid Build Coastguard Worker extern struct java_byte_buffer_properties byte_buffer_properties; 119*3c7ae9deSAndroid Build Coastguard Worker 120*3c7ae9deSAndroid Build Coastguard Worker /* CredentialsProvider */ 121*3c7ae9deSAndroid Build Coastguard Worker struct java_credentials_provider_properties { 122*3c7ae9deSAndroid Build Coastguard Worker jmethodID on_shutdown_complete_method_id; 123*3c7ae9deSAndroid Build Coastguard Worker jmethodID on_get_credentials_complete_method_id; 124*3c7ae9deSAndroid Build Coastguard Worker }; 125*3c7ae9deSAndroid Build Coastguard Worker extern struct java_credentials_provider_properties credentials_provider_properties; 126*3c7ae9deSAndroid Build Coastguard Worker 127*3c7ae9deSAndroid Build Coastguard Worker /* Credentials */ 128*3c7ae9deSAndroid Build Coastguard Worker struct java_credentials_properties { 129*3c7ae9deSAndroid Build Coastguard Worker jclass credentials_class; 130*3c7ae9deSAndroid Build Coastguard Worker jmethodID constructor_method_id; 131*3c7ae9deSAndroid Build Coastguard Worker jfieldID access_key_id_field_id; 132*3c7ae9deSAndroid Build Coastguard Worker jfieldID secret_access_key_field_id; 133*3c7ae9deSAndroid Build Coastguard Worker jfieldID session_token_field_id; 134*3c7ae9deSAndroid Build Coastguard Worker jfieldID expiration_field_id; 135*3c7ae9deSAndroid Build Coastguard Worker }; 136*3c7ae9deSAndroid Build Coastguard Worker extern struct java_credentials_properties credentials_properties; 137*3c7ae9deSAndroid Build Coastguard Worker 138*3c7ae9deSAndroid Build Coastguard Worker /* DelegateCredentialsHandler */ 139*3c7ae9deSAndroid Build Coastguard Worker struct java_credentials_handler_properties { 140*3c7ae9deSAndroid Build Coastguard Worker jmethodID on_handler_get_credentials_method_id; 141*3c7ae9deSAndroid Build Coastguard Worker }; 142*3c7ae9deSAndroid Build Coastguard Worker extern struct java_credentials_handler_properties credentials_handler_properties; 143*3c7ae9deSAndroid Build Coastguard Worker 144*3c7ae9deSAndroid Build Coastguard Worker /* AsyncCallback */ 145*3c7ae9deSAndroid Build Coastguard Worker struct java_async_callback_properties { 146*3c7ae9deSAndroid Build Coastguard Worker jmethodID on_success_with_object; 147*3c7ae9deSAndroid Build Coastguard Worker jmethodID on_success; 148*3c7ae9deSAndroid Build Coastguard Worker jmethodID on_failure; 149*3c7ae9deSAndroid Build Coastguard Worker }; 150*3c7ae9deSAndroid Build Coastguard Worker extern struct java_async_callback_properties async_callback_properties; 151*3c7ae9deSAndroid Build Coastguard Worker 152*3c7ae9deSAndroid Build Coastguard Worker /* EventLoopGroup */ 153*3c7ae9deSAndroid Build Coastguard Worker struct java_event_loop_group_properties { 154*3c7ae9deSAndroid Build Coastguard Worker jmethodID onCleanupComplete; 155*3c7ae9deSAndroid Build Coastguard Worker }; 156*3c7ae9deSAndroid Build Coastguard Worker extern struct java_event_loop_group_properties event_loop_group_properties; 157*3c7ae9deSAndroid Build Coastguard Worker 158*3c7ae9deSAndroid Build Coastguard Worker /* ClientBootstrap */ 159*3c7ae9deSAndroid Build Coastguard Worker struct java_client_bootstrap_properties { 160*3c7ae9deSAndroid Build Coastguard Worker jmethodID onShutdownComplete; 161*3c7ae9deSAndroid Build Coastguard Worker }; 162*3c7ae9deSAndroid Build Coastguard Worker extern struct java_client_bootstrap_properties client_bootstrap_properties; 163*3c7ae9deSAndroid Build Coastguard Worker 164*3c7ae9deSAndroid Build Coastguard Worker /* TlsContextPkcs11Options */ 165*3c7ae9deSAndroid Build Coastguard Worker struct java_tls_context_pkcs11_options_properties { 166*3c7ae9deSAndroid Build Coastguard Worker jfieldID pkcs11Lib; 167*3c7ae9deSAndroid Build Coastguard Worker jfieldID userPin; 168*3c7ae9deSAndroid Build Coastguard Worker jfieldID slotId; 169*3c7ae9deSAndroid Build Coastguard Worker jfieldID tokenLabel; 170*3c7ae9deSAndroid Build Coastguard Worker jfieldID privateKeyObjectLabel; 171*3c7ae9deSAndroid Build Coastguard Worker jfieldID certificateFilePath; 172*3c7ae9deSAndroid Build Coastguard Worker jfieldID certificateFileContents; 173*3c7ae9deSAndroid Build Coastguard Worker }; 174*3c7ae9deSAndroid Build Coastguard Worker extern struct java_tls_context_pkcs11_options_properties tls_context_pkcs11_options_properties; 175*3c7ae9deSAndroid Build Coastguard Worker 176*3c7ae9deSAndroid Build Coastguard Worker /* TlsContextCustomKeyOperationOptions */ 177*3c7ae9deSAndroid Build Coastguard Worker struct java_tls_context_custom_key_operation_options_properties { 178*3c7ae9deSAndroid Build Coastguard Worker jfieldID operation_handler_field_id; 179*3c7ae9deSAndroid Build Coastguard Worker jfieldID certificate_file_path_field_id; 180*3c7ae9deSAndroid Build Coastguard Worker jfieldID certificate_file_contents_field_id; 181*3c7ae9deSAndroid Build Coastguard Worker }; 182*3c7ae9deSAndroid Build Coastguard Worker extern struct java_tls_context_custom_key_operation_options_properties 183*3c7ae9deSAndroid Build Coastguard Worker tls_context_custom_key_operation_options_properties; 184*3c7ae9deSAndroid Build Coastguard Worker 185*3c7ae9deSAndroid Build Coastguard Worker /* TlsKeyOperationHandler */ 186*3c7ae9deSAndroid Build Coastguard Worker struct java_tls_key_operation_handler_properties { 187*3c7ae9deSAndroid Build Coastguard Worker jmethodID perform_operation_id; 188*3c7ae9deSAndroid Build Coastguard Worker }; 189*3c7ae9deSAndroid Build Coastguard Worker extern struct java_tls_key_operation_handler_properties tls_key_operation_handler_properties; 190*3c7ae9deSAndroid Build Coastguard Worker 191*3c7ae9deSAndroid Build Coastguard Worker /* TlsKeyOperation */ 192*3c7ae9deSAndroid Build Coastguard Worker struct java_tls_key_operation_properties { 193*3c7ae9deSAndroid Build Coastguard Worker jclass cls; 194*3c7ae9deSAndroid Build Coastguard Worker jmethodID constructor; 195*3c7ae9deSAndroid Build Coastguard Worker jmethodID invoke_operation_id; 196*3c7ae9deSAndroid Build Coastguard Worker }; 197*3c7ae9deSAndroid Build Coastguard Worker extern struct java_tls_key_operation_properties tls_key_operation_properties; 198*3c7ae9deSAndroid Build Coastguard Worker 199*3c7ae9deSAndroid Build Coastguard Worker /* HttpClientConnectionManager */ 200*3c7ae9deSAndroid Build Coastguard Worker struct java_http_client_connection_manager_properties { 201*3c7ae9deSAndroid Build Coastguard Worker jmethodID onShutdownComplete; 202*3c7ae9deSAndroid Build Coastguard Worker }; 203*3c7ae9deSAndroid Build Coastguard Worker extern struct java_http_client_connection_manager_properties http_client_connection_manager_properties; 204*3c7ae9deSAndroid Build Coastguard Worker 205*3c7ae9deSAndroid Build Coastguard Worker /* Http2StreamManager */ 206*3c7ae9deSAndroid Build Coastguard Worker struct java_http2_stream_manager_properties { 207*3c7ae9deSAndroid Build Coastguard Worker jmethodID onShutdownComplete; 208*3c7ae9deSAndroid Build Coastguard Worker }; 209*3c7ae9deSAndroid Build Coastguard Worker extern struct java_http2_stream_manager_properties http2_stream_manager_properties; 210*3c7ae9deSAndroid Build Coastguard Worker 211*3c7ae9deSAndroid Build Coastguard Worker /* HttpClientConnection */ 212*3c7ae9deSAndroid Build Coastguard Worker struct java_http_client_connection_properties { 213*3c7ae9deSAndroid Build Coastguard Worker jclass http_client_connection_class; 214*3c7ae9deSAndroid Build Coastguard Worker jmethodID on_connection_acquired_method_id; 215*3c7ae9deSAndroid Build Coastguard Worker }; 216*3c7ae9deSAndroid Build Coastguard Worker extern struct java_http_client_connection_properties http_client_connection_properties; 217*3c7ae9deSAndroid Build Coastguard Worker 218*3c7ae9deSAndroid Build Coastguard Worker /* HttpStream */ 219*3c7ae9deSAndroid Build Coastguard Worker struct java_http_stream_properties { 220*3c7ae9deSAndroid Build Coastguard Worker jclass stream_class; 221*3c7ae9deSAndroid Build Coastguard Worker jmethodID constructor; 222*3c7ae9deSAndroid Build Coastguard Worker jmethodID close; 223*3c7ae9deSAndroid Build Coastguard Worker }; 224*3c7ae9deSAndroid Build Coastguard Worker extern struct java_http_stream_properties http_stream_properties; 225*3c7ae9deSAndroid Build Coastguard Worker 226*3c7ae9deSAndroid Build Coastguard Worker /* Http2Stream */ 227*3c7ae9deSAndroid Build Coastguard Worker struct java_http2_stream_properties { 228*3c7ae9deSAndroid Build Coastguard Worker jclass stream_class; 229*3c7ae9deSAndroid Build Coastguard Worker jmethodID constructor; 230*3c7ae9deSAndroid Build Coastguard Worker }; 231*3c7ae9deSAndroid Build Coastguard Worker extern struct java_http2_stream_properties http2_stream_properties; 232*3c7ae9deSAndroid Build Coastguard Worker 233*3c7ae9deSAndroid Build Coastguard Worker /* HttpStreamResponseHandler */ 234*3c7ae9deSAndroid Build Coastguard Worker struct java_http_stream_response_handler_native_adapter_properties { 235*3c7ae9deSAndroid Build Coastguard Worker jmethodID onResponseHeaders; 236*3c7ae9deSAndroid Build Coastguard Worker jmethodID onResponseHeadersDone; 237*3c7ae9deSAndroid Build Coastguard Worker jmethodID onResponseBody; 238*3c7ae9deSAndroid Build Coastguard Worker jmethodID onResponseComplete; 239*3c7ae9deSAndroid Build Coastguard Worker jmethodID onMetrics; 240*3c7ae9deSAndroid Build Coastguard Worker }; 241*3c7ae9deSAndroid Build Coastguard Worker extern struct java_http_stream_response_handler_native_adapter_properties http_stream_response_handler_properties; 242*3c7ae9deSAndroid Build Coastguard Worker 243*3c7ae9deSAndroid Build Coastguard Worker /* HttpStreamWriteChunkCompletionCallback */ 244*3c7ae9deSAndroid Build Coastguard Worker struct java_http_stream_write_chunk_completion_properties { 245*3c7ae9deSAndroid Build Coastguard Worker jmethodID callback; 246*3c7ae9deSAndroid Build Coastguard Worker }; 247*3c7ae9deSAndroid Build Coastguard Worker extern struct java_http_stream_write_chunk_completion_properties http_stream_write_chunk_completion_properties; 248*3c7ae9deSAndroid Build Coastguard Worker 249*3c7ae9deSAndroid Build Coastguard Worker /* HtppStreamMetrics */ 250*3c7ae9deSAndroid Build Coastguard Worker struct java_http_stream_metrics_properties { 251*3c7ae9deSAndroid Build Coastguard Worker jclass http_stream_metrics_class; 252*3c7ae9deSAndroid Build Coastguard Worker jmethodID constructor_id; 253*3c7ae9deSAndroid Build Coastguard Worker }; 254*3c7ae9deSAndroid Build Coastguard Worker extern struct java_http_stream_metrics_properties http_stream_metrics_properties; 255*3c7ae9deSAndroid Build Coastguard Worker 256*3c7ae9deSAndroid Build Coastguard Worker /* EventStreamServerListener */ 257*3c7ae9deSAndroid Build Coastguard Worker struct java_event_stream_server_listener_properties { 258*3c7ae9deSAndroid Build Coastguard Worker jmethodID onShutdownComplete; 259*3c7ae9deSAndroid Build Coastguard Worker }; 260*3c7ae9deSAndroid Build Coastguard Worker extern struct java_event_stream_server_listener_properties event_stream_server_listener_properties; 261*3c7ae9deSAndroid Build Coastguard Worker 262*3c7ae9deSAndroid Build Coastguard Worker /* EventStreamServerListenerHandler */ 263*3c7ae9deSAndroid Build Coastguard Worker struct java_event_stream_server_listener_handler_properties { 264*3c7ae9deSAndroid Build Coastguard Worker jmethodID onNewConnection; 265*3c7ae9deSAndroid Build Coastguard Worker jmethodID onConnectionShutdown; 266*3c7ae9deSAndroid Build Coastguard Worker jmethodID newConnConstructor; 267*3c7ae9deSAndroid Build Coastguard Worker jclass connCls; 268*3c7ae9deSAndroid Build Coastguard Worker }; 269*3c7ae9deSAndroid Build Coastguard Worker extern struct java_event_stream_server_listener_handler_properties event_stream_server_listener_handler_properties; 270*3c7ae9deSAndroid Build Coastguard Worker 271*3c7ae9deSAndroid Build Coastguard Worker struct java_event_stream_server_connection_handler_properties { 272*3c7ae9deSAndroid Build Coastguard Worker jmethodID onProtocolMessage; 273*3c7ae9deSAndroid Build Coastguard Worker jmethodID onIncomingStream; 274*3c7ae9deSAndroid Build Coastguard Worker jmethodID newContinuationConstructor; 275*3c7ae9deSAndroid Build Coastguard Worker jclass continuationCls; 276*3c7ae9deSAndroid Build Coastguard Worker }; 277*3c7ae9deSAndroid Build Coastguard Worker extern struct java_event_stream_server_connection_handler_properties event_stream_server_connection_handler_properties; 278*3c7ae9deSAndroid Build Coastguard Worker 279*3c7ae9deSAndroid Build Coastguard Worker struct java_event_stream_server_continuation_handler_properties { 280*3c7ae9deSAndroid Build Coastguard Worker jmethodID onContinuationMessage; 281*3c7ae9deSAndroid Build Coastguard Worker jmethodID onContinuationClosed; 282*3c7ae9deSAndroid Build Coastguard Worker }; 283*3c7ae9deSAndroid Build Coastguard Worker extern struct java_event_stream_server_continuation_handler_properties 284*3c7ae9deSAndroid Build Coastguard Worker event_stream_server_continuation_handler_properties; 285*3c7ae9deSAndroid Build Coastguard Worker 286*3c7ae9deSAndroid Build Coastguard Worker struct java_event_stream_client_connection_handler_properties { 287*3c7ae9deSAndroid Build Coastguard Worker jmethodID onSetup; 288*3c7ae9deSAndroid Build Coastguard Worker jmethodID onProtocolMessage; 289*3c7ae9deSAndroid Build Coastguard Worker jmethodID onClosed; 290*3c7ae9deSAndroid Build Coastguard Worker }; 291*3c7ae9deSAndroid Build Coastguard Worker extern struct java_event_stream_client_connection_handler_properties event_stream_client_connection_handler_properties; 292*3c7ae9deSAndroid Build Coastguard Worker 293*3c7ae9deSAndroid Build Coastguard Worker struct java_event_stream_client_continuation_handler_properties { 294*3c7ae9deSAndroid Build Coastguard Worker jmethodID onContinuationMessage; 295*3c7ae9deSAndroid Build Coastguard Worker jmethodID onContinuationClosed; 296*3c7ae9deSAndroid Build Coastguard Worker }; 297*3c7ae9deSAndroid Build Coastguard Worker extern struct java_event_stream_client_continuation_handler_properties 298*3c7ae9deSAndroid Build Coastguard Worker event_stream_client_continuation_handler_properties; 299*3c7ae9deSAndroid Build Coastguard Worker 300*3c7ae9deSAndroid Build Coastguard Worker struct java_event_stream_message_flush_properties { 301*3c7ae9deSAndroid Build Coastguard Worker jmethodID callback; 302*3c7ae9deSAndroid Build Coastguard Worker }; 303*3c7ae9deSAndroid Build Coastguard Worker extern struct java_event_stream_message_flush_properties event_stream_server_message_flush_properties; 304*3c7ae9deSAndroid Build Coastguard Worker 305*3c7ae9deSAndroid Build Coastguard Worker struct java_cpu_info_properties { 306*3c7ae9deSAndroid Build Coastguard Worker jclass cpu_info_class; 307*3c7ae9deSAndroid Build Coastguard Worker jmethodID cpu_info_constructor; 308*3c7ae9deSAndroid Build Coastguard Worker }; 309*3c7ae9deSAndroid Build Coastguard Worker extern struct java_cpu_info_properties cpu_info_properties; 310*3c7ae9deSAndroid Build Coastguard Worker 311*3c7ae9deSAndroid Build Coastguard Worker struct java_s3_client_properties { 312*3c7ae9deSAndroid Build Coastguard Worker jmethodID onShutdownComplete; 313*3c7ae9deSAndroid Build Coastguard Worker }; 314*3c7ae9deSAndroid Build Coastguard Worker extern struct java_s3_client_properties s3_client_properties; 315*3c7ae9deSAndroid Build Coastguard Worker 316*3c7ae9deSAndroid Build Coastguard Worker /* S3Client */ 317*3c7ae9deSAndroid Build Coastguard Worker struct java_s3_meta_request_properties { 318*3c7ae9deSAndroid Build Coastguard Worker jmethodID onShutdownComplete; 319*3c7ae9deSAndroid Build Coastguard Worker }; 320*3c7ae9deSAndroid Build Coastguard Worker extern struct java_s3_meta_request_properties s3_meta_request_properties; 321*3c7ae9deSAndroid Build Coastguard Worker 322*3c7ae9deSAndroid Build Coastguard Worker /* S3MetaRequestResponseHandlerNativeAdapter */ 323*3c7ae9deSAndroid Build Coastguard Worker struct java_s3_meta_request_response_handler_native_adapter_properties { 324*3c7ae9deSAndroid Build Coastguard Worker jmethodID onResponseBody; 325*3c7ae9deSAndroid Build Coastguard Worker jmethodID onFinished; 326*3c7ae9deSAndroid Build Coastguard Worker jmethodID onResponseHeaders; 327*3c7ae9deSAndroid Build Coastguard Worker jmethodID onProgress; 328*3c7ae9deSAndroid Build Coastguard Worker }; 329*3c7ae9deSAndroid Build Coastguard Worker extern struct java_s3_meta_request_response_handler_native_adapter_properties 330*3c7ae9deSAndroid Build Coastguard Worker s3_meta_request_response_handler_native_adapter_properties; 331*3c7ae9deSAndroid Build Coastguard Worker 332*3c7ae9deSAndroid Build Coastguard Worker /* CompletableFuture */ 333*3c7ae9deSAndroid Build Coastguard Worker struct java_completable_future_properties { 334*3c7ae9deSAndroid Build Coastguard Worker jmethodID complete_method_id; 335*3c7ae9deSAndroid Build Coastguard Worker jmethodID complete_exceptionally_method_id; 336*3c7ae9deSAndroid Build Coastguard Worker }; 337*3c7ae9deSAndroid Build Coastguard Worker 338*3c7ae9deSAndroid Build Coastguard Worker extern struct java_completable_future_properties completable_future_properties; 339*3c7ae9deSAndroid Build Coastguard Worker 340*3c7ae9deSAndroid Build Coastguard Worker /* CrtRuntimeException */ 341*3c7ae9deSAndroid Build Coastguard Worker struct java_crt_runtime_exception_properties { 342*3c7ae9deSAndroid Build Coastguard Worker jclass crt_runtime_exception_class; 343*3c7ae9deSAndroid Build Coastguard Worker jmethodID constructor_method_id; 344*3c7ae9deSAndroid Build Coastguard Worker jfieldID error_code_field_id; 345*3c7ae9deSAndroid Build Coastguard Worker }; 346*3c7ae9deSAndroid Build Coastguard Worker extern struct java_crt_runtime_exception_properties crt_runtime_exception_properties; 347*3c7ae9deSAndroid Build Coastguard Worker 348*3c7ae9deSAndroid Build Coastguard Worker /* EccKeyPair */ 349*3c7ae9deSAndroid Build Coastguard Worker struct java_ecc_key_pair_properties { 350*3c7ae9deSAndroid Build Coastguard Worker jclass ecc_key_pair_class; 351*3c7ae9deSAndroid Build Coastguard Worker jmethodID constructor; 352*3c7ae9deSAndroid Build Coastguard Worker }; 353*3c7ae9deSAndroid Build Coastguard Worker extern struct java_ecc_key_pair_properties ecc_key_pair_properties; 354*3c7ae9deSAndroid Build Coastguard Worker 355*3c7ae9deSAndroid Build Coastguard Worker /* CRT */ 356*3c7ae9deSAndroid Build Coastguard Worker struct java_crt_properties { 357*3c7ae9deSAndroid Build Coastguard Worker jclass crt_class; 358*3c7ae9deSAndroid Build Coastguard Worker jmethodID test_jni_exception_method_id; 359*3c7ae9deSAndroid Build Coastguard Worker }; 360*3c7ae9deSAndroid Build Coastguard Worker extern struct java_crt_properties crt_properties; 361*3c7ae9deSAndroid Build Coastguard Worker 362*3c7ae9deSAndroid Build Coastguard Worker /* AwsSigningResult */ 363*3c7ae9deSAndroid Build Coastguard Worker struct java_aws_signing_result_properties { 364*3c7ae9deSAndroid Build Coastguard Worker jclass aws_signing_result_class; 365*3c7ae9deSAndroid Build Coastguard Worker jmethodID constructor; 366*3c7ae9deSAndroid Build Coastguard Worker jfieldID signed_request_field_id; 367*3c7ae9deSAndroid Build Coastguard Worker jfieldID signature_field_id; 368*3c7ae9deSAndroid Build Coastguard Worker }; 369*3c7ae9deSAndroid Build Coastguard Worker extern struct java_aws_signing_result_properties aws_signing_result_properties; 370*3c7ae9deSAndroid Build Coastguard Worker 371*3c7ae9deSAndroid Build Coastguard Worker /* HttpHeader */ 372*3c7ae9deSAndroid Build Coastguard Worker struct java_http_header_properties { 373*3c7ae9deSAndroid Build Coastguard Worker jclass http_header_class; 374*3c7ae9deSAndroid Build Coastguard Worker jmethodID constructor_method_id; /* (byte[], byte[]) */ 375*3c7ae9deSAndroid Build Coastguard Worker }; 376*3c7ae9deSAndroid Build Coastguard Worker extern struct java_http_header_properties http_header_properties; 377*3c7ae9deSAndroid Build Coastguard Worker 378*3c7ae9deSAndroid Build Coastguard Worker /* HtppConnectionManagerMetrics */ 379*3c7ae9deSAndroid Build Coastguard Worker struct java_http_manager_metrics_properties { 380*3c7ae9deSAndroid Build Coastguard Worker jclass http_manager_metrics_class; 381*3c7ae9deSAndroid Build Coastguard Worker jmethodID constructor_method_id; 382*3c7ae9deSAndroid Build Coastguard Worker }; 383*3c7ae9deSAndroid Build Coastguard Worker extern struct java_http_manager_metrics_properties http_manager_metrics_properties; 384*3c7ae9deSAndroid Build Coastguard Worker 385*3c7ae9deSAndroid Build Coastguard Worker /* ExponentialBackoffRetryOptions */ 386*3c7ae9deSAndroid Build Coastguard Worker struct java_aws_exponential_backoff_retry_options_properties { 387*3c7ae9deSAndroid Build Coastguard Worker jclass exponential_backoff_retry_options_class; 388*3c7ae9deSAndroid Build Coastguard Worker jmethodID exponential_backoff_retry_options_constructor_method_id; 389*3c7ae9deSAndroid Build Coastguard Worker jfieldID el_group_field_id; 390*3c7ae9deSAndroid Build Coastguard Worker jfieldID max_retries_field_id; 391*3c7ae9deSAndroid Build Coastguard Worker jfieldID backoff_scale_factor_ms_field_id; 392*3c7ae9deSAndroid Build Coastguard Worker jfieldID jitter_mode_field_id; 393*3c7ae9deSAndroid Build Coastguard Worker 394*3c7ae9deSAndroid Build Coastguard Worker jclass jitter_mode_class; 395*3c7ae9deSAndroid Build Coastguard Worker jfieldID jitter_mode_value_field_id; 396*3c7ae9deSAndroid Build Coastguard Worker }; 397*3c7ae9deSAndroid Build Coastguard Worker extern struct java_aws_exponential_backoff_retry_options_properties exponential_backoff_retry_options_properties; 398*3c7ae9deSAndroid Build Coastguard Worker 399*3c7ae9deSAndroid Build Coastguard Worker /* StandardRetryOptions */ 400*3c7ae9deSAndroid Build Coastguard Worker struct java_aws_standard_retry_options_properties { 401*3c7ae9deSAndroid Build Coastguard Worker jclass standard_retry_options_class; 402*3c7ae9deSAndroid Build Coastguard Worker jmethodID standard_retry_options_constructor_method_id; 403*3c7ae9deSAndroid Build Coastguard Worker jfieldID backoff_retry_options_field_id; 404*3c7ae9deSAndroid Build Coastguard Worker jfieldID initial_bucket_capacity_field_id; 405*3c7ae9deSAndroid Build Coastguard Worker }; 406*3c7ae9deSAndroid Build Coastguard Worker extern struct java_aws_standard_retry_options_properties standard_retry_options_properties; 407*3c7ae9deSAndroid Build Coastguard Worker 408*3c7ae9deSAndroid Build Coastguard Worker /* DirectoryTraversalHandler */ 409*3c7ae9deSAndroid Build Coastguard Worker struct java_aws_directory_traversal_handler_properties { 410*3c7ae9deSAndroid Build Coastguard Worker jclass directory_traversal_handler_class; 411*3c7ae9deSAndroid Build Coastguard Worker jmethodID on_directory_entry_method_id; 412*3c7ae9deSAndroid Build Coastguard Worker }; 413*3c7ae9deSAndroid Build Coastguard Worker extern struct java_aws_directory_traversal_handler_properties directory_traversal_handler_properties; 414*3c7ae9deSAndroid Build Coastguard Worker 415*3c7ae9deSAndroid Build Coastguard Worker /* DirectoryEntry */ 416*3c7ae9deSAndroid Build Coastguard Worker struct java_aws_directory_entry_properties { 417*3c7ae9deSAndroid Build Coastguard Worker jclass directory_entry_class; 418*3c7ae9deSAndroid Build Coastguard Worker jmethodID directory_entry_constructor_method_id; 419*3c7ae9deSAndroid Build Coastguard Worker jfieldID path_field_id; 420*3c7ae9deSAndroid Build Coastguard Worker jfieldID relative_path_field_id; 421*3c7ae9deSAndroid Build Coastguard Worker jfieldID is_directory_field_id; 422*3c7ae9deSAndroid Build Coastguard Worker jfieldID is_symlink_field_id; 423*3c7ae9deSAndroid Build Coastguard Worker jfieldID is_file_field_id; 424*3c7ae9deSAndroid Build Coastguard Worker jfieldID file_size_field_id; 425*3c7ae9deSAndroid Build Coastguard Worker }; 426*3c7ae9deSAndroid Build Coastguard Worker extern struct java_aws_directory_entry_properties directory_entry_properties; 427*3c7ae9deSAndroid Build Coastguard Worker 428*3c7ae9deSAndroid Build Coastguard Worker /* S3MetaRequestProgress */ 429*3c7ae9deSAndroid Build Coastguard Worker struct java_aws_s3_meta_request_progress { 430*3c7ae9deSAndroid Build Coastguard Worker jclass s3_meta_request_progress_class; 431*3c7ae9deSAndroid Build Coastguard Worker jmethodID s3_meta_request_progress_constructor_method_id; 432*3c7ae9deSAndroid Build Coastguard Worker jfieldID bytes_transferred_field_id; 433*3c7ae9deSAndroid Build Coastguard Worker jfieldID content_length_field_id; 434*3c7ae9deSAndroid Build Coastguard Worker }; 435*3c7ae9deSAndroid Build Coastguard Worker extern struct java_aws_s3_meta_request_progress s3_meta_request_progress_properties; 436*3c7ae9deSAndroid Build Coastguard Worker 437*3c7ae9deSAndroid Build Coastguard Worker /* S3TcpKeepAliveOptions */ 438*3c7ae9deSAndroid Build Coastguard Worker struct java_aws_s3_tcp_keep_alive_options_properties { 439*3c7ae9deSAndroid Build Coastguard Worker jclass s3_tcp_keep_alive_options_class; 440*3c7ae9deSAndroid Build Coastguard Worker jmethodID s3_tcp_keep_alive_options_constructor_method_id; 441*3c7ae9deSAndroid Build Coastguard Worker jfieldID keep_alive_interval_sec_field_id; 442*3c7ae9deSAndroid Build Coastguard Worker jfieldID keep_alive_timeout_sec_field_id; 443*3c7ae9deSAndroid Build Coastguard Worker jfieldID keep_alive_max_failed_probes_field_id; 444*3c7ae9deSAndroid Build Coastguard Worker }; 445*3c7ae9deSAndroid Build Coastguard Worker extern struct java_aws_s3_tcp_keep_alive_options_properties s3_tcp_keep_alive_options_properties; 446*3c7ae9deSAndroid Build Coastguard Worker 447*3c7ae9deSAndroid Build Coastguard Worker /* ResumeToken */ 448*3c7ae9deSAndroid Build Coastguard Worker struct java_aws_s3_meta_request_resume_token { 449*3c7ae9deSAndroid Build Coastguard Worker jclass s3_meta_request_resume_token_class; 450*3c7ae9deSAndroid Build Coastguard Worker jmethodID s3_meta_request_resume_token_constructor_method_id; 451*3c7ae9deSAndroid Build Coastguard Worker jfieldID native_type_field_id; 452*3c7ae9deSAndroid Build Coastguard Worker jfieldID part_size_field_id; 453*3c7ae9deSAndroid Build Coastguard Worker jfieldID total_num_parts_field_id; 454*3c7ae9deSAndroid Build Coastguard Worker jfieldID num_parts_completed_field_id; 455*3c7ae9deSAndroid Build Coastguard Worker jfieldID upload_id_field_id; 456*3c7ae9deSAndroid Build Coastguard Worker }; 457*3c7ae9deSAndroid Build Coastguard Worker extern struct java_aws_s3_meta_request_resume_token s3_meta_request_resume_token_properties; 458*3c7ae9deSAndroid Build Coastguard Worker 459*3c7ae9deSAndroid Build Coastguard Worker /* mqtt5.packets.ConnAckPacket */ 460*3c7ae9deSAndroid Build Coastguard Worker struct java_aws_mqtt5_connack_packet_properties { 461*3c7ae9deSAndroid Build Coastguard Worker jclass connack_packet_class; 462*3c7ae9deSAndroid Build Coastguard Worker 463*3c7ae9deSAndroid Build Coastguard Worker jmethodID connack_constructor_id; 464*3c7ae9deSAndroid Build Coastguard Worker jmethodID connack_native_add_maximum_qos_id; 465*3c7ae9deSAndroid Build Coastguard Worker jmethodID connack_native_add_reason_code_id; 466*3c7ae9deSAndroid Build Coastguard Worker 467*3c7ae9deSAndroid Build Coastguard Worker jfieldID connack_session_present_field_id; 468*3c7ae9deSAndroid Build Coastguard Worker jfieldID connack_reason_code_field_id; 469*3c7ae9deSAndroid Build Coastguard Worker jfieldID connack_session_expiry_interval_field_id; 470*3c7ae9deSAndroid Build Coastguard Worker jfieldID connack_receive_maximum_field_id; 471*3c7ae9deSAndroid Build Coastguard Worker jfieldID connack_maximum_qos_field_id; 472*3c7ae9deSAndroid Build Coastguard Worker jfieldID connack_retain_available_field_id; 473*3c7ae9deSAndroid Build Coastguard Worker jfieldID connack_maximum_packet_size_field_id; 474*3c7ae9deSAndroid Build Coastguard Worker jfieldID connack_assigned_client_identifier_field_id; 475*3c7ae9deSAndroid Build Coastguard Worker jfieldID connack_topic_alias_maximum_field_id; 476*3c7ae9deSAndroid Build Coastguard Worker jfieldID connack_reason_string_field_id; 477*3c7ae9deSAndroid Build Coastguard Worker jfieldID connack_wildcard_subscriptions_available_field_id; 478*3c7ae9deSAndroid Build Coastguard Worker jfieldID connack_subscription_identifiers_available_field_id; 479*3c7ae9deSAndroid Build Coastguard Worker jfieldID connack_shared_subscriptions_available_field_id; 480*3c7ae9deSAndroid Build Coastguard Worker jfieldID connack_server_keep_alive_field_id; 481*3c7ae9deSAndroid Build Coastguard Worker jfieldID connack_response_information_field_id; 482*3c7ae9deSAndroid Build Coastguard Worker jfieldID connack_server_reference_field_id; 483*3c7ae9deSAndroid Build Coastguard Worker jfieldID connack_user_properties_field_id; 484*3c7ae9deSAndroid Build Coastguard Worker }; 485*3c7ae9deSAndroid Build Coastguard Worker extern struct java_aws_mqtt5_connack_packet_properties mqtt5_connack_packet_properties; 486*3c7ae9deSAndroid Build Coastguard Worker 487*3c7ae9deSAndroid Build Coastguard Worker /* mqtt5.packets.ConnAckPacket.ConnectReasonCode */ 488*3c7ae9deSAndroid Build Coastguard Worker struct java_aws_mqtt5_connect_reason_code_properties { 489*3c7ae9deSAndroid Build Coastguard Worker jclass reason_code_class; 490*3c7ae9deSAndroid Build Coastguard Worker jmethodID code_get_value_id; 491*3c7ae9deSAndroid Build Coastguard Worker jmethodID code_s_get_enum_value_from_integer_id; 492*3c7ae9deSAndroid Build Coastguard Worker }; 493*3c7ae9deSAndroid Build Coastguard Worker extern struct java_aws_mqtt5_connect_reason_code_properties mqtt5_connect_reason_code_properties; 494*3c7ae9deSAndroid Build Coastguard Worker 495*3c7ae9deSAndroid Build Coastguard Worker /* mqtt5.packets.PacketConnnect */ 496*3c7ae9deSAndroid Build Coastguard Worker struct java_aws_mqtt5_connect_packet_properties { 497*3c7ae9deSAndroid Build Coastguard Worker jclass connect_packet_class; 498*3c7ae9deSAndroid Build Coastguard Worker 499*3c7ae9deSAndroid Build Coastguard Worker jfieldID connect_keep_alive_interval_seconds_field_id; 500*3c7ae9deSAndroid Build Coastguard Worker jfieldID connect_client_id_field_id; 501*3c7ae9deSAndroid Build Coastguard Worker jfieldID connect_username_field_id; 502*3c7ae9deSAndroid Build Coastguard Worker jfieldID connect_password_field_id; 503*3c7ae9deSAndroid Build Coastguard Worker jfieldID connect_session_expiry_interval_seconds_field_id; 504*3c7ae9deSAndroid Build Coastguard Worker jfieldID connect_request_response_information_field_id; 505*3c7ae9deSAndroid Build Coastguard Worker jfieldID connect_request_problem_information_field_id; 506*3c7ae9deSAndroid Build Coastguard Worker jfieldID connect_receive_maximum_field_id; 507*3c7ae9deSAndroid Build Coastguard Worker jfieldID connect_maximum_packet_size_bytes_field_id; 508*3c7ae9deSAndroid Build Coastguard Worker jfieldID connect_will_delay_interval_seconds_field_id; 509*3c7ae9deSAndroid Build Coastguard Worker jfieldID connect_will_field_id; 510*3c7ae9deSAndroid Build Coastguard Worker jfieldID connect_user_properties_field_id; 511*3c7ae9deSAndroid Build Coastguard Worker }; 512*3c7ae9deSAndroid Build Coastguard Worker extern struct java_aws_mqtt5_connect_packet_properties mqtt5_connect_packet_properties; 513*3c7ae9deSAndroid Build Coastguard Worker 514*3c7ae9deSAndroid Build Coastguard Worker /* mqtt5.packets.PacketDisconnnect */ 515*3c7ae9deSAndroid Build Coastguard Worker struct java_aws_mqtt5_disconnect_packet_properties { 516*3c7ae9deSAndroid Build Coastguard Worker jclass disconnect_packet_class; 517*3c7ae9deSAndroid Build Coastguard Worker 518*3c7ae9deSAndroid Build Coastguard Worker jmethodID disconnect_constructor_id; 519*3c7ae9deSAndroid Build Coastguard Worker jmethodID disconnect_native_add_disconnect_reason_code_id; 520*3c7ae9deSAndroid Build Coastguard Worker jmethodID disconnect_get_reason_code_id; 521*3c7ae9deSAndroid Build Coastguard Worker 522*3c7ae9deSAndroid Build Coastguard Worker jfieldID disconnect_reason_code_field_id; 523*3c7ae9deSAndroid Build Coastguard Worker jfieldID disconnect_session_expiry_interval_seconds_field_id; 524*3c7ae9deSAndroid Build Coastguard Worker jfieldID disconnect_reason_string_field_id; 525*3c7ae9deSAndroid Build Coastguard Worker jfieldID disconnect_session_server_reference_field_id; 526*3c7ae9deSAndroid Build Coastguard Worker jfieldID disconnect_user_properties_field_id; 527*3c7ae9deSAndroid Build Coastguard Worker }; 528*3c7ae9deSAndroid Build Coastguard Worker extern struct java_aws_mqtt5_disconnect_packet_properties mqtt5_disconnect_packet_properties; 529*3c7ae9deSAndroid Build Coastguard Worker 530*3c7ae9deSAndroid Build Coastguard Worker /* mqtt5.packets.PacketDisconnnect.DisconnectReasonCode */ 531*3c7ae9deSAndroid Build Coastguard Worker struct java_aws_mqtt5_disconnect_reason_code_properties { 532*3c7ae9deSAndroid Build Coastguard Worker jclass reason_code_class; 533*3c7ae9deSAndroid Build Coastguard Worker jmethodID code_get_value_id; 534*3c7ae9deSAndroid Build Coastguard Worker jmethodID code_s_get_enum_value_from_integer_id; 535*3c7ae9deSAndroid Build Coastguard Worker }; 536*3c7ae9deSAndroid Build Coastguard Worker extern struct java_aws_mqtt5_disconnect_reason_code_properties mqtt5_disconnect_reason_code_properties; 537*3c7ae9deSAndroid Build Coastguard Worker 538*3c7ae9deSAndroid Build Coastguard Worker /* mqtt5.packets.PubAckPacket */ 539*3c7ae9deSAndroid Build Coastguard Worker struct java_aws_mqtt5_puback_packet_properties { 540*3c7ae9deSAndroid Build Coastguard Worker jclass puback_packet_class; 541*3c7ae9deSAndroid Build Coastguard Worker jmethodID puback_constructor_id; 542*3c7ae9deSAndroid Build Coastguard Worker jmethodID puback_native_add_reason_code_id; 543*3c7ae9deSAndroid Build Coastguard Worker 544*3c7ae9deSAndroid Build Coastguard Worker jfieldID puback_reason_code_field_id; 545*3c7ae9deSAndroid Build Coastguard Worker jfieldID puback_reason_string_field_id; 546*3c7ae9deSAndroid Build Coastguard Worker jfieldID puback_user_properties_field_id; 547*3c7ae9deSAndroid Build Coastguard Worker }; 548*3c7ae9deSAndroid Build Coastguard Worker extern struct java_aws_mqtt5_puback_packet_properties mqtt5_puback_packet_properties; 549*3c7ae9deSAndroid Build Coastguard Worker 550*3c7ae9deSAndroid Build Coastguard Worker /* mqtt5.packets.PubAckPacket.PubAckReasonCode */ 551*3c7ae9deSAndroid Build Coastguard Worker struct java_aws_mqtt5_puback_reason_code_properties { 552*3c7ae9deSAndroid Build Coastguard Worker jclass reason_code_class; 553*3c7ae9deSAndroid Build Coastguard Worker jmethodID code_get_value_id; 554*3c7ae9deSAndroid Build Coastguard Worker jmethodID code_s_get_enum_value_from_integer_id; 555*3c7ae9deSAndroid Build Coastguard Worker }; 556*3c7ae9deSAndroid Build Coastguard Worker extern struct java_aws_mqtt5_puback_reason_code_properties mqtt5_puback_reason_code_properties; 557*3c7ae9deSAndroid Build Coastguard Worker 558*3c7ae9deSAndroid Build Coastguard Worker /* mqtt5.packets.PublishPacket */ 559*3c7ae9deSAndroid Build Coastguard Worker struct java_aws_mqtt5_publish_packet_properties { 560*3c7ae9deSAndroid Build Coastguard Worker jclass publish_packet_class; 561*3c7ae9deSAndroid Build Coastguard Worker 562*3c7ae9deSAndroid Build Coastguard Worker jmethodID publish_constructor_id; 563*3c7ae9deSAndroid Build Coastguard Worker jmethodID publish_native_set_qos_id; 564*3c7ae9deSAndroid Build Coastguard Worker jmethodID publish_native_set_payload_format_indicator_id; 565*3c7ae9deSAndroid Build Coastguard Worker jmethodID publish_get_qos_id; 566*3c7ae9deSAndroid Build Coastguard Worker jmethodID publish_get_payload_format_id; 567*3c7ae9deSAndroid Build Coastguard Worker 568*3c7ae9deSAndroid Build Coastguard Worker jfieldID publish_payload_field_id; 569*3c7ae9deSAndroid Build Coastguard Worker jfieldID publish_qos_field_id; 570*3c7ae9deSAndroid Build Coastguard Worker jfieldID publish_retain_field_id; 571*3c7ae9deSAndroid Build Coastguard Worker jfieldID publish_topic_field_id; 572*3c7ae9deSAndroid Build Coastguard Worker jfieldID publish_payload_format_field_id; 573*3c7ae9deSAndroid Build Coastguard Worker jfieldID publish_message_expiry_interval_seconds_field_id; 574*3c7ae9deSAndroid Build Coastguard Worker jfieldID publish_topic_alias_field_id; 575*3c7ae9deSAndroid Build Coastguard Worker jfieldID publish_response_topic_field_id; 576*3c7ae9deSAndroid Build Coastguard Worker jfieldID publish_correlation_data_field_id; 577*3c7ae9deSAndroid Build Coastguard Worker jfieldID publish_content_type_field_id; 578*3c7ae9deSAndroid Build Coastguard Worker jfieldID publish_subscription_identifiers_field_id; 579*3c7ae9deSAndroid Build Coastguard Worker jfieldID publish_user_properties_field_id; 580*3c7ae9deSAndroid Build Coastguard Worker }; 581*3c7ae9deSAndroid Build Coastguard Worker extern struct java_aws_mqtt5_publish_packet_properties mqtt5_publish_packet_properties; 582*3c7ae9deSAndroid Build Coastguard Worker 583*3c7ae9deSAndroid Build Coastguard Worker /* mqtt5.packets.PublishPacket.PayloadFormatIndicator */ 584*3c7ae9deSAndroid Build Coastguard Worker struct java_aws_mqtt5_payload_format_indicator_properties { 585*3c7ae9deSAndroid Build Coastguard Worker jclass payload_format_class; 586*3c7ae9deSAndroid Build Coastguard Worker jmethodID format_get_value_id; 587*3c7ae9deSAndroid Build Coastguard Worker jmethodID format_s_get_enum_value_from_integer_id; 588*3c7ae9deSAndroid Build Coastguard Worker }; 589*3c7ae9deSAndroid Build Coastguard Worker extern struct java_aws_mqtt5_payload_format_indicator_properties mqtt5_payload_format_indicator_properties; 590*3c7ae9deSAndroid Build Coastguard Worker 591*3c7ae9deSAndroid Build Coastguard Worker /* mqtt5.NegotiatedSettings */ 592*3c7ae9deSAndroid Build Coastguard Worker struct java_aws_mqtt5_negotiated_settings_properties { 593*3c7ae9deSAndroid Build Coastguard Worker jclass negotiated_settings_class; 594*3c7ae9deSAndroid Build Coastguard Worker 595*3c7ae9deSAndroid Build Coastguard Worker jmethodID negotiated_settings_constructor_id; 596*3c7ae9deSAndroid Build Coastguard Worker jmethodID negotiated_settings_native_set_qos_id; 597*3c7ae9deSAndroid Build Coastguard Worker 598*3c7ae9deSAndroid Build Coastguard Worker jfieldID negotiated_settings_maximum_qos_field_id; 599*3c7ae9deSAndroid Build Coastguard Worker jfieldID negotiated_settings_session_expiry_interval_field_id; 600*3c7ae9deSAndroid Build Coastguard Worker jfieldID negotiated_settings_receive_maximum_from_server_field_id; 601*3c7ae9deSAndroid Build Coastguard Worker jfieldID negotiated_settings_maximum_packet_size_to_server_field_id; 602*3c7ae9deSAndroid Build Coastguard Worker jfieldID negotiated_settings_topic_alias_maximum_to_server_field_id; 603*3c7ae9deSAndroid Build Coastguard Worker jfieldID negotiated_settings_topic_alias_maximum_to_client_field_id; 604*3c7ae9deSAndroid Build Coastguard Worker jfieldID negotiated_settings_server_keep_alive_field_id; 605*3c7ae9deSAndroid Build Coastguard Worker jfieldID negotiated_settings_retain_available_field_id; 606*3c7ae9deSAndroid Build Coastguard Worker jfieldID negotiated_settings_wildcard_subscriptions_available_field_id; 607*3c7ae9deSAndroid Build Coastguard Worker jfieldID negotiated_settings_subscription_identifiers_available_field_id; 608*3c7ae9deSAndroid Build Coastguard Worker jfieldID negotiated_settings_shared_subscriptions_available_field_id; 609*3c7ae9deSAndroid Build Coastguard Worker jfieldID negotiated_settings_rejoined_session_field_id; 610*3c7ae9deSAndroid Build Coastguard Worker jfieldID negotiated_settings_assigned_client_id_field_id; 611*3c7ae9deSAndroid Build Coastguard Worker }; 612*3c7ae9deSAndroid Build Coastguard Worker extern struct java_aws_mqtt5_negotiated_settings_properties mqtt5_negotiated_settings_properties; 613*3c7ae9deSAndroid Build Coastguard Worker 614*3c7ae9deSAndroid Build Coastguard Worker /* http.HttpProxyOptions */ 615*3c7ae9deSAndroid Build Coastguard Worker struct java_aws_http_proxy_options_properties { 616*3c7ae9deSAndroid Build Coastguard Worker jclass http_proxy_options_class; 617*3c7ae9deSAndroid Build Coastguard Worker 618*3c7ae9deSAndroid Build Coastguard Worker jmethodID proxy_get_connection_type_id; 619*3c7ae9deSAndroid Build Coastguard Worker jmethodID proxy_get_proxy_host_id; 620*3c7ae9deSAndroid Build Coastguard Worker jmethodID proxy_get_proxy_port_id; 621*3c7ae9deSAndroid Build Coastguard Worker jmethodID proxy_get_proxy_tls_context_id; 622*3c7ae9deSAndroid Build Coastguard Worker jmethodID proxy_get_proxy_authorization_type_id; 623*3c7ae9deSAndroid Build Coastguard Worker jmethodID proxy_get_authorization_username_id; 624*3c7ae9deSAndroid Build Coastguard Worker jmethodID proxy_get_authorization_password_id; 625*3c7ae9deSAndroid Build Coastguard Worker }; 626*3c7ae9deSAndroid Build Coastguard Worker extern struct java_aws_http_proxy_options_properties http_proxy_options_properties; 627*3c7ae9deSAndroid Build Coastguard Worker 628*3c7ae9deSAndroid Build Coastguard Worker /* http.HttpProxyOptions.HttpProxyConnectionType */ 629*3c7ae9deSAndroid Build Coastguard Worker struct java_aws_http_proxy_connection_type_properties { 630*3c7ae9deSAndroid Build Coastguard Worker jclass http_proxy_connection_type_class; 631*3c7ae9deSAndroid Build Coastguard Worker jmethodID proxy_get_value_id; 632*3c7ae9deSAndroid Build Coastguard Worker }; 633*3c7ae9deSAndroid Build Coastguard Worker extern struct java_aws_http_proxy_connection_type_properties http_proxy_connection_type_properties; 634*3c7ae9deSAndroid Build Coastguard Worker 635*3c7ae9deSAndroid Build Coastguard Worker /* mqtt5.ClientOptions */ 636*3c7ae9deSAndroid Build Coastguard Worker struct java_aws_mqtt5_client_options_properties { 637*3c7ae9deSAndroid Build Coastguard Worker jclass client_options_class; 638*3c7ae9deSAndroid Build Coastguard Worker 639*3c7ae9deSAndroid Build Coastguard Worker // Functions for CRT resource references so we can 640*3c7ae9deSAndroid Build Coastguard Worker // better control them when they are not present 641*3c7ae9deSAndroid Build Coastguard Worker jmethodID options_get_bootstrap_id; 642*3c7ae9deSAndroid Build Coastguard Worker jmethodID options_get_socket_options_id; 643*3c7ae9deSAndroid Build Coastguard Worker jmethodID options_get_tls_options_id; 644*3c7ae9deSAndroid Build Coastguard Worker jmethodID options_get_session_behavior_id; 645*3c7ae9deSAndroid Build Coastguard Worker jmethodID options_get_extended_validation_and_flow_control_options_id; 646*3c7ae9deSAndroid Build Coastguard Worker jmethodID options_get_offline_queue_behavior_id; 647*3c7ae9deSAndroid Build Coastguard Worker jmethodID options_get_retry_jitter_mode_id; 648*3c7ae9deSAndroid Build Coastguard Worker 649*3c7ae9deSAndroid Build Coastguard Worker jfieldID options_host_name_field_id; 650*3c7ae9deSAndroid Build Coastguard Worker jfieldID options_port_field_id; 651*3c7ae9deSAndroid Build Coastguard Worker jfieldID http_proxy_options_field_id; 652*3c7ae9deSAndroid Build Coastguard Worker // We skip connect options since that is passed in directly 653*3c7ae9deSAndroid Build Coastguard Worker // since it can be made outside of the builder 654*3c7ae9deSAndroid Build Coastguard Worker jfieldID session_behavior_field_id; 655*3c7ae9deSAndroid Build Coastguard Worker jfieldID extended_validation_and_flow_control_options_field_id; 656*3c7ae9deSAndroid Build Coastguard Worker jfieldID offline_queue_behavior_field_id; 657*3c7ae9deSAndroid Build Coastguard Worker jfieldID retry_jitter_mode_field_id; 658*3c7ae9deSAndroid Build Coastguard Worker jfieldID min_reconnect_delay_ms_field_id; 659*3c7ae9deSAndroid Build Coastguard Worker jfieldID max_reconnect_delay_ms_field_id; 660*3c7ae9deSAndroid Build Coastguard Worker jfieldID min_connected_time_to_reset_reconnect_delay_ms_field_id; 661*3c7ae9deSAndroid Build Coastguard Worker jfieldID ping_timeout_ms_field_id; 662*3c7ae9deSAndroid Build Coastguard Worker jfieldID connack_timeout_ms_field_id; 663*3c7ae9deSAndroid Build Coastguard Worker jfieldID ack_timeout_seconds_field_id; 664*3c7ae9deSAndroid Build Coastguard Worker jfieldID publish_events_field_id; 665*3c7ae9deSAndroid Build Coastguard Worker jfieldID lifecycle_events_field_id; 666*3c7ae9deSAndroid Build Coastguard Worker jfieldID topic_aliasing_options_field_id; 667*3c7ae9deSAndroid Build Coastguard Worker }; 668*3c7ae9deSAndroid Build Coastguard Worker extern struct java_aws_mqtt5_client_options_properties mqtt5_client_options_properties; 669*3c7ae9deSAndroid Build Coastguard Worker 670*3c7ae9deSAndroid Build Coastguard Worker /* mqtt5.Client */ 671*3c7ae9deSAndroid Build Coastguard Worker struct java_aws_mqtt5_client_properties { 672*3c7ae9deSAndroid Build Coastguard Worker jclass client_class; 673*3c7ae9deSAndroid Build Coastguard Worker jmethodID client_on_websocket_handshake_id; 674*3c7ae9deSAndroid Build Coastguard Worker jmethodID client_set_is_connected; 675*3c7ae9deSAndroid Build Coastguard Worker jfieldID websocket_handshake_field_id; 676*3c7ae9deSAndroid Build Coastguard Worker }; 677*3c7ae9deSAndroid Build Coastguard Worker extern struct java_aws_mqtt5_client_properties mqtt5_client_properties; 678*3c7ae9deSAndroid Build Coastguard Worker 679*3c7ae9deSAndroid Build Coastguard Worker /* mqtt5.Mqtt5ClientOperationStatistics */ 680*3c7ae9deSAndroid Build Coastguard Worker struct java_aws_mqtt5_client_operation_statistics_properties { 681*3c7ae9deSAndroid Build Coastguard Worker jclass statistics_class; 682*3c7ae9deSAndroid Build Coastguard Worker jmethodID statistics_constructor_id; 683*3c7ae9deSAndroid Build Coastguard Worker jfieldID incomplete_operation_count_field_id; 684*3c7ae9deSAndroid Build Coastguard Worker jfieldID incomplete_operation_size_field_id; 685*3c7ae9deSAndroid Build Coastguard Worker jfieldID unacked_operation_count_field_id; 686*3c7ae9deSAndroid Build Coastguard Worker jfieldID unacked_operation_size_field_id; 687*3c7ae9deSAndroid Build Coastguard Worker }; 688*3c7ae9deSAndroid Build Coastguard Worker extern struct java_aws_mqtt5_client_operation_statistics_properties mqtt5_client_operation_statistics_properties; 689*3c7ae9deSAndroid Build Coastguard Worker 690*3c7ae9deSAndroid Build Coastguard Worker /* mqtt5.ClientOptions.ClientSessionBehavior */ 691*3c7ae9deSAndroid Build Coastguard Worker struct java_aws_mqtt5_client_session_behavior_type_properties { 692*3c7ae9deSAndroid Build Coastguard Worker jclass mqtt5_client_session_behavior_class; 693*3c7ae9deSAndroid Build Coastguard Worker jmethodID client_get_value_id; 694*3c7ae9deSAndroid Build Coastguard Worker }; 695*3c7ae9deSAndroid Build Coastguard Worker extern struct java_aws_mqtt5_client_session_behavior_type_properties mqtt5_client_session_behavior_properties; 696*3c7ae9deSAndroid Build Coastguard Worker 697*3c7ae9deSAndroid Build Coastguard Worker /* mqtt5.ClientOptions.ExtendedValidationAndFlowControlOptions */ 698*3c7ae9deSAndroid Build Coastguard Worker struct java_aws_mqtt5_client_extended_validation_and_flow_control_options { 699*3c7ae9deSAndroid Build Coastguard Worker jclass mqtt5_client_extended_validation_and_flow_control_options_class; 700*3c7ae9deSAndroid Build Coastguard Worker jmethodID client_get_value_id; 701*3c7ae9deSAndroid Build Coastguard Worker }; 702*3c7ae9deSAndroid Build Coastguard Worker extern struct java_aws_mqtt5_client_extended_validation_and_flow_control_options 703*3c7ae9deSAndroid Build Coastguard Worker mqtt5_client_extended_validation_and_flow_control_options; 704*3c7ae9deSAndroid Build Coastguard Worker 705*3c7ae9deSAndroid Build Coastguard Worker /* mqtt5.ClientOptions.ClientOfflineQueueBehavior */ 706*3c7ae9deSAndroid Build Coastguard Worker struct java_aws_mqtt5_client_offline_queue_behavior_type_properties { 707*3c7ae9deSAndroid Build Coastguard Worker jclass mqtt5_client_offline_queue_behavior_type_class; 708*3c7ae9deSAndroid Build Coastguard Worker jmethodID client_get_value_id; 709*3c7ae9deSAndroid Build Coastguard Worker }; 710*3c7ae9deSAndroid Build Coastguard Worker extern struct java_aws_mqtt5_client_offline_queue_behavior_type_properties 711*3c7ae9deSAndroid Build Coastguard Worker mqtt5_client_offline_queue_behavior_type_properties; 712*3c7ae9deSAndroid Build Coastguard Worker 713*3c7ae9deSAndroid Build Coastguard Worker /* mqtt5.ClientOptions.JitterMode */ 714*3c7ae9deSAndroid Build Coastguard Worker struct java_aws_mqtt5_client_jitter_mode_properties { 715*3c7ae9deSAndroid Build Coastguard Worker jclass mqtt5_client_jitter_mode_class; 716*3c7ae9deSAndroid Build Coastguard Worker jmethodID client_get_value_id; 717*3c7ae9deSAndroid Build Coastguard Worker }; 718*3c7ae9deSAndroid Build Coastguard Worker extern struct java_aws_mqtt5_client_jitter_mode_properties mqtt5_client_jitter_mode_properties; 719*3c7ae9deSAndroid Build Coastguard Worker 720*3c7ae9deSAndroid Build Coastguard Worker /* mqtt5.Mqtt5ClientOptions.OutboundTopicAliasBehaviorType */ 721*3c7ae9deSAndroid Build Coastguard Worker struct java_aws_mqtt5_outbound_topic_alias_behavior_type_properties { 722*3c7ae9deSAndroid Build Coastguard Worker jclass mqtt5_outbound_topic_alias_behavior_type_class; 723*3c7ae9deSAndroid Build Coastguard Worker jmethodID get_value_method_id; 724*3c7ae9deSAndroid Build Coastguard Worker }; 725*3c7ae9deSAndroid Build Coastguard Worker extern struct java_aws_mqtt5_outbound_topic_alias_behavior_type_properties 726*3c7ae9deSAndroid Build Coastguard Worker mqtt5_outbound_topic_alias_behavior_type_properties; 727*3c7ae9deSAndroid Build Coastguard Worker 728*3c7ae9deSAndroid Build Coastguard Worker /* mqtt5.Mqtt5ClientOptions.InboundTopicAliasBehaviorType */ 729*3c7ae9deSAndroid Build Coastguard Worker struct java_aws_mqtt5_inbound_topic_alias_behavior_type_properties { 730*3c7ae9deSAndroid Build Coastguard Worker jclass mqtt5_inbound_topic_alias_behavior_type_class; 731*3c7ae9deSAndroid Build Coastguard Worker jmethodID get_value_method_id; 732*3c7ae9deSAndroid Build Coastguard Worker }; 733*3c7ae9deSAndroid Build Coastguard Worker extern struct java_aws_mqtt5_inbound_topic_alias_behavior_type_properties 734*3c7ae9deSAndroid Build Coastguard Worker mqtt5_inbound_topic_alias_behavior_type_properties; 735*3c7ae9deSAndroid Build Coastguard Worker 736*3c7ae9deSAndroid Build Coastguard Worker /* mqtt5.Mqtt5ClientOptions.TopicAliasingOptions */ 737*3c7ae9deSAndroid Build Coastguard Worker struct java_aws_mqtt5_topic_aliasing_options_properties { 738*3c7ae9deSAndroid Build Coastguard Worker jclass mqtt5_topic_aliasing_options_class; 739*3c7ae9deSAndroid Build Coastguard Worker 740*3c7ae9deSAndroid Build Coastguard Worker jfieldID outbound_behavior_field_id; 741*3c7ae9deSAndroid Build Coastguard Worker jfieldID outbound_cache_max_size_field_id; 742*3c7ae9deSAndroid Build Coastguard Worker jfieldID inbound_behavior_field_id; 743*3c7ae9deSAndroid Build Coastguard Worker jfieldID inbound_cache_max_size_field_id; 744*3c7ae9deSAndroid Build Coastguard Worker }; 745*3c7ae9deSAndroid Build Coastguard Worker extern struct java_aws_mqtt5_topic_aliasing_options_properties mqtt5_topic_aliasing_options_properties; 746*3c7ae9deSAndroid Build Coastguard Worker 747*3c7ae9deSAndroid Build Coastguard Worker /* mqtt5.packets.SubscribePacket */ 748*3c7ae9deSAndroid Build Coastguard Worker struct java_aws_mqtt5_subscribe_packet_properties { 749*3c7ae9deSAndroid Build Coastguard Worker jclass subscribe_packet_class; 750*3c7ae9deSAndroid Build Coastguard Worker jfieldID subscribe_subscriptions_field_id; 751*3c7ae9deSAndroid Build Coastguard Worker jfieldID subscribe_subscription_identifier_field_id; 752*3c7ae9deSAndroid Build Coastguard Worker jfieldID subscribe_user_properties_field_id; 753*3c7ae9deSAndroid Build Coastguard Worker }; 754*3c7ae9deSAndroid Build Coastguard Worker extern struct java_aws_mqtt5_subscribe_packet_properties mqtt5_subscribe_packet_properties; 755*3c7ae9deSAndroid Build Coastguard Worker 756*3c7ae9deSAndroid Build Coastguard Worker /* mqtt5.packets.SubscribePacket.Subscription */ 757*3c7ae9deSAndroid Build Coastguard Worker struct java_aws_mqtt5_subscription_properties { 758*3c7ae9deSAndroid Build Coastguard Worker jclass subscribe_subscription_class; 759*3c7ae9deSAndroid Build Coastguard Worker jfieldID subscribe_no_local_field_id; 760*3c7ae9deSAndroid Build Coastguard Worker jfieldID subscribe_retain_as_published_field_id; 761*3c7ae9deSAndroid Build Coastguard Worker 762*3c7ae9deSAndroid Build Coastguard Worker jmethodID subscribe_get_topic_filter_id; 763*3c7ae9deSAndroid Build Coastguard Worker jmethodID subscribe_get_qos_id; 764*3c7ae9deSAndroid Build Coastguard Worker jmethodID subscribe_get_no_local_id; 765*3c7ae9deSAndroid Build Coastguard Worker jmethodID subscribe_get_retain_as_published_id; 766*3c7ae9deSAndroid Build Coastguard Worker jmethodID subscribe_get_retain_handling_type_id; 767*3c7ae9deSAndroid Build Coastguard Worker }; 768*3c7ae9deSAndroid Build Coastguard Worker extern struct java_aws_mqtt5_subscription_properties mqtt5_subscription_properties; 769*3c7ae9deSAndroid Build Coastguard Worker 770*3c7ae9deSAndroid Build Coastguard Worker /* mqtt5.QOS */ 771*3c7ae9deSAndroid Build Coastguard Worker struct java_aws_mqtt5_packet_qos_properties { 772*3c7ae9deSAndroid Build Coastguard Worker jclass packet_qos_class; 773*3c7ae9deSAndroid Build Coastguard Worker jmethodID qos_get_value_id; 774*3c7ae9deSAndroid Build Coastguard Worker jmethodID qos_s_get_enum_value_from_integer_id; 775*3c7ae9deSAndroid Build Coastguard Worker }; 776*3c7ae9deSAndroid Build Coastguard Worker extern struct java_aws_mqtt5_packet_qos_properties mqtt5_packet_qos_properties; 777*3c7ae9deSAndroid Build Coastguard Worker 778*3c7ae9deSAndroid Build Coastguard Worker /* mqtt5.packets.SubscribePacket.RetainHandlingType */ 779*3c7ae9deSAndroid Build Coastguard Worker struct java_aws_mqtt5_retain_handling_type_properties { 780*3c7ae9deSAndroid Build Coastguard Worker jclass retain_handling_type_class; 781*3c7ae9deSAndroid Build Coastguard Worker jmethodID retain_get_value_id; 782*3c7ae9deSAndroid Build Coastguard Worker }; 783*3c7ae9deSAndroid Build Coastguard Worker extern struct java_aws_mqtt5_retain_handling_type_properties mqtt5_retain_handling_type_properties; 784*3c7ae9deSAndroid Build Coastguard Worker 785*3c7ae9deSAndroid Build Coastguard Worker /* mqtt5.packets.SubAckPacket.SubAckReasonCode */ 786*3c7ae9deSAndroid Build Coastguard Worker struct java_aws_mqtt5_suback_reason_code_properties { 787*3c7ae9deSAndroid Build Coastguard Worker jclass reason_code_class; 788*3c7ae9deSAndroid Build Coastguard Worker jmethodID reason_get_value_id; 789*3c7ae9deSAndroid Build Coastguard Worker jmethodID reason_s_get_enum_value_from_integer_id; 790*3c7ae9deSAndroid Build Coastguard Worker }; 791*3c7ae9deSAndroid Build Coastguard Worker extern struct java_aws_mqtt5_suback_reason_code_properties mqtt5_suback_reason_code_properties; 792*3c7ae9deSAndroid Build Coastguard Worker 793*3c7ae9deSAndroid Build Coastguard Worker /* mqtt5.packets.SubAckPacket */ 794*3c7ae9deSAndroid Build Coastguard Worker struct java_aws_mqtt5_packet_suback_properties { 795*3c7ae9deSAndroid Build Coastguard Worker jclass suback_packet_class; 796*3c7ae9deSAndroid Build Coastguard Worker jmethodID suback_constructor_id; 797*3c7ae9deSAndroid Build Coastguard Worker jmethodID suback_native_add_suback_code_id; 798*3c7ae9deSAndroid Build Coastguard Worker 799*3c7ae9deSAndroid Build Coastguard Worker jfieldID suback_reason_string_field_id; 800*3c7ae9deSAndroid Build Coastguard Worker jfieldID suback_reason_codes_field_id; 801*3c7ae9deSAndroid Build Coastguard Worker jfieldID suback_user_properties_field_id; 802*3c7ae9deSAndroid Build Coastguard Worker }; 803*3c7ae9deSAndroid Build Coastguard Worker extern struct java_aws_mqtt5_packet_suback_properties mqtt5_suback_packet_properties; 804*3c7ae9deSAndroid Build Coastguard Worker 805*3c7ae9deSAndroid Build Coastguard Worker /* mqtt5.packets.UnsubscribePacket */ 806*3c7ae9deSAndroid Build Coastguard Worker struct java_aws_mqtt5_packet_unsubscribe_properties { 807*3c7ae9deSAndroid Build Coastguard Worker jclass unsubscribe_packet_class; 808*3c7ae9deSAndroid Build Coastguard Worker jfieldID unsubscribe_subscriptions_field_id; 809*3c7ae9deSAndroid Build Coastguard Worker jfieldID unsubscribe_user_properties_field_id; 810*3c7ae9deSAndroid Build Coastguard Worker }; 811*3c7ae9deSAndroid Build Coastguard Worker extern struct java_aws_mqtt5_packet_unsubscribe_properties mqtt5_unsubscribe_packet_properties; 812*3c7ae9deSAndroid Build Coastguard Worker 813*3c7ae9deSAndroid Build Coastguard Worker /* mqtt5.packets.UnsubAckPacket */ 814*3c7ae9deSAndroid Build Coastguard Worker struct java_aws_mqtt5_packet_unsuback_properties { 815*3c7ae9deSAndroid Build Coastguard Worker jclass unsuback_packet_class; 816*3c7ae9deSAndroid Build Coastguard Worker jmethodID unsuback_constructor_id; 817*3c7ae9deSAndroid Build Coastguard Worker jmethodID unsuback_native_add_unsuback_code_id; 818*3c7ae9deSAndroid Build Coastguard Worker 819*3c7ae9deSAndroid Build Coastguard Worker jfieldID unsuback_reason_string_field_id; 820*3c7ae9deSAndroid Build Coastguard Worker jfieldID unsuback_reason_codes_field_id; 821*3c7ae9deSAndroid Build Coastguard Worker jfieldID unsuback_user_properties_field_id; 822*3c7ae9deSAndroid Build Coastguard Worker }; 823*3c7ae9deSAndroid Build Coastguard Worker extern struct java_aws_mqtt5_packet_unsuback_properties mqtt5_unsuback_packet_properties; 824*3c7ae9deSAndroid Build Coastguard Worker 825*3c7ae9deSAndroid Build Coastguard Worker /* mqtt5.packets.UnsubAckPacket.UnsubAckReasonCode */ 826*3c7ae9deSAndroid Build Coastguard Worker struct java_aws_mqtt5_unsuback_reason_code_properties { 827*3c7ae9deSAndroid Build Coastguard Worker jclass reason_code_class; 828*3c7ae9deSAndroid Build Coastguard Worker jmethodID reason_get_value_id; 829*3c7ae9deSAndroid Build Coastguard Worker jmethodID reason_s_get_enum_value_from_integer_id; 830*3c7ae9deSAndroid Build Coastguard Worker }; 831*3c7ae9deSAndroid Build Coastguard Worker extern struct java_aws_mqtt5_unsuback_reason_code_properties mqtt5_unsuback_reason_code_properties; 832*3c7ae9deSAndroid Build Coastguard Worker 833*3c7ae9deSAndroid Build Coastguard Worker /* mqtt5.packets.UserProperty */ 834*3c7ae9deSAndroid Build Coastguard Worker struct java_aws_mqtt5_user_property_properties { 835*3c7ae9deSAndroid Build Coastguard Worker jclass user_property_class; 836*3c7ae9deSAndroid Build Coastguard Worker jmethodID property_constructor_id; 837*3c7ae9deSAndroid Build Coastguard Worker jfieldID property_key_id; 838*3c7ae9deSAndroid Build Coastguard Worker jfieldID property_value_id; 839*3c7ae9deSAndroid Build Coastguard Worker }; 840*3c7ae9deSAndroid Build Coastguard Worker extern struct java_aws_mqtt5_user_property_properties mqtt5_user_property_properties; 841*3c7ae9deSAndroid Build Coastguard Worker 842*3c7ae9deSAndroid Build Coastguard Worker /* mqtt5.Mqtt5ClientOptions.PublishEvents */ 843*3c7ae9deSAndroid Build Coastguard Worker struct java_aws_mqtt5_publish_events { 844*3c7ae9deSAndroid Build Coastguard Worker jclass publish_events_class; 845*3c7ae9deSAndroid Build Coastguard Worker jmethodID publish_events_publish_received_id; 846*3c7ae9deSAndroid Build Coastguard Worker }; 847*3c7ae9deSAndroid Build Coastguard Worker extern struct java_aws_mqtt5_publish_events mqtt5_publish_events_properties; 848*3c7ae9deSAndroid Build Coastguard Worker 849*3c7ae9deSAndroid Build Coastguard Worker /* mqtt5.Mqtt5ClientOptions.LifecycleEvents */ 850*3c7ae9deSAndroid Build Coastguard Worker struct java_aws_mqtt5_lifecycle_events { 851*3c7ae9deSAndroid Build Coastguard Worker jclass lifecycle_events_class; 852*3c7ae9deSAndroid Build Coastguard Worker jmethodID lifecycle_attempting_connect_id; 853*3c7ae9deSAndroid Build Coastguard Worker jmethodID lifecycle_connection_success_id; 854*3c7ae9deSAndroid Build Coastguard Worker jmethodID lifecycle_connection_failure_id; 855*3c7ae9deSAndroid Build Coastguard Worker jmethodID lifecycle_disconnection_id; 856*3c7ae9deSAndroid Build Coastguard Worker jmethodID lifecycle_stopped_id; 857*3c7ae9deSAndroid Build Coastguard Worker }; 858*3c7ae9deSAndroid Build Coastguard Worker extern struct java_aws_mqtt5_lifecycle_events mqtt5_lifecycle_events_properties; 859*3c7ae9deSAndroid Build Coastguard Worker 860*3c7ae9deSAndroid Build Coastguard Worker /* mqtt5.PublishResult */ 861*3c7ae9deSAndroid Build Coastguard Worker struct java_aws_mqtt5_publish_result_properties { 862*3c7ae9deSAndroid Build Coastguard Worker jclass result_class; 863*3c7ae9deSAndroid Build Coastguard Worker jmethodID result_constructor_id; 864*3c7ae9deSAndroid Build Coastguard Worker jmethodID result_puback_constructor_id; 865*3c7ae9deSAndroid Build Coastguard Worker }; 866*3c7ae9deSAndroid Build Coastguard Worker extern struct java_aws_mqtt5_publish_result_properties mqtt5_publish_result_properties; 867*3c7ae9deSAndroid Build Coastguard Worker 868*3c7ae9deSAndroid Build Coastguard Worker /* mqtt5.PublishReturn */ 869*3c7ae9deSAndroid Build Coastguard Worker struct java_aws_mqtt5_publish_return_properties { 870*3c7ae9deSAndroid Build Coastguard Worker jclass return_class; 871*3c7ae9deSAndroid Build Coastguard Worker jmethodID return_constructor_id; 872*3c7ae9deSAndroid Build Coastguard Worker }; 873*3c7ae9deSAndroid Build Coastguard Worker extern struct java_aws_mqtt5_publish_return_properties mqtt5_publish_return_properties; 874*3c7ae9deSAndroid Build Coastguard Worker 875*3c7ae9deSAndroid Build Coastguard Worker /* mqtt5.OnStoppedReturn */ 876*3c7ae9deSAndroid Build Coastguard Worker struct java_aws_mqtt5_on_stopped_return_properties { 877*3c7ae9deSAndroid Build Coastguard Worker jclass return_class; 878*3c7ae9deSAndroid Build Coastguard Worker jmethodID return_constructor_id; 879*3c7ae9deSAndroid Build Coastguard Worker }; 880*3c7ae9deSAndroid Build Coastguard Worker extern struct java_aws_mqtt5_on_stopped_return_properties mqtt5_on_stopped_return_properties; 881*3c7ae9deSAndroid Build Coastguard Worker 882*3c7ae9deSAndroid Build Coastguard Worker /* mqtt5.OnAttemptingConnectReturn */ 883*3c7ae9deSAndroid Build Coastguard Worker struct java_aws_mqtt5_on_attempting_connect_return_properties { 884*3c7ae9deSAndroid Build Coastguard Worker jclass return_class; 885*3c7ae9deSAndroid Build Coastguard Worker jmethodID return_constructor_id; 886*3c7ae9deSAndroid Build Coastguard Worker }; 887*3c7ae9deSAndroid Build Coastguard Worker extern struct java_aws_mqtt5_on_attempting_connect_return_properties mqtt5_on_attempting_connect_return_properties; 888*3c7ae9deSAndroid Build Coastguard Worker 889*3c7ae9deSAndroid Build Coastguard Worker /* mqtt5.OnConnectionSuccessReturn */ 890*3c7ae9deSAndroid Build Coastguard Worker struct java_aws_mqtt5_on_connection_success_return_properties { 891*3c7ae9deSAndroid Build Coastguard Worker jclass return_class; 892*3c7ae9deSAndroid Build Coastguard Worker jmethodID return_constructor_id; 893*3c7ae9deSAndroid Build Coastguard Worker }; 894*3c7ae9deSAndroid Build Coastguard Worker extern struct java_aws_mqtt5_on_connection_success_return_properties mqtt5_on_connection_success_return_properties; 895*3c7ae9deSAndroid Build Coastguard Worker 896*3c7ae9deSAndroid Build Coastguard Worker /* mqtt5.OnConnectionFailureReturn */ 897*3c7ae9deSAndroid Build Coastguard Worker struct java_aws_mqtt5_on_connection_failure_return_properties { 898*3c7ae9deSAndroid Build Coastguard Worker jclass return_class; 899*3c7ae9deSAndroid Build Coastguard Worker jmethodID return_constructor_id; 900*3c7ae9deSAndroid Build Coastguard Worker }; 901*3c7ae9deSAndroid Build Coastguard Worker extern struct java_aws_mqtt5_on_connection_failure_return_properties mqtt5_on_connection_failure_return_properties; 902*3c7ae9deSAndroid Build Coastguard Worker 903*3c7ae9deSAndroid Build Coastguard Worker /* mqtt5.OnDisconnectionReturn */ 904*3c7ae9deSAndroid Build Coastguard Worker struct java_aws_mqtt5_on_disconnection_return_properties { 905*3c7ae9deSAndroid Build Coastguard Worker jclass return_class; 906*3c7ae9deSAndroid Build Coastguard Worker jmethodID return_constructor_id; 907*3c7ae9deSAndroid Build Coastguard Worker }; 908*3c7ae9deSAndroid Build Coastguard Worker extern struct java_aws_mqtt5_on_disconnection_return_properties mqtt5_on_disconnection_return_properties; 909*3c7ae9deSAndroid Build Coastguard Worker 910*3c7ae9deSAndroid Build Coastguard Worker /* java/lang/Integer */ 911*3c7ae9deSAndroid Build Coastguard Worker struct java_boxed_integer_properties { 912*3c7ae9deSAndroid Build Coastguard Worker jclass integer_class; 913*3c7ae9deSAndroid Build Coastguard Worker jmethodID integer_constructor_id; 914*3c7ae9deSAndroid Build Coastguard Worker jmethodID integer_get_value_id; 915*3c7ae9deSAndroid Build Coastguard Worker }; 916*3c7ae9deSAndroid Build Coastguard Worker extern struct java_boxed_integer_properties boxed_integer_properties; 917*3c7ae9deSAndroid Build Coastguard Worker 918*3c7ae9deSAndroid Build Coastguard Worker /* java/lang/Boolean */ 919*3c7ae9deSAndroid Build Coastguard Worker struct java_boxed_boolean_properties { 920*3c7ae9deSAndroid Build Coastguard Worker jclass boolean_class; 921*3c7ae9deSAndroid Build Coastguard Worker jmethodID boolean_constructor_id; 922*3c7ae9deSAndroid Build Coastguard Worker jmethodID boolean_get_value_id; 923*3c7ae9deSAndroid Build Coastguard Worker }; 924*3c7ae9deSAndroid Build Coastguard Worker extern struct java_boxed_boolean_properties boxed_boolean_properties; 925*3c7ae9deSAndroid Build Coastguard Worker 926*3c7ae9deSAndroid Build Coastguard Worker /* java/util/List */ 927*3c7ae9deSAndroid Build Coastguard Worker struct java_boxed_list_properties { 928*3c7ae9deSAndroid Build Coastguard Worker jclass list_class; 929*3c7ae9deSAndroid Build Coastguard Worker jmethodID list_size_id; 930*3c7ae9deSAndroid Build Coastguard Worker jmethodID list_get_id; 931*3c7ae9deSAndroid Build Coastguard Worker jmethodID list_add_id; 932*3c7ae9deSAndroid Build Coastguard Worker }; 933*3c7ae9deSAndroid Build Coastguard Worker extern struct java_boxed_list_properties boxed_list_properties; 934*3c7ae9deSAndroid Build Coastguard Worker 935*3c7ae9deSAndroid Build Coastguard Worker /* java/util/ArrayList */ 936*3c7ae9deSAndroid Build Coastguard Worker struct java_boxed_array_list_properties { 937*3c7ae9deSAndroid Build Coastguard Worker jclass list_class; 938*3c7ae9deSAndroid Build Coastguard Worker jmethodID list_constructor_id; 939*3c7ae9deSAndroid Build Coastguard Worker }; 940*3c7ae9deSAndroid Build Coastguard Worker extern struct java_boxed_array_list_properties boxed_array_list_properties; 941*3c7ae9deSAndroid Build Coastguard Worker 942*3c7ae9deSAndroid Build Coastguard Worker /* S3ExpressCredentialsProviderFactory */ 943*3c7ae9deSAndroid Build Coastguard Worker struct java_s3express_credentials_provider_factory_properties { 944*3c7ae9deSAndroid Build Coastguard Worker jmethodID createS3ExpressCredentialsProvider; 945*3c7ae9deSAndroid Build Coastguard Worker }; 946*3c7ae9deSAndroid Build Coastguard Worker extern struct java_s3express_credentials_provider_factory_properties s3express_credentials_provider_factory_properties; 947*3c7ae9deSAndroid Build Coastguard Worker 948*3c7ae9deSAndroid Build Coastguard Worker /* S3ExpressCredentialsProperties */ 949*3c7ae9deSAndroid Build Coastguard Worker struct java_s3express_credentials_properties_properties { 950*3c7ae9deSAndroid Build Coastguard Worker jclass s3express_credentials_properties_class; 951*3c7ae9deSAndroid Build Coastguard Worker jmethodID constructor_method_id; 952*3c7ae9deSAndroid Build Coastguard Worker jfieldID host_field_id; 953*3c7ae9deSAndroid Build Coastguard Worker jfieldID region_field_id; 954*3c7ae9deSAndroid Build Coastguard Worker }; 955*3c7ae9deSAndroid Build Coastguard Worker extern struct java_s3express_credentials_properties_properties s3express_credentials_properties_properties; 956*3c7ae9deSAndroid Build Coastguard Worker 957*3c7ae9deSAndroid Build Coastguard Worker /* S3ExpressCredentialsProvider */ 958*3c7ae9deSAndroid Build Coastguard Worker struct java_s3express_credentials_provider_properties { 959*3c7ae9deSAndroid Build Coastguard Worker jmethodID getS3ExpressCredentials; 960*3c7ae9deSAndroid Build Coastguard Worker jmethodID destroyProvider; 961*3c7ae9deSAndroid Build Coastguard Worker }; 962*3c7ae9deSAndroid Build Coastguard Worker extern struct java_s3express_credentials_provider_properties s3express_credentials_provider_properties; 963*3c7ae9deSAndroid Build Coastguard Worker 964*3c7ae9deSAndroid Build Coastguard Worker /** 965*3c7ae9deSAndroid Build Coastguard Worker * All functions bound to JNI MUST call this before doing anything else. 966*3c7ae9deSAndroid Build Coastguard Worker * This caches all JNI IDs the first time it is called. Any further calls are no-op; it is thread-safe. 967*3c7ae9deSAndroid Build Coastguard Worker * The reason we do this lazily, rather than simply calling it once from awsCrtInit(), 968*3c7ae9deSAndroid Build Coastguard Worker * is to avoid deadlock when multiple threads init the CRT simultaneously. 969*3c7ae9deSAndroid Build Coastguard Worker * 970*3c7ae9deSAndroid Build Coastguard Worker * See: https://github.com/awslabs/aws-crt-java/pull/670 971*3c7ae9deSAndroid Build Coastguard Worker */ 972*3c7ae9deSAndroid Build Coastguard Worker void aws_cache_jni_ids(JNIEnv *env); 973*3c7ae9deSAndroid Build Coastguard Worker 974*3c7ae9deSAndroid Build Coastguard Worker #endif /* AWS_JNI_CRT_JAVA_CLASS_IDS_H */ 975