AWS SDK for C++

AWS SDK for C++ Version 1.11.717

Loading...
Searching...
No Matches
CreateProposalRequest.h
1
6#pragma once
7#include <aws/core/utils/UUID.h>
8#include <aws/core/utils/memory/stl/AWSMap.h>
9#include <aws/core/utils/memory/stl/AWSString.h>
10#include <aws/managedblockchain/ManagedBlockchainRequest.h>
11#include <aws/managedblockchain/ManagedBlockchain_EXPORTS.h>
12#include <aws/managedblockchain/model/ProposalActions.h>
13
14#include <utility>
15
16namespace Aws {
17namespace ManagedBlockchain {
18namespace Model {
19
23 public:
24 AWS_MANAGEDBLOCKCHAIN_API CreateProposalRequest() = default;
25
26 // Service request name is the Operation name which will send this request out,
27 // each operation should has unique request name, so that we can get operation's name from this request.
28 // Note: this is not true for response, multiple operations may have the same response name,
29 // so we can not get operation's name from response.
30 inline virtual const char* GetServiceRequestName() const override { return "CreateProposal"; }
31
32 AWS_MANAGEDBLOCKCHAIN_API Aws::String SerializePayload() const override;
33
35
42 inline const Aws::String& GetClientRequestToken() const { return m_clientRequestToken; }
43 inline bool ClientRequestTokenHasBeenSet() const { return m_clientRequestTokenHasBeenSet; }
44 template <typename ClientRequestTokenT = Aws::String>
45 void SetClientRequestToken(ClientRequestTokenT&& value) {
46 m_clientRequestTokenHasBeenSet = true;
47 m_clientRequestToken = std::forward<ClientRequestTokenT>(value);
48 }
49 template <typename ClientRequestTokenT = Aws::String>
50 CreateProposalRequest& WithClientRequestToken(ClientRequestTokenT&& value) {
51 SetClientRequestToken(std::forward<ClientRequestTokenT>(value));
52 return *this;
53 }
55
57
60 inline const Aws::String& GetNetworkId() const { return m_networkId; }
61 inline bool NetworkIdHasBeenSet() const { return m_networkIdHasBeenSet; }
62 template <typename NetworkIdT = Aws::String>
63 void SetNetworkId(NetworkIdT&& value) {
64 m_networkIdHasBeenSet = true;
65 m_networkId = std::forward<NetworkIdT>(value);
66 }
67 template <typename NetworkIdT = Aws::String>
68 CreateProposalRequest& WithNetworkId(NetworkIdT&& value) {
69 SetNetworkId(std::forward<NetworkIdT>(value));
70 return *this;
71 }
73
75
80 inline const Aws::String& GetMemberId() const { return m_memberId; }
81 inline bool MemberIdHasBeenSet() const { return m_memberIdHasBeenSet; }
82 template <typename MemberIdT = Aws::String>
83 void SetMemberId(MemberIdT&& value) {
84 m_memberIdHasBeenSet = true;
85 m_memberId = std::forward<MemberIdT>(value);
86 }
87 template <typename MemberIdT = Aws::String>
88 CreateProposalRequest& WithMemberId(MemberIdT&& value) {
89 SetMemberId(std::forward<MemberIdT>(value));
90 return *this;
91 }
93
95
101 inline const ProposalActions& GetActions() const { return m_actions; }
102 inline bool ActionsHasBeenSet() const { return m_actionsHasBeenSet; }
103 template <typename ActionsT = ProposalActions>
104 void SetActions(ActionsT&& value) {
105 m_actionsHasBeenSet = true;
106 m_actions = std::forward<ActionsT>(value);
107 }
108 template <typename ActionsT = ProposalActions>
110 SetActions(std::forward<ActionsT>(value));
111 return *this;
112 }
114
116
120 inline const Aws::String& GetDescription() const { return m_description; }
121 inline bool DescriptionHasBeenSet() const { return m_descriptionHasBeenSet; }
122 template <typename DescriptionT = Aws::String>
123 void SetDescription(DescriptionT&& value) {
124 m_descriptionHasBeenSet = true;
125 m_description = std::forward<DescriptionT>(value);
126 }
127 template <typename DescriptionT = Aws::String>
128 CreateProposalRequest& WithDescription(DescriptionT&& value) {
129 SetDescription(std::forward<DescriptionT>(value));
130 return *this;
131 }
133
135
147 inline const Aws::Map<Aws::String, Aws::String>& GetTags() const { return m_tags; }
148 inline bool TagsHasBeenSet() const { return m_tagsHasBeenSet; }
149 template <typename TagsT = Aws::Map<Aws::String, Aws::String>>
150 void SetTags(TagsT&& value) {
151 m_tagsHasBeenSet = true;
152 m_tags = std::forward<TagsT>(value);
153 }
154 template <typename TagsT = Aws::Map<Aws::String, Aws::String>>
156 SetTags(std::forward<TagsT>(value));
157 return *this;
158 }
159 template <typename TagsKeyT = Aws::String, typename TagsValueT = Aws::String>
160 CreateProposalRequest& AddTags(TagsKeyT&& key, TagsValueT&& value) {
161 m_tagsHasBeenSet = true;
162 m_tags.emplace(std::forward<TagsKeyT>(key), std::forward<TagsValueT>(value));
163 return *this;
164 }
166 private:
167 Aws::String m_clientRequestToken{Aws::Utils::UUID::PseudoRandomUUID()};
168
169 Aws::String m_networkId;
170
171 Aws::String m_memberId;
172
173 ProposalActions m_actions;
174
175 Aws::String m_description;
176
178 bool m_clientRequestTokenHasBeenSet = true;
179 bool m_networkIdHasBeenSet = false;
180 bool m_memberIdHasBeenSet = false;
181 bool m_actionsHasBeenSet = false;
182 bool m_descriptionHasBeenSet = false;
183 bool m_tagsHasBeenSet = false;
184};
185
186} // namespace Model
187} // namespace ManagedBlockchain
188} // namespace Aws
CreateProposalRequest & AddTags(TagsKeyT &&key, TagsValueT &&value)
CreateProposalRequest & WithNetworkId(NetworkIdT &&value)
CreateProposalRequest & WithActions(ActionsT &&value)
AWS_MANAGEDBLOCKCHAIN_API Aws::String SerializePayload() const override
virtual const char * GetServiceRequestName() const override
CreateProposalRequest & WithClientRequestToken(ClientRequestTokenT &&value)
const Aws::Map< Aws::String, Aws::String > & GetTags() const
AWS_MANAGEDBLOCKCHAIN_API CreateProposalRequest()=default
CreateProposalRequest & WithMemberId(MemberIdT &&value)
CreateProposalRequest & WithDescription(DescriptionT &&value)
static Aws::Utils::UUID PseudoRandomUUID()
std::map< K, V, std::less< K >, Aws::Allocator< std::pair< const K, V > > > Map
std::basic_string< char, std::char_traits< char >, Aws::Allocator< char > > String