hyperledger/iroha
Iroha - A simple, decentralized ledger http://iroha.tech
rocksdb_wsv_query.hpp
Go to the documentation of this file.
1 
6 #ifndef IROHA_ROCKSDB_WSV_QUERY_HPP
7 #define IROHA_ROCKSDB_WSV_QUERY_HPP
8 
10 
12 #include "logger/logger_fwd.hpp"
13 
14 namespace iroha {
15  namespace ametsuchi {
16  class RocksDBWsvQuery : public WsvQuery {
17  public:
18  RocksDBWsvQuery(std::shared_ptr<RocksDBContext> db_context,
19  logger::LoggerPtr log);
20 
21  boost::optional<std::vector<std::string>> getSignatories(
23  override;
24 
25  boost::optional<
26  std::vector<std::shared_ptr<shared_model::interface::Peer>>>
27  getPeers() override;
28 
29  boost::optional<std::shared_ptr<shared_model::interface::Peer>>
30  getPeerByPublicKey(shared_model::interface::types::PublicKeyHexStringView
31  public_key) override;
32 
34  getTopBlockInfo() const override;
35 
39 
40  private:
41  std::shared_ptr<RocksDBContext> db_context_;
42  logger::LoggerPtr log_;
43  };
44  } // namespace ametsuchi
45 } // namespace iroha
46 
47 #endif // IROHA_ROCKSDB_WSV_QUERY_HPP
Definition: block_query.hpp:17
RocksDBWsvQuery(std::shared_ptr< RocksDBContext > db_context, logger::LoggerPtr log)
Definition: rocksdb_wsv_query.cpp:40
Definition: result_fwd.hpp:27
boost::optional< std::vector< std::shared_ptr< shared_model::interface::Peer > > > getPeers() override
Definition: rocksdb_wsv_query.cpp:79
boost::optional< std::vector< std::string > > getSignatories(const shared_model::interface::types::AccountIdType &account_id) override
Definition: rocksdb_wsv_query.cpp:46
Definition: rocksdb_wsv_query.hpp:16
std::shared_ptr< Logger > LoggerPtr
Definition: logger_fwd.hpp:22
iroha::expected::Result< size_t, std::string > countPeers() override
Fetch domains stored in ledger.
Definition: rocksdb_wsv_query.cpp:186
boost::optional< std::shared_ptr< shared_model::interface::Peer > > getPeerByPublicKey(shared_model::interface::types::PublicKeyHexStringView public_key) override
Definition: rocksdb_wsv_query.cpp:123
iroha::expected::Result< size_t, std::string > countDomains() override
Fetch number of domains in ledger.
Definition: rocksdb_wsv_query.cpp:195
iroha::expected::Result< iroha::TopBlockInfo, std::string > getTopBlockInfo() const override
Get top block info from ledger state.
Definition: rocksdb_wsv_query.cpp:157
Definition: block_query.hpp:15
std::string AccountIdType
Type of account id.
Definition: types.hpp:38
Definition: wsv_query.hpp:23
iroha::expected::Result< size_t, std::string > countTransactions() override
Fetch number of valid transactions in ledger.
Definition: rocksdb_wsv_query.cpp:205