userver
C++ Async Framework
Loading...
Searching...
No Matches
resolver_utils.hpp
Go to the documentation of this file.
1
#
pragma
once
2
3
/// @file userver/clients/dns/resolver_utils.hpp
4
/// @brief DNS resolver type and component lookup helpers
5
6
#
include
<
userver
/
clients
/
dns
/
exception
.
hpp
>
7
#
include
<
userver
/
clients
/
dns
/
resolver_fwd
.
hpp
>
8
#
include
<
userver
/
components
/
component_fwd
.
hpp
>
9
10
USERVER_NAMESPACE_BEGIN
11
12
namespace
clients::
dns
{
13
14
/// Resolver types used by the components
15
enum
class
ResolverType
{
16
kGetaddrinfo
,
///< resolve hosts using blocking getaddrinfo call
17
kAsync
,
///< use non-blocking resolver
18
};
19
20
/// Returns pointer to asynchronous resolver interface if required by config
21
/// or nullptr for getaddrinfo
22
/// @throws InvalidConfigException on unknown resolver type in config
23
clients::
dns
::
Resolver
*
GetResolverPtr
(
24
const
components
::ComponentConfig& config,
25
const
components
::ComponentContext& context,
26
ResolverType
default_type =
ResolverType
::
kAsync
27
);
28
29
}
// namespace clients::dns
30
31
USERVER_NAMESPACE_END
userver
clients
dns
resolver_utils.hpp
Generated on Thu May 21 2026 16:18:05 for userver by
Doxygen
1.13.2