Loading...
Searching...
No Matches
resdb::contract::ContractClient Class Reference

#include <contract_client.h>

Inheritance diagram for resdb::contract::ContractClient:
resdb::TransactionConstructor resdb::NetChannel

Public Member Functions

 ContractClient (const ResDBConfig &config)
 
absl::StatusOr< Account > CreateAccount ()
 
absl::StatusOr< Contract > DeployContract (const std::string &caller_address, const std::string &contract_name, const std::string &contract_path, const std::vector< std::string > &init_params)
 
absl::StatusOr< std::string > ExecuteContract (const std::string &caller_address, const std::string &contract_address, const std::string &func_name, const std::vector< std::string > &func_params)
 
- 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 30 of file contract_client.h.

Constructor & Destructor Documentation

◆ ContractClient()

resdb::contract::ContractClient::ContractClient ( const ResDBConfig &  config)

Definition at line 32 of file contract_client.cpp.

Member Function Documentation

◆ CreateAccount()

absl::StatusOr< Account > resdb::contract::ContractClient::CreateAccount ( )

Definition at line 35 of file contract_client.cpp.

◆ DeployContract()

absl::StatusOr< Contract > resdb::contract::ContractClient::DeployContract ( const std::string &  caller_address,
const std::string &  contract_name,
const std::string &  contract_path,
const std::vector< std::string > &  init_params 
)

Definition at line 46 of file contract_client.cpp.

◆ ExecuteContract()

absl::StatusOr< std::string > resdb::contract::ContractClient::ExecuteContract ( const std::string &  caller_address,
const std::string &  contract_address,
const std::string &  func_name,
const std::vector< std::string > &  func_params 
)

Definition at line 98 of file contract_client.cpp.