#include <StoreClient.h>

Collaboration diagram for store_client:

Classes

struct  Callback
 

Public Member Functions

void * operator new (size_t size)
 
void operator delete (void *address)
 
void * toCbdata () noexcept
 
 store_client (StoreEntry *)
 
 ~store_client ()
 
bool memReaderHasLowerOffset (int64_t) const
 
int getType () const
 
void fail ()
 
void callback (ssize_t len, bool error=false)
 
void doCopy (StoreEntry *e)
 
void readHeader (const char *buf, ssize_t len)
 
void readBody (const char *buf, ssize_t len)
 
void copy (StoreEntry *, StoreIOBuffer, STCB *, void *)
 
void dumpStats (MemBuf *output, int clientNumber) const
 
void setDelayId (DelayId delay_id)
 

Public Attributes

int64_t cmp_offset
 
StoreEntryentry
 
StoreIOState::Pointer swapin_sio
 
struct {
   bool   disk_io_pending
 
   bool   store_copying
 
   bool   copy_event_pending
 
flags
 
DelayId delayId
 
dlink_node node
 
StoreIOBuffer copyInto
 
struct store_client::Callback _callback
 

Private Member Functions

bool moreToSend () const
 Whether there is (or will be) more entry data for us. More...
 
void fileRead ()
 
void scheduleDiskRead ()
 
void scheduleMemRead ()
 
void scheduleRead ()
 
bool startSwapin ()
 opens the swapin "file" if possible; otherwise, fail()s and returns false More...
 
bool unpackHeader (char const *buf, ssize_t len)
 

Private Attributes

int type
 
bool object_ok
 

Static Private Attributes

static cbdata_type CBDATA_store_client = CBDATA_UNKNOWN
 

Detailed Description

Definition at line 62 of file StoreClient.h.

Constructor & Destructor Documentation

store_client::store_client ( StoreEntry e)
store_client::~store_client ( )

Definition at line 217 of file store_client.cc.

Member Function Documentation

void store_client::fail ( )
int store_client::getType ( ) const

Definition at line 102 of file store_client.cc.

References type.

Referenced by doCopy(), memReaderHasLowerOffset(), scheduleDiskRead(), and store_client().

bool store_client::memReaderHasLowerOffset ( int64_t  anOffset) const

Definition at line 96 of file store_client.cc.

References copyInto, getType(), StoreIOBuffer::offset, and STORE_MEM_CLIENT.

Referenced by LowestMemReader::operator()().

void store_client::operator delete ( void *  address)
inline

Definition at line 64 of file StoreClient.h.

void* store_client::operator new ( size_t  size)
inline

Definition at line 64 of file StoreClient.h.

void store_client::scheduleDiskRead ( )
private

Definition at line 445 of file store_client.cc.

References assert, debugs, entry, fileRead(), flags, getType(), NULL, startSwapin(), STORE_DISK_CLIENT, and swapin_sio.

Referenced by scheduleRead().

void store_client::scheduleMemRead ( )
private
void store_client::scheduleRead ( )
private
bool store_client::startSwapin ( )
private
void* store_client::toCbdata ( )
inlinenoexcept

Definition at line 64 of file StoreClient.h.

bool store_client::unpackHeader ( char const *  buf,
ssize_t  len 
)
private

Member Data Documentation

cbdata_type store_client::CBDATA_store_client = CBDATA_UNKNOWN
staticprivate

Definition at line 64 of file StoreClient.h.

int64_t store_client::cmp_offset

Definition at line 79 of file StoreClient.h.

Referenced by callback(), and copy().

bool store_client::copy_event_pending

Definition at line 91 of file StoreClient.h.

Referenced by storeClientCopy2(), and storeClientCopyEvent().

DelayId store_client::delayId

Definition at line 95 of file StoreClient.h.

Referenced by MemObject::mostBytesAllowed(), setDelayId(), and MemObject::setNoDelay().

bool store_client::disk_io_pending

Definition at line 89 of file StoreClient.h.

Referenced by StoreEntry::invokeHandlers().

dlink_node store_client::node

Definition at line 99 of file StoreClient.h.

Referenced by MemObject::addClient(), and storeUnregister().

bool store_client::object_ok
private

Definition at line 114 of file StoreClient.h.

Referenced by fail(), and readHeader().

bool store_client::store_copying

Definition at line 90 of file StoreClient.h.

Referenced by storeClientCopy2().

int store_client::type
private

Definition at line 113 of file StoreClient.h.

Referenced by getType().


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

 

Introduction

Documentation

Support

Miscellaneous

Web Site Translations

Mirrors