9#ifndef SQUID_SRC_PEERPOOLMGR_H
10#define SQUID_SRC_PEERPOOLMGR_H
40 void start()
override;
Maintains an fixed-size "standby" PconnPool for a single CachePeer.
JobWait< Security::BlindPeerConnector > encryptionWait
waits for the established transport connection to be secured/encrypted
void checkpoint(const char *reason)
CBDATA_CHILD(PeerPoolMgr)
void handleSecuredPeer(Security::EncryptorAnswer &answer)
Security::PeerConnector callback.
unsigned int addrUsed
counter for cycling through peer addresses
void openNewConnection()
starts the process of opening a new standby connection (if possible)
void start() override
called by AsyncStart; do not call directly
PrecomputedCodeContextPointer codeContext
RefCount< HttpRequest > request
fake HTTP request for conn opening code
void handleOpenedConnection(const CommConnectCbParams ¶ms)
Comm::ConnOpener calls this when done opening a connection for us.
void closeOldConnections(const int howMany)
closes 'howMany' standby connections
static void Checkpoint(const Pointer &mgr, const char *reason)
bool doneAll() const override
whether positive goal has been reached
CbcPointer< PeerPoolMgr > Pointer
CachePeer * peer
the owner of the pool we manage
JobWait< Comm::ConnOpener > transportWait
waits for a transport connection to the peer to be established/opened
void pushNewConnection(const Comm::ConnectionPointer &conn)
the final step in connection opening (and, optionally, securing) sequence
bool validPeer() const
whether the peer is still out there and in a valid state we can safely use