|
Squid Web Cache master
|
Public Types | |
| typedef RefCount< htcpSpecifier > | Pointer |
Public Member Functions | |
| void | checkHit () |
| void | checkedHit (StoreEntry *) |
| void | setFrom (Ip::Address &anIp) |
| void | setDataHeader (htcpDataHeader *aDataHeader) |
| ScopedId | codeContextGist () const override |
| std::ostream & | detailCodeContext (std::ostream &os) const override |
| appends human-friendly context description line(s) to a cache.log record | |
| LogTags * | loggingTags () const override |
| void | fillChecklist (ACLFilledChecklist &) const override |
| configure the given checklist (to reflect the current transaction state) | |
Static Public Member Functions | |
| static const Pointer & | Current () |
| static void | Reset () |
| forgets the current context, setting it to nil/unknown | |
| static void | Reset (const Pointer) |
| changes the current context; nil argument sets it to nil/unknown | |
Public Attributes | |
| const char * | method = nullptr |
| const char * | uri = nullptr |
| char * | version = nullptr |
| char * | req_hdrs = nullptr |
| size_t | reqHdrsSz = 0 |
| size of the req_hdrs content | |
| HttpRequest::Pointer | request |
| AccessLogEntryPointer | al |
| optimization: nil until needed | |
| Stopwatch | busyTime |
| time spent in this context (see also: busy_time) | |
Protected Member Functions | |
| bool | startCollapsingOn (const StoreEntry &, const bool doingRevalidation) const |
| bool | mayInitiateCollapsing () const |
| whether Squid configuration allows us to become a CF initiator | |
| bool | onCollapsingPath () const |
| whether Squid configuration allows collapsing for this transaction | |
Protected Attributes | |
| bool | didCollapse = false |
| whether startCollapsingOn() was called and returned true | |
Private Member Functions | |
| MEMPROXY_CLASS (htcpSpecifier) | |
Static Private Member Functions | |
| static void | ForgetCurrent () |
| static void | Entering (const Pointer &codeCtx) |
| static void | Leaving () |
Private Attributes | |
| HttpRequest::Pointer | checkHitRequest |
| Ip::Address | from |
| htcpDataHeader * | dhdr = nullptr |
| typedef RefCount<htcpSpecifier> htcpSpecifier::Pointer |
| void htcpSpecifier::checkedHit | ( | StoreEntry * | e | ) |
Definition at line 1227 of file htcp.cc.
References al, dhdr, from, htcpLogHtcp(), htcpTstReply(), LOG_UDP_HIT, LOG_UDP_MISS, _htcpDataHeader::opcode, and uri.
Referenced by checkHit().
| void htcpSpecifier::checkHit | ( | ) |
Definition at line 993 of file htcp.cc.
References checkedHit(), checkHitRequest, debugs, StoreClient::didCollapse, RefCount< C >::getRaw(), HttpRequest::parseHeader(), refreshCheckHTCP(), req_hdrs, reqHdrsSz, request, StoreClient::startCollapsingOn(), and storeGetPublicByRequest().
|
overridevirtual |
Implements CodeContext.
Definition at line 961 of file htcp.cc.
References al, AccessLogEntry::codeContextGist(), HttpRequest::masterXaction, and request.
|
staticinherited |
Definition at line 33 of file CodeContext.cc.
Referenced by CallAndRestore_(), CallSubscription< Call_ >::callback(), CallContextCreator(), clientConnectionsClose(), clientHttpConnectionsOpen(), commStartHalfClosedMonitor(), CurrentCodeContextDetail(), HappyOrderEnforcer::enqueue(), CommQuotaQueue::enqueue(), StoreEntry::invokeHandlers(), neighborsUdpPing(), peerDnsRefreshStart(), Security::KeyLog::record(), CodeContext::Reset(), ScheduleCall(), Ftp::StartListening(), Ftp::StopListening(), tunnelDelayedClientRead(), and tunnelDelayedServerRead().
|
overridevirtual |
Implements CodeContext.
Definition at line 978 of file htcp.cc.
References al, AccessLogEntry::detailCodeContext(), Debug::Extra(), HttpRequest::masterXaction, and request.
|
staticprivateinherited |
Switches the current context to the given known context. Improves debugging output by replacing omni-directional "Reset" with directional "Entering".
Definition at line 55 of file CodeContext.cc.
References CodeContext::busyTime, CodeContext::codeContextGist(), debugs, CodeContext::ForgetCurrent(), and Stopwatch::resume().
Referenced by CodeContext::Reset().
|
overridevirtual |
Implements Acl::ChecklistFiller.
Definition at line 1043 of file htcp.cc.
References ACLFilledChecklist::al, al, dhdr, from, RefCount< C >::getRaw(), htcpSyncAle(), _htcpDataHeader::opcode, request, ACLFilledChecklist::setRequest(), and uri.
|
staticprivateinherited |
Forgets the current known context, possibly triggering its destruction. Preserves the gist of the being-forgotten context during its destruction. Knows nothing about the next context – the caller must set it.
Definition at line 42 of file CodeContext.cc.
References assert.
Referenced by CodeContext::Entering(), and CodeContext::Leaving().
|
staticprivateinherited |
Forgets the current known context. Improves debugging output by replacing omni-directional "Reset" with directional "Leaving".
Definition at line 68 of file CodeContext.cc.
References debugs, and CodeContext::ForgetCurrent().
Referenced by CodeContext::Reset(), and CodeContext::Reset().
|
overridevirtual |
Implements StoreClient.
Definition at line 1034 of file htcp.cc.
References al, AccessLogEntry::cache, and AccessLogEntry::CacheDetails::code.
|
inlineprotectedinherited |
Definition at line 59 of file StoreClient.h.
References StoreClient::onCollapsingPath().
Referenced by clientReplyContext::createStoreEntry(), and clientReplyContext::processExpired().
|
private |
|
protectedinherited |
Definition at line 52 of file store_client.cc.
References SquidConfig::accessList, Acl::Answer::allowed(), SquidConfig::collapsed_forwarding, SquidConfig::collapsedForwardingAccess, Config, ACLChecklist::fastCheck(), Acl::ChecklistFiller::fillChecklist(), and SquidConfig::onoff.
Referenced by StoreClient::mayInitiateCollapsing(), and StoreClient::startCollapsingOn().
|
staticinherited |
Definition at line 77 of file CodeContext.cc.
References CodeContext::Leaving().
Referenced by ClientHttpRequest::ClientHttpRequest(), CodeContextGuard::CodeContextGuard(), CodeContextGuard::~CodeContextGuard(), CallAndRestore_(), CallContextCreator(), checkTimeouts(), clientConnectionsClose(), clientHttpConnectionsOpen(), comm_close_complete(), Http::Stream::finished(), AsyncCallQueue::fire(), StoreEntry::invokeHandlers(), neighborsUdpPing(), peerCountMcastPeersCreateAndSend(), peerDnsRefreshStart(), ConnStateData::postHttpsAccept(), Ftp::StartListening(), Ftp::StopListening(), tunnelDelayedClientRead(), and tunnelDelayedServerRead().
|
staticinherited |
Definition at line 84 of file CodeContext.cc.
References CodeContext::Current(), CodeContext::Entering(), and CodeContext::Leaving().
|
inline |
|
inline |
|
protectedinherited |
Definition at line 66 of file store_client.cc.
References debugs, StoreClient::didCollapse, StoreEntry::hittingRequiresCollapsing(), StoreClient::loggingTags(), and StoreClient::onCollapsingPath().
Referenced by checkHit(), ICPState::confirmAndPrepHit(), clientReplyContext::identifyFoundObject(), clientReplyContext::processExpired(), and UrnState::start().
|
mutable |
Definition at line 158 of file htcp.cc.
Referenced by checkedHit(), codeContextGist(), detailCodeContext(), fillChecklist(), and loggingTags().
|
inherited |
Definition at line 76 of file CodeContext.h.
Referenced by Format::Format::assemble(), and CodeContext::Entering().
|
private |
Definition at line 161 of file htcp.cc.
Referenced by checkHit().
|
private |
Definition at line 164 of file htcp.cc.
Referenced by checkedHit(), fillChecklist(), and setDataHeader().
|
mutableprotectedinherited |
Definition at line 64 of file StoreClient.h.
Referenced by clientReplyContext::cacheHit(), checkHit(), ICPState::confirmAndPrepHit(), and StoreClient::startCollapsingOn().
|
private |
Definition at line 163 of file htcp.cc.
Referenced by checkedHit(), fillChecklist(), and setFrom().
| const char* htcpSpecifier::method = nullptr |
Definition at line 150 of file htcp.cc.
Referenced by htcpBuildSpecifier(), htcpClear(), htcpQuery(), and htcpTstReply().
| char* htcpSpecifier::req_hdrs = nullptr |
Definition at line 153 of file htcp.cc.
Referenced by checkHit(), htcpBuildSpecifier(), htcpClear(), htcpQuery(), and htcpTstReply().
| size_t htcpSpecifier::reqHdrsSz = 0 |
Definition at line 154 of file htcp.cc.
Referenced by checkHit(), htcpBuildSpecifier(), and htcpTstReply().
| HttpRequest::Pointer htcpSpecifier::request |
Definition at line 155 of file htcp.cc.
Referenced by checkHit(), codeContextGist(), detailCodeContext(), fillChecklist(), htcpClear(), and htcpTstReply().
| const char* htcpSpecifier::uri = nullptr |
Definition at line 151 of file htcp.cc.
Referenced by checkedHit(), fillChecklist(), htcpBuildSpecifier(), htcpClear(), htcpQuery(), and htcpTstReply().
| char* htcpSpecifier::version = nullptr |
Definition at line 152 of file htcp.cc.
Referenced by htcpBuildSpecifier(), htcpClear(), htcpQuery(), and htcpTstReply().