/** * Copyright Amazon.com, Inc. or its affiliates. All Rights Reserved. * SPDX-License-Identifier: Apache-2.0. */ #pragma once #include #include #include #include #include #include #include #include #include #include #include namespace Aws { namespace Utils { namespace Json { class JsonValue; class JsonView; } // namespace Json } // namespace Utils namespace Detective { namespace Model { /** *

Details about a member account in a behavior graph.

See Also:

* AWS * API Reference

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

The Amazon Web Services account identifier for the member account.

*/ inline const Aws::String& GetAccountId() const{ return m_accountId; } /** *

The Amazon Web Services account identifier for the member account.

*/ inline bool AccountIdHasBeenSet() const { return m_accountIdHasBeenSet; } /** *

The Amazon Web Services account identifier for the member account.

*/ inline void SetAccountId(const Aws::String& value) { m_accountIdHasBeenSet = true; m_accountId = value; } /** *

The Amazon Web Services account identifier for the member account.

*/ inline void SetAccountId(Aws::String&& value) { m_accountIdHasBeenSet = true; m_accountId = std::move(value); } /** *

The Amazon Web Services account identifier for the member account.

*/ inline void SetAccountId(const char* value) { m_accountIdHasBeenSet = true; m_accountId.assign(value); } /** *

The Amazon Web Services account identifier for the member account.

*/ inline MemberDetail& WithAccountId(const Aws::String& value) { SetAccountId(value); return *this;} /** *

The Amazon Web Services account identifier for the member account.

*/ inline MemberDetail& WithAccountId(Aws::String&& value) { SetAccountId(std::move(value)); return *this;} /** *

The Amazon Web Services account identifier for the member account.

*/ inline MemberDetail& WithAccountId(const char* value) { SetAccountId(value); return *this;} /** *

The Amazon Web Services account root user email address for the member * account.

*/ inline const Aws::String& GetEmailAddress() const{ return m_emailAddress; } /** *

The Amazon Web Services account root user email address for the member * account.

*/ inline bool EmailAddressHasBeenSet() const { return m_emailAddressHasBeenSet; } /** *

The Amazon Web Services account root user email address for the member * account.

*/ inline void SetEmailAddress(const Aws::String& value) { m_emailAddressHasBeenSet = true; m_emailAddress = value; } /** *

The Amazon Web Services account root user email address for the member * account.

*/ inline void SetEmailAddress(Aws::String&& value) { m_emailAddressHasBeenSet = true; m_emailAddress = std::move(value); } /** *

The Amazon Web Services account root user email address for the member * account.

*/ inline void SetEmailAddress(const char* value) { m_emailAddressHasBeenSet = true; m_emailAddress.assign(value); } /** *

The Amazon Web Services account root user email address for the member * account.

*/ inline MemberDetail& WithEmailAddress(const Aws::String& value) { SetEmailAddress(value); return *this;} /** *

The Amazon Web Services account root user email address for the member * account.

*/ inline MemberDetail& WithEmailAddress(Aws::String&& value) { SetEmailAddress(std::move(value)); return *this;} /** *

The Amazon Web Services account root user email address for the member * account.

*/ inline MemberDetail& WithEmailAddress(const char* value) { SetEmailAddress(value); return *this;} /** *

The ARN of the behavior graph.

*/ inline const Aws::String& GetGraphArn() const{ return m_graphArn; } /** *

The ARN of the behavior graph.

*/ inline bool GraphArnHasBeenSet() const { return m_graphArnHasBeenSet; } /** *

The ARN of the behavior graph.

*/ inline void SetGraphArn(const Aws::String& value) { m_graphArnHasBeenSet = true; m_graphArn = value; } /** *

The ARN of the behavior graph.

*/ inline void SetGraphArn(Aws::String&& value) { m_graphArnHasBeenSet = true; m_graphArn = std::move(value); } /** *

The ARN of the behavior graph.

*/ inline void SetGraphArn(const char* value) { m_graphArnHasBeenSet = true; m_graphArn.assign(value); } /** *

The ARN of the behavior graph.

*/ inline MemberDetail& WithGraphArn(const Aws::String& value) { SetGraphArn(value); return *this;} /** *

The ARN of the behavior graph.

*/ inline MemberDetail& WithGraphArn(Aws::String&& value) { SetGraphArn(std::move(value)); return *this;} /** *

The ARN of the behavior graph.

*/ inline MemberDetail& WithGraphArn(const char* value) { SetGraphArn(value); return *this;} /** *

The Amazon Web Services account identifier of the administrator account for * the behavior graph.

*/ inline const Aws::String& GetAdministratorId() const{ return m_administratorId; } /** *

The Amazon Web Services account identifier of the administrator account for * the behavior graph.

*/ inline bool AdministratorIdHasBeenSet() const { return m_administratorIdHasBeenSet; } /** *

The Amazon Web Services account identifier of the administrator account for * the behavior graph.

*/ inline void SetAdministratorId(const Aws::String& value) { m_administratorIdHasBeenSet = true; m_administratorId = value; } /** *

The Amazon Web Services account identifier of the administrator account for * the behavior graph.

*/ inline void SetAdministratorId(Aws::String&& value) { m_administratorIdHasBeenSet = true; m_administratorId = std::move(value); } /** *

The Amazon Web Services account identifier of the administrator account for * the behavior graph.

*/ inline void SetAdministratorId(const char* value) { m_administratorIdHasBeenSet = true; m_administratorId.assign(value); } /** *

The Amazon Web Services account identifier of the administrator account for * the behavior graph.

*/ inline MemberDetail& WithAdministratorId(const Aws::String& value) { SetAdministratorId(value); return *this;} /** *

The Amazon Web Services account identifier of the administrator account for * the behavior graph.

*/ inline MemberDetail& WithAdministratorId(Aws::String&& value) { SetAdministratorId(std::move(value)); return *this;} /** *

The Amazon Web Services account identifier of the administrator account for * the behavior graph.

*/ inline MemberDetail& WithAdministratorId(const char* value) { SetAdministratorId(value); return *this;} /** *

The current membership status of the member account. The status can have one * of the following values:

  • INVITED - For invited * accounts only. Indicates that the member was sent an invitation but has not yet * responded.

  • VERIFICATION_IN_PROGRESS - For * invited accounts only, indicates that Detective is verifying that the account * identifier and email address provided for the member account match. If they do * match, then Detective sends the invitation. If the email address and account * identifier don't match, then the member cannot be added to the behavior * graph.

    For organization accounts in the organization behavior graph, * indicates that Detective is verifying that the account belongs to the * organization.

  • VERIFICATION_FAILED - For invited * accounts only. Indicates that the account and email address provided for the * member account do not match, and Detective did not send an invitation to the * account.

  • ENABLED - Indicates that the member * account currently contributes data to the behavior graph. For invited accounts, * the member account accepted the invitation. For organization accounts in the * organization behavior graph, the Detective administrator account enabled the * organization account as a member account.

  • * ACCEPTED_BUT_DISABLED - The account accepted the invitation, or was * enabled by the Detective administrator account, but is prevented from * contributing data to the behavior graph. DisabledReason provides * the reason why the member account is not enabled.

Invited * accounts that declined an invitation or that were removed from the behavior * graph are not included. In the organization behavior graph, organization * accounts that the Detective administrator account did not enable are not * included.

*/ inline const MemberStatus& GetStatus() const{ return m_status; } /** *

The current membership status of the member account. The status can have one * of the following values:

  • INVITED - For invited * accounts only. Indicates that the member was sent an invitation but has not yet * responded.

  • VERIFICATION_IN_PROGRESS - For * invited accounts only, indicates that Detective is verifying that the account * identifier and email address provided for the member account match. If they do * match, then Detective sends the invitation. If the email address and account * identifier don't match, then the member cannot be added to the behavior * graph.

    For organization accounts in the organization behavior graph, * indicates that Detective is verifying that the account belongs to the * organization.

  • VERIFICATION_FAILED - For invited * accounts only. Indicates that the account and email address provided for the * member account do not match, and Detective did not send an invitation to the * account.

  • ENABLED - Indicates that the member * account currently contributes data to the behavior graph. For invited accounts, * the member account accepted the invitation. For organization accounts in the * organization behavior graph, the Detective administrator account enabled the * organization account as a member account.

  • * ACCEPTED_BUT_DISABLED - The account accepted the invitation, or was * enabled by the Detective administrator account, but is prevented from * contributing data to the behavior graph. DisabledReason provides * the reason why the member account is not enabled.

Invited * accounts that declined an invitation or that were removed from the behavior * graph are not included. In the organization behavior graph, organization * accounts that the Detective administrator account did not enable are not * included.

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

The current membership status of the member account. The status can have one * of the following values:

  • INVITED - For invited * accounts only. Indicates that the member was sent an invitation but has not yet * responded.

  • VERIFICATION_IN_PROGRESS - For * invited accounts only, indicates that Detective is verifying that the account * identifier and email address provided for the member account match. If they do * match, then Detective sends the invitation. If the email address and account * identifier don't match, then the member cannot be added to the behavior * graph.

    For organization accounts in the organization behavior graph, * indicates that Detective is verifying that the account belongs to the * organization.

  • VERIFICATION_FAILED - For invited * accounts only. Indicates that the account and email address provided for the * member account do not match, and Detective did not send an invitation to the * account.

  • ENABLED - Indicates that the member * account currently contributes data to the behavior graph. For invited accounts, * the member account accepted the invitation. For organization accounts in the * organization behavior graph, the Detective administrator account enabled the * organization account as a member account.

  • * ACCEPTED_BUT_DISABLED - The account accepted the invitation, or was * enabled by the Detective administrator account, but is prevented from * contributing data to the behavior graph. DisabledReason provides * the reason why the member account is not enabled.

Invited * accounts that declined an invitation or that were removed from the behavior * graph are not included. In the organization behavior graph, organization * accounts that the Detective administrator account did not enable are not * included.

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

The current membership status of the member account. The status can have one * of the following values:

  • INVITED - For invited * accounts only. Indicates that the member was sent an invitation but has not yet * responded.

  • VERIFICATION_IN_PROGRESS - For * invited accounts only, indicates that Detective is verifying that the account * identifier and email address provided for the member account match. If they do * match, then Detective sends the invitation. If the email address and account * identifier don't match, then the member cannot be added to the behavior * graph.

    For organization accounts in the organization behavior graph, * indicates that Detective is verifying that the account belongs to the * organization.

  • VERIFICATION_FAILED - For invited * accounts only. Indicates that the account and email address provided for the * member account do not match, and Detective did not send an invitation to the * account.

  • ENABLED - Indicates that the member * account currently contributes data to the behavior graph. For invited accounts, * the member account accepted the invitation. For organization accounts in the * organization behavior graph, the Detective administrator account enabled the * organization account as a member account.

  • * ACCEPTED_BUT_DISABLED - The account accepted the invitation, or was * enabled by the Detective administrator account, but is prevented from * contributing data to the behavior graph. DisabledReason provides * the reason why the member account is not enabled.

Invited * accounts that declined an invitation or that were removed from the behavior * graph are not included. In the organization behavior graph, organization * accounts that the Detective administrator account did not enable are not * included.

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

The current membership status of the member account. The status can have one * of the following values:

  • INVITED - For invited * accounts only. Indicates that the member was sent an invitation but has not yet * responded.

  • VERIFICATION_IN_PROGRESS - For * invited accounts only, indicates that Detective is verifying that the account * identifier and email address provided for the member account match. If they do * match, then Detective sends the invitation. If the email address and account * identifier don't match, then the member cannot be added to the behavior * graph.

    For organization accounts in the organization behavior graph, * indicates that Detective is verifying that the account belongs to the * organization.

  • VERIFICATION_FAILED - For invited * accounts only. Indicates that the account and email address provided for the * member account do not match, and Detective did not send an invitation to the * account.

  • ENABLED - Indicates that the member * account currently contributes data to the behavior graph. For invited accounts, * the member account accepted the invitation. For organization accounts in the * organization behavior graph, the Detective administrator account enabled the * organization account as a member account.

  • * ACCEPTED_BUT_DISABLED - The account accepted the invitation, or was * enabled by the Detective administrator account, but is prevented from * contributing data to the behavior graph. DisabledReason provides * the reason why the member account is not enabled.

Invited * accounts that declined an invitation or that were removed from the behavior * graph are not included. In the organization behavior graph, organization * accounts that the Detective administrator account did not enable are not * included.

*/ inline MemberDetail& WithStatus(const MemberStatus& value) { SetStatus(value); return *this;} /** *

The current membership status of the member account. The status can have one * of the following values:

  • INVITED - For invited * accounts only. Indicates that the member was sent an invitation but has not yet * responded.

  • VERIFICATION_IN_PROGRESS - For * invited accounts only, indicates that Detective is verifying that the account * identifier and email address provided for the member account match. If they do * match, then Detective sends the invitation. If the email address and account * identifier don't match, then the member cannot be added to the behavior * graph.

    For organization accounts in the organization behavior graph, * indicates that Detective is verifying that the account belongs to the * organization.

  • VERIFICATION_FAILED - For invited * accounts only. Indicates that the account and email address provided for the * member account do not match, and Detective did not send an invitation to the * account.

  • ENABLED - Indicates that the member * account currently contributes data to the behavior graph. For invited accounts, * the member account accepted the invitation. For organization accounts in the * organization behavior graph, the Detective administrator account enabled the * organization account as a member account.

  • * ACCEPTED_BUT_DISABLED - The account accepted the invitation, or was * enabled by the Detective administrator account, but is prevented from * contributing data to the behavior graph. DisabledReason provides * the reason why the member account is not enabled.

Invited * accounts that declined an invitation or that were removed from the behavior * graph are not included. In the organization behavior graph, organization * accounts that the Detective administrator account did not enable are not * included.

*/ inline MemberDetail& WithStatus(MemberStatus&& value) { SetStatus(std::move(value)); return *this;} /** *

For member accounts with a status of ACCEPTED_BUT_DISABLED, the * reason that the member account is not enabled.

The reason can have one of * the following values:

  • VOLUME_TOO_HIGH - Indicates * that adding the member account would cause the data volume for the behavior * graph to be too high.

  • VOLUME_UNKNOWN - Indicates * that Detective is unable to verify the data volume for the member account. This * is usually because the member account is not enrolled in Amazon GuardDuty.

    *
*/ inline const MemberDisabledReason& GetDisabledReason() const{ return m_disabledReason; } /** *

For member accounts with a status of ACCEPTED_BUT_DISABLED, the * reason that the member account is not enabled.

The reason can have one of * the following values:

  • VOLUME_TOO_HIGH - Indicates * that adding the member account would cause the data volume for the behavior * graph to be too high.

  • VOLUME_UNKNOWN - Indicates * that Detective is unable to verify the data volume for the member account. This * is usually because the member account is not enrolled in Amazon GuardDuty.

    *
*/ inline bool DisabledReasonHasBeenSet() const { return m_disabledReasonHasBeenSet; } /** *

For member accounts with a status of ACCEPTED_BUT_DISABLED, the * reason that the member account is not enabled.

The reason can have one of * the following values:

  • VOLUME_TOO_HIGH - Indicates * that adding the member account would cause the data volume for the behavior * graph to be too high.

  • VOLUME_UNKNOWN - Indicates * that Detective is unable to verify the data volume for the member account. This * is usually because the member account is not enrolled in Amazon GuardDuty.

    *
*/ inline void SetDisabledReason(const MemberDisabledReason& value) { m_disabledReasonHasBeenSet = true; m_disabledReason = value; } /** *

For member accounts with a status of ACCEPTED_BUT_DISABLED, the * reason that the member account is not enabled.

The reason can have one of * the following values:

  • VOLUME_TOO_HIGH - Indicates * that adding the member account would cause the data volume for the behavior * graph to be too high.

  • VOLUME_UNKNOWN - Indicates * that Detective is unable to verify the data volume for the member account. This * is usually because the member account is not enrolled in Amazon GuardDuty.

    *
*/ inline void SetDisabledReason(MemberDisabledReason&& value) { m_disabledReasonHasBeenSet = true; m_disabledReason = std::move(value); } /** *

For member accounts with a status of ACCEPTED_BUT_DISABLED, the * reason that the member account is not enabled.

The reason can have one of * the following values:

  • VOLUME_TOO_HIGH - Indicates * that adding the member account would cause the data volume for the behavior * graph to be too high.

  • VOLUME_UNKNOWN - Indicates * that Detective is unable to verify the data volume for the member account. This * is usually because the member account is not enrolled in Amazon GuardDuty.

    *
*/ inline MemberDetail& WithDisabledReason(const MemberDisabledReason& value) { SetDisabledReason(value); return *this;} /** *

For member accounts with a status of ACCEPTED_BUT_DISABLED, the * reason that the member account is not enabled.

The reason can have one of * the following values:

  • VOLUME_TOO_HIGH - Indicates * that adding the member account would cause the data volume for the behavior * graph to be too high.

  • VOLUME_UNKNOWN - Indicates * that Detective is unable to verify the data volume for the member account. This * is usually because the member account is not enrolled in Amazon GuardDuty.

    *
*/ inline MemberDetail& WithDisabledReason(MemberDisabledReason&& value) { SetDisabledReason(std::move(value)); return *this;} /** *

For invited accounts, the date and time that Detective sent the invitation to * the account. The value is an ISO8601 formatted string. For example, * 2021-08-18T16:35:56.284Z.

*/ inline const Aws::Utils::DateTime& GetInvitedTime() const{ return m_invitedTime; } /** *

For invited accounts, the date and time that Detective sent the invitation to * the account. The value is an ISO8601 formatted string. For example, * 2021-08-18T16:35:56.284Z.

*/ inline bool InvitedTimeHasBeenSet() const { return m_invitedTimeHasBeenSet; } /** *

For invited accounts, the date and time that Detective sent the invitation to * the account. The value is an ISO8601 formatted string. For example, * 2021-08-18T16:35:56.284Z.

*/ inline void SetInvitedTime(const Aws::Utils::DateTime& value) { m_invitedTimeHasBeenSet = true; m_invitedTime = value; } /** *

For invited accounts, the date and time that Detective sent the invitation to * the account. The value is an ISO8601 formatted string. For example, * 2021-08-18T16:35:56.284Z.

*/ inline void SetInvitedTime(Aws::Utils::DateTime&& value) { m_invitedTimeHasBeenSet = true; m_invitedTime = std::move(value); } /** *

For invited accounts, the date and time that Detective sent the invitation to * the account. The value is an ISO8601 formatted string. For example, * 2021-08-18T16:35:56.284Z.

*/ inline MemberDetail& WithInvitedTime(const Aws::Utils::DateTime& value) { SetInvitedTime(value); return *this;} /** *

For invited accounts, the date and time that Detective sent the invitation to * the account. The value is an ISO8601 formatted string. For example, * 2021-08-18T16:35:56.284Z.

*/ inline MemberDetail& WithInvitedTime(Aws::Utils::DateTime&& value) { SetInvitedTime(std::move(value)); return *this;} /** *

The date and time that the member account was last updated. The value is an * ISO8601 formatted string. For example, * 2021-08-18T16:35:56.284Z.

*/ inline const Aws::Utils::DateTime& GetUpdatedTime() const{ return m_updatedTime; } /** *

The date and time that the member account was last updated. The value is an * ISO8601 formatted string. For example, * 2021-08-18T16:35:56.284Z.

*/ inline bool UpdatedTimeHasBeenSet() const { return m_updatedTimeHasBeenSet; } /** *

The date and time that the member account was last updated. The value is an * ISO8601 formatted string. For example, * 2021-08-18T16:35:56.284Z.

*/ inline void SetUpdatedTime(const Aws::Utils::DateTime& value) { m_updatedTimeHasBeenSet = true; m_updatedTime = value; } /** *

The date and time that the member account was last updated. The value is an * ISO8601 formatted string. For example, * 2021-08-18T16:35:56.284Z.

*/ inline void SetUpdatedTime(Aws::Utils::DateTime&& value) { m_updatedTimeHasBeenSet = true; m_updatedTime = std::move(value); } /** *

The date and time that the member account was last updated. The value is an * ISO8601 formatted string. For example, * 2021-08-18T16:35:56.284Z.

*/ inline MemberDetail& WithUpdatedTime(const Aws::Utils::DateTime& value) { SetUpdatedTime(value); return *this;} /** *

The date and time that the member account was last updated. The value is an * ISO8601 formatted string. For example, * 2021-08-18T16:35:56.284Z.

*/ inline MemberDetail& WithUpdatedTime(Aws::Utils::DateTime&& value) { SetUpdatedTime(std::move(value)); return *this;} /** *

The type of behavior graph membership.

For an organization account in * the organization behavior graph, the type is ORGANIZATION.

*

For an account that was invited to a behavior graph, the type is * INVITATION.

*/ inline const InvitationType& GetInvitationType() const{ return m_invitationType; } /** *

The type of behavior graph membership.

For an organization account in * the organization behavior graph, the type is ORGANIZATION.

*

For an account that was invited to a behavior graph, the type is * INVITATION.

*/ inline bool InvitationTypeHasBeenSet() const { return m_invitationTypeHasBeenSet; } /** *

The type of behavior graph membership.

For an organization account in * the organization behavior graph, the type is ORGANIZATION.

*

For an account that was invited to a behavior graph, the type is * INVITATION.

*/ inline void SetInvitationType(const InvitationType& value) { m_invitationTypeHasBeenSet = true; m_invitationType = value; } /** *

The type of behavior graph membership.

For an organization account in * the organization behavior graph, the type is ORGANIZATION.

*

For an account that was invited to a behavior graph, the type is * INVITATION.

*/ inline void SetInvitationType(InvitationType&& value) { m_invitationTypeHasBeenSet = true; m_invitationType = std::move(value); } /** *

The type of behavior graph membership.

For an organization account in * the organization behavior graph, the type is ORGANIZATION.

*

For an account that was invited to a behavior graph, the type is * INVITATION.

*/ inline MemberDetail& WithInvitationType(const InvitationType& value) { SetInvitationType(value); return *this;} /** *

The type of behavior graph membership.

For an organization account in * the organization behavior graph, the type is ORGANIZATION.

*

For an account that was invited to a behavior graph, the type is * INVITATION.

*/ inline MemberDetail& WithInvitationType(InvitationType&& value) { SetInvitationType(std::move(value)); return *this;} /** *

Details on the volume of usage for each data source package in a behavior * graph.

*/ inline const Aws::Map& GetVolumeUsageByDatasourcePackage() const{ return m_volumeUsageByDatasourcePackage; } /** *

Details on the volume of usage for each data source package in a behavior * graph.

*/ inline bool VolumeUsageByDatasourcePackageHasBeenSet() const { return m_volumeUsageByDatasourcePackageHasBeenSet; } /** *

Details on the volume of usage for each data source package in a behavior * graph.

*/ inline void SetVolumeUsageByDatasourcePackage(const Aws::Map& value) { m_volumeUsageByDatasourcePackageHasBeenSet = true; m_volumeUsageByDatasourcePackage = value; } /** *

Details on the volume of usage for each data source package in a behavior * graph.

*/ inline void SetVolumeUsageByDatasourcePackage(Aws::Map&& value) { m_volumeUsageByDatasourcePackageHasBeenSet = true; m_volumeUsageByDatasourcePackage = std::move(value); } /** *

Details on the volume of usage for each data source package in a behavior * graph.

*/ inline MemberDetail& WithVolumeUsageByDatasourcePackage(const Aws::Map& value) { SetVolumeUsageByDatasourcePackage(value); return *this;} /** *

Details on the volume of usage for each data source package in a behavior * graph.

*/ inline MemberDetail& WithVolumeUsageByDatasourcePackage(Aws::Map&& value) { SetVolumeUsageByDatasourcePackage(std::move(value)); return *this;} /** *

Details on the volume of usage for each data source package in a behavior * graph.

*/ inline MemberDetail& AddVolumeUsageByDatasourcePackage(const DatasourcePackage& key, const DatasourcePackageUsageInfo& value) { m_volumeUsageByDatasourcePackageHasBeenSet = true; m_volumeUsageByDatasourcePackage.emplace(key, value); return *this; } /** *

Details on the volume of usage for each data source package in a behavior * graph.

*/ inline MemberDetail& AddVolumeUsageByDatasourcePackage(DatasourcePackage&& key, const DatasourcePackageUsageInfo& value) { m_volumeUsageByDatasourcePackageHasBeenSet = true; m_volumeUsageByDatasourcePackage.emplace(std::move(key), value); return *this; } /** *

Details on the volume of usage for each data source package in a behavior * graph.

*/ inline MemberDetail& AddVolumeUsageByDatasourcePackage(const DatasourcePackage& key, DatasourcePackageUsageInfo&& value) { m_volumeUsageByDatasourcePackageHasBeenSet = true; m_volumeUsageByDatasourcePackage.emplace(key, std::move(value)); return *this; } /** *

Details on the volume of usage for each data source package in a behavior * graph.

*/ inline MemberDetail& AddVolumeUsageByDatasourcePackage(DatasourcePackage&& key, DatasourcePackageUsageInfo&& value) { m_volumeUsageByDatasourcePackageHasBeenSet = true; m_volumeUsageByDatasourcePackage.emplace(std::move(key), std::move(value)); return *this; } /** *

The state of a data source package for the behavior graph.

*/ inline const Aws::Map& GetDatasourcePackageIngestStates() const{ return m_datasourcePackageIngestStates; } /** *

The state of a data source package for the behavior graph.

*/ inline bool DatasourcePackageIngestStatesHasBeenSet() const { return m_datasourcePackageIngestStatesHasBeenSet; } /** *

The state of a data source package for the behavior graph.

*/ inline void SetDatasourcePackageIngestStates(const Aws::Map& value) { m_datasourcePackageIngestStatesHasBeenSet = true; m_datasourcePackageIngestStates = value; } /** *

The state of a data source package for the behavior graph.

*/ inline void SetDatasourcePackageIngestStates(Aws::Map&& value) { m_datasourcePackageIngestStatesHasBeenSet = true; m_datasourcePackageIngestStates = std::move(value); } /** *

The state of a data source package for the behavior graph.

*/ inline MemberDetail& WithDatasourcePackageIngestStates(const Aws::Map& value) { SetDatasourcePackageIngestStates(value); return *this;} /** *

The state of a data source package for the behavior graph.

*/ inline MemberDetail& WithDatasourcePackageIngestStates(Aws::Map&& value) { SetDatasourcePackageIngestStates(std::move(value)); return *this;} /** *

The state of a data source package for the behavior graph.

*/ inline MemberDetail& AddDatasourcePackageIngestStates(const DatasourcePackage& key, const DatasourcePackageIngestState& value) { m_datasourcePackageIngestStatesHasBeenSet = true; m_datasourcePackageIngestStates.emplace(key, value); return *this; } /** *

The state of a data source package for the behavior graph.

*/ inline MemberDetail& AddDatasourcePackageIngestStates(DatasourcePackage&& key, const DatasourcePackageIngestState& value) { m_datasourcePackageIngestStatesHasBeenSet = true; m_datasourcePackageIngestStates.emplace(std::move(key), value); return *this; } /** *

The state of a data source package for the behavior graph.

*/ inline MemberDetail& AddDatasourcePackageIngestStates(const DatasourcePackage& key, DatasourcePackageIngestState&& value) { m_datasourcePackageIngestStatesHasBeenSet = true; m_datasourcePackageIngestStates.emplace(key, std::move(value)); return *this; } /** *

The state of a data source package for the behavior graph.

*/ inline MemberDetail& AddDatasourcePackageIngestStates(DatasourcePackage&& key, DatasourcePackageIngestState&& value) { m_datasourcePackageIngestStatesHasBeenSet = true; m_datasourcePackageIngestStates.emplace(std::move(key), std::move(value)); return *this; } private: Aws::String m_accountId; bool m_accountIdHasBeenSet = false; Aws::String m_emailAddress; bool m_emailAddressHasBeenSet = false; Aws::String m_graphArn; bool m_graphArnHasBeenSet = false; Aws::String m_administratorId; bool m_administratorIdHasBeenSet = false; MemberStatus m_status; bool m_statusHasBeenSet = false; MemberDisabledReason m_disabledReason; bool m_disabledReasonHasBeenSet = false; Aws::Utils::DateTime m_invitedTime; bool m_invitedTimeHasBeenSet = false; Aws::Utils::DateTime m_updatedTime; bool m_updatedTimeHasBeenSet = false; InvitationType m_invitationType; bool m_invitationTypeHasBeenSet = false; Aws::Map m_volumeUsageByDatasourcePackage; bool m_volumeUsageByDatasourcePackageHasBeenSet = false; Aws::Map m_datasourcePackageIngestStates; bool m_datasourcePackageIngestStatesHasBeenSet = false; }; } // namespace Model } // namespace Detective } // namespace Aws