Squid Web Cache master
Loading...
Searching...
No Matches
PeerDigest Class Reference

#include <PeerDigest.h>

Collaboration diagram for PeerDigest:
[legend]

Public Member Functions

 CBDATA_DECL_ (PeerDigest, noexcept)
 
 PeerDigest (CachePeer *)
 
 ~PeerDigest ()
 
void noteFetchFinished (const DigestFetchState &, const char *outcomeDescription, bool sawError)
 

Public Attributes

CbcPointer< CachePeerpeer
 pointer back to peer structure, argh
 
CacheDigestcd = nullptr
 
const SBuf host
 copy of peer->host
 
const char * req_result = nullptr
 
struct { 
 
   bool   needed = false 
 
   bool   usable = false 
 
   bool   requested = false 
 
flags 
 
struct { 
 
   time_t   initialized = 0 
 
   time_t   needed = 0 
 
   time_t   next_check = 0 
 
   time_t   retry_delay = 0 
 
   time_t   requested = 0 
 
   time_t   req_delay = 0 
 
   time_t   received = 0 
 
   time_t   disabled = 0 
 
times 
 
struct { 
 
   CacheDigestGuessStats   guess 
 
   int   used_count = 0 
 
   struct { 
 
      int   msgs = 0 
 
      ByteCounter   kbytes 
 
   }   sent 
 
   struct { 
 
      int   msgs = 0 
 
      ByteCounter   kbytes 
 
   }   recv 
 
stats 
 

Detailed Description

Definition at line 74 of file PeerDigest.h.

Constructor & Destructor Documentation

◆ PeerDigest()

PeerDigest::PeerDigest ( CachePeer p)

Definition at line 64 of file peer_digest.cc.

References squid_curtime, and times.

◆ ~PeerDigest()

PeerDigest::~PeerDigest ( )

Definition at line 120 of file peer_digest.cc.

References cd, eventDelete(), eventFind(), peerDigestCheck, and times.

Member Function Documentation

◆ CBDATA_DECL_()

PeerDigest::CBDATA_DECL_ ( PeerDigest  ,
noexcept   
)

◆ noteFetchFinished()

void PeerDigest::noteFetchFinished ( const DigestFetchState finishedFetch,
const char *  outcomeDescription,
bool  sawError 
)

reacts to digest transfer completion \prec DigestFetchState stats were finalized (by calling peerDigestFetchSetStats())

Definition at line 653 of file peer_digest.cc.

References DBG_IMPORTANT, debugs, host, peerDigestIncDelay(), peerDigestNewDelay(), peerDigestSetCheck(), DigestFetchState::resp_time, squid_curtime, and STORE_OK.

Member Data Documentation

◆ cd

CacheDigest* PeerDigest::cd = nullptr

◆ disabled

time_t PeerDigest::disabled = 0

Definition at line 106 of file PeerDigest.h.

◆ [struct]

struct { ... } PeerDigest::flags

◆ guess

CacheDigestGuessStats PeerDigest::guess

Definition at line 110 of file PeerDigest.h.

Referenced by peerDigestStatsReport().

◆ host

◆ initialized

time_t PeerDigest::initialized = 0

Definition at line 99 of file PeerDigest.h.

◆ kbytes

ByteCounter PeerDigest::kbytes

Definition at line 115 of file PeerDigest.h.

Referenced by peerDigestStatsReport().

◆ msgs

int PeerDigest::msgs = 0

Definition at line 114 of file PeerDigest.h.

Referenced by peerDigestStatsReport().

◆ needed [1/2]

bool PeerDigest::needed = false

there were requests for this digest

Definition at line 92 of file PeerDigest.h.

Referenced by peerDigestLookup(), and peerDigestNeeded().

◆ needed [2/2]

time_t PeerDigest::needed = 0

Definition at line 100 of file PeerDigest.h.

◆ next_check

time_t PeerDigest::next_check = 0

Definition at line 101 of file PeerDigest.h.

Referenced by peerDigestCheck(), and peerDigestSetCheck().

◆ peer

CbcPointer<CachePeer> PeerDigest::peer

Definition at line 86 of file PeerDigest.h.

Referenced by finishAndDeleteFetch(), peerDigestCheck(), and peerDigestRequest().

◆ received

time_t PeerDigest::received = 0

Definition at line 105 of file PeerDigest.h.

Referenced by peerDigestCheck().

◆ [struct]

struct { ... } PeerDigest::recv

Referenced by peerDigestStatsReport().

◆ req_delay

time_t PeerDigest::req_delay = 0

Definition at line 104 of file PeerDigest.h.

Referenced by peerDigestStatsReport().

◆ req_result

const char* PeerDigest::req_result = nullptr

text status of the last request

Definition at line 89 of file PeerDigest.h.

Referenced by peerDigestRequest(), and peerDigestStatsReport().

◆ requested [1/2]

bool PeerDigest::requested = false

in process of receiving [fresh] digest

Definition at line 94 of file PeerDigest.h.

Referenced by peerDigestCheck(), peerDigestLookup(), and peerDigestRequest().

◆ requested [2/2]

time_t PeerDigest::requested = 0

Definition at line 103 of file PeerDigest.h.

◆ retry_delay

time_t PeerDigest::retry_delay = 0

Definition at line 102 of file PeerDigest.h.

Referenced by peerDigestIncDelay(), and peerDigestStatsReport().

◆ [struct]

struct { ... } PeerDigest::sent

Referenced by peerDigestStatsReport().

◆ [struct]

struct { ... } PeerDigest::stats

Referenced by peerDigestStatsReport().

◆ [struct]

◆ usable

bool PeerDigest::usable = false

can be used for lookups

Definition at line 93 of file PeerDigest.h.

Referenced by peerDigestLookup().

◆ used_count

int PeerDigest::used_count = 0

Definition at line 111 of file PeerDigest.h.


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