hyperledger/iroha
Iroha - A simple, decentralized ledger http://iroha.tech
rocksdb_wsv_command.hpp
Go to the documentation of this file.
1 
6 #ifndef IROHA_ROCKSDB_WSV_COMMAND_HPP
7 #define IROHA_ROCKSDB_WSV_COMMAND_HPP
8 
10 
12 
13 namespace iroha {
14  namespace ametsuchi {
15  struct RocksDBPort;
16  struct RocksDBContext;
17 
18  class RocksDBWsvCommand : public WsvCommand {
19  public:
20  enum ErrorCodes { kNotUsed = 1000 };
21 
22  explicit RocksDBWsvCommand(std::shared_ptr<RocksDBContext> db_context);
24  const shared_model::interface::types::RoleIdType &role_name) override;
27  const shared_model::interface::types::RoleIdType &role_name) override;
30  const shared_model::interface::types::RoleIdType &role_name) override;
34  override;
36  const shared_model::interface::Account &account) override;
38  const shared_model::interface::Account &account) override;
42  &creator_account_id,
43  const std::string &key,
44  const std::string &val) override;
46  const shared_model::interface::Asset &asset) override;
48  const shared_model::interface::AccountAsset &asset) override;
50  shared_model::interface::types::PublicKeyHexStringView signatory)
51  override;
54  shared_model::interface::types::PublicKeyHexStringView signatory)
55  override;
58  shared_model::interface::types::PublicKeyHexStringView signatory)
59  override;
61  shared_model::interface::types::PublicKeyHexStringView signatory)
62  override;
64  const shared_model::interface::Peer &peer) override;
66  const shared_model::interface::Peer &peer) override;
68  const shared_model::interface::Domain &domain) override;
71  &permittee_account_id,
76  &permittee_account_id,
80  const TopBlockInfo &top_block_info) const override;
81 
82  private:
83  mutable std::shared_ptr<RocksDBContext> db_context_;
84  };
85  } // namespace ametsuchi
86 } // namespace iroha
87 
88 #endif // IROHA_ROCKSDB_WSV_COMMAND_HPP
Definition: account.hpp:20
Definition: rocksdb_wsv_command.hpp:20
Definition: block_query.hpp:17
RocksDBWsvCommand(std::shared_ptr< RocksDBContext > db_context)
Definition: rocksdb_wsv_command.cpp:39
WsvCommandResult deleteAccountRole(const shared_model::interface::types::AccountIdType &account_id, const shared_model::interface::types::RoleIdType &role_name) override
Definition: rocksdb_wsv_command.cpp:83
WsvCommandResult insertAccount(const shared_model::interface::Account &account) override
Definition: rocksdb_wsv_command.cpp:199
WsvCommandResult insertAccountGrantablePermission(const shared_model::interface::types::AccountIdType &permittee_account_id, const shared_model::interface::types::AccountIdType &account_id, shared_model::interface::permissions::Grantable permission) override
Definition: rocksdb_wsv_command.cpp:119
Grantable
Definition: permissions.hpp:76
WsvCommandResult upsertAccountAsset(const shared_model::interface::AccountAsset &asset) override
Definition: rocksdb_wsv_command.cpp:234
WsvCommandResult insertAsset(const shared_model::interface::Asset &asset) override
Definition: rocksdb_wsv_command.cpp:217
Definition: peer.hpp:20
WsvCommandResult insertSignatory(shared_model::interface::types::PublicKeyHexStringView signatory) override
Definition: rocksdb_wsv_command.cpp:256
Definition: permissions.hpp:103
Definition: domain.hpp:19
Definition: result_fwd.hpp:27
Definition: ledger_state.hpp:14
WsvCommandResult insertRole(const shared_model::interface::types::RoleIdType &role_name) override
Definition: rocksdb_wsv_command.cpp:45
WsvCommandResult setTopBlockInfo(const TopBlockInfo &top_block_info) const override
Definition: rocksdb_wsv_command.cpp:434
ErrorCodes
Definition: rocksdb_wsv_command.hpp:20
WsvCommandResult setAccountKV(const shared_model::interface::types::AccountIdType &account_id, const shared_model::interface::types::AccountIdType &creator_account_id, const std::string &key, const std::string &val) override
Definition: rocksdb_wsv_command.cpp:416
Definition: wsv_command.hpp:51
Definition: block_query.hpp:15
WsvCommandResult deleteAccountSignatory(const shared_model::interface::types::AccountIdType &account_id, shared_model::interface::types::PublicKeyHexStringView signatory) override
Definition: rocksdb_wsv_command.cpp:293
std::string AccountIdType
Type of account id.
Definition: types.hpp:38
WsvCommandResult deleteAccountGrantablePermission(const shared_model::interface::types::AccountIdType &permittee_account_id, const shared_model::interface::types::AccountIdType &account_id, shared_model::interface::permissions::Grantable permission) override
Definition: rocksdb_wsv_command.cpp:159
Definition: asset.hpp:19
Definition: rocksdb_wsv_command.hpp:18
WsvCommandResult insertPeer(const shared_model::interface::Peer &peer) override
Definition: rocksdb_wsv_command.cpp:329
WsvCommandResult deleteSignatory(shared_model::interface::types::PublicKeyHexStringView signatory) override
Definition: rocksdb_wsv_command.cpp:319
WsvCommandResult insertAccountSignatory(const shared_model::interface::types::AccountIdType &account_id, shared_model::interface::types::PublicKeyHexStringView signatory) override
Definition: rocksdb_wsv_command.cpp:266
WsvCommandResult insertDomain(const shared_model::interface::Domain &domain) override
Definition: rocksdb_wsv_command.cpp:379
WsvCommandResult deletePeer(const shared_model::interface::Peer &peer) override
Definition: rocksdb_wsv_command.cpp:355
WsvCommandResult insertAccountRole(const shared_model::interface::types::AccountIdType &account_id, const shared_model::interface::types::RoleIdType &role_name) override
Definition: rocksdb_wsv_command.cpp:62
WsvCommandResult insertRolePermissions(const shared_model::interface::types::RoleIdType &role_id, const shared_model::interface::RolePermissionSet &permissions) override
Definition: rocksdb_wsv_command.cpp:105
Definition: account_asset.hpp:20
std::string RoleIdType
Type of role (i.e admin, user)
Definition: types.hpp:56
WsvCommandResult updateAccount(const shared_model::interface::Account &account) override
Definition: rocksdb_wsv_command.cpp:395