Dns::IpReceiver Class Referenceabstract

an interface for receiving IP::Addresses from nbgethostbyname() More...

#include <ipcache.h>

Inheritance diagram for Dns::IpReceiver:
Collaboration diagram for Dns::IpReceiver:

Public Member Functions

 ~IpReceiver () override
 
virtual void noteIps (const CachedIps *ips, const LookupDetails &details)=0
 
virtual void noteIp (const Ip::Address &)
 Called when/if nbgethostbyname() discovers a new good IP address. More...
 
virtual void noteLookup (const Dns::LookupDetails &)
 
virtual void * toCbdata ()=0
 

Private Member Functions

virtual void finalizedInCbdataChild ()=0
 hack: ensure CBDATA_CHILD() after a toCbdata()-defining CBDATA_INTERMEDIATE() More...
 

Detailed Description

Definition at line 194 of file ipcache.h.

Constructor & Destructor Documentation

◆ ~IpReceiver()

Dns::IpReceiver::~IpReceiver ( )
inlineoverride

Definition at line 197 of file ipcache.h.

Member Function Documentation

◆ finalizedInCbdataChild()

virtual void CbdataParent::finalizedInCbdataChild ( )
privatepure virtualinherited

◆ noteIp()

virtual void Dns::IpReceiver::noteIp ( const Ip::Address )
inlinevirtual

Reimplemented in PeerSelector.

Definition at line 206 of file ipcache.h.

◆ noteIps()

virtual void Dns::IpReceiver::noteIps ( const CachedIps ips,
const LookupDetails details 
)
pure virtual

Called when nbgethostbyname() fully resolves the name. The ips may contain both bad and good IP addresses, but each good IP (if any) is guaranteed to had been previously reported via noteIp(). When no IPs were obtained, ips is nil.

Implemented in PeerSelector.

◆ noteLookup()

virtual void Dns::IpReceiver::noteLookup ( const Dns::LookupDetails )
inlinevirtual

Called when/if nbgethostbyname() completes a single DNS lookup if called, called before all the noteIp() calls for that DNS lookup.

Reimplemented in PeerSelector.

Definition at line 210 of file ipcache.h.

◆ toCbdata()

virtual void * CbdataParent::toCbdata ( )
pure virtualinherited

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

 

Introduction

Documentation

Support

Miscellaneous

Web Site Translations

Mirrors