/** * 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 PinpointEmail { namespace Model { /** *

Information about an email identity.

See Also:

AWS * API Reference

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

The email identity type. The identity type can be one of the following:

*
  • EMAIL_ADDRESS – The identity is an email address.

    *
  • DOMAIN – The identity is a domain.

  • *

    MANAGED_DOMAIN – The identity is a domain that is managed by * AWS.

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

The email identity type. The identity type can be one of the following:

*
  • EMAIL_ADDRESS – The identity is an email address.

    *
  • DOMAIN – The identity is a domain.

  • *

    MANAGED_DOMAIN – The identity is a domain that is managed by * AWS.

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

The email identity type. The identity type can be one of the following:

*
  • EMAIL_ADDRESS – The identity is an email address.

    *
  • DOMAIN – The identity is a domain.

  • *

    MANAGED_DOMAIN – The identity is a domain that is managed by * AWS.

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

The email identity type. The identity type can be one of the following:

*
  • EMAIL_ADDRESS – The identity is an email address.

    *
  • DOMAIN – The identity is a domain.

  • *

    MANAGED_DOMAIN – The identity is a domain that is managed by * AWS.

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

The email identity type. The identity type can be one of the following:

*
  • EMAIL_ADDRESS – The identity is an email address.

    *
  • DOMAIN – The identity is a domain.

  • *

    MANAGED_DOMAIN – The identity is a domain that is managed by * AWS.

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

The email identity type. The identity type can be one of the following:

*
  • EMAIL_ADDRESS – The identity is an email address.

    *
  • DOMAIN – The identity is a domain.

  • *

    MANAGED_DOMAIN – The identity is a domain that is managed by * AWS.

*/ 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.

In * Amazon Pinpoint, 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 Pinpoint to send email from * that identity.

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

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

In * Amazon Pinpoint, 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 Pinpoint to send email from * that identity.

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

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

In * Amazon Pinpoint, 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 Pinpoint 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.

In * Amazon Pinpoint, 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 Pinpoint to send email from * that identity.

*/ inline IdentityInfo& WithSendingEnabled(bool value) { SetSendingEnabled(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; }; } // namespace Model } // namespace PinpointEmail } // namespace Aws