17 class IoTSDKMetricsEncoder;
24 class DisconnectPacket;
26 class Mqtt5ClientOptions;
27 class NegotiatedSettings;
31 class SubscribePacket;
33 class UnsubscribePacket;
35 class Mqtt5ClientCore;
37 class Mqtt5to3AdapterOptions;
346 std::function<
void(
const std::shared_ptr<Http::HttpRequest> &,
int)>;
374 static std::shared_ptr<Mqtt5Client> NewMqtt5Client(
478 bool InvokePublishAcknowledgement(
499 friend class Mqtt5ClientCore;
500 friend class Mqtt5to3AdapterOptions;
501 friend class Mqtt::IoTSDKMetricsEncoder;
563 const Crt::Http::HttpClientConnectionProxyOptions &proxyOptions)
noexcept;
827 Io::ClientBootstrap *m_bootstrap;
833 Crt::Io::SocketOptions m_socketOptions;
839 Crt::
Optional<Crt::Io::TlsConnectionOptions> m_tlsConnectionOptions;
844 Crt::
Optional<Crt::Http::HttpClientConnectionProxyOptions> m_proxyOptions;
899 bool m_enableMetrics =
true;
900 Crt::
Optional<Crt::Mqtt::AWSIoTMetrics> m_sdkMetrics;
914 mutable Mqtt::AWSIoTMetrics m_finalMetrics;
#define AWS_CRT_CPP_API
Definition Exports.h:36
Definition Mqtt5Packets.h:672
Definition Mqtt5Packets.h:1560
Definition Mqtt5Client.h:363
Definition Mqtt5Client.h:498
Definition Mqtt5Packets.h:53
Definition Mqtt5Packets.h:2038
Definition Mqtt5Packets.h:2244
Definition MqttConnection.h:158
aws_mqtt5_client_operation_queue_behavior_type ClientOperationQueueBehaviorType
Definition Mqtt5Types.h:223
InboundTopicAliasBehaviorType
Definition Mqtt5Client.h:86
std::function< void(const std::shared_ptr< Http::HttpRequest > &, int)> OnWebSocketHandshakeInterceptComplete
Definition Mqtt5Client.h:346
aws_mqtt5_client_session_behavior_type ClientSessionBehaviorType
Definition Mqtt5Types.h:186
std::function< void(const PublishReceivedEventData &)> OnPublishReceivedHandler
Definition Mqtt5Client.h:339
std::function< void(int, std::shared_ptr< PublishResult >)> OnPublishCompletionHandler
Definition Mqtt5Client.h:316
std::function< void(const OnStoppedEventData &)> OnStoppedHandler
Definition Mqtt5Client.h:311
std::function< void(const OnDisconnectionEventData &)> OnDisconnectionHandler
Definition Mqtt5Client.h:299
OutboundTopicAliasBehaviorType
Definition Mqtt5Client.h:48
std::function< void(const OnConnectionSuccessEventData &)> OnConnectionSuccessHandler
Definition Mqtt5Client.h:289
std::function< void(const OnAttemptingConnectEventData &)> OnAttemptingConnectHandler
Definition Mqtt5Client.h:305
aws_exponential_backoff_jitter_mode ExponentialBackoffJitterMode
Definition Mqtt5Types.h:242
std::function< void(std::shared_ptr< Http::HttpRequest >, const OnWebSocketHandshakeInterceptComplete &)> OnWebSocketHandshakeIntercept
Definition Mqtt5Client.h:355
std::function< void(const OnConnectionFailureEventData &)> OnConnectionFailureHandler
Definition Mqtt5Client.h:294
aws_mqtt5_extended_validation_and_flow_control_options ClientExtendedValidationAndFlowControl
Definition Mqtt5Types.h:200
std::function< void(int, std::shared_ptr< UnSubAckPacket >)> OnUnsubscribeCompletionHandler
Definition Mqtt5Client.h:326
std::function< void(int, std::shared_ptr< SubAckPacket >)> OnSubscribeCompletionHandler
Definition Mqtt5Client.h:321
aws_allocator Allocator
Definition Allocator.h:14
AWS_CRT_CPP_API Allocator * ApiAllocator() noexcept
Definition Allocator.cpp:24
std::basic_string< char, std::char_traits< char >, StlAllocator< char > > String
Definition Types.h:45
std::unique_ptr< T, std::function< void(T *)> > ScopedResource
Definition Types.h:168
Definition Allocator.h:11
Definition StringView.h:862
Definition Mqtt5Client.h:184
uint64_t unackedOperationCount
Definition Mqtt5Client.h:201
uint64_t incompleteOperationSize
Definition Mqtt5Client.h:195
uint64_t incompleteOperationCount
Definition Mqtt5Client.h:189
uint64_t unackedOperationSize
Definition Mqtt5Client.h:207
Definition Mqtt5Client.h:215
OnAttemptingConnectEventData()
Definition Mqtt5Client.h:216
Definition Mqtt5Client.h:223
std::shared_ptr< ConnAckPacket > connAckPacket
Definition Mqtt5Client.h:227
int errorCode
Definition Mqtt5Client.h:226
OnConnectionFailureEventData()
Definition Mqtt5Client.h:224
Definition Mqtt5Client.h:234
std::shared_ptr< ConnAckPacket > connAckPacket
Definition Mqtt5Client.h:237
OnConnectionSuccessEventData()
Definition Mqtt5Client.h:235
std::shared_ptr< NegotiatedSettings > negotiatedSettings
Definition Mqtt5Client.h:238
Definition Mqtt5Client.h:245
int errorCode
Definition Mqtt5Client.h:248
std::shared_ptr< DisconnectPacket > disconnectPacket
Definition Mqtt5Client.h:249
OnDisconnectionEventData()
Definition Mqtt5Client.h:246
Definition Mqtt5Client.h:257
OnStoppedEventData()
Definition Mqtt5Client.h:258
Definition Mqtt5Client.h:265
std::function< ScopedResource< PublishAcknowledgementHandle >()> acquirePublishAcknowledgement
Definition Mqtt5Client.h:282
std::shared_ptr< PublishPacket > publishPacket
Definition Mqtt5Client.h:268
PublishReceivedEventData()
Definition Mqtt5Client.h:266
Definition Mqtt5Client.h:153
uint64_t m_minReconnectDelayMs
Definition Mqtt5Client.h:164
uint64_t m_minConnectedTimeToResetReconnectDelayMs
Definition Mqtt5Client.h:177
uint64_t m_maxReconnectDelayMs
Definition Mqtt5Client.h:170
ExponentialBackoffJitterMode m_reconnectMode
Definition Mqtt5Client.h:158
Definition Mqtt5Client.h:109
Crt::Optional< InboundTopicAliasBehaviorType > m_inboundBehavior
Definition Mqtt5Client.h:139
Crt::Optional< OutboundTopicAliasBehaviorType > m_outboundBehavior
Definition Mqtt5Client.h:119
Crt::Optional< uint16_t > m_outboundCacheMaxSize
Definition Mqtt5Client.h:131
Crt::Optional< uint16_t > m_inboundCacheMaxSize
Definition Mqtt5Client.h:149