AWS IoT Device SDK C++ v2 1.44.1
AWS IoT Device SDK C++ v2
Loading...
Searching...
No Matches
DiscoveryClient.h
Go to the documentation of this file.
1#pragma once
7
9
10namespace Aws
11{
12 namespace Discovery
13 {
14 using OnDiscoverResponse = std::function<void(DiscoverResponse *, int errorCode, int httpResponseCode)>;
15
69
70 class AWS_DISCOVERY_API DiscoveryClient final
71 {
72 public:
73 bool Discover(const Crt::String &thingName, const OnDiscoverResponse &onDiscoverResponse) noexcept;
74
75 static std::shared_ptr<DiscoveryClient> CreateClient(
76 const DiscoveryClientConfig &config,
78
79 private:
80 DiscoveryClient(const DiscoveryClientConfig &config, Crt::Allocator *allocator) noexcept;
81
82 std::shared_ptr<Crt::Http::HttpClientConnectionManager> m_connectionManager;
83 Crt::String m_hostName;
84 Crt::Allocator *m_allocator;
85 };
86 } // namespace Discovery
87} // namespace Aws
Definition Bootstrap.h:35
Definition SocketOptions.h:48
Definition Optional.h:19
Definition DiscoverResponse.h:13
Definition DiscoveryClient.h:17
DiscoveryClientConfig & operator=(DiscoveryClientConfig &&rhs)=default
Crt::Optional< Crt::Io::TlsContext > TlsContext
Definition DiscoveryClient.h:38
DiscoveryClientConfig() noexcept
Definition DiscoveryClient.cpp:17
Crt::Optional< Crt::String > ggServerName
Definition DiscoveryClient.h:67
DiscoveryClientConfig(const DiscoveryClientConfig &rhs)=default
Crt::Io::SocketOptions SocketOptions
Definition DiscoveryClient.h:44
DiscoveryClientConfig & operator=(const DiscoveryClientConfig &rhs)=default
Crt::String Region
Definition DiscoveryClient.h:50
size_t MaxConnections
Definition DiscoveryClient.h:55
Crt::Optional< Crt::Http::HttpClientConnectionProxyOptions > ProxyOptions
Definition DiscoveryClient.h:61
Crt::Io::ClientBootstrap * Bootstrap
Definition DiscoveryClient.h:32
DiscoveryClientConfig(DiscoveryClientConfig &&rhs)=default
static std::shared_ptr< DiscoveryClient > CreateClient(const DiscoveryClientConfig &config, Crt::Allocator *allocator=Crt::DefaultAllocator())
Definition DiscoveryClient.cpp:87
bool Discover(const Crt::String &thingName, const OnDiscoverResponse &onDiscoverResponse) noexcept
Definition DiscoveryClient.cpp:108
#define AWS_DISCOVERY_API
Definition Exports.h:19
std::basic_string< char, std::char_traits< char >, StlAllocator< char > > String
Definition Types.h:45
AWS_CRT_CPP_API Allocator * DefaultAllocator() noexcept
Definition Allocator.cpp:17
aws_allocator Allocator
Definition Allocator.h:14
Definition ConnectivityInfo.h:16
std::function< void(DiscoverResponse *, int errorCode, int httpResponseCode)> OnDiscoverResponse
Definition DiscoveryClient.h:14
Definition Allocator.h:11