6 #include <aws/crt/Config.h>
16 using namespace Crt::Mqtt5;
20 class ClientBootstrap;
22 class TlsContextOptions;
23 class WebsocketConfig;
136 static std::shared_ptr<Mqtt5ClientBuilder> CreateMqtt5ClientBuilderWithMtlsFromPath(
138 const char *certPath,
139 const char *pkeyPath,
153 static std::shared_ptr<Mqtt5ClientBuilder> CreateMqtt5ClientBuilderWithMtlsFromMemory(
170 static std::shared_ptr<Mqtt5ClientBuilder> CreateMqtt5ClientBuilderWithMtlsPkcs11(
186 static std::shared_ptr<Mqtt5ClientBuilder> CreateMqtt5ClientBuilderWithMtlsPkcs12(
204 static std::shared_ptr<Mqtt5ClientBuilder> CreateMqtt5ClientBuilderWithWindowsCertStorePath(
206 const char *windowsCertStorePath,
218 static std::shared_ptr<Mqtt5ClientBuilder> CreateMqtt5ClientBuilderWithWebsocket(
232 static std::shared_ptr<Mqtt5ClientBuilder> CreateMqtt5ClientBuilderWithCustomAuthorizer(
247 static std::shared_ptr<Mqtt5ClientBuilder> CreateMqtt5ClientBuilderWithCustomAuthorizerWebsocket(
346 Mqtt5ClientBuilder &WithConnectOptions(std::shared_ptr<ConnectPacket> packetConnect) noexcept;
410 uint64_t minConnectedTimeToResetReconnectDelayMs) noexcept;
477 std::shared_ptr<Mqtt5Client> Build() noexcept;
482 explicit operator bool() const noexcept {
return m_lastError == 0; }
487 int LastError() const noexcept {
return m_lastError ? m_lastError : AWS_ERROR_UNKNOWN; }
560 const char *certPath,
561 const char *pkeyPath,
568 const Crt::
String hostName,
577 const Crt::
String hostName,
578 const Crt::Io::TlsContextPkcs11Options &pkcs11Options,
585 const Crt::
String hostName,
593 const Crt::
String hostName,
594 const
char *windowsCertStorePath,
601 const Crt::
String hostName,
609 const Crt::
String hostName,
617 const Crt::
String hostName,
645 Crt::Optional<Crt::Io::TlsContextOptions> m_tlsConnectionOptions;
650 Crt::Optional<Crt::Http::HttpClientConnectionProxyOptions> m_proxyOptions;
674 bool m_enableMetricsCollection;
676 # ifdef AWS_IOT_SDK_VERSION
686 #endif // !BYO_CRYPTO
#define AWS_CRT_CPP_API
Definition: Exports.h:36
std::function< void(const OnStoppedEventData &)> OnStoppedHandler
Definition: Mqtt5Client.h:311
Definition: Mqtt5Client.h:108
std::function< void(const OnConnectionFailureEventData &)> OnConnectionFailureHandler
Definition: Mqtt5Client.h:294
Definition: Mqtt5Packets.h:671
Definition: StringView.h:861
aws_byte_buf ByteBuf
Definition: Types.h:30
std::basic_string< char, std::char_traits< char >, StlAllocator< char >> String
Definition: Types.h:45
aws_allocator Allocator
Definition: Allocator.h:14
aws_byte_cursor ByteCursor
Definition: Types.h:31
Definition: HttpConnection.h:298
aws_mqtt5_extended_validation_and_flow_control_options ClientExtendedValidationAndFlowControl
Definition: Mqtt5Types.h:200
Definition: MqttCommon.h:23
int LastError() const noexcept
Definition: Mqtt5Client.h:487
aws_mqtt5_client_operation_queue_behavior_type ClientOperationQueueBehaviorType
Definition: Mqtt5Types.h:223
std::function< void(const OnConnectionSuccessEventData &)> OnConnectionSuccessHandler
Definition: Mqtt5Client.h:289
Definition: MqttCommon.h:104
aws_mqtt5_client_session_behavior_type ClientSessionBehaviorType
Definition: Mqtt5Types.h:186
AWS_CRT_CPP_API Allocator * ApiAllocator() noexcept
Definition: Allocator.cpp:24
Definition: Mqtt5Client.h:152
Definition: Mqtt5Client.h:32
Definition: Bootstrap.h:34
Definition: Mqtt5Client.h:122
std::function< void(const OnDisconnectionEventData &)> OnDisconnectionHandler
Definition: Mqtt5Client.h:299
Definition: Mqtt5Client.h:497
Definition: TlsOptions.h:241
std::function< void(const OnAttemptingConnectEventData &)> OnAttemptingConnectHandler
Definition: Mqtt5Client.h:305
std::function< void(const PublishReceivedEventData &)> OnPublishReceivedHandler
Definition: Mqtt5Client.h:339
~Mqtt5ClientBuilder()
Definition: Mqtt5Client.h:489
Definition: SocketOptions.h:69
Definition: Allocator.h:10