#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 55 of file StoreClient.h.

Constructor & Destructor Documentation

◆ store_client()

store_client::store_client ( StoreEntry e)

◆ ~store_client()

store_client::~store_client ( )

Definition at line 211 of file store_client.cc.

Member Function Documentation

◆ callback()

◆ copy()

◆ doCopy()

◆ dumpStats()

◆ fail()

void store_client::fail ( )

Definition at line 532 of file store_client.cc.

References _callback, callback(), object_ok, and store_client::Callback::pending().

Referenced by readBody(), readHeader(), and startSwapin().

◆ fileRead()

◆ getType()

int store_client::getType ( ) const

Definition at line 95 of file store_client.cc.

References type.

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

◆ memReaderHasLowerOffset()

bool store_client::memReaderHasLowerOffset ( int64_t  anOffset) const

Definition at line 89 of file store_client.cc.

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

Referenced by LowestMemReader::operator()().

◆ moreToSend()

◆ operator delete()

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

Definition at line 57 of file StoreClient.h.

◆ operator new()

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

Definition at line 57 of file StoreClient.h.

◆ readBody()

◆ readHeader()

◆ scheduleDiskRead()

void store_client::scheduleDiskRead ( )
private

Definition at line 437 of file store_client.cc.

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

Referenced by scheduleRead().

◆ scheduleMemRead()

void store_client::scheduleMemRead ( )
private

◆ scheduleRead()

void store_client::scheduleRead ( )
private

◆ setDelayId()

◆ startSwapin()

bool store_client::startSwapin ( )
private

◆ toCbdata()

void* store_client::toCbdata ( )
inlinenoexcept

Definition at line 57 of file StoreClient.h.

◆ unpackHeader()

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

Member Data Documentation

◆ _callback

struct store_client::Callback store_client::_callback

◆ CBDATA_store_client

cbdata_type store_client::CBDATA_store_client = CBDATA_UNKNOWN
staticprivate

Definition at line 57 of file StoreClient.h.

◆ cmp_offset

int64_t store_client::cmp_offset

Definition at line 72 of file StoreClient.h.

Referenced by callback(), and copy().

◆ copy_event_pending

bool store_client::copy_event_pending

Definition at line 84 of file StoreClient.h.

◆ copyInto

◆ delayId

DelayId store_client::delayId

Definition at line 88 of file StoreClient.h.

Referenced by setDelayId().

◆ disk_io_pending

bool store_client::disk_io_pending

Definition at line 82 of file StoreClient.h.

◆ entry

◆ flags

◆ node

dlink_node store_client::node

Definition at line 92 of file StoreClient.h.

Referenced by MemObject::addClient().

◆ object_ok

bool store_client::object_ok
private

Definition at line 107 of file StoreClient.h.

Referenced by fail(), and readHeader().

◆ store_copying

bool store_client::store_copying

Definition at line 83 of file StoreClient.h.

◆ swapin_sio

StoreIOState::Pointer store_client::swapin_sio

Definition at line 79 of file StoreClient.h.

Referenced by doCopy(), fileRead(), scheduleDiskRead(), and startSwapin().

◆ type

int store_client::type
private

Definition at line 106 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