/** * 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 Xml { class XmlNode; } // namespace Xml } // namespace Utils namespace RDS { namespace Model { /** *

An Active Directory Domain membership record associated with the DB instance * or cluster.

See Also:

AWS * API Reference

*/ class AWS_RDS_API DomainMembership { public: DomainMembership(); DomainMembership(const Aws::Utils::Xml::XmlNode& xmlNode); DomainMembership& operator=(const Aws::Utils::Xml::XmlNode& xmlNode); void OutputToStream(Aws::OStream& ostream, const char* location, unsigned index, const char* locationValue) const; void OutputToStream(Aws::OStream& oStream, const char* location) const; /** *

The identifier of the Active Directory Domain.

*/ inline const Aws::String& GetDomain() const{ return m_domain; } /** *

The identifier of the Active Directory Domain.

*/ inline bool DomainHasBeenSet() const { return m_domainHasBeenSet; } /** *

The identifier of the Active Directory Domain.

*/ inline void SetDomain(const Aws::String& value) { m_domainHasBeenSet = true; m_domain = value; } /** *

The identifier of the Active Directory Domain.

*/ inline void SetDomain(Aws::String&& value) { m_domainHasBeenSet = true; m_domain = std::move(value); } /** *

The identifier of the Active Directory Domain.

*/ inline void SetDomain(const char* value) { m_domainHasBeenSet = true; m_domain.assign(value); } /** *

The identifier of the Active Directory Domain.

*/ inline DomainMembership& WithDomain(const Aws::String& value) { SetDomain(value); return *this;} /** *

The identifier of the Active Directory Domain.

*/ inline DomainMembership& WithDomain(Aws::String&& value) { SetDomain(std::move(value)); return *this;} /** *

The identifier of the Active Directory Domain.

*/ inline DomainMembership& WithDomain(const char* value) { SetDomain(value); return *this;} /** *

The status of the Active Directory Domain membership for the DB instance or * cluster. Values include joined, pending-join, failed, and so on.

*/ inline const Aws::String& GetStatus() const{ return m_status; } /** *

The status of the Active Directory Domain membership for the DB instance or * cluster. Values include joined, pending-join, failed, and so on.

*/ inline bool StatusHasBeenSet() const { return m_statusHasBeenSet; } /** *

The status of the Active Directory Domain membership for the DB instance or * cluster. Values include joined, pending-join, failed, and so on.

*/ inline void SetStatus(const Aws::String& value) { m_statusHasBeenSet = true; m_status = value; } /** *

The status of the Active Directory Domain membership for the DB instance or * cluster. Values include joined, pending-join, failed, and so on.

*/ inline void SetStatus(Aws::String&& value) { m_statusHasBeenSet = true; m_status = std::move(value); } /** *

The status of the Active Directory Domain membership for the DB instance or * cluster. Values include joined, pending-join, failed, and so on.

*/ inline void SetStatus(const char* value) { m_statusHasBeenSet = true; m_status.assign(value); } /** *

The status of the Active Directory Domain membership for the DB instance or * cluster. Values include joined, pending-join, failed, and so on.

*/ inline DomainMembership& WithStatus(const Aws::String& value) { SetStatus(value); return *this;} /** *

The status of the Active Directory Domain membership for the DB instance or * cluster. Values include joined, pending-join, failed, and so on.

*/ inline DomainMembership& WithStatus(Aws::String&& value) { SetStatus(std::move(value)); return *this;} /** *

The status of the Active Directory Domain membership for the DB instance or * cluster. Values include joined, pending-join, failed, and so on.

*/ inline DomainMembership& WithStatus(const char* value) { SetStatus(value); return *this;} /** *

The fully qualified domain name of the Active Directory Domain.

*/ inline const Aws::String& GetFQDN() const{ return m_fQDN; } /** *

The fully qualified domain name of the Active Directory Domain.

*/ inline bool FQDNHasBeenSet() const { return m_fQDNHasBeenSet; } /** *

The fully qualified domain name of the Active Directory Domain.

*/ inline void SetFQDN(const Aws::String& value) { m_fQDNHasBeenSet = true; m_fQDN = value; } /** *

The fully qualified domain name of the Active Directory Domain.

*/ inline void SetFQDN(Aws::String&& value) { m_fQDNHasBeenSet = true; m_fQDN = std::move(value); } /** *

The fully qualified domain name of the Active Directory Domain.

*/ inline void SetFQDN(const char* value) { m_fQDNHasBeenSet = true; m_fQDN.assign(value); } /** *

The fully qualified domain name of the Active Directory Domain.

*/ inline DomainMembership& WithFQDN(const Aws::String& value) { SetFQDN(value); return *this;} /** *

The fully qualified domain name of the Active Directory Domain.

*/ inline DomainMembership& WithFQDN(Aws::String&& value) { SetFQDN(std::move(value)); return *this;} /** *

The fully qualified domain name of the Active Directory Domain.

*/ inline DomainMembership& WithFQDN(const char* value) { SetFQDN(value); return *this;} /** *

The name of the IAM role to be used when making API calls to the Directory * Service.

*/ inline const Aws::String& GetIAMRoleName() const{ return m_iAMRoleName; } /** *

The name of the IAM role to be used when making API calls to the Directory * Service.

*/ inline bool IAMRoleNameHasBeenSet() const { return m_iAMRoleNameHasBeenSet; } /** *

The name of the IAM role to be used when making API calls to the Directory * Service.

*/ inline void SetIAMRoleName(const Aws::String& value) { m_iAMRoleNameHasBeenSet = true; m_iAMRoleName = value; } /** *

The name of the IAM role to be used when making API calls to the Directory * Service.

*/ inline void SetIAMRoleName(Aws::String&& value) { m_iAMRoleNameHasBeenSet = true; m_iAMRoleName = std::move(value); } /** *

The name of the IAM role to be used when making API calls to the Directory * Service.

*/ inline void SetIAMRoleName(const char* value) { m_iAMRoleNameHasBeenSet = true; m_iAMRoleName.assign(value); } /** *

The name of the IAM role to be used when making API calls to the Directory * Service.

*/ inline DomainMembership& WithIAMRoleName(const Aws::String& value) { SetIAMRoleName(value); return *this;} /** *

The name of the IAM role to be used when making API calls to the Directory * Service.

*/ inline DomainMembership& WithIAMRoleName(Aws::String&& value) { SetIAMRoleName(std::move(value)); return *this;} /** *

The name of the IAM role to be used when making API calls to the Directory * Service.

*/ inline DomainMembership& WithIAMRoleName(const char* value) { SetIAMRoleName(value); return *this;} private: Aws::String m_domain; bool m_domainHasBeenSet; Aws::String m_status; bool m_statusHasBeenSet; Aws::String m_fQDN; bool m_fQDNHasBeenSet; Aws::String m_iAMRoleName; bool m_iAMRoleNameHasBeenSet; }; } // namespace Model } // namespace RDS } // namespace Aws