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

Information about an email identity.

See Also:

AWS * API Reference

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

The email identity type. Note: the MANAGED_DOMAIN type is not * supported for email identity types.

*/ inline const IdentityType& GetIdentityType() const{ return m_identityType; } /** *

The email identity type. Note: the MANAGED_DOMAIN type is not * supported for email identity types.

*/ inline bool IdentityTypeHasBeenSet() const { return m_identityTypeHasBeenSet; } /** *

The email identity type. Note: the MANAGED_DOMAIN type is not * supported for email identity types.

*/ inline void SetIdentityType(const IdentityType& value) { m_identityTypeHasBeenSet = true; m_identityType = value; } /** *

The email identity type. Note: the MANAGED_DOMAIN type is not * supported for email identity types.

*/ inline void SetIdentityType(IdentityType&& value) { m_identityTypeHasBeenSet = true; m_identityType = std::move(value); } /** *

The email identity type. Note: the MANAGED_DOMAIN type is not * supported for email identity types.

*/ inline IdentityInfo& WithIdentityType(const IdentityType& value) { SetIdentityType(value); return *this;} /** *

The email identity type. Note: the MANAGED_DOMAIN type is not * supported for email identity types.

*/ inline IdentityInfo& WithIdentityType(IdentityType&& value) { SetIdentityType(std::move(value)); return *this;} /** *

The address or domain of the identity.

*/ inline const Aws::String& GetIdentityName() const{ return m_identityName; } /** *

The address or domain of the identity.

*/ inline bool IdentityNameHasBeenSet() const { return m_identityNameHasBeenSet; } /** *

The address or domain of the identity.

*/ inline void SetIdentityName(const Aws::String& value) { m_identityNameHasBeenSet = true; m_identityName = value; } /** *

The address or domain of the identity.

*/ inline void SetIdentityName(Aws::String&& value) { m_identityNameHasBeenSet = true; m_identityName = std::move(value); } /** *

The address or domain of the identity.

*/ inline void SetIdentityName(const char* value) { m_identityNameHasBeenSet = true; m_identityName.assign(value); } /** *

The address or domain of the identity.

*/ inline IdentityInfo& WithIdentityName(const Aws::String& value) { SetIdentityName(value); return *this;} /** *

The address or domain of the identity.

*/ inline IdentityInfo& WithIdentityName(Aws::String&& value) { SetIdentityName(std::move(value)); return *this;} /** *

The address or domain of the identity.

*/ inline IdentityInfo& WithIdentityName(const char* value) { SetIdentityName(value); return *this;} /** *

Indicates whether or not you can send email from the identity.

An * identity is an email address or domain that you send email from. Before * you can send email from an identity, you have to demostrate that you own the * identity, and that you authorize Amazon SES to send email from that * identity.

*/ inline bool GetSendingEnabled() const{ return m_sendingEnabled; } /** *

Indicates whether or not you can send email from the identity.

An * identity is an email address or domain that you send email from. Before * you can send email from an identity, you have to demostrate that you own the * identity, and that you authorize Amazon SES to send email from that * identity.

*/ inline bool SendingEnabledHasBeenSet() const { return m_sendingEnabledHasBeenSet; } /** *

Indicates whether or not you can send email from the identity.

An * identity is an email address or domain that you send email from. Before * you can send email from an identity, you have to demostrate that you own the * identity, and that you authorize Amazon SES to send email from that * identity.

*/ inline void SetSendingEnabled(bool value) { m_sendingEnabledHasBeenSet = true; m_sendingEnabled = value; } /** *

Indicates whether or not you can send email from the identity.

An * identity is an email address or domain that you send email from. Before * you can send email from an identity, you have to demostrate that you own the * identity, and that you authorize Amazon SES to send email from that * identity.

*/ inline IdentityInfo& WithSendingEnabled(bool value) { SetSendingEnabled(value); return *this;} /** *

The verification status of the identity. The status can be one of the * following:

  • PENDING – The verification process was * initiated, but Amazon SES hasn't yet been able to verify the identity.

  • *
  • SUCCESS – The verification process completed * successfully.

  • FAILED – The verification process * failed.

  • TEMPORARY_FAILURE – A temporary issue is * preventing Amazon SES from determining the verification status of the * identity.

  • NOT_STARTED – The verification process * hasn't been initiated for the identity.

*/ inline const VerificationStatus& GetVerificationStatus() const{ return m_verificationStatus; } /** *

The verification status of the identity. The status can be one of the * following:

  • PENDING – The verification process was * initiated, but Amazon SES hasn't yet been able to verify the identity.

  • *
  • SUCCESS – The verification process completed * successfully.

  • FAILED – The verification process * failed.

  • TEMPORARY_FAILURE – A temporary issue is * preventing Amazon SES from determining the verification status of the * identity.

  • NOT_STARTED – The verification process * hasn't been initiated for the identity.

*/ inline bool VerificationStatusHasBeenSet() const { return m_verificationStatusHasBeenSet; } /** *

The verification status of the identity. The status can be one of the * following:

  • PENDING – The verification process was * initiated, but Amazon SES hasn't yet been able to verify the identity.

  • *
  • SUCCESS – The verification process completed * successfully.

  • FAILED – The verification process * failed.

  • TEMPORARY_FAILURE – A temporary issue is * preventing Amazon SES from determining the verification status of the * identity.

  • NOT_STARTED – The verification process * hasn't been initiated for the identity.

*/ inline void SetVerificationStatus(const VerificationStatus& value) { m_verificationStatusHasBeenSet = true; m_verificationStatus = value; } /** *

The verification status of the identity. The status can be one of the * following:

  • PENDING – The verification process was * initiated, but Amazon SES hasn't yet been able to verify the identity.

  • *
  • SUCCESS – The verification process completed * successfully.

  • FAILED – The verification process * failed.

  • TEMPORARY_FAILURE – A temporary issue is * preventing Amazon SES from determining the verification status of the * identity.

  • NOT_STARTED – The verification process * hasn't been initiated for the identity.

*/ inline void SetVerificationStatus(VerificationStatus&& value) { m_verificationStatusHasBeenSet = true; m_verificationStatus = std::move(value); } /** *

The verification status of the identity. The status can be one of the * following:

  • PENDING – The verification process was * initiated, but Amazon SES hasn't yet been able to verify the identity.

  • *
  • SUCCESS – The verification process completed * successfully.

  • FAILED – The verification process * failed.

  • TEMPORARY_FAILURE – A temporary issue is * preventing Amazon SES from determining the verification status of the * identity.

  • NOT_STARTED – The verification process * hasn't been initiated for the identity.

*/ inline IdentityInfo& WithVerificationStatus(const VerificationStatus& value) { SetVerificationStatus(value); return *this;} /** *

The verification status of the identity. The status can be one of the * following:

  • PENDING – The verification process was * initiated, but Amazon SES hasn't yet been able to verify the identity.

  • *
  • SUCCESS – The verification process completed * successfully.

  • FAILED – The verification process * failed.

  • TEMPORARY_FAILURE – A temporary issue is * preventing Amazon SES from determining the verification status of the * identity.

  • NOT_STARTED – The verification process * hasn't been initiated for the identity.

*/ inline IdentityInfo& WithVerificationStatus(VerificationStatus&& value) { SetVerificationStatus(std::move(value)); return *this;} private: IdentityType m_identityType; bool m_identityTypeHasBeenSet = false; Aws::String m_identityName; bool m_identityNameHasBeenSet = false; bool m_sendingEnabled; bool m_sendingEnabledHasBeenSet = false; VerificationStatus m_verificationStatus; bool m_verificationStatusHasBeenSet = false; }; } // namespace Model } // namespace SESV2 } // namespace Aws