/**
* Copyright Amazon.com, Inc. or its affiliates. All Rights Reserved.
* SPDX-License-Identifier: Apache-2.0.
*/
#pragma once
#include Provides information about an account that's associated with an Amazon Macie
* administrator account.See Also:
AWS API
* Reference
The Amazon Web Services account ID for the account.
*/ inline const Aws::String& GetAccountId() const{ return m_accountId; } /** *The Amazon Web Services account ID for the account.
*/ inline bool AccountIdHasBeenSet() const { return m_accountIdHasBeenSet; } /** *The Amazon Web Services account ID for the account.
*/ inline void SetAccountId(const Aws::String& value) { m_accountIdHasBeenSet = true; m_accountId = value; } /** *The Amazon Web Services account ID for the account.
*/ inline void SetAccountId(Aws::String&& value) { m_accountIdHasBeenSet = true; m_accountId = std::move(value); } /** *The Amazon Web Services account ID for the account.
*/ inline void SetAccountId(const char* value) { m_accountIdHasBeenSet = true; m_accountId.assign(value); } /** *The Amazon Web Services account ID for the account.
*/ inline Member& WithAccountId(const Aws::String& value) { SetAccountId(value); return *this;} /** *The Amazon Web Services account ID for the account.
*/ inline Member& WithAccountId(Aws::String&& value) { SetAccountId(std::move(value)); return *this;} /** *The Amazon Web Services account ID for the account.
*/ inline Member& WithAccountId(const char* value) { SetAccountId(value); return *this;} /** *The Amazon Web Services account ID for the administrator account.
*/ inline const Aws::String& GetAdministratorAccountId() const{ return m_administratorAccountId; } /** *The Amazon Web Services account ID for the administrator account.
*/ inline bool AdministratorAccountIdHasBeenSet() const { return m_administratorAccountIdHasBeenSet; } /** *The Amazon Web Services account ID for the administrator account.
*/ inline void SetAdministratorAccountId(const Aws::String& value) { m_administratorAccountIdHasBeenSet = true; m_administratorAccountId = value; } /** *The Amazon Web Services account ID for the administrator account.
*/ inline void SetAdministratorAccountId(Aws::String&& value) { m_administratorAccountIdHasBeenSet = true; m_administratorAccountId = std::move(value); } /** *The Amazon Web Services account ID for the administrator account.
*/ inline void SetAdministratorAccountId(const char* value) { m_administratorAccountIdHasBeenSet = true; m_administratorAccountId.assign(value); } /** *The Amazon Web Services account ID for the administrator account.
*/ inline Member& WithAdministratorAccountId(const Aws::String& value) { SetAdministratorAccountId(value); return *this;} /** *The Amazon Web Services account ID for the administrator account.
*/ inline Member& WithAdministratorAccountId(Aws::String&& value) { SetAdministratorAccountId(std::move(value)); return *this;} /** *The Amazon Web Services account ID for the administrator account.
*/ inline Member& WithAdministratorAccountId(const char* value) { SetAdministratorAccountId(value); return *this;} /** *The Amazon Resource Name (ARN) of the account.
*/ inline const Aws::String& GetArn() const{ return m_arn; } /** *The Amazon Resource Name (ARN) of the account.
*/ inline bool ArnHasBeenSet() const { return m_arnHasBeenSet; } /** *The Amazon Resource Name (ARN) of the account.
*/ inline void SetArn(const Aws::String& value) { m_arnHasBeenSet = true; m_arn = value; } /** *The Amazon Resource Name (ARN) of the account.
*/ inline void SetArn(Aws::String&& value) { m_arnHasBeenSet = true; m_arn = std::move(value); } /** *The Amazon Resource Name (ARN) of the account.
*/ inline void SetArn(const char* value) { m_arnHasBeenSet = true; m_arn.assign(value); } /** *The Amazon Resource Name (ARN) of the account.
*/ inline Member& WithArn(const Aws::String& value) { SetArn(value); return *this;} /** *The Amazon Resource Name (ARN) of the account.
*/ inline Member& WithArn(Aws::String&& value) { SetArn(std::move(value)); return *this;} /** *The Amazon Resource Name (ARN) of the account.
*/ inline Member& WithArn(const char* value) { SetArn(value); return *this;} /** *The email address for the account. This value is null if the account is * associated with the administrator account through Organizations.
*/ inline const Aws::String& GetEmail() const{ return m_email; } /** *The email address for the account. This value is null if the account is * associated with the administrator account through Organizations.
*/ inline bool EmailHasBeenSet() const { return m_emailHasBeenSet; } /** *The email address for the account. This value is null if the account is * associated with the administrator account through Organizations.
*/ inline void SetEmail(const Aws::String& value) { m_emailHasBeenSet = true; m_email = value; } /** *The email address for the account. This value is null if the account is * associated with the administrator account through Organizations.
*/ inline void SetEmail(Aws::String&& value) { m_emailHasBeenSet = true; m_email = std::move(value); } /** *The email address for the account. This value is null if the account is * associated with the administrator account through Organizations.
*/ inline void SetEmail(const char* value) { m_emailHasBeenSet = true; m_email.assign(value); } /** *The email address for the account. This value is null if the account is * associated with the administrator account through Organizations.
*/ inline Member& WithEmail(const Aws::String& value) { SetEmail(value); return *this;} /** *The email address for the account. This value is null if the account is * associated with the administrator account through Organizations.
*/ inline Member& WithEmail(Aws::String&& value) { SetEmail(std::move(value)); return *this;} /** *The email address for the account. This value is null if the account is * associated with the administrator account through Organizations.
*/ inline Member& WithEmail(const char* value) { SetEmail(value); return *this;} /** *The date and time, in UTC and extended ISO 8601 format, when an Amazon Macie * membership invitation was last sent to the account. This value is null if a * Macie membership invitation hasn't been sent to the account.
*/ inline const Aws::Utils::DateTime& GetInvitedAt() const{ return m_invitedAt; } /** *The date and time, in UTC and extended ISO 8601 format, when an Amazon Macie * membership invitation was last sent to the account. This value is null if a * Macie membership invitation hasn't been sent to the account.
*/ inline bool InvitedAtHasBeenSet() const { return m_invitedAtHasBeenSet; } /** *The date and time, in UTC and extended ISO 8601 format, when an Amazon Macie * membership invitation was last sent to the account. This value is null if a * Macie membership invitation hasn't been sent to the account.
*/ inline void SetInvitedAt(const Aws::Utils::DateTime& value) { m_invitedAtHasBeenSet = true; m_invitedAt = value; } /** *The date and time, in UTC and extended ISO 8601 format, when an Amazon Macie * membership invitation was last sent to the account. This value is null if a * Macie membership invitation hasn't been sent to the account.
*/ inline void SetInvitedAt(Aws::Utils::DateTime&& value) { m_invitedAtHasBeenSet = true; m_invitedAt = std::move(value); } /** *The date and time, in UTC and extended ISO 8601 format, when an Amazon Macie * membership invitation was last sent to the account. This value is null if a * Macie membership invitation hasn't been sent to the account.
*/ inline Member& WithInvitedAt(const Aws::Utils::DateTime& value) { SetInvitedAt(value); return *this;} /** *The date and time, in UTC and extended ISO 8601 format, when an Amazon Macie * membership invitation was last sent to the account. This value is null if a * Macie membership invitation hasn't been sent to the account.
*/ inline Member& WithInvitedAt(Aws::Utils::DateTime&& value) { SetInvitedAt(std::move(value)); return *this;} /** *(Deprecated) The Amazon Web Services account ID for the administrator * account. This property has been replaced by the administratorAccountId property * and is retained only for backward compatibility.
*/ inline const Aws::String& GetMasterAccountId() const{ return m_masterAccountId; } /** *(Deprecated) The Amazon Web Services account ID for the administrator * account. This property has been replaced by the administratorAccountId property * and is retained only for backward compatibility.
*/ inline bool MasterAccountIdHasBeenSet() const { return m_masterAccountIdHasBeenSet; } /** *(Deprecated) The Amazon Web Services account ID for the administrator * account. This property has been replaced by the administratorAccountId property * and is retained only for backward compatibility.
*/ inline void SetMasterAccountId(const Aws::String& value) { m_masterAccountIdHasBeenSet = true; m_masterAccountId = value; } /** *(Deprecated) The Amazon Web Services account ID for the administrator * account. This property has been replaced by the administratorAccountId property * and is retained only for backward compatibility.
*/ inline void SetMasterAccountId(Aws::String&& value) { m_masterAccountIdHasBeenSet = true; m_masterAccountId = std::move(value); } /** *(Deprecated) The Amazon Web Services account ID for the administrator * account. This property has been replaced by the administratorAccountId property * and is retained only for backward compatibility.
*/ inline void SetMasterAccountId(const char* value) { m_masterAccountIdHasBeenSet = true; m_masterAccountId.assign(value); } /** *(Deprecated) The Amazon Web Services account ID for the administrator * account. This property has been replaced by the administratorAccountId property * and is retained only for backward compatibility.
*/ inline Member& WithMasterAccountId(const Aws::String& value) { SetMasterAccountId(value); return *this;} /** *(Deprecated) The Amazon Web Services account ID for the administrator * account. This property has been replaced by the administratorAccountId property * and is retained only for backward compatibility.
*/ inline Member& WithMasterAccountId(Aws::String&& value) { SetMasterAccountId(std::move(value)); return *this;} /** *(Deprecated) The Amazon Web Services account ID for the administrator * account. This property has been replaced by the administratorAccountId property * and is retained only for backward compatibility.
*/ inline Member& WithMasterAccountId(const char* value) { SetMasterAccountId(value); return *this;} /** *The current status of the relationship between the account and the * administrator account.
*/ inline const RelationshipStatus& GetRelationshipStatus() const{ return m_relationshipStatus; } /** *The current status of the relationship between the account and the * administrator account.
*/ inline bool RelationshipStatusHasBeenSet() const { return m_relationshipStatusHasBeenSet; } /** *The current status of the relationship between the account and the * administrator account.
*/ inline void SetRelationshipStatus(const RelationshipStatus& value) { m_relationshipStatusHasBeenSet = true; m_relationshipStatus = value; } /** *The current status of the relationship between the account and the * administrator account.
*/ inline void SetRelationshipStatus(RelationshipStatus&& value) { m_relationshipStatusHasBeenSet = true; m_relationshipStatus = std::move(value); } /** *The current status of the relationship between the account and the * administrator account.
*/ inline Member& WithRelationshipStatus(const RelationshipStatus& value) { SetRelationshipStatus(value); return *this;} /** *The current status of the relationship between the account and the * administrator account.
*/ inline Member& WithRelationshipStatus(RelationshipStatus&& value) { SetRelationshipStatus(std::move(value)); return *this;} /** *A map of key-value pairs that specifies which tags (keys and values) are * associated with the account in Amazon Macie.
*/ inline const Aws::MapA map of key-value pairs that specifies which tags (keys and values) are * associated with the account in Amazon Macie.
*/ inline bool TagsHasBeenSet() const { return m_tagsHasBeenSet; } /** *A map of key-value pairs that specifies which tags (keys and values) are * associated with the account in Amazon Macie.
*/ inline void SetTags(const Aws::MapA map of key-value pairs that specifies which tags (keys and values) are * associated with the account in Amazon Macie.
*/ inline void SetTags(Aws::MapA map of key-value pairs that specifies which tags (keys and values) are * associated with the account in Amazon Macie.
*/ inline Member& WithTags(const Aws::MapA map of key-value pairs that specifies which tags (keys and values) are * associated with the account in Amazon Macie.
*/ inline Member& WithTags(Aws::MapA map of key-value pairs that specifies which tags (keys and values) are * associated with the account in Amazon Macie.
*/ inline Member& AddTags(const Aws::String& key, const Aws::String& value) { m_tagsHasBeenSet = true; m_tags.emplace(key, value); return *this; } /** *A map of key-value pairs that specifies which tags (keys and values) are * associated with the account in Amazon Macie.
*/ inline Member& AddTags(Aws::String&& key, const Aws::String& value) { m_tagsHasBeenSet = true; m_tags.emplace(std::move(key), value); return *this; } /** *A map of key-value pairs that specifies which tags (keys and values) are * associated with the account in Amazon Macie.
*/ inline Member& AddTags(const Aws::String& key, Aws::String&& value) { m_tagsHasBeenSet = true; m_tags.emplace(key, std::move(value)); return *this; } /** *A map of key-value pairs that specifies which tags (keys and values) are * associated with the account in Amazon Macie.
*/ inline Member& AddTags(Aws::String&& key, Aws::String&& value) { m_tagsHasBeenSet = true; m_tags.emplace(std::move(key), std::move(value)); return *this; } /** *A map of key-value pairs that specifies which tags (keys and values) are * associated with the account in Amazon Macie.
*/ inline Member& AddTags(const char* key, Aws::String&& value) { m_tagsHasBeenSet = true; m_tags.emplace(key, std::move(value)); return *this; } /** *A map of key-value pairs that specifies which tags (keys and values) are * associated with the account in Amazon Macie.
*/ inline Member& AddTags(Aws::String&& key, const char* value) { m_tagsHasBeenSet = true; m_tags.emplace(std::move(key), value); return *this; } /** *A map of key-value pairs that specifies which tags (keys and values) are * associated with the account in Amazon Macie.
*/ inline Member& AddTags(const char* key, const char* value) { m_tagsHasBeenSet = true; m_tags.emplace(key, value); return *this; } /** *The date and time, in UTC and extended ISO 8601 format, of the most recent * change to the status of the relationship between the account and the * administrator account.
*/ inline const Aws::Utils::DateTime& GetUpdatedAt() const{ return m_updatedAt; } /** *The date and time, in UTC and extended ISO 8601 format, of the most recent * change to the status of the relationship between the account and the * administrator account.
*/ inline bool UpdatedAtHasBeenSet() const { return m_updatedAtHasBeenSet; } /** *The date and time, in UTC and extended ISO 8601 format, of the most recent * change to the status of the relationship between the account and the * administrator account.
*/ inline void SetUpdatedAt(const Aws::Utils::DateTime& value) { m_updatedAtHasBeenSet = true; m_updatedAt = value; } /** *The date and time, in UTC and extended ISO 8601 format, of the most recent * change to the status of the relationship between the account and the * administrator account.
*/ inline void SetUpdatedAt(Aws::Utils::DateTime&& value) { m_updatedAtHasBeenSet = true; m_updatedAt = std::move(value); } /** *The date and time, in UTC and extended ISO 8601 format, of the most recent * change to the status of the relationship between the account and the * administrator account.
*/ inline Member& WithUpdatedAt(const Aws::Utils::DateTime& value) { SetUpdatedAt(value); return *this;} /** *The date and time, in UTC and extended ISO 8601 format, of the most recent * change to the status of the relationship between the account and the * administrator account.
*/ inline Member& WithUpdatedAt(Aws::Utils::DateTime&& value) { SetUpdatedAt(std::move(value)); return *this;} private: Aws::String m_accountId; bool m_accountIdHasBeenSet = false; Aws::String m_administratorAccountId; bool m_administratorAccountIdHasBeenSet = false; Aws::String m_arn; bool m_arnHasBeenSet = false; Aws::String m_email; bool m_emailHasBeenSet = false; Aws::Utils::DateTime m_invitedAt; bool m_invitedAtHasBeenSet = false; Aws::String m_masterAccountId; bool m_masterAccountIdHasBeenSet = false; RelationshipStatus m_relationshipStatus; bool m_relationshipStatusHasBeenSet = false; Aws::Map