/** * 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 Utils { namespace Json { class JsonValue; class JsonView; } // namespace Json } // namespace Utils namespace SESV2 { namespace Model { /** *

Contains information about a dedicated IP address that is associated with * your Amazon SES account.

To learn more about requesting dedicated IP * addresses, see Requesting * and Relinquishing Dedicated IP Addresses in the Amazon SES Developer * Guide.

See Also:

AWS * API Reference

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

An IPv4 address.

*/ inline const Aws::String& GetIp() const{ return m_ip; } /** *

An IPv4 address.

*/ inline bool IpHasBeenSet() const { return m_ipHasBeenSet; } /** *

An IPv4 address.

*/ inline void SetIp(const Aws::String& value) { m_ipHasBeenSet = true; m_ip = value; } /** *

An IPv4 address.

*/ inline void SetIp(Aws::String&& value) { m_ipHasBeenSet = true; m_ip = std::move(value); } /** *

An IPv4 address.

*/ inline void SetIp(const char* value) { m_ipHasBeenSet = true; m_ip.assign(value); } /** *

An IPv4 address.

*/ inline DedicatedIp& WithIp(const Aws::String& value) { SetIp(value); return *this;} /** *

An IPv4 address.

*/ inline DedicatedIp& WithIp(Aws::String&& value) { SetIp(std::move(value)); return *this;} /** *

An IPv4 address.

*/ inline DedicatedIp& WithIp(const char* value) { SetIp(value); return *this;} /** *

The warm-up status of a dedicated IP address. The status can have one of the * following values:

  • IN_PROGRESS – The IP address * isn't ready to use because the dedicated IP warm-up process is ongoing.

    *
  • DONE – The dedicated IP warm-up process is complete, * and the IP address is ready to use.

*/ inline const WarmupStatus& GetWarmupStatus() const{ return m_warmupStatus; } /** *

The warm-up status of a dedicated IP address. The status can have one of the * following values:

  • IN_PROGRESS – The IP address * isn't ready to use because the dedicated IP warm-up process is ongoing.

    *
  • DONE – The dedicated IP warm-up process is complete, * and the IP address is ready to use.

*/ inline bool WarmupStatusHasBeenSet() const { return m_warmupStatusHasBeenSet; } /** *

The warm-up status of a dedicated IP address. The status can have one of the * following values:

  • IN_PROGRESS – The IP address * isn't ready to use because the dedicated IP warm-up process is ongoing.

    *
  • DONE – The dedicated IP warm-up process is complete, * and the IP address is ready to use.

*/ inline void SetWarmupStatus(const WarmupStatus& value) { m_warmupStatusHasBeenSet = true; m_warmupStatus = value; } /** *

The warm-up status of a dedicated IP address. The status can have one of the * following values:

  • IN_PROGRESS – The IP address * isn't ready to use because the dedicated IP warm-up process is ongoing.

    *
  • DONE – The dedicated IP warm-up process is complete, * and the IP address is ready to use.

*/ inline void SetWarmupStatus(WarmupStatus&& value) { m_warmupStatusHasBeenSet = true; m_warmupStatus = std::move(value); } /** *

The warm-up status of a dedicated IP address. The status can have one of the * following values:

  • IN_PROGRESS – The IP address * isn't ready to use because the dedicated IP warm-up process is ongoing.

    *
  • DONE – The dedicated IP warm-up process is complete, * and the IP address is ready to use.

*/ inline DedicatedIp& WithWarmupStatus(const WarmupStatus& value) { SetWarmupStatus(value); return *this;} /** *

The warm-up status of a dedicated IP address. The status can have one of the * following values:

  • IN_PROGRESS – The IP address * isn't ready to use because the dedicated IP warm-up process is ongoing.

    *
  • DONE – The dedicated IP warm-up process is complete, * and the IP address is ready to use.

*/ inline DedicatedIp& WithWarmupStatus(WarmupStatus&& value) { SetWarmupStatus(std::move(value)); return *this;} /** *

Indicates how complete the dedicated IP warm-up process is. When this value * equals 1, the address has completed the warm-up process and is ready for * use.

*/ inline int GetWarmupPercentage() const{ return m_warmupPercentage; } /** *

Indicates how complete the dedicated IP warm-up process is. When this value * equals 1, the address has completed the warm-up process and is ready for * use.

*/ inline bool WarmupPercentageHasBeenSet() const { return m_warmupPercentageHasBeenSet; } /** *

Indicates how complete the dedicated IP warm-up process is. When this value * equals 1, the address has completed the warm-up process and is ready for * use.

*/ inline void SetWarmupPercentage(int value) { m_warmupPercentageHasBeenSet = true; m_warmupPercentage = value; } /** *

Indicates how complete the dedicated IP warm-up process is. When this value * equals 1, the address has completed the warm-up process and is ready for * use.

*/ inline DedicatedIp& WithWarmupPercentage(int value) { SetWarmupPercentage(value); return *this;} /** *

The name of the dedicated IP pool that the IP address is associated with.

*/ inline const Aws::String& GetPoolName() const{ return m_poolName; } /** *

The name of the dedicated IP pool that the IP address is associated with.

*/ inline bool PoolNameHasBeenSet() const { return m_poolNameHasBeenSet; } /** *

The name of the dedicated IP pool that the IP address is associated with.

*/ inline void SetPoolName(const Aws::String& value) { m_poolNameHasBeenSet = true; m_poolName = value; } /** *

The name of the dedicated IP pool that the IP address is associated with.

*/ inline void SetPoolName(Aws::String&& value) { m_poolNameHasBeenSet = true; m_poolName = std::move(value); } /** *

The name of the dedicated IP pool that the IP address is associated with.

*/ inline void SetPoolName(const char* value) { m_poolNameHasBeenSet = true; m_poolName.assign(value); } /** *

The name of the dedicated IP pool that the IP address is associated with.

*/ inline DedicatedIp& WithPoolName(const Aws::String& value) { SetPoolName(value); return *this;} /** *

The name of the dedicated IP pool that the IP address is associated with.

*/ inline DedicatedIp& WithPoolName(Aws::String&& value) { SetPoolName(std::move(value)); return *this;} /** *

The name of the dedicated IP pool that the IP address is associated with.

*/ inline DedicatedIp& WithPoolName(const char* value) { SetPoolName(value); return *this;} private: Aws::String m_ip; bool m_ipHasBeenSet = false; WarmupStatus m_warmupStatus; bool m_warmupStatusHasBeenSet = false; int m_warmupPercentage; bool m_warmupPercentageHasBeenSet = false; Aws::String m_poolName; bool m_poolNameHasBeenSet = false; }; } // namespace Model } // namespace SESV2 } // namespace Aws