aws-crt-cpp
C++ wrapper around the aws-c-* libraries. Provides Cross-Platform Transport Protocols and SSL/TLS implementations for C++.
MqttCommon.h
Go to the documentation of this file.
1 #pragma once
2 
6 #include <aws/crt/Config.h>
7 #include <aws/crt/Exports.h>
10 
11 #if !BYO_CRYPTO
12 
13 namespace Aws
14 {
15  namespace Iot
16  {
17 
18  using CreateSigningConfig = std::function<std::shared_ptr<Crt::Auth::ISigningConfig>(void)>;
19 
24  {
36  const Crt::String &signingRegion,
37  Crt::Io::ClientBootstrap *bootstrap,
38  Crt::Allocator *allocator = Crt::ApiAllocator()) noexcept;
39 
51  WebsocketConfig(const Crt::String &signingRegion, Crt::Allocator *allocator = Crt::ApiAllocator()) noexcept;
52 
63  const Crt::String &signingRegion,
64  const std::shared_ptr<Crt::Auth::ICredentialsProvider> &credentialsProvider,
65  Crt::Allocator *allocator = Crt::ApiAllocator()) noexcept;
66 
81  const std::shared_ptr<Crt::Auth::ICredentialsProvider> &credentialsProvider,
82  const std::shared_ptr<Crt::Auth::IHttpRequestSigner> &signer,
83  CreateSigningConfig createSigningConfig) noexcept;
84 
85  std::shared_ptr<Crt::Auth::ICredentialsProvider> CredentialsProvider;
86  std::shared_ptr<Crt::Auth::IHttpRequestSigner> Signer;
88 
98  };
99 
105  {
108  };
109 
110  } // namespace Iot
111 } // namespace Aws
112 
113 #endif // !BYO_CRYPTO
Crt::Optional< Crt::Http::HttpClientConnectionProxyOptions > ProxyOptions
Definition: MqttCommon.h:95
Crt::String ServiceName
Definition: MqttCommon.h:97
#define AWS_CRT_CPP_API
Definition: Exports.h:36
std::shared_ptr< Crt::Auth::ICredentialsProvider > CredentialsProvider
Definition: MqttCommon.h:85
Crt::String pkcs12_password
Definition: MqttCommon.h:107
std::basic_string< char, std::char_traits< char >, StlAllocator< char >> String
Definition: Types.h:45
aws_allocator Allocator
Definition: Allocator.h:14
Definition: MqttCommon.h:23
Definition: MqttCommon.h:104
AWS_CRT_CPP_API Allocator * ApiAllocator() noexcept
Definition: Allocator.cpp:24
std::shared_ptr< Crt::Auth::IHttpRequestSigner > Signer
Definition: MqttCommon.h:86
CreateSigningConfig CreateSigningConfigCb
Definition: MqttCommon.h:87
Definition: Bootstrap.h:34
Crt::String SigningRegion
Definition: MqttCommon.h:96
Crt::String pkcs12_file
Definition: MqttCommon.h:106
Definition: Allocator.h:10
std::function< std::shared_ptr< Crt::Auth::ISigningConfig >(void)> CreateSigningConfig
Definition: MqttCommon.h:18