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

The UpdateDomainContact request includes the following * elements.

See Also:

AWS * API Reference

*/ class AWS_ROUTE53DOMAINS_API UpdateDomainContactRequest : public Route53DomainsRequest { public: UpdateDomainContactRequest(); // Service request name is the Operation name which will send this request out, // each operation should has unique request name, so that we can get operation's name from this request. // Note: this is not true for response, multiple operations may have the same response name, // so we can not get operation's name from response. inline virtual const char* GetServiceRequestName() const override { return "UpdateDomainContact"; } Aws::String SerializePayload() const override; Aws::Http::HeaderValueCollection GetRequestSpecificHeaders() const override; /** *

The name of the domain that you want to update contact information for.

*/ inline const Aws::String& GetDomainName() const{ return m_domainName; } /** *

The name of the domain that you want to update contact information for.

*/ inline bool DomainNameHasBeenSet() const { return m_domainNameHasBeenSet; } /** *

The name of the domain that you want to update contact information for.

*/ inline void SetDomainName(const Aws::String& value) { m_domainNameHasBeenSet = true; m_domainName = value; } /** *

The name of the domain that you want to update contact information for.

*/ inline void SetDomainName(Aws::String&& value) { m_domainNameHasBeenSet = true; m_domainName = std::move(value); } /** *

The name of the domain that you want to update contact information for.

*/ inline void SetDomainName(const char* value) { m_domainNameHasBeenSet = true; m_domainName.assign(value); } /** *

The name of the domain that you want to update contact information for.

*/ inline UpdateDomainContactRequest& WithDomainName(const Aws::String& value) { SetDomainName(value); return *this;} /** *

The name of the domain that you want to update contact information for.

*/ inline UpdateDomainContactRequest& WithDomainName(Aws::String&& value) { SetDomainName(std::move(value)); return *this;} /** *

The name of the domain that you want to update contact information for.

*/ inline UpdateDomainContactRequest& WithDomainName(const char* value) { SetDomainName(value); return *this;} /** *

Provides detailed contact information.

*/ inline const ContactDetail& GetAdminContact() const{ return m_adminContact; } /** *

Provides detailed contact information.

*/ inline bool AdminContactHasBeenSet() const { return m_adminContactHasBeenSet; } /** *

Provides detailed contact information.

*/ inline void SetAdminContact(const ContactDetail& value) { m_adminContactHasBeenSet = true; m_adminContact = value; } /** *

Provides detailed contact information.

*/ inline void SetAdminContact(ContactDetail&& value) { m_adminContactHasBeenSet = true; m_adminContact = std::move(value); } /** *

Provides detailed contact information.

*/ inline UpdateDomainContactRequest& WithAdminContact(const ContactDetail& value) { SetAdminContact(value); return *this;} /** *

Provides detailed contact information.

*/ inline UpdateDomainContactRequest& WithAdminContact(ContactDetail&& value) { SetAdminContact(std::move(value)); return *this;} /** *

Provides detailed contact information.

*/ inline const ContactDetail& GetRegistrantContact() const{ return m_registrantContact; } /** *

Provides detailed contact information.

*/ inline bool RegistrantContactHasBeenSet() const { return m_registrantContactHasBeenSet; } /** *

Provides detailed contact information.

*/ inline void SetRegistrantContact(const ContactDetail& value) { m_registrantContactHasBeenSet = true; m_registrantContact = value; } /** *

Provides detailed contact information.

*/ inline void SetRegistrantContact(ContactDetail&& value) { m_registrantContactHasBeenSet = true; m_registrantContact = std::move(value); } /** *

Provides detailed contact information.

*/ inline UpdateDomainContactRequest& WithRegistrantContact(const ContactDetail& value) { SetRegistrantContact(value); return *this;} /** *

Provides detailed contact information.

*/ inline UpdateDomainContactRequest& WithRegistrantContact(ContactDetail&& value) { SetRegistrantContact(std::move(value)); return *this;} /** *

Provides detailed contact information.

*/ inline const ContactDetail& GetTechContact() const{ return m_techContact; } /** *

Provides detailed contact information.

*/ inline bool TechContactHasBeenSet() const { return m_techContactHasBeenSet; } /** *

Provides detailed contact information.

*/ inline void SetTechContact(const ContactDetail& value) { m_techContactHasBeenSet = true; m_techContact = value; } /** *

Provides detailed contact information.

*/ inline void SetTechContact(ContactDetail&& value) { m_techContactHasBeenSet = true; m_techContact = std::move(value); } /** *

Provides detailed contact information.

*/ inline UpdateDomainContactRequest& WithTechContact(const ContactDetail& value) { SetTechContact(value); return *this;} /** *

Provides detailed contact information.

*/ inline UpdateDomainContactRequest& WithTechContact(ContactDetail&& value) { SetTechContact(std::move(value)); return *this;} private: Aws::String m_domainName; bool m_domainNameHasBeenSet; ContactDetail m_adminContact; bool m_adminContactHasBeenSet; ContactDetail m_registrantContact; bool m_registrantContactHasBeenSet; ContactDetail m_techContact; bool m_techContactHasBeenSet; }; } // namespace Model } // namespace Route53Domains } // namespace Aws