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

The subdomain for the domain association.

See Also:

AWS * API Reference

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

Describes the settings for the subdomain.

*/ inline const SubDomainSetting& GetSubDomainSetting() const{ return m_subDomainSetting; } /** *

Describes the settings for the subdomain.

*/ inline bool SubDomainSettingHasBeenSet() const { return m_subDomainSettingHasBeenSet; } /** *

Describes the settings for the subdomain.

*/ inline void SetSubDomainSetting(const SubDomainSetting& value) { m_subDomainSettingHasBeenSet = true; m_subDomainSetting = value; } /** *

Describes the settings for the subdomain.

*/ inline void SetSubDomainSetting(SubDomainSetting&& value) { m_subDomainSettingHasBeenSet = true; m_subDomainSetting = std::move(value); } /** *

Describes the settings for the subdomain.

*/ inline SubDomain& WithSubDomainSetting(const SubDomainSetting& value) { SetSubDomainSetting(value); return *this;} /** *

Describes the settings for the subdomain.

*/ inline SubDomain& WithSubDomainSetting(SubDomainSetting&& value) { SetSubDomainSetting(std::move(value)); return *this;} /** *

The verified status of the subdomain

*/ inline bool GetVerified() const{ return m_verified; } /** *

The verified status of the subdomain

*/ inline bool VerifiedHasBeenSet() const { return m_verifiedHasBeenSet; } /** *

The verified status of the subdomain

*/ inline void SetVerified(bool value) { m_verifiedHasBeenSet = true; m_verified = value; } /** *

The verified status of the subdomain

*/ inline SubDomain& WithVerified(bool value) { SetVerified(value); return *this;} /** *

The DNS record for the subdomain.

*/ inline const Aws::String& GetDnsRecord() const{ return m_dnsRecord; } /** *

The DNS record for the subdomain.

*/ inline bool DnsRecordHasBeenSet() const { return m_dnsRecordHasBeenSet; } /** *

The DNS record for the subdomain.

*/ inline void SetDnsRecord(const Aws::String& value) { m_dnsRecordHasBeenSet = true; m_dnsRecord = value; } /** *

The DNS record for the subdomain.

*/ inline void SetDnsRecord(Aws::String&& value) { m_dnsRecordHasBeenSet = true; m_dnsRecord = std::move(value); } /** *

The DNS record for the subdomain.

*/ inline void SetDnsRecord(const char* value) { m_dnsRecordHasBeenSet = true; m_dnsRecord.assign(value); } /** *

The DNS record for the subdomain.

*/ inline SubDomain& WithDnsRecord(const Aws::String& value) { SetDnsRecord(value); return *this;} /** *

The DNS record for the subdomain.

*/ inline SubDomain& WithDnsRecord(Aws::String&& value) { SetDnsRecord(std::move(value)); return *this;} /** *

The DNS record for the subdomain.

*/ inline SubDomain& WithDnsRecord(const char* value) { SetDnsRecord(value); return *this;} private: SubDomainSetting m_subDomainSetting; bool m_subDomainSettingHasBeenSet = false; bool m_verified; bool m_verifiedHasBeenSet = false; Aws::String m_dnsRecord; bool m_dnsRecordHasBeenSet = false; }; } // namespace Model } // namespace Amplify } // namespace Aws