/** * Copyright Amazon.com, Inc. or its affiliates. All Rights Reserved. * SPDX-License-Identifier: Apache-2.0. */ #pragma once #include #include #include #include namespace Aws { namespace RDS { namespace Model { /** *

See Also:

AWS * API Reference

*/ class AWS_RDS_API CreateCustomAvailabilityZoneRequest : public RDSRequest { public: CreateCustomAvailabilityZoneRequest(); // Service request name is the Operation name which will send this request out, // each operation should has unique request name, so that we can get operation's name from this request. // Note: this is not true for response, multiple operations may have the same response name, // so we can not get operation's name from response. inline virtual const char* GetServiceRequestName() const override { return "CreateCustomAvailabilityZone"; } Aws::String SerializePayload() const override; protected: void DumpBodyToUrl(Aws::Http::URI& uri ) const override; public: /** *

The name of the custom Availability Zone (AZ).

*/ inline const Aws::String& GetCustomAvailabilityZoneName() const{ return m_customAvailabilityZoneName; } /** *

The name of the custom Availability Zone (AZ).

*/ inline bool CustomAvailabilityZoneNameHasBeenSet() const { return m_customAvailabilityZoneNameHasBeenSet; } /** *

The name of the custom Availability Zone (AZ).

*/ inline void SetCustomAvailabilityZoneName(const Aws::String& value) { m_customAvailabilityZoneNameHasBeenSet = true; m_customAvailabilityZoneName = value; } /** *

The name of the custom Availability Zone (AZ).

*/ inline void SetCustomAvailabilityZoneName(Aws::String&& value) { m_customAvailabilityZoneNameHasBeenSet = true; m_customAvailabilityZoneName = std::move(value); } /** *

The name of the custom Availability Zone (AZ).

*/ inline void SetCustomAvailabilityZoneName(const char* value) { m_customAvailabilityZoneNameHasBeenSet = true; m_customAvailabilityZoneName.assign(value); } /** *

The name of the custom Availability Zone (AZ).

*/ inline CreateCustomAvailabilityZoneRequest& WithCustomAvailabilityZoneName(const Aws::String& value) { SetCustomAvailabilityZoneName(value); return *this;} /** *

The name of the custom Availability Zone (AZ).

*/ inline CreateCustomAvailabilityZoneRequest& WithCustomAvailabilityZoneName(Aws::String&& value) { SetCustomAvailabilityZoneName(std::move(value)); return *this;} /** *

The name of the custom Availability Zone (AZ).

*/ inline CreateCustomAvailabilityZoneRequest& WithCustomAvailabilityZoneName(const char* value) { SetCustomAvailabilityZoneName(value); return *this;} /** *

The ID of an existing virtual private network (VPN) between the Amazon RDS * website and the VMware vSphere cluster.

*/ inline const Aws::String& GetExistingVpnId() const{ return m_existingVpnId; } /** *

The ID of an existing virtual private network (VPN) between the Amazon RDS * website and the VMware vSphere cluster.

*/ inline bool ExistingVpnIdHasBeenSet() const { return m_existingVpnIdHasBeenSet; } /** *

The ID of an existing virtual private network (VPN) between the Amazon RDS * website and the VMware vSphere cluster.

*/ inline void SetExistingVpnId(const Aws::String& value) { m_existingVpnIdHasBeenSet = true; m_existingVpnId = value; } /** *

The ID of an existing virtual private network (VPN) between the Amazon RDS * website and the VMware vSphere cluster.

*/ inline void SetExistingVpnId(Aws::String&& value) { m_existingVpnIdHasBeenSet = true; m_existingVpnId = std::move(value); } /** *

The ID of an existing virtual private network (VPN) between the Amazon RDS * website and the VMware vSphere cluster.

*/ inline void SetExistingVpnId(const char* value) { m_existingVpnIdHasBeenSet = true; m_existingVpnId.assign(value); } /** *

The ID of an existing virtual private network (VPN) between the Amazon RDS * website and the VMware vSphere cluster.

*/ inline CreateCustomAvailabilityZoneRequest& WithExistingVpnId(const Aws::String& value) { SetExistingVpnId(value); return *this;} /** *

The ID of an existing virtual private network (VPN) between the Amazon RDS * website and the VMware vSphere cluster.

*/ inline CreateCustomAvailabilityZoneRequest& WithExistingVpnId(Aws::String&& value) { SetExistingVpnId(std::move(value)); return *this;} /** *

The ID of an existing virtual private network (VPN) between the Amazon RDS * website and the VMware vSphere cluster.

*/ inline CreateCustomAvailabilityZoneRequest& WithExistingVpnId(const char* value) { SetExistingVpnId(value); return *this;} /** *

The name of a new VPN tunnel between the Amazon RDS website and the VMware * vSphere cluster.

Specify this parameter only if * ExistingVpnId isn't specified.

*/ inline const Aws::String& GetNewVpnTunnelName() const{ return m_newVpnTunnelName; } /** *

The name of a new VPN tunnel between the Amazon RDS website and the VMware * vSphere cluster.

Specify this parameter only if * ExistingVpnId isn't specified.

*/ inline bool NewVpnTunnelNameHasBeenSet() const { return m_newVpnTunnelNameHasBeenSet; } /** *

The name of a new VPN tunnel between the Amazon RDS website and the VMware * vSphere cluster.

Specify this parameter only if * ExistingVpnId isn't specified.

*/ inline void SetNewVpnTunnelName(const Aws::String& value) { m_newVpnTunnelNameHasBeenSet = true; m_newVpnTunnelName = value; } /** *

The name of a new VPN tunnel between the Amazon RDS website and the VMware * vSphere cluster.

Specify this parameter only if * ExistingVpnId isn't specified.

*/ inline void SetNewVpnTunnelName(Aws::String&& value) { m_newVpnTunnelNameHasBeenSet = true; m_newVpnTunnelName = std::move(value); } /** *

The name of a new VPN tunnel between the Amazon RDS website and the VMware * vSphere cluster.

Specify this parameter only if * ExistingVpnId isn't specified.

*/ inline void SetNewVpnTunnelName(const char* value) { m_newVpnTunnelNameHasBeenSet = true; m_newVpnTunnelName.assign(value); } /** *

The name of a new VPN tunnel between the Amazon RDS website and the VMware * vSphere cluster.

Specify this parameter only if * ExistingVpnId isn't specified.

*/ inline CreateCustomAvailabilityZoneRequest& WithNewVpnTunnelName(const Aws::String& value) { SetNewVpnTunnelName(value); return *this;} /** *

The name of a new VPN tunnel between the Amazon RDS website and the VMware * vSphere cluster.

Specify this parameter only if * ExistingVpnId isn't specified.

*/ inline CreateCustomAvailabilityZoneRequest& WithNewVpnTunnelName(Aws::String&& value) { SetNewVpnTunnelName(std::move(value)); return *this;} /** *

The name of a new VPN tunnel between the Amazon RDS website and the VMware * vSphere cluster.

Specify this parameter only if * ExistingVpnId isn't specified.

*/ inline CreateCustomAvailabilityZoneRequest& WithNewVpnTunnelName(const char* value) { SetNewVpnTunnelName(value); return *this;} /** *

The IP address of network traffic from your on-premises data center. A custom * AZ receives the network traffic.

Specify this parameter only if * ExistingVpnId isn't specified.

*/ inline const Aws::String& GetVpnTunnelOriginatorIP() const{ return m_vpnTunnelOriginatorIP; } /** *

The IP address of network traffic from your on-premises data center. A custom * AZ receives the network traffic.

Specify this parameter only if * ExistingVpnId isn't specified.

*/ inline bool VpnTunnelOriginatorIPHasBeenSet() const { return m_vpnTunnelOriginatorIPHasBeenSet; } /** *

The IP address of network traffic from your on-premises data center. A custom * AZ receives the network traffic.

Specify this parameter only if * ExistingVpnId isn't specified.

*/ inline void SetVpnTunnelOriginatorIP(const Aws::String& value) { m_vpnTunnelOriginatorIPHasBeenSet = true; m_vpnTunnelOriginatorIP = value; } /** *

The IP address of network traffic from your on-premises data center. A custom * AZ receives the network traffic.

Specify this parameter only if * ExistingVpnId isn't specified.

*/ inline void SetVpnTunnelOriginatorIP(Aws::String&& value) { m_vpnTunnelOriginatorIPHasBeenSet = true; m_vpnTunnelOriginatorIP = std::move(value); } /** *

The IP address of network traffic from your on-premises data center. A custom * AZ receives the network traffic.

Specify this parameter only if * ExistingVpnId isn't specified.

*/ inline void SetVpnTunnelOriginatorIP(const char* value) { m_vpnTunnelOriginatorIPHasBeenSet = true; m_vpnTunnelOriginatorIP.assign(value); } /** *

The IP address of network traffic from your on-premises data center. A custom * AZ receives the network traffic.

Specify this parameter only if * ExistingVpnId isn't specified.

*/ inline CreateCustomAvailabilityZoneRequest& WithVpnTunnelOriginatorIP(const Aws::String& value) { SetVpnTunnelOriginatorIP(value); return *this;} /** *

The IP address of network traffic from your on-premises data center. A custom * AZ receives the network traffic.

Specify this parameter only if * ExistingVpnId isn't specified.

*/ inline CreateCustomAvailabilityZoneRequest& WithVpnTunnelOriginatorIP(Aws::String&& value) { SetVpnTunnelOriginatorIP(std::move(value)); return *this;} /** *

The IP address of network traffic from your on-premises data center. A custom * AZ receives the network traffic.

Specify this parameter only if * ExistingVpnId isn't specified.

*/ inline CreateCustomAvailabilityZoneRequest& WithVpnTunnelOriginatorIP(const char* value) { SetVpnTunnelOriginatorIP(value); return *this;} private: Aws::String m_customAvailabilityZoneName; bool m_customAvailabilityZoneNameHasBeenSet; Aws::String m_existingVpnId; bool m_existingVpnIdHasBeenSet; Aws::String m_newVpnTunnelName; bool m_newVpnTunnelNameHasBeenSet; Aws::String m_vpnTunnelOriginatorIP; bool m_vpnTunnelOriginatorIPHasBeenSet; }; } // namespace Model } // namespace RDS } // namespace Aws