Classes | Public Types | Public Member Functions | List of all members
grpc_event_engine::experimental::EventEngine::DNSResolver Class Referenceabstract

Provides asynchronous resolution. More...

#include <event_engine.h>

Inheritance diagram for grpc_event_engine::experimental::EventEngine::DNSResolver:
Inheritance graph
[legend]

Classes

struct  LookupTaskHandle
 Task handle for DNS Resolution requests. More...
 
struct  ResolverOptions
 Optional configuration for DNSResolvers. More...
 
struct  SRVRecord
 DNS SRV record type. More...
 

Public Types

using LookupHostnameCallback = std::function< void(absl::StatusOr< std::vector< ResolvedAddress > >)>
 
using LookupSRVCallback = std::function< void(absl::StatusOr< std::vector< SRVRecord > >)>
 Called with a collection of SRV records. More...
 
using LookupTXTCallback = std::function< void(absl::StatusOr< std::string >)>
 Called with the result of a TXT record lookup. More...
 

Public Member Functions

virtual bool CancelLookup (LookupTaskHandle handle)=0
 
virtual LookupTaskHandle LookupHostname (LookupHostnameCallback on_resolve, absl::string_view name, absl::string_view default_port, Duration timeout)=0
 
virtual LookupTaskHandle LookupSRV (LookupSRVCallback on_resolve, absl::string_view name, Duration timeout)=0
 
virtual LookupTaskHandle LookupTXT (LookupTXTCallback on_resolve, absl::string_view name, Duration timeout)=0
 
virtual ~DNSResolver ()=default
 

Detailed Description

Provides asynchronous resolution.

Definition at line 289 of file event_engine.h.

Member Typedef Documentation

◆ LookupHostnameCallback

Called with the collection of sockaddrs that were resolved from a given target address.

Definition at line 311 of file event_engine.h.

◆ LookupSRVCallback

Called with a collection of SRV records.

Definition at line 314 of file event_engine.h.

◆ LookupTXTCallback

Called with the result of a TXT record lookup.

Definition at line 316 of file event_engine.h.

Constructor & Destructor Documentation

◆ ~DNSResolver()

virtual grpc_event_engine::experimental::EventEngine::DNSResolver::~DNSResolver ( )
virtualdefault

Member Function Documentation

◆ CancelLookup()

virtual bool grpc_event_engine::experimental::EventEngine::DNSResolver::CancelLookup ( LookupTaskHandle  handle)
pure virtual

Cancel an asynchronous lookup operation.

This shares the same semantics with EventEngine::Cancel: successfully cancelled lookups will not have their callbacks executed, and this method returns true.

Implemented in grpc_event_engine::experimental::IomgrEventEngine::IomgrDNSResolver.

◆ LookupHostname()

virtual LookupTaskHandle grpc_event_engine::experimental::EventEngine::DNSResolver::LookupHostname ( LookupHostnameCallback  on_resolve,
absl::string_view  name,
absl::string_view  default_port,
Duration  timeout 
)
pure virtual

Asynchronously resolve an address.

default_port may be a non-numeric named service port, and will only be used if address does not already contain a port component.

When the lookup is complete, the on_resolve callback will be invoked with a status indicating the success or failure of the lookup. Implementations should pass the appropriate statuses to the callback. For example, callbacks might expect to receive DEADLINE_EXCEEDED or NOT_FOUND.

If cancelled, on_resolve will not be executed.

Implemented in grpc_event_engine::experimental::IomgrEventEngine::IomgrDNSResolver.

◆ LookupSRV()

virtual LookupTaskHandle grpc_event_engine::experimental::EventEngine::DNSResolver::LookupSRV ( LookupSRVCallback  on_resolve,
absl::string_view  name,
Duration  timeout 
)
pure virtual

Asynchronously perform an SRV record lookup.

on_resolve has the same meaning and expectations as LookupHostname's on_resolve callback.

Implemented in grpc_event_engine::experimental::IomgrEventEngine::IomgrDNSResolver.

◆ LookupTXT()

virtual LookupTaskHandle grpc_event_engine::experimental::EventEngine::DNSResolver::LookupTXT ( LookupTXTCallback  on_resolve,
absl::string_view  name,
Duration  timeout 
)
pure virtual

Asynchronously perform a TXT record lookup.

on_resolve has the same meaning and expectations as LookupHostname's on_resolve callback.

Implemented in grpc_event_engine::experimental::IomgrEventEngine::IomgrDNSResolver.


The documentation for this class was generated from the following file:


grpc
Author(s):
autogenerated on Fri May 16 2025 03:03:39