hyperledger/iroha
Iroha - A simple, decentralized ledger http://iroha.tech
query_processor.hpp
Go to the documentation of this file.
1 
6 #ifndef IROHA_QUERY_PROCESSOR_HPP
7 #define IROHA_QUERY_PROCESSOR_HPP
8 
9 #include <rxcpp/rx.hpp>
10 
11 #include <memory>
12 
13 namespace shared_model {
14  namespace interface {
15  class Query;
16  class BlocksQuery;
17  class QueryResponse;
18  class BlockQueryResponse;
19  } // namespace interface
20 } // namespace shared_model
21 
22 namespace iroha {
23  namespace torii {
24 
29  public:
35  virtual std::unique_ptr<shared_model::interface::QueryResponse>
36  queryHandle(const shared_model::interface::Query &qry) = 0;
42  virtual rxcpp::observable<
43  std::shared_ptr<shared_model::interface::BlockQueryResponse>>
44  blocksQueryHandle(const shared_model::interface::BlocksQuery &qry) = 0;
45 
46  virtual ~QueryProcessor(){};
47  };
48  } // namespace torii
49 } // namespace iroha
50 
51 #endif // IROHA_QUERY_PROCESSOR_HPP
Definition: command_client.hpp:16
Definition: query.hpp:34
Definition: blocks_query.hpp:20
Definition: block_query.hpp:16
virtual ~QueryProcessor()
Definition: query_processor.hpp:46
Definition: command_executor.hpp:12
Definition: query_processor.hpp:28