forwards non-blocking IP cache lookup results to either IPH or IpReciever More...

Collaboration diagram for IpCacheLookupForwarder:

Classes

struct  firstLookupStart
 time of the idnsALookup() call More...
 
struct  lastLookupEnd
 time of the last noteLookup() call More...
 

Public Member Functions

 IpCacheLookupForwarder ()
 
 IpCacheLookupForwarder (const CbcPointer< Dns::IpReceiver > &receiver)
 
 IpCacheLookupForwarder (IPH *fun, void *data)
 
void finalCallback (const Dns::CachedIps *addrs, const Dns::LookupDetails &details)
 forwards notification about the end of the lookup; last method to be called More...
 
bool forwardIp (const Ip::Address &ip)
 
void forwardHits (const Dns::CachedIps &ips)
 convenience wrapper to safely forwardIp() for each IP in the container More...
 
void lookupsStarting ()
 initialize lookup timestamps for Dns::LookupDetails delay calculation More...
 
void forwardLookup (const char *error)
 inform recipient of a finished lookup More...
 
int totalResponseTime () const
 

Protected Member Functions

int additionalLookupDelay () const
 

Private Attributes

CbcPointer< Dns::IpReceiverreceiverObj
 gets incremental and final results More...
 
IPHreceiverFun = nullptr
 gets final results More...
 
CallbackData receiverData
 caller-specific data for the handler (optional) More...
 

Detailed Description

Definition at line 82 of file ipcache.cc.

Constructor & Destructor Documentation

IpCacheLookupForwarder::IpCacheLookupForwarder ( )
inline

Definition at line 85 of file ipcache.cc.

IpCacheLookupForwarder::IpCacheLookupForwarder ( const CbcPointer< Dns::IpReceiver > &  receiver)
explicit

Definition at line 220 of file ipcache.cc.

IpCacheLookupForwarder::IpCacheLookupForwarder ( IPH fun,
void *  data 
)

Definition at line 225 of file ipcache.cc.

Member Function Documentation

int IpCacheLookupForwarder::additionalLookupDelay ( ) const
inlineprotected
Returns
not yet reported lookup delay in milliseconds

Definition at line 110 of file ipcache.cc.

References current_time, and tvSubMsec().

Referenced by forwardLookup().

void IpCacheLookupForwarder::forwardHits ( const Dns::CachedIps ips)
bool IpCacheLookupForwarder::forwardIp ( const Ip::Address ip)

forwards an IP notification

Returns
whether it may be possible to deliver more notifications

Definition at line 250 of file ipcache.cc.

References debugs, receiverObj, CbcPointer< Cbc >::set(), and CbcPointer< Cbc >::valid().

Referenced by ipcache_entry::addGood(), and forwardHits().

void IpCacheLookupForwarder::forwardLookup ( const char *  error)
void IpCacheLookupForwarder::lookupsStarting ( )
inline

Definition at line 100 of file ipcache.cc.

References current_time.

Referenced by ipcache_nbgethostbyname_().

int IpCacheLookupForwarder::totalResponseTime ( ) const
inline
Returns
milliseconds since the first lookup start

Definition at line 106 of file ipcache.cc.

References current_time, and tvSubMsec().

Referenced by ipcacheHandleReply().

Member Data Documentation

CallbackData IpCacheLookupForwarder::receiverData
private

Definition at line 116 of file ipcache.cc.

Referenced by finalCallback().

IPH* IpCacheLookupForwarder::receiverFun = nullptr
private

Definition at line 115 of file ipcache.cc.

Referenced by finalCallback().

CbcPointer<Dns::IpReceiver> IpCacheLookupForwarder::receiverObj
private

Definition at line 114 of file ipcache.cc.

Referenced by finalCallback(), forwardHits(), forwardIp(), and forwardLookup().


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

 

Introduction

Documentation

Support

Miscellaneous

Web Site Translations

Mirrors