7#include <aws/core/utils/memory/stl/AWSStreamFwd.h>
8#include <aws/core/utils/memory/stl/AWSString.h>
9#include <aws/core/utils/memory/stl/AWSVector.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/TargetGroupIpAddressTypeEnum.h>
14#include <aws/elasticloadbalancingv2/model/TargetTypeEnum.h>
24namespace ElasticLoadBalancingv2 {
39 const char* locationValue)
const;
48 template <
typename TargetGroupArnT = Aws::String>
50 m_targetGroupArnHasBeenSet =
true;
51 m_targetGroupArn = std::forward<TargetGroupArnT>(value);
53 template <
typename TargetGroupArnT = Aws::String>
66 template <
typename TargetGroupNameT = Aws::String>
68 m_targetGroupNameHasBeenSet =
true;
69 m_targetGroupName = std::forward<TargetGroupNameT>(value);
71 template <
typename TargetGroupNameT = Aws::String>
85 m_protocolHasBeenSet =
true;
99 inline int GetPort()
const {
return m_port; }
102 m_portHasBeenSet =
true;
117 template <
typename VpcIdT = Aws::String>
119 m_vpcIdHasBeenSet =
true;
120 m_vpcId = std::forward<VpcIdT>(value);
122 template <
typename VpcIdT = Aws::String>
124 SetVpcId(std::forward<VpcIdT>(value));
137 m_healthCheckProtocolHasBeenSet =
true;
138 m_healthCheckProtocol = value;
152 template <
typename HealthCheckPortT = Aws::String>
154 m_healthCheckPortHasBeenSet =
true;
155 m_healthCheckPort = std::forward<HealthCheckPortT>(value);
157 template <
typename HealthCheckPortT = Aws::String>
171 m_healthCheckEnabledHasBeenSet =
true;
172 m_healthCheckEnabled = value;
188 m_healthCheckIntervalSecondsHasBeenSet =
true;
189 m_healthCheckIntervalSeconds = value;
205 m_healthCheckTimeoutSecondsHasBeenSet =
true;
206 m_healthCheckTimeoutSeconds = value;
222 m_healthyThresholdCountHasBeenSet =
true;
223 m_healthyThresholdCount = value;
239 m_unhealthyThresholdCountHasBeenSet =
true;
240 m_unhealthyThresholdCount = value;
254 template <
typename HealthCheckPathT = Aws::String>
256 m_healthCheckPathHasBeenSet =
true;
257 m_healthCheckPath = std::forward<HealthCheckPathT>(value);
259 template <
typename HealthCheckPathT = Aws::String>
273 template <
typename MatcherT = Matcher>
275 m_matcherHasBeenSet =
true;
276 m_matcher = std::forward<MatcherT>(value);
278 template <
typename MatcherT = Matcher>
293 template <
typename LoadBalancerArnsT = Aws::Vector<Aws::String>>
295 m_loadBalancerArnsHasBeenSet =
true;
296 m_loadBalancerArns = std::forward<LoadBalancerArnsT>(value);
298 template <
typename LoadBalancerArnsT = Aws::Vector<Aws::String>>
303 template <
typename LoadBalancerArnsT = Aws::String>
305 m_loadBalancerArnsHasBeenSet =
true;
306 m_loadBalancerArns.emplace_back(std::forward<LoadBalancerArnsT>(value));
322 m_targetTypeHasBeenSet =
true;
323 m_targetType = value;
338 template <
typename ProtocolVersionT = Aws::String>
340 m_protocolVersionHasBeenSet =
true;
341 m_protocolVersion = std::forward<ProtocolVersionT>(value);
343 template <
typename ProtocolVersionT = Aws::String>
357 m_ipAddressTypeHasBeenSet =
true;
358 m_ipAddressType = value;
374 m_targetControlPortHasBeenSet =
true;
375 m_targetControlPort = value;
397 bool m_healthCheckEnabled{
false};
399 int m_healthCheckIntervalSeconds{0};
401 int m_healthCheckTimeoutSeconds{0};
403 int m_healthyThresholdCount{0};
405 int m_unhealthyThresholdCount{0};
419 int m_targetControlPort{0};
420 bool m_targetGroupArnHasBeenSet =
false;
421 bool m_targetGroupNameHasBeenSet =
false;
422 bool m_protocolHasBeenSet =
false;
423 bool m_portHasBeenSet =
false;
424 bool m_vpcIdHasBeenSet =
false;
425 bool m_healthCheckProtocolHasBeenSet =
false;
426 bool m_healthCheckPortHasBeenSet =
false;
427 bool m_healthCheckEnabledHasBeenSet =
false;
428 bool m_healthCheckIntervalSecondsHasBeenSet =
false;
429 bool m_healthCheckTimeoutSecondsHasBeenSet =
false;
430 bool m_healthyThresholdCountHasBeenSet =
false;
431 bool m_unhealthyThresholdCountHasBeenSet =
false;
432 bool m_healthCheckPathHasBeenSet =
false;
433 bool m_matcherHasBeenSet =
false;
434 bool m_loadBalancerArnsHasBeenSet =
false;
435 bool m_targetTypeHasBeenSet =
false;
436 bool m_protocolVersionHasBeenSet =
false;
437 bool m_ipAddressTypeHasBeenSet =
false;
438 bool m_targetControlPortHasBeenSet =
false;
void SetHealthCheckProtocol(ProtocolEnum value)
TargetGroup & WithHealthCheckProtocol(ProtocolEnum value)
TargetGroup & WithTargetGroupArn(TargetGroupArnT &&value)
TargetGroup & WithHealthCheckEnabled(bool value)
TargetGroup & WithProtocol(ProtocolEnum value)
bool HealthCheckEnabledHasBeenSet() const
bool HealthCheckTimeoutSecondsHasBeenSet() const
AWS_ELASTICLOADBALANCINGV2_API TargetGroup & operator=(const Aws::Utils::Xml::XmlNode &xmlNode)
AWS_ELASTICLOADBALANCINGV2_API void OutputToStream(Aws::OStream &oStream, const char *location) const
AWS_ELASTICLOADBALANCINGV2_API TargetGroup(const Aws::Utils::Xml::XmlNode &xmlNode)
TargetGroup & WithVpcId(VpcIdT &&value)
const Aws::String & GetTargetGroupName() const
void SetUnhealthyThresholdCount(int value)
void SetHealthyThresholdCount(int value)
void SetHealthCheckPort(HealthCheckPortT &&value)
void SetMatcher(MatcherT &&value)
AWS_ELASTICLOADBALANCINGV2_API TargetGroup()=default
TargetGroupIpAddressTypeEnum GetIpAddressType() const
AWS_ELASTICLOADBALANCINGV2_API void OutputToStream(Aws::OStream &ostream, const char *location, unsigned index, const char *locationValue) const
bool LoadBalancerArnsHasBeenSet() const
TargetGroup & WithMatcher(MatcherT &&value)
TargetGroup & WithPort(int value)
const Aws::String & GetTargetGroupArn() const
TargetGroup & WithProtocolVersion(ProtocolVersionT &&value)
TargetGroup & WithHealthCheckPort(HealthCheckPortT &&value)
TargetGroup & AddLoadBalancerArns(LoadBalancerArnsT &&value)
int GetHealthyThresholdCount() const
int GetTargetControlPort() const
const Aws::Vector< Aws::String > & GetLoadBalancerArns() const
int GetHealthCheckTimeoutSeconds() const
bool IpAddressTypeHasBeenSet() const
void SetProtocolVersion(ProtocolVersionT &&value)
void SetProtocol(ProtocolEnum value)
bool TargetTypeHasBeenSet() const
bool ProtocolHasBeenSet() const
const Aws::String & GetHealthCheckPort() const
TargetGroup & WithHealthCheckIntervalSeconds(int value)
void SetTargetType(TargetTypeEnum value)
bool TargetGroupNameHasBeenSet() const
const Matcher & GetMatcher() const
TargetGroup & WithHealthCheckPath(HealthCheckPathT &&value)
void SetTargetGroupName(TargetGroupNameT &&value)
int GetHealthCheckIntervalSeconds() const
bool ProtocolVersionHasBeenSet() const
bool GetHealthCheckEnabled() const
TargetGroup & WithHealthyThresholdCount(int value)
bool HealthCheckIntervalSecondsHasBeenSet() const
TargetGroup & WithTargetType(TargetTypeEnum value)
TargetGroup & WithTargetGroupName(TargetGroupNameT &&value)
ProtocolEnum GetProtocol() const
TargetGroup & WithUnhealthyThresholdCount(int value)
TargetTypeEnum GetTargetType() const
TargetGroup & WithTargetControlPort(int value)
const Aws::String & GetVpcId() const
bool HealthCheckPortHasBeenSet() const
int GetUnhealthyThresholdCount() const
void SetIpAddressType(TargetGroupIpAddressTypeEnum value)
void SetHealthCheckIntervalSeconds(int value)
bool VpcIdHasBeenSet() const
bool HealthyThresholdCountHasBeenSet() const
void SetTargetControlPort(int value)
void SetHealthCheckEnabled(bool value)
bool TargetGroupArnHasBeenSet() const
void SetTargetGroupArn(TargetGroupArnT &&value)
const Aws::String & GetProtocolVersion() const
void SetLoadBalancerArns(LoadBalancerArnsT &&value)
TargetGroup & WithIpAddressType(TargetGroupIpAddressTypeEnum value)
void SetHealthCheckTimeoutSeconds(int value)
void SetHealthCheckPath(HealthCheckPathT &&value)
bool PortHasBeenSet() const
bool TargetControlPortHasBeenSet() const
TargetGroup & WithLoadBalancerArns(LoadBalancerArnsT &&value)
const Aws::String & GetHealthCheckPath() const
TargetGroup & WithHealthCheckTimeoutSeconds(int value)
ProtocolEnum GetHealthCheckProtocol() const
void SetVpcId(VpcIdT &&value)
bool HealthCheckProtocolHasBeenSet() const
bool MatcherHasBeenSet() const
bool HealthCheckPathHasBeenSet() const
bool UnhealthyThresholdCountHasBeenSet() const
TargetGroupIpAddressTypeEnum
std::basic_string< char, std::char_traits< char >, Aws::Allocator< char > > String
std::vector< T, Aws::Allocator< T > > Vector
std::basic_ostream< char, std::char_traits< char > > OStream