Line data Source code
1 : /**
2 : * Copyright Soramitsu Co., Ltd. All Rights Reserved.
3 : * SPDX-License-Identifier: Apache-2.0
4 : */
5 : #ifndef IROHA_REMOVE_SIGNATORY_HPP
6 : #define IROHA_REMOVE_SIGNATORY_HPP
7 :
8 : #include <string>
9 : #include "crypto/keypair.hpp"
10 : #include "model/command.hpp"
11 :
12 : namespace iroha {
13 : namespace model {
14 :
15 : /**
16 : * Attach signatory for account
17 : */
18 : struct RemoveSignatory : public Command {
19 : /**
20 : * Account to remove from
21 : */
22 : std::string account_id;
23 :
24 : /**
25 : * Public key of signatory to remove.
26 : * Note: This public key must be attach to account.
27 : * There must be at least two signatories to perform this operation.
28 : */
29 : pubkey_t pubkey;
30 :
31 : bool operator==(const Command &command) const override;
32 :
33 : RemoveSignatory() {}
34 :
35 : RemoveSignatory(const std::string &account_id, const pubkey_t &pubkey)
36 0 : : account_id(account_id), pubkey(pubkey) {}
37 : };
38 : } // namespace model
39 : } // namespace iroha
40 :
41 : #endif // IROHA_REMOVE_SIGNATORY_HPP
|