AWS SDK for C++

AWS SDK for C++ Version 1.11.716

Loading...
Searching...
No Matches
CreateRouteServerRequest.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/ec2/EC2Request.h>
11#include <aws/ec2/EC2_EXPORTS.h>
12#include <aws/ec2/model/RouteServerPersistRoutesAction.h>
13#include <aws/ec2/model/TagSpecification.h>
14
15#include <utility>
16
17namespace Aws {
18namespace EC2 {
19namespace Model {
20
24 public:
25 AWS_EC2_API CreateRouteServerRequest() = default;
26
27 // Service request name is the Operation name which will send this request out,
28 // each operation should has unique request name, so that we can get operation's name from this request.
29 // Note: this is not true for response, multiple operations may have the same response name,
30 // so we can not get operation's name from response.
31 inline virtual const char* GetServiceRequestName() const override { return "CreateRouteServer"; }
32
33 AWS_EC2_API Aws::String SerializePayload() const override;
34
35 protected:
36 AWS_EC2_API void DumpBodyToUrl(Aws::Http::URI& uri) const override;
37
38 public:
40
45 inline long long GetAmazonSideAsn() const { return m_amazonSideAsn; }
46 inline bool AmazonSideAsnHasBeenSet() const { return m_amazonSideAsnHasBeenSet; }
47 inline void SetAmazonSideAsn(long long value) {
48 m_amazonSideAsnHasBeenSet = true;
49 m_amazonSideAsn = value;
50 }
52 SetAmazonSideAsn(value);
53 return *this;
54 }
56
58
61 inline const Aws::String& GetClientToken() const { return m_clientToken; }
62 inline bool ClientTokenHasBeenSet() const { return m_clientTokenHasBeenSet; }
63 template <typename ClientTokenT = Aws::String>
64 void SetClientToken(ClientTokenT&& value) {
65 m_clientTokenHasBeenSet = true;
66 m_clientToken = std::forward<ClientTokenT>(value);
67 }
68 template <typename ClientTokenT = Aws::String>
70 SetClientToken(std::forward<ClientTokenT>(value));
71 return *this;
72 }
74
76
82 inline bool GetDryRun() const { return m_dryRun; }
83 inline bool DryRunHasBeenSet() const { return m_dryRunHasBeenSet; }
84 inline void SetDryRun(bool value) {
85 m_dryRunHasBeenSet = true;
86 m_dryRun = value;
87 }
89 SetDryRun(value);
90 return *this;
91 }
93
95
99 inline RouteServerPersistRoutesAction GetPersistRoutes() const { return m_persistRoutes; }
100 inline bool PersistRoutesHasBeenSet() const { return m_persistRoutesHasBeenSet; }
102 m_persistRoutesHasBeenSet = true;
103 m_persistRoutes = value;
104 }
106 SetPersistRoutes(value);
107 return *this;
108 }
110
112
124 inline long long GetPersistRoutesDuration() const { return m_persistRoutesDuration; }
125 inline bool PersistRoutesDurationHasBeenSet() const { return m_persistRoutesDurationHasBeenSet; }
126 inline void SetPersistRoutesDuration(long long value) {
127 m_persistRoutesDurationHasBeenSet = true;
128 m_persistRoutesDuration = value;
129 }
132 return *this;
133 }
135
137
142 inline bool GetSnsNotificationsEnabled() const { return m_snsNotificationsEnabled; }
143 inline bool SnsNotificationsEnabledHasBeenSet() const { return m_snsNotificationsEnabledHasBeenSet; }
144 inline void SetSnsNotificationsEnabled(bool value) {
145 m_snsNotificationsEnabledHasBeenSet = true;
146 m_snsNotificationsEnabled = value;
147 }
150 return *this;
151 }
153
155
158 inline const Aws::Vector<TagSpecification>& GetTagSpecifications() const { return m_tagSpecifications; }
159 inline bool TagSpecificationsHasBeenSet() const { return m_tagSpecificationsHasBeenSet; }
160 template <typename TagSpecificationsT = Aws::Vector<TagSpecification>>
161 void SetTagSpecifications(TagSpecificationsT&& value) {
162 m_tagSpecificationsHasBeenSet = true;
163 m_tagSpecifications = std::forward<TagSpecificationsT>(value);
164 }
165 template <typename TagSpecificationsT = Aws::Vector<TagSpecification>>
166 CreateRouteServerRequest& WithTagSpecifications(TagSpecificationsT&& value) {
167 SetTagSpecifications(std::forward<TagSpecificationsT>(value));
168 return *this;
169 }
170 template <typename TagSpecificationsT = TagSpecification>
171 CreateRouteServerRequest& AddTagSpecifications(TagSpecificationsT&& value) {
172 m_tagSpecificationsHasBeenSet = true;
173 m_tagSpecifications.emplace_back(std::forward<TagSpecificationsT>(value));
174 return *this;
175 }
177 private:
178 long long m_amazonSideAsn{0};
179
181
182 bool m_dryRun{false};
183
185
186 long long m_persistRoutesDuration{0};
187
188 bool m_snsNotificationsEnabled{false};
189
190 Aws::Vector<TagSpecification> m_tagSpecifications;
191 bool m_amazonSideAsnHasBeenSet = false;
192 bool m_clientTokenHasBeenSet = true;
193 bool m_dryRunHasBeenSet = false;
194 bool m_persistRoutesHasBeenSet = false;
195 bool m_persistRoutesDurationHasBeenSet = false;
196 bool m_snsNotificationsEnabledHasBeenSet = false;
197 bool m_tagSpecificationsHasBeenSet = false;
198};
199
200} // namespace Model
201} // namespace EC2
202} // namespace Aws
CreateRouteServerRequest & AddTagSpecifications(TagSpecificationsT &&value)
AWS_EC2_API CreateRouteServerRequest()=default
CreateRouteServerRequest & WithSnsNotificationsEnabled(bool value)
void SetPersistRoutes(RouteServerPersistRoutesAction value)
CreateRouteServerRequest & WithPersistRoutesDuration(long long value)
CreateRouteServerRequest & WithAmazonSideAsn(long long value)
CreateRouteServerRequest & WithTagSpecifications(TagSpecificationsT &&value)
CreateRouteServerRequest & WithPersistRoutes(RouteServerPersistRoutesAction value)
virtual const char * GetServiceRequestName() const override
AWS_EC2_API void DumpBodyToUrl(Aws::Http::URI &uri) const override
CreateRouteServerRequest & WithClientToken(ClientTokenT &&value)
AWS_EC2_API Aws::String SerializePayload() const override
CreateRouteServerRequest & WithDryRun(bool value)
const Aws::Vector< TagSpecification > & GetTagSpecifications() const
RouteServerPersistRoutesAction GetPersistRoutes() const
void SetTagSpecifications(TagSpecificationsT &&value)
static Aws::Utils::UUID PseudoRandomUUID()
std::basic_string< char, std::char_traits< char >, Aws::Allocator< char > > String
std::vector< T, Aws::Allocator< T > > Vector