Line data Source code
1 : /**
2 : * Copyright Soramitsu Co., Ltd. All Rights Reserved.
3 : * SPDX-License-Identifier: Apache-2.0
4 : */
5 :
6 : #include "backend/protobuf/commands/proto_remove_signatory.hpp"
7 : #include "cryptography/hash.hpp"
8 :
9 : namespace shared_model {
10 : namespace proto {
11 :
12 : template <typename CommandType>
13 : RemoveSignatory::RemoveSignatory(CommandType &&command)
14 200 : : CopyableProto(std::forward<CommandType>(command)),
15 202 : remove_signatory_{proto_->remove_signatory()},
16 204 : pubkey_{crypto::Hash::fromHexString(remove_signatory_.public_key())} {}
17 :
18 : template RemoveSignatory::RemoveSignatory(RemoveSignatory::TransportType &);
19 : template RemoveSignatory::RemoveSignatory(
20 : const RemoveSignatory::TransportType &);
21 : template RemoveSignatory::RemoveSignatory(
22 : RemoveSignatory::TransportType &&);
23 :
24 : RemoveSignatory::RemoveSignatory(const RemoveSignatory &o)
25 0 : : RemoveSignatory(o.proto_) {}
26 :
27 : RemoveSignatory::RemoveSignatory(RemoveSignatory &&o) noexcept
28 204 : : RemoveSignatory(std::move(o.proto_)) {}
29 :
30 : const interface::types::AccountIdType &RemoveSignatory::accountId() const {
31 138 : return remove_signatory_.account_id();
32 : }
33 :
34 : const interface::types::PubkeyType &RemoveSignatory::pubkey() const {
35 140 : return pubkey_;
36 : }
37 :
38 : } // namespace proto
39 : } // namespace shared_model
|