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

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

The high-level properties of a rule group. This, along with the RuleGroup, define the rule group. You can retrieve all objects for a rule group by calling DescribeRuleGroup.

See Also:
  • Method Details

    • ruleGroupArn

      public final String ruleGroupArn()

      The Amazon Resource Name (ARN) of the rule group.

      If this response is for a create request that had DryRun set to TRUE, then this ARN is a placeholder that isn't attached to a valid resource.

      Returns:
      The Amazon Resource Name (ARN) of the rule group.

      If this response is for a create request that had DryRun set to TRUE, then this ARN is a placeholder that isn't attached to a valid resource.

    • ruleGroupName

      public final String ruleGroupName()

      The descriptive name of the rule group. You can't change the name of a rule group after you create it.

      Returns:
      The descriptive name of the rule group. You can't change the name of a rule group after you create it.
    • ruleGroupId

      public final String ruleGroupId()

      The unique identifier for the rule group.

      Returns:
      The unique identifier for the rule group.
    • description

      public final String description()

      A description of the rule group.

      Returns:
      A description of the rule group.
    • type

      public final RuleGroupType type()

      Indicates whether the rule group is stateless or stateful. If the rule group is stateless, it contains stateless rules. If it is stateful, it contains stateful rules.

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

      Returns:
      Indicates whether the rule group is stateless or stateful. If the rule group is stateless, it contains stateless rules. If it is stateful, it contains stateful rules.
      See Also:
    • typeAsString

      public final String typeAsString()

      Indicates whether the rule group is stateless or stateful. If the rule group is stateless, it contains stateless rules. If it is stateful, it contains stateful rules.

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

      Returns:
      Indicates whether the rule group is stateless or stateful. If the rule group is stateless, it contains stateless rules. If it is stateful, it contains stateful rules.
      See Also:
    • capacity

      public final Integer capacity()

      The maximum operating resources that this rule group can use. Rule group capacity is fixed at creation. When you update a rule group, you are limited to this capacity. When you reference a rule group from a firewall policy, Network Firewall reserves this capacity for the rule group.

      You can retrieve the capacity that would be required for a rule group before you create the rule group by calling CreateRuleGroup with DryRun set to TRUE.

      Returns:
      The maximum operating resources that this rule group can use. Rule group capacity is fixed at creation. When you update a rule group, you are limited to this capacity. When you reference a rule group from a firewall policy, Network Firewall reserves this capacity for the rule group.

      You can retrieve the capacity that would be required for a rule group before you create the rule group by calling CreateRuleGroup with DryRun set to TRUE.

    • ruleGroupStatus

      public final ResourceStatus ruleGroupStatus()

      Detailed information about the current status of a rule group.

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

      Returns:
      Detailed information about the current status of a rule group.
      See Also:
    • ruleGroupStatusAsString

      public final String ruleGroupStatusAsString()

      Detailed information about the current status of a rule group.

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

      Returns:
      Detailed information about the current status of a rule group.
      See Also:
    • hasTags

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

      public final List<Tag> tags()

      The key:value pairs to associate with the 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 hasTags() method.

      Returns:
      The key:value pairs to associate with the resource.
    • consumedCapacity

      public final Integer consumedCapacity()

      The number of capacity units currently consumed by the rule group rules.

      Returns:
      The number of capacity units currently consumed by the rule group rules.
    • numberOfAssociations

      public final Integer numberOfAssociations()

      The number of firewall policies that use this rule group.

      Returns:
      The number of firewall policies that use this rule group.
    • encryptionConfiguration

      public final EncryptionConfiguration encryptionConfiguration()

      A complex type that contains the Amazon Web Services KMS encryption configuration settings for your rule group.

      Returns:
      A complex type that contains the Amazon Web Services KMS encryption configuration settings for your rule group.
    • sourceMetadata

      public final SourceMetadata sourceMetadata()

      A complex type that contains metadata about the rule group that your own rule group is copied from. You can use the metadata to track the version updates made to the originating rule group.

      Returns:
      A complex type that contains metadata about the rule group that your own rule group is copied from. You can use the metadata to track the version updates made to the originating rule group.
    • snsTopic

      public final String snsTopic()

      The Amazon resource name (ARN) of the Amazon Simple Notification Service SNS topic that's used to record changes to the managed rule group. You can subscribe to the SNS topic to receive notifications when the managed rule group is modified, such as for new versions and for version expiration. For more information, see the Amazon Simple Notification Service Developer Guide..

      Returns:
      The Amazon resource name (ARN) of the Amazon Simple Notification Service SNS topic that's used to record changes to the managed rule group. You can subscribe to the SNS topic to receive notifications when the managed rule group is modified, such as for new versions and for version expiration. For more information, see the Amazon Simple Notification Service Developer Guide..
    • lastModifiedTime

      public final Instant lastModifiedTime()

      The last time that the rule group was changed.

      Returns:
      The last time that the rule group was changed.
    • hasAnalysisResults

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

      public final List<AnalysisResult> analysisResults()

      The list of analysis results for AnalyzeRuleGroup. If you set AnalyzeRuleGroup to TRUE in CreateRuleGroup, UpdateRuleGroup, or DescribeRuleGroup, Network Firewall analyzes the rule group and identifies the rules that might adversely effect your firewall's functionality. For example, if Network Firewall detects a rule that's routing traffic asymmetrically, which impacts the service's ability to properly process traffic, the service includes the rule in the list of analysis results.

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

      Returns:
      The list of analysis results for AnalyzeRuleGroup. If you set AnalyzeRuleGroup to TRUE in CreateRuleGroup, UpdateRuleGroup, or DescribeRuleGroup, Network Firewall analyzes the rule group and identifies the rules that might adversely effect your firewall's functionality. For example, if Network Firewall detects a rule that's routing traffic asymmetrically, which impacts the service's ability to properly process traffic, the service includes the rule in the list of analysis results.
    • toBuilder

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

      public static RuleGroupResponse.Builder builder()
    • serializableBuilderClass

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