/**
* Copyright Amazon.com, Inc. or its affiliates. All Rights Reserved.
* SPDX-License-Identifier: Apache-2.0.
*/
#pragma once
#include The port mappings for a specified endpoint IP address
* (destination).See Also:
AWS
* API Reference
The Amazon Resource Name (ARN) of the custom routing accelerator that you * have port mappings for.
*/ inline const Aws::String& GetAcceleratorArn() const{ return m_acceleratorArn; } /** *The Amazon Resource Name (ARN) of the custom routing accelerator that you * have port mappings for.
*/ inline bool AcceleratorArnHasBeenSet() const { return m_acceleratorArnHasBeenSet; } /** *The Amazon Resource Name (ARN) of the custom routing accelerator that you * have port mappings for.
*/ inline void SetAcceleratorArn(const Aws::String& value) { m_acceleratorArnHasBeenSet = true; m_acceleratorArn = value; } /** *The Amazon Resource Name (ARN) of the custom routing accelerator that you * have port mappings for.
*/ inline void SetAcceleratorArn(Aws::String&& value) { m_acceleratorArnHasBeenSet = true; m_acceleratorArn = std::move(value); } /** *The Amazon Resource Name (ARN) of the custom routing accelerator that you * have port mappings for.
*/ inline void SetAcceleratorArn(const char* value) { m_acceleratorArnHasBeenSet = true; m_acceleratorArn.assign(value); } /** *The Amazon Resource Name (ARN) of the custom routing accelerator that you * have port mappings for.
*/ inline DestinationPortMapping& WithAcceleratorArn(const Aws::String& value) { SetAcceleratorArn(value); return *this;} /** *The Amazon Resource Name (ARN) of the custom routing accelerator that you * have port mappings for.
*/ inline DestinationPortMapping& WithAcceleratorArn(Aws::String&& value) { SetAcceleratorArn(std::move(value)); return *this;} /** *The Amazon Resource Name (ARN) of the custom routing accelerator that you * have port mappings for.
*/ inline DestinationPortMapping& WithAcceleratorArn(const char* value) { SetAcceleratorArn(value); return *this;} /** *The IP address/port combinations (sockets) that map to a given destination * socket address.
*/ inline const Aws::VectorThe IP address/port combinations (sockets) that map to a given destination * socket address.
*/ inline bool AcceleratorSocketAddressesHasBeenSet() const { return m_acceleratorSocketAddressesHasBeenSet; } /** *The IP address/port combinations (sockets) that map to a given destination * socket address.
*/ inline void SetAcceleratorSocketAddresses(const Aws::VectorThe IP address/port combinations (sockets) that map to a given destination * socket address.
*/ inline void SetAcceleratorSocketAddresses(Aws::VectorThe IP address/port combinations (sockets) that map to a given destination * socket address.
*/ inline DestinationPortMapping& WithAcceleratorSocketAddresses(const Aws::VectorThe IP address/port combinations (sockets) that map to a given destination * socket address.
*/ inline DestinationPortMapping& WithAcceleratorSocketAddresses(Aws::VectorThe IP address/port combinations (sockets) that map to a given destination * socket address.
*/ inline DestinationPortMapping& AddAcceleratorSocketAddresses(const SocketAddress& value) { m_acceleratorSocketAddressesHasBeenSet = true; m_acceleratorSocketAddresses.push_back(value); return *this; } /** *The IP address/port combinations (sockets) that map to a given destination * socket address.
*/ inline DestinationPortMapping& AddAcceleratorSocketAddresses(SocketAddress&& value) { m_acceleratorSocketAddressesHasBeenSet = true; m_acceleratorSocketAddresses.push_back(std::move(value)); return *this; } /** *The Amazon Resource Name (ARN) of the endpoint group.
*/ inline const Aws::String& GetEndpointGroupArn() const{ return m_endpointGroupArn; } /** *The Amazon Resource Name (ARN) of the endpoint group.
*/ inline bool EndpointGroupArnHasBeenSet() const { return m_endpointGroupArnHasBeenSet; } /** *The Amazon Resource Name (ARN) of the endpoint group.
*/ inline void SetEndpointGroupArn(const Aws::String& value) { m_endpointGroupArnHasBeenSet = true; m_endpointGroupArn = value; } /** *The Amazon Resource Name (ARN) of the endpoint group.
*/ inline void SetEndpointGroupArn(Aws::String&& value) { m_endpointGroupArnHasBeenSet = true; m_endpointGroupArn = std::move(value); } /** *The Amazon Resource Name (ARN) of the endpoint group.
*/ inline void SetEndpointGroupArn(const char* value) { m_endpointGroupArnHasBeenSet = true; m_endpointGroupArn.assign(value); } /** *The Amazon Resource Name (ARN) of the endpoint group.
*/ inline DestinationPortMapping& WithEndpointGroupArn(const Aws::String& value) { SetEndpointGroupArn(value); return *this;} /** *The Amazon Resource Name (ARN) of the endpoint group.
*/ inline DestinationPortMapping& WithEndpointGroupArn(Aws::String&& value) { SetEndpointGroupArn(std::move(value)); return *this;} /** *The Amazon Resource Name (ARN) of the endpoint group.
*/ inline DestinationPortMapping& WithEndpointGroupArn(const char* value) { SetEndpointGroupArn(value); return *this;} /** *The ID for the virtual private cloud (VPC) subnet.
*/ inline const Aws::String& GetEndpointId() const{ return m_endpointId; } /** *The ID for the virtual private cloud (VPC) subnet.
*/ inline bool EndpointIdHasBeenSet() const { return m_endpointIdHasBeenSet; } /** *The ID for the virtual private cloud (VPC) subnet.
*/ inline void SetEndpointId(const Aws::String& value) { m_endpointIdHasBeenSet = true; m_endpointId = value; } /** *The ID for the virtual private cloud (VPC) subnet.
*/ inline void SetEndpointId(Aws::String&& value) { m_endpointIdHasBeenSet = true; m_endpointId = std::move(value); } /** *The ID for the virtual private cloud (VPC) subnet.
*/ inline void SetEndpointId(const char* value) { m_endpointIdHasBeenSet = true; m_endpointId.assign(value); } /** *The ID for the virtual private cloud (VPC) subnet.
*/ inline DestinationPortMapping& WithEndpointId(const Aws::String& value) { SetEndpointId(value); return *this;} /** *The ID for the virtual private cloud (VPC) subnet.
*/ inline DestinationPortMapping& WithEndpointId(Aws::String&& value) { SetEndpointId(std::move(value)); return *this;} /** *The ID for the virtual private cloud (VPC) subnet.
*/ inline DestinationPortMapping& WithEndpointId(const char* value) { SetEndpointId(value); return *this;} /** *The Amazon Web Services Region for the endpoint group.
*/ inline const Aws::String& GetEndpointGroupRegion() const{ return m_endpointGroupRegion; } /** *The Amazon Web Services Region for the endpoint group.
*/ inline bool EndpointGroupRegionHasBeenSet() const { return m_endpointGroupRegionHasBeenSet; } /** *The Amazon Web Services Region for the endpoint group.
*/ inline void SetEndpointGroupRegion(const Aws::String& value) { m_endpointGroupRegionHasBeenSet = true; m_endpointGroupRegion = value; } /** *The Amazon Web Services Region for the endpoint group.
*/ inline void SetEndpointGroupRegion(Aws::String&& value) { m_endpointGroupRegionHasBeenSet = true; m_endpointGroupRegion = std::move(value); } /** *The Amazon Web Services Region for the endpoint group.
*/ inline void SetEndpointGroupRegion(const char* value) { m_endpointGroupRegionHasBeenSet = true; m_endpointGroupRegion.assign(value); } /** *The Amazon Web Services Region for the endpoint group.
*/ inline DestinationPortMapping& WithEndpointGroupRegion(const Aws::String& value) { SetEndpointGroupRegion(value); return *this;} /** *The Amazon Web Services Region for the endpoint group.
*/ inline DestinationPortMapping& WithEndpointGroupRegion(Aws::String&& value) { SetEndpointGroupRegion(std::move(value)); return *this;} /** *The Amazon Web Services Region for the endpoint group.
*/ inline DestinationPortMapping& WithEndpointGroupRegion(const char* value) { SetEndpointGroupRegion(value); return *this;} /** *The endpoint IP address/port combination for traffic received on the * accelerator socket address.
*/ inline const SocketAddress& GetDestinationSocketAddress() const{ return m_destinationSocketAddress; } /** *The endpoint IP address/port combination for traffic received on the * accelerator socket address.
*/ inline bool DestinationSocketAddressHasBeenSet() const { return m_destinationSocketAddressHasBeenSet; } /** *The endpoint IP address/port combination for traffic received on the * accelerator socket address.
*/ inline void SetDestinationSocketAddress(const SocketAddress& value) { m_destinationSocketAddressHasBeenSet = true; m_destinationSocketAddress = value; } /** *The endpoint IP address/port combination for traffic received on the * accelerator socket address.
*/ inline void SetDestinationSocketAddress(SocketAddress&& value) { m_destinationSocketAddressHasBeenSet = true; m_destinationSocketAddress = std::move(value); } /** *The endpoint IP address/port combination for traffic received on the * accelerator socket address.
*/ inline DestinationPortMapping& WithDestinationSocketAddress(const SocketAddress& value) { SetDestinationSocketAddress(value); return *this;} /** *The endpoint IP address/port combination for traffic received on the * accelerator socket address.
*/ inline DestinationPortMapping& WithDestinationSocketAddress(SocketAddress&& value) { SetDestinationSocketAddress(std::move(value)); return *this;} /** *The IP address type that an accelerator supports. For a custom routing * accelerator, the value must be IPV4.
*/ inline const IpAddressType& GetIpAddressType() const{ return m_ipAddressType; } /** *The IP address type that an accelerator supports. For a custom routing * accelerator, the value must be IPV4.
*/ inline bool IpAddressTypeHasBeenSet() const { return m_ipAddressTypeHasBeenSet; } /** *The IP address type that an accelerator supports. For a custom routing * accelerator, the value must be IPV4.
*/ inline void SetIpAddressType(const IpAddressType& value) { m_ipAddressTypeHasBeenSet = true; m_ipAddressType = value; } /** *The IP address type that an accelerator supports. For a custom routing * accelerator, the value must be IPV4.
*/ inline void SetIpAddressType(IpAddressType&& value) { m_ipAddressTypeHasBeenSet = true; m_ipAddressType = std::move(value); } /** *The IP address type that an accelerator supports. For a custom routing * accelerator, the value must be IPV4.
*/ inline DestinationPortMapping& WithIpAddressType(const IpAddressType& value) { SetIpAddressType(value); return *this;} /** *The IP address type that an accelerator supports. For a custom routing * accelerator, the value must be IPV4.
*/ inline DestinationPortMapping& WithIpAddressType(IpAddressType&& value) { SetIpAddressType(std::move(value)); return *this;} /** *Indicates whether or not a port mapping destination can receive traffic. The * value is either ALLOW, if traffic is allowed to the destination, or DENY, if * traffic is not allowed to the destination.
*/ inline const CustomRoutingDestinationTrafficState& GetDestinationTrafficState() const{ return m_destinationTrafficState; } /** *Indicates whether or not a port mapping destination can receive traffic. The * value is either ALLOW, if traffic is allowed to the destination, or DENY, if * traffic is not allowed to the destination.
*/ inline bool DestinationTrafficStateHasBeenSet() const { return m_destinationTrafficStateHasBeenSet; } /** *Indicates whether or not a port mapping destination can receive traffic. The * value is either ALLOW, if traffic is allowed to the destination, or DENY, if * traffic is not allowed to the destination.
*/ inline void SetDestinationTrafficState(const CustomRoutingDestinationTrafficState& value) { m_destinationTrafficStateHasBeenSet = true; m_destinationTrafficState = value; } /** *Indicates whether or not a port mapping destination can receive traffic. The * value is either ALLOW, if traffic is allowed to the destination, or DENY, if * traffic is not allowed to the destination.
*/ inline void SetDestinationTrafficState(CustomRoutingDestinationTrafficState&& value) { m_destinationTrafficStateHasBeenSet = true; m_destinationTrafficState = std::move(value); } /** *Indicates whether or not a port mapping destination can receive traffic. The * value is either ALLOW, if traffic is allowed to the destination, or DENY, if * traffic is not allowed to the destination.
*/ inline DestinationPortMapping& WithDestinationTrafficState(const CustomRoutingDestinationTrafficState& value) { SetDestinationTrafficState(value); return *this;} /** *Indicates whether or not a port mapping destination can receive traffic. The * value is either ALLOW, if traffic is allowed to the destination, or DENY, if * traffic is not allowed to the destination.
*/ inline DestinationPortMapping& WithDestinationTrafficState(CustomRoutingDestinationTrafficState&& value) { SetDestinationTrafficState(std::move(value)); return *this;} private: Aws::String m_acceleratorArn; bool m_acceleratorArnHasBeenSet = false; Aws::Vector