java.lang.Object
software.amazon.awssdk.services.detective.model.MemberDetail
All Implemented Interfaces:
Serializable, SdkPojo, ToCopyableBuilder<MemberDetail.Builder,MemberDetail>

@Generated("software.amazon.awssdk:codegen") public final class MemberDetail extends Object implements SdkPojo, Serializable, ToCopyableBuilder<MemberDetail.Builder,MemberDetail>

Details about a member account in a behavior graph.

See Also:
  • Method Details

    • accountId

      public final String accountId()

      The Amazon Web Services account identifier for the member account.

      Returns:
      The Amazon Web Services account identifier for the member account.
    • emailAddress

      public final String emailAddress()

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

      Returns:
      The Amazon Web Services account root user email address for the member account.
    • graphArn

      public final String graphArn()

      The ARN of the behavior graph.

      Returns:
      The ARN of the behavior graph.
    • masterId

      @Deprecated public final String masterId()
      Deprecated.
      This property is deprecated. Use AdministratorId instead.

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

      Returns:
      The Amazon Web Services account identifier of the administrator account for the behavior graph.
    • administratorId

      public final String administratorId()

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

      Returns:
      The Amazon Web Services account identifier of the administrator account for the behavior graph.
    • status

      public final MemberStatus 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.

      If the service returns an enum value that is not available in the current SDK version, status will return MemberStatus.UNKNOWN_TO_SDK_VERSION. The raw value returned by the service is available from statusAsString().

      Returns:
      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.

      See Also:
    • statusAsString

      public final String statusAsString()

      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.

      If the service returns an enum value that is not available in the current SDK version, status will return MemberStatus.UNKNOWN_TO_SDK_VERSION. The raw value returned by the service is available from statusAsString().

      Returns:
      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.

      See Also:
    • disabledReason

      public final MemberDisabledReason 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.

      If the service returns an enum value that is not available in the current SDK version, disabledReason will return MemberDisabledReason.UNKNOWN_TO_SDK_VERSION. The raw value returned by the service is available from disabledReasonAsString().

      Returns:
      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.

      See Also:
    • disabledReasonAsString

      public final String disabledReasonAsString()

      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.

      If the service returns an enum value that is not available in the current SDK version, disabledReason will return MemberDisabledReason.UNKNOWN_TO_SDK_VERSION. The raw value returned by the service is available from disabledReasonAsString().

      Returns:
      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.

      See Also:
    • invitedTime

      public final Instant 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.

      Returns:
      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.
    • updatedTime

      public final Instant 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.

      Returns:
      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.
    • volumeUsageInBytes

      @Deprecated public final Long volumeUsageInBytes()
      Deprecated.
      This property is deprecated. Use VolumeUsageByDatasourcePackage instead.

      The data volume in bytes per day for the member account.

      Returns:
      The data volume in bytes per day for the member account.
    • volumeUsageUpdatedTime

      @Deprecated public final Instant volumeUsageUpdatedTime()
      Deprecated.
      This property is deprecated. Use VolumeUsageByDatasourcePackage instead.

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

      Returns:
      The data and time when the member account data volume was last updated. The value is an ISO8601 formatted string. For example, 2021-08-18T16:35:56.284Z.
    • percentOfGraphUtilization

      @Deprecated public final Double percentOfGraphUtilization()
      Deprecated.
      This property is deprecated. Use VolumeUsageByDatasourcePackage instead.

      The member account data volume as a percentage of the maximum allowed data volume. 0 indicates 0 percent, and 100 indicates 100 percent.

      Note that this is not the percentage of the behavior graph data volume.

      For example, the data volume for the behavior graph is 80 GB per day. The maximum data volume is 160 GB per day. If the data volume for the member account is 40 GB per day, then PercentOfGraphUtilization is 25. It represents 25% of the maximum allowed data volume.

      Returns:
      The member account data volume as a percentage of the maximum allowed data volume. 0 indicates 0 percent, and 100 indicates 100 percent.

      Note that this is not the percentage of the behavior graph data volume.

      For example, the data volume for the behavior graph is 80 GB per day. The maximum data volume is 160 GB per day. If the data volume for the member account is 40 GB per day, then PercentOfGraphUtilization is 25. It represents 25% of the maximum allowed data volume.

    • percentOfGraphUtilizationUpdatedTime

      @Deprecated public final Instant percentOfGraphUtilizationUpdatedTime()
      Deprecated.
      This property is deprecated. Use VolumeUsageByDatasourcePackage instead.

      The date and time when the graph utilization percentage was last updated. The value is an ISO8601 formatted string. For example, 2021-08-18T16:35:56.284Z.

      Returns:
      The date and time when the graph utilization percentage was last updated. The value is an ISO8601 formatted string. For example, 2021-08-18T16:35:56.284Z.
    • invitationType

      public final InvitationType 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.

      If the service returns an enum value that is not available in the current SDK version, invitationType will return InvitationType.UNKNOWN_TO_SDK_VERSION. The raw value returned by the service is available from invitationTypeAsString().

      Returns:
      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.

      See Also:
    • invitationTypeAsString

      public final String invitationTypeAsString()

      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.

      If the service returns an enum value that is not available in the current SDK version, invitationType will return InvitationType.UNKNOWN_TO_SDK_VERSION. The raw value returned by the service is available from invitationTypeAsString().

      Returns:
      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.

      See Also:
    • volumeUsageByDatasourcePackage

      public final Map<DatasourcePackage,DatasourcePackageUsageInfo> volumeUsageByDatasourcePackage()

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

      Attempts to modify the collection returned by this method will result in an UnsupportedOperationException.

      This method will never return null. If you would like to know whether the service returned this field (so that you can differentiate between null and empty), you can use the hasVolumeUsageByDatasourcePackage() method.

      Returns:
      Details on the volume of usage for each data source package in a behavior graph.
    • hasVolumeUsageByDatasourcePackage

      public final boolean hasVolumeUsageByDatasourcePackage()
      For responses, this returns true if the service returned a value for the VolumeUsageByDatasourcePackage property. This DOES NOT check that the value is non-empty (for which, you should check the isEmpty() method on the property). This is useful because the SDK will never return a null collection or map, but you may need to differentiate between the service returning nothing (or null) and the service returning an empty collection or map. For requests, this returns true if a value for the property was specified in the request builder, and false if a value was not specified.
    • volumeUsageByDatasourcePackageAsStrings

      public final Map<String,DatasourcePackageUsageInfo> volumeUsageByDatasourcePackageAsStrings()

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

      Attempts to modify the collection returned by this method will result in an UnsupportedOperationException.

      This method will never return null. If you would like to know whether the service returned this field (so that you can differentiate between null and empty), you can use the hasVolumeUsageByDatasourcePackage() method.

      Returns:
      Details on the volume of usage for each data source package in a behavior graph.
    • datasourcePackageIngestStates

      public final Map<DatasourcePackage,DatasourcePackageIngestState> datasourcePackageIngestStates()

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

      Attempts to modify the collection returned by this method will result in an UnsupportedOperationException.

      This method will never return null. If you would like to know whether the service returned this field (so that you can differentiate between null and empty), you can use the hasDatasourcePackageIngestStates() method.

      Returns:
      The state of a data source package for the behavior graph.
    • hasDatasourcePackageIngestStates

      public final boolean hasDatasourcePackageIngestStates()
      For responses, this returns true if the service returned a value for the DatasourcePackageIngestStates property. This DOES NOT check that the value is non-empty (for which, you should check the isEmpty() method on the property). This is useful because the SDK will never return a null collection or map, but you may need to differentiate between the service returning nothing (or null) and the service returning an empty collection or map. For requests, this returns true if a value for the property was specified in the request builder, and false if a value was not specified.
    • datasourcePackageIngestStatesAsStrings

      public final Map<String,String> datasourcePackageIngestStatesAsStrings()

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

      Attempts to modify the collection returned by this method will result in an UnsupportedOperationException.

      This method will never return null. If you would like to know whether the service returned this field (so that you can differentiate between null and empty), you can use the hasDatasourcePackageIngestStates() method.

      Returns:
      The state of a data source package for the behavior graph.
    • toBuilder

      public MemberDetail.Builder toBuilder()
      Description copied from interface: ToCopyableBuilder
      Take this object and create a builder that contains all of the current property values of this object.
      Specified by:
      toBuilder in interface ToCopyableBuilder<MemberDetail.Builder,MemberDetail>
      Returns:
      a builder for type T
    • builder

      public static MemberDetail.Builder builder()
    • serializableBuilderClass

      public static Class<? extends MemberDetail.Builder> serializableBuilderClass()
    • hashCode

      public final int hashCode()
      Overrides:
      hashCode in class Object
    • equals

      public final boolean equals(Object obj)
      Overrides:
      equals in class Object
    • equalsBySdkFields

      public final boolean equalsBySdkFields(Object obj)
      Description copied from interface: SdkPojo
      Indicates whether some other object is "equal to" this one by SDK fields. An SDK field is a modeled, non-inherited field in an SdkPojo class, and is generated based on a service model.

      If an SdkPojo class does not have any inherited fields, equalsBySdkFields and equals are essentially the same.

      Specified by:
      equalsBySdkFields in interface SdkPojo
      Parameters:
      obj - the object to be compared with
      Returns:
      true if the other object equals to this object by sdk fields, false otherwise.
    • toString

      public final String toString()
      Returns a string representation of this object. This is useful for testing and debugging. Sensitive data will be redacted from this string using a placeholder value.
      Overrides:
      toString in class Object
    • getValueForField

      public final <T> Optional<T> getValueForField(String fieldName, Class<T> clazz)
    • sdkFields

      public final List<SdkField<?>> sdkFields()
      Specified by:
      sdkFields in interface SdkPojo
      Returns:
      List of SdkField in this POJO. May be empty list but should never be null.