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

#include <joedb/concurrency/Connection.h>

Inheritance diagram for joedb::Connection:
Inheritance graph
[legend]

Public Member Functions

virtual int64_t handshake (const Readonly_Journal &client_journal, Content_Check content_check)
 Called during Client construction.
 
virtual int64_t pull (Lock_Action lock_action, Data_Transfer data_transfer, Writable_Journal &client_journal, std::chrono::milliseconds wait=std::chrono::milliseconds(0))
 Pull from the connection.
 
virtual int64_t push (const Readonly_Journal &client_journal, int64_t from, int64_t until, Unlock_Action unlock_action)
 Push new data to the connection.
 
virtual void unlock ()
 Unlock the connection.
 
virtual ~Connection ()
 

Static Protected Member Functions

static void content_mismatch ()
 Called by handshake when the file and the connection do not match.
 

Detailed Description

Definition at line 47 of file Connection.h.

Constructor & Destructor Documentation

◆ ~Connection()

joedb::Connection::~Connection ( )
virtualdefault

Member Function Documentation

◆ content_mismatch()

void joedb::Connection::content_mismatch ( )
staticprotected

Definition at line 12 of file Connection.cpp.

◆ handshake()

int64_t joedb::Connection::handshake ( const Readonly_Journal client_journal,
Content_Check  content_check 
)
virtual
Parameters
client_journalmay be used to check matching content
content_checkindicates how matching content is tested
Return values
connectioncheckpoint

Reimplemented in joedb::Pullonly_Journal_Connection, joedb::Robust_Connection, joedb::Server_Connection, and joedb::Server_File.

Definition at line 17 of file Connection.cpp.

◆ pull()

int64_t joedb::Connection::pull ( Lock_Action  lock_action,
Data_Transfer  data_transfer,
Writable_Journal client_journal,
std::chrono::milliseconds  wait = std::chrono::milliseconds(0) 
)
virtual
Parameters
lock_actionwhether the connection should be locked before pulling
data_transferwhether data should be transferred
client_journaljournal to pull into
waitduration during which the connection may wait for new data if the pull would otherwise be empty
Return values
servercheckpoint

Reimplemented in joedb::Pullonly_Journal_Connection, joedb::Journal_Connection, joedb::Robust_Connection, joedb::Server_File, and joedb::Server_Connection.

Definition at line 26 of file Connection.cpp.

◆ push()

int64_t joedb::Connection::push ( const Readonly_Journal client_journal,
int64_t  from,
int64_t  until,
Unlock_Action  unlock_action 
)
virtual

◆ unlock()

void joedb::Connection::unlock ( )
virtual

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