/** * 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 OpenSearchService { namespace Model { /** *

The zone awareness configuration for an Amazon OpenSearch Service * domain.

See Also:

AWS * API Reference

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

If you enabled multiple Availability Zones, this value is the number of zones * that you want the domain to use. Valid values are 2 and * 3. If your domain is provisioned within a VPC, this value be equal * to number of subnets.

*/ inline int GetAvailabilityZoneCount() const{ return m_availabilityZoneCount; } /** *

If you enabled multiple Availability Zones, this value is the number of zones * that you want the domain to use. Valid values are 2 and * 3. If your domain is provisioned within a VPC, this value be equal * to number of subnets.

*/ inline bool AvailabilityZoneCountHasBeenSet() const { return m_availabilityZoneCountHasBeenSet; } /** *

If you enabled multiple Availability Zones, this value is the number of zones * that you want the domain to use. Valid values are 2 and * 3. If your domain is provisioned within a VPC, this value be equal * to number of subnets.

*/ inline void SetAvailabilityZoneCount(int value) { m_availabilityZoneCountHasBeenSet = true; m_availabilityZoneCount = value; } /** *

If you enabled multiple Availability Zones, this value is the number of zones * that you want the domain to use. Valid values are 2 and * 3. If your domain is provisioned within a VPC, this value be equal * to number of subnets.

*/ inline ZoneAwarenessConfig& WithAvailabilityZoneCount(int value) { SetAvailabilityZoneCount(value); return *this;} private: int m_availabilityZoneCount; bool m_availabilityZoneCountHasBeenSet = false; }; } // namespace Model } // namespace OpenSearchService } // namespace Aws