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

Represents the subnet associated with a DAX cluster. This parameter refers to * subnets defined in Amazon Virtual Private Cloud (Amazon VPC) and used with * DAX.

See Also:

AWS API * Reference

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

The system-assigned identifier for the subnet.

*/ inline const Aws::String& GetSubnetIdentifier() const{ return m_subnetIdentifier; } /** *

The system-assigned identifier for the subnet.

*/ inline bool SubnetIdentifierHasBeenSet() const { return m_subnetIdentifierHasBeenSet; } /** *

The system-assigned identifier for the subnet.

*/ inline void SetSubnetIdentifier(const Aws::String& value) { m_subnetIdentifierHasBeenSet = true; m_subnetIdentifier = value; } /** *

The system-assigned identifier for the subnet.

*/ inline void SetSubnetIdentifier(Aws::String&& value) { m_subnetIdentifierHasBeenSet = true; m_subnetIdentifier = std::move(value); } /** *

The system-assigned identifier for the subnet.

*/ inline void SetSubnetIdentifier(const char* value) { m_subnetIdentifierHasBeenSet = true; m_subnetIdentifier.assign(value); } /** *

The system-assigned identifier for the subnet.

*/ inline Subnet& WithSubnetIdentifier(const Aws::String& value) { SetSubnetIdentifier(value); return *this;} /** *

The system-assigned identifier for the subnet.

*/ inline Subnet& WithSubnetIdentifier(Aws::String&& value) { SetSubnetIdentifier(std::move(value)); return *this;} /** *

The system-assigned identifier for the subnet.

*/ inline Subnet& WithSubnetIdentifier(const char* value) { SetSubnetIdentifier(value); return *this;} /** *

The Availability Zone (AZ) for the subnet.

*/ inline const Aws::String& GetSubnetAvailabilityZone() const{ return m_subnetAvailabilityZone; } /** *

The Availability Zone (AZ) for the subnet.

*/ inline bool SubnetAvailabilityZoneHasBeenSet() const { return m_subnetAvailabilityZoneHasBeenSet; } /** *

The Availability Zone (AZ) for the subnet.

*/ inline void SetSubnetAvailabilityZone(const Aws::String& value) { m_subnetAvailabilityZoneHasBeenSet = true; m_subnetAvailabilityZone = value; } /** *

The Availability Zone (AZ) for the subnet.

*/ inline void SetSubnetAvailabilityZone(Aws::String&& value) { m_subnetAvailabilityZoneHasBeenSet = true; m_subnetAvailabilityZone = std::move(value); } /** *

The Availability Zone (AZ) for the subnet.

*/ inline void SetSubnetAvailabilityZone(const char* value) { m_subnetAvailabilityZoneHasBeenSet = true; m_subnetAvailabilityZone.assign(value); } /** *

The Availability Zone (AZ) for the subnet.

*/ inline Subnet& WithSubnetAvailabilityZone(const Aws::String& value) { SetSubnetAvailabilityZone(value); return *this;} /** *

The Availability Zone (AZ) for the subnet.

*/ inline Subnet& WithSubnetAvailabilityZone(Aws::String&& value) { SetSubnetAvailabilityZone(std::move(value)); return *this;} /** *

The Availability Zone (AZ) for the subnet.

*/ inline Subnet& WithSubnetAvailabilityZone(const char* value) { SetSubnetAvailabilityZone(value); return *this;} private: Aws::String m_subnetIdentifier; bool m_subnetIdentifierHasBeenSet = false; Aws::String m_subnetAvailabilityZone; bool m_subnetAvailabilityZoneHasBeenSet = false; }; } // namespace Model } // namespace DAX } // namespace Aws