#include <PeerDigest.h>
Public Member Functions | |
void * | operator new (size_t size) |
void | operator delete (void *address) |
void * | toCbdata () noexcept |
PeerDigest (CachePeer *) | |
~PeerDigest () | |
void | noteFetchFinished (const DigestFetchState &, const char *outcomeDescription, bool sawError) |
Public Attributes | |
CbcPointer< CachePeer > | peer |
pointer back to peer structure, argh More... | |
CacheDigest * | cd = nullptr |
const SBuf | host |
copy of peer->host More... | |
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 |
Static Private Attributes | |
static cbdata_type | CBDATA_PeerDigest = CBDATA_UNKNOWN |
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
◆ 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(), squid_curtime, and STORE_OK.
◆ operator delete()
|
inline |
Definition at line 76 of file PeerDigest.h.
◆ operator new()
|
inline |
Definition at line 76 of file PeerDigest.h.
◆ toCbdata()
|
inlinenoexcept |
Definition at line 76 of file PeerDigest.h.
Member Data Documentation
◆ CBDATA_PeerDigest
|
staticprivate |
Definition at line 76 of file PeerDigest.h.
◆ cd
CacheDigest* PeerDigest::cd = nullptr |
actual digest structure
Definition at line 87 of file PeerDigest.h.
Referenced by peerDigestFetchReply(), peerDigestLookup(), peerDigestNeeded(), peerDigestSetCBlock(), peerDigestStatsReport(), peerDigestUseful(), and ~PeerDigest().
◆ disabled
time_t PeerDigest::disabled = 0 |
Definition at line 106 of file PeerDigest.h.
◆ flags
struct { ... } PeerDigest::flags |
Referenced by peerDigestCheck(), peerDigestLookup(), peerDigestNeeded(), and peerDigestRequest().
◆ guess
CacheDigestGuessStats PeerDigest::guess |
Definition at line 110 of file PeerDigest.h.
Referenced by peerDigestStatsReport().
◆ host
const SBuf PeerDigest::host |
Definition at line 88 of file PeerDigest.h.
Referenced by noteFetchFinished(), peerDigestCheck(), peerDigestSetCBlock(), peerDigestSetCheck(), peerDigestStatsReport(), and peerDigestUseful().
◆ 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.
◆ msgs
int PeerDigest::msgs = 0 |
Definition at line 114 of file PeerDigest.h.
◆ 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().
◆ recv
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().
◆ sent
struct { ... } PeerDigest::sent |
Referenced by peerDigestStatsReport().
◆ stats
struct { ... } PeerDigest::stats |
Referenced by peerDigestStatsReport().
◆ times
struct { ... } PeerDigest::times |
◆ 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:
- src/PeerDigest.h
- src/peer_digest.cc
Introduction
- About Squid
- Why Squid?
- Squid Developers
- How to Donate
- How to Help Out
- Getting Squid
- Squid Source Packages
- Squid Deployment Case-Studies
- Squid Software Foundation
Documentation
- Quick Setup
- Configuration:
- FAQ and Wiki
- Guide Books:
- Non-English
- More...
Support
- Security Advisories
- Bugzilla Database
- Mailing lists
- Contacting us
- Commercial services
- Project Sponsors
- Squid-based products