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

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

The object that defines the rules in a rule group. This, along with RuleGroupResponse, define the rule group. You can retrieve all objects for a rule group by calling DescribeRuleGroup.

Network Firewall uses a rule group to inspect and control network traffic. You define stateless rule groups to inspect individual packets and you define stateful rule groups to inspect packets in the context of their traffic flow.

To use a rule group, you include it by reference in an Network Firewall firewall policy, then you use the policy in a firewall. You can reference a rule group from more than one firewall policy, and you can use a firewall policy in more than one firewall.

See Also:
  • Method Details

    • ruleVariables

      public final RuleVariables ruleVariables()

      Settings that are available for use in the rules in the rule group. You can only use these for stateful rule groups.

      Returns:
      Settings that are available for use in the rules in the rule group. You can only use these for stateful rule groups.
    • referenceSets

      public final ReferenceSets referenceSets()

      The list of a rule group's reference sets.

      Returns:
      The list of a rule group's reference sets.
    • rulesSource

      public final RulesSource rulesSource()

      The stateful rules or stateless rules for the rule group.

      Returns:
      The stateful rules or stateless rules for the rule group.
    • statefulRuleOptions

      public final StatefulRuleOptions statefulRuleOptions()

      Additional options governing how Network Firewall handles stateful rules. The policies where you use your stateful rule group must have stateful rule options settings that are compatible with these settings. Some limitations apply; for more information, see Strict evaluation order in the Network Firewall Developer Guide.

      Returns:
      Additional options governing how Network Firewall handles stateful rules. The policies where you use your stateful rule group must have stateful rule options settings that are compatible with these settings. Some limitations apply; for more information, see Strict evaluation order in the Network Firewall Developer Guide.
    • toBuilder

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

      public static RuleGroup.Builder builder()
    • serializableBuilderClass

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