OpenSDN source code
 All Classes Namespaces Files Functions Variables Typedefs Enumerations Enumerator Friends Macros Pages
DBPartition Class Reference

#include <db_partition.h>

Collaboration diagram for DBPartition:

Classes

class  QueueRunner
 
class  WorkQueue
 

Public Types

typedef boost::function< void(void)> Callback
 

Public Member Functions

 DBPartition (DB *db, int partition_id)
 
 ~DBPartition ()
 
bool EnqueueRequest (DBTablePartBase *tpart, DBClient *client, DBRequest *req)
 
void EnqueueRemove (DBTablePartBase *tpart, DBEntryBase *db_entry)
 
void OnTableChange (DBTablePartBase *tpart)
 
bool IsDBQueueEmpty () const
 
void SetQueueDisable (bool disable)
 
long request_queue_len () const
 
uint64_t total_request_count () const
 
uint64_t max_request_queue_len () const
 
int task_id () const
 

Private Member Functions

 DISALLOW_COPY_AND_ASSIGN (DBPartition)
 

Private Attributes

DBdb_
 
std::unique_ptr< WorkQueuework_queue_
 

Static Private Attributes

static int db_partition_task_id_
 

Detailed Description

Definition at line 20 of file db_partition.h.

Member Typedef Documentation

typedef boost::function<void(void)> DBPartition::Callback

Definition at line 22 of file db_partition.h.

Constructor & Destructor Documentation

DBPartition::DBPartition ( DB db,
int  partition_id 
)
explicit

Definition at line 265 of file db_partition.cc.

DBPartition::~DBPartition ( )

Definition at line 271 of file db_partition.cc.

Member Function Documentation

DBPartition::DISALLOW_COPY_AND_ASSIGN ( DBPartition  )
private
void DBPartition::EnqueueRemove ( DBTablePartBase tpart,
DBEntryBase db_entry 
)

Definition at line 280 of file db_partition.cc.

Here is the call graph for this function:

bool DBPartition::EnqueueRequest ( DBTablePartBase tpart,
DBClient client,
DBRequest req 
)

Definition at line 274 of file db_partition.cc.

bool DBPartition::IsDBQueueEmpty ( ) const

Definition at line 157 of file db_partition.cc.

uint64_t DBPartition::max_request_queue_len ( ) const

Definition at line 299 of file db_partition.cc.

void DBPartition::OnTableChange ( DBTablePartBase tpart)

Definition at line 287 of file db_partition.cc.

long DBPartition::request_queue_len ( ) const

Definition at line 291 of file db_partition.cc.

void DBPartition::SetQueueDisable ( bool  disable)

Definition at line 161 of file db_partition.cc.

int DBPartition::task_id ( ) const

Definition at line 303 of file db_partition.cc.

Here is the call graph for this function:

uint64_t DBPartition::total_request_count ( ) const

Definition at line 295 of file db_partition.cc.

Member Data Documentation

DB* DBPartition::db_
private

Definition at line 46 of file db_partition.h.

int DBPartition::db_partition_task_id_
staticprivate

Definition at line 50 of file db_partition.h.

std::unique_ptr<WorkQueue> DBPartition::work_queue_
private

Definition at line 49 of file db_partition.h.


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