implement aggregated interval actions More...

#include <IntervalAction.h>

Inheritance diagram for Mgr::IntervalAction:
Collaboration diagram for Mgr::IntervalAction:

Public Types

typedef RefCount< ActionPointer

Public Member Functions

virtual void add (const Action &action)
 incrementally merge in remote information (of the same action type) More...
virtual void pack (Ipc::TypedMsgHdr &msg) const
 pack collected action info into a message to be sent to Coordinator More...
virtual void unpack (const Ipc::TypedMsgHdr &msg)
 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 (unsigned int 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 Commandcommand () const
 the cause of this action More...
StoreEntrycreateStoreEntry () 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)
virtual void collect ()
 calculate and keep local action-specific information More...
virtual void dump (StoreEntry *entry)

Private Attributes

int minutes
int hours
IntervalActionData data

Detailed Description

Definition at line 105 of file IntervalAction.h.

Member Typedef Documentation

◆ Pointer

typedef RefCount<Action> Mgr::Action::Pointer

Definition at line 27 of file Action.h.

Constructor & Destructor Documentation

◆ IntervalAction()

Mgr::IntervalAction::IntervalAction ( const CommandPointer cmd,
int  aMinutes,
int  aHours 

Definition at line 123 of file

References debugs, and HERE().

Member Function Documentation

◆ add()

void Mgr::IntervalAction::add ( const Action action)

Reimplemented from Mgr::Action.

Definition at line 130 of file

References action(), data, debugs, and HERE().

◆ aggregatable()

virtual bool Mgr::Action::aggregatable ( ) const

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 Ssl::CertificateStorageAction, and Mgr::FunAction.

Definition at line 64 of file Action.h.

References Mgr::Action::atomic(), Mgr::Action::command(), Mgr::Action::createStoreEntry(), and Mgr::Action::name().

◆ atomic()

bool Mgr::Action::atomic ( ) const

◆ collect()

void Mgr::IntervalAction::collect ( )

Reimplemented from Mgr::Action.

Definition at line 137 of file

References data, GetAvgStat(), hours, and minutes.

◆ command()

const Mgr::Command & Mgr::Action::command ( ) const

◆ contentType()

virtual const char* Mgr::Action::contentType ( ) const

Definition at line 73 of file Action.h.

Referenced by Mgr::Action::fillEntry().

◆ Create5min()

Mgr::IntervalAction::Pointer Mgr::IntervalAction::Create5min ( const CommandPointer cmd)

Definition at line 112 of file

Referenced by statRegisterWithCacheManager().

◆ Create60min()

Mgr::IntervalAction::Pointer Mgr::IntervalAction::Create60min ( const CommandPointer cmd)

Definition at line 118 of file

Referenced by statRegisterWithCacheManager().

◆ createStoreEntry()

StoreEntry * Mgr::Action::createStoreEntry ( ) const

◆ dump()

void Mgr::IntervalAction::dump ( StoreEntry )

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 143 of file

References data, debugs, DumpAvgStat(), HERE(), Must, and NULL.

◆ fillEntry()

◆ name()

const char * Mgr::Action::name ( ) const

Definition at line 49 of file

References Mgr::Action::command(), and Mgr::Command::profile.

Referenced by Mgr::Action::aggregatable().

◆ pack()

void Mgr::IntervalAction::pack ( Ipc::TypedMsgHdr ) const

Reimplemented from Mgr::Action.

Definition at line 151 of file

References data, Ipc::mtCacheMgrResponse, Ipc::TypedMsgHdr::putPod(), and Ipc::TypedMsgHdr::setType().

◆ respond()

void Mgr::Action::respond ( const Request request)

◆ run()

void Mgr::Action::run ( StoreEntry entry,
bool  writeHttpHeader 

Definition at line 91 of file

References Mgr::Action::collect(), debugs, Mgr::Action::fillEntry(), and HERE().

◆ sendResponse()

void Mgr::Action::sendResponse ( unsigned int  requestId)

◆ unpack()

void Mgr::IntervalAction::unpack ( const Ipc::TypedMsgHdr )

Member Data Documentation

◆ data

IntervalActionData Mgr::IntervalAction::data

Definition at line 126 of file IntervalAction.h.

Referenced by add(), collect(), dump(), pack(), and unpack().

◆ hours

int Mgr::IntervalAction::hours

Definition at line 125 of file IntervalAction.h.

Referenced by collect().

◆ minutes

int Mgr::IntervalAction::minutes

Definition at line 124 of file IntervalAction.h.

Referenced by collect().

The documentation for this class was generated from the following files:






Web Site Translations