#include <Action.h>


Public Types | |
| typedef RefCount< Action > | Pointer |
Public Member Functions | |
| Action (const CommandPointer &aCmd) | |
| ~Action () override | |
| 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 | add (const Action &action) |
| incrementally merge in remote information (of the same action type) More... | |
| virtual void | respond (const Request &request) |
| respond to Coordinator request; default is to collect and sendResponse More... | |
| virtual void | pack (Ipc::TypedMsgHdr &) const |
| pack collected action info into a message to be sent to Coordinator More... | |
| virtual void | unpack (const Ipc::TypedMsgHdr &) |
| unpack action info from the message received by Coordinator 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 |
Protected Member Functions | |
| virtual void | collect () |
| calculate and keep local action-specific information More... | |
| virtual void | dump (StoreEntry *) |
Private Member Functions | |
| Action (const Action &) | |
| Action & | operator= (const Action &) |
Private Attributes | |
| const CommandPointer | cmd |
| the command that caused this action More... | |
Detailed Description
Base API for organizing the processing of a compiled cache manager command. Not a job because all methods are synchronous (but they may start jobs).
Member Typedef Documentation
◆ Pointer
| typedef RefCount<Action> Mgr::Action::Pointer |
Constructor & Destructor Documentation
◆ Action() [1/2]
| Mgr::Action::Action | ( | const CommandPointer & | aCmd | ) |
◆ ~Action()
◆ Action() [2/2]
|
private |
Member Function Documentation
◆ add()
|
virtual |
Reimplemented in Mgr::CountersAction, Mgr::InfoAction, Mgr::IntervalAction, Mgr::IoAction, Mgr::ServiceTimesAction, Mgr::StoreIoAction, DiskdAction, and SBufStatsAction.
◆ aggregatable()
|
inlinevirtual |
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()
|
inlineprotectedvirtual |
Reimplemented in DiskdAction, Mgr::CountersAction, Mgr::InfoAction, Mgr::IntervalAction, Mgr::IoAction, Mgr::ServiceTimesAction, Mgr::StoreIoAction, and SBufStatsAction.
◆ command()
| const Mgr::Command & Mgr::Action::command | ( | ) | const |
◆ contentType()
|
inlinevirtual |
◆ createStoreEntry()
| StoreEntry * Mgr::Action::createStoreEntry | ( | ) | const |
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()
|
inlineprotectedvirtual |
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 in DiskdAction, Mgr::IndexAction, Mgr::MenuAction, Mgr::ShutdownAction, Mgr::ReconfigureAction, Mgr::RotateAction, Mgr::OfflineToggleAction, Mgr::CountersAction, Mgr::FunAction, Mgr::InfoAction, Mgr::IntervalAction, Mgr::IoAction, Mgr::ServiceTimesAction, Mgr::StoreIoAction, SBufStatsAction, and Ssl::CertificateStorageAction.
◆ fillEntry()
| void Mgr::Action::fillEntry | ( | StoreEntry * | entry, |
| bool | writeHttpHeader | ||
| ) |
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()
◆ operator=()
◆ pack()
|
inlinevirtual |
Reimplemented in DiskdAction, Mgr::CountersAction, Mgr::InfoAction, Mgr::IntervalAction, Mgr::IoAction, Mgr::ServiceTimesAction, Mgr::StoreIoAction, and SBufStatsAction.
◆ respond()
|
virtual |
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()
| void Mgr::Action::run | ( | StoreEntry * | entry, |
| bool | writeHttpHeader | ||
| ) |
◆ sendResponse()
| void Mgr::Action::sendResponse | ( | Ipc::RequestId | requestId | ) |
Definition at line 82 of file Action.cc.
References Ipc::Port::CoordinatorAddr(), Mgr::Response::pack(), and Ipc::SendMessage().
◆ unpack()
|
inlinevirtual |
Reimplemented in DiskdAction, Mgr::CountersAction, Mgr::InfoAction, Mgr::IntervalAction, Mgr::IoAction, Mgr::ServiceTimesAction, Mgr::StoreIoAction, and SBufStatsAction.
Member Data Documentation
◆ cmd
|
private |
Definition at line 86 of file Action.h.
Referenced by Action(), Mgr::IndexAction::Create(), and SBufStatsAction::Create().
The documentation for this class was generated from the following files:
