6 #ifndef IROHA_ROCKSDB_STORAGE_IMPL_HPP 7 #define IROHA_ROCKSDB_STORAGE_IMPL_HPP 13 class QueryResponseFactory;
18 class PendingTransactionStorage;
24 class PostgresOptions;
27 struct RocksDBContext;
33 std::shared_ptr<RocksDBContext> db_context,
34 std::shared_ptr<shared_model::interface::PermissionToString>
36 std::shared_ptr<PendingTransactionStorage> pending_txs_storage,
37 std::shared_ptr<shared_model::interface::QueryResponseFactory>
38 query_response_factory,
39 std::unique_ptr<BlockStorageFactory> temporary_block_storage_factory,
40 std::shared_ptr<BlockStorage> persistent_block_storage,
41 std::optional<std::reference_wrapper<const VmCaller>> vm_caller_ref,
43 std::shared_ptr<shared_model::interface::Block const>)> callback,
47 createCommandExecutor()
override;
49 std::unique_ptr<TemporaryWsv> createTemporaryWsv(
50 std::shared_ptr<CommandExecutor> command_executor)
override;
52 boost::optional<std::unique_ptr<SettingQuery>> createSettingQuery()
57 std::shared_ptr<PendingTransactionStorage> pending_txs_storage,
58 std::shared_ptr<shared_model::interface::QueryResponseFactory>
59 response_factory)
const override;
65 createMutableStorage(std::shared_ptr<CommandExecutor> command_executor,
70 std::shared_ptr<CommandExecutor> command_executor)
override;
74 void freeConnections()
override;
77 std::shared_ptr<const shared_model::interface::Block> block)
override;
79 std::shared_ptr<WsvQuery> getWsvQuery()
const override;
81 std::shared_ptr<BlockQuery> getBlockQuery()
const override;
83 void prepareBlock(std::unique_ptr<TemporaryWsv> wsv)
override;
89 std::shared_ptr<RocksDBContext> db_context,
90 boost::optional<std::shared_ptr<const iroha::LedgerState>>
92 std::shared_ptr<BlockStorage> block_store,
93 std::shared_ptr<shared_model::interface::PermissionToString>
95 std::shared_ptr<PendingTransactionStorage> pending_txs_storage,
96 std::shared_ptr<shared_model::interface::QueryResponseFactory>
97 query_response_factory,
98 std::unique_ptr<BlockStorageFactory> temporary_block_storage_factory,
99 std::optional<std::reference_wrapper<const VmCaller>> vm_caller,
101 std::shared_ptr<shared_model::interface::Block const>)> callback,
107 friend class ::iroha::ametsuchi::AmetsuchiTest;
108 std::shared_ptr<RocksDBContext> db_context_;
114 #endif // IROHA_ROCKSDB_STORAGE_IMPL_HPP
Definition: block_query.hpp:17
Definition: result_fwd.hpp:27
Definition: block_query.hpp:15
Definition: rocksdb_storage_impl.hpp:29
std::shared_ptr< LoggerManagerTree > LoggerManagerTreePtr
Definition: logger_manager_fwd.hpp:14
Definition: block_storage_factory.hpp:19
Definition: storage_base.hpp:40
Definition: command_executor.hpp:13