collects information about adaptations related to a master transaction More...

#include <History.h>

Inheritance diagram for Adaptation::History:
Collaboration diagram for Adaptation::History:

Classes

class  Entry
 single Xaction stats (i.e., a historical record entry) More...
 

Public Types

typedef RefCount< Adaptation::HistoryPointer
 
typedef std::vector< SBufAdaptationServices
 

Public Member Functions

 History ()
 
int recordXactStart (const String &serviceId, const timeval &when, bool retrying)
 record the start of a xact, return xact history ID More...
 
void recordXactFinish (int hid)
 record the end of a xact identified by its history ID More...
 
void allLogString (const char *serviceId, SBuf &)
 dump individual xaction times to a string More...
 
void sumLogString (const char *serviceId, SBuf &)
 dump xaction times, merging retried and retry times together More...
 
void updateXxRecord (const char *name, const String &value)
 sets or resets a cross-transactional database record More...
 
bool getXxRecord (String &name, String &value) const
 returns true and fills the record fields iff there is a db record More...
 
void updateNextServices (const String &services)
 sets or resets next services for the Adaptation::Iterator to notice More...
 
bool extractNextServices (String &value)
 returns true, fills the value, and resets iff next services were set More...
 
void recordMeta (const HttpHeader *lm)
 store the last meta header fields received from the adaptation service More...
 
void recordAdaptationService (SBuf &srvId)
 
void setFutureServices (const DynamicGroupCfg &services)
 sets future services for the Adaptation::AccessCheck to notice More...
 
DynamicGroupCfg extractCurrentServices (const ServiceFilter &)
 returns and forgets planned/future services matching the given filter More...
 

Public Attributes

HttpHeader lastMeta
 Last received meta header (REQMOD or RESPMOD, whichever comes last). More...
 
HttpHeader allMeta
 All REQMOD and RESPMOD meta headers merged. Last field wins conflicts. More...
 
NotePairs::Pointer metaHeaders
 
AdaptationServices theAdaptationServices
 The service groups used. More...
 

Private Types

typedef std::vector< EntryEntries
 

Private Attributes

Entries theEntries
 historical record, in the order of xact starts More...
 
String theXxName
 name part of the cross-transactional database record More...
 
String theXxValue
 value part of the cross-xactional database record More...
 
String theNextServices
 services Adaptation::Iterator must use next More...
 
DynamicGroupCfg theFutureServices
 services AccessCheck must use More...
 

Detailed Description

Definition at line 24 of file History.h.

Member Typedef Documentation

◆ AdaptationServices

◆ Entries

Definition at line 98 of file History.h.

◆ Pointer

Constructor & Destructor Documentation

◆ History()

Adaptation::History::History ( )

Definition at line 44 of file History.cc.

Member Function Documentation

◆ allLogString()

void Adaptation::History::allLogString ( const char *  serviceId,
SBuf s 
)

Definition at line 67 of file History.cc.

References SBuf::append(), SBuf::appendf(), SBuf::clear(), and SBuf::isEmpty().

Referenced by Format::Format::assemble().

◆ extractCurrentServices()

Adaptation::DynamicGroupCfg Adaptation::History::extractCurrentServices ( const ServiceFilter filter)

◆ extractNextServices()

bool Adaptation::History::extractNextServices ( String value)

Definition at line 130 of file History.cc.

References TheNullServices.

Referenced by Adaptation::Iterator::updatePlan().

◆ getXxRecord()

bool Adaptation::History::getXxRecord ( String name,
String value 
) const

◆ recordAdaptationService()

void Adaptation::History::recordAdaptationService ( SBuf srvId)

Definition at line 150 of file History.cc.

Referenced by Adaptation::Iterator::start(), and Adaptation::Iterator::step().

◆ recordMeta()

void Adaptation::History::recordMeta ( const HttpHeader lm)

◆ recordXactFinish()

void Adaptation::History::recordXactFinish ( int  hid)

Definition at line 61 of file History.cc.

References Must.

Referenced by Adaptation::Ecap::XactionRep::swanSong(), and Adaptation::Icap::ModXact::swanSong().

◆ recordXactStart()

int Adaptation::History::recordXactStart ( const String serviceId,
const timeval &  when,
bool  retrying 
)

◆ setFutureServices()

void Adaptation::History::setFutureServices ( const DynamicGroupCfg services)

Definition at line 156 of file History.cc.

References debugs.

Referenced by Adaptation::Iterator::updatePlan().

◆ sumLogString()

void Adaptation::History::sumLogString ( const char *  serviceId,
SBuf s 
)

Definition at line 83 of file History.cc.

References SBuf::append(), SBuf::appendf(), SBuf::clear(), SBuf::isEmpty(), and Must.

Referenced by Format::Format::assemble().

◆ updateNextServices()

void Adaptation::History::updateNextServices ( const String services)

◆ updateXxRecord()

void Adaptation::History::updateXxRecord ( const char *  name,
const String value 
)

Member Data Documentation

◆ allMeta

HttpHeader Adaptation::History::allMeta

Definition at line 63 of file History.h.

Referenced by Format::Format::assemble(), and Ftp::Server::writeErrorReply().

◆ lastMeta

HttpHeader Adaptation::History::lastMeta

Definition at line 61 of file History.h.

◆ metaHeaders

NotePairs::Pointer Adaptation::History::metaHeaders

key:value pairs set by adaptation_meta, to be added to AccessLogEntry::notes when ALE becomes available

Definition at line 66 of file History.h.

Referenced by Format::Format::assemble(), Adaptation::Icap::ModXact::makeRequestHeaders(), ACLNoteStrategy::match(), and Adaptation::Ecap::XactionRep::start().

◆ theAdaptationServices

AdaptationServices Adaptation::History::theAdaptationServices

Definition at line 69 of file History.h.

Referenced by ACLAdaptationServiceStrategy::match().

◆ theEntries

Entries Adaptation::History::theEntries
private

Definition at line 99 of file History.h.

◆ theFutureServices

DynamicGroupCfg Adaptation::History::theFutureServices
private

Definition at line 106 of file History.h.

◆ theNextServices

String Adaptation::History::theNextServices
private

Definition at line 105 of file History.h.

◆ theXxName

String Adaptation::History::theXxName
private

Definition at line 102 of file History.h.

◆ theXxValue

String Adaptation::History::theXxValue
private

Definition at line 103 of file History.h.


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

 

Introduction

Documentation

Support

Miscellaneous

Web Site Translations

Mirrors