0.9.8.10
 All Classes Namespaces Files Functions Variables Typedefs Enumerations Enumerator Friends Macros Modules Pages
Public Member Functions | Private Member Functions | Private Attributes | List of all members
Hypertable::FsBroker::Lib::ClientBufferedReaderHandler Class Reference

#include <ClientBufferedReaderHandler.h>

Inheritance diagram for Hypertable::FsBroker::Lib::ClientBufferedReaderHandler:
Inheritance graph
[legend]
Collaboration diagram for Hypertable::FsBroker::Lib::ClientBufferedReaderHandler:
Collaboration graph
[legend]

Public Member Functions

 ClientBufferedReaderHandler (Client *client, uint32_t fd, uint32_t buf_size, uint32_t outstanding, uint64_t start_offset, uint64_t end_offset)
 
virtual ~ClientBufferedReaderHandler ()
 
virtual void handle (EventPtr &event)
 Callback method. More...
 
size_t read (void *buf, size_t len)
 
- Public Member Functions inherited from Hypertable::DispatchHandler
virtual ~DispatchHandler ()
 Destructor. More...
 

Private Member Functions

void read_ahead ()
 

Private Attributes

std::mutex m_mutex
 
std::condition_variable m_cond
 
std::queue< EventPtrm_queue
 
Clientm_client
 
uint32_t m_fd
 
uint32_t m_max_outstanding
 
uint32_t m_read_size
 
uint32_t m_outstanding
 
bool m_eof
 
int m_error
 
std::string m_error_msg
 
const uint8_t * m_ptr
 
const uint8_t * m_end_ptr
 
uint64_t m_end_offset
 
uint64_t m_outstanding_offset
 
uint64_t m_actual_offset
 

Detailed Description

Definition at line 41 of file ClientBufferedReaderHandler.h.

Constructor & Destructor Documentation

ClientBufferedReaderHandler::ClientBufferedReaderHandler ( Client client,
uint32_t  fd,
uint32_t  buf_size,
uint32_t  outstanding,
uint64_t  start_offset,
uint64_t  end_offset 
)

Seek to initial offset

Definition at line 35 of file ClientBufferedReaderHandler.cc.

ClientBufferedReaderHandler::~ClientBufferedReaderHandler ( )
virtual

Definition at line 82 of file ClientBufferedReaderHandler.cc.

Member Function Documentation

void ClientBufferedReaderHandler::handle ( EventPtr event_ptr)
virtual

Callback method.

When the Comm layer needs to deliver an event to the application, this method is called to do so. The set of event types include, CONNECTION_ESTABLISHED, DISCONNECT, MESSAGE, ERROR, and TIMER.

Parameters
event_ptrsmart pointer to Event object

Implements Hypertable::DispatchHandler.

Definition at line 99 of file ClientBufferedReaderHandler.cc.

size_t ClientBufferedReaderHandler::read ( void *  buf,
size_t  len 
)

Definition at line 144 of file ClientBufferedReaderHandler.cc.

void ClientBufferedReaderHandler::read_ahead ( )
private

Definition at line 206 of file ClientBufferedReaderHandler.cc.

Member Data Documentation

uint64_t Hypertable::FsBroker::Lib::ClientBufferedReaderHandler::m_actual_offset
private

Definition at line 73 of file ClientBufferedReaderHandler.h.

Client* Hypertable::FsBroker::Lib::ClientBufferedReaderHandler::m_client
private

Definition at line 61 of file ClientBufferedReaderHandler.h.

std::condition_variable Hypertable::FsBroker::Lib::ClientBufferedReaderHandler::m_cond
private

Definition at line 59 of file ClientBufferedReaderHandler.h.

uint64_t Hypertable::FsBroker::Lib::ClientBufferedReaderHandler::m_end_offset
private

Definition at line 71 of file ClientBufferedReaderHandler.h.

const uint8_t* Hypertable::FsBroker::Lib::ClientBufferedReaderHandler::m_end_ptr
private

Definition at line 70 of file ClientBufferedReaderHandler.h.

bool Hypertable::FsBroker::Lib::ClientBufferedReaderHandler::m_eof
private

Definition at line 66 of file ClientBufferedReaderHandler.h.

int Hypertable::FsBroker::Lib::ClientBufferedReaderHandler::m_error
private

Definition at line 67 of file ClientBufferedReaderHandler.h.

std::string Hypertable::FsBroker::Lib::ClientBufferedReaderHandler::m_error_msg
private

Definition at line 68 of file ClientBufferedReaderHandler.h.

uint32_t Hypertable::FsBroker::Lib::ClientBufferedReaderHandler::m_fd
private

Definition at line 62 of file ClientBufferedReaderHandler.h.

uint32_t Hypertable::FsBroker::Lib::ClientBufferedReaderHandler::m_max_outstanding
private

Definition at line 63 of file ClientBufferedReaderHandler.h.

std::mutex Hypertable::FsBroker::Lib::ClientBufferedReaderHandler::m_mutex
private

Definition at line 58 of file ClientBufferedReaderHandler.h.

uint32_t Hypertable::FsBroker::Lib::ClientBufferedReaderHandler::m_outstanding
private

Definition at line 65 of file ClientBufferedReaderHandler.h.

uint64_t Hypertable::FsBroker::Lib::ClientBufferedReaderHandler::m_outstanding_offset
private

Definition at line 72 of file ClientBufferedReaderHandler.h.

const uint8_t* Hypertable::FsBroker::Lib::ClientBufferedReaderHandler::m_ptr
private

Definition at line 69 of file ClientBufferedReaderHandler.h.

std::queue<EventPtr> Hypertable::FsBroker::Lib::ClientBufferedReaderHandler::m_queue
private

Definition at line 60 of file ClientBufferedReaderHandler.h.

uint32_t Hypertable::FsBroker::Lib::ClientBufferedReaderHandler::m_read_size
private

Definition at line 64 of file ClientBufferedReaderHandler.h.


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