AWS SDK for C++

AWS SDK for C++ Version 1.11.919

Loading...
Searching...
No Matches
CreateGatewayRequest.h
1
6#pragma once
7#include <aws/core/utils/UUID.h>
8#include <aws/core/utils/memory/stl/AWSString.h>
9#include <aws/core/utils/memory/stl/AWSVector.h>
10#include <aws/ecs/ECSRequest.h>
11#include <aws/ecs/ECS_EXPORTS.h>
12#include <aws/ecs/model/GatewayConfiguration.h>
13#include <aws/ecs/model/PropagateGatewayTags.h>
14#include <aws/ecs/model/Tag.h>
15
16#include <utility>
17
18namespace Aws {
19namespace ECS {
20namespace Model {
21
25 public:
26 AWS_ECS_API CreateGatewayRequest() = default;
27
28 // Service request name is the Operation name which will send this request out,
29 // each operation should has unique request name, so that we can get operation's name from this request.
30 // Note: this is not true for response, multiple operations may have the same response name,
31 // so we can not get operation's name from response.
32 inline virtual const char* GetServiceRequestName() const override { return "CreateGateway"; }
33
34 AWS_ECS_API Aws::String SerializePayload() const override;
35
37
39
43 inline const Aws::String& GetName() const { return m_name; }
44 inline bool NameHasBeenSet() const { return m_nameHasBeenSet; }
45 template <typename NameT = Aws::String>
46 void SetName(NameT&& value) {
47 m_nameHasBeenSet = true;
48 m_name = std::forward<NameT>(value);
49 }
50 template <typename NameT = Aws::String>
52 SetName(std::forward<NameT>(value));
53 return *this;
54 }
56
58
62 inline const Aws::String& GetInfrastructureRoleArn() const { return m_infrastructureRoleArn; }
63 inline bool InfrastructureRoleArnHasBeenSet() const { return m_infrastructureRoleArnHasBeenSet; }
64 template <typename InfrastructureRoleArnT = Aws::String>
65 void SetInfrastructureRoleArn(InfrastructureRoleArnT&& value) {
66 m_infrastructureRoleArnHasBeenSet = true;
67 m_infrastructureRoleArn = std::forward<InfrastructureRoleArnT>(value);
68 }
69 template <typename InfrastructureRoleArnT = Aws::String>
70 CreateGatewayRequest& WithInfrastructureRoleArn(InfrastructureRoleArnT&& value) {
71 SetInfrastructureRoleArn(std::forward<InfrastructureRoleArnT>(value));
72 return *this;
73 }
75
77
82 inline const Aws::String& GetClientToken() const { return m_clientToken; }
83 inline bool ClientTokenHasBeenSet() const { return m_clientTokenHasBeenSet; }
84 template <typename ClientTokenT = Aws::String>
85 void SetClientToken(ClientTokenT&& value) {
86 m_clientTokenHasBeenSet = true;
87 m_clientToken = std::forward<ClientTokenT>(value);
88 }
89 template <typename ClientTokenT = Aws::String>
90 CreateGatewayRequest& WithClientToken(ClientTokenT&& value) {
91 SetClientToken(std::forward<ClientTokenT>(value));
92 return *this;
93 }
95
97
102 inline bool GetDeletionProtection() const { return m_deletionProtection; }
103 inline bool DeletionProtectionHasBeenSet() const { return m_deletionProtectionHasBeenSet; }
104 inline void SetDeletionProtection(bool value) {
105 m_deletionProtectionHasBeenSet = true;
106 m_deletionProtection = value;
107 }
110 return *this;
111 }
113
115
121 inline const GatewayConfiguration& GetConfiguration() const { return m_configuration; }
122 inline bool ConfigurationHasBeenSet() const { return m_configurationHasBeenSet; }
123 template <typename ConfigurationT = GatewayConfiguration>
124 void SetConfiguration(ConfigurationT&& value) {
125 m_configurationHasBeenSet = true;
126 m_configuration = std::forward<ConfigurationT>(value);
127 }
128 template <typename ConfigurationT = GatewayConfiguration>
129 CreateGatewayRequest& WithConfiguration(ConfigurationT&& value) {
130 SetConfiguration(std::forward<ConfigurationT>(value));
131 return *this;
132 }
134
136
142 inline const Aws::Vector<Tag>& GetTags() const { return m_tags; }
143 inline bool TagsHasBeenSet() const { return m_tagsHasBeenSet; }
144 template <typename TagsT = Aws::Vector<Tag>>
145 void SetTags(TagsT&& value) {
146 m_tagsHasBeenSet = true;
147 m_tags = std::forward<TagsT>(value);
148 }
149 template <typename TagsT = Aws::Vector<Tag>>
151 SetTags(std::forward<TagsT>(value));
152 return *this;
153 }
154 template <typename TagsT = Tag>
156 m_tagsHasBeenSet = true;
157 m_tags.emplace_back(std::forward<TagsT>(value));
158 return *this;
159 }
161
163
168 inline PropagateGatewayTags GetPropagateTags() const { return m_propagateTags; }
169 inline bool PropagateTagsHasBeenSet() const { return m_propagateTagsHasBeenSet; }
171 m_propagateTagsHasBeenSet = true;
172 m_propagateTags = value;
173 }
175 SetPropagateTags(value);
176 return *this;
177 }
179 private:
180 Aws::String m_name;
181
182 Aws::String m_infrastructureRoleArn;
183
185
186 bool m_deletionProtection{false};
187
188 GatewayConfiguration m_configuration;
189
190 Aws::Vector<Tag> m_tags;
191
193 bool m_nameHasBeenSet = false;
194 bool m_infrastructureRoleArnHasBeenSet = false;
195 bool m_clientTokenHasBeenSet = true;
196 bool m_deletionProtectionHasBeenSet = false;
197 bool m_configurationHasBeenSet = false;
198 bool m_tagsHasBeenSet = false;
199 bool m_propagateTagsHasBeenSet = false;
200};
201
202} // namespace Model
203} // namespace ECS
204} // namespace Aws
const Aws::Vector< Tag > & GetTags() const
CreateGatewayRequest & AddTags(TagsT &&value)
AWS_ECS_API CreateGatewayRequest()=default
CreateGatewayRequest & WithConfiguration(ConfigurationT &&value)
CreateGatewayRequest & WithInfrastructureRoleArn(InfrastructureRoleArnT &&value)
AWS_ECS_API Aws::Http::HeaderValueCollection GetRequestSpecificHeaders() const override
void SetConfiguration(ConfigurationT &&value)
const GatewayConfiguration & GetConfiguration() const
CreateGatewayRequest & WithDeletionProtection(bool value)
virtual const char * GetServiceRequestName() const override
CreateGatewayRequest & WithName(NameT &&value)
CreateGatewayRequest & WithPropagateTags(PropagateGatewayTags value)
CreateGatewayRequest & WithClientToken(ClientTokenT &&value)
const Aws::String & GetInfrastructureRoleArn() const
AWS_ECS_API Aws::String SerializePayload() const override
void SetPropagateTags(PropagateGatewayTags value)
PropagateGatewayTags GetPropagateTags() const
void SetInfrastructureRoleArn(InfrastructureRoleArnT &&value)
const Aws::String & GetClientToken() const
CreateGatewayRequest & WithTags(TagsT &&value)
void SetClientToken(ClientTokenT &&value)
static Aws::Utils::UUID PseudoRandomUUID()
Aws::Map< Aws::String, Aws::String > HeaderValueCollection
std::basic_string< char, std::char_traits< char >, Aws::Allocator< char > > String
std::vector< T, Aws::Allocator< T > > Vector