140 static std::shared_ptr<Mqtt5ClientBuilder> CreateMqtt5ClientBuilderWithMtlsFromPath(
142 const char *certPath,
143 const char *pkeyPath,
157 static std::shared_ptr<Mqtt5ClientBuilder> CreateMqtt5ClientBuilderWithMtlsFromMemory(
174 static std::shared_ptr<Mqtt5ClientBuilder> CreateMqtt5ClientBuilderWithMtlsPkcs11(
190 static std::shared_ptr<Mqtt5ClientBuilder> CreateMqtt5ClientBuilderWithMtlsPkcs12(
208 static std::shared_ptr<Mqtt5ClientBuilder> CreateMqtt5ClientBuilderWithWindowsCertStorePath(
210 const char *windowsCertStorePath,
222 static std::shared_ptr<Mqtt5ClientBuilder> CreateMqtt5ClientBuilderWithWebsocket(
236 static std::shared_ptr<Mqtt5ClientBuilder> CreateMqtt5ClientBuilderWithCustomAuthorizer(
251 static std::shared_ptr<Mqtt5ClientBuilder> CreateMqtt5ClientBuilderWithCustomAuthorizerWebsocket(
344 const std::shared_ptr<Aws::Crt::Io::L4ProxyConfig> &proxyOptions)
noexcept;
360 Mqtt5ClientBuilder &WithConnectOptions(std::shared_ptr<ConnectPacket> packetConnect)
noexcept;
424 uint64_t minConnectedTimeToResetReconnectDelayMs)
noexcept;
491 std::shared_ptr<Mqtt5Client> Build() noexcept;
496 explicit operator
bool() const noexcept {
return m_lastError == 0; }
501 int LastError() const noexcept {
return m_lastError ? m_lastError : AWS_ERROR_UNKNOWN; }
574 const char *certPath,
575 const char *pkeyPath,
582 const Crt::String hostName,
583 const Crt::ByteCursor &cert,
584 const Crt::ByteCursor &pkey,
585 Crt::Allocator *allocator = Crt::ApiAllocator()) noexcept;
591 const Crt::String hostName,
592 const Crt::Io::TlsContextPkcs11Options &pkcs11Options,
593 Crt::Allocator *allocator = Crt::ApiAllocator()) noexcept;
599 const Crt::String hostName,
601 Crt::Allocator *allocator = Crt::ApiAllocator()) noexcept;
607 const Crt::String hostName,
608 const
char *windowsCertStorePath,
609 Crt::Allocator *allocator = Crt::ApiAllocator()) noexcept;
615 const Crt::String hostName,
617 Crt::Allocator *allocator = Crt::ApiAllocator()) noexcept;
623 const Crt::String hostName,
625 Crt::Allocator *allocator) noexcept;
631 const Crt::String hostName,
634 Crt::Allocator *allocator) noexcept;
646 Crt::Allocator *allocator = Crt::ApiAllocator()) noexcept;
648 Crt::Allocator *m_allocator;
659 Crt::Optional<Crt::Io::TlsContextOptions> m_tlsConnectionOptions;
664 Crt::Optional<Crt::Http::HttpClientConnectionProxyOptions> m_proxyOptions;
666 std::shared_ptr<
Aws::Crt::Io::L4ProxyConfig> m_l4ProxyOptions;
690 bool m_enableMetricsCollection;
691 Crt::String m_sdkName;
692# ifdef AWS_IOT_SDK_VERSION