hyperledger/iroha
Iroha - A simple, decentralized ledger http://iroha.tech
rocksdb_connection_init.hpp
Go to the documentation of this file.
1 
6 #ifndef IROHA_RDB_CONNECTION_INIT_HPP
7 #define IROHA_RDB_CONNECTION_INIT_HPP
8 
9 #include <boost/algorithm/string.hpp>
10 #include <boost/range/algorithm/replace_if.hpp>
11 
15 #include "common/result.hpp"
17 #include "logger/logger_fwd.hpp"
19 #include "main/startup_params.hpp"
20 
21 namespace iroha::ametsuchi {
22 
23  struct RocksDBPort;
24  struct RocksDBContext;
25  class RocksDbCommon;
26 
28  public:
30  StartupWsvDataPolicy startup_wsv_data_policy,
32  logger::LoggerManagerTreePtr log_manager);
33 
35  prepareWorkingDatabase(StartupWsvDataPolicy startup_wsv_data_policy,
36  const iroha::ametsuchi::RocksDbOptions &options);
37 
38  /*
39  * Drop working database.
40  * @return Error message if dropping has failed.
41  */
43  RocksDbCommon &common, const iroha::ametsuchi::RocksDbOptions &options);
44  };
45 
46 } // namespace iroha::ametsuchi
47 
48 #endif // IROHA_PG_CONNECTION_INIT_HPP
Definition: block_query.hpp:17
Definition: result_fwd.hpp:27
static expected::Result< std::shared_ptr< RocksDBPort >, std::string > init(StartupWsvDataPolicy startup_wsv_data_policy, iroha::ametsuchi::RocksDbOptions const &opt, logger::LoggerManagerTreePtr log_manager)
Definition: rocksdb_connection_init.cpp:54
Definition: rocksdb_options.hpp:14
StartupWsvDataPolicy
Definition: startup_params.hpp:13
Definition: rocksdb_connection_init.hpp:27
static expected::Result< std::shared_ptr< RocksDBPort >, std::string > prepareWorkingDatabase(StartupWsvDataPolicy startup_wsv_data_policy, const iroha::ametsuchi::RocksDbOptions &options)
Definition: rocksdb_connection_init.cpp:61
std::shared_ptr< LoggerManagerTree > LoggerManagerTreePtr
Definition: logger_manager_fwd.hpp:14
Definition: rocksdb_common.hpp:557
static expected::Result< void, std::string > dropWorkingDatabase(RocksDbCommon &common, const iroha::ametsuchi::RocksDbOptions &options)
Definition: rocksdb_connection_init.cpp:118