Joedb 9.4.0
The Journal-Only Embedded Database
Loading...
Searching...
No Matches
Public Member Functions | Protected Member Functions | Protected Attributes | List of all members
joedb::Client Class Referenceabstract

Handle concurrent access to a file with a joedb::Connection. More...

#include <joedb/concurrency/Client.h>

Inheritance diagram for joedb::Client:
Inheritance graph
[legend]
Collaboration diagram for joedb::Client:
Collaboration graph
[legend]

Public Member Functions

 Client (Readonly_Journal &journal, Connection &connection, Content_Check content_check)
 
const Readonly_Journalget_journal () const
 
bool is_shared () const
 
int64_t get_journal_checkpoint () const
 
std::string read_blob (Blob blob) const
 
int64_t get_connection_checkpoint () const
 
int64_t get_checkpoint_difference () const
 
virtual int64_t push ()=0
 
virtual int64_t pull (std::chrono::milliseconds wait=std::chrono::milliseconds(0))=0
 
virtual ~Client ()
 

Protected Member Functions

virtual void read_journal ()
 
int64_t push (Unlock_Action unlock_action)
 

Protected Attributes

Readonly_Journaljournal
 
Connectionconnection
 
int64_t connection_checkpoint
 

Detailed Description

Definition at line 11 of file Client.h.

Constructor & Destructor Documentation

◆ Client()

joedb::Client::Client ( Readonly_Journal journal,
Connection connection,
Content_Check  content_check 
)
inline

Definition at line 34 of file Client.h.

◆ ~Client()

joedb::Client::~Client ( )
virtualdefault

Member Function Documentation

◆ get_checkpoint_difference()

int64_t joedb::Client::get_checkpoint_difference ( ) const
inline

Definition at line 72 of file Client.h.

◆ get_connection_checkpoint()

int64_t joedb::Client::get_connection_checkpoint ( ) const
inline

Definition at line 67 of file Client.h.

◆ get_journal()

const Readonly_Journal & joedb::Client::get_journal ( ) const
inline

Definition at line 47 of file Client.h.

◆ get_journal_checkpoint()

int64_t joedb::Client::get_journal_checkpoint ( ) const
inline

Definition at line 57 of file Client.h.

◆ is_shared()

bool joedb::Client::is_shared ( ) const
inline

Definition at line 52 of file Client.h.

◆ pull()

virtual int64_t joedb::Client::pull ( std::chrono::milliseconds  wait = std::chrono::milliseconds(0))
pure virtual

◆ push() [1/2]

virtual int64_t joedb::Client::push ( )
pure virtual

◆ push() [2/2]

int64_t joedb::Client::push ( Unlock_Action  unlock_action)
inlineprotected

Definition at line 19 of file Client.h.

◆ read_blob()

std::string joedb::Client::read_blob ( Blob  blob) const
inline

Definition at line 62 of file Client.h.

◆ read_journal()

virtual void joedb::Client::read_journal ( )
inlineprotectedvirtual

Member Data Documentation

◆ connection

Connection& joedb::Client::connection
protected

Definition at line 16 of file Client.h.

◆ connection_checkpoint

int64_t joedb::Client::connection_checkpoint
protected

Definition at line 17 of file Client.h.

◆ journal

Readonly_Journal& joedb::Client::journal
protected

Definition at line 15 of file Client.h.


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