#include <Notes.h>

Inheritance diagram for Note:
Collaboration diagram for Note:


class  Value
 Stores a value for the note. More...

Public Types

typedef RefCount< NotePointer
typedef std::vector< Value::PointerValues

Public Member Functions

 Note (const char *aKey, const size_t keyLen)
 Note (const SBuf aKey)
 Note (const Note &)=delete
Noteoperator= (const Note &)=delete
Value::Pointer addValue (const char *value, const bool quoted, const char *descr, const Value::Method m=Value::mhAppend)
bool match (HttpRequest *request, HttpReply *reply, const AccessLogEntryPointer &al, SBuf &matched)
const SBufkey () const
void updateNotePairs (NotePairsPointer pairs, const CharacterSet *delimiters, const AccessLogEntryPointer &al)
void dump (StoreEntry *entry, const char *key)
 Dump the single Note to the given StoreEntry object. More...
SBuf toString (const char *sep) const

Private Attributes

SBuf theKey
 The note key. More...
Values values
 The possible values list for the note. More...

Detailed Description

Used to store a note configuration. The notes are custom key:value pairs ICAP request headers or ECAP options used to pass custom transaction-state related meta information to squid internal subsystems or to adaptation services.

Definition at line 35 of file Notes.h.

Member Typedef Documentation

◆ Pointer

Definition at line 38 of file Notes.h.

◆ Values

Definition at line 73 of file Notes.h.

Constructor & Destructor Documentation

◆ Note() [1/3]

Note::Note ( const char *  aKey,
const size_t  keyLen 

Definition at line 75 of file Notes.h.

◆ Note() [2/3]

Note::Note ( const SBuf  aKey)

Definition at line 76 of file Notes.h.

◆ Note() [3/3]

Note::Note ( const Note )

Member Function Documentation

◆ addValue()

Note::Value::Pointer Note::addValue ( const char *  value,
const bool  quoted,
const char *  descr,
const Value::Method  m = Value::mhAppend 

Adds a value to the note and returns a pointer to the related Value object.

Definition at line 63 of file Notes.cc.

References values.

◆ dump()

void Note::dump ( StoreEntry entry,
const char *  key 

◆ key()

const SBuf & Note::key ( ) const

Definition at line 90 of file Notes.h.

References theKey.

Referenced by dump(), toString(), and updateNotePairs().

◆ match()

bool Note::match ( HttpRequest request,
HttpReply reply,
const AccessLogEntryPointer al,
SBuf matched 

Walks through the possible values list of the note, selects the first value, matching the given HttpRequest and HttpReply and assigns the given 'matched' to it.

true if matched, false otherwise

Definition at line 70 of file Notes.cc.

References ACLFilledChecklist::al, assert, SBuf::clear(), debugs, ACLChecklist::fastCheck(), HTTPMSGLOCK(), ACLFilledChecklist::reply, ACLFilledChecklist::syncAle(), theKey, and values.

◆ operator=()

Note & Note::operator= ( const Note )

◆ toString()

SBuf Note::toString ( const char *  sep) const

For the key and all its Values compile a string of "Key: Value" pairs separated by sep string.

Definition at line 119 of file Notes.cc.

References SBuf::appendf(), key(), SBuf::length(), and values.

◆ updateNotePairs()

void Note::updateNotePairs ( NotePairsPointer  pairs,
const CharacterSet delimiters,
const AccessLogEntryPointer al 

Member Data Documentation

◆ theKey

SBuf Note::theKey

Definition at line 99 of file Notes.h.

Referenced by key(), match(), and updateNotePairs().

◆ values

Values Note::values

Definition at line 100 of file Notes.h.

Referenced by addValue(), dump(), match(), toString(), and updateNotePairs().

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






Web Site Translations