AWS SDK for C++

AWS SDK for C++ Version 1.11.606

Loading...
Searching...
No Matches
CreateTargetGroupRequest.h
1
6#pragma once
7#include <aws/elasticloadbalancingv2/ElasticLoadBalancingv2_EXPORTS.h>
8#include <aws/elasticloadbalancingv2/ElasticLoadBalancingv2Request.h>
9#include <aws/core/utils/memory/stl/AWSString.h>
10#include <aws/elasticloadbalancingv2/model/ProtocolEnum.h>
11#include <aws/elasticloadbalancingv2/model/Matcher.h>
12#include <aws/elasticloadbalancingv2/model/TargetTypeEnum.h>
13#include <aws/core/utils/memory/stl/AWSVector.h>
14#include <aws/elasticloadbalancingv2/model/TargetGroupIpAddressTypeEnum.h>
15#include <aws/elasticloadbalancingv2/model/Tag.h>
16#include <utility>
17
18namespace Aws
19{
20namespace ElasticLoadBalancingv2
21{
22namespace Model
23{
24
28 {
29 public:
30 AWS_ELASTICLOADBALANCINGV2_API CreateTargetGroupRequest() = default;
31
32 // Service request name is the Operation name which will send this request out,
33 // each operation should has unique request name, so that we can get operation's name from this request.
34 // Note: this is not true for response, multiple operations may have the same response name,
35 // so we can not get operation's name from response.
36 inline virtual const char* GetServiceRequestName() const override { return "CreateTargetGroup"; }
37
38 AWS_ELASTICLOADBALANCINGV2_API Aws::String SerializePayload() const override;
39
40 protected:
41 AWS_ELASTICLOADBALANCINGV2_API void DumpBodyToUrl(Aws::Http::URI& uri ) const override;
42
43 public:
44
46
51 inline const Aws::String& GetName() const { return m_name; }
52 inline bool NameHasBeenSet() const { return m_nameHasBeenSet; }
53 template<typename NameT = Aws::String>
54 void SetName(NameT&& value) { m_nameHasBeenSet = true; m_name = std::forward<NameT>(value); }
55 template<typename NameT = Aws::String>
56 CreateTargetGroupRequest& WithName(NameT&& value) { SetName(std::forward<NameT>(value)); return *this;}
58
60
68 inline ProtocolEnum GetProtocol() const { return m_protocol; }
69 inline bool ProtocolHasBeenSet() const { return m_protocolHasBeenSet; }
70 inline void SetProtocol(ProtocolEnum value) { m_protocolHasBeenSet = true; m_protocol = value; }
71 inline CreateTargetGroupRequest& WithProtocol(ProtocolEnum value) { SetProtocol(value); return *this;}
73
75
81 inline const Aws::String& GetProtocolVersion() const { return m_protocolVersion; }
82 inline bool ProtocolVersionHasBeenSet() const { return m_protocolVersionHasBeenSet; }
83 template<typename ProtocolVersionT = Aws::String>
84 void SetProtocolVersion(ProtocolVersionT&& value) { m_protocolVersionHasBeenSet = true; m_protocolVersion = std::forward<ProtocolVersionT>(value); }
85 template<typename ProtocolVersionT = Aws::String>
86 CreateTargetGroupRequest& WithProtocolVersion(ProtocolVersionT&& value) { SetProtocolVersion(std::forward<ProtocolVersionT>(value)); return *this;}
88
90
96 inline int GetPort() const { return m_port; }
97 inline bool PortHasBeenSet() const { return m_portHasBeenSet; }
98 inline void SetPort(int value) { m_portHasBeenSet = true; m_port = value; }
99 inline CreateTargetGroupRequest& WithPort(int value) { SetPort(value); return *this;}
101
103
108 inline const Aws::String& GetVpcId() const { return m_vpcId; }
109 inline bool VpcIdHasBeenSet() const { return m_vpcIdHasBeenSet; }
110 template<typename VpcIdT = Aws::String>
111 void SetVpcId(VpcIdT&& value) { m_vpcIdHasBeenSet = true; m_vpcId = std::forward<VpcIdT>(value); }
112 template<typename VpcIdT = Aws::String>
113 CreateTargetGroupRequest& WithVpcId(VpcIdT&& value) { SetVpcId(std::forward<VpcIdT>(value)); return *this;}
115
117
125 inline ProtocolEnum GetHealthCheckProtocol() const { return m_healthCheckProtocol; }
126 inline bool HealthCheckProtocolHasBeenSet() const { return m_healthCheckProtocolHasBeenSet; }
127 inline void SetHealthCheckProtocol(ProtocolEnum value) { m_healthCheckProtocolHasBeenSet = true; m_healthCheckProtocol = value; }
130
132
139 inline const Aws::String& GetHealthCheckPort() const { return m_healthCheckPort; }
140 inline bool HealthCheckPortHasBeenSet() const { return m_healthCheckPortHasBeenSet; }
141 template<typename HealthCheckPortT = Aws::String>
142 void SetHealthCheckPort(HealthCheckPortT&& value) { m_healthCheckPortHasBeenSet = true; m_healthCheckPort = std::forward<HealthCheckPortT>(value); }
143 template<typename HealthCheckPortT = Aws::String>
144 CreateTargetGroupRequest& WithHealthCheckPort(HealthCheckPortT&& value) { SetHealthCheckPort(std::forward<HealthCheckPortT>(value)); return *this;}
146
148
154 inline bool GetHealthCheckEnabled() const { return m_healthCheckEnabled; }
155 inline bool HealthCheckEnabledHasBeenSet() const { return m_healthCheckEnabledHasBeenSet; }
156 inline void SetHealthCheckEnabled(bool value) { m_healthCheckEnabledHasBeenSet = true; m_healthCheckEnabled = value; }
157 inline CreateTargetGroupRequest& WithHealthCheckEnabled(bool value) { SetHealthCheckEnabled(value); return *this;}
159
161
168 inline const Aws::String& GetHealthCheckPath() const { return m_healthCheckPath; }
169 inline bool HealthCheckPathHasBeenSet() const { return m_healthCheckPathHasBeenSet; }
170 template<typename HealthCheckPathT = Aws::String>
171 void SetHealthCheckPath(HealthCheckPathT&& value) { m_healthCheckPathHasBeenSet = true; m_healthCheckPath = std::forward<HealthCheckPathT>(value); }
172 template<typename HealthCheckPathT = Aws::String>
173 CreateTargetGroupRequest& WithHealthCheckPath(HealthCheckPathT&& value) { SetHealthCheckPath(std::forward<HealthCheckPathT>(value)); return *this;}
175
177
184 inline int GetHealthCheckIntervalSeconds() const { return m_healthCheckIntervalSeconds; }
185 inline bool HealthCheckIntervalSecondsHasBeenSet() const { return m_healthCheckIntervalSecondsHasBeenSet; }
186 inline void SetHealthCheckIntervalSeconds(int value) { m_healthCheckIntervalSecondsHasBeenSet = true; m_healthCheckIntervalSeconds = value; }
189
191
199 inline int GetHealthCheckTimeoutSeconds() const { return m_healthCheckTimeoutSeconds; }
200 inline bool HealthCheckTimeoutSecondsHasBeenSet() const { return m_healthCheckTimeoutSecondsHasBeenSet; }
201 inline void SetHealthCheckTimeoutSeconds(int value) { m_healthCheckTimeoutSecondsHasBeenSet = true; m_healthCheckTimeoutSeconds = value; }
204
206
213 inline int GetHealthyThresholdCount() const { return m_healthyThresholdCount; }
214 inline bool HealthyThresholdCountHasBeenSet() const { return m_healthyThresholdCountHasBeenSet; }
215 inline void SetHealthyThresholdCount(int value) { m_healthyThresholdCountHasBeenSet = true; m_healthyThresholdCount = value; }
218
220
227 inline int GetUnhealthyThresholdCount() const { return m_unhealthyThresholdCount; }
228 inline bool UnhealthyThresholdCountHasBeenSet() const { return m_unhealthyThresholdCountHasBeenSet; }
229 inline void SetUnhealthyThresholdCount(int value) { m_unhealthyThresholdCountHasBeenSet = true; m_unhealthyThresholdCount = value; }
232
234
241 inline const Matcher& GetMatcher() const { return m_matcher; }
242 inline bool MatcherHasBeenSet() const { return m_matcherHasBeenSet; }
243 template<typename MatcherT = Matcher>
244 void SetMatcher(MatcherT&& value) { m_matcherHasBeenSet = true; m_matcher = std::forward<MatcherT>(value); }
245 template<typename MatcherT = Matcher>
246 CreateTargetGroupRequest& WithMatcher(MatcherT&& value) { SetMatcher(std::forward<MatcherT>(value)); return *this;}
248
250
263 inline TargetTypeEnum GetTargetType() const { return m_targetType; }
264 inline bool TargetTypeHasBeenSet() const { return m_targetTypeHasBeenSet; }
265 inline void SetTargetType(TargetTypeEnum value) { m_targetTypeHasBeenSet = true; m_targetType = value; }
268
270
273 inline const Aws::Vector<Tag>& GetTags() const { return m_tags; }
274 inline bool TagsHasBeenSet() const { return m_tagsHasBeenSet; }
275 template<typename TagsT = Aws::Vector<Tag>>
276 void SetTags(TagsT&& value) { m_tagsHasBeenSet = true; m_tags = std::forward<TagsT>(value); }
277 template<typename TagsT = Aws::Vector<Tag>>
278 CreateTargetGroupRequest& WithTags(TagsT&& value) { SetTags(std::forward<TagsT>(value)); return *this;}
279 template<typename TagsT = Tag>
280 CreateTargetGroupRequest& AddTags(TagsT&& value) { m_tagsHasBeenSet = true; m_tags.emplace_back(std::forward<TagsT>(value)); return *this; }
282
284
287 inline TargetGroupIpAddressTypeEnum GetIpAddressType() const { return m_ipAddressType; }
288 inline bool IpAddressTypeHasBeenSet() const { return m_ipAddressTypeHasBeenSet; }
289 inline void SetIpAddressType(TargetGroupIpAddressTypeEnum value) { m_ipAddressTypeHasBeenSet = true; m_ipAddressType = value; }
292 private:
293
294 Aws::String m_name;
295 bool m_nameHasBeenSet = false;
296
298 bool m_protocolHasBeenSet = false;
299
300 Aws::String m_protocolVersion;
301 bool m_protocolVersionHasBeenSet = false;
302
303 int m_port{0};
304 bool m_portHasBeenSet = false;
305
306 Aws::String m_vpcId;
307 bool m_vpcIdHasBeenSet = false;
308
309 ProtocolEnum m_healthCheckProtocol{ProtocolEnum::NOT_SET};
310 bool m_healthCheckProtocolHasBeenSet = false;
311
312 Aws::String m_healthCheckPort;
313 bool m_healthCheckPortHasBeenSet = false;
314
315 bool m_healthCheckEnabled{false};
316 bool m_healthCheckEnabledHasBeenSet = false;
317
318 Aws::String m_healthCheckPath;
319 bool m_healthCheckPathHasBeenSet = false;
320
321 int m_healthCheckIntervalSeconds{0};
322 bool m_healthCheckIntervalSecondsHasBeenSet = false;
323
324 int m_healthCheckTimeoutSeconds{0};
325 bool m_healthCheckTimeoutSecondsHasBeenSet = false;
326
327 int m_healthyThresholdCount{0};
328 bool m_healthyThresholdCountHasBeenSet = false;
329
330 int m_unhealthyThresholdCount{0};
331 bool m_unhealthyThresholdCountHasBeenSet = false;
332
333 Matcher m_matcher;
334 bool m_matcherHasBeenSet = false;
335
337 bool m_targetTypeHasBeenSet = false;
338
339 Aws::Vector<Tag> m_tags;
340 bool m_tagsHasBeenSet = false;
341
343 bool m_ipAddressTypeHasBeenSet = false;
344 };
345
346} // namespace Model
347} // namespace ElasticLoadBalancingv2
348} // 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