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

Contains information about the connection draining configuration for the load * balancer.

See Also:

AWS * API Reference

*/ class AwsElbLoadBalancerConnectionDraining { public: AWS_SECURITYHUB_API AwsElbLoadBalancerConnectionDraining(); AWS_SECURITYHUB_API AwsElbLoadBalancerConnectionDraining(Aws::Utils::Json::JsonView jsonValue); AWS_SECURITYHUB_API AwsElbLoadBalancerConnectionDraining& operator=(Aws::Utils::Json::JsonView jsonValue); AWS_SECURITYHUB_API Aws::Utils::Json::JsonValue Jsonize() const; /** *

Indicates whether connection draining is enabled for the load balancer.

*/ inline bool GetEnabled() const{ return m_enabled; } /** *

Indicates whether connection draining is enabled for the load balancer.

*/ inline bool EnabledHasBeenSet() const { return m_enabledHasBeenSet; } /** *

Indicates whether connection draining is enabled for the load balancer.

*/ inline void SetEnabled(bool value) { m_enabledHasBeenSet = true; m_enabled = value; } /** *

Indicates whether connection draining is enabled for the load balancer.

*/ inline AwsElbLoadBalancerConnectionDraining& WithEnabled(bool value) { SetEnabled(value); return *this;} /** *

The maximum time, in seconds, to keep the existing connections open before * deregistering the instances.

*/ inline int GetTimeout() const{ return m_timeout; } /** *

The maximum time, in seconds, to keep the existing connections open before * deregistering the instances.

*/ inline bool TimeoutHasBeenSet() const { return m_timeoutHasBeenSet; } /** *

The maximum time, in seconds, to keep the existing connections open before * deregistering the instances.

*/ inline void SetTimeout(int value) { m_timeoutHasBeenSet = true; m_timeout = value; } /** *

The maximum time, in seconds, to keep the existing connections open before * deregistering the instances.

*/ inline AwsElbLoadBalancerConnectionDraining& WithTimeout(int value) { SetTimeout(value); return *this;} private: bool m_enabled; bool m_enabledHasBeenSet = false; int m_timeout; bool m_timeoutHasBeenSet = false; }; } // namespace Model } // namespace SecurityHub } // namespace Aws