Joedb 10.4.6
The Journal-Only Embedded Database
Loading...
Searching...
No Matches
joedb::Writable_Database_Client Class Reference

#include <joedb/concurrency/Writable_Database_Client.h>

Inheritance diagram for joedb::Writable_Database_Client:
Collaboration diagram for joedb::Writable_Database_Client:

Public Member Functions

 Writable_Database_Client (Abstract_File &file, Connection &connection=Connection::dummy, Content_Check content_check=Content_Check::fast, Record_Id max_record_id=Record_Id::null, Recovery recovery=Recovery::none)
const Database & get_database () const
template<typename F>
auto transaction (F transaction)
Public Member Functions inherited from joedb::Writable_Client
 Writable_Client (Writable_Journal &journal, Connection &connection=Connection::dummy, Content_Check content_check=Content_Check::fast)
void touch ()
void set_valid_data (bool b)
 Automatically write valid_data at every checkpoint (default = false).
void set_timestamp (bool b)
 Automatically write time stamp at every checkpoint (default = false).
void set_hard_checkpoint (bool b)
 Use hard checkpoints (default = false).
int64_t pull (std::chrono::milliseconds wait=std::chrono::milliseconds(0)) override
void pull_push ()
int64_t push_unlock ()
int64_t push_if_ahead (int64_t until) override
int64_t push_if_ahead ()
Public Member Functions inherited from joedb::Client
 Client (Readonly_Journal &journal, Connection &connection, Content_Check content_check)
const Readonly_Journal & get_journal () const
bool is_shared () const
bool is_pullonly () 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
int64_t push_if_ahead ()
virtual ~Client ()

Protected Member Functions

void read_journal () override
Protected Member Functions inherited from joedb::Writable_Client
template<typename F>
auto transaction (F f)
Protected Member Functions inherited from joedb::Client
int64_t push (int64_t until, Unlock_Action unlock_action)
int64_t push (Unlock_Action unlock_action)

Friends

class Writable_Database_Client_Lock

Additional Inherited Members

Protected Attributes inherited from joedb::Client
Readonly_Journal & journal
Connection & connection
int64_t connection_checkpoint

Detailed Description

Definition at line 35 of file Writable_Database_Client.h.

Constructor & Destructor Documentation

◆ Writable_Database_Client()

joedb::Writable_Database_Client::Writable_Database_Client ( Abstract_File & file,
Connection & connection = Connection::dummy,
Content_Check content_check = Content_Check::fast,
Record_Id max_record_id = Record_Id::null,
Recovery recovery = Recovery::none )
inline

Definition at line 48 of file Writable_Database_Client.h.

Member Function Documentation

◆ get_database()

const Database & joedb::Writable_Database_Client::get_database ( ) const
inline

Definition at line 62 of file Writable_Database_Client.h.

◆ read_journal()

void joedb::Writable_Database_Client::read_journal ( )
inlineoverrideprotectedvirtual

Reimplemented from joedb::Client.

Definition at line 42 of file Writable_Database_Client.h.

◆ transaction()

template<typename F>
auto joedb::Writable_Database_Client::transaction ( F transaction)
inline

Definition at line 67 of file Writable_Database_Client.h.

◆ Writable_Database_Client_Lock

friend class Writable_Database_Client_Lock
friend

Definition at line 39 of file Writable_Database_Client.h.


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