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/queries/proto_get_account_detail.hpp"
7 :
8 : namespace shared_model {
9 : namespace proto {
10 :
11 : template <typename QueryType>
12 : GetAccountDetail::GetAccountDetail(QueryType &&query)
13 47 : : CopyableProto(std::forward<QueryType>(query)),
14 47 : account_detail_{proto_->payload().get_account_detail()} {}
15 :
16 : template GetAccountDetail::GetAccountDetail(
17 : GetAccountDetail::TransportType &);
18 : template GetAccountDetail::GetAccountDetail(
19 : const GetAccountDetail::TransportType &);
20 : template GetAccountDetail::GetAccountDetail(
21 : GetAccountDetail::TransportType &&);
22 :
23 : GetAccountDetail::GetAccountDetail(const GetAccountDetail &o)
24 0 : : GetAccountDetail(o.proto_) {}
25 :
26 : GetAccountDetail::GetAccountDetail(GetAccountDetail &&o) noexcept
27 47 : : GetAccountDetail(std::move(o.proto_)) {}
28 :
29 : const interface::types::AccountIdType &GetAccountDetail::accountId() const {
30 79 : return account_detail_.opt_account_id_case()
31 74 : ? account_detail_.account_id()
32 5 : : proto_->payload().meta().creator_account_id();
33 : }
34 :
35 : boost::optional<interface::types::AccountDetailKeyType>
36 : GetAccountDetail::key() const {
37 80 : return account_detail_.opt_key_case()
38 6 : ? boost::make_optional(account_detail_.key())
39 74 : : boost::none;
40 : }
41 :
42 : boost::optional<interface::types::AccountIdType> GetAccountDetail::writer()
43 : const {
44 40 : return account_detail_.opt_writer_case()
45 5 : ? boost::make_optional(account_detail_.writer())
46 35 : : boost::none;
47 : }
48 :
49 : } // namespace proto
50 : } // namespace shared_model
|