/** * Copyright Amazon.com, Inc. or its affiliates. All Rights Reserved. * SPDX-License-Identifier: Apache-2.0. */ #pragma once #include #include #include #include #include #include namespace Aws { namespace Utils { namespace Xml { class XmlNode; } // namespace Xml } // namespace Utils namespace ElasticLoadBalancingv2 { namespace Model { /** *

Information about the health of a target.

See Also:

AWS * API Reference

*/ class TargetHealthDescription { public: AWS_ELASTICLOADBALANCINGV2_API TargetHealthDescription(); AWS_ELASTICLOADBALANCINGV2_API TargetHealthDescription(const Aws::Utils::Xml::XmlNode& xmlNode); AWS_ELASTICLOADBALANCINGV2_API TargetHealthDescription& operator=(const Aws::Utils::Xml::XmlNode& xmlNode); AWS_ELASTICLOADBALANCINGV2_API void OutputToStream(Aws::OStream& ostream, const char* location, unsigned index, const char* locationValue) const; AWS_ELASTICLOADBALANCINGV2_API void OutputToStream(Aws::OStream& oStream, const char* location) const; /** *

The description of the target.

*/ inline const TargetDescription& GetTarget() const{ return m_target; } /** *

The description of the target.

*/ inline bool TargetHasBeenSet() const { return m_targetHasBeenSet; } /** *

The description of the target.

*/ inline void SetTarget(const TargetDescription& value) { m_targetHasBeenSet = true; m_target = value; } /** *

The description of the target.

*/ inline void SetTarget(TargetDescription&& value) { m_targetHasBeenSet = true; m_target = std::move(value); } /** *

The description of the target.

*/ inline TargetHealthDescription& WithTarget(const TargetDescription& value) { SetTarget(value); return *this;} /** *

The description of the target.

*/ inline TargetHealthDescription& WithTarget(TargetDescription&& value) { SetTarget(std::move(value)); return *this;} /** *

The port to use to connect with the target.

*/ inline const Aws::String& GetHealthCheckPort() const{ return m_healthCheckPort; } /** *

The port to use to connect with the target.

*/ inline bool HealthCheckPortHasBeenSet() const { return m_healthCheckPortHasBeenSet; } /** *

The port to use to connect with the target.

*/ inline void SetHealthCheckPort(const Aws::String& value) { m_healthCheckPortHasBeenSet = true; m_healthCheckPort = value; } /** *

The port to use to connect with the target.

*/ inline void SetHealthCheckPort(Aws::String&& value) { m_healthCheckPortHasBeenSet = true; m_healthCheckPort = std::move(value); } /** *

The port to use to connect with the target.

*/ inline void SetHealthCheckPort(const char* value) { m_healthCheckPortHasBeenSet = true; m_healthCheckPort.assign(value); } /** *

The port to use to connect with the target.

*/ inline TargetHealthDescription& WithHealthCheckPort(const Aws::String& value) { SetHealthCheckPort(value); return *this;} /** *

The port to use to connect with the target.

*/ inline TargetHealthDescription& WithHealthCheckPort(Aws::String&& value) { SetHealthCheckPort(std::move(value)); return *this;} /** *

The port to use to connect with the target.

*/ inline TargetHealthDescription& WithHealthCheckPort(const char* value) { SetHealthCheckPort(value); return *this;} /** *

The health information for the target.

*/ inline const TargetHealth& GetTargetHealth() const{ return m_targetHealth; } /** *

The health information for the target.

*/ inline bool TargetHealthHasBeenSet() const { return m_targetHealthHasBeenSet; } /** *

The health information for the target.

*/ inline void SetTargetHealth(const TargetHealth& value) { m_targetHealthHasBeenSet = true; m_targetHealth = value; } /** *

The health information for the target.

*/ inline void SetTargetHealth(TargetHealth&& value) { m_targetHealthHasBeenSet = true; m_targetHealth = std::move(value); } /** *

The health information for the target.

*/ inline TargetHealthDescription& WithTargetHealth(const TargetHealth& value) { SetTargetHealth(value); return *this;} /** *

The health information for the target.

*/ inline TargetHealthDescription& WithTargetHealth(TargetHealth&& value) { SetTargetHealth(std::move(value)); return *this;} private: TargetDescription m_target; bool m_targetHasBeenSet = false; Aws::String m_healthCheckPort; bool m_healthCheckPortHasBeenSet = false; TargetHealth m_targetHealth; bool m_targetHealthHasBeenSet = false; }; } // namespace Model } // namespace ElasticLoadBalancingv2 } // namespace Aws