Class SampledHTTPRequest

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

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

Represents a single sampled web request. The response from GetSampledRequests includes a SampledHTTPRequests complex type that appears as SampledRequests in the response syntax. SampledHTTPRequests contains an array of SampledHTTPRequest objects.

See Also:
  • Method Details

    • request

      public final HTTPRequest request()

      A complex type that contains detailed information about the request.

      Returns:
      A complex type that contains detailed information about the request.
    • weight

      public final Long weight()

      A value that indicates how one result in the response relates proportionally to other results in the response. For example, a result that has a weight of 2 represents roughly twice as many web requests as a result that has a weight of 1.

      Returns:
      A value that indicates how one result in the response relates proportionally to other results in the response. For example, a result that has a weight of 2 represents roughly twice as many web requests as a result that has a weight of 1.
    • timestamp

      public final Instant timestamp()

      The time at which WAF received the request from your Amazon Web Services resource, in Unix time format (in seconds).

      Returns:
      The time at which WAF received the request from your Amazon Web Services resource, in Unix time format (in seconds).
    • action

      public final String action()

      The action that WAF applied to the request.

      Returns:
      The action that WAF applied to the request.
    • ruleNameWithinRuleGroup

      public final String ruleNameWithinRuleGroup()

      The name of the Rule that the request matched. For managed rule groups, the format for this name is <vendor name>#<managed rule group name>#<rule name>. For your own rule groups, the format for this name is <rule group name>#<rule name>. If the rule is not in a rule group, this field is absent.

      Returns:
      The name of the Rule that the request matched. For managed rule groups, the format for this name is <vendor name>#<managed rule group name>#<rule name>. For your own rule groups, the format for this name is <rule group name>#<rule name>. If the rule is not in a rule group, this field is absent.
    • hasRequestHeadersInserted

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

      public final List<HTTPHeader> requestHeadersInserted()

      Custom request headers inserted by WAF into the request, according to the custom request configuration for the matching rule action.

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

      Returns:
      Custom request headers inserted by WAF into the request, according to the custom request configuration for the matching rule action.
    • responseCodeSent

      public final Integer responseCodeSent()

      The response code that was sent for the request.

      Returns:
      The response code that was sent for the request.
    • hasLabels

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

      public final List<Label> labels()

      Labels applied to the web request by matching rules. WAF applies fully qualified labels to matching web requests. A fully qualified label is the concatenation of a label namespace and a rule label. The rule's rule group or web ACL defines the label namespace.

      For example, awswaf:111122223333:myRuleGroup:testRules:testNS1:testNS2:labelNameA or awswaf:managed:aws:managed-rule-set:header:encoding:utf8.

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

      Returns:
      Labels applied to the web request by matching rules. WAF applies fully qualified labels to matching web requests. A fully qualified label is the concatenation of a label namespace and a rule label. The rule's rule group or web ACL defines the label namespace.

      For example, awswaf:111122223333:myRuleGroup:testRules:testNS1:testNS2:labelNameA or awswaf:managed:aws:managed-rule-set:header:encoding:utf8.

    • captchaResponse

      public final CaptchaResponse captchaResponse()

      The CAPTCHA response for the request.

      Returns:
      The CAPTCHA response for the request.
    • challengeResponse

      public final ChallengeResponse challengeResponse()

      The Challenge response for the request.

      Returns:
      The Challenge response for the request.
    • overriddenAction

      public final String overriddenAction()

      Used only for rule group rules that have a rule action override in place in the web ACL. This is the action that the rule group rule is configured for, and not the action that was applied to the request. The action that WAF applied is the Action value.

      Returns:
      Used only for rule group rules that have a rule action override in place in the web ACL. This is the action that the rule group rule is configured for, and not the action that was applied to the request. The action that WAF applied is the Action value.
    • toBuilder

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

      public static SampledHTTPRequest.Builder builder()
    • serializableBuilderClass

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