AWS SDK for C++

AWS SDK for C++ Version 1.11.719

Loading...
Searching...
No Matches
CreateTargetGroupRequest.h
1
6#pragma once
7#include <aws/core/utils/memory/stl/AWSString.h>
8#include <aws/core/utils/memory/stl/AWSVector.h>
9#include <aws/elasticloadbalancingv2/ElasticLoadBalancingv2Request.h>
10#include <aws/elasticloadbalancingv2/ElasticLoadBalancingv2_EXPORTS.h>
11#include <aws/elasticloadbalancingv2/model/Matcher.h>
12#include <aws/elasticloadbalancingv2/model/ProtocolEnum.h>
13#include <aws/elasticloadbalancingv2/model/Tag.h>
14#include <aws/elasticloadbalancingv2/model/TargetGroupIpAddressTypeEnum.h>
15#include <aws/elasticloadbalancingv2/model/TargetTypeEnum.h>
16
17#include <utility>
18
19namespace Aws {
20namespace ElasticLoadBalancingv2 {
21namespace Model {
22
26 public:
27 AWS_ELASTICLOADBALANCINGV2_API CreateTargetGroupRequest() = default;
28
29 // Service request name is the Operation name which will send this request out,
30 // each operation should has unique request name, so that we can get operation's name from this request.
31 // Note: this is not true for response, multiple operations may have the same response name,
32 // so we can not get operation's name from response.
33 inline virtual const char* GetServiceRequestName() const override { return "CreateTargetGroup"; }
34
35 AWS_ELASTICLOADBALANCINGV2_API Aws::String SerializePayload() const override;
36
37 protected:
38 AWS_ELASTICLOADBALANCINGV2_API void DumpBodyToUrl(Aws::Http::URI& uri) const override;
39
40 public:
42
47 inline const Aws::String& GetName() const { return m_name; }
48 inline bool NameHasBeenSet() const { return m_nameHasBeenSet; }
49 template <typename NameT = Aws::String>
50 void SetName(NameT&& value) {
51 m_nameHasBeenSet = true;
52 m_name = std::forward<NameT>(value);
53 }
54 template <typename NameT = Aws::String>
56 SetName(std::forward<NameT>(value));
57 return *this;
58 }
60
62
71 inline ProtocolEnum GetProtocol() const { return m_protocol; }
72 inline bool ProtocolHasBeenSet() const { return m_protocolHasBeenSet; }
73 inline void SetProtocol(ProtocolEnum value) {
74 m_protocolHasBeenSet = true;
75 m_protocol = value;
76 }
78 SetProtocol(value);
79 return *this;
80 }
82
84
90 inline const Aws::String& GetProtocolVersion() const { return m_protocolVersion; }
91 inline bool ProtocolVersionHasBeenSet() const { return m_protocolVersionHasBeenSet; }
92 template <typename ProtocolVersionT = Aws::String>
93 void SetProtocolVersion(ProtocolVersionT&& value) {
94 m_protocolVersionHasBeenSet = true;
95 m_protocolVersion = std::forward<ProtocolVersionT>(value);
96 }
97 template <typename ProtocolVersionT = Aws::String>
98 CreateTargetGroupRequest& WithProtocolVersion(ProtocolVersionT&& value) {
99 SetProtocolVersion(std::forward<ProtocolVersionT>(value));
100 return *this;
101 }
103
105
111 inline int GetPort() const { return m_port; }
112 inline bool PortHasBeenSet() const { return m_portHasBeenSet; }
113 inline void SetPort(int value) {
114 m_portHasBeenSet = true;
115 m_port = value;
116 }
118 SetPort(value);
119 return *this;
120 }
122
124
129 inline const Aws::String& GetVpcId() const { return m_vpcId; }
130 inline bool VpcIdHasBeenSet() const { return m_vpcIdHasBeenSet; }
131 template <typename VpcIdT = Aws::String>
132 void SetVpcId(VpcIdT&& value) {
133 m_vpcIdHasBeenSet = true;
134 m_vpcId = std::forward<VpcIdT>(value);
135 }
136 template <typename VpcIdT = Aws::String>
138 SetVpcId(std::forward<VpcIdT>(value));
139 return *this;
140 }
142
144
152 inline ProtocolEnum GetHealthCheckProtocol() const { return m_healthCheckProtocol; }
153 inline bool HealthCheckProtocolHasBeenSet() const { return m_healthCheckProtocolHasBeenSet; }
155 m_healthCheckProtocolHasBeenSet = true;
156 m_healthCheckProtocol = value;
157 }
160 return *this;
161 }
163
165
172 inline const Aws::String& GetHealthCheckPort() const { return m_healthCheckPort; }
173 inline bool HealthCheckPortHasBeenSet() const { return m_healthCheckPortHasBeenSet; }
174 template <typename HealthCheckPortT = Aws::String>
175 void SetHealthCheckPort(HealthCheckPortT&& value) {
176 m_healthCheckPortHasBeenSet = true;
177 m_healthCheckPort = std::forward<HealthCheckPortT>(value);
178 }
179 template <typename HealthCheckPortT = Aws::String>
181 SetHealthCheckPort(std::forward<HealthCheckPortT>(value));
182 return *this;
183 }
185
187
193 inline bool GetHealthCheckEnabled() const { return m_healthCheckEnabled; }
194 inline bool HealthCheckEnabledHasBeenSet() const { return m_healthCheckEnabledHasBeenSet; }
195 inline void SetHealthCheckEnabled(bool value) {
196 m_healthCheckEnabledHasBeenSet = true;
197 m_healthCheckEnabled = value;
198 }
201 return *this;
202 }
204
206
213 inline const Aws::String& GetHealthCheckPath() const { return m_healthCheckPath; }
214 inline bool HealthCheckPathHasBeenSet() const { return m_healthCheckPathHasBeenSet; }
215 template <typename HealthCheckPathT = Aws::String>
216 void SetHealthCheckPath(HealthCheckPathT&& value) {
217 m_healthCheckPathHasBeenSet = true;
218 m_healthCheckPath = std::forward<HealthCheckPathT>(value);
219 }
220 template <typename HealthCheckPathT = Aws::String>
222 SetHealthCheckPath(std::forward<HealthCheckPathT>(value));
223 return *this;
224 }
226
228
235 inline int GetHealthCheckIntervalSeconds() const { return m_healthCheckIntervalSeconds; }
236 inline bool HealthCheckIntervalSecondsHasBeenSet() const { return m_healthCheckIntervalSecondsHasBeenSet; }
237 inline void SetHealthCheckIntervalSeconds(int value) {
238 m_healthCheckIntervalSecondsHasBeenSet = true;
239 m_healthCheckIntervalSeconds = value;
240 }
243 return *this;
244 }
246
248
256 inline int GetHealthCheckTimeoutSeconds() const { return m_healthCheckTimeoutSeconds; }
257 inline bool HealthCheckTimeoutSecondsHasBeenSet() const { return m_healthCheckTimeoutSecondsHasBeenSet; }
258 inline void SetHealthCheckTimeoutSeconds(int value) {
259 m_healthCheckTimeoutSecondsHasBeenSet = true;
260 m_healthCheckTimeoutSeconds = value;
261 }
264 return *this;
265 }
267
269
276 inline int GetHealthyThresholdCount() const { return m_healthyThresholdCount; }
277 inline bool HealthyThresholdCountHasBeenSet() const { return m_healthyThresholdCountHasBeenSet; }
278 inline void SetHealthyThresholdCount(int value) {
279 m_healthyThresholdCountHasBeenSet = true;
280 m_healthyThresholdCount = value;
281 }
284 return *this;
285 }
287
289
296 inline int GetUnhealthyThresholdCount() const { return m_unhealthyThresholdCount; }
297 inline bool UnhealthyThresholdCountHasBeenSet() const { return m_unhealthyThresholdCountHasBeenSet; }
298 inline void SetUnhealthyThresholdCount(int value) {
299 m_unhealthyThresholdCountHasBeenSet = true;
300 m_unhealthyThresholdCount = value;
301 }
304 return *this;
305 }
307
309
316 inline const Matcher& GetMatcher() const { return m_matcher; }
317 inline bool MatcherHasBeenSet() const { return m_matcherHasBeenSet; }
318 template <typename MatcherT = Matcher>
319 void SetMatcher(MatcherT&& value) {
320 m_matcherHasBeenSet = true;
321 m_matcher = std::forward<MatcherT>(value);
322 }
323 template <typename MatcherT = Matcher>
325 SetMatcher(std::forward<MatcherT>(value));
326 return *this;
327 }
329
331
344 inline TargetTypeEnum GetTargetType() const { return m_targetType; }
345 inline bool TargetTypeHasBeenSet() const { return m_targetTypeHasBeenSet; }
346 inline void SetTargetType(TargetTypeEnum value) {
347 m_targetTypeHasBeenSet = true;
348 m_targetType = value;
349 }
351 SetTargetType(value);
352 return *this;
353 }
355
357
360 inline const Aws::Vector<Tag>& GetTags() const { return m_tags; }
361 inline bool TagsHasBeenSet() const { return m_tagsHasBeenSet; }
362 template <typename TagsT = Aws::Vector<Tag>>
363 void SetTags(TagsT&& value) {
364 m_tagsHasBeenSet = true;
365 m_tags = std::forward<TagsT>(value);
366 }
367 template <typename TagsT = Aws::Vector<Tag>>
369 SetTags(std::forward<TagsT>(value));
370 return *this;
371 }
372 template <typename TagsT = Tag>
374 m_tagsHasBeenSet = true;
375 m_tags.emplace_back(std::forward<TagsT>(value));
376 return *this;
377 }
379
381
384 inline TargetGroupIpAddressTypeEnum GetIpAddressType() const { return m_ipAddressType; }
385 inline bool IpAddressTypeHasBeenSet() const { return m_ipAddressTypeHasBeenSet; }
387 m_ipAddressTypeHasBeenSet = true;
388 m_ipAddressType = value;
389 }
391 SetIpAddressType(value);
392 return *this;
393 }
395
397
401 inline int GetTargetControlPort() const { return m_targetControlPort; }
402 inline bool TargetControlPortHasBeenSet() const { return m_targetControlPortHasBeenSet; }
403 inline void SetTargetControlPort(int value) {
404 m_targetControlPortHasBeenSet = true;
405 m_targetControlPort = value;
406 }
409 return *this;
410 }
412 private:
413 Aws::String m_name;
414
416
417 Aws::String m_protocolVersion;
418
419 int m_port{0};
420
421 Aws::String m_vpcId;
422
423 ProtocolEnum m_healthCheckProtocol{ProtocolEnum::NOT_SET};
424
425 Aws::String m_healthCheckPort;
426
427 bool m_healthCheckEnabled{false};
428
429 Aws::String m_healthCheckPath;
430
431 int m_healthCheckIntervalSeconds{0};
432
433 int m_healthCheckTimeoutSeconds{0};
434
435 int m_healthyThresholdCount{0};
436
437 int m_unhealthyThresholdCount{0};
438
439 Matcher m_matcher;
440
442
443 Aws::Vector<Tag> m_tags;
444
446
447 int m_targetControlPort{0};
448 bool m_nameHasBeenSet = false;
449 bool m_protocolHasBeenSet = false;
450 bool m_protocolVersionHasBeenSet = false;
451 bool m_portHasBeenSet = false;
452 bool m_vpcIdHasBeenSet = false;
453 bool m_healthCheckProtocolHasBeenSet = false;
454 bool m_healthCheckPortHasBeenSet = false;
455 bool m_healthCheckEnabledHasBeenSet = false;
456 bool m_healthCheckPathHasBeenSet = false;
457 bool m_healthCheckIntervalSecondsHasBeenSet = false;
458 bool m_healthCheckTimeoutSecondsHasBeenSet = false;
459 bool m_healthyThresholdCountHasBeenSet = false;
460 bool m_unhealthyThresholdCountHasBeenSet = false;
461 bool m_matcherHasBeenSet = false;
462 bool m_targetTypeHasBeenSet = false;
463 bool m_tagsHasBeenSet = false;
464 bool m_ipAddressTypeHasBeenSet = false;
465 bool m_targetControlPortHasBeenSet = false;
466};
467
468} // namespace Model
469} // namespace ElasticLoadBalancingv2
470} // namespace Aws
CreateTargetGroupRequest & WithHealthCheckPort(HealthCheckPortT &&value)
CreateTargetGroupRequest & WithIpAddressType(TargetGroupIpAddressTypeEnum value)
AWS_ELASTICLOADBALANCINGV2_API void DumpBodyToUrl(Aws::Http::URI &uri) const override
AWS_ELASTICLOADBALANCINGV2_API Aws::String SerializePayload() const override
CreateTargetGroupRequest & WithHealthCheckProtocol(ProtocolEnum value)
CreateTargetGroupRequest & WithTargetType(TargetTypeEnum value)
AWS_ELASTICLOADBALANCINGV2_API CreateTargetGroupRequest()=default
CreateTargetGroupRequest & WithHealthCheckPath(HealthCheckPathT &&value)
CreateTargetGroupRequest & WithProtocol(ProtocolEnum value)
CreateTargetGroupRequest & WithProtocolVersion(ProtocolVersionT &&value)
std::basic_string< char, std::char_traits< char >, Aws::Allocator< char > > String
std::vector< T, Aws::Allocator< T > > Vector