Class UsageStatistics

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

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

Contains the result of GuardDuty usage. If a UsageStatisticType is provided the result for other types will be null.

See Also:
  • Method Details

    • hasSumByAccount

      public final boolean hasSumByAccount()
      For responses, this returns true if the service returned a value for the SumByAccount 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.
    • sumByAccount

      public final List<UsageAccountResult> sumByAccount()

      The usage statistic sum organized by account ID.

      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 hasSumByAccount() method.

      Returns:
      The usage statistic sum organized by account ID.
    • hasTopAccountsByFeature

      public final boolean hasTopAccountsByFeature()
      For responses, this returns true if the service returned a value for the TopAccountsByFeature 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.
    • topAccountsByFeature

      public final List<UsageTopAccountsResult> topAccountsByFeature()

      Lists the top 50 accounts by feature that have generated the most GuardDuty usage, in the order from most to least expensive.

      Currently, this doesn't support RDS_LOGIN_EVENTS.

      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 hasTopAccountsByFeature() method.

      Returns:
      Lists the top 50 accounts by feature that have generated the most GuardDuty usage, in the order from most to least expensive.

      Currently, this doesn't support RDS_LOGIN_EVENTS.

    • hasSumByDataSource

      public final boolean hasSumByDataSource()
      For responses, this returns true if the service returned a value for the SumByDataSource 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.
    • sumByDataSource

      public final List<UsageDataSourceResult> sumByDataSource()

      The usage statistic sum organized by on data source.

      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 hasSumByDataSource() method.

      Returns:
      The usage statistic sum organized by on data source.
    • hasSumByResource

      public final boolean hasSumByResource()
      For responses, this returns true if the service returned a value for the SumByResource 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.
    • sumByResource

      public final List<UsageResourceResult> sumByResource()

      The usage statistic sum organized by resource.

      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 hasSumByResource() method.

      Returns:
      The usage statistic sum organized by resource.
    • hasTopResources

      public final boolean hasTopResources()
      For responses, this returns true if the service returned a value for the TopResources 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.
    • topResources

      public final List<UsageResourceResult> topResources()

      Lists the top 50 resources that have generated the most GuardDuty usage, in order from most to least expensive.

      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 hasTopResources() method.

      Returns:
      Lists the top 50 resources that have generated the most GuardDuty usage, in order from most to least expensive.
    • hasSumByFeature

      public final boolean hasSumByFeature()
      For responses, this returns true if the service returned a value for the SumByFeature 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.
    • sumByFeature

      public final List<UsageFeatureResult> sumByFeature()

      The usage statistic sum organized by feature.

      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 hasSumByFeature() method.

      Returns:
      The usage statistic sum organized by feature.
    • toBuilder

      public UsageStatistics.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<UsageStatistics.Builder,UsageStatistics>
      Returns:
      a builder for type T
    • builder

      public static UsageStatistics.Builder builder()
    • serializableBuilderClass

      public static Class<? extends UsageStatistics.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.