Loading...
Searching...
No Matches
resdb::KVClient Class Reference

#include <kv_client.h>

Inheritance diagram for resdb::KVClient:
resdb::TransactionConstructor resdb::NetChannel

Public Member Functions

 KVClient (const ResDBConfig &config)
 
int Set (const std::string &key, const std::string &data, int version)
 
std::unique_ptr< ValueInfo > Get (const std::string &key, int version)
 
std::unique_ptr< Items > GetKeyRange (const std::string &min_key, const std::string &max_key)
 
std::unique_ptr< Items > GetKeyHistory (const std::string &key, int min_version, int max_version)
 
std::unique_ptr< Items > GetKeyTopHistory (const std::string &key, int top_number)
 
int Set (const std::string &key, const std::string &data)
 
std::unique_ptr< std::string > Get (const std::string &key)
 
std::unique_ptr< std::string > GetAllValues ()
 
std::unique_ptr< std::string > GetRange (const std::string &min_key, const std::string &max_key)
 
- Public Member Functions inherited from resdb::TransactionConstructor
 TransactionConstructor (const ResDBConfig &config)
 
virtual ~TransactionConstructor ()=default
 
int SendRequest (const google::protobuf::Message &message, Request::Type type=Request::TYPE_CLIENT_REQUEST)
 
int SendRequest (const google::protobuf::Message &message, google::protobuf::Message *response, Request::Type type=Request::TYPE_CLIENT_REQUEST)
 
- Public Member Functions inherited from resdb::NetChannel
 NetChannel (const std::string &ip, int port)
 
 NetChannel (std::unique_ptr< Socket > socket, bool connected=false)
 
virtual ~NetChannel ()=default
 
void Close ()
 
void SetSocket (std::unique_ptr< Socket > socket)
 
void SetSignatureVerifier (SignatureVerifier *verifier)
 
void SetDestReplicaInfo (const ReplicaInfo &replica)
 
virtual int SendRequest (const google::protobuf::Message &message, Request::Type cmd, bool need_response=false)
 
virtual int SendRawMessage (const google::protobuf::Message &message)
 
virtual int SendRawMessageData (const std::string &message_str)
 
virtual int RecvRawMessageStr (std::string *message)
 
virtual int RecvRawMessage (google::protobuf::Message *message)
 
virtual int RecvRawMessageData (std::string *message_str)
 
void SetRecvTimeout (int microseconds)
 
void IsLongConnection (bool long_connect_tion)
 
void SetAsyncSend (bool is_async_send)
 

Additional Inherited Members

- Static Public Member Functions inherited from resdb::NetChannel
static std::string GetRawMessageString (const google::protobuf::Message &message, SignatureVerifier *verifier=nullptr)
 
- Protected Member Functions inherited from resdb::NetChannel
int SendDataInternal (const std::string &data)
 
int SendFromKeepAlive (const std::string &data)
 
int Send (const std::string &data)
 
int Recv (std::string *data)
 
int Connect ()
 
- Protected Attributes inherited from resdb::NetChannel
SignatureVerifier * verifier_ = nullptr
 
std::unique_ptr< Socket > socket_
 
int max_retry_time_ = 3
 
std::string ip_
 
int port_
 
bool connected_ = false
 
int read_timeouts_ = 1000000
 
bool long_connect_tion_ = false
 
bool long_connecting_ = false
 
bool is_async_send_ = false
 

Detailed Description

Definition at line 28 of file kv_client.h.

Constructor & Destructor Documentation

◆ KVClient()

resdb::KVClient::KVClient ( const ResDBConfig &  config)

Definition at line 26 of file kv_client.cpp.

Member Function Documentation

◆ Get() [1/2]

std::unique_ptr< std::string > resdb::KVClient::Get ( const std::string &  key)

Definition at line 37 of file kv_client.cpp.

◆ Get() [2/2]

std::unique_ptr< ValueInfo > resdb::KVClient::Get ( const std::string &  key,
int  version 
)

Definition at line 87 of file kv_client.cpp.

◆ GetAllValues()

std::unique_ptr< std::string > resdb::KVClient::GetAllValues ( )

Definition at line 50 of file kv_client.cpp.

◆ GetKeyHistory()

std::unique_ptr< Items > resdb::KVClient::GetKeyHistory ( const std::string &  key,
int  min_version,
int  max_version 
)

Definition at line 116 of file kv_client.cpp.

◆ GetKeyRange()

std::unique_ptr< Items > resdb::KVClient::GetKeyRange ( const std::string &  min_key,
const std::string &  max_key 
)

Definition at line 101 of file kv_client.cpp.

◆ GetKeyTopHistory()

std::unique_ptr< Items > resdb::KVClient::GetKeyTopHistory ( const std::string &  key,
int  top_number 
)

Definition at line 133 of file kv_client.cpp.

◆ GetRange()

std::unique_ptr< std::string > resdb::KVClient::GetRange ( const std::string &  min_key,
const std::string &  max_key 
)

Definition at line 62 of file kv_client.cpp.

◆ Set() [1/2]

int resdb::KVClient::Set ( const std::string &  key,
const std::string &  data 
)

Definition at line 29 of file kv_client.cpp.

◆ Set() [2/2]

int resdb::KVClient::Set ( const std::string &  key,
const std::string &  data,
int  version 
)

Definition at line 77 of file kv_client.cpp.