implement aggregated interval actions More...
#include <IntervalAction.h>
Public Types | |
typedef RefCount< Action > | Pointer |
Public Member Functions | |
void | add (const Action &action) override |
incrementally merge in remote information (of the same action type) More... | |
void | pack (Ipc::TypedMsgHdr &msg) const override |
pack collected action info into a message to be sent to Coordinator More... | |
void | unpack (const Ipc::TypedMsgHdr &msg) override |
unpack action info from the message received by Coordinator More... | |
void | run (StoreEntry *entry, bool writeHttpHeader) |
collect + fillEntry: collect local information and fill the store entry More... | |
void | fillEntry (StoreEntry *entry, bool writeHttpHeader) |
prepare store entry, dump info, close store entry (if possible) More... | |
virtual void | respond (const Request &request) |
respond to Coordinator request; default is to collect and sendResponse More... | |
void | sendResponse (Ipc::RequestId) |
notify Coordinator that this action is done with local processing More... | |
virtual bool | aggregatable () const |
bool | atomic () const |
dump() call writes everything before returning More... | |
const char * | name () const |
label as seen in the cache manager menu More... | |
const Command & | command () const |
the cause of this action More... | |
StoreEntry * | createStoreEntry () const |
creates store entry from params More... | |
virtual const char * | contentType () const |
Static Public Member Functions | |
static Pointer | Create5min (const CommandPointer &cmd) |
static Pointer | Create60min (const CommandPointer &cmd) |
Protected Member Functions | |
IntervalAction (const CommandPointer &cmd, int aMinutes, int aHours) | |
void | collect () override |
calculate and keep local action-specific information More... | |
void | dump (StoreEntry *entry) override |
Private Attributes | |
int | minutes |
int | hours |
IntervalActionData | data |
const CommandPointer | cmd |
the command that caused this action More... | |
Detailed Description
Definition at line 110 of file IntervalAction.h.
Member Typedef Documentation
◆ Pointer
|
inherited |
Constructor & Destructor Documentation
◆ IntervalAction()
|
protected |
Definition at line 128 of file IntervalAction.cc.
Member Function Documentation
◆ add()
|
overridevirtual |
Reimplemented from Mgr::Action.
Definition at line 135 of file IntervalAction.cc.
◆ aggregatable()
|
inlinevirtualinherited |
whether at least some local kid info can be combined and, hence, the combined data should be written at the end of the coordinated response
Reimplemented in Mgr::FunAction, and Ssl::CertificateStorageAction.
◆ atomic()
◆ collect()
|
overrideprotectedvirtual |
Reimplemented from Mgr::Action.
Definition at line 142 of file IntervalAction.cc.
References GetAvgStat().
◆ command()
|
inherited |
◆ contentType()
|
inlinevirtualinherited |
◆ Create5min()
|
static |
Definition at line 117 of file IntervalAction.cc.
Referenced by statRegisterWithCacheManager().
◆ Create60min()
|
static |
Definition at line 123 of file IntervalAction.cc.
Referenced by statRegisterWithCacheManager().
◆ createStoreEntry()
|
inherited |
Content-Type: header value for this report
Definition at line 55 of file Action.cc.
References Mgr::ActionParams::httpFlags, Mgr::ActionParams::httpMethod, Mgr::ActionParams::httpUri, storeCreateEntry(), and String::termedBuf().
◆ dump()
|
overrideprotectedvirtual |
start writing action-specific info to Store entry; may collect info during dump, especially if collect() did nothing non-atomic() actions may continue writing asynchronously after returning
Reimplemented from Mgr::Action.
Definition at line 148 of file IntervalAction.cc.
References debugs, DumpAvgStat(), Must, and MYNAME.
◆ fillEntry()
|
inherited |
Definition at line 99 of file Action.cc.
References StoreEntry::buffer(), StoreEntry::complete(), debugs, StoreEntry::flush(), MYNAME, CacheManager::PutCommonResponseHeaders(), StoreEntry::replaceHttpReply(), Http::scOkay, HttpReply::setHeaders(), and squid_curtime.
◆ name()
◆ pack()
|
overridevirtual |
Reimplemented from Mgr::Action.
Definition at line 156 of file IntervalAction.cc.
References Ipc::mtCacheMgrResponse, Ipc::TypedMsgHdr::putPod(), and Ipc::TypedMsgHdr::setType().
◆ respond()
|
virtualinherited |
Reimplemented in Mgr::FunAction, and Mgr::InfoAction.
Definition at line 68 of file Action.cc.
References Mgr::Request::conn, debugs, Comm::Connection::fd, MYNAME, and Ipc::Request::requestId.
◆ run()
|
inherited |
◆ sendResponse()
|
inherited |
Definition at line 82 of file Action.cc.
References Ipc::Port::CoordinatorAddr(), Mgr::Response::pack(), and Ipc::SendMessage().
◆ unpack()
|
overridevirtual |
Reimplemented from Mgr::Action.
Definition at line 163 of file IntervalAction.cc.
References Ipc::TypedMsgHdr::checkType(), Ipc::TypedMsgHdr::getPod(), and Ipc::mtCacheMgrResponse.
Member Data Documentation
◆ cmd
|
privateinherited |
Definition at line 86 of file Action.h.
Referenced by Mgr::Action::Action(), Mgr::IndexAction::Create(), and SBufStatsAction::Create().
◆ data
|
private |
Definition at line 131 of file IntervalAction.h.
◆ hours
|
private |
Definition at line 130 of file IntervalAction.h.
◆ minutes
|
private |
Definition at line 129 of file IntervalAction.h.
The documentation for this class was generated from the following files:
- src/mgr/IntervalAction.h
- src/mgr/IntervalAction.cc