hyperledger/iroha
Iroha - A simple, decentralized ledger http://iroha.tech
postgres_burrow_storage.hpp
Go to the documentation of this file.
1 
6 #ifndef IROHA_POSTGRES_BURROW_STORAGE_HPP
7 #define IROHA_POSTGRES_BURROW_STORAGE_HPP
8 
10 
12 
13 namespace soci {
14  class session;
15 }
16 
17 namespace iroha::ametsuchi {
19  public:
21  soci::session &sql,
22  std::string const &tx_hash,
24 
25  expected::Result<std::optional<std::string>, std::string> getAccount(
26  std::string_view address) override;
27 
29  std::string_view address, std::string_view account) override;
30 
32  std::string_view address) override;
33 
34  expected::Result<std::optional<std::string>, std::string> getStorage(
35  std::string_view address, std::string_view key) override;
36 
38  std::string_view address,
39  std::string_view key,
40  std::string_view value) override;
41 
43  std::string_view address,
44  std::string_view data,
45  std::vector<std::string_view> topics) override;
46 
47  private:
48  soci::session &sql_;
49  std::string const &tx_hash_;
51  std::optional<size_t> call_id_cache_;
52  };
53 
54 } // namespace iroha::ametsuchi
55 
56 #endif
Definition: block_query.hpp:17
Definition: result_fwd.hpp:27
Definition: burrow_storage.hpp:19
int32_t CommandIndexType
Type of command index within a transaction.
Definition: types.hpp:97
Definition: pool_wrapper.hpp:11
Definition: postgres_burrow_storage.hpp:18