All Downloads are FREE. Search and download functionalities are using the official Maven repository.

software.amazon.awssdk.services.waf.WafClient Maven / Gradle / Ivy

Go to download

The AWS Java SDK for AWS WAF Service module holds the client classes that are used for communicating with AWS WAF Service

There is a newer version: 2.30.1
Show newest version
/*
 * Copyright Amazon.com, Inc. or its affiliates. All Rights Reserved.
 * 
 * Licensed under the Apache License, Version 2.0 (the "License"). You may not use this file except in compliance with
 * the License. A copy of the License is located at
 * 
 * http://aws.amazon.com/apache2.0
 * 
 * or in the "license" file accompanying this file. This file is distributed on an "AS IS" BASIS, WITHOUT WARRANTIES OR
 * CONDITIONS OF ANY KIND, either express or implied. See the License for the specific language governing permissions
 * and limitations under the License.
 */

package software.amazon.awssdk.services.waf;

import java.util.function.Consumer;
import software.amazon.awssdk.annotations.Generated;
import software.amazon.awssdk.annotations.SdkPublicApi;
import software.amazon.awssdk.annotations.ThreadSafe;
import software.amazon.awssdk.awscore.AwsClient;
import software.amazon.awssdk.awscore.exception.AwsServiceException;
import software.amazon.awssdk.core.exception.SdkClientException;
import software.amazon.awssdk.regions.ServiceMetadata;
import software.amazon.awssdk.services.waf.model.CreateByteMatchSetRequest;
import software.amazon.awssdk.services.waf.model.CreateByteMatchSetResponse;
import software.amazon.awssdk.services.waf.model.CreateGeoMatchSetRequest;
import software.amazon.awssdk.services.waf.model.CreateGeoMatchSetResponse;
import software.amazon.awssdk.services.waf.model.CreateIpSetRequest;
import software.amazon.awssdk.services.waf.model.CreateIpSetResponse;
import software.amazon.awssdk.services.waf.model.CreateRateBasedRuleRequest;
import software.amazon.awssdk.services.waf.model.CreateRateBasedRuleResponse;
import software.amazon.awssdk.services.waf.model.CreateRegexMatchSetRequest;
import software.amazon.awssdk.services.waf.model.CreateRegexMatchSetResponse;
import software.amazon.awssdk.services.waf.model.CreateRegexPatternSetRequest;
import software.amazon.awssdk.services.waf.model.CreateRegexPatternSetResponse;
import software.amazon.awssdk.services.waf.model.CreateRuleGroupRequest;
import software.amazon.awssdk.services.waf.model.CreateRuleGroupResponse;
import software.amazon.awssdk.services.waf.model.CreateRuleRequest;
import software.amazon.awssdk.services.waf.model.CreateRuleResponse;
import software.amazon.awssdk.services.waf.model.CreateSizeConstraintSetRequest;
import software.amazon.awssdk.services.waf.model.CreateSizeConstraintSetResponse;
import software.amazon.awssdk.services.waf.model.CreateSqlInjectionMatchSetRequest;
import software.amazon.awssdk.services.waf.model.CreateSqlInjectionMatchSetResponse;
import software.amazon.awssdk.services.waf.model.CreateWebAclMigrationStackRequest;
import software.amazon.awssdk.services.waf.model.CreateWebAclMigrationStackResponse;
import software.amazon.awssdk.services.waf.model.CreateWebAclRequest;
import software.amazon.awssdk.services.waf.model.CreateWebAclResponse;
import software.amazon.awssdk.services.waf.model.CreateXssMatchSetRequest;
import software.amazon.awssdk.services.waf.model.CreateXssMatchSetResponse;
import software.amazon.awssdk.services.waf.model.DeleteByteMatchSetRequest;
import software.amazon.awssdk.services.waf.model.DeleteByteMatchSetResponse;
import software.amazon.awssdk.services.waf.model.DeleteGeoMatchSetRequest;
import software.amazon.awssdk.services.waf.model.DeleteGeoMatchSetResponse;
import software.amazon.awssdk.services.waf.model.DeleteIpSetRequest;
import software.amazon.awssdk.services.waf.model.DeleteIpSetResponse;
import software.amazon.awssdk.services.waf.model.DeleteLoggingConfigurationRequest;
import software.amazon.awssdk.services.waf.model.DeleteLoggingConfigurationResponse;
import software.amazon.awssdk.services.waf.model.DeletePermissionPolicyRequest;
import software.amazon.awssdk.services.waf.model.DeletePermissionPolicyResponse;
import software.amazon.awssdk.services.waf.model.DeleteRateBasedRuleRequest;
import software.amazon.awssdk.services.waf.model.DeleteRateBasedRuleResponse;
import software.amazon.awssdk.services.waf.model.DeleteRegexMatchSetRequest;
import software.amazon.awssdk.services.waf.model.DeleteRegexMatchSetResponse;
import software.amazon.awssdk.services.waf.model.DeleteRegexPatternSetRequest;
import software.amazon.awssdk.services.waf.model.DeleteRegexPatternSetResponse;
import software.amazon.awssdk.services.waf.model.DeleteRuleGroupRequest;
import software.amazon.awssdk.services.waf.model.DeleteRuleGroupResponse;
import software.amazon.awssdk.services.waf.model.DeleteRuleRequest;
import software.amazon.awssdk.services.waf.model.DeleteRuleResponse;
import software.amazon.awssdk.services.waf.model.DeleteSizeConstraintSetRequest;
import software.amazon.awssdk.services.waf.model.DeleteSizeConstraintSetResponse;
import software.amazon.awssdk.services.waf.model.DeleteSqlInjectionMatchSetRequest;
import software.amazon.awssdk.services.waf.model.DeleteSqlInjectionMatchSetResponse;
import software.amazon.awssdk.services.waf.model.DeleteWebAclRequest;
import software.amazon.awssdk.services.waf.model.DeleteWebAclResponse;
import software.amazon.awssdk.services.waf.model.DeleteXssMatchSetRequest;
import software.amazon.awssdk.services.waf.model.DeleteXssMatchSetResponse;
import software.amazon.awssdk.services.waf.model.GetByteMatchSetRequest;
import software.amazon.awssdk.services.waf.model.GetByteMatchSetResponse;
import software.amazon.awssdk.services.waf.model.GetChangeTokenRequest;
import software.amazon.awssdk.services.waf.model.GetChangeTokenResponse;
import software.amazon.awssdk.services.waf.model.GetChangeTokenStatusRequest;
import software.amazon.awssdk.services.waf.model.GetChangeTokenStatusResponse;
import software.amazon.awssdk.services.waf.model.GetGeoMatchSetRequest;
import software.amazon.awssdk.services.waf.model.GetGeoMatchSetResponse;
import software.amazon.awssdk.services.waf.model.GetIpSetRequest;
import software.amazon.awssdk.services.waf.model.GetIpSetResponse;
import software.amazon.awssdk.services.waf.model.GetLoggingConfigurationRequest;
import software.amazon.awssdk.services.waf.model.GetLoggingConfigurationResponse;
import software.amazon.awssdk.services.waf.model.GetPermissionPolicyRequest;
import software.amazon.awssdk.services.waf.model.GetPermissionPolicyResponse;
import software.amazon.awssdk.services.waf.model.GetRateBasedRuleManagedKeysRequest;
import software.amazon.awssdk.services.waf.model.GetRateBasedRuleManagedKeysResponse;
import software.amazon.awssdk.services.waf.model.GetRateBasedRuleRequest;
import software.amazon.awssdk.services.waf.model.GetRateBasedRuleResponse;
import software.amazon.awssdk.services.waf.model.GetRegexMatchSetRequest;
import software.amazon.awssdk.services.waf.model.GetRegexMatchSetResponse;
import software.amazon.awssdk.services.waf.model.GetRegexPatternSetRequest;
import software.amazon.awssdk.services.waf.model.GetRegexPatternSetResponse;
import software.amazon.awssdk.services.waf.model.GetRuleGroupRequest;
import software.amazon.awssdk.services.waf.model.GetRuleGroupResponse;
import software.amazon.awssdk.services.waf.model.GetRuleRequest;
import software.amazon.awssdk.services.waf.model.GetRuleResponse;
import software.amazon.awssdk.services.waf.model.GetSampledRequestsRequest;
import software.amazon.awssdk.services.waf.model.GetSampledRequestsResponse;
import software.amazon.awssdk.services.waf.model.GetSizeConstraintSetRequest;
import software.amazon.awssdk.services.waf.model.GetSizeConstraintSetResponse;
import software.amazon.awssdk.services.waf.model.GetSqlInjectionMatchSetRequest;
import software.amazon.awssdk.services.waf.model.GetSqlInjectionMatchSetResponse;
import software.amazon.awssdk.services.waf.model.GetWebAclRequest;
import software.amazon.awssdk.services.waf.model.GetWebAclResponse;
import software.amazon.awssdk.services.waf.model.GetXssMatchSetRequest;
import software.amazon.awssdk.services.waf.model.GetXssMatchSetResponse;
import software.amazon.awssdk.services.waf.model.ListActivatedRulesInRuleGroupRequest;
import software.amazon.awssdk.services.waf.model.ListActivatedRulesInRuleGroupResponse;
import software.amazon.awssdk.services.waf.model.ListByteMatchSetsRequest;
import software.amazon.awssdk.services.waf.model.ListByteMatchSetsResponse;
import software.amazon.awssdk.services.waf.model.ListGeoMatchSetsRequest;
import software.amazon.awssdk.services.waf.model.ListGeoMatchSetsResponse;
import software.amazon.awssdk.services.waf.model.ListIpSetsRequest;
import software.amazon.awssdk.services.waf.model.ListIpSetsResponse;
import software.amazon.awssdk.services.waf.model.ListLoggingConfigurationsRequest;
import software.amazon.awssdk.services.waf.model.ListLoggingConfigurationsResponse;
import software.amazon.awssdk.services.waf.model.ListRateBasedRulesRequest;
import software.amazon.awssdk.services.waf.model.ListRateBasedRulesResponse;
import software.amazon.awssdk.services.waf.model.ListRegexMatchSetsRequest;
import software.amazon.awssdk.services.waf.model.ListRegexMatchSetsResponse;
import software.amazon.awssdk.services.waf.model.ListRegexPatternSetsRequest;
import software.amazon.awssdk.services.waf.model.ListRegexPatternSetsResponse;
import software.amazon.awssdk.services.waf.model.ListRuleGroupsRequest;
import software.amazon.awssdk.services.waf.model.ListRuleGroupsResponse;
import software.amazon.awssdk.services.waf.model.ListRulesRequest;
import software.amazon.awssdk.services.waf.model.ListRulesResponse;
import software.amazon.awssdk.services.waf.model.ListSizeConstraintSetsRequest;
import software.amazon.awssdk.services.waf.model.ListSizeConstraintSetsResponse;
import software.amazon.awssdk.services.waf.model.ListSqlInjectionMatchSetsRequest;
import software.amazon.awssdk.services.waf.model.ListSqlInjectionMatchSetsResponse;
import software.amazon.awssdk.services.waf.model.ListSubscribedRuleGroupsRequest;
import software.amazon.awssdk.services.waf.model.ListSubscribedRuleGroupsResponse;
import software.amazon.awssdk.services.waf.model.ListTagsForResourceRequest;
import software.amazon.awssdk.services.waf.model.ListTagsForResourceResponse;
import software.amazon.awssdk.services.waf.model.ListWebAcLsRequest;
import software.amazon.awssdk.services.waf.model.ListWebAcLsResponse;
import software.amazon.awssdk.services.waf.model.ListXssMatchSetsRequest;
import software.amazon.awssdk.services.waf.model.ListXssMatchSetsResponse;
import software.amazon.awssdk.services.waf.model.PutLoggingConfigurationRequest;
import software.amazon.awssdk.services.waf.model.PutLoggingConfigurationResponse;
import software.amazon.awssdk.services.waf.model.PutPermissionPolicyRequest;
import software.amazon.awssdk.services.waf.model.PutPermissionPolicyResponse;
import software.amazon.awssdk.services.waf.model.TagResourceRequest;
import software.amazon.awssdk.services.waf.model.TagResourceResponse;
import software.amazon.awssdk.services.waf.model.UntagResourceRequest;
import software.amazon.awssdk.services.waf.model.UntagResourceResponse;
import software.amazon.awssdk.services.waf.model.UpdateByteMatchSetRequest;
import software.amazon.awssdk.services.waf.model.UpdateByteMatchSetResponse;
import software.amazon.awssdk.services.waf.model.UpdateGeoMatchSetRequest;
import software.amazon.awssdk.services.waf.model.UpdateGeoMatchSetResponse;
import software.amazon.awssdk.services.waf.model.UpdateIpSetRequest;
import software.amazon.awssdk.services.waf.model.UpdateIpSetResponse;
import software.amazon.awssdk.services.waf.model.UpdateRateBasedRuleRequest;
import software.amazon.awssdk.services.waf.model.UpdateRateBasedRuleResponse;
import software.amazon.awssdk.services.waf.model.UpdateRegexMatchSetRequest;
import software.amazon.awssdk.services.waf.model.UpdateRegexMatchSetResponse;
import software.amazon.awssdk.services.waf.model.UpdateRegexPatternSetRequest;
import software.amazon.awssdk.services.waf.model.UpdateRegexPatternSetResponse;
import software.amazon.awssdk.services.waf.model.UpdateRuleGroupRequest;
import software.amazon.awssdk.services.waf.model.UpdateRuleGroupResponse;
import software.amazon.awssdk.services.waf.model.UpdateRuleRequest;
import software.amazon.awssdk.services.waf.model.UpdateRuleResponse;
import software.amazon.awssdk.services.waf.model.UpdateSizeConstraintSetRequest;
import software.amazon.awssdk.services.waf.model.UpdateSizeConstraintSetResponse;
import software.amazon.awssdk.services.waf.model.UpdateSqlInjectionMatchSetRequest;
import software.amazon.awssdk.services.waf.model.UpdateSqlInjectionMatchSetResponse;
import software.amazon.awssdk.services.waf.model.UpdateWebAclRequest;
import software.amazon.awssdk.services.waf.model.UpdateWebAclResponse;
import software.amazon.awssdk.services.waf.model.UpdateXssMatchSetRequest;
import software.amazon.awssdk.services.waf.model.UpdateXssMatchSetResponse;
import software.amazon.awssdk.services.waf.model.WafBadRequestException;
import software.amazon.awssdk.services.waf.model.WafDisallowedNameException;
import software.amazon.awssdk.services.waf.model.WafEntityMigrationException;
import software.amazon.awssdk.services.waf.model.WafException;
import software.amazon.awssdk.services.waf.model.WafInternalErrorException;
import software.amazon.awssdk.services.waf.model.WafInvalidAccountException;
import software.amazon.awssdk.services.waf.model.WafInvalidOperationException;
import software.amazon.awssdk.services.waf.model.WafInvalidParameterException;
import software.amazon.awssdk.services.waf.model.WafInvalidPermissionPolicyException;
import software.amazon.awssdk.services.waf.model.WafInvalidRegexPatternException;
import software.amazon.awssdk.services.waf.model.WafLimitsExceededException;
import software.amazon.awssdk.services.waf.model.WafNonEmptyEntityException;
import software.amazon.awssdk.services.waf.model.WafNonexistentContainerException;
import software.amazon.awssdk.services.waf.model.WafNonexistentItemException;
import software.amazon.awssdk.services.waf.model.WafReferencedItemException;
import software.amazon.awssdk.services.waf.model.WafServiceLinkedRoleErrorException;
import software.amazon.awssdk.services.waf.model.WafStaleDataException;
import software.amazon.awssdk.services.waf.model.WafSubscriptionNotFoundException;
import software.amazon.awssdk.services.waf.model.WafTagOperationException;
import software.amazon.awssdk.services.waf.model.WafTagOperationInternalErrorException;

/**
 * Service client for accessing WAF. This can be created using the static {@link #builder()} method.
 *
 * 
 * 

* This is AWS WAF Classic documentation. For more information, see AWS WAF Classic in the * developer guide. *

*

* For the latest version of AWS WAF, use the AWS WAFV2 API and see the AWS WAF Developer Guide. With the * latest version, AWS WAF has a single set of endpoints for regional and global use. *

*
*

* This is the AWS WAF Classic API Reference for using AWS WAF Classic with Amazon CloudFront. The AWS WAF * Classic actions and data types listed in the reference are available for protecting Amazon CloudFront distributions. * You can use these actions and data types via the endpoint waf.amazonaws.com. This guide is for developers who * need detailed information about the AWS WAF Classic API actions, data types, and errors. For detailed information * about AWS WAF Classic features and an overview of how to use the AWS WAF Classic API, see the AWS WAF Classic in the * developer guide. *

*/ @Generated("software.amazon.awssdk:codegen") @SdkPublicApi @ThreadSafe public interface WafClient extends AwsClient { String SERVICE_NAME = "waf"; /** * Value for looking up the service's metadata from the * {@link software.amazon.awssdk.regions.ServiceMetadataProvider}. */ String SERVICE_METADATA_ID = "waf"; /** * *

* This is AWS WAF Classic documentation. For more information, see AWS WAF Classic in the * developer guide. *

*

* For the latest version of AWS WAF, use the AWS WAFV2 API and see the AWS WAF Developer Guide. With * the latest version, AWS WAF has a single set of endpoints for regional and global use. *

*
*

* Creates a ByteMatchSet. You then use UpdateByteMatchSet to identify the part of a web request * that you want AWS WAF to inspect, such as the values of the User-Agent header or the query string. * For example, you can create a ByteMatchSet that matches any requests with User-Agent * headers that contain the string BadBot. You can then configure AWS WAF to reject those requests. *

*

* To create and configure a ByteMatchSet, perform the following steps: *

*
    *
  1. *

    * Use GetChangeToken to get the change token that you provide in the ChangeToken parameter of a * CreateByteMatchSet request. *

    *
  2. *
  3. *

    * Submit a CreateByteMatchSet request. *

    *
  4. *
  5. *

    * Use GetChangeToken to get the change token that you provide in the ChangeToken * parameter of an UpdateByteMatchSet request. *

    *
  6. *
  7. *

    * Submit an UpdateByteMatchSet request to specify the part of the request that you want AWS WAF to inspect * (for example, the header or the URI) and the value that you want AWS WAF to watch for. *

    *
  8. *
*

* For more information about how to use the AWS WAF API to allow or block HTTP requests, see the AWS WAF Developer Guide. *

* * @param createByteMatchSetRequest * @return Result of the CreateByteMatchSet operation returned by the service. * @throws WafDisallowedNameException * The name specified is invalid. * @throws WafInternalErrorException * The operation failed because of a system problem, even though the request was valid. Retry your request. * @throws WafInvalidAccountException * The operation failed because you tried to create, update, or delete an object by using an invalid account * identifier. * @throws WafInvalidParameterException * The operation failed because AWS WAF didn't recognize a parameter in the request. For example:

*
    *
  • *

    * You specified an invalid parameter name. *

    *
  • *
  • *

    * You specified an invalid value. *

    *
  • *
  • *

    * You tried to update an object (ByteMatchSet, IPSet, Rule, or * WebACL) using an action other than INSERT or DELETE. *

    *
  • *
  • *

    * You tried to create a WebACL with a DefaultAction Type other than * ALLOW, BLOCK, or COUNT. *

    *
  • *
  • *

    * You tried to create a RateBasedRule with a RateKey value other than * IP. *

    *
  • *
  • *

    * You tried to update a WebACL with a WafAction Type other than * ALLOW, BLOCK, or COUNT. *

    *
  • *
  • *

    * You tried to update a ByteMatchSet with a FieldToMatch Type other * than HEADER, METHOD, QUERY_STRING, URI, or BODY. *

    *
  • *
  • *

    * You tried to update a ByteMatchSet with a Field of HEADER but no * value for Data. *

    *
  • *
  • *

    * Your request references an ARN that is malformed, or corresponds to a resource with which a web ACL * cannot be associated. *

    *
  • * @throws WafStaleDataException * The operation failed because you tried to create, update, or delete an object by using a change token * that has already been used. * @throws WafLimitsExceededException * The operation exceeds a resource limit, for example, the maximum number of WebACL objects * that you can create for an AWS account. For more information, see Limits in the AWS WAF * Developer Guide. * @throws SdkException * Base class for all exceptions that can be thrown by the SDK (both service and client). Can be used for * catch all scenarios. * @throws SdkClientException * If any client side error occurs such as an IO related failure, failure to get credentials, etc. * @throws WafException * Base class for all service exceptions. Unknown exceptions will be thrown as an instance of this type. * @sample WafClient.CreateByteMatchSet * @see AWS API * Documentation */ default CreateByteMatchSetResponse createByteMatchSet(CreateByteMatchSetRequest createByteMatchSetRequest) throws WafDisallowedNameException, WafInternalErrorException, WafInvalidAccountException, WafInvalidParameterException, WafStaleDataException, WafLimitsExceededException, AwsServiceException, SdkClientException, WafException { throw new UnsupportedOperationException(); } /** * *

    * This is AWS WAF Classic documentation. For more information, see AWS WAF Classic in the * developer guide. *

    *

    * For the latest version of AWS WAF, use the AWS WAFV2 API and see the AWS WAF Developer Guide. With * the latest version, AWS WAF has a single set of endpoints for regional and global use. *

    *
    *

    * Creates a ByteMatchSet. You then use UpdateByteMatchSet to identify the part of a web request * that you want AWS WAF to inspect, such as the values of the User-Agent header or the query string. * For example, you can create a ByteMatchSet that matches any requests with User-Agent * headers that contain the string BadBot. You can then configure AWS WAF to reject those requests. *

    *

    * To create and configure a ByteMatchSet, perform the following steps: *

    *
      *
    1. *

      * Use GetChangeToken to get the change token that you provide in the ChangeToken parameter of a * CreateByteMatchSet request. *

      *
    2. *
    3. *

      * Submit a CreateByteMatchSet request. *

      *
    4. *
    5. *

      * Use GetChangeToken to get the change token that you provide in the ChangeToken * parameter of an UpdateByteMatchSet request. *

      *
    6. *
    7. *

      * Submit an UpdateByteMatchSet request to specify the part of the request that you want AWS WAF to inspect * (for example, the header or the URI) and the value that you want AWS WAF to watch for. *

      *
    8. *
    *

    * For more information about how to use the AWS WAF API to allow or block HTTP requests, see the AWS WAF Developer Guide. *

    *
    *

    * This is a convenience which creates an instance of the {@link CreateByteMatchSetRequest.Builder} avoiding the * need to create one manually via {@link CreateByteMatchSetRequest#builder()} *

    * * @param createByteMatchSetRequest * A {@link Consumer} that will call methods on * {@link software.amazon.awssdk.services.waf.model.CreateByteMatchSetRequest.Builder} to create a request. * @return Result of the CreateByteMatchSet operation returned by the service. * @throws WafDisallowedNameException * The name specified is invalid. * @throws WafInternalErrorException * The operation failed because of a system problem, even though the request was valid. Retry your request. * @throws WafInvalidAccountException * The operation failed because you tried to create, update, or delete an object by using an invalid account * identifier. * @throws WafInvalidParameterException * The operation failed because AWS WAF didn't recognize a parameter in the request. For example:

    *
      *
    • *

      * You specified an invalid parameter name. *

      *
    • *
    • *

      * You specified an invalid value. *

      *
    • *
    • *

      * You tried to update an object (ByteMatchSet, IPSet, Rule, or * WebACL) using an action other than INSERT or DELETE. *

      *
    • *
    • *

      * You tried to create a WebACL with a DefaultAction Type other than * ALLOW, BLOCK, or COUNT. *

      *
    • *
    • *

      * You tried to create a RateBasedRule with a RateKey value other than * IP. *

      *
    • *
    • *

      * You tried to update a WebACL with a WafAction Type other than * ALLOW, BLOCK, or COUNT. *

      *
    • *
    • *

      * You tried to update a ByteMatchSet with a FieldToMatch Type other * than HEADER, METHOD, QUERY_STRING, URI, or BODY. *

      *
    • *
    • *

      * You tried to update a ByteMatchSet with a Field of HEADER but no * value for Data. *

      *
    • *
    • *

      * Your request references an ARN that is malformed, or corresponds to a resource with which a web ACL * cannot be associated. *

      *
    • * @throws WafStaleDataException * The operation failed because you tried to create, update, or delete an object by using a change token * that has already been used. * @throws WafLimitsExceededException * The operation exceeds a resource limit, for example, the maximum number of WebACL objects * that you can create for an AWS account. For more information, see Limits in the AWS WAF * Developer Guide. * @throws SdkException * Base class for all exceptions that can be thrown by the SDK (both service and client). Can be used for * catch all scenarios. * @throws SdkClientException * If any client side error occurs such as an IO related failure, failure to get credentials, etc. * @throws WafException * Base class for all service exceptions. Unknown exceptions will be thrown as an instance of this type. * @sample WafClient.CreateByteMatchSet * @see AWS API * Documentation */ default CreateByteMatchSetResponse createByteMatchSet(Consumer createByteMatchSetRequest) throws WafDisallowedNameException, WafInternalErrorException, WafInvalidAccountException, WafInvalidParameterException, WafStaleDataException, WafLimitsExceededException, AwsServiceException, SdkClientException, WafException { return createByteMatchSet(CreateByteMatchSetRequest.builder().applyMutation(createByteMatchSetRequest).build()); } /** * *

      * This is AWS WAF Classic documentation. For more information, see AWS WAF Classic in the * developer guide. *

      *

      * For the latest version of AWS WAF, use the AWS WAFV2 API and see the AWS WAF Developer Guide. With * the latest version, AWS WAF has a single set of endpoints for regional and global use. *

      *
      *

      * Creates an GeoMatchSet, which you use to specify which web requests you want to allow or block based on * the country that the requests originate from. For example, if you're receiving a lot of requests from one or more * countries and you want to block the requests, you can create an GeoMatchSet that contains those * countries and then configure AWS WAF to block the requests. *

      *

      * To create and configure a GeoMatchSet, perform the following steps: *

      *
        *
      1. *

        * Use GetChangeToken to get the change token that you provide in the ChangeToken parameter of a * CreateGeoMatchSet request. *

        *
      2. *
      3. *

        * Submit a CreateGeoMatchSet request. *

        *
      4. *
      5. *

        * Use GetChangeToken to get the change token that you provide in the ChangeToken * parameter of an UpdateGeoMatchSet request. *

        *
      6. *
      7. *

        * Submit an UpdateGeoMatchSetSet request to specify the countries that you want AWS WAF to watch for. *

        *
      8. *
      *

      * For more information about how to use the AWS WAF API to allow or block HTTP requests, see the AWS WAF Developer Guide. *

      * * @param createGeoMatchSetRequest * @return Result of the CreateGeoMatchSet operation returned by the service. * @throws WafStaleDataException * The operation failed because you tried to create, update, or delete an object by using a change token * that has already been used. * @throws WafInternalErrorException * The operation failed because of a system problem, even though the request was valid. Retry your request. * @throws WafInvalidAccountException * The operation failed because you tried to create, update, or delete an object by using an invalid account * identifier. * @throws WafDisallowedNameException * The name specified is invalid. * @throws WafInvalidParameterException * The operation failed because AWS WAF didn't recognize a parameter in the request. For example:

      *
        *
      • *

        * You specified an invalid parameter name. *

        *
      • *
      • *

        * You specified an invalid value. *

        *
      • *
      • *

        * You tried to update an object (ByteMatchSet, IPSet, Rule, or * WebACL) using an action other than INSERT or DELETE. *

        *
      • *
      • *

        * You tried to create a WebACL with a DefaultAction Type other than * ALLOW, BLOCK, or COUNT. *

        *
      • *
      • *

        * You tried to create a RateBasedRule with a RateKey value other than * IP. *

        *
      • *
      • *

        * You tried to update a WebACL with a WafAction Type other than * ALLOW, BLOCK, or COUNT. *

        *
      • *
      • *

        * You tried to update a ByteMatchSet with a FieldToMatch Type other * than HEADER, METHOD, QUERY_STRING, URI, or BODY. *

        *
      • *
      • *

        * You tried to update a ByteMatchSet with a Field of HEADER but no * value for Data. *

        *
      • *
      • *

        * Your request references an ARN that is malformed, or corresponds to a resource with which a web ACL * cannot be associated. *

        *
      • * @throws WafLimitsExceededException * The operation exceeds a resource limit, for example, the maximum number of WebACL objects * that you can create for an AWS account. For more information, see Limits in the AWS WAF * Developer Guide. * @throws SdkException * Base class for all exceptions that can be thrown by the SDK (both service and client). Can be used for * catch all scenarios. * @throws SdkClientException * If any client side error occurs such as an IO related failure, failure to get credentials, etc. * @throws WafException * Base class for all service exceptions. Unknown exceptions will be thrown as an instance of this type. * @sample WafClient.CreateGeoMatchSet * @see AWS API * Documentation */ default CreateGeoMatchSetResponse createGeoMatchSet(CreateGeoMatchSetRequest createGeoMatchSetRequest) throws WafStaleDataException, WafInternalErrorException, WafInvalidAccountException, WafDisallowedNameException, WafInvalidParameterException, WafLimitsExceededException, AwsServiceException, SdkClientException, WafException { throw new UnsupportedOperationException(); } /** * *

        * This is AWS WAF Classic documentation. For more information, see AWS WAF Classic in the * developer guide. *

        *

        * For the latest version of AWS WAF, use the AWS WAFV2 API and see the AWS WAF Developer Guide. With * the latest version, AWS WAF has a single set of endpoints for regional and global use. *

        *
        *

        * Creates an GeoMatchSet, which you use to specify which web requests you want to allow or block based on * the country that the requests originate from. For example, if you're receiving a lot of requests from one or more * countries and you want to block the requests, you can create an GeoMatchSet that contains those * countries and then configure AWS WAF to block the requests. *

        *

        * To create and configure a GeoMatchSet, perform the following steps: *

        *
          *
        1. *

          * Use GetChangeToken to get the change token that you provide in the ChangeToken parameter of a * CreateGeoMatchSet request. *

          *
        2. *
        3. *

          * Submit a CreateGeoMatchSet request. *

          *
        4. *
        5. *

          * Use GetChangeToken to get the change token that you provide in the ChangeToken * parameter of an UpdateGeoMatchSet request. *

          *
        6. *
        7. *

          * Submit an UpdateGeoMatchSetSet request to specify the countries that you want AWS WAF to watch for. *

          *
        8. *
        *

        * For more information about how to use the AWS WAF API to allow or block HTTP requests, see the AWS WAF Developer Guide. *

        *
        *

        * This is a convenience which creates an instance of the {@link CreateGeoMatchSetRequest.Builder} avoiding the need * to create one manually via {@link CreateGeoMatchSetRequest#builder()} *

        * * @param createGeoMatchSetRequest * A {@link Consumer} that will call methods on * {@link software.amazon.awssdk.services.waf.model.CreateGeoMatchSetRequest.Builder} to create a request. * @return Result of the CreateGeoMatchSet operation returned by the service. * @throws WafStaleDataException * The operation failed because you tried to create, update, or delete an object by using a change token * that has already been used. * @throws WafInternalErrorException * The operation failed because of a system problem, even though the request was valid. Retry your request. * @throws WafInvalidAccountException * The operation failed because you tried to create, update, or delete an object by using an invalid account * identifier. * @throws WafDisallowedNameException * The name specified is invalid. * @throws WafInvalidParameterException * The operation failed because AWS WAF didn't recognize a parameter in the request. For example:

        *
          *
        • *

          * You specified an invalid parameter name. *

          *
        • *
        • *

          * You specified an invalid value. *

          *
        • *
        • *

          * You tried to update an object (ByteMatchSet, IPSet, Rule, or * WebACL) using an action other than INSERT or DELETE. *

          *
        • *
        • *

          * You tried to create a WebACL with a DefaultAction Type other than * ALLOW, BLOCK, or COUNT. *

          *
        • *
        • *

          * You tried to create a RateBasedRule with a RateKey value other than * IP. *

          *
        • *
        • *

          * You tried to update a WebACL with a WafAction Type other than * ALLOW, BLOCK, or COUNT. *

          *
        • *
        • *

          * You tried to update a ByteMatchSet with a FieldToMatch Type other * than HEADER, METHOD, QUERY_STRING, URI, or BODY. *

          *
        • *
        • *

          * You tried to update a ByteMatchSet with a Field of HEADER but no * value for Data. *

          *
        • *
        • *

          * Your request references an ARN that is malformed, or corresponds to a resource with which a web ACL * cannot be associated. *

          *
        • * @throws WafLimitsExceededException * The operation exceeds a resource limit, for example, the maximum number of WebACL objects * that you can create for an AWS account. For more information, see Limits in the AWS WAF * Developer Guide. * @throws SdkException * Base class for all exceptions that can be thrown by the SDK (both service and client). Can be used for * catch all scenarios. * @throws SdkClientException * If any client side error occurs such as an IO related failure, failure to get credentials, etc. * @throws WafException * Base class for all service exceptions. Unknown exceptions will be thrown as an instance of this type. * @sample WafClient.CreateGeoMatchSet * @see AWS API * Documentation */ default CreateGeoMatchSetResponse createGeoMatchSet(Consumer createGeoMatchSetRequest) throws WafStaleDataException, WafInternalErrorException, WafInvalidAccountException, WafDisallowedNameException, WafInvalidParameterException, WafLimitsExceededException, AwsServiceException, SdkClientException, WafException { return createGeoMatchSet(CreateGeoMatchSetRequest.builder().applyMutation(createGeoMatchSetRequest).build()); } /** * *

          * This is AWS WAF Classic documentation. For more information, see AWS WAF Classic in the * developer guide. *

          *

          * For the latest version of AWS WAF, use the AWS WAFV2 API and see the AWS WAF Developer Guide. With * the latest version, AWS WAF has a single set of endpoints for regional and global use. *

          *
          *

          * Creates an IPSet, which you use to specify which web requests that you want to allow or block based on the * IP addresses that the requests originate from. For example, if you're receiving a lot of requests from one or * more individual IP addresses or one or more ranges of IP addresses and you want to block the requests, you can * create an IPSet that contains those IP addresses and then configure AWS WAF to block the requests. *

          *

          * To create and configure an IPSet, perform the following steps: *

          *
            *
          1. *

            * Use GetChangeToken to get the change token that you provide in the ChangeToken parameter of a * CreateIPSet request. *

            *
          2. *
          3. *

            * Submit a CreateIPSet request. *

            *
          4. *
          5. *

            * Use GetChangeToken to get the change token that you provide in the ChangeToken * parameter of an UpdateIPSet request. *

            *
          6. *
          7. *

            * Submit an UpdateIPSet request to specify the IP addresses that you want AWS WAF to watch for. *

            *
          8. *
          *

          * For more information about how to use the AWS WAF API to allow or block HTTP requests, see the AWS WAF Developer Guide. *

          * * @param createIpSetRequest * @return Result of the CreateIPSet operation returned by the service. * @throws WafStaleDataException * The operation failed because you tried to create, update, or delete an object by using a change token * that has already been used. * @throws WafInternalErrorException * The operation failed because of a system problem, even though the request was valid. Retry your request. * @throws WafInvalidAccountException * The operation failed because you tried to create, update, or delete an object by using an invalid account * identifier. * @throws WafDisallowedNameException * The name specified is invalid. * @throws WafInvalidParameterException * The operation failed because AWS WAF didn't recognize a parameter in the request. For example:

          *
            *
          • *

            * You specified an invalid parameter name. *

            *
          • *
          • *

            * You specified an invalid value. *

            *
          • *
          • *

            * You tried to update an object (ByteMatchSet, IPSet, Rule, or * WebACL) using an action other than INSERT or DELETE. *

            *
          • *
          • *

            * You tried to create a WebACL with a DefaultAction Type other than * ALLOW, BLOCK, or COUNT. *

            *
          • *
          • *

            * You tried to create a RateBasedRule with a RateKey value other than * IP. *

            *
          • *
          • *

            * You tried to update a WebACL with a WafAction Type other than * ALLOW, BLOCK, or COUNT. *

            *
          • *
          • *

            * You tried to update a ByteMatchSet with a FieldToMatch Type other * than HEADER, METHOD, QUERY_STRING, URI, or BODY. *

            *
          • *
          • *

            * You tried to update a ByteMatchSet with a Field of HEADER but no * value for Data. *

            *
          • *
          • *

            * Your request references an ARN that is malformed, or corresponds to a resource with which a web ACL * cannot be associated. *

            *
          • * @throws WafLimitsExceededException * The operation exceeds a resource limit, for example, the maximum number of WebACL objects * that you can create for an AWS account. For more information, see Limits in the AWS WAF * Developer Guide. * @throws SdkException * Base class for all exceptions that can be thrown by the SDK (both service and client). Can be used for * catch all scenarios. * @throws SdkClientException * If any client side error occurs such as an IO related failure, failure to get credentials, etc. * @throws WafException * Base class for all service exceptions. Unknown exceptions will be thrown as an instance of this type. * @sample WafClient.CreateIPSet * @see AWS API * Documentation */ default CreateIpSetResponse createIPSet(CreateIpSetRequest createIpSetRequest) throws WafStaleDataException, WafInternalErrorException, WafInvalidAccountException, WafDisallowedNameException, WafInvalidParameterException, WafLimitsExceededException, AwsServiceException, SdkClientException, WafException { throw new UnsupportedOperationException(); } /** * *

            * This is AWS WAF Classic documentation. For more information, see AWS WAF Classic in the * developer guide. *

            *

            * For the latest version of AWS WAF, use the AWS WAFV2 API and see the AWS WAF Developer Guide. With * the latest version, AWS WAF has a single set of endpoints for regional and global use. *

            *
            *

            * Creates an IPSet, which you use to specify which web requests that you want to allow or block based on the * IP addresses that the requests originate from. For example, if you're receiving a lot of requests from one or * more individual IP addresses or one or more ranges of IP addresses and you want to block the requests, you can * create an IPSet that contains those IP addresses and then configure AWS WAF to block the requests. *

            *

            * To create and configure an IPSet, perform the following steps: *

            *
              *
            1. *

              * Use GetChangeToken to get the change token that you provide in the ChangeToken parameter of a * CreateIPSet request. *

              *
            2. *
            3. *

              * Submit a CreateIPSet request. *

              *
            4. *
            5. *

              * Use GetChangeToken to get the change token that you provide in the ChangeToken * parameter of an UpdateIPSet request. *

              *
            6. *
            7. *

              * Submit an UpdateIPSet request to specify the IP addresses that you want AWS WAF to watch for. *

              *
            8. *
            *

            * For more information about how to use the AWS WAF API to allow or block HTTP requests, see the AWS WAF Developer Guide. *

            *
            *

            * This is a convenience which creates an instance of the {@link CreateIpSetRequest.Builder} avoiding the need to * create one manually via {@link CreateIpSetRequest#builder()} *

            * * @param createIpSetRequest * A {@link Consumer} that will call methods on * {@link software.amazon.awssdk.services.waf.model.CreateIpSetRequest.Builder} to create a request. * @return Result of the CreateIPSet operation returned by the service. * @throws WafStaleDataException * The operation failed because you tried to create, update, or delete an object by using a change token * that has already been used. * @throws WafInternalErrorException * The operation failed because of a system problem, even though the request was valid. Retry your request. * @throws WafInvalidAccountException * The operation failed because you tried to create, update, or delete an object by using an invalid account * identifier. * @throws WafDisallowedNameException * The name specified is invalid. * @throws WafInvalidParameterException * The operation failed because AWS WAF didn't recognize a parameter in the request. For example:

            *
              *
            • *

              * You specified an invalid parameter name. *

              *
            • *
            • *

              * You specified an invalid value. *

              *
            • *
            • *

              * You tried to update an object (ByteMatchSet, IPSet, Rule, or * WebACL) using an action other than INSERT or DELETE. *

              *
            • *
            • *

              * You tried to create a WebACL with a DefaultAction Type other than * ALLOW, BLOCK, or COUNT. *

              *
            • *
            • *

              * You tried to create a RateBasedRule with a RateKey value other than * IP. *

              *
            • *
            • *

              * You tried to update a WebACL with a WafAction Type other than * ALLOW, BLOCK, or COUNT. *

              *
            • *
            • *

              * You tried to update a ByteMatchSet with a FieldToMatch Type other * than HEADER, METHOD, QUERY_STRING, URI, or BODY. *

              *
            • *
            • *

              * You tried to update a ByteMatchSet with a Field of HEADER but no * value for Data. *

              *
            • *
            • *

              * Your request references an ARN that is malformed, or corresponds to a resource with which a web ACL * cannot be associated. *

              *
            • * @throws WafLimitsExceededException * The operation exceeds a resource limit, for example, the maximum number of WebACL objects * that you can create for an AWS account. For more information, see Limits in the AWS WAF * Developer Guide. * @throws SdkException * Base class for all exceptions that can be thrown by the SDK (both service and client). Can be used for * catch all scenarios. * @throws SdkClientException * If any client side error occurs such as an IO related failure, failure to get credentials, etc. * @throws WafException * Base class for all service exceptions. Unknown exceptions will be thrown as an instance of this type. * @sample WafClient.CreateIPSet * @see AWS API * Documentation */ default CreateIpSetResponse createIPSet(Consumer createIpSetRequest) throws WafStaleDataException, WafInternalErrorException, WafInvalidAccountException, WafDisallowedNameException, WafInvalidParameterException, WafLimitsExceededException, AwsServiceException, SdkClientException, WafException { return createIPSet(CreateIpSetRequest.builder().applyMutation(createIpSetRequest).build()); } /** * *

              * This is AWS WAF Classic documentation. For more information, see AWS WAF Classic in the * developer guide. *

              *

              * For the latest version of AWS WAF, use the AWS WAFV2 API and see the AWS WAF Developer Guide. With * the latest version, AWS WAF has a single set of endpoints for regional and global use. *

              *
              *

              * Creates a RateBasedRule. The RateBasedRule contains a RateLimit, which specifies * the maximum number of requests that AWS WAF allows from a specified IP address in a five-minute period. The * RateBasedRule also contains the IPSet objects, ByteMatchSet objects, and * other predicates that identify the requests that you want to count or block if these requests exceed the * RateLimit. *

              *

              * If you add more than one predicate to a RateBasedRule, a request not only must exceed the * RateLimit, but it also must match all the conditions to be counted or blocked. For example, suppose * you add the following to a RateBasedRule: *

              *
                *
              • *

                * An IPSet that matches the IP address 192.0.2.44/32 *

                *
              • *
              • *

                * A ByteMatchSet that matches BadBot in the User-Agent header *

                *
              • *
              *

              * Further, you specify a RateLimit of 1,000. *

              *

              * You then add the RateBasedRule to a WebACL and specify that you want to block requests * that meet the conditions in the rule. For a request to be blocked, it must come from the IP address 192.0.2.44 * and the User-Agent header in the request must contain the value BadBot. Further, * requests that match these two conditions must be received at a rate of more than 1,000 requests every five * minutes. If both conditions are met and the rate is exceeded, AWS WAF blocks the requests. If the rate drops * below 1,000 for a five-minute period, AWS WAF no longer blocks the requests. *

              *

              * As a second example, suppose you want to limit requests to a particular page on your site. To do this, you could * add the following to a RateBasedRule: *

              *
                *
              • *

                * A ByteMatchSet with FieldToMatch of URI *

                *
              • *
              • *

                * A PositionalConstraint of STARTS_WITH *

                *
              • *
              • *

                * A TargetString of login *

                *
              • *
              *

              * Further, you specify a RateLimit of 1,000. *

              *

              * By adding this RateBasedRule to a WebACL, you could limit requests to your login page * without affecting the rest of your site. *

              *

              * To create and configure a RateBasedRule, perform the following steps: *

              *
                *
              1. *

                * Create and update the predicates that you want to include in the rule. For more information, see * CreateByteMatchSet, CreateIPSet, and CreateSqlInjectionMatchSet. *

                *
              2. *
              3. *

                * Use GetChangeToken to get the change token that you provide in the ChangeToken parameter of a * CreateRule request. *

                *
              4. *
              5. *

                * Submit a CreateRateBasedRule request. *

                *
              6. *
              7. *

                * Use GetChangeToken to get the change token that you provide in the ChangeToken * parameter of an UpdateRule request. *

                *
              8. *
              9. *

                * Submit an UpdateRateBasedRule request to specify the predicates that you want to include in the * rule. *

                *
              10. *
              11. *

                * Create and update a WebACL that contains the RateBasedRule. For more information, see * CreateWebACL. *

                *
              12. *
              *

              * For more information about how to use the AWS WAF API to allow or block HTTP requests, see the AWS WAF Developer Guide. *

              * * @param createRateBasedRuleRequest * @return Result of the CreateRateBasedRule operation returned by the service. * @throws WafStaleDataException * The operation failed because you tried to create, update, or delete an object by using a change token * that has already been used. * @throws WafInternalErrorException * The operation failed because of a system problem, even though the request was valid. Retry your request. * @throws WafDisallowedNameException * The name specified is invalid. * @throws WafInvalidParameterException * The operation failed because AWS WAF didn't recognize a parameter in the request. For example:

              *
                *
              • *

                * You specified an invalid parameter name. *

                *
              • *
              • *

                * You specified an invalid value. *

                *
              • *
              • *

                * You tried to update an object (ByteMatchSet, IPSet, Rule, or * WebACL) using an action other than INSERT or DELETE. *

                *
              • *
              • *

                * You tried to create a WebACL with a DefaultAction Type other than * ALLOW, BLOCK, or COUNT. *

                *
              • *
              • *

                * You tried to create a RateBasedRule with a RateKey value other than * IP. *

                *
              • *
              • *

                * You tried to update a WebACL with a WafAction Type other than * ALLOW, BLOCK, or COUNT. *

                *
              • *
              • *

                * You tried to update a ByteMatchSet with a FieldToMatch Type other * than HEADER, METHOD, QUERY_STRING, URI, or BODY. *

                *
              • *
              • *

                * You tried to update a ByteMatchSet with a Field of HEADER but no * value for Data. *

                *
              • *
              • *

                * Your request references an ARN that is malformed, or corresponds to a resource with which a web ACL * cannot be associated. *

                *
              • * @throws WafLimitsExceededException * The operation exceeds a resource limit, for example, the maximum number of WebACL objects * that you can create for an AWS account. For more information, see Limits in the AWS WAF * Developer Guide. * @throws WafTagOperationException * @throws WafTagOperationInternalErrorException * @throws WafBadRequestException * @throws SdkException * Base class for all exceptions that can be thrown by the SDK (both service and client). Can be used for * catch all scenarios. * @throws SdkClientException * If any client side error occurs such as an IO related failure, failure to get credentials, etc. * @throws WafException * Base class for all service exceptions. Unknown exceptions will be thrown as an instance of this type. * @sample WafClient.CreateRateBasedRule * @see AWS API * Documentation */ default CreateRateBasedRuleResponse createRateBasedRule(CreateRateBasedRuleRequest createRateBasedRuleRequest) throws WafStaleDataException, WafInternalErrorException, WafDisallowedNameException, WafInvalidParameterException, WafLimitsExceededException, WafTagOperationException, WafTagOperationInternalErrorException, WafBadRequestException, AwsServiceException, SdkClientException, WafException { throw new UnsupportedOperationException(); } /** * *

                * This is AWS WAF Classic documentation. For more information, see AWS WAF Classic in the * developer guide. *

                *

                * For the latest version of AWS WAF, use the AWS WAFV2 API and see the AWS WAF Developer Guide. With * the latest version, AWS WAF has a single set of endpoints for regional and global use. *

                *
                *

                * Creates a RateBasedRule. The RateBasedRule contains a RateLimit, which specifies * the maximum number of requests that AWS WAF allows from a specified IP address in a five-minute period. The * RateBasedRule also contains the IPSet objects, ByteMatchSet objects, and * other predicates that identify the requests that you want to count or block if these requests exceed the * RateLimit. *

                *

                * If you add more than one predicate to a RateBasedRule, a request not only must exceed the * RateLimit, but it also must match all the conditions to be counted or blocked. For example, suppose * you add the following to a RateBasedRule: *

                *
                  *
                • *

                  * An IPSet that matches the IP address 192.0.2.44/32 *

                  *
                • *
                • *

                  * A ByteMatchSet that matches BadBot in the User-Agent header *

                  *
                • *
                *

                * Further, you specify a RateLimit of 1,000. *

                *

                * You then add the RateBasedRule to a WebACL and specify that you want to block requests * that meet the conditions in the rule. For a request to be blocked, it must come from the IP address 192.0.2.44 * and the User-Agent header in the request must contain the value BadBot. Further, * requests that match these two conditions must be received at a rate of more than 1,000 requests every five * minutes. If both conditions are met and the rate is exceeded, AWS WAF blocks the requests. If the rate drops * below 1,000 for a five-minute period, AWS WAF no longer blocks the requests. *

                *

                * As a second example, suppose you want to limit requests to a particular page on your site. To do this, you could * add the following to a RateBasedRule: *

                *
                  *
                • *

                  * A ByteMatchSet with FieldToMatch of URI *

                  *
                • *
                • *

                  * A PositionalConstraint of STARTS_WITH *

                  *
                • *
                • *

                  * A TargetString of login *

                  *
                • *
                *

                * Further, you specify a RateLimit of 1,000. *

                *

                * By adding this RateBasedRule to a WebACL, you could limit requests to your login page * without affecting the rest of your site. *

                *

                * To create and configure a RateBasedRule, perform the following steps: *

                *
                  *
                1. *

                  * Create and update the predicates that you want to include in the rule. For more information, see * CreateByteMatchSet, CreateIPSet, and CreateSqlInjectionMatchSet. *

                  *
                2. *
                3. *

                  * Use GetChangeToken to get the change token that you provide in the ChangeToken parameter of a * CreateRule request. *

                  *
                4. *
                5. *

                  * Submit a CreateRateBasedRule request. *

                  *
                6. *
                7. *

                  * Use GetChangeToken to get the change token that you provide in the ChangeToken * parameter of an UpdateRule request. *

                  *
                8. *
                9. *

                  * Submit an UpdateRateBasedRule request to specify the predicates that you want to include in the * rule. *

                  *
                10. *
                11. *

                  * Create and update a WebACL that contains the RateBasedRule. For more information, see * CreateWebACL. *

                  *
                12. *
                *

                * For more information about how to use the AWS WAF API to allow or block HTTP requests, see the AWS WAF Developer Guide. *

                *
                *

                * This is a convenience which creates an instance of the {@link CreateRateBasedRuleRequest.Builder} avoiding the * need to create one manually via {@link CreateRateBasedRuleRequest#builder()} *

                * * @param createRateBasedRuleRequest * A {@link Consumer} that will call methods on * {@link software.amazon.awssdk.services.waf.model.CreateRateBasedRuleRequest.Builder} to create a request. * @return Result of the CreateRateBasedRule operation returned by the service. * @throws WafStaleDataException * The operation failed because you tried to create, update, or delete an object by using a change token * that has already been used. * @throws WafInternalErrorException * The operation failed because of a system problem, even though the request was valid. Retry your request. * @throws WafDisallowedNameException * The name specified is invalid. * @throws WafInvalidParameterException * The operation failed because AWS WAF didn't recognize a parameter in the request. For example:

                *
                  *
                • *

                  * You specified an invalid parameter name. *

                  *
                • *
                • *

                  * You specified an invalid value. *

                  *
                • *
                • *

                  * You tried to update an object (ByteMatchSet, IPSet, Rule, or * WebACL) using an action other than INSERT or DELETE. *

                  *
                • *
                • *

                  * You tried to create a WebACL with a DefaultAction Type other than * ALLOW, BLOCK, or COUNT. *

                  *
                • *
                • *

                  * You tried to create a RateBasedRule with a RateKey value other than * IP. *

                  *
                • *
                • *

                  * You tried to update a WebACL with a WafAction Type other than * ALLOW, BLOCK, or COUNT. *

                  *
                • *
                • *

                  * You tried to update a ByteMatchSet with a FieldToMatch Type other * than HEADER, METHOD, QUERY_STRING, URI, or BODY. *

                  *
                • *
                • *

                  * You tried to update a ByteMatchSet with a Field of HEADER but no * value for Data. *

                  *
                • *
                • *

                  * Your request references an ARN that is malformed, or corresponds to a resource with which a web ACL * cannot be associated. *

                  *
                • * @throws WafLimitsExceededException * The operation exceeds a resource limit, for example, the maximum number of WebACL objects * that you can create for an AWS account. For more information, see Limits in the AWS WAF * Developer Guide. * @throws WafTagOperationException * @throws WafTagOperationInternalErrorException * @throws WafBadRequestException * @throws SdkException * Base class for all exceptions that can be thrown by the SDK (both service and client). Can be used for * catch all scenarios. * @throws SdkClientException * If any client side error occurs such as an IO related failure, failure to get credentials, etc. * @throws WafException * Base class for all service exceptions. Unknown exceptions will be thrown as an instance of this type. * @sample WafClient.CreateRateBasedRule * @see AWS API * Documentation */ default CreateRateBasedRuleResponse createRateBasedRule( Consumer createRateBasedRuleRequest) throws WafStaleDataException, WafInternalErrorException, WafDisallowedNameException, WafInvalidParameterException, WafLimitsExceededException, WafTagOperationException, WafTagOperationInternalErrorException, WafBadRequestException, AwsServiceException, SdkClientException, WafException { return createRateBasedRule(CreateRateBasedRuleRequest.builder().applyMutation(createRateBasedRuleRequest).build()); } /** * *

                  * This is AWS WAF Classic documentation. For more information, see AWS WAF Classic in the * developer guide. *

                  *

                  * For the latest version of AWS WAF, use the AWS WAFV2 API and see the AWS WAF Developer Guide. With * the latest version, AWS WAF has a single set of endpoints for regional and global use. *

                  *
                  *

                  * Creates a RegexMatchSet. You then use UpdateRegexMatchSet to identify the part of a web request * that you want AWS WAF to inspect, such as the values of the User-Agent header or the query string. * For example, you can create a RegexMatchSet that contains a RegexMatchTuple that looks * for any requests with User-Agent headers that match a RegexPatternSet with pattern * B[a@]dB[o0]t. You can then configure AWS WAF to reject those requests. *

                  *

                  * To create and configure a RegexMatchSet, perform the following steps: *

                  *
                    *
                  1. *

                    * Use GetChangeToken to get the change token that you provide in the ChangeToken parameter of a * CreateRegexMatchSet request. *

                    *
                  2. *
                  3. *

                    * Submit a CreateRegexMatchSet request. *

                    *
                  4. *
                  5. *

                    * Use GetChangeToken to get the change token that you provide in the ChangeToken * parameter of an UpdateRegexMatchSet request. *

                    *
                  6. *
                  7. *

                    * Submit an UpdateRegexMatchSet request to specify the part of the request that you want AWS WAF to inspect * (for example, the header or the URI) and the value, using a RegexPatternSet, that you want AWS WAF * to watch for. *

                    *
                  8. *
                  *

                  * For more information about how to use the AWS WAF API to allow or block HTTP requests, see the AWS WAF Developer Guide. *

                  * * @param createRegexMatchSetRequest * @return Result of the CreateRegexMatchSet operation returned by the service. * @throws WafStaleDataException * The operation failed because you tried to create, update, or delete an object by using a change token * that has already been used. * @throws WafInternalErrorException * The operation failed because of a system problem, even though the request was valid. Retry your request. * @throws WafDisallowedNameException * The name specified is invalid. * @throws WafLimitsExceededException * The operation exceeds a resource limit, for example, the maximum number of WebACL objects * that you can create for an AWS account. For more information, see Limits in the AWS WAF * Developer Guide. * @throws SdkException * Base class for all exceptions that can be thrown by the SDK (both service and client). Can be used for * catch all scenarios. * @throws SdkClientException * If any client side error occurs such as an IO related failure, failure to get credentials, etc. * @throws WafException * Base class for all service exceptions. Unknown exceptions will be thrown as an instance of this type. * @sample WafClient.CreateRegexMatchSet * @see AWS API * Documentation */ default CreateRegexMatchSetResponse createRegexMatchSet(CreateRegexMatchSetRequest createRegexMatchSetRequest) throws WafStaleDataException, WafInternalErrorException, WafDisallowedNameException, WafLimitsExceededException, AwsServiceException, SdkClientException, WafException { throw new UnsupportedOperationException(); } /** * *

                  * This is AWS WAF Classic documentation. For more information, see AWS WAF Classic in the * developer guide. *

                  *

                  * For the latest version of AWS WAF, use the AWS WAFV2 API and see the AWS WAF Developer Guide. With * the latest version, AWS WAF has a single set of endpoints for regional and global use. *

                  *
                  *

                  * Creates a RegexMatchSet. You then use UpdateRegexMatchSet to identify the part of a web request * that you want AWS WAF to inspect, such as the values of the User-Agent header or the query string. * For example, you can create a RegexMatchSet that contains a RegexMatchTuple that looks * for any requests with User-Agent headers that match a RegexPatternSet with pattern * B[a@]dB[o0]t. You can then configure AWS WAF to reject those requests. *

                  *

                  * To create and configure a RegexMatchSet, perform the following steps: *

                  *
                    *
                  1. *

                    * Use GetChangeToken to get the change token that you provide in the ChangeToken parameter of a * CreateRegexMatchSet request. *

                    *
                  2. *
                  3. *

                    * Submit a CreateRegexMatchSet request. *

                    *
                  4. *
                  5. *

                    * Use GetChangeToken to get the change token that you provide in the ChangeToken * parameter of an UpdateRegexMatchSet request. *

                    *
                  6. *
                  7. *

                    * Submit an UpdateRegexMatchSet request to specify the part of the request that you want AWS WAF to inspect * (for example, the header or the URI) and the value, using a RegexPatternSet, that you want AWS WAF * to watch for. *

                    *
                  8. *
                  *

                  * For more information about how to use the AWS WAF API to allow or block HTTP requests, see the AWS WAF Developer Guide. *

                  *
                  *

                  * This is a convenience which creates an instance of the {@link CreateRegexMatchSetRequest.Builder} avoiding the * need to create one manually via {@link CreateRegexMatchSetRequest#builder()} *

                  * * @param createRegexMatchSetRequest * A {@link Consumer} that will call methods on * {@link software.amazon.awssdk.services.waf.model.CreateRegexMatchSetRequest.Builder} to create a request. * @return Result of the CreateRegexMatchSet operation returned by the service. * @throws WafStaleDataException * The operation failed because you tried to create, update, or delete an object by using a change token * that has already been used. * @throws WafInternalErrorException * The operation failed because of a system problem, even though the request was valid. Retry your request. * @throws WafDisallowedNameException * The name specified is invalid. * @throws WafLimitsExceededException * The operation exceeds a resource limit, for example, the maximum number of WebACL objects * that you can create for an AWS account. For more information, see Limits in the AWS WAF * Developer Guide. * @throws SdkException * Base class for all exceptions that can be thrown by the SDK (both service and client). Can be used for * catch all scenarios. * @throws SdkClientException * If any client side error occurs such as an IO related failure, failure to get credentials, etc. * @throws WafException * Base class for all service exceptions. Unknown exceptions will be thrown as an instance of this type. * @sample WafClient.CreateRegexMatchSet * @see AWS API * Documentation */ default CreateRegexMatchSetResponse createRegexMatchSet( Consumer createRegexMatchSetRequest) throws WafStaleDataException, WafInternalErrorException, WafDisallowedNameException, WafLimitsExceededException, AwsServiceException, SdkClientException, WafException { return createRegexMatchSet(CreateRegexMatchSetRequest.builder().applyMutation(createRegexMatchSetRequest).build()); } /** * *

                  * This is AWS WAF Classic documentation. For more information, see AWS WAF Classic in the * developer guide. *

                  *

                  * For the latest version of AWS WAF, use the AWS WAFV2 API and see the AWS WAF Developer Guide. With * the latest version, AWS WAF has a single set of endpoints for regional and global use. *

                  *
                  *

                  * Creates a RegexPatternSet. You then use UpdateRegexPatternSet to specify the regular * expression (regex) pattern that you want AWS WAF to search for, such as B[a@]dB[o0]t. You can then * configure AWS WAF to reject those requests. *

                  *

                  * To create and configure a RegexPatternSet, perform the following steps: *

                  *
                    *
                  1. *

                    * Use GetChangeToken to get the change token that you provide in the ChangeToken parameter of a * CreateRegexPatternSet request. *

                    *
                  2. *
                  3. *

                    * Submit a CreateRegexPatternSet request. *

                    *
                  4. *
                  5. *

                    * Use GetChangeToken to get the change token that you provide in the ChangeToken * parameter of an UpdateRegexPatternSet request. *

                    *
                  6. *
                  7. *

                    * Submit an UpdateRegexPatternSet request to specify the string that you want AWS WAF to watch for. *

                    *
                  8. *
                  *

                  * For more information about how to use the AWS WAF API to allow or block HTTP requests, see the AWS WAF Developer Guide. *

                  * * @param createRegexPatternSetRequest * @return Result of the CreateRegexPatternSet operation returned by the service. * @throws WafStaleDataException * The operation failed because you tried to create, update, or delete an object by using a change token * that has already been used. * @throws WafInternalErrorException * The operation failed because of a system problem, even though the request was valid. Retry your request. * @throws WafDisallowedNameException * The name specified is invalid. * @throws WafLimitsExceededException * The operation exceeds a resource limit, for example, the maximum number of WebACL objects * that you can create for an AWS account. For more information, see Limits in the AWS WAF * Developer Guide. * @throws SdkException * Base class for all exceptions that can be thrown by the SDK (both service and client). Can be used for * catch all scenarios. * @throws SdkClientException * If any client side error occurs such as an IO related failure, failure to get credentials, etc. * @throws WafException * Base class for all service exceptions. Unknown exceptions will be thrown as an instance of this type. * @sample WafClient.CreateRegexPatternSet * @see AWS API * Documentation */ default CreateRegexPatternSetResponse createRegexPatternSet(CreateRegexPatternSetRequest createRegexPatternSetRequest) throws WafStaleDataException, WafInternalErrorException, WafDisallowedNameException, WafLimitsExceededException, AwsServiceException, SdkClientException, WafException { throw new UnsupportedOperationException(); } /** * *

                  * This is AWS WAF Classic documentation. For more information, see AWS WAF Classic in the * developer guide. *

                  *

                  * For the latest version of AWS WAF, use the AWS WAFV2 API and see the AWS WAF Developer Guide. With * the latest version, AWS WAF has a single set of endpoints for regional and global use. *

                  *
                  *

                  * Creates a RegexPatternSet. You then use UpdateRegexPatternSet to specify the regular * expression (regex) pattern that you want AWS WAF to search for, such as B[a@]dB[o0]t. You can then * configure AWS WAF to reject those requests. *

                  *

                  * To create and configure a RegexPatternSet, perform the following steps: *

                  *
                    *
                  1. *

                    * Use GetChangeToken to get the change token that you provide in the ChangeToken parameter of a * CreateRegexPatternSet request. *

                    *
                  2. *
                  3. *

                    * Submit a CreateRegexPatternSet request. *

                    *
                  4. *
                  5. *

                    * Use GetChangeToken to get the change token that you provide in the ChangeToken * parameter of an UpdateRegexPatternSet request. *

                    *
                  6. *
                  7. *

                    * Submit an UpdateRegexPatternSet request to specify the string that you want AWS WAF to watch for. *

                    *
                  8. *
                  *

                  * For more information about how to use the AWS WAF API to allow or block HTTP requests, see the AWS WAF Developer Guide. *

                  *
                  *

                  * This is a convenience which creates an instance of the {@link CreateRegexPatternSetRequest.Builder} avoiding the * need to create one manually via {@link CreateRegexPatternSetRequest#builder()} *

                  * * @param createRegexPatternSetRequest * A {@link Consumer} that will call methods on * {@link software.amazon.awssdk.services.waf.model.CreateRegexPatternSetRequest.Builder} to create a * request. * @return Result of the CreateRegexPatternSet operation returned by the service. * @throws WafStaleDataException * The operation failed because you tried to create, update, or delete an object by using a change token * that has already been used. * @throws WafInternalErrorException * The operation failed because of a system problem, even though the request was valid. Retry your request. * @throws WafDisallowedNameException * The name specified is invalid. * @throws WafLimitsExceededException * The operation exceeds a resource limit, for example, the maximum number of WebACL objects * that you can create for an AWS account. For more information, see Limits in the AWS WAF * Developer Guide. * @throws SdkException * Base class for all exceptions that can be thrown by the SDK (both service and client). Can be used for * catch all scenarios. * @throws SdkClientException * If any client side error occurs such as an IO related failure, failure to get credentials, etc. * @throws WafException * Base class for all service exceptions. Unknown exceptions will be thrown as an instance of this type. * @sample WafClient.CreateRegexPatternSet * @see AWS API * Documentation */ default CreateRegexPatternSetResponse createRegexPatternSet( Consumer createRegexPatternSetRequest) throws WafStaleDataException, WafInternalErrorException, WafDisallowedNameException, WafLimitsExceededException, AwsServiceException, SdkClientException, WafException { return createRegexPatternSet(CreateRegexPatternSetRequest.builder().applyMutation(createRegexPatternSetRequest).build()); } /** * *

                  * This is AWS WAF Classic documentation. For more information, see AWS WAF Classic in the * developer guide. *

                  *

                  * For the latest version of AWS WAF, use the AWS WAFV2 API and see the AWS WAF Developer Guide. With * the latest version, AWS WAF has a single set of endpoints for regional and global use. *

                  *
                  *

                  * Creates a Rule, which contains the IPSet objects, ByteMatchSet objects, * and other predicates that identify the requests that you want to block. If you add more than one predicate to a * Rule, a request must match all of the specifications to be allowed or blocked. For example, suppose * that you add the following to a Rule: *

                  *
                    *
                  • *

                    * An IPSet that matches the IP address 192.0.2.44/32 *

                    *
                  • *
                  • *

                    * A ByteMatchSet that matches BadBot in the User-Agent header *

                    *
                  • *
                  *

                  * You then add the Rule to a WebACL and specify that you want to blocks requests that * satisfy the Rule. For a request to be blocked, it must come from the IP address 192.0.2.44 * and the User-Agent header in the request must contain the value BadBot. *

                  *

                  * To create and configure a Rule, perform the following steps: *

                  *
                    *
                  1. *

                    * Create and update the predicates that you want to include in the Rule. For more information, see * CreateByteMatchSet, CreateIPSet, and CreateSqlInjectionMatchSet. *

                    *
                  2. *
                  3. *

                    * Use GetChangeToken to get the change token that you provide in the ChangeToken parameter of a * CreateRule request. *

                    *
                  4. *
                  5. *

                    * Submit a CreateRule request. *

                    *
                  6. *
                  7. *

                    * Use GetChangeToken to get the change token that you provide in the ChangeToken * parameter of an UpdateRule request. *

                    *
                  8. *
                  9. *

                    * Submit an UpdateRule request to specify the predicates that you want to include in the * Rule. *

                    *
                  10. *
                  11. *

                    * Create and update a WebACL that contains the Rule. For more information, see * CreateWebACL. *

                    *
                  12. *
                  *

                  * For more information about how to use the AWS WAF API to allow or block HTTP requests, see the AWS WAF Developer Guide. *

                  * * @param createRuleRequest * @return Result of the CreateRule operation returned by the service. * @throws WafStaleDataException * The operation failed because you tried to create, update, or delete an object by using a change token * that has already been used. * @throws WafInternalErrorException * The operation failed because of a system problem, even though the request was valid. Retry your request. * @throws WafDisallowedNameException * The name specified is invalid. * @throws WafInvalidParameterException * The operation failed because AWS WAF didn't recognize a parameter in the request. For example:

                  *
                    *
                  • *

                    * You specified an invalid parameter name. *

                    *
                  • *
                  • *

                    * You specified an invalid value. *

                    *
                  • *
                  • *

                    * You tried to update an object (ByteMatchSet, IPSet, Rule, or * WebACL) using an action other than INSERT or DELETE. *

                    *
                  • *
                  • *

                    * You tried to create a WebACL with a DefaultAction Type other than * ALLOW, BLOCK, or COUNT. *

                    *
                  • *
                  • *

                    * You tried to create a RateBasedRule with a RateKey value other than * IP. *

                    *
                  • *
                  • *

                    * You tried to update a WebACL with a WafAction Type other than * ALLOW, BLOCK, or COUNT. *

                    *
                  • *
                  • *

                    * You tried to update a ByteMatchSet with a FieldToMatch Type other * than HEADER, METHOD, QUERY_STRING, URI, or BODY. *

                    *
                  • *
                  • *

                    * You tried to update a ByteMatchSet with a Field of HEADER but no * value for Data. *

                    *
                  • *
                  • *

                    * Your request references an ARN that is malformed, or corresponds to a resource with which a web ACL * cannot be associated. *

                    *
                  • * @throws WafLimitsExceededException * The operation exceeds a resource limit, for example, the maximum number of WebACL objects * that you can create for an AWS account. For more information, see Limits in the AWS WAF * Developer Guide. * @throws WafTagOperationException * @throws WafTagOperationInternalErrorException * @throws WafBadRequestException * @throws SdkException * Base class for all exceptions that can be thrown by the SDK (both service and client). Can be used for * catch all scenarios. * @throws SdkClientException * If any client side error occurs such as an IO related failure, failure to get credentials, etc. * @throws WafException * Base class for all service exceptions. Unknown exceptions will be thrown as an instance of this type. * @sample WafClient.CreateRule * @see AWS API * Documentation */ default CreateRuleResponse createRule(CreateRuleRequest createRuleRequest) throws WafStaleDataException, WafInternalErrorException, WafDisallowedNameException, WafInvalidParameterException, WafLimitsExceededException, WafTagOperationException, WafTagOperationInternalErrorException, WafBadRequestException, AwsServiceException, SdkClientException, WafException { throw new UnsupportedOperationException(); } /** * *

                    * This is AWS WAF Classic documentation. For more information, see AWS WAF Classic in the * developer guide. *

                    *

                    * For the latest version of AWS WAF, use the AWS WAFV2 API and see the AWS WAF Developer Guide. With * the latest version, AWS WAF has a single set of endpoints for regional and global use. *

                    *
                    *

                    * Creates a Rule, which contains the IPSet objects, ByteMatchSet objects, * and other predicates that identify the requests that you want to block. If you add more than one predicate to a * Rule, a request must match all of the specifications to be allowed or blocked. For example, suppose * that you add the following to a Rule: *

                    *
                      *
                    • *

                      * An IPSet that matches the IP address 192.0.2.44/32 *

                      *
                    • *
                    • *

                      * A ByteMatchSet that matches BadBot in the User-Agent header *

                      *
                    • *
                    *

                    * You then add the Rule to a WebACL and specify that you want to blocks requests that * satisfy the Rule. For a request to be blocked, it must come from the IP address 192.0.2.44 * and the User-Agent header in the request must contain the value BadBot. *

                    *

                    * To create and configure a Rule, perform the following steps: *

                    *
                      *
                    1. *

                      * Create and update the predicates that you want to include in the Rule. For more information, see * CreateByteMatchSet, CreateIPSet, and CreateSqlInjectionMatchSet. *

                      *
                    2. *
                    3. *

                      * Use GetChangeToken to get the change token that you provide in the ChangeToken parameter of a * CreateRule request. *

                      *
                    4. *
                    5. *

                      * Submit a CreateRule request. *

                      *
                    6. *
                    7. *

                      * Use GetChangeToken to get the change token that you provide in the ChangeToken * parameter of an UpdateRule request. *

                      *
                    8. *
                    9. *

                      * Submit an UpdateRule request to specify the predicates that you want to include in the * Rule. *

                      *
                    10. *
                    11. *

                      * Create and update a WebACL that contains the Rule. For more information, see * CreateWebACL. *

                      *
                    12. *
                    *

                    * For more information about how to use the AWS WAF API to allow or block HTTP requests, see the AWS WAF Developer Guide. *

                    *
                    *

                    * This is a convenience which creates an instance of the {@link CreateRuleRequest.Builder} avoiding the need to * create one manually via {@link CreateRuleRequest#builder()} *

                    * * @param createRuleRequest * A {@link Consumer} that will call methods on * {@link software.amazon.awssdk.services.waf.model.CreateRuleRequest.Builder} to create a request. * @return Result of the CreateRule operation returned by the service. * @throws WafStaleDataException * The operation failed because you tried to create, update, or delete an object by using a change token * that has already been used. * @throws WafInternalErrorException * The operation failed because of a system problem, even though the request was valid. Retry your request. * @throws WafDisallowedNameException * The name specified is invalid. * @throws WafInvalidParameterException * The operation failed because AWS WAF didn't recognize a parameter in the request. For example:

                    *
                      *
                    • *

                      * You specified an invalid parameter name. *

                      *
                    • *
                    • *

                      * You specified an invalid value. *

                      *
                    • *
                    • *

                      * You tried to update an object (ByteMatchSet, IPSet, Rule, or * WebACL) using an action other than INSERT or DELETE. *

                      *
                    • *
                    • *

                      * You tried to create a WebACL with a DefaultAction Type other than * ALLOW, BLOCK, or COUNT. *

                      *
                    • *
                    • *

                      * You tried to create a RateBasedRule with a RateKey value other than * IP. *

                      *
                    • *
                    • *

                      * You tried to update a WebACL with a WafAction Type other than * ALLOW, BLOCK, or COUNT. *

                      *
                    • *
                    • *

                      * You tried to update a ByteMatchSet with a FieldToMatch Type other * than HEADER, METHOD, QUERY_STRING, URI, or BODY. *

                      *
                    • *
                    • *

                      * You tried to update a ByteMatchSet with a Field of HEADER but no * value for Data. *

                      *
                    • *
                    • *

                      * Your request references an ARN that is malformed, or corresponds to a resource with which a web ACL * cannot be associated. *

                      *
                    • * @throws WafLimitsExceededException * The operation exceeds a resource limit, for example, the maximum number of WebACL objects * that you can create for an AWS account. For more information, see Limits in the AWS WAF * Developer Guide. * @throws WafTagOperationException * @throws WafTagOperationInternalErrorException * @throws WafBadRequestException * @throws SdkException * Base class for all exceptions that can be thrown by the SDK (both service and client). Can be used for * catch all scenarios. * @throws SdkClientException * If any client side error occurs such as an IO related failure, failure to get credentials, etc. * @throws WafException * Base class for all service exceptions. Unknown exceptions will be thrown as an instance of this type. * @sample WafClient.CreateRule * @see AWS API * Documentation */ default CreateRuleResponse createRule(Consumer createRuleRequest) throws WafStaleDataException, WafInternalErrorException, WafDisallowedNameException, WafInvalidParameterException, WafLimitsExceededException, WafTagOperationException, WafTagOperationInternalErrorException, WafBadRequestException, AwsServiceException, SdkClientException, WafException { return createRule(CreateRuleRequest.builder().applyMutation(createRuleRequest).build()); } /** * *

                      * This is AWS WAF Classic documentation. For more information, see AWS WAF Classic in the * developer guide. *

                      *

                      * For the latest version of AWS WAF, use the AWS WAFV2 API and see the AWS WAF Developer Guide. With * the latest version, AWS WAF has a single set of endpoints for regional and global use. *

                      *
                      *

                      * Creates a RuleGroup. A rule group is a collection of predefined rules that you add to a web ACL. You * use UpdateRuleGroup to add rules to the rule group. *

                      *

                      * Rule groups are subject to the following limits: *

                      *
                        *
                      • *

                        * Three rule groups per account. You can request an increase to this limit by contacting customer support. *

                        *
                      • *
                      • *

                        * One rule group per web ACL. *

                        *
                      • *
                      • *

                        * Ten rules per rule group. *

                        *
                      • *
                      *

                      * For more information about how to use the AWS WAF API to allow or block HTTP requests, see the AWS WAF Developer Guide. *

                      * * @param createRuleGroupRequest * @return Result of the CreateRuleGroup operation returned by the service. * @throws WafStaleDataException * The operation failed because you tried to create, update, or delete an object by using a change token * that has already been used. * @throws WafInternalErrorException * The operation failed because of a system problem, even though the request was valid. Retry your request. * @throws WafDisallowedNameException * The name specified is invalid. * @throws WafLimitsExceededException * The operation exceeds a resource limit, for example, the maximum number of WebACL objects * that you can create for an AWS account. For more information, see Limits in the AWS WAF * Developer Guide. * @throws WafTagOperationException * @throws WafTagOperationInternalErrorException * @throws WafBadRequestException * @throws SdkException * Base class for all exceptions that can be thrown by the SDK (both service and client). Can be used for * catch all scenarios. * @throws SdkClientException * If any client side error occurs such as an IO related failure, failure to get credentials, etc. * @throws WafException * Base class for all service exceptions. Unknown exceptions will be thrown as an instance of this type. * @sample WafClient.CreateRuleGroup * @see AWS API * Documentation */ default CreateRuleGroupResponse createRuleGroup(CreateRuleGroupRequest createRuleGroupRequest) throws WafStaleDataException, WafInternalErrorException, WafDisallowedNameException, WafLimitsExceededException, WafTagOperationException, WafTagOperationInternalErrorException, WafBadRequestException, AwsServiceException, SdkClientException, WafException { throw new UnsupportedOperationException(); } /** * *

                      * This is AWS WAF Classic documentation. For more information, see AWS WAF Classic in the * developer guide. *

                      *

                      * For the latest version of AWS WAF, use the AWS WAFV2 API and see the AWS WAF Developer Guide. With * the latest version, AWS WAF has a single set of endpoints for regional and global use. *

                      *
                      *

                      * Creates a RuleGroup. A rule group is a collection of predefined rules that you add to a web ACL. You * use UpdateRuleGroup to add rules to the rule group. *

                      *

                      * Rule groups are subject to the following limits: *

                      *
                        *
                      • *

                        * Three rule groups per account. You can request an increase to this limit by contacting customer support. *

                        *
                      • *
                      • *

                        * One rule group per web ACL. *

                        *
                      • *
                      • *

                        * Ten rules per rule group. *

                        *
                      • *
                      *

                      * For more information about how to use the AWS WAF API to allow or block HTTP requests, see the AWS WAF Developer Guide. *

                      *
                      *

                      * This is a convenience which creates an instance of the {@link CreateRuleGroupRequest.Builder} avoiding the need * to create one manually via {@link CreateRuleGroupRequest#builder()} *

                      * * @param createRuleGroupRequest * A {@link Consumer} that will call methods on * {@link software.amazon.awssdk.services.waf.model.CreateRuleGroupRequest.Builder} to create a request. * @return Result of the CreateRuleGroup operation returned by the service. * @throws WafStaleDataException * The operation failed because you tried to create, update, or delete an object by using a change token * that has already been used. * @throws WafInternalErrorException * The operation failed because of a system problem, even though the request was valid. Retry your request. * @throws WafDisallowedNameException * The name specified is invalid. * @throws WafLimitsExceededException * The operation exceeds a resource limit, for example, the maximum number of WebACL objects * that you can create for an AWS account. For more information, see Limits in the AWS WAF * Developer Guide. * @throws WafTagOperationException * @throws WafTagOperationInternalErrorException * @throws WafBadRequestException * @throws SdkException * Base class for all exceptions that can be thrown by the SDK (both service and client). Can be used for * catch all scenarios. * @throws SdkClientException * If any client side error occurs such as an IO related failure, failure to get credentials, etc. * @throws WafException * Base class for all service exceptions. Unknown exceptions will be thrown as an instance of this type. * @sample WafClient.CreateRuleGroup * @see AWS API * Documentation */ default CreateRuleGroupResponse createRuleGroup(Consumer createRuleGroupRequest) throws WafStaleDataException, WafInternalErrorException, WafDisallowedNameException, WafLimitsExceededException, WafTagOperationException, WafTagOperationInternalErrorException, WafBadRequestException, AwsServiceException, SdkClientException, WafException { return createRuleGroup(CreateRuleGroupRequest.builder().applyMutation(createRuleGroupRequest).build()); } /** * *

                      * This is AWS WAF Classic documentation. For more information, see AWS WAF Classic in the * developer guide. *

                      *

                      * For the latest version of AWS WAF, use the AWS WAFV2 API and see the AWS WAF Developer Guide. With * the latest version, AWS WAF has a single set of endpoints for regional and global use. *

                      *
                      *

                      * Creates a SizeConstraintSet. You then use UpdateSizeConstraintSet to identify the part of a * web request that you want AWS WAF to check for length, such as the length of the User-Agent header * or the length of the query string. For example, you can create a SizeConstraintSet that matches any * requests that have a query string that is longer than 100 bytes. You can then configure AWS WAF to reject those * requests. *

                      *

                      * To create and configure a SizeConstraintSet, perform the following steps: *

                      *
                        *
                      1. *

                        * Use GetChangeToken to get the change token that you provide in the ChangeToken parameter of a * CreateSizeConstraintSet request. *

                        *
                      2. *
                      3. *

                        * Submit a CreateSizeConstraintSet request. *

                        *
                      4. *
                      5. *

                        * Use GetChangeToken to get the change token that you provide in the ChangeToken * parameter of an UpdateSizeConstraintSet request. *

                        *
                      6. *
                      7. *

                        * Submit an UpdateSizeConstraintSet request to specify the part of the request that you want AWS WAF to * inspect (for example, the header or the URI) and the value that you want AWS WAF to watch for. *

                        *
                      8. *
                      *

                      * For more information about how to use the AWS WAF API to allow or block HTTP requests, see the AWS WAF Developer Guide. *

                      * * @param createSizeConstraintSetRequest * @return Result of the CreateSizeConstraintSet operation returned by the service. * @throws WafStaleDataException * The operation failed because you tried to create, update, or delete an object by using a change token * that has already been used. * @throws WafInternalErrorException * The operation failed because of a system problem, even though the request was valid. Retry your request. * @throws WafInvalidAccountException * The operation failed because you tried to create, update, or delete an object by using an invalid account * identifier. * @throws WafDisallowedNameException * The name specified is invalid. * @throws WafInvalidParameterException * The operation failed because AWS WAF didn't recognize a parameter in the request. For example:

                      *
                        *
                      • *

                        * You specified an invalid parameter name. *

                        *
                      • *
                      • *

                        * You specified an invalid value. *

                        *
                      • *
                      • *

                        * You tried to update an object (ByteMatchSet, IPSet, Rule, or * WebACL) using an action other than INSERT or DELETE. *

                        *
                      • *
                      • *

                        * You tried to create a WebACL with a DefaultAction Type other than * ALLOW, BLOCK, or COUNT. *

                        *
                      • *
                      • *

                        * You tried to create a RateBasedRule with a RateKey value other than * IP. *

                        *
                      • *
                      • *

                        * You tried to update a WebACL with a WafAction Type other than * ALLOW, BLOCK, or COUNT. *

                        *
                      • *
                      • *

                        * You tried to update a ByteMatchSet with a FieldToMatch Type other * than HEADER, METHOD, QUERY_STRING, URI, or BODY. *

                        *
                      • *
                      • *

                        * You tried to update a ByteMatchSet with a Field of HEADER but no * value for Data. *

                        *
                      • *
                      • *

                        * Your request references an ARN that is malformed, or corresponds to a resource with which a web ACL * cannot be associated. *

                        *
                      • * @throws WafLimitsExceededException * The operation exceeds a resource limit, for example, the maximum number of WebACL objects * that you can create for an AWS account. For more information, see Limits in the AWS WAF * Developer Guide. * @throws SdkException * Base class for all exceptions that can be thrown by the SDK (both service and client). Can be used for * catch all scenarios. * @throws SdkClientException * If any client side error occurs such as an IO related failure, failure to get credentials, etc. * @throws WafException * Base class for all service exceptions. Unknown exceptions will be thrown as an instance of this type. * @sample WafClient.CreateSizeConstraintSet * @see AWS * API Documentation */ default CreateSizeConstraintSetResponse createSizeConstraintSet(CreateSizeConstraintSetRequest createSizeConstraintSetRequest) throws WafStaleDataException, WafInternalErrorException, WafInvalidAccountException, WafDisallowedNameException, WafInvalidParameterException, WafLimitsExceededException, AwsServiceException, SdkClientException, WafException { throw new UnsupportedOperationException(); } /** * *

                        * This is AWS WAF Classic documentation. For more information, see AWS WAF Classic in the * developer guide. *

                        *

                        * For the latest version of AWS WAF, use the AWS WAFV2 API and see the AWS WAF Developer Guide. With * the latest version, AWS WAF has a single set of endpoints for regional and global use. *

                        *
                        *

                        * Creates a SizeConstraintSet. You then use UpdateSizeConstraintSet to identify the part of a * web request that you want AWS WAF to check for length, such as the length of the User-Agent header * or the length of the query string. For example, you can create a SizeConstraintSet that matches any * requests that have a query string that is longer than 100 bytes. You can then configure AWS WAF to reject those * requests. *

                        *

                        * To create and configure a SizeConstraintSet, perform the following steps: *

                        *
                          *
                        1. *

                          * Use GetChangeToken to get the change token that you provide in the ChangeToken parameter of a * CreateSizeConstraintSet request. *

                          *
                        2. *
                        3. *

                          * Submit a CreateSizeConstraintSet request. *

                          *
                        4. *
                        5. *

                          * Use GetChangeToken to get the change token that you provide in the ChangeToken * parameter of an UpdateSizeConstraintSet request. *

                          *
                        6. *
                        7. *

                          * Submit an UpdateSizeConstraintSet request to specify the part of the request that you want AWS WAF to * inspect (for example, the header or the URI) and the value that you want AWS WAF to watch for. *

                          *
                        8. *
                        *

                        * For more information about how to use the AWS WAF API to allow or block HTTP requests, see the AWS WAF Developer Guide. *

                        *
                        *

                        * This is a convenience which creates an instance of the {@link CreateSizeConstraintSetRequest.Builder} avoiding * the need to create one manually via {@link CreateSizeConstraintSetRequest#builder()} *

                        * * @param createSizeConstraintSetRequest * A {@link Consumer} that will call methods on * {@link software.amazon.awssdk.services.waf.model.CreateSizeConstraintSetRequest.Builder} to create a * request. * @return Result of the CreateSizeConstraintSet operation returned by the service. * @throws WafStaleDataException * The operation failed because you tried to create, update, or delete an object by using a change token * that has already been used. * @throws WafInternalErrorException * The operation failed because of a system problem, even though the request was valid. Retry your request. * @throws WafInvalidAccountException * The operation failed because you tried to create, update, or delete an object by using an invalid account * identifier. * @throws WafDisallowedNameException * The name specified is invalid. * @throws WafInvalidParameterException * The operation failed because AWS WAF didn't recognize a parameter in the request. For example:

                        *
                          *
                        • *

                          * You specified an invalid parameter name. *

                          *
                        • *
                        • *

                          * You specified an invalid value. *

                          *
                        • *
                        • *

                          * You tried to update an object (ByteMatchSet, IPSet, Rule, or * WebACL) using an action other than INSERT or DELETE. *

                          *
                        • *
                        • *

                          * You tried to create a WebACL with a DefaultAction Type other than * ALLOW, BLOCK, or COUNT. *

                          *
                        • *
                        • *

                          * You tried to create a RateBasedRule with a RateKey value other than * IP. *

                          *
                        • *
                        • *

                          * You tried to update a WebACL with a WafAction Type other than * ALLOW, BLOCK, or COUNT. *

                          *
                        • *
                        • *

                          * You tried to update a ByteMatchSet with a FieldToMatch Type other * than HEADER, METHOD, QUERY_STRING, URI, or BODY. *

                          *
                        • *
                        • *

                          * You tried to update a ByteMatchSet with a Field of HEADER but no * value for Data. *

                          *
                        • *
                        • *

                          * Your request references an ARN that is malformed, or corresponds to a resource with which a web ACL * cannot be associated. *

                          *
                        • * @throws WafLimitsExceededException * The operation exceeds a resource limit, for example, the maximum number of WebACL objects * that you can create for an AWS account. For more information, see Limits in the AWS WAF * Developer Guide. * @throws SdkException * Base class for all exceptions that can be thrown by the SDK (both service and client). Can be used for * catch all scenarios. * @throws SdkClientException * If any client side error occurs such as an IO related failure, failure to get credentials, etc. * @throws WafException * Base class for all service exceptions. Unknown exceptions will be thrown as an instance of this type. * @sample WafClient.CreateSizeConstraintSet * @see AWS * API Documentation */ default CreateSizeConstraintSetResponse createSizeConstraintSet( Consumer createSizeConstraintSetRequest) throws WafStaleDataException, WafInternalErrorException, WafInvalidAccountException, WafDisallowedNameException, WafInvalidParameterException, WafLimitsExceededException, AwsServiceException, SdkClientException, WafException { return createSizeConstraintSet(CreateSizeConstraintSetRequest.builder().applyMutation(createSizeConstraintSetRequest) .build()); } /** * *

                          * This is AWS WAF Classic documentation. For more information, see AWS WAF Classic in the * developer guide. *

                          *

                          * For the latest version of AWS WAF, use the AWS WAFV2 API and see the AWS WAF Developer Guide. With * the latest version, AWS WAF has a single set of endpoints for regional and global use. *

                          *
                          *

                          * Creates a SqlInjectionMatchSet, which you use to allow, block, or count requests that contain snippets of * SQL code in a specified part of web requests. AWS WAF searches for character sequences that are likely to be * malicious strings. *

                          *

                          * To create and configure a SqlInjectionMatchSet, perform the following steps: *

                          *
                            *
                          1. *

                            * Use GetChangeToken to get the change token that you provide in the ChangeToken parameter of a * CreateSqlInjectionMatchSet request. *

                            *
                          2. *
                          3. *

                            * Submit a CreateSqlInjectionMatchSet request. *

                            *
                          4. *
                          5. *

                            * Use GetChangeToken to get the change token that you provide in the ChangeToken * parameter of an UpdateSqlInjectionMatchSet request. *

                            *
                          6. *
                          7. *

                            * Submit an UpdateSqlInjectionMatchSet request to specify the parts of web requests in which you want to * allow, block, or count malicious SQL code. *

                            *
                          8. *
                          *

                          * For more information about how to use the AWS WAF API to allow or block HTTP requests, see the AWS WAF Developer Guide. *

                          * * @param createSqlInjectionMatchSetRequest * A request to create a SqlInjectionMatchSet. * @return Result of the CreateSqlInjectionMatchSet operation returned by the service. * @throws WafDisallowedNameException * The name specified is invalid. * @throws WafInternalErrorException * The operation failed because of a system problem, even though the request was valid. Retry your request. * @throws WafInvalidAccountException * The operation failed because you tried to create, update, or delete an object by using an invalid account * identifier. * @throws WafInvalidParameterException * The operation failed because AWS WAF didn't recognize a parameter in the request. For example:

                          *
                            *
                          • *

                            * You specified an invalid parameter name. *

                            *
                          • *
                          • *

                            * You specified an invalid value. *

                            *
                          • *
                          • *

                            * You tried to update an object (ByteMatchSet, IPSet, Rule, or * WebACL) using an action other than INSERT or DELETE. *

                            *
                          • *
                          • *

                            * You tried to create a WebACL with a DefaultAction Type other than * ALLOW, BLOCK, or COUNT. *

                            *
                          • *
                          • *

                            * You tried to create a RateBasedRule with a RateKey value other than * IP. *

                            *
                          • *
                          • *

                            * You tried to update a WebACL with a WafAction Type other than * ALLOW, BLOCK, or COUNT. *

                            *
                          • *
                          • *

                            * You tried to update a ByteMatchSet with a FieldToMatch Type other * than HEADER, METHOD, QUERY_STRING, URI, or BODY. *

                            *
                          • *
                          • *

                            * You tried to update a ByteMatchSet with a Field of HEADER but no * value for Data. *

                            *
                          • *
                          • *

                            * Your request references an ARN that is malformed, or corresponds to a resource with which a web ACL * cannot be associated. *

                            *
                          • * @throws WafStaleDataException * The operation failed because you tried to create, update, or delete an object by using a change token * that has already been used. * @throws WafLimitsExceededException * The operation exceeds a resource limit, for example, the maximum number of WebACL objects * that you can create for an AWS account. For more information, see Limits in the AWS WAF * Developer Guide. * @throws SdkException * Base class for all exceptions that can be thrown by the SDK (both service and client). Can be used for * catch all scenarios. * @throws SdkClientException * If any client side error occurs such as an IO related failure, failure to get credentials, etc. * @throws WafException * Base class for all service exceptions. Unknown exceptions will be thrown as an instance of this type. * @sample WafClient.CreateSqlInjectionMatchSet * @see AWS API Documentation */ default CreateSqlInjectionMatchSetResponse createSqlInjectionMatchSet( CreateSqlInjectionMatchSetRequest createSqlInjectionMatchSetRequest) throws WafDisallowedNameException, WafInternalErrorException, WafInvalidAccountException, WafInvalidParameterException, WafStaleDataException, WafLimitsExceededException, AwsServiceException, SdkClientException, WafException { throw new UnsupportedOperationException(); } /** * *

                            * This is AWS WAF Classic documentation. For more information, see AWS WAF Classic in the * developer guide. *

                            *

                            * For the latest version of AWS WAF, use the AWS WAFV2 API and see the AWS WAF Developer Guide. With * the latest version, AWS WAF has a single set of endpoints for regional and global use. *

                            *
                            *

                            * Creates a SqlInjectionMatchSet, which you use to allow, block, or count requests that contain snippets of * SQL code in a specified part of web requests. AWS WAF searches for character sequences that are likely to be * malicious strings. *

                            *

                            * To create and configure a SqlInjectionMatchSet, perform the following steps: *

                            *
                              *
                            1. *

                              * Use GetChangeToken to get the change token that you provide in the ChangeToken parameter of a * CreateSqlInjectionMatchSet request. *

                              *
                            2. *
                            3. *

                              * Submit a CreateSqlInjectionMatchSet request. *

                              *
                            4. *
                            5. *

                              * Use GetChangeToken to get the change token that you provide in the ChangeToken * parameter of an UpdateSqlInjectionMatchSet request. *

                              *
                            6. *
                            7. *

                              * Submit an UpdateSqlInjectionMatchSet request to specify the parts of web requests in which you want to * allow, block, or count malicious SQL code. *

                              *
                            8. *
                            *

                            * For more information about how to use the AWS WAF API to allow or block HTTP requests, see the AWS WAF Developer Guide. *

                            *
                            *

                            * This is a convenience which creates an instance of the {@link CreateSqlInjectionMatchSetRequest.Builder} avoiding * the need to create one manually via {@link CreateSqlInjectionMatchSetRequest#builder()} *

                            * * @param createSqlInjectionMatchSetRequest * A {@link Consumer} that will call methods on * {@link software.amazon.awssdk.services.waf.model.CreateSqlInjectionMatchSetRequest.Builder} to create a * request. A request to create a SqlInjectionMatchSet. * @return Result of the CreateSqlInjectionMatchSet operation returned by the service. * @throws WafDisallowedNameException * The name specified is invalid. * @throws WafInternalErrorException * The operation failed because of a system problem, even though the request was valid. Retry your request. * @throws WafInvalidAccountException * The operation failed because you tried to create, update, or delete an object by using an invalid account * identifier. * @throws WafInvalidParameterException * The operation failed because AWS WAF didn't recognize a parameter in the request. For example:

                            *
                              *
                            • *

                              * You specified an invalid parameter name. *

                              *
                            • *
                            • *

                              * You specified an invalid value. *

                              *
                            • *
                            • *

                              * You tried to update an object (ByteMatchSet, IPSet, Rule, or * WebACL) using an action other than INSERT or DELETE. *

                              *
                            • *
                            • *

                              * You tried to create a WebACL with a DefaultAction Type other than * ALLOW, BLOCK, or COUNT. *

                              *
                            • *
                            • *

                              * You tried to create a RateBasedRule with a RateKey value other than * IP. *

                              *
                            • *
                            • *

                              * You tried to update a WebACL with a WafAction Type other than * ALLOW, BLOCK, or COUNT. *

                              *
                            • *
                            • *

                              * You tried to update a ByteMatchSet with a FieldToMatch Type other * than HEADER, METHOD, QUERY_STRING, URI, or BODY. *

                              *
                            • *
                            • *

                              * You tried to update a ByteMatchSet with a Field of HEADER but no * value for Data. *

                              *
                            • *
                            • *

                              * Your request references an ARN that is malformed, or corresponds to a resource with which a web ACL * cannot be associated. *

                              *
                            • * @throws WafStaleDataException * The operation failed because you tried to create, update, or delete an object by using a change token * that has already been used. * @throws WafLimitsExceededException * The operation exceeds a resource limit, for example, the maximum number of WebACL objects * that you can create for an AWS account. For more information, see Limits in the AWS WAF * Developer Guide. * @throws SdkException * Base class for all exceptions that can be thrown by the SDK (both service and client). Can be used for * catch all scenarios. * @throws SdkClientException * If any client side error occurs such as an IO related failure, failure to get credentials, etc. * @throws WafException * Base class for all service exceptions. Unknown exceptions will be thrown as an instance of this type. * @sample WafClient.CreateSqlInjectionMatchSet * @see AWS API Documentation */ default CreateSqlInjectionMatchSetResponse createSqlInjectionMatchSet( Consumer createSqlInjectionMatchSetRequest) throws WafDisallowedNameException, WafInternalErrorException, WafInvalidAccountException, WafInvalidParameterException, WafStaleDataException, WafLimitsExceededException, AwsServiceException, SdkClientException, WafException { return createSqlInjectionMatchSet(CreateSqlInjectionMatchSetRequest.builder() .applyMutation(createSqlInjectionMatchSetRequest).build()); } /** * *

                              * This is AWS WAF Classic documentation. For more information, see AWS WAF Classic in the * developer guide. *

                              *

                              * For the latest version of AWS WAF, use the AWS WAFV2 API and see the AWS WAF Developer Guide. With * the latest version, AWS WAF has a single set of endpoints for regional and global use. *

                              *
                              *

                              * Creates a WebACL, which contains the Rules that identify the CloudFront web requests * that you want to allow, block, or count. AWS WAF evaluates Rules in order based on the value of * Priority for each Rule. *

                              *

                              * You also specify a default action, either ALLOW or BLOCK. If a web request doesn't * match any of the Rules in a WebACL, AWS WAF responds to the request with the default * action. *

                              *

                              * To create and configure a WebACL, perform the following steps: *

                              *
                                *
                              1. *

                                * Create and update the ByteMatchSet objects and other predicates that you want to include in * Rules. For more information, see CreateByteMatchSet, UpdateByteMatchSet, * CreateIPSet, UpdateIPSet, CreateSqlInjectionMatchSet, and UpdateSqlInjectionMatchSet. *

                                *
                              2. *
                              3. *

                                * Create and update the Rules that you want to include in the WebACL. For more * information, see CreateRule and UpdateRule. *

                                *
                              4. *
                              5. *

                                * Use GetChangeToken to get the change token that you provide in the ChangeToken parameter of a * CreateWebACL request. *

                                *
                              6. *
                              7. *

                                * Submit a CreateWebACL request. *

                                *
                              8. *
                              9. *

                                * Use GetChangeToken to get the change token that you provide in the ChangeToken * parameter of an UpdateWebACL request. *

                                *
                              10. *
                              11. *

                                * Submit an UpdateWebACL request to specify the Rules that you want to include in the * WebACL, to specify the default action, and to associate the WebACL with a CloudFront * distribution. *

                                *
                              12. *
                              *

                              * For more information about how to use the AWS WAF API, see the AWS WAF Developer Guide. *

                              * * @param createWebAclRequest * @return Result of the CreateWebACL operation returned by the service. * @throws WafStaleDataException * The operation failed because you tried to create, update, or delete an object by using a change token * that has already been used. * @throws WafInternalErrorException * The operation failed because of a system problem, even though the request was valid. Retry your request. * @throws WafInvalidAccountException * The operation failed because you tried to create, update, or delete an object by using an invalid account * identifier. * @throws WafDisallowedNameException * The name specified is invalid. * @throws WafInvalidParameterException * The operation failed because AWS WAF didn't recognize a parameter in the request. For example:

                              *
                                *
                              • *

                                * You specified an invalid parameter name. *

                                *
                              • *
                              • *

                                * You specified an invalid value. *

                                *
                              • *
                              • *

                                * You tried to update an object (ByteMatchSet, IPSet, Rule, or * WebACL) using an action other than INSERT or DELETE. *

                                *
                              • *
                              • *

                                * You tried to create a WebACL with a DefaultAction Type other than * ALLOW, BLOCK, or COUNT. *

                                *
                              • *
                              • *

                                * You tried to create a RateBasedRule with a RateKey value other than * IP. *

                                *
                              • *
                              • *

                                * You tried to update a WebACL with a WafAction Type other than * ALLOW, BLOCK, or COUNT. *

                                *
                              • *
                              • *

                                * You tried to update a ByteMatchSet with a FieldToMatch Type other * than HEADER, METHOD, QUERY_STRING, URI, or BODY. *

                                *
                              • *
                              • *

                                * You tried to update a ByteMatchSet with a Field of HEADER but no * value for Data. *

                                *
                              • *
                              • *

                                * Your request references an ARN that is malformed, or corresponds to a resource with which a web ACL * cannot be associated. *

                                *
                              • * @throws WafLimitsExceededException * The operation exceeds a resource limit, for example, the maximum number of WebACL objects * that you can create for an AWS account. For more information, see Limits in the AWS WAF * Developer Guide. * @throws WafTagOperationException * @throws WafTagOperationInternalErrorException * @throws WafBadRequestException * @throws SdkException * Base class for all exceptions that can be thrown by the SDK (both service and client). Can be used for * catch all scenarios. * @throws SdkClientException * If any client side error occurs such as an IO related failure, failure to get credentials, etc. * @throws WafException * Base class for all service exceptions. Unknown exceptions will be thrown as an instance of this type. * @sample WafClient.CreateWebACL * @see AWS API * Documentation */ default CreateWebAclResponse createWebACL(CreateWebAclRequest createWebAclRequest) throws WafStaleDataException, WafInternalErrorException, WafInvalidAccountException, WafDisallowedNameException, WafInvalidParameterException, WafLimitsExceededException, WafTagOperationException, WafTagOperationInternalErrorException, WafBadRequestException, AwsServiceException, SdkClientException, WafException { throw new UnsupportedOperationException(); } /** * *

                                * This is AWS WAF Classic documentation. For more information, see AWS WAF Classic in the * developer guide. *

                                *

                                * For the latest version of AWS WAF, use the AWS WAFV2 API and see the AWS WAF Developer Guide. With * the latest version, AWS WAF has a single set of endpoints for regional and global use. *

                                *
                                *

                                * Creates a WebACL, which contains the Rules that identify the CloudFront web requests * that you want to allow, block, or count. AWS WAF evaluates Rules in order based on the value of * Priority for each Rule. *

                                *

                                * You also specify a default action, either ALLOW or BLOCK. If a web request doesn't * match any of the Rules in a WebACL, AWS WAF responds to the request with the default * action. *

                                *

                                * To create and configure a WebACL, perform the following steps: *

                                *
                                  *
                                1. *

                                  * Create and update the ByteMatchSet objects and other predicates that you want to include in * Rules. For more information, see CreateByteMatchSet, UpdateByteMatchSet, * CreateIPSet, UpdateIPSet, CreateSqlInjectionMatchSet, and UpdateSqlInjectionMatchSet. *

                                  *
                                2. *
                                3. *

                                  * Create and update the Rules that you want to include in the WebACL. For more * information, see CreateRule and UpdateRule. *

                                  *
                                4. *
                                5. *

                                  * Use GetChangeToken to get the change token that you provide in the ChangeToken parameter of a * CreateWebACL request. *

                                  *
                                6. *
                                7. *

                                  * Submit a CreateWebACL request. *

                                  *
                                8. *
                                9. *

                                  * Use GetChangeToken to get the change token that you provide in the ChangeToken * parameter of an UpdateWebACL request. *

                                  *
                                10. *
                                11. *

                                  * Submit an UpdateWebACL request to specify the Rules that you want to include in the * WebACL, to specify the default action, and to associate the WebACL with a CloudFront * distribution. *

                                  *
                                12. *
                                *

                                * For more information about how to use the AWS WAF API, see the AWS WAF Developer Guide. *

                                *
                                *

                                * This is a convenience which creates an instance of the {@link CreateWebAclRequest.Builder} avoiding the need to * create one manually via {@link CreateWebAclRequest#builder()} *

                                * * @param createWebAclRequest * A {@link Consumer} that will call methods on * {@link software.amazon.awssdk.services.waf.model.CreateWebAclRequest.Builder} to create a request. * @return Result of the CreateWebACL operation returned by the service. * @throws WafStaleDataException * The operation failed because you tried to create, update, or delete an object by using a change token * that has already been used. * @throws WafInternalErrorException * The operation failed because of a system problem, even though the request was valid. Retry your request. * @throws WafInvalidAccountException * The operation failed because you tried to create, update, or delete an object by using an invalid account * identifier. * @throws WafDisallowedNameException * The name specified is invalid. * @throws WafInvalidParameterException * The operation failed because AWS WAF didn't recognize a parameter in the request. For example:

                                *
                                  *
                                • *

                                  * You specified an invalid parameter name. *

                                  *
                                • *
                                • *

                                  * You specified an invalid value. *

                                  *
                                • *
                                • *

                                  * You tried to update an object (ByteMatchSet, IPSet, Rule, or * WebACL) using an action other than INSERT or DELETE. *

                                  *
                                • *
                                • *

                                  * You tried to create a WebACL with a DefaultAction Type other than * ALLOW, BLOCK, or COUNT. *

                                  *
                                • *
                                • *

                                  * You tried to create a RateBasedRule with a RateKey value other than * IP. *

                                  *
                                • *
                                • *

                                  * You tried to update a WebACL with a WafAction Type other than * ALLOW, BLOCK, or COUNT. *

                                  *
                                • *
                                • *

                                  * You tried to update a ByteMatchSet with a FieldToMatch Type other * than HEADER, METHOD, QUERY_STRING, URI, or BODY. *

                                  *
                                • *
                                • *

                                  * You tried to update a ByteMatchSet with a Field of HEADER but no * value for Data. *

                                  *
                                • *
                                • *

                                  * Your request references an ARN that is malformed, or corresponds to a resource with which a web ACL * cannot be associated. *

                                  *
                                • * @throws WafLimitsExceededException * The operation exceeds a resource limit, for example, the maximum number of WebACL objects * that you can create for an AWS account. For more information, see Limits in the AWS WAF * Developer Guide. * @throws WafTagOperationException * @throws WafTagOperationInternalErrorException * @throws WafBadRequestException * @throws SdkException * Base class for all exceptions that can be thrown by the SDK (both service and client). Can be used for * catch all scenarios. * @throws SdkClientException * If any client side error occurs such as an IO related failure, failure to get credentials, etc. * @throws WafException * Base class for all service exceptions. Unknown exceptions will be thrown as an instance of this type. * @sample WafClient.CreateWebACL * @see AWS API * Documentation */ default CreateWebAclResponse createWebACL(Consumer createWebAclRequest) throws WafStaleDataException, WafInternalErrorException, WafInvalidAccountException, WafDisallowedNameException, WafInvalidParameterException, WafLimitsExceededException, WafTagOperationException, WafTagOperationInternalErrorException, WafBadRequestException, AwsServiceException, SdkClientException, WafException { return createWebACL(CreateWebAclRequest.builder().applyMutation(createWebAclRequest).build()); } /** *

                                  * Creates an AWS CloudFormation WAFV2 template for the specified web ACL in the specified Amazon S3 bucket. Then, * in CloudFormation, you create a stack from the template, to create the web ACL and its resources in AWS WAFV2. * Use this to migrate your AWS WAF Classic web ACL to the latest version of AWS WAF. *

                                  *

                                  * This is part of a larger migration procedure for web ACLs from AWS WAF Classic to the latest version of AWS WAF. * For the full procedure, including caveats and manual steps to complete the migration and switch over to the new * web ACL, see Migrating your AWS * WAF Classic resources to AWS WAF in the AWS WAF Developer Guide. *

                                  * * @param createWebAclMigrationStackRequest * @return Result of the CreateWebACLMigrationStack operation returned by the service. * @throws WafInternalErrorException * The operation failed because of a system problem, even though the request was valid. Retry your request. * @throws WafInvalidParameterException * The operation failed because AWS WAF didn't recognize a parameter in the request. For example:

                                  *
                                    *
                                  • *

                                    * You specified an invalid parameter name. *

                                    *
                                  • *
                                  • *

                                    * You specified an invalid value. *

                                    *
                                  • *
                                  • *

                                    * You tried to update an object (ByteMatchSet, IPSet, Rule, or * WebACL) using an action other than INSERT or DELETE. *

                                    *
                                  • *
                                  • *

                                    * You tried to create a WebACL with a DefaultAction Type other than * ALLOW, BLOCK, or COUNT. *

                                    *
                                  • *
                                  • *

                                    * You tried to create a RateBasedRule with a RateKey value other than * IP. *

                                    *
                                  • *
                                  • *

                                    * You tried to update a WebACL with a WafAction Type other than * ALLOW, BLOCK, or COUNT. *

                                    *
                                  • *
                                  • *

                                    * You tried to update a ByteMatchSet with a FieldToMatch Type other * than HEADER, METHOD, QUERY_STRING, URI, or BODY. *

                                    *
                                  • *
                                  • *

                                    * You tried to update a ByteMatchSet with a Field of HEADER but no * value for Data. *

                                    *
                                  • *
                                  • *

                                    * Your request references an ARN that is malformed, or corresponds to a resource with which a web ACL * cannot be associated. *

                                    *
                                  • * @throws WafInvalidOperationException * The operation failed because there was nothing to do. For example:

                                    *
                                      *
                                    • *

                                      * You tried to remove a Rule from a WebACL, but the Rule isn't in * the specified WebACL. *

                                      *
                                    • *
                                    • *

                                      * You tried to remove an IP address from an IPSet, but the IP address isn't in the specified * IPSet. *

                                      *
                                    • *
                                    • *

                                      * You tried to remove a ByteMatchTuple from a ByteMatchSet, but the * ByteMatchTuple isn't in the specified WebACL. *

                                      *
                                    • *
                                    • *

                                      * You tried to add a Rule to a WebACL, but the Rule already exists * in the specified WebACL. *

                                      *
                                    • *
                                    • *

                                      * You tried to add a ByteMatchTuple to a ByteMatchSet, but the * ByteMatchTuple already exists in the specified WebACL. *

                                      *
                                    • * @throws WafNonexistentItemException * The operation failed because the referenced object doesn't exist. * @throws WafEntityMigrationException * The operation failed due to a problem with the migration. The failure cause is provided in the exception, * in the MigrationErrorType:

                                      *
                                        *
                                      • *

                                        * ENTITY_NOT_SUPPORTED - The web ACL has an unsupported entity but the * IgnoreUnsupportedType is not set to true. *

                                        *
                                      • *
                                      • *

                                        * ENTITY_NOT_FOUND - The web ACL doesn't exist. *

                                        *
                                      • *
                                      • *

                                        * S3_BUCKET_NO_PERMISSION - You don't have permission to perform the PutObject * action to the specified Amazon S3 bucket. *

                                        *
                                      • *
                                      • *

                                        * S3_BUCKET_NOT_ACCESSIBLE - The bucket policy doesn't allow AWS WAF to perform the * PutObject action in the bucket. *

                                        *
                                      • *
                                      • *

                                        * S3_BUCKET_NOT_FOUND - The S3 bucket doesn't exist. *

                                        *
                                      • *
                                      • *

                                        * S3_BUCKET_INVALID_REGION - The S3 bucket is not in the same Region as the web ACL. *

                                        *
                                      • *
                                      • *

                                        * S3_INTERNAL_ERROR - AWS WAF failed to create the template in the S3 bucket for another * reason. *

                                        *
                                      • * @throws SdkException * Base class for all exceptions that can be thrown by the SDK (both service and client). Can be used for * catch all scenarios. * @throws SdkClientException * If any client side error occurs such as an IO related failure, failure to get credentials, etc. * @throws WafException * Base class for all service exceptions. Unknown exceptions will be thrown as an instance of this type. * @sample WafClient.CreateWebACLMigrationStack * @see AWS API Documentation */ default CreateWebAclMigrationStackResponse createWebACLMigrationStack( CreateWebAclMigrationStackRequest createWebAclMigrationStackRequest) throws WafInternalErrorException, WafInvalidParameterException, WafInvalidOperationException, WafNonexistentItemException, WafEntityMigrationException, AwsServiceException, SdkClientException, WafException { throw new UnsupportedOperationException(); } /** *

                                        * Creates an AWS CloudFormation WAFV2 template for the specified web ACL in the specified Amazon S3 bucket. Then, * in CloudFormation, you create a stack from the template, to create the web ACL and its resources in AWS WAFV2. * Use this to migrate your AWS WAF Classic web ACL to the latest version of AWS WAF. *

                                        *

                                        * This is part of a larger migration procedure for web ACLs from AWS WAF Classic to the latest version of AWS WAF. * For the full procedure, including caveats and manual steps to complete the migration and switch over to the new * web ACL, see Migrating your AWS * WAF Classic resources to AWS WAF in the AWS WAF Developer Guide. *

                                        *
                                        *

                                        * This is a convenience which creates an instance of the {@link CreateWebAclMigrationStackRequest.Builder} avoiding * the need to create one manually via {@link CreateWebAclMigrationStackRequest#builder()} *

                                        * * @param createWebAclMigrationStackRequest * A {@link Consumer} that will call methods on * {@link software.amazon.awssdk.services.waf.model.CreateWebAclMigrationStackRequest.Builder} to create a * request. * @return Result of the CreateWebACLMigrationStack operation returned by the service. * @throws WafInternalErrorException * The operation failed because of a system problem, even though the request was valid. Retry your request. * @throws WafInvalidParameterException * The operation failed because AWS WAF didn't recognize a parameter in the request. For example:

                                        *
                                          *
                                        • *

                                          * You specified an invalid parameter name. *

                                          *
                                        • *
                                        • *

                                          * You specified an invalid value. *

                                          *
                                        • *
                                        • *

                                          * You tried to update an object (ByteMatchSet, IPSet, Rule, or * WebACL) using an action other than INSERT or DELETE. *

                                          *
                                        • *
                                        • *

                                          * You tried to create a WebACL with a DefaultAction Type other than * ALLOW, BLOCK, or COUNT. *

                                          *
                                        • *
                                        • *

                                          * You tried to create a RateBasedRule with a RateKey value other than * IP. *

                                          *
                                        • *
                                        • *

                                          * You tried to update a WebACL with a WafAction Type other than * ALLOW, BLOCK, or COUNT. *

                                          *
                                        • *
                                        • *

                                          * You tried to update a ByteMatchSet with a FieldToMatch Type other * than HEADER, METHOD, QUERY_STRING, URI, or BODY. *

                                          *
                                        • *
                                        • *

                                          * You tried to update a ByteMatchSet with a Field of HEADER but no * value for Data. *

                                          *
                                        • *
                                        • *

                                          * Your request references an ARN that is malformed, or corresponds to a resource with which a web ACL * cannot be associated. *

                                          *
                                        • * @throws WafInvalidOperationException * The operation failed because there was nothing to do. For example:

                                          *
                                            *
                                          • *

                                            * You tried to remove a Rule from a WebACL, but the Rule isn't in * the specified WebACL. *

                                            *
                                          • *
                                          • *

                                            * You tried to remove an IP address from an IPSet, but the IP address isn't in the specified * IPSet. *

                                            *
                                          • *
                                          • *

                                            * You tried to remove a ByteMatchTuple from a ByteMatchSet, but the * ByteMatchTuple isn't in the specified WebACL. *

                                            *
                                          • *
                                          • *

                                            * You tried to add a Rule to a WebACL, but the Rule already exists * in the specified WebACL. *

                                            *
                                          • *
                                          • *

                                            * You tried to add a ByteMatchTuple to a ByteMatchSet, but the * ByteMatchTuple already exists in the specified WebACL. *

                                            *
                                          • * @throws WafNonexistentItemException * The operation failed because the referenced object doesn't exist. * @throws WafEntityMigrationException * The operation failed due to a problem with the migration. The failure cause is provided in the exception, * in the MigrationErrorType:

                                            *
                                              *
                                            • *

                                              * ENTITY_NOT_SUPPORTED - The web ACL has an unsupported entity but the * IgnoreUnsupportedType is not set to true. *

                                              *
                                            • *
                                            • *

                                              * ENTITY_NOT_FOUND - The web ACL doesn't exist. *

                                              *
                                            • *
                                            • *

                                              * S3_BUCKET_NO_PERMISSION - You don't have permission to perform the PutObject * action to the specified Amazon S3 bucket. *

                                              *
                                            • *
                                            • *

                                              * S3_BUCKET_NOT_ACCESSIBLE - The bucket policy doesn't allow AWS WAF to perform the * PutObject action in the bucket. *

                                              *
                                            • *
                                            • *

                                              * S3_BUCKET_NOT_FOUND - The S3 bucket doesn't exist. *

                                              *
                                            • *
                                            • *

                                              * S3_BUCKET_INVALID_REGION - The S3 bucket is not in the same Region as the web ACL. *

                                              *
                                            • *
                                            • *

                                              * S3_INTERNAL_ERROR - AWS WAF failed to create the template in the S3 bucket for another * reason. *

                                              *
                                            • * @throws SdkException * Base class for all exceptions that can be thrown by the SDK (both service and client). Can be used for * catch all scenarios. * @throws SdkClientException * If any client side error occurs such as an IO related failure, failure to get credentials, etc. * @throws WafException * Base class for all service exceptions. Unknown exceptions will be thrown as an instance of this type. * @sample WafClient.CreateWebACLMigrationStack * @see AWS API Documentation */ default CreateWebAclMigrationStackResponse createWebACLMigrationStack( Consumer createWebAclMigrationStackRequest) throws WafInternalErrorException, WafInvalidParameterException, WafInvalidOperationException, WafNonexistentItemException, WafEntityMigrationException, AwsServiceException, SdkClientException, WafException { return createWebACLMigrationStack(CreateWebAclMigrationStackRequest.builder() .applyMutation(createWebAclMigrationStackRequest).build()); } /** * *

                                              * This is AWS WAF Classic documentation. For more information, see AWS WAF Classic in the * developer guide. *

                                              *

                                              * For the latest version of AWS WAF, use the AWS WAFV2 API and see the AWS WAF Developer Guide. With * the latest version, AWS WAF has a single set of endpoints for regional and global use. *

                                              *
                                              *

                                              * Creates an XssMatchSet, which you use to allow, block, or count requests that contain cross-site scripting * attacks in the specified part of web requests. AWS WAF searches for character sequences that are likely to be * malicious strings. *

                                              *

                                              * To create and configure an XssMatchSet, perform the following steps: *

                                              *
                                                *
                                              1. *

                                                * Use GetChangeToken to get the change token that you provide in the ChangeToken parameter of a * CreateXssMatchSet request. *

                                                *
                                              2. *
                                              3. *

                                                * Submit a CreateXssMatchSet request. *

                                                *
                                              4. *
                                              5. *

                                                * Use GetChangeToken to get the change token that you provide in the ChangeToken * parameter of an UpdateXssMatchSet request. *

                                                *
                                              6. *
                                              7. *

                                                * Submit an UpdateXssMatchSet request to specify the parts of web requests in which you want to allow, * block, or count cross-site scripting attacks. *

                                                *
                                              8. *
                                              *

                                              * For more information about how to use the AWS WAF API to allow or block HTTP requests, see the AWS WAF Developer Guide. *

                                              * * @param createXssMatchSetRequest * A request to create an XssMatchSet. * @return Result of the CreateXssMatchSet operation returned by the service. * @throws WafDisallowedNameException * The name specified is invalid. * @throws WafInternalErrorException * The operation failed because of a system problem, even though the request was valid. Retry your request. * @throws WafInvalidAccountException * The operation failed because you tried to create, update, or delete an object by using an invalid account * identifier. * @throws WafInvalidParameterException * The operation failed because AWS WAF didn't recognize a parameter in the request. For example:

                                              *
                                                *
                                              • *

                                                * You specified an invalid parameter name. *

                                                *
                                              • *
                                              • *

                                                * You specified an invalid value. *

                                                *
                                              • *
                                              • *

                                                * You tried to update an object (ByteMatchSet, IPSet, Rule, or * WebACL) using an action other than INSERT or DELETE. *

                                                *
                                              • *
                                              • *

                                                * You tried to create a WebACL with a DefaultAction Type other than * ALLOW, BLOCK, or COUNT. *

                                                *
                                              • *
                                              • *

                                                * You tried to create a RateBasedRule with a RateKey value other than * IP. *

                                                *
                                              • *
                                              • *

                                                * You tried to update a WebACL with a WafAction Type other than * ALLOW, BLOCK, or COUNT. *

                                                *
                                              • *
                                              • *

                                                * You tried to update a ByteMatchSet with a FieldToMatch Type other * than HEADER, METHOD, QUERY_STRING, URI, or BODY. *

                                                *
                                              • *
                                              • *

                                                * You tried to update a ByteMatchSet with a Field of HEADER but no * value for Data. *

                                                *
                                              • *
                                              • *

                                                * Your request references an ARN that is malformed, or corresponds to a resource with which a web ACL * cannot be associated. *

                                                *
                                              • * @throws WafStaleDataException * The operation failed because you tried to create, update, or delete an object by using a change token * that has already been used. * @throws WafLimitsExceededException * The operation exceeds a resource limit, for example, the maximum number of WebACL objects * that you can create for an AWS account. For more information, see Limits in the AWS WAF * Developer Guide. * @throws SdkException * Base class for all exceptions that can be thrown by the SDK (both service and client). Can be used for * catch all scenarios. * @throws SdkClientException * If any client side error occurs such as an IO related failure, failure to get credentials, etc. * @throws WafException * Base class for all service exceptions. Unknown exceptions will be thrown as an instance of this type. * @sample WafClient.CreateXssMatchSet * @see AWS API * Documentation */ default CreateXssMatchSetResponse createXssMatchSet(CreateXssMatchSetRequest createXssMatchSetRequest) throws WafDisallowedNameException, WafInternalErrorException, WafInvalidAccountException, WafInvalidParameterException, WafStaleDataException, WafLimitsExceededException, AwsServiceException, SdkClientException, WafException { throw new UnsupportedOperationException(); } /** * *

                                                * This is AWS WAF Classic documentation. For more information, see AWS WAF Classic in the * developer guide. *

                                                *

                                                * For the latest version of AWS WAF, use the AWS WAFV2 API and see the AWS WAF Developer Guide. With * the latest version, AWS WAF has a single set of endpoints for regional and global use. *

                                                *
                                                *

                                                * Creates an XssMatchSet, which you use to allow, block, or count requests that contain cross-site scripting * attacks in the specified part of web requests. AWS WAF searches for character sequences that are likely to be * malicious strings. *

                                                *

                                                * To create and configure an XssMatchSet, perform the following steps: *

                                                *
                                                  *
                                                1. *

                                                  * Use GetChangeToken to get the change token that you provide in the ChangeToken parameter of a * CreateXssMatchSet request. *

                                                  *
                                                2. *
                                                3. *

                                                  * Submit a CreateXssMatchSet request. *

                                                  *
                                                4. *
                                                5. *

                                                  * Use GetChangeToken to get the change token that you provide in the ChangeToken * parameter of an UpdateXssMatchSet request. *

                                                  *
                                                6. *
                                                7. *

                                                  * Submit an UpdateXssMatchSet request to specify the parts of web requests in which you want to allow, * block, or count cross-site scripting attacks. *

                                                  *
                                                8. *
                                                *

                                                * For more information about how to use the AWS WAF API to allow or block HTTP requests, see the AWS WAF Developer Guide. *

                                                *
                                                *

                                                * This is a convenience which creates an instance of the {@link CreateXssMatchSetRequest.Builder} avoiding the need * to create one manually via {@link CreateXssMatchSetRequest#builder()} *

                                                * * @param createXssMatchSetRequest * A {@link Consumer} that will call methods on * {@link software.amazon.awssdk.services.waf.model.CreateXssMatchSetRequest.Builder} to create a request. A * request to create an XssMatchSet. * @return Result of the CreateXssMatchSet operation returned by the service. * @throws WafDisallowedNameException * The name specified is invalid. * @throws WafInternalErrorException * The operation failed because of a system problem, even though the request was valid. Retry your request. * @throws WafInvalidAccountException * The operation failed because you tried to create, update, or delete an object by using an invalid account * identifier. * @throws WafInvalidParameterException * The operation failed because AWS WAF didn't recognize a parameter in the request. For example:

                                                *
                                                  *
                                                • *

                                                  * You specified an invalid parameter name. *

                                                  *
                                                • *
                                                • *

                                                  * You specified an invalid value. *

                                                  *
                                                • *
                                                • *

                                                  * You tried to update an object (ByteMatchSet, IPSet, Rule, or * WebACL) using an action other than INSERT or DELETE. *

                                                  *
                                                • *
                                                • *

                                                  * You tried to create a WebACL with a DefaultAction Type other than * ALLOW, BLOCK, or COUNT. *

                                                  *
                                                • *
                                                • *

                                                  * You tried to create a RateBasedRule with a RateKey value other than * IP. *

                                                  *
                                                • *
                                                • *

                                                  * You tried to update a WebACL with a WafAction Type other than * ALLOW, BLOCK, or COUNT. *

                                                  *
                                                • *
                                                • *

                                                  * You tried to update a ByteMatchSet with a FieldToMatch Type other * than HEADER, METHOD, QUERY_STRING, URI, or BODY. *

                                                  *
                                                • *
                                                • *

                                                  * You tried to update a ByteMatchSet with a Field of HEADER but no * value for Data. *

                                                  *
                                                • *
                                                • *

                                                  * Your request references an ARN that is malformed, or corresponds to a resource with which a web ACL * cannot be associated. *

                                                  *
                                                • * @throws WafStaleDataException * The operation failed because you tried to create, update, or delete an object by using a change token * that has already been used. * @throws WafLimitsExceededException * The operation exceeds a resource limit, for example, the maximum number of WebACL objects * that you can create for an AWS account. For more information, see Limits in the AWS WAF * Developer Guide. * @throws SdkException * Base class for all exceptions that can be thrown by the SDK (both service and client). Can be used for * catch all scenarios. * @throws SdkClientException * If any client side error occurs such as an IO related failure, failure to get credentials, etc. * @throws WafException * Base class for all service exceptions. Unknown exceptions will be thrown as an instance of this type. * @sample WafClient.CreateXssMatchSet * @see AWS API * Documentation */ default CreateXssMatchSetResponse createXssMatchSet(Consumer createXssMatchSetRequest) throws WafDisallowedNameException, WafInternalErrorException, WafInvalidAccountException, WafInvalidParameterException, WafStaleDataException, WafLimitsExceededException, AwsServiceException, SdkClientException, WafException { return createXssMatchSet(CreateXssMatchSetRequest.builder().applyMutation(createXssMatchSetRequest).build()); } /** * *

                                                  * This is AWS WAF Classic documentation. For more information, see AWS WAF Classic in the * developer guide. *

                                                  *

                                                  * For the latest version of AWS WAF, use the AWS WAFV2 API and see the AWS WAF Developer Guide. With * the latest version, AWS WAF has a single set of endpoints for regional and global use. *

                                                  *
                                                  *

                                                  * Permanently deletes a ByteMatchSet. You can't delete a ByteMatchSet if it's still used in any * Rules or if it still includes any ByteMatchTuple objects (any filters). *

                                                  *

                                                  * If you just want to remove a ByteMatchSet from a Rule, use UpdateRule. *

                                                  *

                                                  * To permanently delete a ByteMatchSet, perform the following steps: *

                                                  *
                                                    *
                                                  1. *

                                                    * Update the ByteMatchSet to remove filters, if any. For more information, see * UpdateByteMatchSet. *

                                                    *
                                                  2. *
                                                  3. *

                                                    * Use GetChangeToken to get the change token that you provide in the ChangeToken parameter of a * DeleteByteMatchSet request. *

                                                    *
                                                  4. *
                                                  5. *

                                                    * Submit a DeleteByteMatchSet request. *

                                                    *
                                                  6. *
                                                  * * @param deleteByteMatchSetRequest * @return Result of the DeleteByteMatchSet operation returned by the service. * @throws WafInternalErrorException * The operation failed because of a system problem, even though the request was valid. Retry your request. * @throws WafInvalidAccountException * The operation failed because you tried to create, update, or delete an object by using an invalid account * identifier. * @throws WafNonexistentItemException * The operation failed because the referenced object doesn't exist. * @throws WafReferencedItemException * The operation failed because you tried to delete an object that is still in use. For example:

                                                  *
                                                    *
                                                  • *

                                                    * You tried to delete a ByteMatchSet that is still referenced by a Rule. *

                                                    *
                                                  • *
                                                  • *

                                                    * You tried to delete a Rule that is still referenced by a WebACL. *

                                                    *
                                                  • * @throws WafStaleDataException * The operation failed because you tried to create, update, or delete an object by using a change token * that has already been used. * @throws WafNonEmptyEntityException * The operation failed because you tried to delete an object that isn't empty. For example:

                                                    *
                                                      *
                                                    • *

                                                      * You tried to delete a WebACL that still contains one or more Rule objects. *

                                                      *
                                                    • *
                                                    • *

                                                      * You tried to delete a Rule that still contains one or more ByteMatchSet objects * or other predicates. *

                                                      *
                                                    • *
                                                    • *

                                                      * You tried to delete a ByteMatchSet that contains one or more ByteMatchTuple * objects. *

                                                      *
                                                    • *
                                                    • *

                                                      * You tried to delete an IPSet that references one or more IP addresses. *

                                                      *
                                                    • * @throws SdkException * Base class for all exceptions that can be thrown by the SDK (both service and client). Can be used for * catch all scenarios. * @throws SdkClientException * If any client side error occurs such as an IO related failure, failure to get credentials, etc. * @throws WafException * Base class for all service exceptions. Unknown exceptions will be thrown as an instance of this type. * @sample WafClient.DeleteByteMatchSet * @see AWS API * Documentation */ default DeleteByteMatchSetResponse deleteByteMatchSet(DeleteByteMatchSetRequest deleteByteMatchSetRequest) throws WafInternalErrorException, WafInvalidAccountException, WafNonexistentItemException, WafReferencedItemException, WafStaleDataException, WafNonEmptyEntityException, AwsServiceException, SdkClientException, WafException { throw new UnsupportedOperationException(); } /** * *

                                                      * This is AWS WAF Classic documentation. For more information, see AWS WAF Classic in the * developer guide. *

                                                      *

                                                      * For the latest version of AWS WAF, use the AWS WAFV2 API and see the AWS WAF Developer Guide. With * the latest version, AWS WAF has a single set of endpoints for regional and global use. *

                                                      *
                                                      *

                                                      * Permanently deletes a ByteMatchSet. You can't delete a ByteMatchSet if it's still used in any * Rules or if it still includes any ByteMatchTuple objects (any filters). *

                                                      *

                                                      * If you just want to remove a ByteMatchSet from a Rule, use UpdateRule. *

                                                      *

                                                      * To permanently delete a ByteMatchSet, perform the following steps: *

                                                      *
                                                        *
                                                      1. *

                                                        * Update the ByteMatchSet to remove filters, if any. For more information, see * UpdateByteMatchSet. *

                                                        *
                                                      2. *
                                                      3. *

                                                        * Use GetChangeToken to get the change token that you provide in the ChangeToken parameter of a * DeleteByteMatchSet request. *

                                                        *
                                                      4. *
                                                      5. *

                                                        * Submit a DeleteByteMatchSet request. *

                                                        *
                                                      6. *
                                                      *
                                                      *

                                                      * This is a convenience which creates an instance of the {@link DeleteByteMatchSetRequest.Builder} avoiding the * need to create one manually via {@link DeleteByteMatchSetRequest#builder()} *

                                                      * * @param deleteByteMatchSetRequest * A {@link Consumer} that will call methods on * {@link software.amazon.awssdk.services.waf.model.DeleteByteMatchSetRequest.Builder} to create a request. * @return Result of the DeleteByteMatchSet operation returned by the service. * @throws WafInternalErrorException * The operation failed because of a system problem, even though the request was valid. Retry your request. * @throws WafInvalidAccountException * The operation failed because you tried to create, update, or delete an object by using an invalid account * identifier. * @throws WafNonexistentItemException * The operation failed because the referenced object doesn't exist. * @throws WafReferencedItemException * The operation failed because you tried to delete an object that is still in use. For example:

                                                      *
                                                        *
                                                      • *

                                                        * You tried to delete a ByteMatchSet that is still referenced by a Rule. *

                                                        *
                                                      • *
                                                      • *

                                                        * You tried to delete a Rule that is still referenced by a WebACL. *

                                                        *
                                                      • * @throws WafStaleDataException * The operation failed because you tried to create, update, or delete an object by using a change token * that has already been used. * @throws WafNonEmptyEntityException * The operation failed because you tried to delete an object that isn't empty. For example:

                                                        *
                                                          *
                                                        • *

                                                          * You tried to delete a WebACL that still contains one or more Rule objects. *

                                                          *
                                                        • *
                                                        • *

                                                          * You tried to delete a Rule that still contains one or more ByteMatchSet objects * or other predicates. *

                                                          *
                                                        • *
                                                        • *

                                                          * You tried to delete a ByteMatchSet that contains one or more ByteMatchTuple * objects. *

                                                          *
                                                        • *
                                                        • *

                                                          * You tried to delete an IPSet that references one or more IP addresses. *

                                                          *
                                                        • * @throws SdkException * Base class for all exceptions that can be thrown by the SDK (both service and client). Can be used for * catch all scenarios. * @throws SdkClientException * If any client side error occurs such as an IO related failure, failure to get credentials, etc. * @throws WafException * Base class for all service exceptions. Unknown exceptions will be thrown as an instance of this type. * @sample WafClient.DeleteByteMatchSet * @see AWS API * Documentation */ default DeleteByteMatchSetResponse deleteByteMatchSet(Consumer deleteByteMatchSetRequest) throws WafInternalErrorException, WafInvalidAccountException, WafNonexistentItemException, WafReferencedItemException, WafStaleDataException, WafNonEmptyEntityException, AwsServiceException, SdkClientException, WafException { return deleteByteMatchSet(DeleteByteMatchSetRequest.builder().applyMutation(deleteByteMatchSetRequest).build()); } /** * *

                                                          * This is AWS WAF Classic documentation. For more information, see AWS WAF Classic in the * developer guide. *

                                                          *

                                                          * For the latest version of AWS WAF, use the AWS WAFV2 API and see the AWS WAF Developer Guide. With * the latest version, AWS WAF has a single set of endpoints for regional and global use. *

                                                          *
                                                          *

                                                          * Permanently deletes a GeoMatchSet. You can't delete a GeoMatchSet if it's still used in any * Rules or if it still includes any countries. *

                                                          *

                                                          * If you just want to remove a GeoMatchSet from a Rule, use UpdateRule. *

                                                          *

                                                          * To permanently delete a GeoMatchSet from AWS WAF, perform the following steps: *

                                                          *
                                                            *
                                                          1. *

                                                            * Update the GeoMatchSet to remove any countries. For more information, see UpdateGeoMatchSet. *

                                                            *
                                                          2. *
                                                          3. *

                                                            * Use GetChangeToken to get the change token that you provide in the ChangeToken parameter of a * DeleteGeoMatchSet request. *

                                                            *
                                                          4. *
                                                          5. *

                                                            * Submit a DeleteGeoMatchSet request. *

                                                            *
                                                          6. *
                                                          * * @param deleteGeoMatchSetRequest * @return Result of the DeleteGeoMatchSet operation returned by the service. * @throws WafStaleDataException * The operation failed because you tried to create, update, or delete an object by using a change token * that has already been used. * @throws WafInternalErrorException * The operation failed because of a system problem, even though the request was valid. Retry your request. * @throws WafInvalidAccountException * The operation failed because you tried to create, update, or delete an object by using an invalid account * identifier. * @throws WafNonexistentItemException * The operation failed because the referenced object doesn't exist. * @throws WafReferencedItemException * The operation failed because you tried to delete an object that is still in use. For example:

                                                          *
                                                            *
                                                          • *

                                                            * You tried to delete a ByteMatchSet that is still referenced by a Rule. *

                                                            *
                                                          • *
                                                          • *

                                                            * You tried to delete a Rule that is still referenced by a WebACL. *

                                                            *
                                                          • * @throws WafNonEmptyEntityException * The operation failed because you tried to delete an object that isn't empty. For example:

                                                            *
                                                              *
                                                            • *

                                                              * You tried to delete a WebACL that still contains one or more Rule objects. *

                                                              *
                                                            • *
                                                            • *

                                                              * You tried to delete a Rule that still contains one or more ByteMatchSet objects * or other predicates. *

                                                              *
                                                            • *
                                                            • *

                                                              * You tried to delete a ByteMatchSet that contains one or more ByteMatchTuple * objects. *

                                                              *
                                                            • *
                                                            • *

                                                              * You tried to delete an IPSet that references one or more IP addresses. *

                                                              *
                                                            • * @throws SdkException * Base class for all exceptions that can be thrown by the SDK (both service and client). Can be used for * catch all scenarios. * @throws SdkClientException * If any client side error occurs such as an IO related failure, failure to get credentials, etc. * @throws WafException * Base class for all service exceptions. Unknown exceptions will be thrown as an instance of this type. * @sample WafClient.DeleteGeoMatchSet * @see AWS API * Documentation */ default DeleteGeoMatchSetResponse deleteGeoMatchSet(DeleteGeoMatchSetRequest deleteGeoMatchSetRequest) throws WafStaleDataException, WafInternalErrorException, WafInvalidAccountException, WafNonexistentItemException, WafReferencedItemException, WafNonEmptyEntityException, AwsServiceException, SdkClientException, WafException { throw new UnsupportedOperationException(); } /** * *

                                                              * This is AWS WAF Classic documentation. For more information, see AWS WAF Classic in the * developer guide. *

                                                              *

                                                              * For the latest version of AWS WAF, use the AWS WAFV2 API and see the AWS WAF Developer Guide. With * the latest version, AWS WAF has a single set of endpoints for regional and global use. *

                                                              *
                                                              *

                                                              * Permanently deletes a GeoMatchSet. You can't delete a GeoMatchSet if it's still used in any * Rules or if it still includes any countries. *

                                                              *

                                                              * If you just want to remove a GeoMatchSet from a Rule, use UpdateRule. *

                                                              *

                                                              * To permanently delete a GeoMatchSet from AWS WAF, perform the following steps: *

                                                              *
                                                                *
                                                              1. *

                                                                * Update the GeoMatchSet to remove any countries. For more information, see UpdateGeoMatchSet. *

                                                                *
                                                              2. *
                                                              3. *

                                                                * Use GetChangeToken to get the change token that you provide in the ChangeToken parameter of a * DeleteGeoMatchSet request. *

                                                                *
                                                              4. *
                                                              5. *

                                                                * Submit a DeleteGeoMatchSet request. *

                                                                *
                                                              6. *
                                                              *
                                                              *

                                                              * This is a convenience which creates an instance of the {@link DeleteGeoMatchSetRequest.Builder} avoiding the need * to create one manually via {@link DeleteGeoMatchSetRequest#builder()} *

                                                              * * @param deleteGeoMatchSetRequest * A {@link Consumer} that will call methods on * {@link software.amazon.awssdk.services.waf.model.DeleteGeoMatchSetRequest.Builder} to create a request. * @return Result of the DeleteGeoMatchSet operation returned by the service. * @throws WafStaleDataException * The operation failed because you tried to create, update, or delete an object by using a change token * that has already been used. * @throws WafInternalErrorException * The operation failed because of a system problem, even though the request was valid. Retry your request. * @throws WafInvalidAccountException * The operation failed because you tried to create, update, or delete an object by using an invalid account * identifier. * @throws WafNonexistentItemException * The operation failed because the referenced object doesn't exist. * @throws WafReferencedItemException * The operation failed because you tried to delete an object that is still in use. For example:

                                                              *
                                                                *
                                                              • *

                                                                * You tried to delete a ByteMatchSet that is still referenced by a Rule. *

                                                                *
                                                              • *
                                                              • *

                                                                * You tried to delete a Rule that is still referenced by a WebACL. *

                                                                *
                                                              • * @throws WafNonEmptyEntityException * The operation failed because you tried to delete an object that isn't empty. For example:

                                                                *
                                                                  *
                                                                • *

                                                                  * You tried to delete a WebACL that still contains one or more Rule objects. *

                                                                  *
                                                                • *
                                                                • *

                                                                  * You tried to delete a Rule that still contains one or more ByteMatchSet objects * or other predicates. *

                                                                  *
                                                                • *
                                                                • *

                                                                  * You tried to delete a ByteMatchSet that contains one or more ByteMatchTuple * objects. *

                                                                  *
                                                                • *
                                                                • *

                                                                  * You tried to delete an IPSet that references one or more IP addresses. *

                                                                  *
                                                                • * @throws SdkException * Base class for all exceptions that can be thrown by the SDK (both service and client). Can be used for * catch all scenarios. * @throws SdkClientException * If any client side error occurs such as an IO related failure, failure to get credentials, etc. * @throws WafException * Base class for all service exceptions. Unknown exceptions will be thrown as an instance of this type. * @sample WafClient.DeleteGeoMatchSet * @see AWS API * Documentation */ default DeleteGeoMatchSetResponse deleteGeoMatchSet(Consumer deleteGeoMatchSetRequest) throws WafStaleDataException, WafInternalErrorException, WafInvalidAccountException, WafNonexistentItemException, WafReferencedItemException, WafNonEmptyEntityException, AwsServiceException, SdkClientException, WafException { return deleteGeoMatchSet(DeleteGeoMatchSetRequest.builder().applyMutation(deleteGeoMatchSetRequest).build()); } /** * *

                                                                  * This is AWS WAF Classic documentation. For more information, see AWS WAF Classic in the * developer guide. *

                                                                  *

                                                                  * For the latest version of AWS WAF, use the AWS WAFV2 API and see the AWS WAF Developer Guide. With * the latest version, AWS WAF has a single set of endpoints for regional and global use. *

                                                                  *
                                                                  *

                                                                  * Permanently deletes an IPSet. You can't delete an IPSet if it's still used in any * Rules or if it still includes any IP addresses. *

                                                                  *

                                                                  * If you just want to remove an IPSet from a Rule, use UpdateRule. *

                                                                  *

                                                                  * To permanently delete an IPSet from AWS WAF, perform the following steps: *

                                                                  *
                                                                    *
                                                                  1. *

                                                                    * Update the IPSet to remove IP address ranges, if any. For more information, see UpdateIPSet. *

                                                                    *
                                                                  2. *
                                                                  3. *

                                                                    * Use GetChangeToken to get the change token that you provide in the ChangeToken parameter of a * DeleteIPSet request. *

                                                                    *
                                                                  4. *
                                                                  5. *

                                                                    * Submit a DeleteIPSet request. *

                                                                    *
                                                                  6. *
                                                                  * * @param deleteIpSetRequest * @return Result of the DeleteIPSet operation returned by the service. * @throws WafStaleDataException * The operation failed because you tried to create, update, or delete an object by using a change token * that has already been used. * @throws WafInternalErrorException * The operation failed because of a system problem, even though the request was valid. Retry your request. * @throws WafInvalidAccountException * The operation failed because you tried to create, update, or delete an object by using an invalid account * identifier. * @throws WafNonexistentItemException * The operation failed because the referenced object doesn't exist. * @throws WafReferencedItemException * The operation failed because you tried to delete an object that is still in use. For example:

                                                                  *
                                                                    *
                                                                  • *

                                                                    * You tried to delete a ByteMatchSet that is still referenced by a Rule. *

                                                                    *
                                                                  • *
                                                                  • *

                                                                    * You tried to delete a Rule that is still referenced by a WebACL. *

                                                                    *
                                                                  • * @throws WafNonEmptyEntityException * The operation failed because you tried to delete an object that isn't empty. For example:

                                                                    *
                                                                      *
                                                                    • *

                                                                      * You tried to delete a WebACL that still contains one or more Rule objects. *

                                                                      *
                                                                    • *
                                                                    • *

                                                                      * You tried to delete a Rule that still contains one or more ByteMatchSet objects * or other predicates. *

                                                                      *
                                                                    • *
                                                                    • *

                                                                      * You tried to delete a ByteMatchSet that contains one or more ByteMatchTuple * objects. *

                                                                      *
                                                                    • *
                                                                    • *

                                                                      * You tried to delete an IPSet that references one or more IP addresses. *

                                                                      *
                                                                    • * @throws SdkException * Base class for all exceptions that can be thrown by the SDK (both service and client). Can be used for * catch all scenarios. * @throws SdkClientException * If any client side error occurs such as an IO related failure, failure to get credentials, etc. * @throws WafException * Base class for all service exceptions. Unknown exceptions will be thrown as an instance of this type. * @sample WafClient.DeleteIPSet * @see AWS API * Documentation */ default DeleteIpSetResponse deleteIPSet(DeleteIpSetRequest deleteIpSetRequest) throws WafStaleDataException, WafInternalErrorException, WafInvalidAccountException, WafNonexistentItemException, WafReferencedItemException, WafNonEmptyEntityException, AwsServiceException, SdkClientException, WafException { throw new UnsupportedOperationException(); } /** * *

                                                                      * This is AWS WAF Classic documentation. For more information, see AWS WAF Classic in the * developer guide. *

                                                                      *

                                                                      * For the latest version of AWS WAF, use the AWS WAFV2 API and see the AWS WAF Developer Guide. With * the latest version, AWS WAF has a single set of endpoints for regional and global use. *

                                                                      *
                                                                      *

                                                                      * Permanently deletes an IPSet. You can't delete an IPSet if it's still used in any * Rules or if it still includes any IP addresses. *

                                                                      *

                                                                      * If you just want to remove an IPSet from a Rule, use UpdateRule. *

                                                                      *

                                                                      * To permanently delete an IPSet from AWS WAF, perform the following steps: *

                                                                      *
                                                                        *
                                                                      1. *

                                                                        * Update the IPSet to remove IP address ranges, if any. For more information, see UpdateIPSet. *

                                                                        *
                                                                      2. *
                                                                      3. *

                                                                        * Use GetChangeToken to get the change token that you provide in the ChangeToken parameter of a * DeleteIPSet request. *

                                                                        *
                                                                      4. *
                                                                      5. *

                                                                        * Submit a DeleteIPSet request. *

                                                                        *
                                                                      6. *
                                                                      *
                                                                      *

                                                                      * This is a convenience which creates an instance of the {@link DeleteIpSetRequest.Builder} avoiding the need to * create one manually via {@link DeleteIpSetRequest#builder()} *

                                                                      * * @param deleteIpSetRequest * A {@link Consumer} that will call methods on * {@link software.amazon.awssdk.services.waf.model.DeleteIpSetRequest.Builder} to create a request. * @return Result of the DeleteIPSet operation returned by the service. * @throws WafStaleDataException * The operation failed because you tried to create, update, or delete an object by using a change token * that has already been used. * @throws WafInternalErrorException * The operation failed because of a system problem, even though the request was valid. Retry your request. * @throws WafInvalidAccountException * The operation failed because you tried to create, update, or delete an object by using an invalid account * identifier. * @throws WafNonexistentItemException * The operation failed because the referenced object doesn't exist. * @throws WafReferencedItemException * The operation failed because you tried to delete an object that is still in use. For example:

                                                                      *
                                                                        *
                                                                      • *

                                                                        * You tried to delete a ByteMatchSet that is still referenced by a Rule. *

                                                                        *
                                                                      • *
                                                                      • *

                                                                        * You tried to delete a Rule that is still referenced by a WebACL. *

                                                                        *
                                                                      • * @throws WafNonEmptyEntityException * The operation failed because you tried to delete an object that isn't empty. For example:

                                                                        *
                                                                          *
                                                                        • *

                                                                          * You tried to delete a WebACL that still contains one or more Rule objects. *

                                                                          *
                                                                        • *
                                                                        • *

                                                                          * You tried to delete a Rule that still contains one or more ByteMatchSet objects * or other predicates. *

                                                                          *
                                                                        • *
                                                                        • *

                                                                          * You tried to delete a ByteMatchSet that contains one or more ByteMatchTuple * objects. *

                                                                          *
                                                                        • *
                                                                        • *

                                                                          * You tried to delete an IPSet that references one or more IP addresses. *

                                                                          *
                                                                        • * @throws SdkException * Base class for all exceptions that can be thrown by the SDK (both service and client). Can be used for * catch all scenarios. * @throws SdkClientException * If any client side error occurs such as an IO related failure, failure to get credentials, etc. * @throws WafException * Base class for all service exceptions. Unknown exceptions will be thrown as an instance of this type. * @sample WafClient.DeleteIPSet * @see AWS API * Documentation */ default DeleteIpSetResponse deleteIPSet(Consumer deleteIpSetRequest) throws WafStaleDataException, WafInternalErrorException, WafInvalidAccountException, WafNonexistentItemException, WafReferencedItemException, WafNonEmptyEntityException, AwsServiceException, SdkClientException, WafException { return deleteIPSet(DeleteIpSetRequest.builder().applyMutation(deleteIpSetRequest).build()); } /** * *

                                                                          * This is AWS WAF Classic documentation. For more information, see AWS WAF Classic in the * developer guide. *

                                                                          *

                                                                          * For the latest version of AWS WAF, use the AWS WAFV2 API and see the AWS WAF Developer Guide. With * the latest version, AWS WAF has a single set of endpoints for regional and global use. *

                                                                          *
                                                                          *

                                                                          * Permanently deletes the LoggingConfiguration from the specified web ACL. *

                                                                          * * @param deleteLoggingConfigurationRequest * @return Result of the DeleteLoggingConfiguration operation returned by the service. * @throws WafInternalErrorException * The operation failed because of a system problem, even though the request was valid. Retry your request. * @throws WafNonexistentItemException * The operation failed because the referenced object doesn't exist. * @throws WafStaleDataException * The operation failed because you tried to create, update, or delete an object by using a change token * that has already been used. * @throws SdkException * Base class for all exceptions that can be thrown by the SDK (both service and client). Can be used for * catch all scenarios. * @throws SdkClientException * If any client side error occurs such as an IO related failure, failure to get credentials, etc. * @throws WafException * Base class for all service exceptions. Unknown exceptions will be thrown as an instance of this type. * @sample WafClient.DeleteLoggingConfiguration * @see AWS API Documentation */ default DeleteLoggingConfigurationResponse deleteLoggingConfiguration( DeleteLoggingConfigurationRequest deleteLoggingConfigurationRequest) throws WafInternalErrorException, WafNonexistentItemException, WafStaleDataException, AwsServiceException, SdkClientException, WafException { throw new UnsupportedOperationException(); } /** * *

                                                                          * This is AWS WAF Classic documentation. For more information, see AWS WAF Classic in the * developer guide. *

                                                                          *

                                                                          * For the latest version of AWS WAF, use the AWS WAFV2 API and see the AWS WAF Developer Guide. With * the latest version, AWS WAF has a single set of endpoints for regional and global use. *

                                                                          *
                                                                          *

                                                                          * Permanently deletes the LoggingConfiguration from the specified web ACL. *

                                                                          *
                                                                          *

                                                                          * This is a convenience which creates an instance of the {@link DeleteLoggingConfigurationRequest.Builder} avoiding * the need to create one manually via {@link DeleteLoggingConfigurationRequest#builder()} *

                                                                          * * @param deleteLoggingConfigurationRequest * A {@link Consumer} that will call methods on * {@link software.amazon.awssdk.services.waf.model.DeleteLoggingConfigurationRequest.Builder} to create a * request. * @return Result of the DeleteLoggingConfiguration operation returned by the service. * @throws WafInternalErrorException * The operation failed because of a system problem, even though the request was valid. Retry your request. * @throws WafNonexistentItemException * The operation failed because the referenced object doesn't exist. * @throws WafStaleDataException * The operation failed because you tried to create, update, or delete an object by using a change token * that has already been used. * @throws SdkException * Base class for all exceptions that can be thrown by the SDK (both service and client). Can be used for * catch all scenarios. * @throws SdkClientException * If any client side error occurs such as an IO related failure, failure to get credentials, etc. * @throws WafException * Base class for all service exceptions. Unknown exceptions will be thrown as an instance of this type. * @sample WafClient.DeleteLoggingConfiguration * @see AWS API Documentation */ default DeleteLoggingConfigurationResponse deleteLoggingConfiguration( Consumer deleteLoggingConfigurationRequest) throws WafInternalErrorException, WafNonexistentItemException, WafStaleDataException, AwsServiceException, SdkClientException, WafException { return deleteLoggingConfiguration(DeleteLoggingConfigurationRequest.builder() .applyMutation(deleteLoggingConfigurationRequest).build()); } /** * *

                                                                          * This is AWS WAF Classic documentation. For more information, see AWS WAF Classic in the * developer guide. *

                                                                          *

                                                                          * For the latest version of AWS WAF, use the AWS WAFV2 API and see the AWS WAF Developer Guide. With * the latest version, AWS WAF has a single set of endpoints for regional and global use. *

                                                                          *
                                                                          *

                                                                          * Permanently deletes an IAM policy from the specified RuleGroup. *

                                                                          *

                                                                          * The user making the request must be the owner of the RuleGroup. *

                                                                          * * @param deletePermissionPolicyRequest * @return Result of the DeletePermissionPolicy operation returned by the service. * @throws WafInternalErrorException * The operation failed because of a system problem, even though the request was valid. Retry your request. * @throws WafStaleDataException * The operation failed because you tried to create, update, or delete an object by using a change token * that has already been used. * @throws WafNonexistentItemException * The operation failed because the referenced object doesn't exist. * @throws SdkException * Base class for all exceptions that can be thrown by the SDK (both service and client). Can be used for * catch all scenarios. * @throws SdkClientException * If any client side error occurs such as an IO related failure, failure to get credentials, etc. * @throws WafException * Base class for all service exceptions. Unknown exceptions will be thrown as an instance of this type. * @sample WafClient.DeletePermissionPolicy * @see AWS * API Documentation */ default DeletePermissionPolicyResponse deletePermissionPolicy(DeletePermissionPolicyRequest deletePermissionPolicyRequest) throws WafInternalErrorException, WafStaleDataException, WafNonexistentItemException, AwsServiceException, SdkClientException, WafException { throw new UnsupportedOperationException(); } /** * *

                                                                          * This is AWS WAF Classic documentation. For more information, see AWS WAF Classic in the * developer guide. *

                                                                          *

                                                                          * For the latest version of AWS WAF, use the AWS WAFV2 API and see the AWS WAF Developer Guide. With * the latest version, AWS WAF has a single set of endpoints for regional and global use. *

                                                                          *
                                                                          *

                                                                          * Permanently deletes an IAM policy from the specified RuleGroup. *

                                                                          *

                                                                          * The user making the request must be the owner of the RuleGroup. *

                                                                          *
                                                                          *

                                                                          * This is a convenience which creates an instance of the {@link DeletePermissionPolicyRequest.Builder} avoiding the * need to create one manually via {@link DeletePermissionPolicyRequest#builder()} *

                                                                          * * @param deletePermissionPolicyRequest * A {@link Consumer} that will call methods on * {@link software.amazon.awssdk.services.waf.model.DeletePermissionPolicyRequest.Builder} to create a * request. * @return Result of the DeletePermissionPolicy operation returned by the service. * @throws WafInternalErrorException * The operation failed because of a system problem, even though the request was valid. Retry your request. * @throws WafStaleDataException * The operation failed because you tried to create, update, or delete an object by using a change token * that has already been used. * @throws WafNonexistentItemException * The operation failed because the referenced object doesn't exist. * @throws SdkException * Base class for all exceptions that can be thrown by the SDK (both service and client). Can be used for * catch all scenarios. * @throws SdkClientException * If any client side error occurs such as an IO related failure, failure to get credentials, etc. * @throws WafException * Base class for all service exceptions. Unknown exceptions will be thrown as an instance of this type. * @sample WafClient.DeletePermissionPolicy * @see AWS * API Documentation */ default DeletePermissionPolicyResponse deletePermissionPolicy( Consumer deletePermissionPolicyRequest) throws WafInternalErrorException, WafStaleDataException, WafNonexistentItemException, AwsServiceException, SdkClientException, WafException { return deletePermissionPolicy(DeletePermissionPolicyRequest.builder().applyMutation(deletePermissionPolicyRequest) .build()); } /** * *

                                                                          * This is AWS WAF Classic documentation. For more information, see AWS WAF Classic in the * developer guide. *

                                                                          *

                                                                          * For the latest version of AWS WAF, use the AWS WAFV2 API and see the AWS WAF Developer Guide. With * the latest version, AWS WAF has a single set of endpoints for regional and global use. *

                                                                          *
                                                                          *

                                                                          * Permanently deletes a RateBasedRule. You can't delete a rule if it's still used in any WebACL * objects or if it still includes any predicates, such as ByteMatchSet objects. *

                                                                          *

                                                                          * If you just want to remove a rule from a WebACL, use UpdateWebACL. *

                                                                          *

                                                                          * To permanently delete a RateBasedRule from AWS WAF, perform the following steps: *

                                                                          *
                                                                            *
                                                                          1. *

                                                                            * Update the RateBasedRule to remove predicates, if any. For more information, see * UpdateRateBasedRule. *

                                                                            *
                                                                          2. *
                                                                          3. *

                                                                            * Use GetChangeToken to get the change token that you provide in the ChangeToken parameter of a * DeleteRateBasedRule request. *

                                                                            *
                                                                          4. *
                                                                          5. *

                                                                            * Submit a DeleteRateBasedRule request. *

                                                                            *
                                                                          6. *
                                                                          * * @param deleteRateBasedRuleRequest * @return Result of the DeleteRateBasedRule operation returned by the service. * @throws WafStaleDataException * The operation failed because you tried to create, update, or delete an object by using a change token * that has already been used. * @throws WafInternalErrorException * The operation failed because of a system problem, even though the request was valid. Retry your request. * @throws WafInvalidAccountException * The operation failed because you tried to create, update, or delete an object by using an invalid account * identifier. * @throws WafNonexistentItemException * The operation failed because the referenced object doesn't exist. * @throws WafReferencedItemException * The operation failed because you tried to delete an object that is still in use. For example:

                                                                          *
                                                                            *
                                                                          • *

                                                                            * You tried to delete a ByteMatchSet that is still referenced by a Rule. *

                                                                            *
                                                                          • *
                                                                          • *

                                                                            * You tried to delete a Rule that is still referenced by a WebACL. *

                                                                            *
                                                                          • * @throws WafNonEmptyEntityException * The operation failed because you tried to delete an object that isn't empty. For example:

                                                                            *
                                                                              *
                                                                            • *

                                                                              * You tried to delete a WebACL that still contains one or more Rule objects. *

                                                                              *
                                                                            • *
                                                                            • *

                                                                              * You tried to delete a Rule that still contains one or more ByteMatchSet objects * or other predicates. *

                                                                              *
                                                                            • *
                                                                            • *

                                                                              * You tried to delete a ByteMatchSet that contains one or more ByteMatchTuple * objects. *

                                                                              *
                                                                            • *
                                                                            • *

                                                                              * You tried to delete an IPSet that references one or more IP addresses. *

                                                                              *
                                                                            • * @throws WafTagOperationException * @throws WafTagOperationInternalErrorException * @throws SdkException * Base class for all exceptions that can be thrown by the SDK (both service and client). Can be used for * catch all scenarios. * @throws SdkClientException * If any client side error occurs such as an IO related failure, failure to get credentials, etc. * @throws WafException * Base class for all service exceptions. Unknown exceptions will be thrown as an instance of this type. * @sample WafClient.DeleteRateBasedRule * @see AWS API * Documentation */ default DeleteRateBasedRuleResponse deleteRateBasedRule(DeleteRateBasedRuleRequest deleteRateBasedRuleRequest) throws WafStaleDataException, WafInternalErrorException, WafInvalidAccountException, WafNonexistentItemException, WafReferencedItemException, WafNonEmptyEntityException, WafTagOperationException, WafTagOperationInternalErrorException, AwsServiceException, SdkClientException, WafException { throw new UnsupportedOperationException(); } /** * *

                                                                              * This is AWS WAF Classic documentation. For more information, see AWS WAF Classic in the * developer guide. *

                                                                              *

                                                                              * For the latest version of AWS WAF, use the AWS WAFV2 API and see the AWS WAF Developer Guide. With * the latest version, AWS WAF has a single set of endpoints for regional and global use. *

                                                                              *
                                                                              *

                                                                              * Permanently deletes a RateBasedRule. You can't delete a rule if it's still used in any WebACL * objects or if it still includes any predicates, such as ByteMatchSet objects. *

                                                                              *

                                                                              * If you just want to remove a rule from a WebACL, use UpdateWebACL. *

                                                                              *

                                                                              * To permanently delete a RateBasedRule from AWS WAF, perform the following steps: *

                                                                              *
                                                                                *
                                                                              1. *

                                                                                * Update the RateBasedRule to remove predicates, if any. For more information, see * UpdateRateBasedRule. *

                                                                                *
                                                                              2. *
                                                                              3. *

                                                                                * Use GetChangeToken to get the change token that you provide in the ChangeToken parameter of a * DeleteRateBasedRule request. *

                                                                                *
                                                                              4. *
                                                                              5. *

                                                                                * Submit a DeleteRateBasedRule request. *

                                                                                *
                                                                              6. *
                                                                              *
                                                                              *

                                                                              * This is a convenience which creates an instance of the {@link DeleteRateBasedRuleRequest.Builder} avoiding the * need to create one manually via {@link DeleteRateBasedRuleRequest#builder()} *

                                                                              * * @param deleteRateBasedRuleRequest * A {@link Consumer} that will call methods on * {@link software.amazon.awssdk.services.waf.model.DeleteRateBasedRuleRequest.Builder} to create a request. * @return Result of the DeleteRateBasedRule operation returned by the service. * @throws WafStaleDataException * The operation failed because you tried to create, update, or delete an object by using a change token * that has already been used. * @throws WafInternalErrorException * The operation failed because of a system problem, even though the request was valid. Retry your request. * @throws WafInvalidAccountException * The operation failed because you tried to create, update, or delete an object by using an invalid account * identifier. * @throws WafNonexistentItemException * The operation failed because the referenced object doesn't exist. * @throws WafReferencedItemException * The operation failed because you tried to delete an object that is still in use. For example:

                                                                              *
                                                                                *
                                                                              • *

                                                                                * You tried to delete a ByteMatchSet that is still referenced by a Rule. *

                                                                                *
                                                                              • *
                                                                              • *

                                                                                * You tried to delete a Rule that is still referenced by a WebACL. *

                                                                                *
                                                                              • * @throws WafNonEmptyEntityException * The operation failed because you tried to delete an object that isn't empty. For example:

                                                                                *
                                                                                  *
                                                                                • *

                                                                                  * You tried to delete a WebACL that still contains one or more Rule objects. *

                                                                                  *
                                                                                • *
                                                                                • *

                                                                                  * You tried to delete a Rule that still contains one or more ByteMatchSet objects * or other predicates. *

                                                                                  *
                                                                                • *
                                                                                • *

                                                                                  * You tried to delete a ByteMatchSet that contains one or more ByteMatchTuple * objects. *

                                                                                  *
                                                                                • *
                                                                                • *

                                                                                  * You tried to delete an IPSet that references one or more IP addresses. *

                                                                                  *
                                                                                • * @throws WafTagOperationException * @throws WafTagOperationInternalErrorException * @throws SdkException * Base class for all exceptions that can be thrown by the SDK (both service and client). Can be used for * catch all scenarios. * @throws SdkClientException * If any client side error occurs such as an IO related failure, failure to get credentials, etc. * @throws WafException * Base class for all service exceptions. Unknown exceptions will be thrown as an instance of this type. * @sample WafClient.DeleteRateBasedRule * @see AWS API * Documentation */ default DeleteRateBasedRuleResponse deleteRateBasedRule( Consumer deleteRateBasedRuleRequest) throws WafStaleDataException, WafInternalErrorException, WafInvalidAccountException, WafNonexistentItemException, WafReferencedItemException, WafNonEmptyEntityException, WafTagOperationException, WafTagOperationInternalErrorException, AwsServiceException, SdkClientException, WafException { return deleteRateBasedRule(DeleteRateBasedRuleRequest.builder().applyMutation(deleteRateBasedRuleRequest).build()); } /** * *

                                                                                  * This is AWS WAF Classic documentation. For more information, see AWS WAF Classic in the * developer guide. *

                                                                                  *

                                                                                  * For the latest version of AWS WAF, use the AWS WAFV2 API and see the AWS WAF Developer Guide. With * the latest version, AWS WAF has a single set of endpoints for regional and global use. *

                                                                                  *
                                                                                  *

                                                                                  * Permanently deletes a RegexMatchSet. You can't delete a RegexMatchSet if it's still used in * any Rules or if it still includes any RegexMatchTuples objects (any filters). *

                                                                                  *

                                                                                  * If you just want to remove a RegexMatchSet from a Rule, use UpdateRule. *

                                                                                  *

                                                                                  * To permanently delete a RegexMatchSet, perform the following steps: *

                                                                                  *
                                                                                    *
                                                                                  1. *

                                                                                    * Update the RegexMatchSet to remove filters, if any. For more information, see * UpdateRegexMatchSet. *

                                                                                    *
                                                                                  2. *
                                                                                  3. *

                                                                                    * Use GetChangeToken to get the change token that you provide in the ChangeToken parameter of a * DeleteRegexMatchSet request. *

                                                                                    *
                                                                                  4. *
                                                                                  5. *

                                                                                    * Submit a DeleteRegexMatchSet request. *

                                                                                    *
                                                                                  6. *
                                                                                  * * @param deleteRegexMatchSetRequest * @return Result of the DeleteRegexMatchSet operation returned by the service. * @throws WafInternalErrorException * The operation failed because of a system problem, even though the request was valid. Retry your request. * @throws WafInvalidAccountException * The operation failed because you tried to create, update, or delete an object by using an invalid account * identifier. * @throws WafNonexistentItemException * The operation failed because the referenced object doesn't exist. * @throws WafReferencedItemException * The operation failed because you tried to delete an object that is still in use. For example:

                                                                                  *
                                                                                    *
                                                                                  • *

                                                                                    * You tried to delete a ByteMatchSet that is still referenced by a Rule. *

                                                                                    *
                                                                                  • *
                                                                                  • *

                                                                                    * You tried to delete a Rule that is still referenced by a WebACL. *

                                                                                    *
                                                                                  • * @throws WafStaleDataException * The operation failed because you tried to create, update, or delete an object by using a change token * that has already been used. * @throws WafNonEmptyEntityException * The operation failed because you tried to delete an object that isn't empty. For example:

                                                                                    *
                                                                                      *
                                                                                    • *

                                                                                      * You tried to delete a WebACL that still contains one or more Rule objects. *

                                                                                      *
                                                                                    • *
                                                                                    • *

                                                                                      * You tried to delete a Rule that still contains one or more ByteMatchSet objects * or other predicates. *

                                                                                      *
                                                                                    • *
                                                                                    • *

                                                                                      * You tried to delete a ByteMatchSet that contains one or more ByteMatchTuple * objects. *

                                                                                      *
                                                                                    • *
                                                                                    • *

                                                                                      * You tried to delete an IPSet that references one or more IP addresses. *

                                                                                      *
                                                                                    • * @throws SdkException * Base class for all exceptions that can be thrown by the SDK (both service and client). Can be used for * catch all scenarios. * @throws SdkClientException * If any client side error occurs such as an IO related failure, failure to get credentials, etc. * @throws WafException * Base class for all service exceptions. Unknown exceptions will be thrown as an instance of this type. * @sample WafClient.DeleteRegexMatchSet * @see AWS API * Documentation */ default DeleteRegexMatchSetResponse deleteRegexMatchSet(DeleteRegexMatchSetRequest deleteRegexMatchSetRequest) throws WafInternalErrorException, WafInvalidAccountException, WafNonexistentItemException, WafReferencedItemException, WafStaleDataException, WafNonEmptyEntityException, AwsServiceException, SdkClientException, WafException { throw new UnsupportedOperationException(); } /** * *

                                                                                      * This is AWS WAF Classic documentation. For more information, see AWS WAF Classic in the * developer guide. *

                                                                                      *

                                                                                      * For the latest version of AWS WAF, use the AWS WAFV2 API and see the AWS WAF Developer Guide. With * the latest version, AWS WAF has a single set of endpoints for regional and global use. *

                                                                                      *
                                                                                      *

                                                                                      * Permanently deletes a RegexMatchSet. You can't delete a RegexMatchSet if it's still used in * any Rules or if it still includes any RegexMatchTuples objects (any filters). *

                                                                                      *

                                                                                      * If you just want to remove a RegexMatchSet from a Rule, use UpdateRule. *

                                                                                      *

                                                                                      * To permanently delete a RegexMatchSet, perform the following steps: *

                                                                                      *
                                                                                        *
                                                                                      1. *

                                                                                        * Update the RegexMatchSet to remove filters, if any. For more information, see * UpdateRegexMatchSet. *

                                                                                        *
                                                                                      2. *
                                                                                      3. *

                                                                                        * Use GetChangeToken to get the change token that you provide in the ChangeToken parameter of a * DeleteRegexMatchSet request. *

                                                                                        *
                                                                                      4. *
                                                                                      5. *

                                                                                        * Submit a DeleteRegexMatchSet request. *

                                                                                        *
                                                                                      6. *
                                                                                      *
                                                                                      *

                                                                                      * This is a convenience which creates an instance of the {@link DeleteRegexMatchSetRequest.Builder} avoiding the * need to create one manually via {@link DeleteRegexMatchSetRequest#builder()} *

                                                                                      * * @param deleteRegexMatchSetRequest * A {@link Consumer} that will call methods on * {@link software.amazon.awssdk.services.waf.model.DeleteRegexMatchSetRequest.Builder} to create a request. * @return Result of the DeleteRegexMatchSet operation returned by the service. * @throws WafInternalErrorException * The operation failed because of a system problem, even though the request was valid. Retry your request. * @throws WafInvalidAccountException * The operation failed because you tried to create, update, or delete an object by using an invalid account * identifier. * @throws WafNonexistentItemException * The operation failed because the referenced object doesn't exist. * @throws WafReferencedItemException * The operation failed because you tried to delete an object that is still in use. For example:

                                                                                      *
                                                                                        *
                                                                                      • *

                                                                                        * You tried to delete a ByteMatchSet that is still referenced by a Rule. *

                                                                                        *
                                                                                      • *
                                                                                      • *

                                                                                        * You tried to delete a Rule that is still referenced by a WebACL. *

                                                                                        *
                                                                                      • * @throws WafStaleDataException * The operation failed because you tried to create, update, or delete an object by using a change token * that has already been used. * @throws WafNonEmptyEntityException * The operation failed because you tried to delete an object that isn't empty. For example:

                                                                                        *
                                                                                          *
                                                                                        • *

                                                                                          * You tried to delete a WebACL that still contains one or more Rule objects. *

                                                                                          *
                                                                                        • *
                                                                                        • *

                                                                                          * You tried to delete a Rule that still contains one or more ByteMatchSet objects * or other predicates. *

                                                                                          *
                                                                                        • *
                                                                                        • *

                                                                                          * You tried to delete a ByteMatchSet that contains one or more ByteMatchTuple * objects. *

                                                                                          *
                                                                                        • *
                                                                                        • *

                                                                                          * You tried to delete an IPSet that references one or more IP addresses. *

                                                                                          *
                                                                                        • * @throws SdkException * Base class for all exceptions that can be thrown by the SDK (both service and client). Can be used for * catch all scenarios. * @throws SdkClientException * If any client side error occurs such as an IO related failure, failure to get credentials, etc. * @throws WafException * Base class for all service exceptions. Unknown exceptions will be thrown as an instance of this type. * @sample WafClient.DeleteRegexMatchSet * @see AWS API * Documentation */ default DeleteRegexMatchSetResponse deleteRegexMatchSet( Consumer deleteRegexMatchSetRequest) throws WafInternalErrorException, WafInvalidAccountException, WafNonexistentItemException, WafReferencedItemException, WafStaleDataException, WafNonEmptyEntityException, AwsServiceException, SdkClientException, WafException { return deleteRegexMatchSet(DeleteRegexMatchSetRequest.builder().applyMutation(deleteRegexMatchSetRequest).build()); } /** * *

                                                                                          * This is AWS WAF Classic documentation. For more information, see AWS WAF Classic in the * developer guide. *

                                                                                          *

                                                                                          * For the latest version of AWS WAF, use the AWS WAFV2 API and see the AWS WAF Developer Guide. With * the latest version, AWS WAF has a single set of endpoints for regional and global use. *

                                                                                          *
                                                                                          *

                                                                                          * Permanently deletes a RegexPatternSet. You can't delete a RegexPatternSet if it's still used * in any RegexMatchSet or if the RegexPatternSet is not empty. *

                                                                                          * * @param deleteRegexPatternSetRequest * @return Result of the DeleteRegexPatternSet operation returned by the service. * @throws WafInternalErrorException * The operation failed because of a system problem, even though the request was valid. Retry your request. * @throws WafInvalidAccountException * The operation failed because you tried to create, update, or delete an object by using an invalid account * identifier. * @throws WafNonexistentItemException * The operation failed because the referenced object doesn't exist. * @throws WafReferencedItemException * The operation failed because you tried to delete an object that is still in use. For example:

                                                                                          *
                                                                                            *
                                                                                          • *

                                                                                            * You tried to delete a ByteMatchSet that is still referenced by a Rule. *

                                                                                            *
                                                                                          • *
                                                                                          • *

                                                                                            * You tried to delete a Rule that is still referenced by a WebACL. *

                                                                                            *
                                                                                          • * @throws WafStaleDataException * The operation failed because you tried to create, update, or delete an object by using a change token * that has already been used. * @throws WafNonEmptyEntityException * The operation failed because you tried to delete an object that isn't empty. For example:

                                                                                            *
                                                                                              *
                                                                                            • *

                                                                                              * You tried to delete a WebACL that still contains one or more Rule objects. *

                                                                                              *
                                                                                            • *
                                                                                            • *

                                                                                              * You tried to delete a Rule that still contains one or more ByteMatchSet objects * or other predicates. *

                                                                                              *
                                                                                            • *
                                                                                            • *

                                                                                              * You tried to delete a ByteMatchSet that contains one or more ByteMatchTuple * objects. *

                                                                                              *
                                                                                            • *
                                                                                            • *

                                                                                              * You tried to delete an IPSet that references one or more IP addresses. *

                                                                                              *
                                                                                            • * @throws SdkException * Base class for all exceptions that can be thrown by the SDK (both service and client). Can be used for * catch all scenarios. * @throws SdkClientException * If any client side error occurs such as an IO related failure, failure to get credentials, etc. * @throws WafException * Base class for all service exceptions. Unknown exceptions will be thrown as an instance of this type. * @sample WafClient.DeleteRegexPatternSet * @see AWS API * Documentation */ default DeleteRegexPatternSetResponse deleteRegexPatternSet(DeleteRegexPatternSetRequest deleteRegexPatternSetRequest) throws WafInternalErrorException, WafInvalidAccountException, WafNonexistentItemException, WafReferencedItemException, WafStaleDataException, WafNonEmptyEntityException, AwsServiceException, SdkClientException, WafException { throw new UnsupportedOperationException(); } /** * *

                                                                                              * This is AWS WAF Classic documentation. For more information, see AWS WAF Classic in the * developer guide. *

                                                                                              *

                                                                                              * For the latest version of AWS WAF, use the AWS WAFV2 API and see the AWS WAF Developer Guide. With * the latest version, AWS WAF has a single set of endpoints for regional and global use. *

                                                                                              *
                                                                                              *

                                                                                              * Permanently deletes a RegexPatternSet. You can't delete a RegexPatternSet if it's still used * in any RegexMatchSet or if the RegexPatternSet is not empty. *

                                                                                              *
                                                                                              *

                                                                                              * This is a convenience which creates an instance of the {@link DeleteRegexPatternSetRequest.Builder} avoiding the * need to create one manually via {@link DeleteRegexPatternSetRequest#builder()} *

                                                                                              * * @param deleteRegexPatternSetRequest * A {@link Consumer} that will call methods on * {@link software.amazon.awssdk.services.waf.model.DeleteRegexPatternSetRequest.Builder} to create a * request. * @return Result of the DeleteRegexPatternSet operation returned by the service. * @throws WafInternalErrorException * The operation failed because of a system problem, even though the request was valid. Retry your request. * @throws WafInvalidAccountException * The operation failed because you tried to create, update, or delete an object by using an invalid account * identifier. * @throws WafNonexistentItemException * The operation failed because the referenced object doesn't exist. * @throws WafReferencedItemException * The operation failed because you tried to delete an object that is still in use. For example:

                                                                                              *
                                                                                                *
                                                                                              • *

                                                                                                * You tried to delete a ByteMatchSet that is still referenced by a Rule. *

                                                                                                *
                                                                                              • *
                                                                                              • *

                                                                                                * You tried to delete a Rule that is still referenced by a WebACL. *

                                                                                                *
                                                                                              • * @throws WafStaleDataException * The operation failed because you tried to create, update, or delete an object by using a change token * that has already been used. * @throws WafNonEmptyEntityException * The operation failed because you tried to delete an object that isn't empty. For example:

                                                                                                *
                                                                                                  *
                                                                                                • *

                                                                                                  * You tried to delete a WebACL that still contains one or more Rule objects. *

                                                                                                  *
                                                                                                • *
                                                                                                • *

                                                                                                  * You tried to delete a Rule that still contains one or more ByteMatchSet objects * or other predicates. *

                                                                                                  *
                                                                                                • *
                                                                                                • *

                                                                                                  * You tried to delete a ByteMatchSet that contains one or more ByteMatchTuple * objects. *

                                                                                                  *
                                                                                                • *
                                                                                                • *

                                                                                                  * You tried to delete an IPSet that references one or more IP addresses. *

                                                                                                  *
                                                                                                • * @throws SdkException * Base class for all exceptions that can be thrown by the SDK (both service and client). Can be used for * catch all scenarios. * @throws SdkClientException * If any client side error occurs such as an IO related failure, failure to get credentials, etc. * @throws WafException * Base class for all service exceptions. Unknown exceptions will be thrown as an instance of this type. * @sample WafClient.DeleteRegexPatternSet * @see AWS API * Documentation */ default DeleteRegexPatternSetResponse deleteRegexPatternSet( Consumer deleteRegexPatternSetRequest) throws WafInternalErrorException, WafInvalidAccountException, WafNonexistentItemException, WafReferencedItemException, WafStaleDataException, WafNonEmptyEntityException, AwsServiceException, SdkClientException, WafException { return deleteRegexPatternSet(DeleteRegexPatternSetRequest.builder().applyMutation(deleteRegexPatternSetRequest).build()); } /** * *

                                                                                                  * This is AWS WAF Classic documentation. For more information, see AWS WAF Classic in the * developer guide. *

                                                                                                  *

                                                                                                  * For the latest version of AWS WAF, use the AWS WAFV2 API and see the AWS WAF Developer Guide. With * the latest version, AWS WAF has a single set of endpoints for regional and global use. *

                                                                                                  *
                                                                                                  *

                                                                                                  * Permanently deletes a Rule. You can't delete a Rule if it's still used in any * WebACL objects or if it still includes any predicates, such as ByteMatchSet objects. *

                                                                                                  *

                                                                                                  * If you just want to remove a Rule from a WebACL, use UpdateWebACL. *

                                                                                                  *

                                                                                                  * To permanently delete a Rule from AWS WAF, perform the following steps: *

                                                                                                  *
                                                                                                    *
                                                                                                  1. *

                                                                                                    * Update the Rule to remove predicates, if any. For more information, see UpdateRule. *

                                                                                                    *
                                                                                                  2. *
                                                                                                  3. *

                                                                                                    * Use GetChangeToken to get the change token that you provide in the ChangeToken parameter of a * DeleteRule request. *

                                                                                                    *
                                                                                                  4. *
                                                                                                  5. *

                                                                                                    * Submit a DeleteRule request. *

                                                                                                    *
                                                                                                  6. *
                                                                                                  * * @param deleteRuleRequest * @return Result of the DeleteRule operation returned by the service. * @throws WafStaleDataException * The operation failed because you tried to create, update, or delete an object by using a change token * that has already been used. * @throws WafInternalErrorException * The operation failed because of a system problem, even though the request was valid. Retry your request. * @throws WafInvalidAccountException * The operation failed because you tried to create, update, or delete an object by using an invalid account * identifier. * @throws WafNonexistentItemException * The operation failed because the referenced object doesn't exist. * @throws WafReferencedItemException * The operation failed because you tried to delete an object that is still in use. For example:

                                                                                                  *
                                                                                                    *
                                                                                                  • *

                                                                                                    * You tried to delete a ByteMatchSet that is still referenced by a Rule. *

                                                                                                    *
                                                                                                  • *
                                                                                                  • *

                                                                                                    * You tried to delete a Rule that is still referenced by a WebACL. *

                                                                                                    *
                                                                                                  • * @throws WafNonEmptyEntityException * The operation failed because you tried to delete an object that isn't empty. For example:

                                                                                                    *
                                                                                                      *
                                                                                                    • *

                                                                                                      * You tried to delete a WebACL that still contains one or more Rule objects. *

                                                                                                      *
                                                                                                    • *
                                                                                                    • *

                                                                                                      * You tried to delete a Rule that still contains one or more ByteMatchSet objects * or other predicates. *

                                                                                                      *
                                                                                                    • *
                                                                                                    • *

                                                                                                      * You tried to delete a ByteMatchSet that contains one or more ByteMatchTuple * objects. *

                                                                                                      *
                                                                                                    • *
                                                                                                    • *

                                                                                                      * You tried to delete an IPSet that references one or more IP addresses. *

                                                                                                      *
                                                                                                    • * @throws WafTagOperationException * @throws WafTagOperationInternalErrorException * @throws SdkException * Base class for all exceptions that can be thrown by the SDK (both service and client). Can be used for * catch all scenarios. * @throws SdkClientException * If any client side error occurs such as an IO related failure, failure to get credentials, etc. * @throws WafException * Base class for all service exceptions. Unknown exceptions will be thrown as an instance of this type. * @sample WafClient.DeleteRule * @see AWS API * Documentation */ default DeleteRuleResponse deleteRule(DeleteRuleRequest deleteRuleRequest) throws WafStaleDataException, WafInternalErrorException, WafInvalidAccountException, WafNonexistentItemException, WafReferencedItemException, WafNonEmptyEntityException, WafTagOperationException, WafTagOperationInternalErrorException, AwsServiceException, SdkClientException, WafException { throw new UnsupportedOperationException(); } /** * *

                                                                                                      * This is AWS WAF Classic documentation. For more information, see AWS WAF Classic in the * developer guide. *

                                                                                                      *

                                                                                                      * For the latest version of AWS WAF, use the AWS WAFV2 API and see the AWS WAF Developer Guide. With * the latest version, AWS WAF has a single set of endpoints for regional and global use. *

                                                                                                      *
                                                                                                      *

                                                                                                      * Permanently deletes a Rule. You can't delete a Rule if it's still used in any * WebACL objects or if it still includes any predicates, such as ByteMatchSet objects. *

                                                                                                      *

                                                                                                      * If you just want to remove a Rule from a WebACL, use UpdateWebACL. *

                                                                                                      *

                                                                                                      * To permanently delete a Rule from AWS WAF, perform the following steps: *

                                                                                                      *
                                                                                                        *
                                                                                                      1. *

                                                                                                        * Update the Rule to remove predicates, if any. For more information, see UpdateRule. *

                                                                                                        *
                                                                                                      2. *
                                                                                                      3. *

                                                                                                        * Use GetChangeToken to get the change token that you provide in the ChangeToken parameter of a * DeleteRule request. *

                                                                                                        *
                                                                                                      4. *
                                                                                                      5. *

                                                                                                        * Submit a DeleteRule request. *

                                                                                                        *
                                                                                                      6. *
                                                                                                      *
                                                                                                      *

                                                                                                      * This is a convenience which creates an instance of the {@link DeleteRuleRequest.Builder} avoiding the need to * create one manually via {@link DeleteRuleRequest#builder()} *

                                                                                                      * * @param deleteRuleRequest * A {@link Consumer} that will call methods on * {@link software.amazon.awssdk.services.waf.model.DeleteRuleRequest.Builder} to create a request. * @return Result of the DeleteRule operation returned by the service. * @throws WafStaleDataException * The operation failed because you tried to create, update, or delete an object by using a change token * that has already been used. * @throws WafInternalErrorException * The operation failed because of a system problem, even though the request was valid. Retry your request. * @throws WafInvalidAccountException * The operation failed because you tried to create, update, or delete an object by using an invalid account * identifier. * @throws WafNonexistentItemException * The operation failed because the referenced object doesn't exist. * @throws WafReferencedItemException * The operation failed because you tried to delete an object that is still in use. For example:

                                                                                                      *
                                                                                                        *
                                                                                                      • *

                                                                                                        * You tried to delete a ByteMatchSet that is still referenced by a Rule. *

                                                                                                        *
                                                                                                      • *
                                                                                                      • *

                                                                                                        * You tried to delete a Rule that is still referenced by a WebACL. *

                                                                                                        *
                                                                                                      • * @throws WafNonEmptyEntityException * The operation failed because you tried to delete an object that isn't empty. For example:

                                                                                                        *
                                                                                                          *
                                                                                                        • *

                                                                                                          * You tried to delete a WebACL that still contains one or more Rule objects. *

                                                                                                          *
                                                                                                        • *
                                                                                                        • *

                                                                                                          * You tried to delete a Rule that still contains one or more ByteMatchSet objects * or other predicates. *

                                                                                                          *
                                                                                                        • *
                                                                                                        • *

                                                                                                          * You tried to delete a ByteMatchSet that contains one or more ByteMatchTuple * objects. *

                                                                                                          *
                                                                                                        • *
                                                                                                        • *

                                                                                                          * You tried to delete an IPSet that references one or more IP addresses. *

                                                                                                          *
                                                                                                        • * @throws WafTagOperationException * @throws WafTagOperationInternalErrorException * @throws SdkException * Base class for all exceptions that can be thrown by the SDK (both service and client). Can be used for * catch all scenarios. * @throws SdkClientException * If any client side error occurs such as an IO related failure, failure to get credentials, etc. * @throws WafException * Base class for all service exceptions. Unknown exceptions will be thrown as an instance of this type. * @sample WafClient.DeleteRule * @see AWS API * Documentation */ default DeleteRuleResponse deleteRule(Consumer deleteRuleRequest) throws WafStaleDataException, WafInternalErrorException, WafInvalidAccountException, WafNonexistentItemException, WafReferencedItemException, WafNonEmptyEntityException, WafTagOperationException, WafTagOperationInternalErrorException, AwsServiceException, SdkClientException, WafException { return deleteRule(DeleteRuleRequest.builder().applyMutation(deleteRuleRequest).build()); } /** * *

                                                                                                          * This is AWS WAF Classic documentation. For more information, see AWS WAF Classic in the * developer guide. *

                                                                                                          *

                                                                                                          * For the latest version of AWS WAF, use the AWS WAFV2 API and see the AWS WAF Developer Guide. With * the latest version, AWS WAF has a single set of endpoints for regional and global use. *

                                                                                                          *
                                                                                                          *

                                                                                                          * Permanently deletes a RuleGroup. You can't delete a RuleGroup if it's still used in any * WebACL objects or if it still includes any rules. *

                                                                                                          *

                                                                                                          * If you just want to remove a RuleGroup from a WebACL, use UpdateWebACL. *

                                                                                                          *

                                                                                                          * To permanently delete a RuleGroup from AWS WAF, perform the following steps: *

                                                                                                          *
                                                                                                            *
                                                                                                          1. *

                                                                                                            * Update the RuleGroup to remove rules, if any. For more information, see UpdateRuleGroup. *

                                                                                                            *
                                                                                                          2. *
                                                                                                          3. *

                                                                                                            * Use GetChangeToken to get the change token that you provide in the ChangeToken parameter of a * DeleteRuleGroup request. *

                                                                                                            *
                                                                                                          4. *
                                                                                                          5. *

                                                                                                            * Submit a DeleteRuleGroup request. *

                                                                                                            *
                                                                                                          6. *
                                                                                                          * * @param deleteRuleGroupRequest * @return Result of the DeleteRuleGroup operation returned by the service. * @throws WafStaleDataException * The operation failed because you tried to create, update, or delete an object by using a change token * that has already been used. * @throws WafInternalErrorException * The operation failed because of a system problem, even though the request was valid. Retry your request. * @throws WafNonexistentItemException * The operation failed because the referenced object doesn't exist. * @throws WafReferencedItemException * The operation failed because you tried to delete an object that is still in use. For example:

                                                                                                          *
                                                                                                            *
                                                                                                          • *

                                                                                                            * You tried to delete a ByteMatchSet that is still referenced by a Rule. *

                                                                                                            *
                                                                                                          • *
                                                                                                          • *

                                                                                                            * You tried to delete a Rule that is still referenced by a WebACL. *

                                                                                                            *
                                                                                                          • * @throws WafNonEmptyEntityException * The operation failed because you tried to delete an object that isn't empty. For example:

                                                                                                            *
                                                                                                              *
                                                                                                            • *

                                                                                                              * You tried to delete a WebACL that still contains one or more Rule objects. *

                                                                                                              *
                                                                                                            • *
                                                                                                            • *

                                                                                                              * You tried to delete a Rule that still contains one or more ByteMatchSet objects * or other predicates. *

                                                                                                              *
                                                                                                            • *
                                                                                                            • *

                                                                                                              * You tried to delete a ByteMatchSet that contains one or more ByteMatchTuple * objects. *

                                                                                                              *
                                                                                                            • *
                                                                                                            • *

                                                                                                              * You tried to delete an IPSet that references one or more IP addresses. *

                                                                                                              *
                                                                                                            • * @throws WafInvalidOperationException * The operation failed because there was nothing to do. For example:

                                                                                                              *
                                                                                                                *
                                                                                                              • *

                                                                                                                * You tried to remove a Rule from a WebACL, but the Rule isn't in * the specified WebACL. *

                                                                                                                *
                                                                                                              • *
                                                                                                              • *

                                                                                                                * You tried to remove an IP address from an IPSet, but the IP address isn't in the specified * IPSet. *

                                                                                                                *
                                                                                                              • *
                                                                                                              • *

                                                                                                                * You tried to remove a ByteMatchTuple from a ByteMatchSet, but the * ByteMatchTuple isn't in the specified WebACL. *

                                                                                                                *
                                                                                                              • *
                                                                                                              • *

                                                                                                                * You tried to add a Rule to a WebACL, but the Rule already exists * in the specified WebACL. *

                                                                                                                *
                                                                                                              • *
                                                                                                              • *

                                                                                                                * You tried to add a ByteMatchTuple to a ByteMatchSet, but the * ByteMatchTuple already exists in the specified WebACL. *

                                                                                                                *
                                                                                                              • * @throws WafTagOperationException * @throws WafTagOperationInternalErrorException * @throws SdkException * Base class for all exceptions that can be thrown by the SDK (both service and client). Can be used for * catch all scenarios. * @throws SdkClientException * If any client side error occurs such as an IO related failure, failure to get credentials, etc. * @throws WafException * Base class for all service exceptions. Unknown exceptions will be thrown as an instance of this type. * @sample WafClient.DeleteRuleGroup * @see AWS API * Documentation */ default DeleteRuleGroupResponse deleteRuleGroup(DeleteRuleGroupRequest deleteRuleGroupRequest) throws WafStaleDataException, WafInternalErrorException, WafNonexistentItemException, WafReferencedItemException, WafNonEmptyEntityException, WafInvalidOperationException, WafTagOperationException, WafTagOperationInternalErrorException, AwsServiceException, SdkClientException, WafException { throw new UnsupportedOperationException(); } /** * *

                                                                                                                * This is AWS WAF Classic documentation. For more information, see AWS WAF Classic in the * developer guide. *

                                                                                                                *

                                                                                                                * For the latest version of AWS WAF, use the AWS WAFV2 API and see the AWS WAF Developer Guide. With * the latest version, AWS WAF has a single set of endpoints for regional and global use. *

                                                                                                                *
                                                                                                                *

                                                                                                                * Permanently deletes a RuleGroup. You can't delete a RuleGroup if it's still used in any * WebACL objects or if it still includes any rules. *

                                                                                                                *

                                                                                                                * If you just want to remove a RuleGroup from a WebACL, use UpdateWebACL. *

                                                                                                                *

                                                                                                                * To permanently delete a RuleGroup from AWS WAF, perform the following steps: *

                                                                                                                *
                                                                                                                  *
                                                                                                                1. *

                                                                                                                  * Update the RuleGroup to remove rules, if any. For more information, see UpdateRuleGroup. *

                                                                                                                  *
                                                                                                                2. *
                                                                                                                3. *

                                                                                                                  * Use GetChangeToken to get the change token that you provide in the ChangeToken parameter of a * DeleteRuleGroup request. *

                                                                                                                  *
                                                                                                                4. *
                                                                                                                5. *

                                                                                                                  * Submit a DeleteRuleGroup request. *

                                                                                                                  *
                                                                                                                6. *
                                                                                                                *
                                                                                                                *

                                                                                                                * This is a convenience which creates an instance of the {@link DeleteRuleGroupRequest.Builder} avoiding the need * to create one manually via {@link DeleteRuleGroupRequest#builder()} *

                                                                                                                * * @param deleteRuleGroupRequest * A {@link Consumer} that will call methods on * {@link software.amazon.awssdk.services.waf.model.DeleteRuleGroupRequest.Builder} to create a request. * @return Result of the DeleteRuleGroup operation returned by the service. * @throws WafStaleDataException * The operation failed because you tried to create, update, or delete an object by using a change token * that has already been used. * @throws WafInternalErrorException * The operation failed because of a system problem, even though the request was valid. Retry your request. * @throws WafNonexistentItemException * The operation failed because the referenced object doesn't exist. * @throws WafReferencedItemException * The operation failed because you tried to delete an object that is still in use. For example:

                                                                                                                *
                                                                                                                  *
                                                                                                                • *

                                                                                                                  * You tried to delete a ByteMatchSet that is still referenced by a Rule. *

                                                                                                                  *
                                                                                                                • *
                                                                                                                • *

                                                                                                                  * You tried to delete a Rule that is still referenced by a WebACL. *

                                                                                                                  *
                                                                                                                • * @throws WafNonEmptyEntityException * The operation failed because you tried to delete an object that isn't empty. For example:

                                                                                                                  *
                                                                                                                    *
                                                                                                                  • *

                                                                                                                    * You tried to delete a WebACL that still contains one or more Rule objects. *

                                                                                                                    *
                                                                                                                  • *
                                                                                                                  • *

                                                                                                                    * You tried to delete a Rule that still contains one or more ByteMatchSet objects * or other predicates. *

                                                                                                                    *
                                                                                                                  • *
                                                                                                                  • *

                                                                                                                    * You tried to delete a ByteMatchSet that contains one or more ByteMatchTuple * objects. *

                                                                                                                    *
                                                                                                                  • *
                                                                                                                  • *

                                                                                                                    * You tried to delete an IPSet that references one or more IP addresses. *

                                                                                                                    *
                                                                                                                  • * @throws WafInvalidOperationException * The operation failed because there was nothing to do. For example:

                                                                                                                    *
                                                                                                                      *
                                                                                                                    • *

                                                                                                                      * You tried to remove a Rule from a WebACL, but the Rule isn't in * the specified WebACL. *

                                                                                                                      *
                                                                                                                    • *
                                                                                                                    • *

                                                                                                                      * You tried to remove an IP address from an IPSet, but the IP address isn't in the specified * IPSet. *

                                                                                                                      *
                                                                                                                    • *
                                                                                                                    • *

                                                                                                                      * You tried to remove a ByteMatchTuple from a ByteMatchSet, but the * ByteMatchTuple isn't in the specified WebACL. *

                                                                                                                      *
                                                                                                                    • *
                                                                                                                    • *

                                                                                                                      * You tried to add a Rule to a WebACL, but the Rule already exists * in the specified WebACL. *

                                                                                                                      *
                                                                                                                    • *
                                                                                                                    • *

                                                                                                                      * You tried to add a ByteMatchTuple to a ByteMatchSet, but the * ByteMatchTuple already exists in the specified WebACL. *

                                                                                                                      *
                                                                                                                    • * @throws WafTagOperationException * @throws WafTagOperationInternalErrorException * @throws SdkException * Base class for all exceptions that can be thrown by the SDK (both service and client). Can be used for * catch all scenarios. * @throws SdkClientException * If any client side error occurs such as an IO related failure, failure to get credentials, etc. * @throws WafException * Base class for all service exceptions. Unknown exceptions will be thrown as an instance of this type. * @sample WafClient.DeleteRuleGroup * @see AWS API * Documentation */ default DeleteRuleGroupResponse deleteRuleGroup(Consumer deleteRuleGroupRequest) throws WafStaleDataException, WafInternalErrorException, WafNonexistentItemException, WafReferencedItemException, WafNonEmptyEntityException, WafInvalidOperationException, WafTagOperationException, WafTagOperationInternalErrorException, AwsServiceException, SdkClientException, WafException { return deleteRuleGroup(DeleteRuleGroupRequest.builder().applyMutation(deleteRuleGroupRequest).build()); } /** * *

                                                                                                                      * This is AWS WAF Classic documentation. For more information, see AWS WAF Classic in the * developer guide. *

                                                                                                                      *

                                                                                                                      * For the latest version of AWS WAF, use the AWS WAFV2 API and see the AWS WAF Developer Guide. With * the latest version, AWS WAF has a single set of endpoints for regional and global use. *

                                                                                                                      *
                                                                                                                      *

                                                                                                                      * Permanently deletes a SizeConstraintSet. You can't delete a SizeConstraintSet if it's still * used in any Rules or if it still includes any SizeConstraint objects (any filters). *

                                                                                                                      *

                                                                                                                      * If you just want to remove a SizeConstraintSet from a Rule, use UpdateRule. *

                                                                                                                      *

                                                                                                                      * To permanently delete a SizeConstraintSet, perform the following steps: *

                                                                                                                      *
                                                                                                                        *
                                                                                                                      1. *

                                                                                                                        * Update the SizeConstraintSet to remove filters, if any. For more information, see * UpdateSizeConstraintSet. *

                                                                                                                        *
                                                                                                                      2. *
                                                                                                                      3. *

                                                                                                                        * Use GetChangeToken to get the change token that you provide in the ChangeToken parameter of a * DeleteSizeConstraintSet request. *

                                                                                                                        *
                                                                                                                      4. *
                                                                                                                      5. *

                                                                                                                        * Submit a DeleteSizeConstraintSet request. *

                                                                                                                        *
                                                                                                                      6. *
                                                                                                                      * * @param deleteSizeConstraintSetRequest * @return Result of the DeleteSizeConstraintSet operation returned by the service. * @throws WafStaleDataException * The operation failed because you tried to create, update, or delete an object by using a change token * that has already been used. * @throws WafInternalErrorException * The operation failed because of a system problem, even though the request was valid. Retry your request. * @throws WafInvalidAccountException * The operation failed because you tried to create, update, or delete an object by using an invalid account * identifier. * @throws WafNonexistentItemException * The operation failed because the referenced object doesn't exist. * @throws WafReferencedItemException * The operation failed because you tried to delete an object that is still in use. For example:

                                                                                                                      *
                                                                                                                        *
                                                                                                                      • *

                                                                                                                        * You tried to delete a ByteMatchSet that is still referenced by a Rule. *

                                                                                                                        *
                                                                                                                      • *
                                                                                                                      • *

                                                                                                                        * You tried to delete a Rule that is still referenced by a WebACL. *

                                                                                                                        *
                                                                                                                      • * @throws WafNonEmptyEntityException * The operation failed because you tried to delete an object that isn't empty. For example:

                                                                                                                        *
                                                                                                                          *
                                                                                                                        • *

                                                                                                                          * You tried to delete a WebACL that still contains one or more Rule objects. *

                                                                                                                          *
                                                                                                                        • *
                                                                                                                        • *

                                                                                                                          * You tried to delete a Rule that still contains one or more ByteMatchSet objects * or other predicates. *

                                                                                                                          *
                                                                                                                        • *
                                                                                                                        • *

                                                                                                                          * You tried to delete a ByteMatchSet that contains one or more ByteMatchTuple * objects. *

                                                                                                                          *
                                                                                                                        • *
                                                                                                                        • *

                                                                                                                          * You tried to delete an IPSet that references one or more IP addresses. *

                                                                                                                          *
                                                                                                                        • * @throws SdkException * Base class for all exceptions that can be thrown by the SDK (both service and client). Can be used for * catch all scenarios. * @throws SdkClientException * If any client side error occurs such as an IO related failure, failure to get credentials, etc. * @throws WafException * Base class for all service exceptions. Unknown exceptions will be thrown as an instance of this type. * @sample WafClient.DeleteSizeConstraintSet * @see AWS * API Documentation */ default DeleteSizeConstraintSetResponse deleteSizeConstraintSet(DeleteSizeConstraintSetRequest deleteSizeConstraintSetRequest) throws WafStaleDataException, WafInternalErrorException, WafInvalidAccountException, WafNonexistentItemException, WafReferencedItemException, WafNonEmptyEntityException, AwsServiceException, SdkClientException, WafException { throw new UnsupportedOperationException(); } /** * *

                                                                                                                          * This is AWS WAF Classic documentation. For more information, see AWS WAF Classic in the * developer guide. *

                                                                                                                          *

                                                                                                                          * For the latest version of AWS WAF, use the AWS WAFV2 API and see the AWS WAF Developer Guide. With * the latest version, AWS WAF has a single set of endpoints for regional and global use. *

                                                                                                                          *
                                                                                                                          *

                                                                                                                          * Permanently deletes a SizeConstraintSet. You can't delete a SizeConstraintSet if it's still * used in any Rules or if it still includes any SizeConstraint objects (any filters). *

                                                                                                                          *

                                                                                                                          * If you just want to remove a SizeConstraintSet from a Rule, use UpdateRule. *

                                                                                                                          *

                                                                                                                          * To permanently delete a SizeConstraintSet, perform the following steps: *

                                                                                                                          *
                                                                                                                            *
                                                                                                                          1. *

                                                                                                                            * Update the SizeConstraintSet to remove filters, if any. For more information, see * UpdateSizeConstraintSet. *

                                                                                                                            *
                                                                                                                          2. *
                                                                                                                          3. *

                                                                                                                            * Use GetChangeToken to get the change token that you provide in the ChangeToken parameter of a * DeleteSizeConstraintSet request. *

                                                                                                                            *
                                                                                                                          4. *
                                                                                                                          5. *

                                                                                                                            * Submit a DeleteSizeConstraintSet request. *

                                                                                                                            *
                                                                                                                          6. *
                                                                                                                          *
                                                                                                                          *

                                                                                                                          * This is a convenience which creates an instance of the {@link DeleteSizeConstraintSetRequest.Builder} avoiding * the need to create one manually via {@link DeleteSizeConstraintSetRequest#builder()} *

                                                                                                                          * * @param deleteSizeConstraintSetRequest * A {@link Consumer} that will call methods on * {@link software.amazon.awssdk.services.waf.model.DeleteSizeConstraintSetRequest.Builder} to create a * request. * @return Result of the DeleteSizeConstraintSet operation returned by the service. * @throws WafStaleDataException * The operation failed because you tried to create, update, or delete an object by using a change token * that has already been used. * @throws WafInternalErrorException * The operation failed because of a system problem, even though the request was valid. Retry your request. * @throws WafInvalidAccountException * The operation failed because you tried to create, update, or delete an object by using an invalid account * identifier. * @throws WafNonexistentItemException * The operation failed because the referenced object doesn't exist. * @throws WafReferencedItemException * The operation failed because you tried to delete an object that is still in use. For example:

                                                                                                                          *
                                                                                                                            *
                                                                                                                          • *

                                                                                                                            * You tried to delete a ByteMatchSet that is still referenced by a Rule. *

                                                                                                                            *
                                                                                                                          • *
                                                                                                                          • *

                                                                                                                            * You tried to delete a Rule that is still referenced by a WebACL. *

                                                                                                                            *
                                                                                                                          • * @throws WafNonEmptyEntityException * The operation failed because you tried to delete an object that isn't empty. For example:

                                                                                                                            *
                                                                                                                              *
                                                                                                                            • *

                                                                                                                              * You tried to delete a WebACL that still contains one or more Rule objects. *

                                                                                                                              *
                                                                                                                            • *
                                                                                                                            • *

                                                                                                                              * You tried to delete a Rule that still contains one or more ByteMatchSet objects * or other predicates. *

                                                                                                                              *
                                                                                                                            • *
                                                                                                                            • *

                                                                                                                              * You tried to delete a ByteMatchSet that contains one or more ByteMatchTuple * objects. *

                                                                                                                              *
                                                                                                                            • *
                                                                                                                            • *

                                                                                                                              * You tried to delete an IPSet that references one or more IP addresses. *

                                                                                                                              *
                                                                                                                            • * @throws SdkException * Base class for all exceptions that can be thrown by the SDK (both service and client). Can be used for * catch all scenarios. * @throws SdkClientException * If any client side error occurs such as an IO related failure, failure to get credentials, etc. * @throws WafException * Base class for all service exceptions. Unknown exceptions will be thrown as an instance of this type. * @sample WafClient.DeleteSizeConstraintSet * @see AWS * API Documentation */ default DeleteSizeConstraintSetResponse deleteSizeConstraintSet( Consumer deleteSizeConstraintSetRequest) throws WafStaleDataException, WafInternalErrorException, WafInvalidAccountException, WafNonexistentItemException, WafReferencedItemException, WafNonEmptyEntityException, AwsServiceException, SdkClientException, WafException { return deleteSizeConstraintSet(DeleteSizeConstraintSetRequest.builder().applyMutation(deleteSizeConstraintSetRequest) .build()); } /** * *

                                                                                                                              * This is AWS WAF Classic documentation. For more information, see AWS WAF Classic in the * developer guide. *

                                                                                                                              *

                                                                                                                              * For the latest version of AWS WAF, use the AWS WAFV2 API and see the AWS WAF Developer Guide. With * the latest version, AWS WAF has a single set of endpoints for regional and global use. *

                                                                                                                              *
                                                                                                                              *

                                                                                                                              * Permanently deletes a SqlInjectionMatchSet. You can't delete a SqlInjectionMatchSet if it's * still used in any Rules or if it still contains any SqlInjectionMatchTuple objects. *

                                                                                                                              *

                                                                                                                              * If you just want to remove a SqlInjectionMatchSet from a Rule, use UpdateRule. *

                                                                                                                              *

                                                                                                                              * To permanently delete a SqlInjectionMatchSet from AWS WAF, perform the following steps: *

                                                                                                                              *
                                                                                                                                *
                                                                                                                              1. *

                                                                                                                                * Update the SqlInjectionMatchSet to remove filters, if any. For more information, see * UpdateSqlInjectionMatchSet. *

                                                                                                                                *
                                                                                                                              2. *
                                                                                                                              3. *

                                                                                                                                * Use GetChangeToken to get the change token that you provide in the ChangeToken parameter of a * DeleteSqlInjectionMatchSet request. *

                                                                                                                                *
                                                                                                                              4. *
                                                                                                                              5. *

                                                                                                                                * Submit a DeleteSqlInjectionMatchSet request. *

                                                                                                                                *
                                                                                                                              6. *
                                                                                                                              * * @param deleteSqlInjectionMatchSetRequest * A request to delete a SqlInjectionMatchSet from AWS WAF. * @return Result of the DeleteSqlInjectionMatchSet operation returned by the service. * @throws WafInternalErrorException * The operation failed because of a system problem, even though the request was valid. Retry your request. * @throws WafInvalidAccountException * The operation failed because you tried to create, update, or delete an object by using an invalid account * identifier. * @throws WafNonexistentItemException * The operation failed because the referenced object doesn't exist. * @throws WafReferencedItemException * The operation failed because you tried to delete an object that is still in use. For example:

                                                                                                                              *
                                                                                                                                *
                                                                                                                              • *

                                                                                                                                * You tried to delete a ByteMatchSet that is still referenced by a Rule. *

                                                                                                                                *
                                                                                                                              • *
                                                                                                                              • *

                                                                                                                                * You tried to delete a Rule that is still referenced by a WebACL. *

                                                                                                                                *
                                                                                                                              • * @throws WafStaleDataException * The operation failed because you tried to create, update, or delete an object by using a change token * that has already been used. * @throws WafNonEmptyEntityException * The operation failed because you tried to delete an object that isn't empty. For example:

                                                                                                                                *
                                                                                                                                  *
                                                                                                                                • *

                                                                                                                                  * You tried to delete a WebACL that still contains one or more Rule objects. *

                                                                                                                                  *
                                                                                                                                • *
                                                                                                                                • *

                                                                                                                                  * You tried to delete a Rule that still contains one or more ByteMatchSet objects * or other predicates. *

                                                                                                                                  *
                                                                                                                                • *
                                                                                                                                • *

                                                                                                                                  * You tried to delete a ByteMatchSet that contains one or more ByteMatchTuple * objects. *

                                                                                                                                  *
                                                                                                                                • *
                                                                                                                                • *

                                                                                                                                  * You tried to delete an IPSet that references one or more IP addresses. *

                                                                                                                                  *
                                                                                                                                • * @throws SdkException * Base class for all exceptions that can be thrown by the SDK (both service and client). Can be used for * catch all scenarios. * @throws SdkClientException * If any client side error occurs such as an IO related failure, failure to get credentials, etc. * @throws WafException * Base class for all service exceptions. Unknown exceptions will be thrown as an instance of this type. * @sample WafClient.DeleteSqlInjectionMatchSet * @see AWS API Documentation */ default DeleteSqlInjectionMatchSetResponse deleteSqlInjectionMatchSet( DeleteSqlInjectionMatchSetRequest deleteSqlInjectionMatchSetRequest) throws WafInternalErrorException, WafInvalidAccountException, WafNonexistentItemException, WafReferencedItemException, WafStaleDataException, WafNonEmptyEntityException, AwsServiceException, SdkClientException, WafException { throw new UnsupportedOperationException(); } /** * *

                                                                                                                                  * This is AWS WAF Classic documentation. For more information, see AWS WAF Classic in the * developer guide. *

                                                                                                                                  *

                                                                                                                                  * For the latest version of AWS WAF, use the AWS WAFV2 API and see the AWS WAF Developer Guide. With * the latest version, AWS WAF has a single set of endpoints for regional and global use. *

                                                                                                                                  *
                                                                                                                                  *

                                                                                                                                  * Permanently deletes a SqlInjectionMatchSet. You can't delete a SqlInjectionMatchSet if it's * still used in any Rules or if it still contains any SqlInjectionMatchTuple objects. *

                                                                                                                                  *

                                                                                                                                  * If you just want to remove a SqlInjectionMatchSet from a Rule, use UpdateRule. *

                                                                                                                                  *

                                                                                                                                  * To permanently delete a SqlInjectionMatchSet from AWS WAF, perform the following steps: *

                                                                                                                                  *
                                                                                                                                    *
                                                                                                                                  1. *

                                                                                                                                    * Update the SqlInjectionMatchSet to remove filters, if any. For more information, see * UpdateSqlInjectionMatchSet. *

                                                                                                                                    *
                                                                                                                                  2. *
                                                                                                                                  3. *

                                                                                                                                    * Use GetChangeToken to get the change token that you provide in the ChangeToken parameter of a * DeleteSqlInjectionMatchSet request. *

                                                                                                                                    *
                                                                                                                                  4. *
                                                                                                                                  5. *

                                                                                                                                    * Submit a DeleteSqlInjectionMatchSet request. *

                                                                                                                                    *
                                                                                                                                  6. *
                                                                                                                                  *
                                                                                                                                  *

                                                                                                                                  * This is a convenience which creates an instance of the {@link DeleteSqlInjectionMatchSetRequest.Builder} avoiding * the need to create one manually via {@link DeleteSqlInjectionMatchSetRequest#builder()} *

                                                                                                                                  * * @param deleteSqlInjectionMatchSetRequest * A {@link Consumer} that will call methods on * {@link software.amazon.awssdk.services.waf.model.DeleteSqlInjectionMatchSetRequest.Builder} to create a * request. A request to delete a SqlInjectionMatchSet from AWS WAF. * @return Result of the DeleteSqlInjectionMatchSet operation returned by the service. * @throws WafInternalErrorException * The operation failed because of a system problem, even though the request was valid. Retry your request. * @throws WafInvalidAccountException * The operation failed because you tried to create, update, or delete an object by using an invalid account * identifier. * @throws WafNonexistentItemException * The operation failed because the referenced object doesn't exist. * @throws WafReferencedItemException * The operation failed because you tried to delete an object that is still in use. For example:

                                                                                                                                  *
                                                                                                                                    *
                                                                                                                                  • *

                                                                                                                                    * You tried to delete a ByteMatchSet that is still referenced by a Rule. *

                                                                                                                                    *
                                                                                                                                  • *
                                                                                                                                  • *

                                                                                                                                    * You tried to delete a Rule that is still referenced by a WebACL. *

                                                                                                                                    *
                                                                                                                                  • * @throws WafStaleDataException * The operation failed because you tried to create, update, or delete an object by using a change token * that has already been used. * @throws WafNonEmptyEntityException * The operation failed because you tried to delete an object that isn't empty. For example:

                                                                                                                                    *
                                                                                                                                      *
                                                                                                                                    • *

                                                                                                                                      * You tried to delete a WebACL that still contains one or more Rule objects. *

                                                                                                                                      *
                                                                                                                                    • *
                                                                                                                                    • *

                                                                                                                                      * You tried to delete a Rule that still contains one or more ByteMatchSet objects * or other predicates. *

                                                                                                                                      *
                                                                                                                                    • *
                                                                                                                                    • *

                                                                                                                                      * You tried to delete a ByteMatchSet that contains one or more ByteMatchTuple * objects. *

                                                                                                                                      *
                                                                                                                                    • *
                                                                                                                                    • *

                                                                                                                                      * You tried to delete an IPSet that references one or more IP addresses. *

                                                                                                                                      *
                                                                                                                                    • * @throws SdkException * Base class for all exceptions that can be thrown by the SDK (both service and client). Can be used for * catch all scenarios. * @throws SdkClientException * If any client side error occurs such as an IO related failure, failure to get credentials, etc. * @throws WafException * Base class for all service exceptions. Unknown exceptions will be thrown as an instance of this type. * @sample WafClient.DeleteSqlInjectionMatchSet * @see AWS API Documentation */ default DeleteSqlInjectionMatchSetResponse deleteSqlInjectionMatchSet( Consumer deleteSqlInjectionMatchSetRequest) throws WafInternalErrorException, WafInvalidAccountException, WafNonexistentItemException, WafReferencedItemException, WafStaleDataException, WafNonEmptyEntityException, AwsServiceException, SdkClientException, WafException { return deleteSqlInjectionMatchSet(DeleteSqlInjectionMatchSetRequest.builder() .applyMutation(deleteSqlInjectionMatchSetRequest).build()); } /** * *

                                                                                                                                      * This is AWS WAF Classic documentation. For more information, see AWS WAF Classic in the * developer guide. *

                                                                                                                                      *

                                                                                                                                      * For the latest version of AWS WAF, use the AWS WAFV2 API and see the AWS WAF Developer Guide. With * the latest version, AWS WAF has a single set of endpoints for regional and global use. *

                                                                                                                                      *
                                                                                                                                      *

                                                                                                                                      * Permanently deletes a WebACL. You can't delete a WebACL if it still contains any * Rules. *

                                                                                                                                      *

                                                                                                                                      * To delete a WebACL, perform the following steps: *

                                                                                                                                      *
                                                                                                                                        *
                                                                                                                                      1. *

                                                                                                                                        * Update the WebACL to remove Rules, if any. For more information, see * UpdateWebACL. *

                                                                                                                                        *
                                                                                                                                      2. *
                                                                                                                                      3. *

                                                                                                                                        * Use GetChangeToken to get the change token that you provide in the ChangeToken parameter of a * DeleteWebACL request. *

                                                                                                                                        *
                                                                                                                                      4. *
                                                                                                                                      5. *

                                                                                                                                        * Submit a DeleteWebACL request. *

                                                                                                                                        *
                                                                                                                                      6. *
                                                                                                                                      * * @param deleteWebAclRequest * @return Result of the DeleteWebACL operation returned by the service. * @throws WafStaleDataException * The operation failed because you tried to create, update, or delete an object by using a change token * that has already been used. * @throws WafInternalErrorException * The operation failed because of a system problem, even though the request was valid. Retry your request. * @throws WafInvalidAccountException * The operation failed because you tried to create, update, or delete an object by using an invalid account * identifier. * @throws WafNonexistentItemException * The operation failed because the referenced object doesn't exist. * @throws WafReferencedItemException * The operation failed because you tried to delete an object that is still in use. For example:

                                                                                                                                      *
                                                                                                                                        *
                                                                                                                                      • *

                                                                                                                                        * You tried to delete a ByteMatchSet that is still referenced by a Rule. *

                                                                                                                                        *
                                                                                                                                      • *
                                                                                                                                      • *

                                                                                                                                        * You tried to delete a Rule that is still referenced by a WebACL. *

                                                                                                                                        *
                                                                                                                                      • * @throws WafNonEmptyEntityException * The operation failed because you tried to delete an object that isn't empty. For example:

                                                                                                                                        *
                                                                                                                                          *
                                                                                                                                        • *

                                                                                                                                          * You tried to delete a WebACL that still contains one or more Rule objects. *

                                                                                                                                          *
                                                                                                                                        • *
                                                                                                                                        • *

                                                                                                                                          * You tried to delete a Rule that still contains one or more ByteMatchSet objects * or other predicates. *

                                                                                                                                          *
                                                                                                                                        • *
                                                                                                                                        • *

                                                                                                                                          * You tried to delete a ByteMatchSet that contains one or more ByteMatchTuple * objects. *

                                                                                                                                          *
                                                                                                                                        • *
                                                                                                                                        • *

                                                                                                                                          * You tried to delete an IPSet that references one or more IP addresses. *

                                                                                                                                          *
                                                                                                                                        • * @throws WafTagOperationException * @throws WafTagOperationInternalErrorException * @throws SdkException * Base class for all exceptions that can be thrown by the SDK (both service and client). Can be used for * catch all scenarios. * @throws SdkClientException * If any client side error occurs such as an IO related failure, failure to get credentials, etc. * @throws WafException * Base class for all service exceptions. Unknown exceptions will be thrown as an instance of this type. * @sample WafClient.DeleteWebACL * @see AWS API * Documentation */ default DeleteWebAclResponse deleteWebACL(DeleteWebAclRequest deleteWebAclRequest) throws WafStaleDataException, WafInternalErrorException, WafInvalidAccountException, WafNonexistentItemException, WafReferencedItemException, WafNonEmptyEntityException, WafTagOperationException, WafTagOperationInternalErrorException, AwsServiceException, SdkClientException, WafException { throw new UnsupportedOperationException(); } /** * *

                                                                                                                                          * This is AWS WAF Classic documentation. For more information, see AWS WAF Classic in the * developer guide. *

                                                                                                                                          *

                                                                                                                                          * For the latest version of AWS WAF, use the AWS WAFV2 API and see the AWS WAF Developer Guide. With * the latest version, AWS WAF has a single set of endpoints for regional and global use. *

                                                                                                                                          *
                                                                                                                                          *

                                                                                                                                          * Permanently deletes a WebACL. You can't delete a WebACL if it still contains any * Rules. *

                                                                                                                                          *

                                                                                                                                          * To delete a WebACL, perform the following steps: *

                                                                                                                                          *
                                                                                                                                            *
                                                                                                                                          1. *

                                                                                                                                            * Update the WebACL to remove Rules, if any. For more information, see * UpdateWebACL. *

                                                                                                                                            *
                                                                                                                                          2. *
                                                                                                                                          3. *

                                                                                                                                            * Use GetChangeToken to get the change token that you provide in the ChangeToken parameter of a * DeleteWebACL request. *

                                                                                                                                            *
                                                                                                                                          4. *
                                                                                                                                          5. *

                                                                                                                                            * Submit a DeleteWebACL request. *

                                                                                                                                            *
                                                                                                                                          6. *
                                                                                                                                          *
                                                                                                                                          *

                                                                                                                                          * This is a convenience which creates an instance of the {@link DeleteWebAclRequest.Builder} avoiding the need to * create one manually via {@link DeleteWebAclRequest#builder()} *

                                                                                                                                          * * @param deleteWebAclRequest * A {@link Consumer} that will call methods on * {@link software.amazon.awssdk.services.waf.model.DeleteWebAclRequest.Builder} to create a request. * @return Result of the DeleteWebACL operation returned by the service. * @throws WafStaleDataException * The operation failed because you tried to create, update, or delete an object by using a change token * that has already been used. * @throws WafInternalErrorException * The operation failed because of a system problem, even though the request was valid. Retry your request. * @throws WafInvalidAccountException * The operation failed because you tried to create, update, or delete an object by using an invalid account * identifier. * @throws WafNonexistentItemException * The operation failed because the referenced object doesn't exist. * @throws WafReferencedItemException * The operation failed because you tried to delete an object that is still in use. For example:

                                                                                                                                          *
                                                                                                                                            *
                                                                                                                                          • *

                                                                                                                                            * You tried to delete a ByteMatchSet that is still referenced by a Rule. *

                                                                                                                                            *
                                                                                                                                          • *
                                                                                                                                          • *

                                                                                                                                            * You tried to delete a Rule that is still referenced by a WebACL. *

                                                                                                                                            *
                                                                                                                                          • * @throws WafNonEmptyEntityException * The operation failed because you tried to delete an object that isn't empty. For example:

                                                                                                                                            *
                                                                                                                                              *
                                                                                                                                            • *

                                                                                                                                              * You tried to delete a WebACL that still contains one or more Rule objects. *

                                                                                                                                              *
                                                                                                                                            • *
                                                                                                                                            • *

                                                                                                                                              * You tried to delete a Rule that still contains one or more ByteMatchSet objects * or other predicates. *

                                                                                                                                              *
                                                                                                                                            • *
                                                                                                                                            • *

                                                                                                                                              * You tried to delete a ByteMatchSet that contains one or more ByteMatchTuple * objects. *

                                                                                                                                              *
                                                                                                                                            • *
                                                                                                                                            • *

                                                                                                                                              * You tried to delete an IPSet that references one or more IP addresses. *

                                                                                                                                              *
                                                                                                                                            • * @throws WafTagOperationException * @throws WafTagOperationInternalErrorException * @throws SdkException * Base class for all exceptions that can be thrown by the SDK (both service and client). Can be used for * catch all scenarios. * @throws SdkClientException * If any client side error occurs such as an IO related failure, failure to get credentials, etc. * @throws WafException * Base class for all service exceptions. Unknown exceptions will be thrown as an instance of this type. * @sample WafClient.DeleteWebACL * @see AWS API * Documentation */ default DeleteWebAclResponse deleteWebACL(Consumer deleteWebAclRequest) throws WafStaleDataException, WafInternalErrorException, WafInvalidAccountException, WafNonexistentItemException, WafReferencedItemException, WafNonEmptyEntityException, WafTagOperationException, WafTagOperationInternalErrorException, AwsServiceException, SdkClientException, WafException { return deleteWebACL(DeleteWebAclRequest.builder().applyMutation(deleteWebAclRequest).build()); } /** * *

                                                                                                                                              * This is AWS WAF Classic documentation. For more information, see AWS WAF Classic in the * developer guide. *

                                                                                                                                              *

                                                                                                                                              * For the latest version of AWS WAF, use the AWS WAFV2 API and see the AWS WAF Developer Guide. With * the latest version, AWS WAF has a single set of endpoints for regional and global use. *

                                                                                                                                              *
                                                                                                                                              *

                                                                                                                                              * Permanently deletes an XssMatchSet. You can't delete an XssMatchSet if it's still used in any * Rules or if it still contains any XssMatchTuple objects. *

                                                                                                                                              *

                                                                                                                                              * If you just want to remove an XssMatchSet from a Rule, use UpdateRule. *

                                                                                                                                              *

                                                                                                                                              * To permanently delete an XssMatchSet from AWS WAF, perform the following steps: *

                                                                                                                                              *
                                                                                                                                                *
                                                                                                                                              1. *

                                                                                                                                                * Update the XssMatchSet to remove filters, if any. For more information, see * UpdateXssMatchSet. *

                                                                                                                                                *
                                                                                                                                              2. *
                                                                                                                                              3. *

                                                                                                                                                * Use GetChangeToken to get the change token that you provide in the ChangeToken parameter of a * DeleteXssMatchSet request. *

                                                                                                                                                *
                                                                                                                                              4. *
                                                                                                                                              5. *

                                                                                                                                                * Submit a DeleteXssMatchSet request. *

                                                                                                                                                *
                                                                                                                                              6. *
                                                                                                                                              * * @param deleteXssMatchSetRequest * A request to delete an XssMatchSet from AWS WAF. * @return Result of the DeleteXssMatchSet operation returned by the service. * @throws WafInternalErrorException * The operation failed because of a system problem, even though the request was valid. Retry your request. * @throws WafInvalidAccountException * The operation failed because you tried to create, update, or delete an object by using an invalid account * identifier. * @throws WafNonexistentItemException * The operation failed because the referenced object doesn't exist. * @throws WafReferencedItemException * The operation failed because you tried to delete an object that is still in use. For example:

                                                                                                                                              *
                                                                                                                                                *
                                                                                                                                              • *

                                                                                                                                                * You tried to delete a ByteMatchSet that is still referenced by a Rule. *

                                                                                                                                                *
                                                                                                                                              • *
                                                                                                                                              • *

                                                                                                                                                * You tried to delete a Rule that is still referenced by a WebACL. *

                                                                                                                                                *
                                                                                                                                              • * @throws WafStaleDataException * The operation failed because you tried to create, update, or delete an object by using a change token * that has already been used. * @throws WafNonEmptyEntityException * The operation failed because you tried to delete an object that isn't empty. For example:

                                                                                                                                                *
                                                                                                                                                  *
                                                                                                                                                • *

                                                                                                                                                  * You tried to delete a WebACL that still contains one or more Rule objects. *

                                                                                                                                                  *
                                                                                                                                                • *
                                                                                                                                                • *

                                                                                                                                                  * You tried to delete a Rule that still contains one or more ByteMatchSet objects * or other predicates. *

                                                                                                                                                  *
                                                                                                                                                • *
                                                                                                                                                • *

                                                                                                                                                  * You tried to delete a ByteMatchSet that contains one or more ByteMatchTuple * objects. *

                                                                                                                                                  *
                                                                                                                                                • *
                                                                                                                                                • *

                                                                                                                                                  * You tried to delete an IPSet that references one or more IP addresses. *

                                                                                                                                                  *
                                                                                                                                                • * @throws SdkException * Base class for all exceptions that can be thrown by the SDK (both service and client). Can be used for * catch all scenarios. * @throws SdkClientException * If any client side error occurs such as an IO related failure, failure to get credentials, etc. * @throws WafException * Base class for all service exceptions. Unknown exceptions will be thrown as an instance of this type. * @sample WafClient.DeleteXssMatchSet * @see AWS API * Documentation */ default DeleteXssMatchSetResponse deleteXssMatchSet(DeleteXssMatchSetRequest deleteXssMatchSetRequest) throws WafInternalErrorException, WafInvalidAccountException, WafNonexistentItemException, WafReferencedItemException, WafStaleDataException, WafNonEmptyEntityException, AwsServiceException, SdkClientException, WafException { throw new UnsupportedOperationException(); } /** * *

                                                                                                                                                  * This is AWS WAF Classic documentation. For more information, see AWS WAF Classic in the * developer guide. *

                                                                                                                                                  *

                                                                                                                                                  * For the latest version of AWS WAF, use the AWS WAFV2 API and see the AWS WAF Developer Guide. With * the latest version, AWS WAF has a single set of endpoints for regional and global use. *

                                                                                                                                                  *
                                                                                                                                                  *

                                                                                                                                                  * Permanently deletes an XssMatchSet. You can't delete an XssMatchSet if it's still used in any * Rules or if it still contains any XssMatchTuple objects. *

                                                                                                                                                  *

                                                                                                                                                  * If you just want to remove an XssMatchSet from a Rule, use UpdateRule. *

                                                                                                                                                  *

                                                                                                                                                  * To permanently delete an XssMatchSet from AWS WAF, perform the following steps: *

                                                                                                                                                  *
                                                                                                                                                    *
                                                                                                                                                  1. *

                                                                                                                                                    * Update the XssMatchSet to remove filters, if any. For more information, see * UpdateXssMatchSet. *

                                                                                                                                                    *
                                                                                                                                                  2. *
                                                                                                                                                  3. *

                                                                                                                                                    * Use GetChangeToken to get the change token that you provide in the ChangeToken parameter of a * DeleteXssMatchSet request. *

                                                                                                                                                    *
                                                                                                                                                  4. *
                                                                                                                                                  5. *

                                                                                                                                                    * Submit a DeleteXssMatchSet request. *

                                                                                                                                                    *
                                                                                                                                                  6. *
                                                                                                                                                  *
                                                                                                                                                  *

                                                                                                                                                  * This is a convenience which creates an instance of the {@link DeleteXssMatchSetRequest.Builder} avoiding the need * to create one manually via {@link DeleteXssMatchSetRequest#builder()} *

                                                                                                                                                  * * @param deleteXssMatchSetRequest * A {@link Consumer} that will call methods on * {@link software.amazon.awssdk.services.waf.model.DeleteXssMatchSetRequest.Builder} to create a request. A * request to delete an XssMatchSet from AWS WAF. * @return Result of the DeleteXssMatchSet operation returned by the service. * @throws WafInternalErrorException * The operation failed because of a system problem, even though the request was valid. Retry your request. * @throws WafInvalidAccountException * The operation failed because you tried to create, update, or delete an object by using an invalid account * identifier. * @throws WafNonexistentItemException * The operation failed because the referenced object doesn't exist. * @throws WafReferencedItemException * The operation failed because you tried to delete an object that is still in use. For example:

                                                                                                                                                  *
                                                                                                                                                    *
                                                                                                                                                  • *

                                                                                                                                                    * You tried to delete a ByteMatchSet that is still referenced by a Rule. *

                                                                                                                                                    *
                                                                                                                                                  • *
                                                                                                                                                  • *

                                                                                                                                                    * You tried to delete a Rule that is still referenced by a WebACL. *

                                                                                                                                                    *
                                                                                                                                                  • * @throws WafStaleDataException * The operation failed because you tried to create, update, or delete an object by using a change token * that has already been used. * @throws WafNonEmptyEntityException * The operation failed because you tried to delete an object that isn't empty. For example:

                                                                                                                                                    *
                                                                                                                                                      *
                                                                                                                                                    • *

                                                                                                                                                      * You tried to delete a WebACL that still contains one or more Rule objects. *

                                                                                                                                                      *
                                                                                                                                                    • *
                                                                                                                                                    • *

                                                                                                                                                      * You tried to delete a Rule that still contains one or more ByteMatchSet objects * or other predicates. *

                                                                                                                                                      *
                                                                                                                                                    • *
                                                                                                                                                    • *

                                                                                                                                                      * You tried to delete a ByteMatchSet that contains one or more ByteMatchTuple * objects. *

                                                                                                                                                      *
                                                                                                                                                    • *
                                                                                                                                                    • *

                                                                                                                                                      * You tried to delete an IPSet that references one or more IP addresses. *

                                                                                                                                                      *
                                                                                                                                                    • * @throws SdkException * Base class for all exceptions that can be thrown by the SDK (both service and client). Can be used for * catch all scenarios. * @throws SdkClientException * If any client side error occurs such as an IO related failure, failure to get credentials, etc. * @throws WafException * Base class for all service exceptions. Unknown exceptions will be thrown as an instance of this type. * @sample WafClient.DeleteXssMatchSet * @see AWS API * Documentation */ default DeleteXssMatchSetResponse deleteXssMatchSet(Consumer deleteXssMatchSetRequest) throws WafInternalErrorException, WafInvalidAccountException, WafNonexistentItemException, WafReferencedItemException, WafStaleDataException, WafNonEmptyEntityException, AwsServiceException, SdkClientException, WafException { return deleteXssMatchSet(DeleteXssMatchSetRequest.builder().applyMutation(deleteXssMatchSetRequest).build()); } /** * *

                                                                                                                                                      * This is AWS WAF Classic documentation. For more information, see AWS WAF Classic in the * developer guide. *

                                                                                                                                                      *

                                                                                                                                                      * For the latest version of AWS WAF, use the AWS WAFV2 API and see the AWS WAF Developer Guide. With * the latest version, AWS WAF has a single set of endpoints for regional and global use. *

                                                                                                                                                      *
                                                                                                                                                      *

                                                                                                                                                      * Returns the ByteMatchSet specified by ByteMatchSetId. *

                                                                                                                                                      * * @param getByteMatchSetRequest * @return Result of the GetByteMatchSet operation returned by the service. * @throws WafInternalErrorException * The operation failed because of a system problem, even though the request was valid. Retry your request. * @throws WafInvalidAccountException * The operation failed because you tried to create, update, or delete an object by using an invalid account * identifier. * @throws WafNonexistentItemException * The operation failed because the referenced object doesn't exist. * @throws SdkException * Base class for all exceptions that can be thrown by the SDK (both service and client). Can be used for * catch all scenarios. * @throws SdkClientException * If any client side error occurs such as an IO related failure, failure to get credentials, etc. * @throws WafException * Base class for all service exceptions. Unknown exceptions will be thrown as an instance of this type. * @sample WafClient.GetByteMatchSet * @see AWS API * Documentation */ default GetByteMatchSetResponse getByteMatchSet(GetByteMatchSetRequest getByteMatchSetRequest) throws WafInternalErrorException, WafInvalidAccountException, WafNonexistentItemException, AwsServiceException, SdkClientException, WafException { throw new UnsupportedOperationException(); } /** * *

                                                                                                                                                      * This is AWS WAF Classic documentation. For more information, see AWS WAF Classic in the * developer guide. *

                                                                                                                                                      *

                                                                                                                                                      * For the latest version of AWS WAF, use the AWS WAFV2 API and see the AWS WAF Developer Guide. With * the latest version, AWS WAF has a single set of endpoints for regional and global use. *

                                                                                                                                                      *
                                                                                                                                                      *

                                                                                                                                                      * Returns the ByteMatchSet specified by ByteMatchSetId. *

                                                                                                                                                      *
                                                                                                                                                      *

                                                                                                                                                      * This is a convenience which creates an instance of the {@link GetByteMatchSetRequest.Builder} avoiding the need * to create one manually via {@link GetByteMatchSetRequest#builder()} *

                                                                                                                                                      * * @param getByteMatchSetRequest * A {@link Consumer} that will call methods on * {@link software.amazon.awssdk.services.waf.model.GetByteMatchSetRequest.Builder} to create a request. * @return Result of the GetByteMatchSet operation returned by the service. * @throws WafInternalErrorException * The operation failed because of a system problem, even though the request was valid. Retry your request. * @throws WafInvalidAccountException * The operation failed because you tried to create, update, or delete an object by using an invalid account * identifier. * @throws WafNonexistentItemException * The operation failed because the referenced object doesn't exist. * @throws SdkException * Base class for all exceptions that can be thrown by the SDK (both service and client). Can be used for * catch all scenarios. * @throws SdkClientException * If any client side error occurs such as an IO related failure, failure to get credentials, etc. * @throws WafException * Base class for all service exceptions. Unknown exceptions will be thrown as an instance of this type. * @sample WafClient.GetByteMatchSet * @see AWS API * Documentation */ default GetByteMatchSetResponse getByteMatchSet(Consumer getByteMatchSetRequest) throws WafInternalErrorException, WafInvalidAccountException, WafNonexistentItemException, AwsServiceException, SdkClientException, WafException { return getByteMatchSet(GetByteMatchSetRequest.builder().applyMutation(getByteMatchSetRequest).build()); } /** * *

                                                                                                                                                      * This is AWS WAF Classic documentation. For more information, see AWS WAF Classic in the * developer guide. *

                                                                                                                                                      *

                                                                                                                                                      * For the latest version of AWS WAF, use the AWS WAFV2 API and see the AWS WAF Developer Guide. With * the latest version, AWS WAF has a single set of endpoints for regional and global use. *

                                                                                                                                                      *
                                                                                                                                                      *

                                                                                                                                                      * When you want to create, update, or delete AWS WAF objects, get a change token and include the change token in * the create, update, or delete request. Change tokens ensure that your application doesn't submit conflicting * requests to AWS WAF. *

                                                                                                                                                      *

                                                                                                                                                      * Each create, update, or delete request must use a unique change token. If your application submits a * GetChangeToken request and then submits a second GetChangeToken request before * submitting a create, update, or delete request, the second GetChangeToken request returns the same * value as the first GetChangeToken request. *

                                                                                                                                                      *

                                                                                                                                                      * When you use a change token in a create, update, or delete request, the status of the change token changes to * PENDING, which indicates that AWS WAF is propagating the change to all AWS WAF servers. Use * GetChangeTokenStatus to determine the status of your change token. *

                                                                                                                                                      * * @param getChangeTokenRequest * @return Result of the GetChangeToken operation returned by the service. * @throws WafInternalErrorException * The operation failed because of a system problem, even though the request was valid. Retry your request. * @throws SdkException * Base class for all exceptions that can be thrown by the SDK (both service and client). Can be used for * catch all scenarios. * @throws SdkClientException * If any client side error occurs such as an IO related failure, failure to get credentials, etc. * @throws WafException * Base class for all service exceptions. Unknown exceptions will be thrown as an instance of this type. * @sample WafClient.GetChangeToken * @see AWS API * Documentation */ default GetChangeTokenResponse getChangeToken(GetChangeTokenRequest getChangeTokenRequest) throws WafInternalErrorException, AwsServiceException, SdkClientException, WafException { throw new UnsupportedOperationException(); } /** * *

                                                                                                                                                      * This is AWS WAF Classic documentation. For more information, see AWS WAF Classic in the * developer guide. *

                                                                                                                                                      *

                                                                                                                                                      * For the latest version of AWS WAF, use the AWS WAFV2 API and see the AWS WAF Developer Guide. With * the latest version, AWS WAF has a single set of endpoints for regional and global use. *

                                                                                                                                                      *
                                                                                                                                                      *

                                                                                                                                                      * When you want to create, update, or delete AWS WAF objects, get a change token and include the change token in * the create, update, or delete request. Change tokens ensure that your application doesn't submit conflicting * requests to AWS WAF. *

                                                                                                                                                      *

                                                                                                                                                      * Each create, update, or delete request must use a unique change token. If your application submits a * GetChangeToken request and then submits a second GetChangeToken request before * submitting a create, update, or delete request, the second GetChangeToken request returns the same * value as the first GetChangeToken request. *

                                                                                                                                                      *

                                                                                                                                                      * When you use a change token in a create, update, or delete request, the status of the change token changes to * PENDING, which indicates that AWS WAF is propagating the change to all AWS WAF servers. Use * GetChangeTokenStatus to determine the status of your change token. *

                                                                                                                                                      *
                                                                                                                                                      *

                                                                                                                                                      * This is a convenience which creates an instance of the {@link GetChangeTokenRequest.Builder} avoiding the need to * create one manually via {@link GetChangeTokenRequest#builder()} *

                                                                                                                                                      * * @param getChangeTokenRequest * A {@link Consumer} that will call methods on * {@link software.amazon.awssdk.services.waf.model.GetChangeTokenRequest.Builder} to create a request. * @return Result of the GetChangeToken operation returned by the service. * @throws WafInternalErrorException * The operation failed because of a system problem, even though the request was valid. Retry your request. * @throws SdkException * Base class for all exceptions that can be thrown by the SDK (both service and client). Can be used for * catch all scenarios. * @throws SdkClientException * If any client side error occurs such as an IO related failure, failure to get credentials, etc. * @throws WafException * Base class for all service exceptions. Unknown exceptions will be thrown as an instance of this type. * @sample WafClient.GetChangeToken * @see AWS API * Documentation */ default GetChangeTokenResponse getChangeToken(Consumer getChangeTokenRequest) throws WafInternalErrorException, AwsServiceException, SdkClientException, WafException { return getChangeToken(GetChangeTokenRequest.builder().applyMutation(getChangeTokenRequest).build()); } /** * *

                                                                                                                                                      * This is AWS WAF Classic documentation. For more information, see AWS WAF Classic in the * developer guide. *

                                                                                                                                                      *

                                                                                                                                                      * For the latest version of AWS WAF, use the AWS WAFV2 API and see the AWS WAF Developer Guide. With * the latest version, AWS WAF has a single set of endpoints for regional and global use. *

                                                                                                                                                      *
                                                                                                                                                      *

                                                                                                                                                      * When you want to create, update, or delete AWS WAF objects, get a change token and include the change token in * the create, update, or delete request. Change tokens ensure that your application doesn't submit conflicting * requests to AWS WAF. *

                                                                                                                                                      *

                                                                                                                                                      * Each create, update, or delete request must use a unique change token. If your application submits a * GetChangeToken request and then submits a second GetChangeToken request before * submitting a create, update, or delete request, the second GetChangeToken request returns the same * value as the first GetChangeToken request. *

                                                                                                                                                      *

                                                                                                                                                      * When you use a change token in a create, update, or delete request, the status of the change token changes to * PENDING, which indicates that AWS WAF is propagating the change to all AWS WAF servers. Use * GetChangeTokenStatus to determine the status of your change token. *

                                                                                                                                                      * * @return Result of the GetChangeToken operation returned by the service. * @throws WafInternalErrorException * The operation failed because of a system problem, even though the request was valid. Retry your request. * @throws SdkException * Base class for all exceptions that can be thrown by the SDK (both service and client). Can be used for * catch all scenarios. * @throws SdkClientException * If any client side error occurs such as an IO related failure, failure to get credentials, etc. * @throws WafException * Base class for all service exceptions. Unknown exceptions will be thrown as an instance of this type. * @sample WafClient.GetChangeToken * @see #getChangeToken(GetChangeTokenRequest) * @see AWS API * Documentation */ default GetChangeTokenResponse getChangeToken() throws WafInternalErrorException, AwsServiceException, SdkClientException, WafException { return getChangeToken(GetChangeTokenRequest.builder().build()); } /** * *

                                                                                                                                                      * This is AWS WAF Classic documentation. For more information, see AWS WAF Classic in the * developer guide. *

                                                                                                                                                      *

                                                                                                                                                      * For the latest version of AWS WAF, use the AWS WAFV2 API and see the AWS WAF Developer Guide. With * the latest version, AWS WAF has a single set of endpoints for regional and global use. *

                                                                                                                                                      *
                                                                                                                                                      *

                                                                                                                                                      * Returns the status of a ChangeToken that you got by calling GetChangeToken. * ChangeTokenStatus is one of the following values: *

                                                                                                                                                      *
                                                                                                                                                        *
                                                                                                                                                      • *

                                                                                                                                                        * PROVISIONED: You requested the change token by calling GetChangeToken, but you haven't * used it yet in a call to create, update, or delete an AWS WAF object. *

                                                                                                                                                        *
                                                                                                                                                      • *
                                                                                                                                                      • *

                                                                                                                                                        * PENDING: AWS WAF is propagating the create, update, or delete request to all AWS WAF servers. *

                                                                                                                                                        *
                                                                                                                                                      • *
                                                                                                                                                      • *

                                                                                                                                                        * INSYNC: Propagation is complete. *

                                                                                                                                                        *
                                                                                                                                                      • *
                                                                                                                                                      * * @param getChangeTokenStatusRequest * @return Result of the GetChangeTokenStatus operation returned by the service. * @throws WafNonexistentItemException * The operation failed because the referenced object doesn't exist. * @throws WafInternalErrorException * The operation failed because of a system problem, even though the request was valid. Retry your request. * @throws SdkException * Base class for all exceptions that can be thrown by the SDK (both service and client). Can be used for * catch all scenarios. * @throws SdkClientException * If any client side error occurs such as an IO related failure, failure to get credentials, etc. * @throws WafException * Base class for all service exceptions. Unknown exceptions will be thrown as an instance of this type. * @sample WafClient.GetChangeTokenStatus * @see AWS API * Documentation */ default GetChangeTokenStatusResponse getChangeTokenStatus(GetChangeTokenStatusRequest getChangeTokenStatusRequest) throws WafNonexistentItemException, WafInternalErrorException, AwsServiceException, SdkClientException, WafException { throw new UnsupportedOperationException(); } /** * *

                                                                                                                                                      * This is AWS WAF Classic documentation. For more information, see AWS WAF Classic in the * developer guide. *

                                                                                                                                                      *

                                                                                                                                                      * For the latest version of AWS WAF, use the AWS WAFV2 API and see the AWS WAF Developer Guide. With * the latest version, AWS WAF has a single set of endpoints for regional and global use. *

                                                                                                                                                      *
                                                                                                                                                      *

                                                                                                                                                      * Returns the status of a ChangeToken that you got by calling GetChangeToken. * ChangeTokenStatus is one of the following values: *

                                                                                                                                                      *
                                                                                                                                                        *
                                                                                                                                                      • *

                                                                                                                                                        * PROVISIONED: You requested the change token by calling GetChangeToken, but you haven't * used it yet in a call to create, update, or delete an AWS WAF object. *

                                                                                                                                                        *
                                                                                                                                                      • *
                                                                                                                                                      • *

                                                                                                                                                        * PENDING: AWS WAF is propagating the create, update, or delete request to all AWS WAF servers. *

                                                                                                                                                        *
                                                                                                                                                      • *
                                                                                                                                                      • *

                                                                                                                                                        * INSYNC: Propagation is complete. *

                                                                                                                                                        *
                                                                                                                                                      • *
                                                                                                                                                      *
                                                                                                                                                      *

                                                                                                                                                      * This is a convenience which creates an instance of the {@link GetChangeTokenStatusRequest.Builder} avoiding the * need to create one manually via {@link GetChangeTokenStatusRequest#builder()} *

                                                                                                                                                      * * @param getChangeTokenStatusRequest * A {@link Consumer} that will call methods on * {@link software.amazon.awssdk.services.waf.model.GetChangeTokenStatusRequest.Builder} to create a request. * @return Result of the GetChangeTokenStatus operation returned by the service. * @throws WafNonexistentItemException * The operation failed because the referenced object doesn't exist. * @throws WafInternalErrorException * The operation failed because of a system problem, even though the request was valid. Retry your request. * @throws SdkException * Base class for all exceptions that can be thrown by the SDK (both service and client). Can be used for * catch all scenarios. * @throws SdkClientException * If any client side error occurs such as an IO related failure, failure to get credentials, etc. * @throws WafException * Base class for all service exceptions. Unknown exceptions will be thrown as an instance of this type. * @sample WafClient.GetChangeTokenStatus * @see AWS API * Documentation */ default GetChangeTokenStatusResponse getChangeTokenStatus( Consumer getChangeTokenStatusRequest) throws WafNonexistentItemException, WafInternalErrorException, AwsServiceException, SdkClientException, WafException { return getChangeTokenStatus(GetChangeTokenStatusRequest.builder().applyMutation(getChangeTokenStatusRequest).build()); } /** * *

                                                                                                                                                      * This is AWS WAF Classic documentation. For more information, see AWS WAF Classic in the * developer guide. *

                                                                                                                                                      *

                                                                                                                                                      * For the latest version of AWS WAF, use the AWS WAFV2 API and see the AWS WAF Developer Guide. With * the latest version, AWS WAF has a single set of endpoints for regional and global use. *

                                                                                                                                                      *
                                                                                                                                                      *

                                                                                                                                                      * Returns the GeoMatchSet that is specified by GeoMatchSetId. *

                                                                                                                                                      * * @param getGeoMatchSetRequest * @return Result of the GetGeoMatchSet operation returned by the service. * @throws WafInternalErrorException * The operation failed because of a system problem, even though the request was valid. Retry your request. * @throws WafInvalidAccountException * The operation failed because you tried to create, update, or delete an object by using an invalid account * identifier. * @throws WafNonexistentItemException * The operation failed because the referenced object doesn't exist. * @throws SdkException * Base class for all exceptions that can be thrown by the SDK (both service and client). Can be used for * catch all scenarios. * @throws SdkClientException * If any client side error occurs such as an IO related failure, failure to get credentials, etc. * @throws WafException * Base class for all service exceptions. Unknown exceptions will be thrown as an instance of this type. * @sample WafClient.GetGeoMatchSet * @see AWS API * Documentation */ default GetGeoMatchSetResponse getGeoMatchSet(GetGeoMatchSetRequest getGeoMatchSetRequest) throws WafInternalErrorException, WafInvalidAccountException, WafNonexistentItemException, AwsServiceException, SdkClientException, WafException { throw new UnsupportedOperationException(); } /** * *

                                                                                                                                                      * This is AWS WAF Classic documentation. For more information, see AWS WAF Classic in the * developer guide. *

                                                                                                                                                      *

                                                                                                                                                      * For the latest version of AWS WAF, use the AWS WAFV2 API and see the AWS WAF Developer Guide. With * the latest version, AWS WAF has a single set of endpoints for regional and global use. *

                                                                                                                                                      *
                                                                                                                                                      *

                                                                                                                                                      * Returns the GeoMatchSet that is specified by GeoMatchSetId. *

                                                                                                                                                      *
                                                                                                                                                      *

                                                                                                                                                      * This is a convenience which creates an instance of the {@link GetGeoMatchSetRequest.Builder} avoiding the need to * create one manually via {@link GetGeoMatchSetRequest#builder()} *

                                                                                                                                                      * * @param getGeoMatchSetRequest * A {@link Consumer} that will call methods on * {@link software.amazon.awssdk.services.waf.model.GetGeoMatchSetRequest.Builder} to create a request. * @return Result of the GetGeoMatchSet operation returned by the service. * @throws WafInternalErrorException * The operation failed because of a system problem, even though the request was valid. Retry your request. * @throws WafInvalidAccountException * The operation failed because you tried to create, update, or delete an object by using an invalid account * identifier. * @throws WafNonexistentItemException * The operation failed because the referenced object doesn't exist. * @throws SdkException * Base class for all exceptions that can be thrown by the SDK (both service and client). Can be used for * catch all scenarios. * @throws SdkClientException * If any client side error occurs such as an IO related failure, failure to get credentials, etc. * @throws WafException * Base class for all service exceptions. Unknown exceptions will be thrown as an instance of this type. * @sample WafClient.GetGeoMatchSet * @see AWS API * Documentation */ default GetGeoMatchSetResponse getGeoMatchSet(Consumer getGeoMatchSetRequest) throws WafInternalErrorException, WafInvalidAccountException, WafNonexistentItemException, AwsServiceException, SdkClientException, WafException { return getGeoMatchSet(GetGeoMatchSetRequest.builder().applyMutation(getGeoMatchSetRequest).build()); } /** * *

                                                                                                                                                      * This is AWS WAF Classic documentation. For more information, see AWS WAF Classic in the * developer guide. *

                                                                                                                                                      *

                                                                                                                                                      * For the latest version of AWS WAF, use the AWS WAFV2 API and see the AWS WAF Developer Guide. With * the latest version, AWS WAF has a single set of endpoints for regional and global use. *

                                                                                                                                                      *
                                                                                                                                                      *

                                                                                                                                                      * Returns the IPSet that is specified by IPSetId. *

                                                                                                                                                      * * @param getIpSetRequest * @return Result of the GetIPSet operation returned by the service. * @throws WafInternalErrorException * The operation failed because of a system problem, even though the request was valid. Retry your request. * @throws WafInvalidAccountException * The operation failed because you tried to create, update, or delete an object by using an invalid account * identifier. * @throws WafNonexistentItemException * The operation failed because the referenced object doesn't exist. * @throws SdkException * Base class for all exceptions that can be thrown by the SDK (both service and client). Can be used for * catch all scenarios. * @throws SdkClientException * If any client side error occurs such as an IO related failure, failure to get credentials, etc. * @throws WafException * Base class for all service exceptions. Unknown exceptions will be thrown as an instance of this type. * @sample WafClient.GetIPSet * @see AWS API * Documentation */ default GetIpSetResponse getIPSet(GetIpSetRequest getIpSetRequest) throws WafInternalErrorException, WafInvalidAccountException, WafNonexistentItemException, AwsServiceException, SdkClientException, WafException { throw new UnsupportedOperationException(); } /** * *

                                                                                                                                                      * This is AWS WAF Classic documentation. For more information, see AWS WAF Classic in the * developer guide. *

                                                                                                                                                      *

                                                                                                                                                      * For the latest version of AWS WAF, use the AWS WAFV2 API and see the AWS WAF Developer Guide. With * the latest version, AWS WAF has a single set of endpoints for regional and global use. *

                                                                                                                                                      *
                                                                                                                                                      *

                                                                                                                                                      * Returns the IPSet that is specified by IPSetId. *

                                                                                                                                                      *
                                                                                                                                                      *

                                                                                                                                                      * This is a convenience which creates an instance of the {@link GetIpSetRequest.Builder} avoiding the need to * create one manually via {@link GetIpSetRequest#builder()} *

                                                                                                                                                      * * @param getIpSetRequest * A {@link Consumer} that will call methods on * {@link software.amazon.awssdk.services.waf.model.GetIpSetRequest.Builder} to create a request. * @return Result of the GetIPSet operation returned by the service. * @throws WafInternalErrorException * The operation failed because of a system problem, even though the request was valid. Retry your request. * @throws WafInvalidAccountException * The operation failed because you tried to create, update, or delete an object by using an invalid account * identifier. * @throws WafNonexistentItemException * The operation failed because the referenced object doesn't exist. * @throws SdkException * Base class for all exceptions that can be thrown by the SDK (both service and client). Can be used for * catch all scenarios. * @throws SdkClientException * If any client side error occurs such as an IO related failure, failure to get credentials, etc. * @throws WafException * Base class for all service exceptions. Unknown exceptions will be thrown as an instance of this type. * @sample WafClient.GetIPSet * @see AWS API * Documentation */ default GetIpSetResponse getIPSet(Consumer getIpSetRequest) throws WafInternalErrorException, WafInvalidAccountException, WafNonexistentItemException, AwsServiceException, SdkClientException, WafException { return getIPSet(GetIpSetRequest.builder().applyMutation(getIpSetRequest).build()); } /** * *

                                                                                                                                                      * This is AWS WAF Classic documentation. For more information, see AWS WAF Classic in the * developer guide. *

                                                                                                                                                      *

                                                                                                                                                      * For the latest version of AWS WAF, use the AWS WAFV2 API and see the AWS WAF Developer Guide. With * the latest version, AWS WAF has a single set of endpoints for regional and global use. *

                                                                                                                                                      *
                                                                                                                                                      *

                                                                                                                                                      * Returns the LoggingConfiguration for the specified web ACL. *

                                                                                                                                                      * * @param getLoggingConfigurationRequest * @return Result of the GetLoggingConfiguration operation returned by the service. * @throws WafInternalErrorException * The operation failed because of a system problem, even though the request was valid. Retry your request. * @throws WafNonexistentItemException * The operation failed because the referenced object doesn't exist. * @throws SdkException * Base class for all exceptions that can be thrown by the SDK (both service and client). Can be used for * catch all scenarios. * @throws SdkClientException * If any client side error occurs such as an IO related failure, failure to get credentials, etc. * @throws WafException * Base class for all service exceptions. Unknown exceptions will be thrown as an instance of this type. * @sample WafClient.GetLoggingConfiguration * @see AWS * API Documentation */ default GetLoggingConfigurationResponse getLoggingConfiguration(GetLoggingConfigurationRequest getLoggingConfigurationRequest) throws WafInternalErrorException, WafNonexistentItemException, AwsServiceException, SdkClientException, WafException { throw new UnsupportedOperationException(); } /** * *

                                                                                                                                                      * This is AWS WAF Classic documentation. For more information, see AWS WAF Classic in the * developer guide. *

                                                                                                                                                      *

                                                                                                                                                      * For the latest version of AWS WAF, use the AWS WAFV2 API and see the AWS WAF Developer Guide. With * the latest version, AWS WAF has a single set of endpoints for regional and global use. *

                                                                                                                                                      *
                                                                                                                                                      *

                                                                                                                                                      * Returns the LoggingConfiguration for the specified web ACL. *

                                                                                                                                                      *
                                                                                                                                                      *

                                                                                                                                                      * This is a convenience which creates an instance of the {@link GetLoggingConfigurationRequest.Builder} avoiding * the need to create one manually via {@link GetLoggingConfigurationRequest#builder()} *

                                                                                                                                                      * * @param getLoggingConfigurationRequest * A {@link Consumer} that will call methods on * {@link software.amazon.awssdk.services.waf.model.GetLoggingConfigurationRequest.Builder} to create a * request. * @return Result of the GetLoggingConfiguration operation returned by the service. * @throws WafInternalErrorException * The operation failed because of a system problem, even though the request was valid. Retry your request. * @throws WafNonexistentItemException * The operation failed because the referenced object doesn't exist. * @throws SdkException * Base class for all exceptions that can be thrown by the SDK (both service and client). Can be used for * catch all scenarios. * @throws SdkClientException * If any client side error occurs such as an IO related failure, failure to get credentials, etc. * @throws WafException * Base class for all service exceptions. Unknown exceptions will be thrown as an instance of this type. * @sample WafClient.GetLoggingConfiguration * @see AWS * API Documentation */ default GetLoggingConfigurationResponse getLoggingConfiguration( Consumer getLoggingConfigurationRequest) throws WafInternalErrorException, WafNonexistentItemException, AwsServiceException, SdkClientException, WafException { return getLoggingConfiguration(GetLoggingConfigurationRequest.builder().applyMutation(getLoggingConfigurationRequest) .build()); } /** * *

                                                                                                                                                      * This is AWS WAF Classic documentation. For more information, see AWS WAF Classic in the * developer guide. *

                                                                                                                                                      *

                                                                                                                                                      * For the latest version of AWS WAF, use the AWS WAFV2 API and see the AWS WAF Developer Guide. With * the latest version, AWS WAF has a single set of endpoints for regional and global use. *

                                                                                                                                                      *
                                                                                                                                                      *

                                                                                                                                                      * Returns the IAM policy attached to the RuleGroup. *

                                                                                                                                                      * * @param getPermissionPolicyRequest * @return Result of the GetPermissionPolicy operation returned by the service. * @throws WafInternalErrorException * The operation failed because of a system problem, even though the request was valid. Retry your request. * @throws WafNonexistentItemException * The operation failed because the referenced object doesn't exist. * @throws SdkException * Base class for all exceptions that can be thrown by the SDK (both service and client). Can be used for * catch all scenarios. * @throws SdkClientException * If any client side error occurs such as an IO related failure, failure to get credentials, etc. * @throws WafException * Base class for all service exceptions. Unknown exceptions will be thrown as an instance of this type. * @sample WafClient.GetPermissionPolicy * @see AWS API * Documentation */ default GetPermissionPolicyResponse getPermissionPolicy(GetPermissionPolicyRequest getPermissionPolicyRequest) throws WafInternalErrorException, WafNonexistentItemException, AwsServiceException, SdkClientException, WafException { throw new UnsupportedOperationException(); } /** * *

                                                                                                                                                      * This is AWS WAF Classic documentation. For more information, see AWS WAF Classic in the * developer guide. *

                                                                                                                                                      *

                                                                                                                                                      * For the latest version of AWS WAF, use the AWS WAFV2 API and see the AWS WAF Developer Guide. With * the latest version, AWS WAF has a single set of endpoints for regional and global use. *

                                                                                                                                                      *
                                                                                                                                                      *

                                                                                                                                                      * Returns the IAM policy attached to the RuleGroup. *

                                                                                                                                                      *
                                                                                                                                                      *

                                                                                                                                                      * This is a convenience which creates an instance of the {@link GetPermissionPolicyRequest.Builder} avoiding the * need to create one manually via {@link GetPermissionPolicyRequest#builder()} *

                                                                                                                                                      * * @param getPermissionPolicyRequest * A {@link Consumer} that will call methods on * {@link software.amazon.awssdk.services.waf.model.GetPermissionPolicyRequest.Builder} to create a request. * @return Result of the GetPermissionPolicy operation returned by the service. * @throws WafInternalErrorException * The operation failed because of a system problem, even though the request was valid. Retry your request. * @throws WafNonexistentItemException * The operation failed because the referenced object doesn't exist. * @throws SdkException * Base class for all exceptions that can be thrown by the SDK (both service and client). Can be used for * catch all scenarios. * @throws SdkClientException * If any client side error occurs such as an IO related failure, failure to get credentials, etc. * @throws WafException * Base class for all service exceptions. Unknown exceptions will be thrown as an instance of this type. * @sample WafClient.GetPermissionPolicy * @see AWS API * Documentation */ default GetPermissionPolicyResponse getPermissionPolicy( Consumer getPermissionPolicyRequest) throws WafInternalErrorException, WafNonexistentItemException, AwsServiceException, SdkClientException, WafException { return getPermissionPolicy(GetPermissionPolicyRequest.builder().applyMutation(getPermissionPolicyRequest).build()); } /** * *

                                                                                                                                                      * This is AWS WAF Classic documentation. For more information, see AWS WAF Classic in the * developer guide. *

                                                                                                                                                      *

                                                                                                                                                      * For the latest version of AWS WAF, use the AWS WAFV2 API and see the AWS WAF Developer Guide. With * the latest version, AWS WAF has a single set of endpoints for regional and global use. *

                                                                                                                                                      *
                                                                                                                                                      *

                                                                                                                                                      * Returns the RateBasedRule that is specified by the RuleId that you included in the * GetRateBasedRule request. *

                                                                                                                                                      * * @param getRateBasedRuleRequest * @return Result of the GetRateBasedRule operation returned by the service. * @throws WafInternalErrorException * The operation failed because of a system problem, even though the request was valid. Retry your request. * @throws WafInvalidAccountException * The operation failed because you tried to create, update, or delete an object by using an invalid account * identifier. * @throws WafNonexistentItemException * The operation failed because the referenced object doesn't exist. * @throws SdkException * Base class for all exceptions that can be thrown by the SDK (both service and client). Can be used for * catch all scenarios. * @throws SdkClientException * If any client side error occurs such as an IO related failure, failure to get credentials, etc. * @throws WafException * Base class for all service exceptions. Unknown exceptions will be thrown as an instance of this type. * @sample WafClient.GetRateBasedRule * @see AWS API * Documentation */ default GetRateBasedRuleResponse getRateBasedRule(GetRateBasedRuleRequest getRateBasedRuleRequest) throws WafInternalErrorException, WafInvalidAccountException, WafNonexistentItemException, AwsServiceException, SdkClientException, WafException { throw new UnsupportedOperationException(); } /** * *

                                                                                                                                                      * This is AWS WAF Classic documentation. For more information, see AWS WAF Classic in the * developer guide. *

                                                                                                                                                      *

                                                                                                                                                      * For the latest version of AWS WAF, use the AWS WAFV2 API and see the AWS WAF Developer Guide. With * the latest version, AWS WAF has a single set of endpoints for regional and global use. *

                                                                                                                                                      *
                                                                                                                                                      *

                                                                                                                                                      * Returns the RateBasedRule that is specified by the RuleId that you included in the * GetRateBasedRule request. *

                                                                                                                                                      *
                                                                                                                                                      *

                                                                                                                                                      * This is a convenience which creates an instance of the {@link GetRateBasedRuleRequest.Builder} avoiding the need * to create one manually via {@link GetRateBasedRuleRequest#builder()} *

                                                                                                                                                      * * @param getRateBasedRuleRequest * A {@link Consumer} that will call methods on * {@link software.amazon.awssdk.services.waf.model.GetRateBasedRuleRequest.Builder} to create a request. * @return Result of the GetRateBasedRule operation returned by the service. * @throws WafInternalErrorException * The operation failed because of a system problem, even though the request was valid. Retry your request. * @throws WafInvalidAccountException * The operation failed because you tried to create, update, or delete an object by using an invalid account * identifier. * @throws WafNonexistentItemException * The operation failed because the referenced object doesn't exist. * @throws SdkException * Base class for all exceptions that can be thrown by the SDK (both service and client). Can be used for * catch all scenarios. * @throws SdkClientException * If any client side error occurs such as an IO related failure, failure to get credentials, etc. * @throws WafException * Base class for all service exceptions. Unknown exceptions will be thrown as an instance of this type. * @sample WafClient.GetRateBasedRule * @see AWS API * Documentation */ default GetRateBasedRuleResponse getRateBasedRule(Consumer getRateBasedRuleRequest) throws WafInternalErrorException, WafInvalidAccountException, WafNonexistentItemException, AwsServiceException, SdkClientException, WafException { return getRateBasedRule(GetRateBasedRuleRequest.builder().applyMutation(getRateBasedRuleRequest).build()); } /** * *

                                                                                                                                                      * This is AWS WAF Classic documentation. For more information, see AWS WAF Classic in the * developer guide. *

                                                                                                                                                      *

                                                                                                                                                      * For the latest version of AWS WAF, use the AWS WAFV2 API and see the AWS WAF Developer Guide. With * the latest version, AWS WAF has a single set of endpoints for regional and global use. *

                                                                                                                                                      *
                                                                                                                                                      *

                                                                                                                                                      * Returns an array of IP addresses currently being blocked by the RateBasedRule that is specified by the * RuleId. The maximum number of managed keys that will be blocked is 10,000. If more than 10,000 * addresses exceed the rate limit, the 10,000 addresses with the highest rates will be blocked. *

                                                                                                                                                      * * @param getRateBasedRuleManagedKeysRequest * @return Result of the GetRateBasedRuleManagedKeys operation returned by the service. * @throws WafInternalErrorException * The operation failed because of a system problem, even though the request was valid. Retry your request. * @throws WafInvalidAccountException * The operation failed because you tried to create, update, or delete an object by using an invalid account * identifier. * @throws WafNonexistentItemException * The operation failed because the referenced object doesn't exist. * @throws WafInvalidParameterException * The operation failed because AWS WAF didn't recognize a parameter in the request. For example:

                                                                                                                                                      *
                                                                                                                                                        *
                                                                                                                                                      • *

                                                                                                                                                        * You specified an invalid parameter name. *

                                                                                                                                                        *
                                                                                                                                                      • *
                                                                                                                                                      • *

                                                                                                                                                        * You specified an invalid value. *

                                                                                                                                                        *
                                                                                                                                                      • *
                                                                                                                                                      • *

                                                                                                                                                        * You tried to update an object (ByteMatchSet, IPSet, Rule, or * WebACL) using an action other than INSERT or DELETE. *

                                                                                                                                                        *
                                                                                                                                                      • *
                                                                                                                                                      • *

                                                                                                                                                        * You tried to create a WebACL with a DefaultAction Type other than * ALLOW, BLOCK, or COUNT. *

                                                                                                                                                        *
                                                                                                                                                      • *
                                                                                                                                                      • *

                                                                                                                                                        * You tried to create a RateBasedRule with a RateKey value other than * IP. *

                                                                                                                                                        *
                                                                                                                                                      • *
                                                                                                                                                      • *

                                                                                                                                                        * You tried to update a WebACL with a WafAction Type other than * ALLOW, BLOCK, or COUNT. *

                                                                                                                                                        *
                                                                                                                                                      • *
                                                                                                                                                      • *

                                                                                                                                                        * You tried to update a ByteMatchSet with a FieldToMatch Type other * than HEADER, METHOD, QUERY_STRING, URI, or BODY. *

                                                                                                                                                        *
                                                                                                                                                      • *
                                                                                                                                                      • *

                                                                                                                                                        * You tried to update a ByteMatchSet with a Field of HEADER but no * value for Data. *

                                                                                                                                                        *
                                                                                                                                                      • *
                                                                                                                                                      • *

                                                                                                                                                        * Your request references an ARN that is malformed, or corresponds to a resource with which a web ACL * cannot be associated. *

                                                                                                                                                        *
                                                                                                                                                      • * @throws SdkException * Base class for all exceptions that can be thrown by the SDK (both service and client). Can be used for * catch all scenarios. * @throws SdkClientException * If any client side error occurs such as an IO related failure, failure to get credentials, etc. * @throws WafException * Base class for all service exceptions. Unknown exceptions will be thrown as an instance of this type. * @sample WafClient.GetRateBasedRuleManagedKeys * @see AWS API Documentation */ default GetRateBasedRuleManagedKeysResponse getRateBasedRuleManagedKeys( GetRateBasedRuleManagedKeysRequest getRateBasedRuleManagedKeysRequest) throws WafInternalErrorException, WafInvalidAccountException, WafNonexistentItemException, WafInvalidParameterException, AwsServiceException, SdkClientException, WafException { throw new UnsupportedOperationException(); } /** * *

                                                                                                                                                        * This is AWS WAF Classic documentation. For more information, see AWS WAF Classic in the * developer guide. *

                                                                                                                                                        *

                                                                                                                                                        * For the latest version of AWS WAF, use the AWS WAFV2 API and see the AWS WAF Developer Guide. With * the latest version, AWS WAF has a single set of endpoints for regional and global use. *

                                                                                                                                                        *
                                                                                                                                                        *

                                                                                                                                                        * Returns an array of IP addresses currently being blocked by the RateBasedRule that is specified by the * RuleId. The maximum number of managed keys that will be blocked is 10,000. If more than 10,000 * addresses exceed the rate limit, the 10,000 addresses with the highest rates will be blocked. *

                                                                                                                                                        *
                                                                                                                                                        *

                                                                                                                                                        * This is a convenience which creates an instance of the {@link GetRateBasedRuleManagedKeysRequest.Builder} * avoiding the need to create one manually via {@link GetRateBasedRuleManagedKeysRequest#builder()} *

                                                                                                                                                        * * @param getRateBasedRuleManagedKeysRequest * A {@link Consumer} that will call methods on * {@link software.amazon.awssdk.services.waf.model.GetRateBasedRuleManagedKeysRequest.Builder} to create a * request. * @return Result of the GetRateBasedRuleManagedKeys operation returned by the service. * @throws WafInternalErrorException * The operation failed because of a system problem, even though the request was valid. Retry your request. * @throws WafInvalidAccountException * The operation failed because you tried to create, update, or delete an object by using an invalid account * identifier. * @throws WafNonexistentItemException * The operation failed because the referenced object doesn't exist. * @throws WafInvalidParameterException * The operation failed because AWS WAF didn't recognize a parameter in the request. For example:

                                                                                                                                                        *
                                                                                                                                                          *
                                                                                                                                                        • *

                                                                                                                                                          * You specified an invalid parameter name. *

                                                                                                                                                          *
                                                                                                                                                        • *
                                                                                                                                                        • *

                                                                                                                                                          * You specified an invalid value. *

                                                                                                                                                          *
                                                                                                                                                        • *
                                                                                                                                                        • *

                                                                                                                                                          * You tried to update an object (ByteMatchSet, IPSet, Rule, or * WebACL) using an action other than INSERT or DELETE. *

                                                                                                                                                          *
                                                                                                                                                        • *
                                                                                                                                                        • *

                                                                                                                                                          * You tried to create a WebACL with a DefaultAction Type other than * ALLOW, BLOCK, or COUNT. *

                                                                                                                                                          *
                                                                                                                                                        • *
                                                                                                                                                        • *

                                                                                                                                                          * You tried to create a RateBasedRule with a RateKey value other than * IP. *

                                                                                                                                                          *
                                                                                                                                                        • *
                                                                                                                                                        • *

                                                                                                                                                          * You tried to update a WebACL with a WafAction Type other than * ALLOW, BLOCK, or COUNT. *

                                                                                                                                                          *
                                                                                                                                                        • *
                                                                                                                                                        • *

                                                                                                                                                          * You tried to update a ByteMatchSet with a FieldToMatch Type other * than HEADER, METHOD, QUERY_STRING, URI, or BODY. *

                                                                                                                                                          *
                                                                                                                                                        • *
                                                                                                                                                        • *

                                                                                                                                                          * You tried to update a ByteMatchSet with a Field of HEADER but no * value for Data. *

                                                                                                                                                          *
                                                                                                                                                        • *
                                                                                                                                                        • *

                                                                                                                                                          * Your request references an ARN that is malformed, or corresponds to a resource with which a web ACL * cannot be associated. *

                                                                                                                                                          *
                                                                                                                                                        • * @throws SdkException * Base class for all exceptions that can be thrown by the SDK (both service and client). Can be used for * catch all scenarios. * @throws SdkClientException * If any client side error occurs such as an IO related failure, failure to get credentials, etc. * @throws WafException * Base class for all service exceptions. Unknown exceptions will be thrown as an instance of this type. * @sample WafClient.GetRateBasedRuleManagedKeys * @see AWS API Documentation */ default GetRateBasedRuleManagedKeysResponse getRateBasedRuleManagedKeys( Consumer getRateBasedRuleManagedKeysRequest) throws WafInternalErrorException, WafInvalidAccountException, WafNonexistentItemException, WafInvalidParameterException, AwsServiceException, SdkClientException, WafException { return getRateBasedRuleManagedKeys(GetRateBasedRuleManagedKeysRequest.builder() .applyMutation(getRateBasedRuleManagedKeysRequest).build()); } /** * *

                                                                                                                                                          * This is AWS WAF Classic documentation. For more information, see AWS WAF Classic in the * developer guide. *

                                                                                                                                                          *

                                                                                                                                                          * For the latest version of AWS WAF, use the AWS WAFV2 API and see the AWS WAF Developer Guide. With * the latest version, AWS WAF has a single set of endpoints for regional and global use. *

                                                                                                                                                          *
                                                                                                                                                          *

                                                                                                                                                          * Returns the RegexMatchSet specified by RegexMatchSetId. *

                                                                                                                                                          * * @param getRegexMatchSetRequest * @return Result of the GetRegexMatchSet operation returned by the service. * @throws WafInternalErrorException * The operation failed because of a system problem, even though the request was valid. Retry your request. * @throws WafInvalidAccountException * The operation failed because you tried to create, update, or delete an object by using an invalid account * identifier. * @throws WafNonexistentItemException * The operation failed because the referenced object doesn't exist. * @throws SdkException * Base class for all exceptions that can be thrown by the SDK (both service and client). Can be used for * catch all scenarios. * @throws SdkClientException * If any client side error occurs such as an IO related failure, failure to get credentials, etc. * @throws WafException * Base class for all service exceptions. Unknown exceptions will be thrown as an instance of this type. * @sample WafClient.GetRegexMatchSet * @see AWS API * Documentation */ default GetRegexMatchSetResponse getRegexMatchSet(GetRegexMatchSetRequest getRegexMatchSetRequest) throws WafInternalErrorException, WafInvalidAccountException, WafNonexistentItemException, AwsServiceException, SdkClientException, WafException { throw new UnsupportedOperationException(); } /** * *

                                                                                                                                                          * This is AWS WAF Classic documentation. For more information, see AWS WAF Classic in the * developer guide. *

                                                                                                                                                          *

                                                                                                                                                          * For the latest version of AWS WAF, use the AWS WAFV2 API and see the AWS WAF Developer Guide. With * the latest version, AWS WAF has a single set of endpoints for regional and global use. *

                                                                                                                                                          *
                                                                                                                                                          *

                                                                                                                                                          * Returns the RegexMatchSet specified by RegexMatchSetId. *

                                                                                                                                                          *
                                                                                                                                                          *

                                                                                                                                                          * This is a convenience which creates an instance of the {@link GetRegexMatchSetRequest.Builder} avoiding the need * to create one manually via {@link GetRegexMatchSetRequest#builder()} *

                                                                                                                                                          * * @param getRegexMatchSetRequest * A {@link Consumer} that will call methods on * {@link software.amazon.awssdk.services.waf.model.GetRegexMatchSetRequest.Builder} to create a request. * @return Result of the GetRegexMatchSet operation returned by the service. * @throws WafInternalErrorException * The operation failed because of a system problem, even though the request was valid. Retry your request. * @throws WafInvalidAccountException * The operation failed because you tried to create, update, or delete an object by using an invalid account * identifier. * @throws WafNonexistentItemException * The operation failed because the referenced object doesn't exist. * @throws SdkException * Base class for all exceptions that can be thrown by the SDK (both service and client). Can be used for * catch all scenarios. * @throws SdkClientException * If any client side error occurs such as an IO related failure, failure to get credentials, etc. * @throws WafException * Base class for all service exceptions. Unknown exceptions will be thrown as an instance of this type. * @sample WafClient.GetRegexMatchSet * @see AWS API * Documentation */ default GetRegexMatchSetResponse getRegexMatchSet(Consumer getRegexMatchSetRequest) throws WafInternalErrorException, WafInvalidAccountException, WafNonexistentItemException, AwsServiceException, SdkClientException, WafException { return getRegexMatchSet(GetRegexMatchSetRequest.builder().applyMutation(getRegexMatchSetRequest).build()); } /** * *

                                                                                                                                                          * This is AWS WAF Classic documentation. For more information, see AWS WAF Classic in the * developer guide. *

                                                                                                                                                          *

                                                                                                                                                          * For the latest version of AWS WAF, use the AWS WAFV2 API and see the AWS WAF Developer Guide. With * the latest version, AWS WAF has a single set of endpoints for regional and global use. *

                                                                                                                                                          *
                                                                                                                                                          *

                                                                                                                                                          * Returns the RegexPatternSet specified by RegexPatternSetId. *

                                                                                                                                                          * * @param getRegexPatternSetRequest * @return Result of the GetRegexPatternSet operation returned by the service. * @throws WafInternalErrorException * The operation failed because of a system problem, even though the request was valid. Retry your request. * @throws WafInvalidAccountException * The operation failed because you tried to create, update, or delete an object by using an invalid account * identifier. * @throws WafNonexistentItemException * The operation failed because the referenced object doesn't exist. * @throws SdkException * Base class for all exceptions that can be thrown by the SDK (both service and client). Can be used for * catch all scenarios. * @throws SdkClientException * If any client side error occurs such as an IO related failure, failure to get credentials, etc. * @throws WafException * Base class for all service exceptions. Unknown exceptions will be thrown as an instance of this type. * @sample WafClient.GetRegexPatternSet * @see AWS API * Documentation */ default GetRegexPatternSetResponse getRegexPatternSet(GetRegexPatternSetRequest getRegexPatternSetRequest) throws WafInternalErrorException, WafInvalidAccountException, WafNonexistentItemException, AwsServiceException, SdkClientException, WafException { throw new UnsupportedOperationException(); } /** * *

                                                                                                                                                          * This is AWS WAF Classic documentation. For more information, see AWS WAF Classic in the * developer guide. *

                                                                                                                                                          *

                                                                                                                                                          * For the latest version of AWS WAF, use the AWS WAFV2 API and see the AWS WAF Developer Guide. With * the latest version, AWS WAF has a single set of endpoints for regional and global use. *

                                                                                                                                                          *
                                                                                                                                                          *

                                                                                                                                                          * Returns the RegexPatternSet specified by RegexPatternSetId. *

                                                                                                                                                          *
                                                                                                                                                          *

                                                                                                                                                          * This is a convenience which creates an instance of the {@link GetRegexPatternSetRequest.Builder} avoiding the * need to create one manually via {@link GetRegexPatternSetRequest#builder()} *

                                                                                                                                                          * * @param getRegexPatternSetRequest * A {@link Consumer} that will call methods on * {@link software.amazon.awssdk.services.waf.model.GetRegexPatternSetRequest.Builder} to create a request. * @return Result of the GetRegexPatternSet operation returned by the service. * @throws WafInternalErrorException * The operation failed because of a system problem, even though the request was valid. Retry your request. * @throws WafInvalidAccountException * The operation failed because you tried to create, update, or delete an object by using an invalid account * identifier. * @throws WafNonexistentItemException * The operation failed because the referenced object doesn't exist. * @throws SdkException * Base class for all exceptions that can be thrown by the SDK (both service and client). Can be used for * catch all scenarios. * @throws SdkClientException * If any client side error occurs such as an IO related failure, failure to get credentials, etc. * @throws WafException * Base class for all service exceptions. Unknown exceptions will be thrown as an instance of this type. * @sample WafClient.GetRegexPatternSet * @see AWS API * Documentation */ default GetRegexPatternSetResponse getRegexPatternSet(Consumer getRegexPatternSetRequest) throws WafInternalErrorException, WafInvalidAccountException, WafNonexistentItemException, AwsServiceException, SdkClientException, WafException { return getRegexPatternSet(GetRegexPatternSetRequest.builder().applyMutation(getRegexPatternSetRequest).build()); } /** * *

                                                                                                                                                          * This is AWS WAF Classic documentation. For more information, see AWS WAF Classic in the * developer guide. *

                                                                                                                                                          *

                                                                                                                                                          * For the latest version of AWS WAF, use the AWS WAFV2 API and see the AWS WAF Developer Guide. With * the latest version, AWS WAF has a single set of endpoints for regional and global use. *

                                                                                                                                                          *
                                                                                                                                                          *

                                                                                                                                                          * Returns the Rule that is specified by the RuleId that you included in the * GetRule request. *

                                                                                                                                                          * * @param getRuleRequest * @return Result of the GetRule operation returned by the service. * @throws WafInternalErrorException * The operation failed because of a system problem, even though the request was valid. Retry your request. * @throws WafInvalidAccountException * The operation failed because you tried to create, update, or delete an object by using an invalid account * identifier. * @throws WafNonexistentItemException * The operation failed because the referenced object doesn't exist. * @throws SdkException * Base class for all exceptions that can be thrown by the SDK (both service and client). Can be used for * catch all scenarios. * @throws SdkClientException * If any client side error occurs such as an IO related failure, failure to get credentials, etc. * @throws WafException * Base class for all service exceptions. Unknown exceptions will be thrown as an instance of this type. * @sample WafClient.GetRule * @see AWS API * Documentation */ default GetRuleResponse getRule(GetRuleRequest getRuleRequest) throws WafInternalErrorException, WafInvalidAccountException, WafNonexistentItemException, AwsServiceException, SdkClientException, WafException { throw new UnsupportedOperationException(); } /** * *

                                                                                                                                                          * This is AWS WAF Classic documentation. For more information, see AWS WAF Classic in the * developer guide. *

                                                                                                                                                          *

                                                                                                                                                          * For the latest version of AWS WAF, use the AWS WAFV2 API and see the AWS WAF Developer Guide. With * the latest version, AWS WAF has a single set of endpoints for regional and global use. *

                                                                                                                                                          *
                                                                                                                                                          *

                                                                                                                                                          * Returns the Rule that is specified by the RuleId that you included in the * GetRule request. *

                                                                                                                                                          *
                                                                                                                                                          *

                                                                                                                                                          * This is a convenience which creates an instance of the {@link GetRuleRequest.Builder} avoiding the need to create * one manually via {@link GetRuleRequest#builder()} *

                                                                                                                                                          * * @param getRuleRequest * A {@link Consumer} that will call methods on * {@link software.amazon.awssdk.services.waf.model.GetRuleRequest.Builder} to create a request. * @return Result of the GetRule operation returned by the service. * @throws WafInternalErrorException * The operation failed because of a system problem, even though the request was valid. Retry your request. * @throws WafInvalidAccountException * The operation failed because you tried to create, update, or delete an object by using an invalid account * identifier. * @throws WafNonexistentItemException * The operation failed because the referenced object doesn't exist. * @throws SdkException * Base class for all exceptions that can be thrown by the SDK (both service and client). Can be used for * catch all scenarios. * @throws SdkClientException * If any client side error occurs such as an IO related failure, failure to get credentials, etc. * @throws WafException * Base class for all service exceptions. Unknown exceptions will be thrown as an instance of this type. * @sample WafClient.GetRule * @see AWS API * Documentation */ default GetRuleResponse getRule(Consumer getRuleRequest) throws WafInternalErrorException, WafInvalidAccountException, WafNonexistentItemException, AwsServiceException, SdkClientException, WafException { return getRule(GetRuleRequest.builder().applyMutation(getRuleRequest).build()); } /** * *

                                                                                                                                                          * This is AWS WAF Classic documentation. For more information, see AWS WAF Classic in the * developer guide. *

                                                                                                                                                          *

                                                                                                                                                          * For the latest version of AWS WAF, use the AWS WAFV2 API and see the AWS WAF Developer Guide. With * the latest version, AWS WAF has a single set of endpoints for regional and global use. *

                                                                                                                                                          *
                                                                                                                                                          *

                                                                                                                                                          * Returns the RuleGroup that is specified by the RuleGroupId that you included in the * GetRuleGroup request. *

                                                                                                                                                          *

                                                                                                                                                          * To view the rules in a rule group, use ListActivatedRulesInRuleGroup. *

                                                                                                                                                          * * @param getRuleGroupRequest * @return Result of the GetRuleGroup operation returned by the service. * @throws WafInternalErrorException * The operation failed because of a system problem, even though the request was valid. Retry your request. * @throws WafNonexistentItemException * The operation failed because the referenced object doesn't exist. * @throws SdkException * Base class for all exceptions that can be thrown by the SDK (both service and client). Can be used for * catch all scenarios. * @throws SdkClientException * If any client side error occurs such as an IO related failure, failure to get credentials, etc. * @throws WafException * Base class for all service exceptions. Unknown exceptions will be thrown as an instance of this type. * @sample WafClient.GetRuleGroup * @see AWS API * Documentation */ default GetRuleGroupResponse getRuleGroup(GetRuleGroupRequest getRuleGroupRequest) throws WafInternalErrorException, WafNonexistentItemException, AwsServiceException, SdkClientException, WafException { throw new UnsupportedOperationException(); } /** * *

                                                                                                                                                          * This is AWS WAF Classic documentation. For more information, see AWS WAF Classic in the * developer guide. *

                                                                                                                                                          *

                                                                                                                                                          * For the latest version of AWS WAF, use the AWS WAFV2 API and see the AWS WAF Developer Guide. With * the latest version, AWS WAF has a single set of endpoints for regional and global use. *

                                                                                                                                                          *
                                                                                                                                                          *

                                                                                                                                                          * Returns the RuleGroup that is specified by the RuleGroupId that you included in the * GetRuleGroup request. *

                                                                                                                                                          *

                                                                                                                                                          * To view the rules in a rule group, use ListActivatedRulesInRuleGroup. *

                                                                                                                                                          *
                                                                                                                                                          *

                                                                                                                                                          * This is a convenience which creates an instance of the {@link GetRuleGroupRequest.Builder} avoiding the need to * create one manually via {@link GetRuleGroupRequest#builder()} *

                                                                                                                                                          * * @param getRuleGroupRequest * A {@link Consumer} that will call methods on * {@link software.amazon.awssdk.services.waf.model.GetRuleGroupRequest.Builder} to create a request. * @return Result of the GetRuleGroup operation returned by the service. * @throws WafInternalErrorException * The operation failed because of a system problem, even though the request was valid. Retry your request. * @throws WafNonexistentItemException * The operation failed because the referenced object doesn't exist. * @throws SdkException * Base class for all exceptions that can be thrown by the SDK (both service and client). Can be used for * catch all scenarios. * @throws SdkClientException * If any client side error occurs such as an IO related failure, failure to get credentials, etc. * @throws WafException * Base class for all service exceptions. Unknown exceptions will be thrown as an instance of this type. * @sample WafClient.GetRuleGroup * @see AWS API * Documentation */ default GetRuleGroupResponse getRuleGroup(Consumer getRuleGroupRequest) throws WafInternalErrorException, WafNonexistentItemException, AwsServiceException, SdkClientException, WafException { return getRuleGroup(GetRuleGroupRequest.builder().applyMutation(getRuleGroupRequest).build()); } /** * *

                                                                                                                                                          * This is AWS WAF Classic documentation. For more information, see AWS WAF Classic in the * developer guide. *

                                                                                                                                                          *

                                                                                                                                                          * For the latest version of AWS WAF, use the AWS WAFV2 API and see the AWS WAF Developer Guide. With * the latest version, AWS WAF has a single set of endpoints for regional and global use. *

                                                                                                                                                          *
                                                                                                                                                          *

                                                                                                                                                          * Gets detailed information about a specified number of requests--a sample--that AWS WAF randomly selects from * among the first 5,000 requests that your AWS resource received during a time range that you choose. You can * specify a sample size of up to 500 requests, and you can specify any time range in the previous three hours. *

                                                                                                                                                          *

                                                                                                                                                          * GetSampledRequests returns a time range, which is usually the time range that you specified. * However, if your resource (such as a CloudFront distribution) received 5,000 requests before the specified time * range elapsed, GetSampledRequests returns an updated time range. This new time range indicates the * actual period during which AWS WAF selected the requests in the sample. *

                                                                                                                                                          * * @param getSampledRequestsRequest * @return Result of the GetSampledRequests operation returned by the service. * @throws WafNonexistentItemException * The operation failed because the referenced object doesn't exist. * @throws WafInternalErrorException * The operation failed because of a system problem, even though the request was valid. Retry your request. * @throws SdkException * Base class for all exceptions that can be thrown by the SDK (both service and client). Can be used for * catch all scenarios. * @throws SdkClientException * If any client side error occurs such as an IO related failure, failure to get credentials, etc. * @throws WafException * Base class for all service exceptions. Unknown exceptions will be thrown as an instance of this type. * @sample WafClient.GetSampledRequests * @see AWS API * Documentation */ default GetSampledRequestsResponse getSampledRequests(GetSampledRequestsRequest getSampledRequestsRequest) throws WafNonexistentItemException, WafInternalErrorException, AwsServiceException, SdkClientException, WafException { throw new UnsupportedOperationException(); } /** * *

                                                                                                                                                          * This is AWS WAF Classic documentation. For more information, see AWS WAF Classic in the * developer guide. *

                                                                                                                                                          *

                                                                                                                                                          * For the latest version of AWS WAF, use the AWS WAFV2 API and see the AWS WAF Developer Guide. With * the latest version, AWS WAF has a single set of endpoints for regional and global use. *

                                                                                                                                                          *
                                                                                                                                                          *

                                                                                                                                                          * Gets detailed information about a specified number of requests--a sample--that AWS WAF randomly selects from * among the first 5,000 requests that your AWS resource received during a time range that you choose. You can * specify a sample size of up to 500 requests, and you can specify any time range in the previous three hours. *

                                                                                                                                                          *

                                                                                                                                                          * GetSampledRequests returns a time range, which is usually the time range that you specified. * However, if your resource (such as a CloudFront distribution) received 5,000 requests before the specified time * range elapsed, GetSampledRequests returns an updated time range. This new time range indicates the * actual period during which AWS WAF selected the requests in the sample. *

                                                                                                                                                          *
                                                                                                                                                          *

                                                                                                                                                          * This is a convenience which creates an instance of the {@link GetSampledRequestsRequest.Builder} avoiding the * need to create one manually via {@link GetSampledRequestsRequest#builder()} *

                                                                                                                                                          * * @param getSampledRequestsRequest * A {@link Consumer} that will call methods on * {@link software.amazon.awssdk.services.waf.model.GetSampledRequestsRequest.Builder} to create a request. * @return Result of the GetSampledRequests operation returned by the service. * @throws WafNonexistentItemException * The operation failed because the referenced object doesn't exist. * @throws WafInternalErrorException * The operation failed because of a system problem, even though the request was valid. Retry your request. * @throws SdkException * Base class for all exceptions that can be thrown by the SDK (both service and client). Can be used for * catch all scenarios. * @throws SdkClientException * If any client side error occurs such as an IO related failure, failure to get credentials, etc. * @throws WafException * Base class for all service exceptions. Unknown exceptions will be thrown as an instance of this type. * @sample WafClient.GetSampledRequests * @see AWS API * Documentation */ default GetSampledRequestsResponse getSampledRequests(Consumer getSampledRequestsRequest) throws WafNonexistentItemException, WafInternalErrorException, AwsServiceException, SdkClientException, WafException { return getSampledRequests(GetSampledRequestsRequest.builder().applyMutation(getSampledRequestsRequest).build()); } /** * *

                                                                                                                                                          * This is AWS WAF Classic documentation. For more information, see AWS WAF Classic in the * developer guide. *

                                                                                                                                                          *

                                                                                                                                                          * For the latest version of AWS WAF, use the AWS WAFV2 API and see the AWS WAF Developer Guide. With * the latest version, AWS WAF has a single set of endpoints for regional and global use. *

                                                                                                                                                          *
                                                                                                                                                          *

                                                                                                                                                          * Returns the SizeConstraintSet specified by SizeConstraintSetId. *

                                                                                                                                                          * * @param getSizeConstraintSetRequest * @return Result of the GetSizeConstraintSet operation returned by the service. * @throws WafInternalErrorException * The operation failed because of a system problem, even though the request was valid. Retry your request. * @throws WafInvalidAccountException * The operation failed because you tried to create, update, or delete an object by using an invalid account * identifier. * @throws WafNonexistentItemException * The operation failed because the referenced object doesn't exist. * @throws SdkException * Base class for all exceptions that can be thrown by the SDK (both service and client). Can be used for * catch all scenarios. * @throws SdkClientException * If any client side error occurs such as an IO related failure, failure to get credentials, etc. * @throws WafException * Base class for all service exceptions. Unknown exceptions will be thrown as an instance of this type. * @sample WafClient.GetSizeConstraintSet * @see AWS API * Documentation */ default GetSizeConstraintSetResponse getSizeConstraintSet(GetSizeConstraintSetRequest getSizeConstraintSetRequest) throws WafInternalErrorException, WafInvalidAccountException, WafNonexistentItemException, AwsServiceException, SdkClientException, WafException { throw new UnsupportedOperationException(); } /** * *

                                                                                                                                                          * This is AWS WAF Classic documentation. For more information, see AWS WAF Classic in the * developer guide. *

                                                                                                                                                          *

                                                                                                                                                          * For the latest version of AWS WAF, use the AWS WAFV2 API and see the AWS WAF Developer Guide. With * the latest version, AWS WAF has a single set of endpoints for regional and global use. *

                                                                                                                                                          *
                                                                                                                                                          *

                                                                                                                                                          * Returns the SizeConstraintSet specified by SizeConstraintSetId. *

                                                                                                                                                          *
                                                                                                                                                          *

                                                                                                                                                          * This is a convenience which creates an instance of the {@link GetSizeConstraintSetRequest.Builder} avoiding the * need to create one manually via {@link GetSizeConstraintSetRequest#builder()} *

                                                                                                                                                          * * @param getSizeConstraintSetRequest * A {@link Consumer} that will call methods on * {@link software.amazon.awssdk.services.waf.model.GetSizeConstraintSetRequest.Builder} to create a request. * @return Result of the GetSizeConstraintSet operation returned by the service. * @throws WafInternalErrorException * The operation failed because of a system problem, even though the request was valid. Retry your request. * @throws WafInvalidAccountException * The operation failed because you tried to create, update, or delete an object by using an invalid account * identifier. * @throws WafNonexistentItemException * The operation failed because the referenced object doesn't exist. * @throws SdkException * Base class for all exceptions that can be thrown by the SDK (both service and client). Can be used for * catch all scenarios. * @throws SdkClientException * If any client side error occurs such as an IO related failure, failure to get credentials, etc. * @throws WafException * Base class for all service exceptions. Unknown exceptions will be thrown as an instance of this type. * @sample WafClient.GetSizeConstraintSet * @see AWS API * Documentation */ default GetSizeConstraintSetResponse getSizeConstraintSet( Consumer getSizeConstraintSetRequest) throws WafInternalErrorException, WafInvalidAccountException, WafNonexistentItemException, AwsServiceException, SdkClientException, WafException { return getSizeConstraintSet(GetSizeConstraintSetRequest.builder().applyMutation(getSizeConstraintSetRequest).build()); } /** * *

                                                                                                                                                          * This is AWS WAF Classic documentation. For more information, see AWS WAF Classic in the * developer guide. *

                                                                                                                                                          *

                                                                                                                                                          * For the latest version of AWS WAF, use the AWS WAFV2 API and see the AWS WAF Developer Guide. With * the latest version, AWS WAF has a single set of endpoints for regional and global use. *

                                                                                                                                                          *
                                                                                                                                                          *

                                                                                                                                                          * Returns the SqlInjectionMatchSet that is specified by SqlInjectionMatchSetId. *

                                                                                                                                                          * * @param getSqlInjectionMatchSetRequest * A request to get a SqlInjectionMatchSet. * @return Result of the GetSqlInjectionMatchSet operation returned by the service. * @throws WafInternalErrorException * The operation failed because of a system problem, even though the request was valid. Retry your request. * @throws WafInvalidAccountException * The operation failed because you tried to create, update, or delete an object by using an invalid account * identifier. * @throws WafNonexistentItemException * The operation failed because the referenced object doesn't exist. * @throws SdkException * Base class for all exceptions that can be thrown by the SDK (both service and client). Can be used for * catch all scenarios. * @throws SdkClientException * If any client side error occurs such as an IO related failure, failure to get credentials, etc. * @throws WafException * Base class for all service exceptions. Unknown exceptions will be thrown as an instance of this type. * @sample WafClient.GetSqlInjectionMatchSet * @see AWS * API Documentation */ default GetSqlInjectionMatchSetResponse getSqlInjectionMatchSet(GetSqlInjectionMatchSetRequest getSqlInjectionMatchSetRequest) throws WafInternalErrorException, WafInvalidAccountException, WafNonexistentItemException, AwsServiceException, SdkClientException, WafException { throw new UnsupportedOperationException(); } /** * *

                                                                                                                                                          * This is AWS WAF Classic documentation. For more information, see AWS WAF Classic in the * developer guide. *

                                                                                                                                                          *

                                                                                                                                                          * For the latest version of AWS WAF, use the AWS WAFV2 API and see the AWS WAF Developer Guide. With * the latest version, AWS WAF has a single set of endpoints for regional and global use. *

                                                                                                                                                          *
                                                                                                                                                          *

                                                                                                                                                          * Returns the SqlInjectionMatchSet that is specified by SqlInjectionMatchSetId. *

                                                                                                                                                          *
                                                                                                                                                          *

                                                                                                                                                          * This is a convenience which creates an instance of the {@link GetSqlInjectionMatchSetRequest.Builder} avoiding * the need to create one manually via {@link GetSqlInjectionMatchSetRequest#builder()} *

                                                                                                                                                          * * @param getSqlInjectionMatchSetRequest * A {@link Consumer} that will call methods on * {@link software.amazon.awssdk.services.waf.model.GetSqlInjectionMatchSetRequest.Builder} to create a * request. A request to get a SqlInjectionMatchSet. * @return Result of the GetSqlInjectionMatchSet operation returned by the service. * @throws WafInternalErrorException * The operation failed because of a system problem, even though the request was valid. Retry your request. * @throws WafInvalidAccountException * The operation failed because you tried to create, update, or delete an object by using an invalid account * identifier. * @throws WafNonexistentItemException * The operation failed because the referenced object doesn't exist. * @throws SdkException * Base class for all exceptions that can be thrown by the SDK (both service and client). Can be used for * catch all scenarios. * @throws SdkClientException * If any client side error occurs such as an IO related failure, failure to get credentials, etc. * @throws WafException * Base class for all service exceptions. Unknown exceptions will be thrown as an instance of this type. * @sample WafClient.GetSqlInjectionMatchSet * @see AWS * API Documentation */ default GetSqlInjectionMatchSetResponse getSqlInjectionMatchSet( Consumer getSqlInjectionMatchSetRequest) throws WafInternalErrorException, WafInvalidAccountException, WafNonexistentItemException, AwsServiceException, SdkClientException, WafException { return getSqlInjectionMatchSet(GetSqlInjectionMatchSetRequest.builder().applyMutation(getSqlInjectionMatchSetRequest) .build()); } /** * *

                                                                                                                                                          * This is AWS WAF Classic documentation. For more information, see AWS WAF Classic in the * developer guide. *

                                                                                                                                                          *

                                                                                                                                                          * For the latest version of AWS WAF, use the AWS WAFV2 API and see the AWS WAF Developer Guide. With * the latest version, AWS WAF has a single set of endpoints for regional and global use. *

                                                                                                                                                          *
                                                                                                                                                          *

                                                                                                                                                          * Returns the WebACL that is specified by WebACLId. *

                                                                                                                                                          * * @param getWebAclRequest * @return Result of the GetWebACL operation returned by the service. * @throws WafInternalErrorException * The operation failed because of a system problem, even though the request was valid. Retry your request. * @throws WafInvalidAccountException * The operation failed because you tried to create, update, or delete an object by using an invalid account * identifier. * @throws WafNonexistentItemException * The operation failed because the referenced object doesn't exist. * @throws SdkException * Base class for all exceptions that can be thrown by the SDK (both service and client). Can be used for * catch all scenarios. * @throws SdkClientException * If any client side error occurs such as an IO related failure, failure to get credentials, etc. * @throws WafException * Base class for all service exceptions. Unknown exceptions will be thrown as an instance of this type. * @sample WafClient.GetWebACL * @see AWS API * Documentation */ default GetWebAclResponse getWebACL(GetWebAclRequest getWebAclRequest) throws WafInternalErrorException, WafInvalidAccountException, WafNonexistentItemException, AwsServiceException, SdkClientException, WafException { throw new UnsupportedOperationException(); } /** * *

                                                                                                                                                          * This is AWS WAF Classic documentation. For more information, see AWS WAF Classic in the * developer guide. *

                                                                                                                                                          *

                                                                                                                                                          * For the latest version of AWS WAF, use the AWS WAFV2 API and see the AWS WAF Developer Guide. With * the latest version, AWS WAF has a single set of endpoints for regional and global use. *

                                                                                                                                                          *
                                                                                                                                                          *

                                                                                                                                                          * Returns the WebACL that is specified by WebACLId. *

                                                                                                                                                          *
                                                                                                                                                          *

                                                                                                                                                          * This is a convenience which creates an instance of the {@link GetWebAclRequest.Builder} avoiding the need to * create one manually via {@link GetWebAclRequest#builder()} *

                                                                                                                                                          * * @param getWebAclRequest * A {@link Consumer} that will call methods on * {@link software.amazon.awssdk.services.waf.model.GetWebAclRequest.Builder} to create a request. * @return Result of the GetWebACL operation returned by the service. * @throws WafInternalErrorException * The operation failed because of a system problem, even though the request was valid. Retry your request. * @throws WafInvalidAccountException * The operation failed because you tried to create, update, or delete an object by using an invalid account * identifier. * @throws WafNonexistentItemException * The operation failed because the referenced object doesn't exist. * @throws SdkException * Base class for all exceptions that can be thrown by the SDK (both service and client). Can be used for * catch all scenarios. * @throws SdkClientException * If any client side error occurs such as an IO related failure, failure to get credentials, etc. * @throws WafException * Base class for all service exceptions. Unknown exceptions will be thrown as an instance of this type. * @sample WafClient.GetWebACL * @see AWS API * Documentation */ default GetWebAclResponse getWebACL(Consumer getWebAclRequest) throws WafInternalErrorException, WafInvalidAccountException, WafNonexistentItemException, AwsServiceException, SdkClientException, WafException { return getWebACL(GetWebAclRequest.builder().applyMutation(getWebAclRequest).build()); } /** * *

                                                                                                                                                          * This is AWS WAF Classic documentation. For more information, see AWS WAF Classic in the * developer guide. *

                                                                                                                                                          *

                                                                                                                                                          * For the latest version of AWS WAF, use the AWS WAFV2 API and see the AWS WAF Developer Guide. With * the latest version, AWS WAF has a single set of endpoints for regional and global use. *

                                                                                                                                                          *
                                                                                                                                                          *

                                                                                                                                                          * Returns the XssMatchSet that is specified by XssMatchSetId. *

                                                                                                                                                          * * @param getXssMatchSetRequest * A request to get an XssMatchSet. * @return Result of the GetXssMatchSet operation returned by the service. * @throws WafInternalErrorException * The operation failed because of a system problem, even though the request was valid. Retry your request. * @throws WafInvalidAccountException * The operation failed because you tried to create, update, or delete an object by using an invalid account * identifier. * @throws WafNonexistentItemException * The operation failed because the referenced object doesn't exist. * @throws SdkException * Base class for all exceptions that can be thrown by the SDK (both service and client). Can be used for * catch all scenarios. * @throws SdkClientException * If any client side error occurs such as an IO related failure, failure to get credentials, etc. * @throws WafException * Base class for all service exceptions. Unknown exceptions will be thrown as an instance of this type. * @sample WafClient.GetXssMatchSet * @see AWS API * Documentation */ default GetXssMatchSetResponse getXssMatchSet(GetXssMatchSetRequest getXssMatchSetRequest) throws WafInternalErrorException, WafInvalidAccountException, WafNonexistentItemException, AwsServiceException, SdkClientException, WafException { throw new UnsupportedOperationException(); } /** * *

                                                                                                                                                          * This is AWS WAF Classic documentation. For more information, see AWS WAF Classic in the * developer guide. *

                                                                                                                                                          *

                                                                                                                                                          * For the latest version of AWS WAF, use the AWS WAFV2 API and see the AWS WAF Developer Guide. With * the latest version, AWS WAF has a single set of endpoints for regional and global use. *

                                                                                                                                                          *
                                                                                                                                                          *

                                                                                                                                                          * Returns the XssMatchSet that is specified by XssMatchSetId. *

                                                                                                                                                          *
                                                                                                                                                          *

                                                                                                                                                          * This is a convenience which creates an instance of the {@link GetXssMatchSetRequest.Builder} avoiding the need to * create one manually via {@link GetXssMatchSetRequest#builder()} *

                                                                                                                                                          * * @param getXssMatchSetRequest * A {@link Consumer} that will call methods on * {@link software.amazon.awssdk.services.waf.model.GetXssMatchSetRequest.Builder} to create a request. A * request to get an XssMatchSet. * @return Result of the GetXssMatchSet operation returned by the service. * @throws WafInternalErrorException * The operation failed because of a system problem, even though the request was valid. Retry your request. * @throws WafInvalidAccountException * The operation failed because you tried to create, update, or delete an object by using an invalid account * identifier. * @throws WafNonexistentItemException * The operation failed because the referenced object doesn't exist. * @throws SdkException * Base class for all exceptions that can be thrown by the SDK (both service and client). Can be used for * catch all scenarios. * @throws SdkClientException * If any client side error occurs such as an IO related failure, failure to get credentials, etc. * @throws WafException * Base class for all service exceptions. Unknown exceptions will be thrown as an instance of this type. * @sample WafClient.GetXssMatchSet * @see AWS API * Documentation */ default GetXssMatchSetResponse getXssMatchSet(Consumer getXssMatchSetRequest) throws WafInternalErrorException, WafInvalidAccountException, WafNonexistentItemException, AwsServiceException, SdkClientException, WafException { return getXssMatchSet(GetXssMatchSetRequest.builder().applyMutation(getXssMatchSetRequest).build()); } /** * *

                                                                                                                                                          * This is AWS WAF Classic documentation. For more information, see AWS WAF Classic in the * developer guide. *

                                                                                                                                                          *

                                                                                                                                                          * For the latest version of AWS WAF, use the AWS WAFV2 API and see the AWS WAF Developer Guide. With * the latest version, AWS WAF has a single set of endpoints for regional and global use. *

                                                                                                                                                          *
                                                                                                                                                          *

                                                                                                                                                          * Returns an array of ActivatedRule objects. *

                                                                                                                                                          * * @param listActivatedRulesInRuleGroupRequest * @return Result of the ListActivatedRulesInRuleGroup operation returned by the service. * @throws WafInternalErrorException * The operation failed because of a system problem, even though the request was valid. Retry your request. * @throws WafNonexistentItemException * The operation failed because the referenced object doesn't exist. * @throws WafInvalidParameterException * The operation failed because AWS WAF didn't recognize a parameter in the request. For example:

                                                                                                                                                          *
                                                                                                                                                            *
                                                                                                                                                          • *

                                                                                                                                                            * You specified an invalid parameter name. *

                                                                                                                                                            *
                                                                                                                                                          • *
                                                                                                                                                          • *

                                                                                                                                                            * You specified an invalid value. *

                                                                                                                                                            *
                                                                                                                                                          • *
                                                                                                                                                          • *

                                                                                                                                                            * You tried to update an object (ByteMatchSet, IPSet, Rule, or * WebACL) using an action other than INSERT or DELETE. *

                                                                                                                                                            *
                                                                                                                                                          • *
                                                                                                                                                          • *

                                                                                                                                                            * You tried to create a WebACL with a DefaultAction Type other than * ALLOW, BLOCK, or COUNT. *

                                                                                                                                                            *
                                                                                                                                                          • *
                                                                                                                                                          • *

                                                                                                                                                            * You tried to create a RateBasedRule with a RateKey value other than * IP. *

                                                                                                                                                            *
                                                                                                                                                          • *
                                                                                                                                                          • *

                                                                                                                                                            * You tried to update a WebACL with a WafAction Type other than * ALLOW, BLOCK, or COUNT. *

                                                                                                                                                            *
                                                                                                                                                          • *
                                                                                                                                                          • *

                                                                                                                                                            * You tried to update a ByteMatchSet with a FieldToMatch Type other * than HEADER, METHOD, QUERY_STRING, URI, or BODY. *

                                                                                                                                                            *
                                                                                                                                                          • *
                                                                                                                                                          • *

                                                                                                                                                            * You tried to update a ByteMatchSet with a Field of HEADER but no * value for Data. *

                                                                                                                                                            *
                                                                                                                                                          • *
                                                                                                                                                          • *

                                                                                                                                                            * Your request references an ARN that is malformed, or corresponds to a resource with which a web ACL * cannot be associated. *

                                                                                                                                                            *
                                                                                                                                                          • * @throws SdkException * Base class for all exceptions that can be thrown by the SDK (both service and client). Can be used for * catch all scenarios. * @throws SdkClientException * If any client side error occurs such as an IO related failure, failure to get credentials, etc. * @throws WafException * Base class for all service exceptions. Unknown exceptions will be thrown as an instance of this type. * @sample WafClient.ListActivatedRulesInRuleGroup * @see AWS API Documentation */ default ListActivatedRulesInRuleGroupResponse listActivatedRulesInRuleGroup( ListActivatedRulesInRuleGroupRequest listActivatedRulesInRuleGroupRequest) throws WafInternalErrorException, WafNonexistentItemException, WafInvalidParameterException, AwsServiceException, SdkClientException, WafException { throw new UnsupportedOperationException(); } /** * *

                                                                                                                                                            * This is AWS WAF Classic documentation. For more information, see AWS WAF Classic in the * developer guide. *

                                                                                                                                                            *

                                                                                                                                                            * For the latest version of AWS WAF, use the AWS WAFV2 API and see the AWS WAF Developer Guide. With * the latest version, AWS WAF has a single set of endpoints for regional and global use. *

                                                                                                                                                            *
                                                                                                                                                            *

                                                                                                                                                            * Returns an array of ActivatedRule objects. *

                                                                                                                                                            *
                                                                                                                                                            *

                                                                                                                                                            * This is a convenience which creates an instance of the {@link ListActivatedRulesInRuleGroupRequest.Builder} * avoiding the need to create one manually via {@link ListActivatedRulesInRuleGroupRequest#builder()} *

                                                                                                                                                            * * @param listActivatedRulesInRuleGroupRequest * A {@link Consumer} that will call methods on * {@link software.amazon.awssdk.services.waf.model.ListActivatedRulesInRuleGroupRequest.Builder} to create a * request. * @return Result of the ListActivatedRulesInRuleGroup operation returned by the service. * @throws WafInternalErrorException * The operation failed because of a system problem, even though the request was valid. Retry your request. * @throws WafNonexistentItemException * The operation failed because the referenced object doesn't exist. * @throws WafInvalidParameterException * The operation failed because AWS WAF didn't recognize a parameter in the request. For example:

                                                                                                                                                            *
                                                                                                                                                              *
                                                                                                                                                            • *

                                                                                                                                                              * You specified an invalid parameter name. *

                                                                                                                                                              *
                                                                                                                                                            • *
                                                                                                                                                            • *

                                                                                                                                                              * You specified an invalid value. *

                                                                                                                                                              *
                                                                                                                                                            • *
                                                                                                                                                            • *

                                                                                                                                                              * You tried to update an object (ByteMatchSet, IPSet, Rule, or * WebACL) using an action other than INSERT or DELETE. *

                                                                                                                                                              *
                                                                                                                                                            • *
                                                                                                                                                            • *

                                                                                                                                                              * You tried to create a WebACL with a DefaultAction Type other than * ALLOW, BLOCK, or COUNT. *

                                                                                                                                                              *
                                                                                                                                                            • *
                                                                                                                                                            • *

                                                                                                                                                              * You tried to create a RateBasedRule with a RateKey value other than * IP. *

                                                                                                                                                              *
                                                                                                                                                            • *
                                                                                                                                                            • *

                                                                                                                                                              * You tried to update a WebACL with a WafAction Type other than * ALLOW, BLOCK, or COUNT. *

                                                                                                                                                              *
                                                                                                                                                            • *
                                                                                                                                                            • *

                                                                                                                                                              * You tried to update a ByteMatchSet with a FieldToMatch Type other * than HEADER, METHOD, QUERY_STRING, URI, or BODY. *

                                                                                                                                                              *
                                                                                                                                                            • *
                                                                                                                                                            • *

                                                                                                                                                              * You tried to update a ByteMatchSet with a Field of HEADER but no * value for Data. *

                                                                                                                                                              *
                                                                                                                                                            • *
                                                                                                                                                            • *

                                                                                                                                                              * Your request references an ARN that is malformed, or corresponds to a resource with which a web ACL * cannot be associated. *

                                                                                                                                                              *
                                                                                                                                                            • * @throws SdkException * Base class for all exceptions that can be thrown by the SDK (both service and client). Can be used for * catch all scenarios. * @throws SdkClientException * If any client side error occurs such as an IO related failure, failure to get credentials, etc. * @throws WafException * Base class for all service exceptions. Unknown exceptions will be thrown as an instance of this type. * @sample WafClient.ListActivatedRulesInRuleGroup * @see AWS API Documentation */ default ListActivatedRulesInRuleGroupResponse listActivatedRulesInRuleGroup( Consumer listActivatedRulesInRuleGroupRequest) throws WafInternalErrorException, WafNonexistentItemException, WafInvalidParameterException, AwsServiceException, SdkClientException, WafException { return listActivatedRulesInRuleGroup(ListActivatedRulesInRuleGroupRequest.builder() .applyMutation(listActivatedRulesInRuleGroupRequest).build()); } /** * *

                                                                                                                                                              * This is AWS WAF Classic documentation. For more information, see AWS WAF Classic in the * developer guide. *

                                                                                                                                                              *

                                                                                                                                                              * For the latest version of AWS WAF, use the AWS WAFV2 API and see the AWS WAF Developer Guide. With * the latest version, AWS WAF has a single set of endpoints for regional and global use. *

                                                                                                                                                              *
                                                                                                                                                              *

                                                                                                                                                              * Returns an array of ByteMatchSetSummary objects. *

                                                                                                                                                              * * @param listByteMatchSetsRequest * @return Result of the ListByteMatchSets operation returned by the service. * @throws WafInternalErrorException * The operation failed because of a system problem, even though the request was valid. Retry your request. * @throws WafInvalidAccountException * The operation failed because you tried to create, update, or delete an object by using an invalid account * identifier. * @throws SdkException * Base class for all exceptions that can be thrown by the SDK (both service and client). Can be used for * catch all scenarios. * @throws SdkClientException * If any client side error occurs such as an IO related failure, failure to get credentials, etc. * @throws WafException * Base class for all service exceptions. Unknown exceptions will be thrown as an instance of this type. * @sample WafClient.ListByteMatchSets * @see AWS API * Documentation */ default ListByteMatchSetsResponse listByteMatchSets(ListByteMatchSetsRequest listByteMatchSetsRequest) throws WafInternalErrorException, WafInvalidAccountException, AwsServiceException, SdkClientException, WafException { throw new UnsupportedOperationException(); } /** * *

                                                                                                                                                              * This is AWS WAF Classic documentation. For more information, see AWS WAF Classic in the * developer guide. *

                                                                                                                                                              *

                                                                                                                                                              * For the latest version of AWS WAF, use the AWS WAFV2 API and see the AWS WAF Developer Guide. With * the latest version, AWS WAF has a single set of endpoints for regional and global use. *

                                                                                                                                                              *
                                                                                                                                                              *

                                                                                                                                                              * Returns an array of ByteMatchSetSummary objects. *

                                                                                                                                                              *
                                                                                                                                                              *

                                                                                                                                                              * This is a convenience which creates an instance of the {@link ListByteMatchSetsRequest.Builder} avoiding the need * to create one manually via {@link ListByteMatchSetsRequest#builder()} *

                                                                                                                                                              * * @param listByteMatchSetsRequest * A {@link Consumer} that will call methods on * {@link software.amazon.awssdk.services.waf.model.ListByteMatchSetsRequest.Builder} to create a request. * @return Result of the ListByteMatchSets operation returned by the service. * @throws WafInternalErrorException * The operation failed because of a system problem, even though the request was valid. Retry your request. * @throws WafInvalidAccountException * The operation failed because you tried to create, update, or delete an object by using an invalid account * identifier. * @throws SdkException * Base class for all exceptions that can be thrown by the SDK (both service and client). Can be used for * catch all scenarios. * @throws SdkClientException * If any client side error occurs such as an IO related failure, failure to get credentials, etc. * @throws WafException * Base class for all service exceptions. Unknown exceptions will be thrown as an instance of this type. * @sample WafClient.ListByteMatchSets * @see AWS API * Documentation */ default ListByteMatchSetsResponse listByteMatchSets(Consumer listByteMatchSetsRequest) throws WafInternalErrorException, WafInvalidAccountException, AwsServiceException, SdkClientException, WafException { return listByteMatchSets(ListByteMatchSetsRequest.builder().applyMutation(listByteMatchSetsRequest).build()); } /** * *

                                                                                                                                                              * This is AWS WAF Classic documentation. For more information, see AWS WAF Classic in the * developer guide. *

                                                                                                                                                              *

                                                                                                                                                              * For the latest version of AWS WAF, use the AWS WAFV2 API and see the AWS WAF Developer Guide. With * the latest version, AWS WAF has a single set of endpoints for regional and global use. *

                                                                                                                                                              *
                                                                                                                                                              *

                                                                                                                                                              * Returns an array of ByteMatchSetSummary objects. *

                                                                                                                                                              * * @return Result of the ListByteMatchSets operation returned by the service. * @throws WafInternalErrorException * The operation failed because of a system problem, even though the request was valid. Retry your request. * @throws WafInvalidAccountException * The operation failed because you tried to create, update, or delete an object by using an invalid account * identifier. * @throws SdkException * Base class for all exceptions that can be thrown by the SDK (both service and client). Can be used for * catch all scenarios. * @throws SdkClientException * If any client side error occurs such as an IO related failure, failure to get credentials, etc. * @throws WafException * Base class for all service exceptions. Unknown exceptions will be thrown as an instance of this type. * @sample WafClient.ListByteMatchSets * @see #listByteMatchSets(ListByteMatchSetsRequest) * @see AWS API * Documentation */ default ListByteMatchSetsResponse listByteMatchSets() throws WafInternalErrorException, WafInvalidAccountException, AwsServiceException, SdkClientException, WafException { return listByteMatchSets(ListByteMatchSetsRequest.builder().build()); } /** * *

                                                                                                                                                              * This is AWS WAF Classic documentation. For more information, see AWS WAF Classic in the * developer guide. *

                                                                                                                                                              *

                                                                                                                                                              * For the latest version of AWS WAF, use the AWS WAFV2 API and see the AWS WAF Developer Guide. With * the latest version, AWS WAF has a single set of endpoints for regional and global use. *

                                                                                                                                                              *
                                                                                                                                                              *

                                                                                                                                                              * Returns an array of GeoMatchSetSummary objects in the response. *

                                                                                                                                                              * * @param listGeoMatchSetsRequest * @return Result of the ListGeoMatchSets operation returned by the service. * @throws WafInternalErrorException * The operation failed because of a system problem, even though the request was valid. Retry your request. * @throws WafInvalidAccountException * The operation failed because you tried to create, update, or delete an object by using an invalid account * identifier. * @throws SdkException * Base class for all exceptions that can be thrown by the SDK (both service and client). Can be used for * catch all scenarios. * @throws SdkClientException * If any client side error occurs such as an IO related failure, failure to get credentials, etc. * @throws WafException * Base class for all service exceptions. Unknown exceptions will be thrown as an instance of this type. * @sample WafClient.ListGeoMatchSets * @see AWS API * Documentation */ default ListGeoMatchSetsResponse listGeoMatchSets(ListGeoMatchSetsRequest listGeoMatchSetsRequest) throws WafInternalErrorException, WafInvalidAccountException, AwsServiceException, SdkClientException, WafException { throw new UnsupportedOperationException(); } /** * *

                                                                                                                                                              * This is AWS WAF Classic documentation. For more information, see AWS WAF Classic in the * developer guide. *

                                                                                                                                                              *

                                                                                                                                                              * For the latest version of AWS WAF, use the AWS WAFV2 API and see the AWS WAF Developer Guide. With * the latest version, AWS WAF has a single set of endpoints for regional and global use. *

                                                                                                                                                              *
                                                                                                                                                              *

                                                                                                                                                              * Returns an array of GeoMatchSetSummary objects in the response. *

                                                                                                                                                              *
                                                                                                                                                              *

                                                                                                                                                              * This is a convenience which creates an instance of the {@link ListGeoMatchSetsRequest.Builder} avoiding the need * to create one manually via {@link ListGeoMatchSetsRequest#builder()} *

                                                                                                                                                              * * @param listGeoMatchSetsRequest * A {@link Consumer} that will call methods on * {@link software.amazon.awssdk.services.waf.model.ListGeoMatchSetsRequest.Builder} to create a request. * @return Result of the ListGeoMatchSets operation returned by the service. * @throws WafInternalErrorException * The operation failed because of a system problem, even though the request was valid. Retry your request. * @throws WafInvalidAccountException * The operation failed because you tried to create, update, or delete an object by using an invalid account * identifier. * @throws SdkException * Base class for all exceptions that can be thrown by the SDK (both service and client). Can be used for * catch all scenarios. * @throws SdkClientException * If any client side error occurs such as an IO related failure, failure to get credentials, etc. * @throws WafException * Base class for all service exceptions. Unknown exceptions will be thrown as an instance of this type. * @sample WafClient.ListGeoMatchSets * @see AWS API * Documentation */ default ListGeoMatchSetsResponse listGeoMatchSets(Consumer listGeoMatchSetsRequest) throws WafInternalErrorException, WafInvalidAccountException, AwsServiceException, SdkClientException, WafException { return listGeoMatchSets(ListGeoMatchSetsRequest.builder().applyMutation(listGeoMatchSetsRequest).build()); } /** * *

                                                                                                                                                              * This is AWS WAF Classic documentation. For more information, see AWS WAF Classic in the * developer guide. *

                                                                                                                                                              *

                                                                                                                                                              * For the latest version of AWS WAF, use the AWS WAFV2 API and see the AWS WAF Developer Guide. With * the latest version, AWS WAF has a single set of endpoints for regional and global use. *

                                                                                                                                                              *
                                                                                                                                                              *

                                                                                                                                                              * Returns an array of GeoMatchSetSummary objects in the response. *

                                                                                                                                                              * * @return Result of the ListGeoMatchSets operation returned by the service. * @throws WafInternalErrorException * The operation failed because of a system problem, even though the request was valid. Retry your request. * @throws WafInvalidAccountException * The operation failed because you tried to create, update, or delete an object by using an invalid account * identifier. * @throws SdkException * Base class for all exceptions that can be thrown by the SDK (both service and client). Can be used for * catch all scenarios. * @throws SdkClientException * If any client side error occurs such as an IO related failure, failure to get credentials, etc. * @throws WafException * Base class for all service exceptions. Unknown exceptions will be thrown as an instance of this type. * @sample WafClient.ListGeoMatchSets * @see #listGeoMatchSets(ListGeoMatchSetsRequest) * @see AWS API * Documentation */ default ListGeoMatchSetsResponse listGeoMatchSets() throws WafInternalErrorException, WafInvalidAccountException, AwsServiceException, SdkClientException, WafException { return listGeoMatchSets(ListGeoMatchSetsRequest.builder().build()); } /** * *

                                                                                                                                                              * This is AWS WAF Classic documentation. For more information, see AWS WAF Classic in the * developer guide. *

                                                                                                                                                              *

                                                                                                                                                              * For the latest version of AWS WAF, use the AWS WAFV2 API and see the AWS WAF Developer Guide. With * the latest version, AWS WAF has a single set of endpoints for regional and global use. *

                                                                                                                                                              *
                                                                                                                                                              *

                                                                                                                                                              * Returns an array of IPSetSummary objects in the response. *

                                                                                                                                                              * * @param listIpSetsRequest * @return Result of the ListIPSets operation returned by the service. * @throws WafInternalErrorException * The operation failed because of a system problem, even though the request was valid. Retry your request. * @throws WafInvalidAccountException * The operation failed because you tried to create, update, or delete an object by using an invalid account * identifier. * @throws SdkException * Base class for all exceptions that can be thrown by the SDK (both service and client). Can be used for * catch all scenarios. * @throws SdkClientException * If any client side error occurs such as an IO related failure, failure to get credentials, etc. * @throws WafException * Base class for all service exceptions. Unknown exceptions will be thrown as an instance of this type. * @sample WafClient.ListIPSets * @see AWS API * Documentation */ default ListIpSetsResponse listIPSets(ListIpSetsRequest listIpSetsRequest) throws WafInternalErrorException, WafInvalidAccountException, AwsServiceException, SdkClientException, WafException { throw new UnsupportedOperationException(); } /** * *

                                                                                                                                                              * This is AWS WAF Classic documentation. For more information, see AWS WAF Classic in the * developer guide. *

                                                                                                                                                              *

                                                                                                                                                              * For the latest version of AWS WAF, use the AWS WAFV2 API and see the AWS WAF Developer Guide. With * the latest version, AWS WAF has a single set of endpoints for regional and global use. *

                                                                                                                                                              *
                                                                                                                                                              *

                                                                                                                                                              * Returns an array of IPSetSummary objects in the response. *

                                                                                                                                                              *
                                                                                                                                                              *

                                                                                                                                                              * This is a convenience which creates an instance of the {@link ListIpSetsRequest.Builder} avoiding the need to * create one manually via {@link ListIpSetsRequest#builder()} *

                                                                                                                                                              * * @param listIpSetsRequest * A {@link Consumer} that will call methods on * {@link software.amazon.awssdk.services.waf.model.ListIpSetsRequest.Builder} to create a request. * @return Result of the ListIPSets operation returned by the service. * @throws WafInternalErrorException * The operation failed because of a system problem, even though the request was valid. Retry your request. * @throws WafInvalidAccountException * The operation failed because you tried to create, update, or delete an object by using an invalid account * identifier. * @throws SdkException * Base class for all exceptions that can be thrown by the SDK (both service and client). Can be used for * catch all scenarios. * @throws SdkClientException * If any client side error occurs such as an IO related failure, failure to get credentials, etc. * @throws WafException * Base class for all service exceptions. Unknown exceptions will be thrown as an instance of this type. * @sample WafClient.ListIPSets * @see AWS API * Documentation */ default ListIpSetsResponse listIPSets(Consumer listIpSetsRequest) throws WafInternalErrorException, WafInvalidAccountException, AwsServiceException, SdkClientException, WafException { return listIPSets(ListIpSetsRequest.builder().applyMutation(listIpSetsRequest).build()); } /** * *

                                                                                                                                                              * This is AWS WAF Classic documentation. For more information, see AWS WAF Classic in the * developer guide. *

                                                                                                                                                              *

                                                                                                                                                              * For the latest version of AWS WAF, use the AWS WAFV2 API and see the AWS WAF Developer Guide. With * the latest version, AWS WAF has a single set of endpoints for regional and global use. *

                                                                                                                                                              *
                                                                                                                                                              *

                                                                                                                                                              * Returns an array of IPSetSummary objects in the response. *

                                                                                                                                                              * * @return Result of the ListIPSets operation returned by the service. * @throws WafInternalErrorException * The operation failed because of a system problem, even though the request was valid. Retry your request. * @throws WafInvalidAccountException * The operation failed because you tried to create, update, or delete an object by using an invalid account * identifier. * @throws SdkException * Base class for all exceptions that can be thrown by the SDK (both service and client). Can be used for * catch all scenarios. * @throws SdkClientException * If any client side error occurs such as an IO related failure, failure to get credentials, etc. * @throws WafException * Base class for all service exceptions. Unknown exceptions will be thrown as an instance of this type. * @sample WafClient.ListIPSets * @see #listIPSets(ListIpSetsRequest) * @see AWS API * Documentation */ default ListIpSetsResponse listIPSets() throws WafInternalErrorException, WafInvalidAccountException, AwsServiceException, SdkClientException, WafException { return listIPSets(ListIpSetsRequest.builder().build()); } /** * *

                                                                                                                                                              * This is AWS WAF Classic documentation. For more information, see AWS WAF Classic in the * developer guide. *

                                                                                                                                                              *

                                                                                                                                                              * For the latest version of AWS WAF, use the AWS WAFV2 API and see the AWS WAF Developer Guide. With * the latest version, AWS WAF has a single set of endpoints for regional and global use. *

                                                                                                                                                              *
                                                                                                                                                              *

                                                                                                                                                              * Returns an array of LoggingConfiguration objects. *

                                                                                                                                                              * * @param listLoggingConfigurationsRequest * @return Result of the ListLoggingConfigurations operation returned by the service. * @throws WafInternalErrorException * The operation failed because of a system problem, even though the request was valid. Retry your request. * @throws WafNonexistentItemException * The operation failed because the referenced object doesn't exist. * @throws WafInvalidParameterException * The operation failed because AWS WAF didn't recognize a parameter in the request. For example:

                                                                                                                                                              *
                                                                                                                                                                *
                                                                                                                                                              • *

                                                                                                                                                                * You specified an invalid parameter name. *

                                                                                                                                                                *
                                                                                                                                                              • *
                                                                                                                                                              • *

                                                                                                                                                                * You specified an invalid value. *

                                                                                                                                                                *
                                                                                                                                                              • *
                                                                                                                                                              • *

                                                                                                                                                                * You tried to update an object (ByteMatchSet, IPSet, Rule, or * WebACL) using an action other than INSERT or DELETE. *

                                                                                                                                                                *
                                                                                                                                                              • *
                                                                                                                                                              • *

                                                                                                                                                                * You tried to create a WebACL with a DefaultAction Type other than * ALLOW, BLOCK, or COUNT. *

                                                                                                                                                                *
                                                                                                                                                              • *
                                                                                                                                                              • *

                                                                                                                                                                * You tried to create a RateBasedRule with a RateKey value other than * IP. *

                                                                                                                                                                *
                                                                                                                                                              • *
                                                                                                                                                              • *

                                                                                                                                                                * You tried to update a WebACL with a WafAction Type other than * ALLOW, BLOCK, or COUNT. *

                                                                                                                                                                *
                                                                                                                                                              • *
                                                                                                                                                              • *

                                                                                                                                                                * You tried to update a ByteMatchSet with a FieldToMatch Type other * than HEADER, METHOD, QUERY_STRING, URI, or BODY. *

                                                                                                                                                                *
                                                                                                                                                              • *
                                                                                                                                                              • *

                                                                                                                                                                * You tried to update a ByteMatchSet with a Field of HEADER but no * value for Data. *

                                                                                                                                                                *
                                                                                                                                                              • *
                                                                                                                                                              • *

                                                                                                                                                                * Your request references an ARN that is malformed, or corresponds to a resource with which a web ACL * cannot be associated. *

                                                                                                                                                                *
                                                                                                                                                              • * @throws SdkException * Base class for all exceptions that can be thrown by the SDK (both service and client). Can be used for * catch all scenarios. * @throws SdkClientException * If any client side error occurs such as an IO related failure, failure to get credentials, etc. * @throws WafException * Base class for all service exceptions. Unknown exceptions will be thrown as an instance of this type. * @sample WafClient.ListLoggingConfigurations * @see AWS * API Documentation */ default ListLoggingConfigurationsResponse listLoggingConfigurations( ListLoggingConfigurationsRequest listLoggingConfigurationsRequest) throws WafInternalErrorException, WafNonexistentItemException, WafInvalidParameterException, AwsServiceException, SdkClientException, WafException { throw new UnsupportedOperationException(); } /** * *

                                                                                                                                                                * This is AWS WAF Classic documentation. For more information, see AWS WAF Classic in the * developer guide. *

                                                                                                                                                                *

                                                                                                                                                                * For the latest version of AWS WAF, use the AWS WAFV2 API and see the AWS WAF Developer Guide. With * the latest version, AWS WAF has a single set of endpoints for regional and global use. *

                                                                                                                                                                *
                                                                                                                                                                *

                                                                                                                                                                * Returns an array of LoggingConfiguration objects. *

                                                                                                                                                                *
                                                                                                                                                                *

                                                                                                                                                                * This is a convenience which creates an instance of the {@link ListLoggingConfigurationsRequest.Builder} avoiding * the need to create one manually via {@link ListLoggingConfigurationsRequest#builder()} *

                                                                                                                                                                * * @param listLoggingConfigurationsRequest * A {@link Consumer} that will call methods on * {@link software.amazon.awssdk.services.waf.model.ListLoggingConfigurationsRequest.Builder} to create a * request. * @return Result of the ListLoggingConfigurations operation returned by the service. * @throws WafInternalErrorException * The operation failed because of a system problem, even though the request was valid. Retry your request. * @throws WafNonexistentItemException * The operation failed because the referenced object doesn't exist. * @throws WafInvalidParameterException * The operation failed because AWS WAF didn't recognize a parameter in the request. For example:

                                                                                                                                                                *
                                                                                                                                                                  *
                                                                                                                                                                • *

                                                                                                                                                                  * You specified an invalid parameter name. *

                                                                                                                                                                  *
                                                                                                                                                                • *
                                                                                                                                                                • *

                                                                                                                                                                  * You specified an invalid value. *

                                                                                                                                                                  *
                                                                                                                                                                • *
                                                                                                                                                                • *

                                                                                                                                                                  * You tried to update an object (ByteMatchSet, IPSet, Rule, or * WebACL) using an action other than INSERT or DELETE. *

                                                                                                                                                                  *
                                                                                                                                                                • *
                                                                                                                                                                • *

                                                                                                                                                                  * You tried to create a WebACL with a DefaultAction Type other than * ALLOW, BLOCK, or COUNT. *

                                                                                                                                                                  *
                                                                                                                                                                • *
                                                                                                                                                                • *

                                                                                                                                                                  * You tried to create a RateBasedRule with a RateKey value other than * IP. *

                                                                                                                                                                  *
                                                                                                                                                                • *
                                                                                                                                                                • *

                                                                                                                                                                  * You tried to update a WebACL with a WafAction Type other than * ALLOW, BLOCK, or COUNT. *

                                                                                                                                                                  *
                                                                                                                                                                • *
                                                                                                                                                                • *

                                                                                                                                                                  * You tried to update a ByteMatchSet with a FieldToMatch Type other * than HEADER, METHOD, QUERY_STRING, URI, or BODY. *

                                                                                                                                                                  *
                                                                                                                                                                • *
                                                                                                                                                                • *

                                                                                                                                                                  * You tried to update a ByteMatchSet with a Field of HEADER but no * value for Data. *

                                                                                                                                                                  *
                                                                                                                                                                • *
                                                                                                                                                                • *

                                                                                                                                                                  * Your request references an ARN that is malformed, or corresponds to a resource with which a web ACL * cannot be associated. *

                                                                                                                                                                  *
                                                                                                                                                                • * @throws SdkException * Base class for all exceptions that can be thrown by the SDK (both service and client). Can be used for * catch all scenarios. * @throws SdkClientException * If any client side error occurs such as an IO related failure, failure to get credentials, etc. * @throws WafException * Base class for all service exceptions. Unknown exceptions will be thrown as an instance of this type. * @sample WafClient.ListLoggingConfigurations * @see AWS * API Documentation */ default ListLoggingConfigurationsResponse listLoggingConfigurations( Consumer listLoggingConfigurationsRequest) throws WafInternalErrorException, WafNonexistentItemException, WafInvalidParameterException, AwsServiceException, SdkClientException, WafException { return listLoggingConfigurations(ListLoggingConfigurationsRequest.builder() .applyMutation(listLoggingConfigurationsRequest).build()); } /** * *

                                                                                                                                                                  * This is AWS WAF Classic documentation. For more information, see AWS WAF Classic in the * developer guide. *

                                                                                                                                                                  *

                                                                                                                                                                  * For the latest version of AWS WAF, use the AWS WAFV2 API and see the AWS WAF Developer Guide. With * the latest version, AWS WAF has a single set of endpoints for regional and global use. *

                                                                                                                                                                  *
                                                                                                                                                                  *

                                                                                                                                                                  * Returns an array of RuleSummary objects. *

                                                                                                                                                                  * * @param listRateBasedRulesRequest * @return Result of the ListRateBasedRules operation returned by the service. * @throws WafInternalErrorException * The operation failed because of a system problem, even though the request was valid. Retry your request. * @throws WafInvalidAccountException * The operation failed because you tried to create, update, or delete an object by using an invalid account * identifier. * @throws SdkException * Base class for all exceptions that can be thrown by the SDK (both service and client). Can be used for * catch all scenarios. * @throws SdkClientException * If any client side error occurs such as an IO related failure, failure to get credentials, etc. * @throws WafException * Base class for all service exceptions. Unknown exceptions will be thrown as an instance of this type. * @sample WafClient.ListRateBasedRules * @see AWS API * Documentation */ default ListRateBasedRulesResponse listRateBasedRules(ListRateBasedRulesRequest listRateBasedRulesRequest) throws WafInternalErrorException, WafInvalidAccountException, AwsServiceException, SdkClientException, WafException { throw new UnsupportedOperationException(); } /** * *

                                                                                                                                                                  * This is AWS WAF Classic documentation. For more information, see AWS WAF Classic in the * developer guide. *

                                                                                                                                                                  *

                                                                                                                                                                  * For the latest version of AWS WAF, use the AWS WAFV2 API and see the AWS WAF Developer Guide. With * the latest version, AWS WAF has a single set of endpoints for regional and global use. *

                                                                                                                                                                  *
                                                                                                                                                                  *

                                                                                                                                                                  * Returns an array of RuleSummary objects. *

                                                                                                                                                                  *
                                                                                                                                                                  *

                                                                                                                                                                  * This is a convenience which creates an instance of the {@link ListRateBasedRulesRequest.Builder} avoiding the * need to create one manually via {@link ListRateBasedRulesRequest#builder()} *

                                                                                                                                                                  * * @param listRateBasedRulesRequest * A {@link Consumer} that will call methods on * {@link software.amazon.awssdk.services.waf.model.ListRateBasedRulesRequest.Builder} to create a request. * @return Result of the ListRateBasedRules operation returned by the service. * @throws WafInternalErrorException * The operation failed because of a system problem, even though the request was valid. Retry your request. * @throws WafInvalidAccountException * The operation failed because you tried to create, update, or delete an object by using an invalid account * identifier. * @throws SdkException * Base class for all exceptions that can be thrown by the SDK (both service and client). Can be used for * catch all scenarios. * @throws SdkClientException * If any client side error occurs such as an IO related failure, failure to get credentials, etc. * @throws WafException * Base class for all service exceptions. Unknown exceptions will be thrown as an instance of this type. * @sample WafClient.ListRateBasedRules * @see AWS API * Documentation */ default ListRateBasedRulesResponse listRateBasedRules(Consumer listRateBasedRulesRequest) throws WafInternalErrorException, WafInvalidAccountException, AwsServiceException, SdkClientException, WafException { return listRateBasedRules(ListRateBasedRulesRequest.builder().applyMutation(listRateBasedRulesRequest).build()); } /** * *

                                                                                                                                                                  * This is AWS WAF Classic documentation. For more information, see AWS WAF Classic in the * developer guide. *

                                                                                                                                                                  *

                                                                                                                                                                  * For the latest version of AWS WAF, use the AWS WAFV2 API and see the AWS WAF Developer Guide. With * the latest version, AWS WAF has a single set of endpoints for regional and global use. *

                                                                                                                                                                  *
                                                                                                                                                                  *

                                                                                                                                                                  * Returns an array of RuleSummary objects. *

                                                                                                                                                                  * * @return Result of the ListRateBasedRules operation returned by the service. * @throws WafInternalErrorException * The operation failed because of a system problem, even though the request was valid. Retry your request. * @throws WafInvalidAccountException * The operation failed because you tried to create, update, or delete an object by using an invalid account * identifier. * @throws SdkException * Base class for all exceptions that can be thrown by the SDK (both service and client). Can be used for * catch all scenarios. * @throws SdkClientException * If any client side error occurs such as an IO related failure, failure to get credentials, etc. * @throws WafException * Base class for all service exceptions. Unknown exceptions will be thrown as an instance of this type. * @sample WafClient.ListRateBasedRules * @see #listRateBasedRules(ListRateBasedRulesRequest) * @see AWS API * Documentation */ default ListRateBasedRulesResponse listRateBasedRules() throws WafInternalErrorException, WafInvalidAccountException, AwsServiceException, SdkClientException, WafException { return listRateBasedRules(ListRateBasedRulesRequest.builder().build()); } /** * *

                                                                                                                                                                  * This is AWS WAF Classic documentation. For more information, see AWS WAF Classic in the * developer guide. *

                                                                                                                                                                  *

                                                                                                                                                                  * For the latest version of AWS WAF, use the AWS WAFV2 API and see the AWS WAF Developer Guide. With * the latest version, AWS WAF has a single set of endpoints for regional and global use. *

                                                                                                                                                                  *
                                                                                                                                                                  *

                                                                                                                                                                  * Returns an array of RegexMatchSetSummary objects. *

                                                                                                                                                                  * * @param listRegexMatchSetsRequest * @return Result of the ListRegexMatchSets operation returned by the service. * @throws WafInternalErrorException * The operation failed because of a system problem, even though the request was valid. Retry your request. * @throws WafInvalidAccountException * The operation failed because you tried to create, update, or delete an object by using an invalid account * identifier. * @throws SdkException * Base class for all exceptions that can be thrown by the SDK (both service and client). Can be used for * catch all scenarios. * @throws SdkClientException * If any client side error occurs such as an IO related failure, failure to get credentials, etc. * @throws WafException * Base class for all service exceptions. Unknown exceptions will be thrown as an instance of this type. * @sample WafClient.ListRegexMatchSets * @see AWS API * Documentation */ default ListRegexMatchSetsResponse listRegexMatchSets(ListRegexMatchSetsRequest listRegexMatchSetsRequest) throws WafInternalErrorException, WafInvalidAccountException, AwsServiceException, SdkClientException, WafException { throw new UnsupportedOperationException(); } /** * *

                                                                                                                                                                  * This is AWS WAF Classic documentation. For more information, see AWS WAF Classic in the * developer guide. *

                                                                                                                                                                  *

                                                                                                                                                                  * For the latest version of AWS WAF, use the AWS WAFV2 API and see the AWS WAF Developer Guide. With * the latest version, AWS WAF has a single set of endpoints for regional and global use. *

                                                                                                                                                                  *
                                                                                                                                                                  *

                                                                                                                                                                  * Returns an array of RegexMatchSetSummary objects. *

                                                                                                                                                                  *
                                                                                                                                                                  *

                                                                                                                                                                  * This is a convenience which creates an instance of the {@link ListRegexMatchSetsRequest.Builder} avoiding the * need to create one manually via {@link ListRegexMatchSetsRequest#builder()} *

                                                                                                                                                                  * * @param listRegexMatchSetsRequest * A {@link Consumer} that will call methods on * {@link software.amazon.awssdk.services.waf.model.ListRegexMatchSetsRequest.Builder} to create a request. * @return Result of the ListRegexMatchSets operation returned by the service. * @throws WafInternalErrorException * The operation failed because of a system problem, even though the request was valid. Retry your request. * @throws WafInvalidAccountException * The operation failed because you tried to create, update, or delete an object by using an invalid account * identifier. * @throws SdkException * Base class for all exceptions that can be thrown by the SDK (both service and client). Can be used for * catch all scenarios. * @throws SdkClientException * If any client side error occurs such as an IO related failure, failure to get credentials, etc. * @throws WafException * Base class for all service exceptions. Unknown exceptions will be thrown as an instance of this type. * @sample WafClient.ListRegexMatchSets * @see AWS API * Documentation */ default ListRegexMatchSetsResponse listRegexMatchSets(Consumer listRegexMatchSetsRequest) throws WafInternalErrorException, WafInvalidAccountException, AwsServiceException, SdkClientException, WafException { return listRegexMatchSets(ListRegexMatchSetsRequest.builder().applyMutation(listRegexMatchSetsRequest).build()); } /** * *

                                                                                                                                                                  * This is AWS WAF Classic documentation. For more information, see AWS WAF Classic in the * developer guide. *

                                                                                                                                                                  *

                                                                                                                                                                  * For the latest version of AWS WAF, use the AWS WAFV2 API and see the AWS WAF Developer Guide. With * the latest version, AWS WAF has a single set of endpoints for regional and global use. *

                                                                                                                                                                  *
                                                                                                                                                                  *

                                                                                                                                                                  * Returns an array of RegexMatchSetSummary objects. *

                                                                                                                                                                  * * @return Result of the ListRegexMatchSets operation returned by the service. * @throws WafInternalErrorException * The operation failed because of a system problem, even though the request was valid. Retry your request. * @throws WafInvalidAccountException * The operation failed because you tried to create, update, or delete an object by using an invalid account * identifier. * @throws SdkException * Base class for all exceptions that can be thrown by the SDK (both service and client). Can be used for * catch all scenarios. * @throws SdkClientException * If any client side error occurs such as an IO related failure, failure to get credentials, etc. * @throws WafException * Base class for all service exceptions. Unknown exceptions will be thrown as an instance of this type. * @sample WafClient.ListRegexMatchSets * @see #listRegexMatchSets(ListRegexMatchSetsRequest) * @see AWS API * Documentation */ default ListRegexMatchSetsResponse listRegexMatchSets() throws WafInternalErrorException, WafInvalidAccountException, AwsServiceException, SdkClientException, WafException { return listRegexMatchSets(ListRegexMatchSetsRequest.builder().build()); } /** * *

                                                                                                                                                                  * This is AWS WAF Classic documentation. For more information, see AWS WAF Classic in the * developer guide. *

                                                                                                                                                                  *

                                                                                                                                                                  * For the latest version of AWS WAF, use the AWS WAFV2 API and see the AWS WAF Developer Guide. With * the latest version, AWS WAF has a single set of endpoints for regional and global use. *

                                                                                                                                                                  *
                                                                                                                                                                  *

                                                                                                                                                                  * Returns an array of RegexPatternSetSummary objects. *

                                                                                                                                                                  * * @param listRegexPatternSetsRequest * @return Result of the ListRegexPatternSets operation returned by the service. * @throws WafInternalErrorException * The operation failed because of a system problem, even though the request was valid. Retry your request. * @throws WafInvalidAccountException * The operation failed because you tried to create, update, or delete an object by using an invalid account * identifier. * @throws SdkException * Base class for all exceptions that can be thrown by the SDK (both service and client). Can be used for * catch all scenarios. * @throws SdkClientException * If any client side error occurs such as an IO related failure, failure to get credentials, etc. * @throws WafException * Base class for all service exceptions. Unknown exceptions will be thrown as an instance of this type. * @sample WafClient.ListRegexPatternSets * @see AWS API * Documentation */ default ListRegexPatternSetsResponse listRegexPatternSets(ListRegexPatternSetsRequest listRegexPatternSetsRequest) throws WafInternalErrorException, WafInvalidAccountException, AwsServiceException, SdkClientException, WafException { throw new UnsupportedOperationException(); } /** * *

                                                                                                                                                                  * This is AWS WAF Classic documentation. For more information, see AWS WAF Classic in the * developer guide. *

                                                                                                                                                                  *

                                                                                                                                                                  * For the latest version of AWS WAF, use the AWS WAFV2 API and see the AWS WAF Developer Guide. With * the latest version, AWS WAF has a single set of endpoints for regional and global use. *

                                                                                                                                                                  *
                                                                                                                                                                  *

                                                                                                                                                                  * Returns an array of RegexPatternSetSummary objects. *

                                                                                                                                                                  *
                                                                                                                                                                  *

                                                                                                                                                                  * This is a convenience which creates an instance of the {@link ListRegexPatternSetsRequest.Builder} avoiding the * need to create one manually via {@link ListRegexPatternSetsRequest#builder()} *

                                                                                                                                                                  * * @param listRegexPatternSetsRequest * A {@link Consumer} that will call methods on * {@link software.amazon.awssdk.services.waf.model.ListRegexPatternSetsRequest.Builder} to create a request. * @return Result of the ListRegexPatternSets operation returned by the service. * @throws WafInternalErrorException * The operation failed because of a system problem, even though the request was valid. Retry your request. * @throws WafInvalidAccountException * The operation failed because you tried to create, update, or delete an object by using an invalid account * identifier. * @throws SdkException * Base class for all exceptions that can be thrown by the SDK (both service and client). Can be used for * catch all scenarios. * @throws SdkClientException * If any client side error occurs such as an IO related failure, failure to get credentials, etc. * @throws WafException * Base class for all service exceptions. Unknown exceptions will be thrown as an instance of this type. * @sample WafClient.ListRegexPatternSets * @see AWS API * Documentation */ default ListRegexPatternSetsResponse listRegexPatternSets( Consumer listRegexPatternSetsRequest) throws WafInternalErrorException, WafInvalidAccountException, AwsServiceException, SdkClientException, WafException { return listRegexPatternSets(ListRegexPatternSetsRequest.builder().applyMutation(listRegexPatternSetsRequest).build()); } /** * *

                                                                                                                                                                  * This is AWS WAF Classic documentation. For more information, see AWS WAF Classic in the * developer guide. *

                                                                                                                                                                  *

                                                                                                                                                                  * For the latest version of AWS WAF, use the AWS WAFV2 API and see the AWS WAF Developer Guide. With * the latest version, AWS WAF has a single set of endpoints for regional and global use. *

                                                                                                                                                                  *
                                                                                                                                                                  *

                                                                                                                                                                  * Returns an array of RegexPatternSetSummary objects. *

                                                                                                                                                                  * * @return Result of the ListRegexPatternSets operation returned by the service. * @throws WafInternalErrorException * The operation failed because of a system problem, even though the request was valid. Retry your request. * @throws WafInvalidAccountException * The operation failed because you tried to create, update, or delete an object by using an invalid account * identifier. * @throws SdkException * Base class for all exceptions that can be thrown by the SDK (both service and client). Can be used for * catch all scenarios. * @throws SdkClientException * If any client side error occurs such as an IO related failure, failure to get credentials, etc. * @throws WafException * Base class for all service exceptions. Unknown exceptions will be thrown as an instance of this type. * @sample WafClient.ListRegexPatternSets * @see #listRegexPatternSets(ListRegexPatternSetsRequest) * @see AWS API * Documentation */ default ListRegexPatternSetsResponse listRegexPatternSets() throws WafInternalErrorException, WafInvalidAccountException, AwsServiceException, SdkClientException, WafException { return listRegexPatternSets(ListRegexPatternSetsRequest.builder().build()); } /** * *

                                                                                                                                                                  * This is AWS WAF Classic documentation. For more information, see AWS WAF Classic in the * developer guide. *

                                                                                                                                                                  *

                                                                                                                                                                  * For the latest version of AWS WAF, use the AWS WAFV2 API and see the AWS WAF Developer Guide. With * the latest version, AWS WAF has a single set of endpoints for regional and global use. *

                                                                                                                                                                  *
                                                                                                                                                                  *

                                                                                                                                                                  * Returns an array of RuleGroup objects. *

                                                                                                                                                                  * * @param listRuleGroupsRequest * @return Result of the ListRuleGroups operation returned by the service. * @throws WafInternalErrorException * The operation failed because of a system problem, even though the request was valid. Retry your request. * @throws SdkException * Base class for all exceptions that can be thrown by the SDK (both service and client). Can be used for * catch all scenarios. * @throws SdkClientException * If any client side error occurs such as an IO related failure, failure to get credentials, etc. * @throws WafException * Base class for all service exceptions. Unknown exceptions will be thrown as an instance of this type. * @sample WafClient.ListRuleGroups * @see AWS API * Documentation */ default ListRuleGroupsResponse listRuleGroups(ListRuleGroupsRequest listRuleGroupsRequest) throws WafInternalErrorException, AwsServiceException, SdkClientException, WafException { throw new UnsupportedOperationException(); } /** * *

                                                                                                                                                                  * This is AWS WAF Classic documentation. For more information, see AWS WAF Classic in the * developer guide. *

                                                                                                                                                                  *

                                                                                                                                                                  * For the latest version of AWS WAF, use the AWS WAFV2 API and see the AWS WAF Developer Guide. With * the latest version, AWS WAF has a single set of endpoints for regional and global use. *

                                                                                                                                                                  *
                                                                                                                                                                  *

                                                                                                                                                                  * Returns an array of RuleGroup objects. *

                                                                                                                                                                  *
                                                                                                                                                                  *

                                                                                                                                                                  * This is a convenience which creates an instance of the {@link ListRuleGroupsRequest.Builder} avoiding the need to * create one manually via {@link ListRuleGroupsRequest#builder()} *

                                                                                                                                                                  * * @param listRuleGroupsRequest * A {@link Consumer} that will call methods on * {@link software.amazon.awssdk.services.waf.model.ListRuleGroupsRequest.Builder} to create a request. * @return Result of the ListRuleGroups operation returned by the service. * @throws WafInternalErrorException * The operation failed because of a system problem, even though the request was valid. Retry your request. * @throws SdkException * Base class for all exceptions that can be thrown by the SDK (both service and client). Can be used for * catch all scenarios. * @throws SdkClientException * If any client side error occurs such as an IO related failure, failure to get credentials, etc. * @throws WafException * Base class for all service exceptions. Unknown exceptions will be thrown as an instance of this type. * @sample WafClient.ListRuleGroups * @see AWS API * Documentation */ default ListRuleGroupsResponse listRuleGroups(Consumer listRuleGroupsRequest) throws WafInternalErrorException, AwsServiceException, SdkClientException, WafException { return listRuleGroups(ListRuleGroupsRequest.builder().applyMutation(listRuleGroupsRequest).build()); } /** * *

                                                                                                                                                                  * This is AWS WAF Classic documentation. For more information, see AWS WAF Classic in the * developer guide. *

                                                                                                                                                                  *

                                                                                                                                                                  * For the latest version of AWS WAF, use the AWS WAFV2 API and see the AWS WAF Developer Guide. With * the latest version, AWS WAF has a single set of endpoints for regional and global use. *

                                                                                                                                                                  *
                                                                                                                                                                  *

                                                                                                                                                                  * Returns an array of RuleGroup objects. *

                                                                                                                                                                  * * @return Result of the ListRuleGroups operation returned by the service. * @throws WafInternalErrorException * The operation failed because of a system problem, even though the request was valid. Retry your request. * @throws SdkException * Base class for all exceptions that can be thrown by the SDK (both service and client). Can be used for * catch all scenarios. * @throws SdkClientException * If any client side error occurs such as an IO related failure, failure to get credentials, etc. * @throws WafException * Base class for all service exceptions. Unknown exceptions will be thrown as an instance of this type. * @sample WafClient.ListRuleGroups * @see #listRuleGroups(ListRuleGroupsRequest) * @see AWS API * Documentation */ default ListRuleGroupsResponse listRuleGroups() throws WafInternalErrorException, AwsServiceException, SdkClientException, WafException { return listRuleGroups(ListRuleGroupsRequest.builder().build()); } /** * *

                                                                                                                                                                  * This is AWS WAF Classic documentation. For more information, see AWS WAF Classic in the * developer guide. *

                                                                                                                                                                  *

                                                                                                                                                                  * For the latest version of AWS WAF, use the AWS WAFV2 API and see the AWS WAF Developer Guide. With * the latest version, AWS WAF has a single set of endpoints for regional and global use. *

                                                                                                                                                                  *
                                                                                                                                                                  *

                                                                                                                                                                  * Returns an array of RuleSummary objects. *

                                                                                                                                                                  * * @param listRulesRequest * @return Result of the ListRules operation returned by the service. * @throws WafInternalErrorException * The operation failed because of a system problem, even though the request was valid. Retry your request. * @throws WafInvalidAccountException * The operation failed because you tried to create, update, or delete an object by using an invalid account * identifier. * @throws SdkException * Base class for all exceptions that can be thrown by the SDK (both service and client). Can be used for * catch all scenarios. * @throws SdkClientException * If any client side error occurs such as an IO related failure, failure to get credentials, etc. * @throws WafException * Base class for all service exceptions. Unknown exceptions will be thrown as an instance of this type. * @sample WafClient.ListRules * @see AWS API * Documentation */ default ListRulesResponse listRules(ListRulesRequest listRulesRequest) throws WafInternalErrorException, WafInvalidAccountException, AwsServiceException, SdkClientException, WafException { throw new UnsupportedOperationException(); } /** * *

                                                                                                                                                                  * This is AWS WAF Classic documentation. For more information, see AWS WAF Classic in the * developer guide. *

                                                                                                                                                                  *

                                                                                                                                                                  * For the latest version of AWS WAF, use the AWS WAFV2 API and see the AWS WAF Developer Guide. With * the latest version, AWS WAF has a single set of endpoints for regional and global use. *

                                                                                                                                                                  *
                                                                                                                                                                  *

                                                                                                                                                                  * Returns an array of RuleSummary objects. *

                                                                                                                                                                  *
                                                                                                                                                                  *

                                                                                                                                                                  * This is a convenience which creates an instance of the {@link ListRulesRequest.Builder} avoiding the need to * create one manually via {@link ListRulesRequest#builder()} *

                                                                                                                                                                  * * @param listRulesRequest * A {@link Consumer} that will call methods on * {@link software.amazon.awssdk.services.waf.model.ListRulesRequest.Builder} to create a request. * @return Result of the ListRules operation returned by the service. * @throws WafInternalErrorException * The operation failed because of a system problem, even though the request was valid. Retry your request. * @throws WafInvalidAccountException * The operation failed because you tried to create, update, or delete an object by using an invalid account * identifier. * @throws SdkException * Base class for all exceptions that can be thrown by the SDK (both service and client). Can be used for * catch all scenarios. * @throws SdkClientException * If any client side error occurs such as an IO related failure, failure to get credentials, etc. * @throws WafException * Base class for all service exceptions. Unknown exceptions will be thrown as an instance of this type. * @sample WafClient.ListRules * @see AWS API * Documentation */ default ListRulesResponse listRules(Consumer listRulesRequest) throws WafInternalErrorException, WafInvalidAccountException, AwsServiceException, SdkClientException, WafException { return listRules(ListRulesRequest.builder().applyMutation(listRulesRequest).build()); } /** * *

                                                                                                                                                                  * This is AWS WAF Classic documentation. For more information, see AWS WAF Classic in the * developer guide. *

                                                                                                                                                                  *

                                                                                                                                                                  * For the latest version of AWS WAF, use the AWS WAFV2 API and see the AWS WAF Developer Guide. With * the latest version, AWS WAF has a single set of endpoints for regional and global use. *

                                                                                                                                                                  *
                                                                                                                                                                  *

                                                                                                                                                                  * Returns an array of RuleSummary objects. *

                                                                                                                                                                  * * @return Result of the ListRules operation returned by the service. * @throws WafInternalErrorException * The operation failed because of a system problem, even though the request was valid. Retry your request. * @throws WafInvalidAccountException * The operation failed because you tried to create, update, or delete an object by using an invalid account * identifier. * @throws SdkException * Base class for all exceptions that can be thrown by the SDK (both service and client). Can be used for * catch all scenarios. * @throws SdkClientException * If any client side error occurs such as an IO related failure, failure to get credentials, etc. * @throws WafException * Base class for all service exceptions. Unknown exceptions will be thrown as an instance of this type. * @sample WafClient.ListRules * @see #listRules(ListRulesRequest) * @see AWS API * Documentation */ default ListRulesResponse listRules() throws WafInternalErrorException, WafInvalidAccountException, AwsServiceException, SdkClientException, WafException { return listRules(ListRulesRequest.builder().build()); } /** * *

                                                                                                                                                                  * This is AWS WAF Classic documentation. For more information, see AWS WAF Classic in the * developer guide. *

                                                                                                                                                                  *

                                                                                                                                                                  * For the latest version of AWS WAF, use the AWS WAFV2 API and see the AWS WAF Developer Guide. With * the latest version, AWS WAF has a single set of endpoints for regional and global use. *

                                                                                                                                                                  *
                                                                                                                                                                  *

                                                                                                                                                                  * Returns an array of SizeConstraintSetSummary objects. *

                                                                                                                                                                  * * @param listSizeConstraintSetsRequest * @return Result of the ListSizeConstraintSets operation returned by the service. * @throws WafInternalErrorException * The operation failed because of a system problem, even though the request was valid. Retry your request. * @throws WafInvalidAccountException * The operation failed because you tried to create, update, or delete an object by using an invalid account * identifier. * @throws SdkException * Base class for all exceptions that can be thrown by the SDK (both service and client). Can be used for * catch all scenarios. * @throws SdkClientException * If any client side error occurs such as an IO related failure, failure to get credentials, etc. * @throws WafException * Base class for all service exceptions. Unknown exceptions will be thrown as an instance of this type. * @sample WafClient.ListSizeConstraintSets * @see AWS * API Documentation */ default ListSizeConstraintSetsResponse listSizeConstraintSets(ListSizeConstraintSetsRequest listSizeConstraintSetsRequest) throws WafInternalErrorException, WafInvalidAccountException, AwsServiceException, SdkClientException, WafException { throw new UnsupportedOperationException(); } /** * *

                                                                                                                                                                  * This is AWS WAF Classic documentation. For more information, see AWS WAF Classic in the * developer guide. *

                                                                                                                                                                  *

                                                                                                                                                                  * For the latest version of AWS WAF, use the AWS WAFV2 API and see the AWS WAF Developer Guide. With * the latest version, AWS WAF has a single set of endpoints for regional and global use. *

                                                                                                                                                                  *
                                                                                                                                                                  *

                                                                                                                                                                  * Returns an array of SizeConstraintSetSummary objects. *

                                                                                                                                                                  *
                                                                                                                                                                  *

                                                                                                                                                                  * This is a convenience which creates an instance of the {@link ListSizeConstraintSetsRequest.Builder} avoiding the * need to create one manually via {@link ListSizeConstraintSetsRequest#builder()} *

                                                                                                                                                                  * * @param listSizeConstraintSetsRequest * A {@link Consumer} that will call methods on * {@link software.amazon.awssdk.services.waf.model.ListSizeConstraintSetsRequest.Builder} to create a * request. * @return Result of the ListSizeConstraintSets operation returned by the service. * @throws WafInternalErrorException * The operation failed because of a system problem, even though the request was valid. Retry your request. * @throws WafInvalidAccountException * The operation failed because you tried to create, update, or delete an object by using an invalid account * identifier. * @throws SdkException * Base class for all exceptions that can be thrown by the SDK (both service and client). Can be used for * catch all scenarios. * @throws SdkClientException * If any client side error occurs such as an IO related failure, failure to get credentials, etc. * @throws WafException * Base class for all service exceptions. Unknown exceptions will be thrown as an instance of this type. * @sample WafClient.ListSizeConstraintSets * @see AWS * API Documentation */ default ListSizeConstraintSetsResponse listSizeConstraintSets( Consumer listSizeConstraintSetsRequest) throws WafInternalErrorException, WafInvalidAccountException, AwsServiceException, SdkClientException, WafException { return listSizeConstraintSets(ListSizeConstraintSetsRequest.builder().applyMutation(listSizeConstraintSetsRequest) .build()); } /** * *

                                                                                                                                                                  * This is AWS WAF Classic documentation. For more information, see AWS WAF Classic in the * developer guide. *

                                                                                                                                                                  *

                                                                                                                                                                  * For the latest version of AWS WAF, use the AWS WAFV2 API and see the AWS WAF Developer Guide. With * the latest version, AWS WAF has a single set of endpoints for regional and global use. *

                                                                                                                                                                  *
                                                                                                                                                                  *

                                                                                                                                                                  * Returns an array of SizeConstraintSetSummary objects. *

                                                                                                                                                                  * * @return Result of the ListSizeConstraintSets operation returned by the service. * @throws WafInternalErrorException * The operation failed because of a system problem, even though the request was valid. Retry your request. * @throws WafInvalidAccountException * The operation failed because you tried to create, update, or delete an object by using an invalid account * identifier. * @throws SdkException * Base class for all exceptions that can be thrown by the SDK (both service and client). Can be used for * catch all scenarios. * @throws SdkClientException * If any client side error occurs such as an IO related failure, failure to get credentials, etc. * @throws WafException * Base class for all service exceptions. Unknown exceptions will be thrown as an instance of this type. * @sample WafClient.ListSizeConstraintSets * @see #listSizeConstraintSets(ListSizeConstraintSetsRequest) * @see AWS * API Documentation */ default ListSizeConstraintSetsResponse listSizeConstraintSets() throws WafInternalErrorException, WafInvalidAccountException, AwsServiceException, SdkClientException, WafException { return listSizeConstraintSets(ListSizeConstraintSetsRequest.builder().build()); } /** * *

                                                                                                                                                                  * This is AWS WAF Classic documentation. For more information, see AWS WAF Classic in the * developer guide. *

                                                                                                                                                                  *

                                                                                                                                                                  * For the latest version of AWS WAF, use the AWS WAFV2 API and see the AWS WAF Developer Guide. With * the latest version, AWS WAF has a single set of endpoints for regional and global use. *

                                                                                                                                                                  *
                                                                                                                                                                  *

                                                                                                                                                                  * Returns an array of SqlInjectionMatchSet objects. *

                                                                                                                                                                  * * @param listSqlInjectionMatchSetsRequest * A request to list the SqlInjectionMatchSet objects created by the current AWS account. * @return Result of the ListSqlInjectionMatchSets operation returned by the service. * @throws WafInternalErrorException * The operation failed because of a system problem, even though the request was valid. Retry your request. * @throws WafInvalidAccountException * The operation failed because you tried to create, update, or delete an object by using an invalid account * identifier. * @throws SdkException * Base class for all exceptions that can be thrown by the SDK (both service and client). Can be used for * catch all scenarios. * @throws SdkClientException * If any client side error occurs such as an IO related failure, failure to get credentials, etc. * @throws WafException * Base class for all service exceptions. Unknown exceptions will be thrown as an instance of this type. * @sample WafClient.ListSqlInjectionMatchSets * @see AWS * API Documentation */ default ListSqlInjectionMatchSetsResponse listSqlInjectionMatchSets( ListSqlInjectionMatchSetsRequest listSqlInjectionMatchSetsRequest) throws WafInternalErrorException, WafInvalidAccountException, AwsServiceException, SdkClientException, WafException { throw new UnsupportedOperationException(); } /** * *

                                                                                                                                                                  * This is AWS WAF Classic documentation. For more information, see AWS WAF Classic in the * developer guide. *

                                                                                                                                                                  *

                                                                                                                                                                  * For the latest version of AWS WAF, use the AWS WAFV2 API and see the AWS WAF Developer Guide. With * the latest version, AWS WAF has a single set of endpoints for regional and global use. *

                                                                                                                                                                  *
                                                                                                                                                                  *

                                                                                                                                                                  * Returns an array of SqlInjectionMatchSet objects. *

                                                                                                                                                                  *
                                                                                                                                                                  *

                                                                                                                                                                  * This is a convenience which creates an instance of the {@link ListSqlInjectionMatchSetsRequest.Builder} avoiding * the need to create one manually via {@link ListSqlInjectionMatchSetsRequest#builder()} *

                                                                                                                                                                  * * @param listSqlInjectionMatchSetsRequest * A {@link Consumer} that will call methods on * {@link software.amazon.awssdk.services.waf.model.ListSqlInjectionMatchSetsRequest.Builder} to create a * request. A request to list the SqlInjectionMatchSet objects created by the current AWS account. * @return Result of the ListSqlInjectionMatchSets operation returned by the service. * @throws WafInternalErrorException * The operation failed because of a system problem, even though the request was valid. Retry your request. * @throws WafInvalidAccountException * The operation failed because you tried to create, update, or delete an object by using an invalid account * identifier. * @throws SdkException * Base class for all exceptions that can be thrown by the SDK (both service and client). Can be used for * catch all scenarios. * @throws SdkClientException * If any client side error occurs such as an IO related failure, failure to get credentials, etc. * @throws WafException * Base class for all service exceptions. Unknown exceptions will be thrown as an instance of this type. * @sample WafClient.ListSqlInjectionMatchSets * @see AWS * API Documentation */ default ListSqlInjectionMatchSetsResponse listSqlInjectionMatchSets( Consumer listSqlInjectionMatchSetsRequest) throws WafInternalErrorException, WafInvalidAccountException, AwsServiceException, SdkClientException, WafException { return listSqlInjectionMatchSets(ListSqlInjectionMatchSetsRequest.builder() .applyMutation(listSqlInjectionMatchSetsRequest).build()); } /** * *

                                                                                                                                                                  * This is AWS WAF Classic documentation. For more information, see AWS WAF Classic in the * developer guide. *

                                                                                                                                                                  *

                                                                                                                                                                  * For the latest version of AWS WAF, use the AWS WAFV2 API and see the AWS WAF Developer Guide. With * the latest version, AWS WAF has a single set of endpoints for regional and global use. *

                                                                                                                                                                  *
                                                                                                                                                                  *

                                                                                                                                                                  * Returns an array of SqlInjectionMatchSet objects. *

                                                                                                                                                                  * * @return Result of the ListSqlInjectionMatchSets operation returned by the service. * @throws WafInternalErrorException * The operation failed because of a system problem, even though the request was valid. Retry your request. * @throws WafInvalidAccountException * The operation failed because you tried to create, update, or delete an object by using an invalid account * identifier. * @throws SdkException * Base class for all exceptions that can be thrown by the SDK (both service and client). Can be used for * catch all scenarios. * @throws SdkClientException * If any client side error occurs such as an IO related failure, failure to get credentials, etc. * @throws WafException * Base class for all service exceptions. Unknown exceptions will be thrown as an instance of this type. * @sample WafClient.ListSqlInjectionMatchSets * @see #listSqlInjectionMatchSets(ListSqlInjectionMatchSetsRequest) * @see AWS * API Documentation */ default ListSqlInjectionMatchSetsResponse listSqlInjectionMatchSets() throws WafInternalErrorException, WafInvalidAccountException, AwsServiceException, SdkClientException, WafException { return listSqlInjectionMatchSets(ListSqlInjectionMatchSetsRequest.builder().build()); } /** * *

                                                                                                                                                                  * This is AWS WAF Classic documentation. For more information, see AWS WAF Classic in the * developer guide. *

                                                                                                                                                                  *

                                                                                                                                                                  * For the latest version of AWS WAF, use the AWS WAFV2 API and see the AWS WAF Developer Guide. With * the latest version, AWS WAF has a single set of endpoints for regional and global use. *

                                                                                                                                                                  *
                                                                                                                                                                  *

                                                                                                                                                                  * Returns an array of RuleGroup objects that you are subscribed to. *

                                                                                                                                                                  * * @param listSubscribedRuleGroupsRequest * @return Result of the ListSubscribedRuleGroups operation returned by the service. * @throws WafNonexistentItemException * The operation failed because the referenced object doesn't exist. * @throws WafInternalErrorException * The operation failed because of a system problem, even though the request was valid. Retry your request. * @throws SdkException * Base class for all exceptions that can be thrown by the SDK (both service and client). Can be used for * catch all scenarios. * @throws SdkClientException * If any client side error occurs such as an IO related failure, failure to get credentials, etc. * @throws WafException * Base class for all service exceptions. Unknown exceptions will be thrown as an instance of this type. * @sample WafClient.ListSubscribedRuleGroups * @see AWS * API Documentation */ default ListSubscribedRuleGroupsResponse listSubscribedRuleGroups( ListSubscribedRuleGroupsRequest listSubscribedRuleGroupsRequest) throws WafNonexistentItemException, WafInternalErrorException, AwsServiceException, SdkClientException, WafException { throw new UnsupportedOperationException(); } /** * *

                                                                                                                                                                  * This is AWS WAF Classic documentation. For more information, see AWS WAF Classic in the * developer guide. *

                                                                                                                                                                  *

                                                                                                                                                                  * For the latest version of AWS WAF, use the AWS WAFV2 API and see the AWS WAF Developer Guide. With * the latest version, AWS WAF has a single set of endpoints for regional and global use. *

                                                                                                                                                                  *
                                                                                                                                                                  *

                                                                                                                                                                  * Returns an array of RuleGroup objects that you are subscribed to. *

                                                                                                                                                                  *
                                                                                                                                                                  *

                                                                                                                                                                  * This is a convenience which creates an instance of the {@link ListSubscribedRuleGroupsRequest.Builder} avoiding * the need to create one manually via {@link ListSubscribedRuleGroupsRequest#builder()} *

                                                                                                                                                                  * * @param listSubscribedRuleGroupsRequest * A {@link Consumer} that will call methods on * {@link software.amazon.awssdk.services.waf.model.ListSubscribedRuleGroupsRequest.Builder} to create a * request. * @return Result of the ListSubscribedRuleGroups operation returned by the service. * @throws WafNonexistentItemException * The operation failed because the referenced object doesn't exist. * @throws WafInternalErrorException * The operation failed because of a system problem, even though the request was valid. Retry your request. * @throws SdkException * Base class for all exceptions that can be thrown by the SDK (both service and client). Can be used for * catch all scenarios. * @throws SdkClientException * If any client side error occurs such as an IO related failure, failure to get credentials, etc. * @throws WafException * Base class for all service exceptions. Unknown exceptions will be thrown as an instance of this type. * @sample WafClient.ListSubscribedRuleGroups * @see AWS * API Documentation */ default ListSubscribedRuleGroupsResponse listSubscribedRuleGroups( Consumer listSubscribedRuleGroupsRequest) throws WafNonexistentItemException, WafInternalErrorException, AwsServiceException, SdkClientException, WafException { return listSubscribedRuleGroups(ListSubscribedRuleGroupsRequest.builder().applyMutation(listSubscribedRuleGroupsRequest) .build()); } /** * *

                                                                                                                                                                  * This is AWS WAF Classic documentation. For more information, see AWS WAF Classic in the * developer guide. *

                                                                                                                                                                  *

                                                                                                                                                                  * For the latest version of AWS WAF, use the AWS WAFV2 API and see the AWS WAF Developer Guide. With * the latest version, AWS WAF has a single set of endpoints for regional and global use. *

                                                                                                                                                                  *
                                                                                                                                                                  *

                                                                                                                                                                  * Returns an array of RuleGroup objects that you are subscribed to. *

                                                                                                                                                                  * * @return Result of the ListSubscribedRuleGroups operation returned by the service. * @throws WafNonexistentItemException * The operation failed because the referenced object doesn't exist. * @throws WafInternalErrorException * The operation failed because of a system problem, even though the request was valid. Retry your request. * @throws SdkException * Base class for all exceptions that can be thrown by the SDK (both service and client). Can be used for * catch all scenarios. * @throws SdkClientException * If any client side error occurs such as an IO related failure, failure to get credentials, etc. * @throws WafException * Base class for all service exceptions. Unknown exceptions will be thrown as an instance of this type. * @sample WafClient.ListSubscribedRuleGroups * @see #listSubscribedRuleGroups(ListSubscribedRuleGroupsRequest) * @see AWS * API Documentation */ default ListSubscribedRuleGroupsResponse listSubscribedRuleGroups() throws WafNonexistentItemException, WafInternalErrorException, AwsServiceException, SdkClientException, WafException { return listSubscribedRuleGroups(ListSubscribedRuleGroupsRequest.builder().build()); } /** * *

                                                                                                                                                                  * This is AWS WAF Classic documentation. For more information, see AWS WAF Classic in the * developer guide. *

                                                                                                                                                                  *

                                                                                                                                                                  * For the latest version of AWS WAF, use the AWS WAFV2 API and see the AWS WAF Developer Guide. With * the latest version, AWS WAF has a single set of endpoints for regional and global use. *

                                                                                                                                                                  *
                                                                                                                                                                  *

                                                                                                                                                                  * Retrieves the tags associated with the specified AWS resource. Tags are key:value pairs that you can use to * categorize and manage your resources, for purposes like billing. For example, you might set the tag key to * "customer" and the value to the customer name or ID. You can specify one or more tags to add to each AWS * resource, up to 50 tags for a resource. *

                                                                                                                                                                  *

                                                                                                                                                                  * Tagging is only available through the API, SDKs, and CLI. You can't manage or view tags through the AWS WAF * Classic console. You can tag the AWS resources that you manage through AWS WAF Classic: web ACLs, rule groups, * and rules. *

                                                                                                                                                                  * * @param listTagsForResourceRequest * @return Result of the ListTagsForResource operation returned by the service. * @throws WafInternalErrorException * The operation failed because of a system problem, even though the request was valid. Retry your request. * @throws WafInvalidParameterException * The operation failed because AWS WAF didn't recognize a parameter in the request. For example:

                                                                                                                                                                  *
                                                                                                                                                                    *
                                                                                                                                                                  • *

                                                                                                                                                                    * You specified an invalid parameter name. *

                                                                                                                                                                    *
                                                                                                                                                                  • *
                                                                                                                                                                  • *

                                                                                                                                                                    * You specified an invalid value. *

                                                                                                                                                                    *
                                                                                                                                                                  • *
                                                                                                                                                                  • *

                                                                                                                                                                    * You tried to update an object (ByteMatchSet, IPSet, Rule, or * WebACL) using an action other than INSERT or DELETE. *

                                                                                                                                                                    *
                                                                                                                                                                  • *
                                                                                                                                                                  • *

                                                                                                                                                                    * You tried to create a WebACL with a DefaultAction Type other than * ALLOW, BLOCK, or COUNT. *

                                                                                                                                                                    *
                                                                                                                                                                  • *
                                                                                                                                                                  • *

                                                                                                                                                                    * You tried to create a RateBasedRule with a RateKey value other than * IP. *

                                                                                                                                                                    *
                                                                                                                                                                  • *
                                                                                                                                                                  • *

                                                                                                                                                                    * You tried to update a WebACL with a WafAction Type other than * ALLOW, BLOCK, or COUNT. *

                                                                                                                                                                    *
                                                                                                                                                                  • *
                                                                                                                                                                  • *

                                                                                                                                                                    * You tried to update a ByteMatchSet with a FieldToMatch Type other * than HEADER, METHOD, QUERY_STRING, URI, or BODY. *

                                                                                                                                                                    *
                                                                                                                                                                  • *
                                                                                                                                                                  • *

                                                                                                                                                                    * You tried to update a ByteMatchSet with a Field of HEADER but no * value for Data. *

                                                                                                                                                                    *
                                                                                                                                                                  • *
                                                                                                                                                                  • *

                                                                                                                                                                    * Your request references an ARN that is malformed, or corresponds to a resource with which a web ACL * cannot be associated. *

                                                                                                                                                                    *
                                                                                                                                                                  • * @throws WafNonexistentItemException * The operation failed because the referenced object doesn't exist. * @throws WafBadRequestException * @throws WafTagOperationException * @throws WafTagOperationInternalErrorException * @throws SdkException * Base class for all exceptions that can be thrown by the SDK (both service and client). Can be used for * catch all scenarios. * @throws SdkClientException * If any client side error occurs such as an IO related failure, failure to get credentials, etc. * @throws WafException * Base class for all service exceptions. Unknown exceptions will be thrown as an instance of this type. * @sample WafClient.ListTagsForResource * @see AWS API * Documentation */ default ListTagsForResourceResponse listTagsForResource(ListTagsForResourceRequest listTagsForResourceRequest) throws WafInternalErrorException, WafInvalidParameterException, WafNonexistentItemException, WafBadRequestException, WafTagOperationException, WafTagOperationInternalErrorException, AwsServiceException, SdkClientException, WafException { throw new UnsupportedOperationException(); } /** * *

                                                                                                                                                                    * This is AWS WAF Classic documentation. For more information, see AWS WAF Classic in the * developer guide. *

                                                                                                                                                                    *

                                                                                                                                                                    * For the latest version of AWS WAF, use the AWS WAFV2 API and see the AWS WAF Developer Guide. With * the latest version, AWS WAF has a single set of endpoints for regional and global use. *

                                                                                                                                                                    *
                                                                                                                                                                    *

                                                                                                                                                                    * Retrieves the tags associated with the specified AWS resource. Tags are key:value pairs that you can use to * categorize and manage your resources, for purposes like billing. For example, you might set the tag key to * "customer" and the value to the customer name or ID. You can specify one or more tags to add to each AWS * resource, up to 50 tags for a resource. *

                                                                                                                                                                    *

                                                                                                                                                                    * Tagging is only available through the API, SDKs, and CLI. You can't manage or view tags through the AWS WAF * Classic console. You can tag the AWS resources that you manage through AWS WAF Classic: web ACLs, rule groups, * and rules. *

                                                                                                                                                                    *
                                                                                                                                                                    *

                                                                                                                                                                    * This is a convenience which creates an instance of the {@link ListTagsForResourceRequest.Builder} avoiding the * need to create one manually via {@link ListTagsForResourceRequest#builder()} *

                                                                                                                                                                    * * @param listTagsForResourceRequest * A {@link Consumer} that will call methods on * {@link software.amazon.awssdk.services.waf.model.ListTagsForResourceRequest.Builder} to create a request. * @return Result of the ListTagsForResource operation returned by the service. * @throws WafInternalErrorException * The operation failed because of a system problem, even though the request was valid. Retry your request. * @throws WafInvalidParameterException * The operation failed because AWS WAF didn't recognize a parameter in the request. For example:

                                                                                                                                                                    *
                                                                                                                                                                      *
                                                                                                                                                                    • *

                                                                                                                                                                      * You specified an invalid parameter name. *

                                                                                                                                                                      *
                                                                                                                                                                    • *
                                                                                                                                                                    • *

                                                                                                                                                                      * You specified an invalid value. *

                                                                                                                                                                      *
                                                                                                                                                                    • *
                                                                                                                                                                    • *

                                                                                                                                                                      * You tried to update an object (ByteMatchSet, IPSet, Rule, or * WebACL) using an action other than INSERT or DELETE. *

                                                                                                                                                                      *
                                                                                                                                                                    • *
                                                                                                                                                                    • *

                                                                                                                                                                      * You tried to create a WebACL with a DefaultAction Type other than * ALLOW, BLOCK, or COUNT. *

                                                                                                                                                                      *
                                                                                                                                                                    • *
                                                                                                                                                                    • *

                                                                                                                                                                      * You tried to create a RateBasedRule with a RateKey value other than * IP. *

                                                                                                                                                                      *
                                                                                                                                                                    • *
                                                                                                                                                                    • *

                                                                                                                                                                      * You tried to update a WebACL with a WafAction Type other than * ALLOW, BLOCK, or COUNT. *

                                                                                                                                                                      *
                                                                                                                                                                    • *
                                                                                                                                                                    • *

                                                                                                                                                                      * You tried to update a ByteMatchSet with a FieldToMatch Type other * than HEADER, METHOD, QUERY_STRING, URI, or BODY. *

                                                                                                                                                                      *
                                                                                                                                                                    • *
                                                                                                                                                                    • *

                                                                                                                                                                      * You tried to update a ByteMatchSet with a Field of HEADER but no * value for Data. *

                                                                                                                                                                      *
                                                                                                                                                                    • *
                                                                                                                                                                    • *

                                                                                                                                                                      * Your request references an ARN that is malformed, or corresponds to a resource with which a web ACL * cannot be associated. *

                                                                                                                                                                      *
                                                                                                                                                                    • * @throws WafNonexistentItemException * The operation failed because the referenced object doesn't exist. * @throws WafBadRequestException * @throws WafTagOperationException * @throws WafTagOperationInternalErrorException * @throws SdkException * Base class for all exceptions that can be thrown by the SDK (both service and client). Can be used for * catch all scenarios. * @throws SdkClientException * If any client side error occurs such as an IO related failure, failure to get credentials, etc. * @throws WafException * Base class for all service exceptions. Unknown exceptions will be thrown as an instance of this type. * @sample WafClient.ListTagsForResource * @see AWS API * Documentation */ default ListTagsForResourceResponse listTagsForResource( Consumer listTagsForResourceRequest) throws WafInternalErrorException, WafInvalidParameterException, WafNonexistentItemException, WafBadRequestException, WafTagOperationException, WafTagOperationInternalErrorException, AwsServiceException, SdkClientException, WafException { return listTagsForResource(ListTagsForResourceRequest.builder().applyMutation(listTagsForResourceRequest).build()); } /** * *

                                                                                                                                                                      * This is AWS WAF Classic documentation. For more information, see AWS WAF Classic in the * developer guide. *

                                                                                                                                                                      *

                                                                                                                                                                      * For the latest version of AWS WAF, use the AWS WAFV2 API and see the AWS WAF Developer Guide. With * the latest version, AWS WAF has a single set of endpoints for regional and global use. *

                                                                                                                                                                      *
                                                                                                                                                                      *

                                                                                                                                                                      * Returns an array of WebACLSummary objects in the response. *

                                                                                                                                                                      * * @param listWebAcLsRequest * @return Result of the ListWebACLs operation returned by the service. * @throws WafInternalErrorException * The operation failed because of a system problem, even though the request was valid. Retry your request. * @throws WafInvalidAccountException * The operation failed because you tried to create, update, or delete an object by using an invalid account * identifier. * @throws SdkException * Base class for all exceptions that can be thrown by the SDK (both service and client). Can be used for * catch all scenarios. * @throws SdkClientException * If any client side error occurs such as an IO related failure, failure to get credentials, etc. * @throws WafException * Base class for all service exceptions. Unknown exceptions will be thrown as an instance of this type. * @sample WafClient.ListWebACLs * @see AWS API * Documentation */ default ListWebAcLsResponse listWebACLs(ListWebAcLsRequest listWebAcLsRequest) throws WafInternalErrorException, WafInvalidAccountException, AwsServiceException, SdkClientException, WafException { throw new UnsupportedOperationException(); } /** * *

                                                                                                                                                                      * This is AWS WAF Classic documentation. For more information, see AWS WAF Classic in the * developer guide. *

                                                                                                                                                                      *

                                                                                                                                                                      * For the latest version of AWS WAF, use the AWS WAFV2 API and see the AWS WAF Developer Guide. With * the latest version, AWS WAF has a single set of endpoints for regional and global use. *

                                                                                                                                                                      *
                                                                                                                                                                      *

                                                                                                                                                                      * Returns an array of WebACLSummary objects in the response. *

                                                                                                                                                                      *
                                                                                                                                                                      *

                                                                                                                                                                      * This is a convenience which creates an instance of the {@link ListWebAcLsRequest.Builder} avoiding the need to * create one manually via {@link ListWebAcLsRequest#builder()} *

                                                                                                                                                                      * * @param listWebAcLsRequest * A {@link Consumer} that will call methods on * {@link software.amazon.awssdk.services.waf.model.ListWebAcLsRequest.Builder} to create a request. * @return Result of the ListWebACLs operation returned by the service. * @throws WafInternalErrorException * The operation failed because of a system problem, even though the request was valid. Retry your request. * @throws WafInvalidAccountException * The operation failed because you tried to create, update, or delete an object by using an invalid account * identifier. * @throws SdkException * Base class for all exceptions that can be thrown by the SDK (both service and client). Can be used for * catch all scenarios. * @throws SdkClientException * If any client side error occurs such as an IO related failure, failure to get credentials, etc. * @throws WafException * Base class for all service exceptions. Unknown exceptions will be thrown as an instance of this type. * @sample WafClient.ListWebACLs * @see AWS API * Documentation */ default ListWebAcLsResponse listWebACLs(Consumer listWebAcLsRequest) throws WafInternalErrorException, WafInvalidAccountException, AwsServiceException, SdkClientException, WafException { return listWebACLs(ListWebAcLsRequest.builder().applyMutation(listWebAcLsRequest).build()); } /** * *

                                                                                                                                                                      * This is AWS WAF Classic documentation. For more information, see AWS WAF Classic in the * developer guide. *

                                                                                                                                                                      *

                                                                                                                                                                      * For the latest version of AWS WAF, use the AWS WAFV2 API and see the AWS WAF Developer Guide. With * the latest version, AWS WAF has a single set of endpoints for regional and global use. *

                                                                                                                                                                      *
                                                                                                                                                                      *

                                                                                                                                                                      * Returns an array of WebACLSummary objects in the response. *

                                                                                                                                                                      * * @return Result of the ListWebACLs operation returned by the service. * @throws WafInternalErrorException * The operation failed because of a system problem, even though the request was valid. Retry your request. * @throws WafInvalidAccountException * The operation failed because you tried to create, update, or delete an object by using an invalid account * identifier. * @throws SdkException * Base class for all exceptions that can be thrown by the SDK (both service and client). Can be used for * catch all scenarios. * @throws SdkClientException * If any client side error occurs such as an IO related failure, failure to get credentials, etc. * @throws WafException * Base class for all service exceptions. Unknown exceptions will be thrown as an instance of this type. * @sample WafClient.ListWebACLs * @see #listWebACLs(ListWebAcLsRequest) * @see AWS API * Documentation */ default ListWebAcLsResponse listWebACLs() throws WafInternalErrorException, WafInvalidAccountException, AwsServiceException, SdkClientException, WafException { return listWebACLs(ListWebAcLsRequest.builder().build()); } /** * *

                                                                                                                                                                      * This is AWS WAF Classic documentation. For more information, see AWS WAF Classic in the * developer guide. *

                                                                                                                                                                      *

                                                                                                                                                                      * For the latest version of AWS WAF, use the AWS WAFV2 API and see the AWS WAF Developer Guide. With * the latest version, AWS WAF has a single set of endpoints for regional and global use. *

                                                                                                                                                                      *
                                                                                                                                                                      *

                                                                                                                                                                      * Returns an array of XssMatchSet objects. *

                                                                                                                                                                      * * @param listXssMatchSetsRequest * A request to list the XssMatchSet objects created by the current AWS account. * @return Result of the ListXssMatchSets operation returned by the service. * @throws WafInternalErrorException * The operation failed because of a system problem, even though the request was valid. Retry your request. * @throws WafInvalidAccountException * The operation failed because you tried to create, update, or delete an object by using an invalid account * identifier. * @throws SdkException * Base class for all exceptions that can be thrown by the SDK (both service and client). Can be used for * catch all scenarios. * @throws SdkClientException * If any client side error occurs such as an IO related failure, failure to get credentials, etc. * @throws WafException * Base class for all service exceptions. Unknown exceptions will be thrown as an instance of this type. * @sample WafClient.ListXssMatchSets * @see AWS API * Documentation */ default ListXssMatchSetsResponse listXssMatchSets(ListXssMatchSetsRequest listXssMatchSetsRequest) throws WafInternalErrorException, WafInvalidAccountException, AwsServiceException, SdkClientException, WafException { throw new UnsupportedOperationException(); } /** * *

                                                                                                                                                                      * This is AWS WAF Classic documentation. For more information, see AWS WAF Classic in the * developer guide. *

                                                                                                                                                                      *

                                                                                                                                                                      * For the latest version of AWS WAF, use the AWS WAFV2 API and see the AWS WAF Developer Guide. With * the latest version, AWS WAF has a single set of endpoints for regional and global use. *

                                                                                                                                                                      *
                                                                                                                                                                      *

                                                                                                                                                                      * Returns an array of XssMatchSet objects. *

                                                                                                                                                                      *
                                                                                                                                                                      *

                                                                                                                                                                      * This is a convenience which creates an instance of the {@link ListXssMatchSetsRequest.Builder} avoiding the need * to create one manually via {@link ListXssMatchSetsRequest#builder()} *

                                                                                                                                                                      * * @param listXssMatchSetsRequest * A {@link Consumer} that will call methods on * {@link software.amazon.awssdk.services.waf.model.ListXssMatchSetsRequest.Builder} to create a request. A * request to list the XssMatchSet objects created by the current AWS account. * @return Result of the ListXssMatchSets operation returned by the service. * @throws WafInternalErrorException * The operation failed because of a system problem, even though the request was valid. Retry your request. * @throws WafInvalidAccountException * The operation failed because you tried to create, update, or delete an object by using an invalid account * identifier. * @throws SdkException * Base class for all exceptions that can be thrown by the SDK (both service and client). Can be used for * catch all scenarios. * @throws SdkClientException * If any client side error occurs such as an IO related failure, failure to get credentials, etc. * @throws WafException * Base class for all service exceptions. Unknown exceptions will be thrown as an instance of this type. * @sample WafClient.ListXssMatchSets * @see AWS API * Documentation */ default ListXssMatchSetsResponse listXssMatchSets(Consumer listXssMatchSetsRequest) throws WafInternalErrorException, WafInvalidAccountException, AwsServiceException, SdkClientException, WafException { return listXssMatchSets(ListXssMatchSetsRequest.builder().applyMutation(listXssMatchSetsRequest).build()); } /** * *

                                                                                                                                                                      * This is AWS WAF Classic documentation. For more information, see AWS WAF Classic in the * developer guide. *

                                                                                                                                                                      *

                                                                                                                                                                      * For the latest version of AWS WAF, use the AWS WAFV2 API and see the AWS WAF Developer Guide. With * the latest version, AWS WAF has a single set of endpoints for regional and global use. *

                                                                                                                                                                      *
                                                                                                                                                                      *

                                                                                                                                                                      * Returns an array of XssMatchSet objects. *

                                                                                                                                                                      * * @return Result of the ListXssMatchSets operation returned by the service. * @throws WafInternalErrorException * The operation failed because of a system problem, even though the request was valid. Retry your request. * @throws WafInvalidAccountException * The operation failed because you tried to create, update, or delete an object by using an invalid account * identifier. * @throws SdkException * Base class for all exceptions that can be thrown by the SDK (both service and client). Can be used for * catch all scenarios. * @throws SdkClientException * If any client side error occurs such as an IO related failure, failure to get credentials, etc. * @throws WafException * Base class for all service exceptions. Unknown exceptions will be thrown as an instance of this type. * @sample WafClient.ListXssMatchSets * @see #listXssMatchSets(ListXssMatchSetsRequest) * @see AWS API * Documentation */ default ListXssMatchSetsResponse listXssMatchSets() throws WafInternalErrorException, WafInvalidAccountException, AwsServiceException, SdkClientException, WafException { return listXssMatchSets(ListXssMatchSetsRequest.builder().build()); } /** * *

                                                                                                                                                                      * This is AWS WAF Classic documentation. For more information, see AWS WAF Classic in the * developer guide. *

                                                                                                                                                                      *

                                                                                                                                                                      * For the latest version of AWS WAF, use the AWS WAFV2 API and see the AWS WAF Developer Guide. With * the latest version, AWS WAF has a single set of endpoints for regional and global use. *

                                                                                                                                                                      *
                                                                                                                                                                      *

                                                                                                                                                                      * Associates a LoggingConfiguration with a specified web ACL. *

                                                                                                                                                                      *

                                                                                                                                                                      * You can access information about all traffic that AWS WAF inspects using the following steps: *

                                                                                                                                                                      *
                                                                                                                                                                        *
                                                                                                                                                                      1. *

                                                                                                                                                                        * Create an Amazon Kinesis Data Firehose. *

                                                                                                                                                                        *

                                                                                                                                                                        * Create the data firehose with a PUT source and in the region that you are operating. However, if you are * capturing logs for Amazon CloudFront, always create the firehose in US East (N. Virginia). *

                                                                                                                                                                        * *

                                                                                                                                                                        * Do not create the data firehose using a Kinesis stream as your source. *

                                                                                                                                                                        *
                                                                                                                                                                      2. *
                                                                                                                                                                      3. *

                                                                                                                                                                        * Associate that firehose to your web ACL using a PutLoggingConfiguration request. *

                                                                                                                                                                        *
                                                                                                                                                                      4. *
                                                                                                                                                                      *

                                                                                                                                                                      * When you successfully enable logging using a PutLoggingConfiguration request, AWS WAF will create a * service linked role with the necessary permissions to write logs to the Amazon Kinesis Data Firehose. For more * information, see Logging Web ACL * Traffic Information in the AWS WAF Developer Guide. *

                                                                                                                                                                      * * @param putLoggingConfigurationRequest * @return Result of the PutLoggingConfiguration operation returned by the service. * @throws WafInternalErrorException * The operation failed because of a system problem, even though the request was valid. Retry your request. * @throws WafNonexistentItemException * The operation failed because the referenced object doesn't exist. * @throws WafStaleDataException * The operation failed because you tried to create, update, or delete an object by using a change token * that has already been used. * @throws WafServiceLinkedRoleErrorException * AWS WAF is not able to access the service linked role. This can be caused by a previous * PutLoggingConfiguration request, which can lock the service linked role for about 20 * seconds. Please try your request again. The service linked role can also be locked by a previous * DeleteServiceLinkedRole request, which can lock the role for 15 minutes or more. If you * recently made a DeleteServiceLinkedRole, wait at least 15 minutes and try the request again. * If you receive this same exception again, you will have to wait additional time until the role is * unlocked. * @throws SdkException * Base class for all exceptions that can be thrown by the SDK (both service and client). Can be used for * catch all scenarios. * @throws SdkClientException * If any client side error occurs such as an IO related failure, failure to get credentials, etc. * @throws WafException * Base class for all service exceptions. Unknown exceptions will be thrown as an instance of this type. * @sample WafClient.PutLoggingConfiguration * @see AWS * API Documentation */ default PutLoggingConfigurationResponse putLoggingConfiguration(PutLoggingConfigurationRequest putLoggingConfigurationRequest) throws WafInternalErrorException, WafNonexistentItemException, WafStaleDataException, WafServiceLinkedRoleErrorException, AwsServiceException, SdkClientException, WafException { throw new UnsupportedOperationException(); } /** * *

                                                                                                                                                                      * This is AWS WAF Classic documentation. For more information, see AWS WAF Classic in the * developer guide. *

                                                                                                                                                                      *

                                                                                                                                                                      * For the latest version of AWS WAF, use the AWS WAFV2 API and see the AWS WAF Developer Guide. With * the latest version, AWS WAF has a single set of endpoints for regional and global use. *

                                                                                                                                                                      *
                                                                                                                                                                      *

                                                                                                                                                                      * Associates a LoggingConfiguration with a specified web ACL. *

                                                                                                                                                                      *

                                                                                                                                                                      * You can access information about all traffic that AWS WAF inspects using the following steps: *

                                                                                                                                                                      *
                                                                                                                                                                        *
                                                                                                                                                                      1. *

                                                                                                                                                                        * Create an Amazon Kinesis Data Firehose. *

                                                                                                                                                                        *

                                                                                                                                                                        * Create the data firehose with a PUT source and in the region that you are operating. However, if you are * capturing logs for Amazon CloudFront, always create the firehose in US East (N. Virginia). *

                                                                                                                                                                        * *

                                                                                                                                                                        * Do not create the data firehose using a Kinesis stream as your source. *

                                                                                                                                                                        *
                                                                                                                                                                      2. *
                                                                                                                                                                      3. *

                                                                                                                                                                        * Associate that firehose to your web ACL using a PutLoggingConfiguration request. *

                                                                                                                                                                        *
                                                                                                                                                                      4. *
                                                                                                                                                                      *

                                                                                                                                                                      * When you successfully enable logging using a PutLoggingConfiguration request, AWS WAF will create a * service linked role with the necessary permissions to write logs to the Amazon Kinesis Data Firehose. For more * information, see Logging Web ACL * Traffic Information in the AWS WAF Developer Guide. *

                                                                                                                                                                      *
                                                                                                                                                                      *

                                                                                                                                                                      * This is a convenience which creates an instance of the {@link PutLoggingConfigurationRequest.Builder} avoiding * the need to create one manually via {@link PutLoggingConfigurationRequest#builder()} *

                                                                                                                                                                      * * @param putLoggingConfigurationRequest * A {@link Consumer} that will call methods on * {@link software.amazon.awssdk.services.waf.model.PutLoggingConfigurationRequest.Builder} to create a * request. * @return Result of the PutLoggingConfiguration operation returned by the service. * @throws WafInternalErrorException * The operation failed because of a system problem, even though the request was valid. Retry your request. * @throws WafNonexistentItemException * The operation failed because the referenced object doesn't exist. * @throws WafStaleDataException * The operation failed because you tried to create, update, or delete an object by using a change token * that has already been used. * @throws WafServiceLinkedRoleErrorException * AWS WAF is not able to access the service linked role. This can be caused by a previous * PutLoggingConfiguration request, which can lock the service linked role for about 20 * seconds. Please try your request again. The service linked role can also be locked by a previous * DeleteServiceLinkedRole request, which can lock the role for 15 minutes or more. If you * recently made a DeleteServiceLinkedRole, wait at least 15 minutes and try the request again. * If you receive this same exception again, you will have to wait additional time until the role is * unlocked. * @throws SdkException * Base class for all exceptions that can be thrown by the SDK (both service and client). Can be used for * catch all scenarios. * @throws SdkClientException * If any client side error occurs such as an IO related failure, failure to get credentials, etc. * @throws WafException * Base class for all service exceptions. Unknown exceptions will be thrown as an instance of this type. * @sample WafClient.PutLoggingConfiguration * @see AWS * API Documentation */ default PutLoggingConfigurationResponse putLoggingConfiguration( Consumer putLoggingConfigurationRequest) throws WafInternalErrorException, WafNonexistentItemException, WafStaleDataException, WafServiceLinkedRoleErrorException, AwsServiceException, SdkClientException, WafException { return putLoggingConfiguration(PutLoggingConfigurationRequest.builder().applyMutation(putLoggingConfigurationRequest) .build()); } /** * *

                                                                                                                                                                      * This is AWS WAF Classic documentation. For more information, see AWS WAF Classic in the * developer guide. *

                                                                                                                                                                      *

                                                                                                                                                                      * For the latest version of AWS WAF, use the AWS WAFV2 API and see the AWS WAF Developer Guide. With * the latest version, AWS WAF has a single set of endpoints for regional and global use. *

                                                                                                                                                                      *
                                                                                                                                                                      *

                                                                                                                                                                      * Attaches an IAM policy to the specified resource. The only supported use for this action is to share a RuleGroup * across accounts. *

                                                                                                                                                                      *

                                                                                                                                                                      * The PutPermissionPolicy is subject to the following restrictions: *

                                                                                                                                                                      *
                                                                                                                                                                        *
                                                                                                                                                                      • *

                                                                                                                                                                        * You can attach only one policy with each PutPermissionPolicy request. *

                                                                                                                                                                        *
                                                                                                                                                                      • *
                                                                                                                                                                      • *

                                                                                                                                                                        * The policy must include an Effect, Action and Principal. *

                                                                                                                                                                        *
                                                                                                                                                                      • *
                                                                                                                                                                      • *

                                                                                                                                                                        * Effect must specify Allow. *

                                                                                                                                                                        *
                                                                                                                                                                      • *
                                                                                                                                                                      • *

                                                                                                                                                                        * The Action in the policy must be waf:UpdateWebACL, * waf-regional:UpdateWebACL, waf:GetRuleGroup and waf-regional:GetRuleGroup * . Any extra or wildcard actions in the policy will be rejected. *

                                                                                                                                                                        *
                                                                                                                                                                      • *
                                                                                                                                                                      • *

                                                                                                                                                                        * The policy cannot include a Resource parameter. *

                                                                                                                                                                        *
                                                                                                                                                                      • *
                                                                                                                                                                      • *

                                                                                                                                                                        * The ARN in the request must be a valid WAF RuleGroup ARN and the RuleGroup must exist in the same region. *

                                                                                                                                                                        *
                                                                                                                                                                      • *
                                                                                                                                                                      • *

                                                                                                                                                                        * The user making the request must be the owner of the RuleGroup. *

                                                                                                                                                                        *
                                                                                                                                                                      • *
                                                                                                                                                                      • *

                                                                                                                                                                        * Your policy must be composed using IAM Policy version 2012-10-17. *

                                                                                                                                                                        *
                                                                                                                                                                      • *
                                                                                                                                                                      *

                                                                                                                                                                      * For more information, see IAM * Policies. *

                                                                                                                                                                      *

                                                                                                                                                                      * An example of a valid policy parameter is shown in the Examples section below. *

                                                                                                                                                                      * * @param putPermissionPolicyRequest * @return Result of the PutPermissionPolicy operation returned by the service. * @throws WafInternalErrorException * The operation failed because of a system problem, even though the request was valid. Retry your request. * @throws WafStaleDataException * The operation failed because you tried to create, update, or delete an object by using a change token * that has already been used. * @throws WafNonexistentItemException * The operation failed because the referenced object doesn't exist. * @throws WafInvalidPermissionPolicyException * The operation failed because the specified policy is not in the proper format.

                                                                                                                                                                      *

                                                                                                                                                                      * The policy is subject to the following restrictions: *

                                                                                                                                                                      *
                                                                                                                                                                        *
                                                                                                                                                                      • *

                                                                                                                                                                        * You can attach only one policy with each PutPermissionPolicy request. *

                                                                                                                                                                        *
                                                                                                                                                                      • *
                                                                                                                                                                      • *

                                                                                                                                                                        * The policy must include an Effect, Action and Principal. *

                                                                                                                                                                        *
                                                                                                                                                                      • *
                                                                                                                                                                      • *

                                                                                                                                                                        * Effect must specify Allow. *

                                                                                                                                                                        *
                                                                                                                                                                      • *
                                                                                                                                                                      • *

                                                                                                                                                                        * The Action in the policy must be waf:UpdateWebACL, * waf-regional:UpdateWebACL, waf:GetRuleGroup and * waf-regional:GetRuleGroup . Any extra or wildcard actions in the policy will be rejected. *

                                                                                                                                                                        *
                                                                                                                                                                      • *
                                                                                                                                                                      • *

                                                                                                                                                                        * The policy cannot include a Resource parameter. *

                                                                                                                                                                        *
                                                                                                                                                                      • *
                                                                                                                                                                      • *

                                                                                                                                                                        * The ARN in the request must be a valid WAF RuleGroup ARN and the RuleGroup must exist in the same region. *

                                                                                                                                                                        *
                                                                                                                                                                      • *
                                                                                                                                                                      • *

                                                                                                                                                                        * The user making the request must be the owner of the RuleGroup. *

                                                                                                                                                                        *
                                                                                                                                                                      • *
                                                                                                                                                                      • *

                                                                                                                                                                        * Your policy must be composed using IAM Policy version 2012-10-17. *

                                                                                                                                                                        *
                                                                                                                                                                      • * @throws SdkException * Base class for all exceptions that can be thrown by the SDK (both service and client). Can be used for * catch all scenarios. * @throws SdkClientException * If any client side error occurs such as an IO related failure, failure to get credentials, etc. * @throws WafException * Base class for all service exceptions. Unknown exceptions will be thrown as an instance of this type. * @sample WafClient.PutPermissionPolicy * @see AWS API * Documentation */ default PutPermissionPolicyResponse putPermissionPolicy(PutPermissionPolicyRequest putPermissionPolicyRequest) throws WafInternalErrorException, WafStaleDataException, WafNonexistentItemException, WafInvalidPermissionPolicyException, AwsServiceException, SdkClientException, WafException { throw new UnsupportedOperationException(); } /** * *

                                                                                                                                                                        * This is AWS WAF Classic documentation. For more information, see AWS WAF Classic in the * developer guide. *

                                                                                                                                                                        *

                                                                                                                                                                        * For the latest version of AWS WAF, use the AWS WAFV2 API and see the AWS WAF Developer Guide. With * the latest version, AWS WAF has a single set of endpoints for regional and global use. *

                                                                                                                                                                        *
                                                                                                                                                                        *

                                                                                                                                                                        * Attaches an IAM policy to the specified resource. The only supported use for this action is to share a RuleGroup * across accounts. *

                                                                                                                                                                        *

                                                                                                                                                                        * The PutPermissionPolicy is subject to the following restrictions: *

                                                                                                                                                                        *
                                                                                                                                                                          *
                                                                                                                                                                        • *

                                                                                                                                                                          * You can attach only one policy with each PutPermissionPolicy request. *

                                                                                                                                                                          *
                                                                                                                                                                        • *
                                                                                                                                                                        • *

                                                                                                                                                                          * The policy must include an Effect, Action and Principal. *

                                                                                                                                                                          *
                                                                                                                                                                        • *
                                                                                                                                                                        • *

                                                                                                                                                                          * Effect must specify Allow. *

                                                                                                                                                                          *
                                                                                                                                                                        • *
                                                                                                                                                                        • *

                                                                                                                                                                          * The Action in the policy must be waf:UpdateWebACL, * waf-regional:UpdateWebACL, waf:GetRuleGroup and waf-regional:GetRuleGroup * . Any extra or wildcard actions in the policy will be rejected. *

                                                                                                                                                                          *
                                                                                                                                                                        • *
                                                                                                                                                                        • *

                                                                                                                                                                          * The policy cannot include a Resource parameter. *

                                                                                                                                                                          *
                                                                                                                                                                        • *
                                                                                                                                                                        • *

                                                                                                                                                                          * The ARN in the request must be a valid WAF RuleGroup ARN and the RuleGroup must exist in the same region. *

                                                                                                                                                                          *
                                                                                                                                                                        • *
                                                                                                                                                                        • *

                                                                                                                                                                          * The user making the request must be the owner of the RuleGroup. *

                                                                                                                                                                          *
                                                                                                                                                                        • *
                                                                                                                                                                        • *

                                                                                                                                                                          * Your policy must be composed using IAM Policy version 2012-10-17. *

                                                                                                                                                                          *
                                                                                                                                                                        • *
                                                                                                                                                                        *

                                                                                                                                                                        * For more information, see IAM * Policies. *

                                                                                                                                                                        *

                                                                                                                                                                        * An example of a valid policy parameter is shown in the Examples section below. *

                                                                                                                                                                        *
                                                                                                                                                                        *

                                                                                                                                                                        * This is a convenience which creates an instance of the {@link PutPermissionPolicyRequest.Builder} avoiding the * need to create one manually via {@link PutPermissionPolicyRequest#builder()} *

                                                                                                                                                                        * * @param putPermissionPolicyRequest * A {@link Consumer} that will call methods on * {@link software.amazon.awssdk.services.waf.model.PutPermissionPolicyRequest.Builder} to create a request. * @return Result of the PutPermissionPolicy operation returned by the service. * @throws WafInternalErrorException * The operation failed because of a system problem, even though the request was valid. Retry your request. * @throws WafStaleDataException * The operation failed because you tried to create, update, or delete an object by using a change token * that has already been used. * @throws WafNonexistentItemException * The operation failed because the referenced object doesn't exist. * @throws WafInvalidPermissionPolicyException * The operation failed because the specified policy is not in the proper format.

                                                                                                                                                                        *

                                                                                                                                                                        * The policy is subject to the following restrictions: *

                                                                                                                                                                        *
                                                                                                                                                                          *
                                                                                                                                                                        • *

                                                                                                                                                                          * You can attach only one policy with each PutPermissionPolicy request. *

                                                                                                                                                                          *
                                                                                                                                                                        • *
                                                                                                                                                                        • *

                                                                                                                                                                          * The policy must include an Effect, Action and Principal. *

                                                                                                                                                                          *
                                                                                                                                                                        • *
                                                                                                                                                                        • *

                                                                                                                                                                          * Effect must specify Allow. *

                                                                                                                                                                          *
                                                                                                                                                                        • *
                                                                                                                                                                        • *

                                                                                                                                                                          * The Action in the policy must be waf:UpdateWebACL, * waf-regional:UpdateWebACL, waf:GetRuleGroup and * waf-regional:GetRuleGroup . Any extra or wildcard actions in the policy will be rejected. *

                                                                                                                                                                          *
                                                                                                                                                                        • *
                                                                                                                                                                        • *

                                                                                                                                                                          * The policy cannot include a Resource parameter. *

                                                                                                                                                                          *
                                                                                                                                                                        • *
                                                                                                                                                                        • *

                                                                                                                                                                          * The ARN in the request must be a valid WAF RuleGroup ARN and the RuleGroup must exist in the same region. *

                                                                                                                                                                          *
                                                                                                                                                                        • *
                                                                                                                                                                        • *

                                                                                                                                                                          * The user making the request must be the owner of the RuleGroup. *

                                                                                                                                                                          *
                                                                                                                                                                        • *
                                                                                                                                                                        • *

                                                                                                                                                                          * Your policy must be composed using IAM Policy version 2012-10-17. *

                                                                                                                                                                          *
                                                                                                                                                                        • * @throws SdkException * Base class for all exceptions that can be thrown by the SDK (both service and client). Can be used for * catch all scenarios. * @throws SdkClientException * If any client side error occurs such as an IO related failure, failure to get credentials, etc. * @throws WafException * Base class for all service exceptions. Unknown exceptions will be thrown as an instance of this type. * @sample WafClient.PutPermissionPolicy * @see AWS API * Documentation */ default PutPermissionPolicyResponse putPermissionPolicy( Consumer putPermissionPolicyRequest) throws WafInternalErrorException, WafStaleDataException, WafNonexistentItemException, WafInvalidPermissionPolicyException, AwsServiceException, SdkClientException, WafException { return putPermissionPolicy(PutPermissionPolicyRequest.builder().applyMutation(putPermissionPolicyRequest).build()); } /** * *

                                                                                                                                                                          * This is AWS WAF Classic documentation. For more information, see AWS WAF Classic in the * developer guide. *

                                                                                                                                                                          *

                                                                                                                                                                          * For the latest version of AWS WAF, use the AWS WAFV2 API and see the AWS WAF Developer Guide. With * the latest version, AWS WAF has a single set of endpoints for regional and global use. *

                                                                                                                                                                          *
                                                                                                                                                                          *

                                                                                                                                                                          * Associates tags with the specified AWS resource. Tags are key:value pairs that you can use to categorize and * manage your resources, for purposes like billing. For example, you might set the tag key to "customer" and the * value to the customer name or ID. You can specify one or more tags to add to each AWS resource, up to 50 tags for * a resource. *

                                                                                                                                                                          *

                                                                                                                                                                          * Tagging is only available through the API, SDKs, and CLI. You can't manage or view tags through the AWS WAF * Classic console. You can use this action to tag the AWS resources that you manage through AWS WAF Classic: web * ACLs, rule groups, and rules. *

                                                                                                                                                                          * * @param tagResourceRequest * @return Result of the TagResource operation returned by the service. * @throws WafInternalErrorException * The operation failed because of a system problem, even though the request was valid. Retry your request. * @throws WafInvalidParameterException * The operation failed because AWS WAF didn't recognize a parameter in the request. For example:

                                                                                                                                                                          *
                                                                                                                                                                            *
                                                                                                                                                                          • *

                                                                                                                                                                            * You specified an invalid parameter name. *

                                                                                                                                                                            *
                                                                                                                                                                          • *
                                                                                                                                                                          • *

                                                                                                                                                                            * You specified an invalid value. *

                                                                                                                                                                            *
                                                                                                                                                                          • *
                                                                                                                                                                          • *

                                                                                                                                                                            * You tried to update an object (ByteMatchSet, IPSet, Rule, or * WebACL) using an action other than INSERT or DELETE. *

                                                                                                                                                                            *
                                                                                                                                                                          • *
                                                                                                                                                                          • *

                                                                                                                                                                            * You tried to create a WebACL with a DefaultAction Type other than * ALLOW, BLOCK, or COUNT. *

                                                                                                                                                                            *
                                                                                                                                                                          • *
                                                                                                                                                                          • *

                                                                                                                                                                            * You tried to create a RateBasedRule with a RateKey value other than * IP. *

                                                                                                                                                                            *
                                                                                                                                                                          • *
                                                                                                                                                                          • *

                                                                                                                                                                            * You tried to update a WebACL with a WafAction Type other than * ALLOW, BLOCK, or COUNT. *

                                                                                                                                                                            *
                                                                                                                                                                          • *
                                                                                                                                                                          • *

                                                                                                                                                                            * You tried to update a ByteMatchSet with a FieldToMatch Type other * than HEADER, METHOD, QUERY_STRING, URI, or BODY. *

                                                                                                                                                                            *
                                                                                                                                                                          • *
                                                                                                                                                                          • *

                                                                                                                                                                            * You tried to update a ByteMatchSet with a Field of HEADER but no * value for Data. *

                                                                                                                                                                            *
                                                                                                                                                                          • *
                                                                                                                                                                          • *

                                                                                                                                                                            * Your request references an ARN that is malformed, or corresponds to a resource with which a web ACL * cannot be associated. *

                                                                                                                                                                            *
                                                                                                                                                                          • * @throws WafLimitsExceededException * The operation exceeds a resource limit, for example, the maximum number of WebACL objects * that you can create for an AWS account. For more information, see Limits in the AWS WAF * Developer Guide. * @throws WafNonexistentItemException * The operation failed because the referenced object doesn't exist. * @throws WafBadRequestException * @throws WafTagOperationException * @throws WafTagOperationInternalErrorException * @throws SdkException * Base class for all exceptions that can be thrown by the SDK (both service and client). Can be used for * catch all scenarios. * @throws SdkClientException * If any client side error occurs such as an IO related failure, failure to get credentials, etc. * @throws WafException * Base class for all service exceptions. Unknown exceptions will be thrown as an instance of this type. * @sample WafClient.TagResource * @see AWS API * Documentation */ default TagResourceResponse tagResource(TagResourceRequest tagResourceRequest) throws WafInternalErrorException, WafInvalidParameterException, WafLimitsExceededException, WafNonexistentItemException, WafBadRequestException, WafTagOperationException, WafTagOperationInternalErrorException, AwsServiceException, SdkClientException, WafException { throw new UnsupportedOperationException(); } /** * *

                                                                                                                                                                            * This is AWS WAF Classic documentation. For more information, see AWS WAF Classic in the * developer guide. *

                                                                                                                                                                            *

                                                                                                                                                                            * For the latest version of AWS WAF, use the AWS WAFV2 API and see the AWS WAF Developer Guide. With * the latest version, AWS WAF has a single set of endpoints for regional and global use. *

                                                                                                                                                                            *
                                                                                                                                                                            *

                                                                                                                                                                            * Associates tags with the specified AWS resource. Tags are key:value pairs that you can use to categorize and * manage your resources, for purposes like billing. For example, you might set the tag key to "customer" and the * value to the customer name or ID. You can specify one or more tags to add to each AWS resource, up to 50 tags for * a resource. *

                                                                                                                                                                            *

                                                                                                                                                                            * Tagging is only available through the API, SDKs, and CLI. You can't manage or view tags through the AWS WAF * Classic console. You can use this action to tag the AWS resources that you manage through AWS WAF Classic: web * ACLs, rule groups, and rules. *

                                                                                                                                                                            *
                                                                                                                                                                            *

                                                                                                                                                                            * This is a convenience which creates an instance of the {@link TagResourceRequest.Builder} avoiding the need to * create one manually via {@link TagResourceRequest#builder()} *

                                                                                                                                                                            * * @param tagResourceRequest * A {@link Consumer} that will call methods on * {@link software.amazon.awssdk.services.waf.model.TagResourceRequest.Builder} to create a request. * @return Result of the TagResource operation returned by the service. * @throws WafInternalErrorException * The operation failed because of a system problem, even though the request was valid. Retry your request. * @throws WafInvalidParameterException * The operation failed because AWS WAF didn't recognize a parameter in the request. For example:

                                                                                                                                                                            *
                                                                                                                                                                              *
                                                                                                                                                                            • *

                                                                                                                                                                              * You specified an invalid parameter name. *

                                                                                                                                                                              *
                                                                                                                                                                            • *
                                                                                                                                                                            • *

                                                                                                                                                                              * You specified an invalid value. *

                                                                                                                                                                              *
                                                                                                                                                                            • *
                                                                                                                                                                            • *

                                                                                                                                                                              * You tried to update an object (ByteMatchSet, IPSet, Rule, or * WebACL) using an action other than INSERT or DELETE. *

                                                                                                                                                                              *
                                                                                                                                                                            • *
                                                                                                                                                                            • *

                                                                                                                                                                              * You tried to create a WebACL with a DefaultAction Type other than * ALLOW, BLOCK, or COUNT. *

                                                                                                                                                                              *
                                                                                                                                                                            • *
                                                                                                                                                                            • *

                                                                                                                                                                              * You tried to create a RateBasedRule with a RateKey value other than * IP. *

                                                                                                                                                                              *
                                                                                                                                                                            • *
                                                                                                                                                                            • *

                                                                                                                                                                              * You tried to update a WebACL with a WafAction Type other than * ALLOW, BLOCK, or COUNT. *

                                                                                                                                                                              *
                                                                                                                                                                            • *
                                                                                                                                                                            • *

                                                                                                                                                                              * You tried to update a ByteMatchSet with a FieldToMatch Type other * than HEADER, METHOD, QUERY_STRING, URI, or BODY. *

                                                                                                                                                                              *
                                                                                                                                                                            • *
                                                                                                                                                                            • *

                                                                                                                                                                              * You tried to update a ByteMatchSet with a Field of HEADER but no * value for Data. *

                                                                                                                                                                              *
                                                                                                                                                                            • *
                                                                                                                                                                            • *

                                                                                                                                                                              * Your request references an ARN that is malformed, or corresponds to a resource with which a web ACL * cannot be associated. *

                                                                                                                                                                              *
                                                                                                                                                                            • * @throws WafLimitsExceededException * The operation exceeds a resource limit, for example, the maximum number of WebACL objects * that you can create for an AWS account. For more information, see Limits in the AWS WAF * Developer Guide. * @throws WafNonexistentItemException * The operation failed because the referenced object doesn't exist. * @throws WafBadRequestException * @throws WafTagOperationException * @throws WafTagOperationInternalErrorException * @throws SdkException * Base class for all exceptions that can be thrown by the SDK (both service and client). Can be used for * catch all scenarios. * @throws SdkClientException * If any client side error occurs such as an IO related failure, failure to get credentials, etc. * @throws WafException * Base class for all service exceptions. Unknown exceptions will be thrown as an instance of this type. * @sample WafClient.TagResource * @see AWS API * Documentation */ default TagResourceResponse tagResource(Consumer tagResourceRequest) throws WafInternalErrorException, WafInvalidParameterException, WafLimitsExceededException, WafNonexistentItemException, WafBadRequestException, WafTagOperationException, WafTagOperationInternalErrorException, AwsServiceException, SdkClientException, WafException { return tagResource(TagResourceRequest.builder().applyMutation(tagResourceRequest).build()); } /** * *

                                                                                                                                                                              * This is AWS WAF Classic documentation. For more information, see AWS WAF Classic in the * developer guide. *

                                                                                                                                                                              *

                                                                                                                                                                              * For the latest version of AWS WAF, use the AWS WAFV2 API and see the AWS WAF Developer Guide. With * the latest version, AWS WAF has a single set of endpoints for regional and global use. *

                                                                                                                                                                              *
                                                                                                                                                                              *

                                                                                                                                                                              * * @param untagResourceRequest * @return Result of the UntagResource operation returned by the service. * @throws WafInternalErrorException * The operation failed because of a system problem, even though the request was valid. Retry your request. * @throws WafInvalidParameterException * The operation failed because AWS WAF didn't recognize a parameter in the request. For example: *

                                                                                                                                                                              *
                                                                                                                                                                                *
                                                                                                                                                                              • *

                                                                                                                                                                                * You specified an invalid parameter name. *

                                                                                                                                                                                *
                                                                                                                                                                              • *
                                                                                                                                                                              • *

                                                                                                                                                                                * You specified an invalid value. *

                                                                                                                                                                                *
                                                                                                                                                                              • *
                                                                                                                                                                              • *

                                                                                                                                                                                * You tried to update an object (ByteMatchSet, IPSet, Rule, or * WebACL) using an action other than INSERT or DELETE. *

                                                                                                                                                                                *
                                                                                                                                                                              • *
                                                                                                                                                                              • *

                                                                                                                                                                                * You tried to create a WebACL with a DefaultAction Type other than * ALLOW, BLOCK, or COUNT. *

                                                                                                                                                                                *
                                                                                                                                                                              • *
                                                                                                                                                                              • *

                                                                                                                                                                                * You tried to create a RateBasedRule with a RateKey value other than * IP. *

                                                                                                                                                                                *
                                                                                                                                                                              • *
                                                                                                                                                                              • *

                                                                                                                                                                                * You tried to update a WebACL with a WafAction Type other than * ALLOW, BLOCK, or COUNT. *

                                                                                                                                                                                *
                                                                                                                                                                              • *
                                                                                                                                                                              • *

                                                                                                                                                                                * You tried to update a ByteMatchSet with a FieldToMatch Type other * than HEADER, METHOD, QUERY_STRING, URI, or BODY. *

                                                                                                                                                                                *
                                                                                                                                                                              • *
                                                                                                                                                                              • *

                                                                                                                                                                                * You tried to update a ByteMatchSet with a Field of HEADER but no * value for Data. *

                                                                                                                                                                                *
                                                                                                                                                                              • *
                                                                                                                                                                              • *

                                                                                                                                                                                * Your request references an ARN that is malformed, or corresponds to a resource with which a web ACL * cannot be associated. *

                                                                                                                                                                                *
                                                                                                                                                                              • * @throws WafNonexistentItemException * The operation failed because the referenced object doesn't exist. * @throws WafBadRequestException * @throws WafTagOperationException * @throws WafTagOperationInternalErrorException * @throws SdkException * Base class for all exceptions that can be thrown by the SDK (both service and client). Can be used for * catch all scenarios. * @throws SdkClientException * If any client side error occurs such as an IO related failure, failure to get credentials, etc. * @throws WafException * Base class for all service exceptions. Unknown exceptions will be thrown as an instance of this type. * @sample WafClient.UntagResource * @see AWS API * Documentation */ default UntagResourceResponse untagResource(UntagResourceRequest untagResourceRequest) throws WafInternalErrorException, WafInvalidParameterException, WafNonexistentItemException, WafBadRequestException, WafTagOperationException, WafTagOperationInternalErrorException, AwsServiceException, SdkClientException, WafException { throw new UnsupportedOperationException(); } /** * *

                                                                                                                                                                                * This is AWS WAF Classic documentation. For more information, see AWS WAF Classic in the * developer guide. *

                                                                                                                                                                                *

                                                                                                                                                                                * For the latest version of AWS WAF, use the AWS WAFV2 API and see the AWS WAF Developer Guide. With * the latest version, AWS WAF has a single set of endpoints for regional and global use. *

                                                                                                                                                                                *
                                                                                                                                                                                *

                                                                                                                                                                                *
                                                                                                                                                                                *

                                                                                                                                                                                * This is a convenience which creates an instance of the {@link UntagResourceRequest.Builder} avoiding the need to * create one manually via {@link UntagResourceRequest#builder()} *

                                                                                                                                                                                * * @param untagResourceRequest * A {@link Consumer} that will call methods on * {@link software.amazon.awssdk.services.waf.model.UntagResourceRequest.Builder} to create a request. * @return Result of the UntagResource operation returned by the service. * @throws WafInternalErrorException * The operation failed because of a system problem, even though the request was valid. Retry your request. * @throws WafInvalidParameterException * The operation failed because AWS WAF didn't recognize a parameter in the request. For example:

                                                                                                                                                                                *
                                                                                                                                                                                  *
                                                                                                                                                                                • *

                                                                                                                                                                                  * You specified an invalid parameter name. *

                                                                                                                                                                                  *
                                                                                                                                                                                • *
                                                                                                                                                                                • *

                                                                                                                                                                                  * You specified an invalid value. *

                                                                                                                                                                                  *
                                                                                                                                                                                • *
                                                                                                                                                                                • *

                                                                                                                                                                                  * You tried to update an object (ByteMatchSet, IPSet, Rule, or * WebACL) using an action other than INSERT or DELETE. *

                                                                                                                                                                                  *
                                                                                                                                                                                • *
                                                                                                                                                                                • *

                                                                                                                                                                                  * You tried to create a WebACL with a DefaultAction Type other than * ALLOW, BLOCK, or COUNT. *

                                                                                                                                                                                  *
                                                                                                                                                                                • *
                                                                                                                                                                                • *

                                                                                                                                                                                  * You tried to create a RateBasedRule with a RateKey value other than * IP. *

                                                                                                                                                                                  *
                                                                                                                                                                                • *
                                                                                                                                                                                • *

                                                                                                                                                                                  * You tried to update a WebACL with a WafAction Type other than * ALLOW, BLOCK, or COUNT. *

                                                                                                                                                                                  *
                                                                                                                                                                                • *
                                                                                                                                                                                • *

                                                                                                                                                                                  * You tried to update a ByteMatchSet with a FieldToMatch Type other * than HEADER, METHOD, QUERY_STRING, URI, or BODY. *

                                                                                                                                                                                  *
                                                                                                                                                                                • *
                                                                                                                                                                                • *

                                                                                                                                                                                  * You tried to update a ByteMatchSet with a Field of HEADER but no * value for Data. *

                                                                                                                                                                                  *
                                                                                                                                                                                • *
                                                                                                                                                                                • *

                                                                                                                                                                                  * Your request references an ARN that is malformed, or corresponds to a resource with which a web ACL * cannot be associated. *

                                                                                                                                                                                  *
                                                                                                                                                                                • * @throws WafNonexistentItemException * The operation failed because the referenced object doesn't exist. * @throws WafBadRequestException * @throws WafTagOperationException * @throws WafTagOperationInternalErrorException * @throws SdkException * Base class for all exceptions that can be thrown by the SDK (both service and client). Can be used for * catch all scenarios. * @throws SdkClientException * If any client side error occurs such as an IO related failure, failure to get credentials, etc. * @throws WafException * Base class for all service exceptions. Unknown exceptions will be thrown as an instance of this type. * @sample WafClient.UntagResource * @see AWS API * Documentation */ default UntagResourceResponse untagResource(Consumer untagResourceRequest) throws WafInternalErrorException, WafInvalidParameterException, WafNonexistentItemException, WafBadRequestException, WafTagOperationException, WafTagOperationInternalErrorException, AwsServiceException, SdkClientException, WafException { return untagResource(UntagResourceRequest.builder().applyMutation(untagResourceRequest).build()); } /** * *

                                                                                                                                                                                  * This is AWS WAF Classic documentation. For more information, see AWS WAF Classic in the * developer guide. *

                                                                                                                                                                                  *

                                                                                                                                                                                  * For the latest version of AWS WAF, use the AWS WAFV2 API and see the AWS WAF Developer Guide. With * the latest version, AWS WAF has a single set of endpoints for regional and global use. *

                                                                                                                                                                                  *
                                                                                                                                                                                  *

                                                                                                                                                                                  * Inserts or deletes ByteMatchTuple objects (filters) in a ByteMatchSet. For each * ByteMatchTuple object, you specify the following values: *

                                                                                                                                                                                  *
                                                                                                                                                                                    *
                                                                                                                                                                                  • *

                                                                                                                                                                                    * Whether to insert or delete the object from the array. If you want to change a ByteMatchSetUpdate * object, you delete the existing object and add a new one. *

                                                                                                                                                                                    *
                                                                                                                                                                                  • *
                                                                                                                                                                                  • *

                                                                                                                                                                                    * The part of a web request that you want AWS WAF to inspect, such as a query string or the value of the * User-Agent header. *

                                                                                                                                                                                    *
                                                                                                                                                                                  • *
                                                                                                                                                                                  • *

                                                                                                                                                                                    * The bytes (typically a string that corresponds with ASCII characters) that you want AWS WAF to look for. For more * information, including how you specify the values for the AWS WAF API and the AWS CLI or SDKs, see * TargetString in the ByteMatchTuple data type. *

                                                                                                                                                                                    *
                                                                                                                                                                                  • *
                                                                                                                                                                                  • *

                                                                                                                                                                                    * Where to look, such as at the beginning or the end of a query string. *

                                                                                                                                                                                    *
                                                                                                                                                                                  • *
                                                                                                                                                                                  • *

                                                                                                                                                                                    * Whether to perform any conversions on the request, such as converting it to lowercase, before inspecting it for * the specified string. *

                                                                                                                                                                                    *
                                                                                                                                                                                  • *
                                                                                                                                                                                  *

                                                                                                                                                                                  * For example, you can add a ByteMatchSetUpdate object that matches web requests in which * User-Agent headers contain the string BadBot. You can then configure AWS WAF to block * those requests. *

                                                                                                                                                                                  *

                                                                                                                                                                                  * To create and configure a ByteMatchSet, perform the following steps: *

                                                                                                                                                                                  *
                                                                                                                                                                                    *
                                                                                                                                                                                  1. *

                                                                                                                                                                                    * Create a ByteMatchSet. For more information, see CreateByteMatchSet. *

                                                                                                                                                                                    *
                                                                                                                                                                                  2. *
                                                                                                                                                                                  3. *

                                                                                                                                                                                    * Use GetChangeToken to get the change token that you provide in the ChangeToken parameter of * an UpdateByteMatchSet request. *

                                                                                                                                                                                    *
                                                                                                                                                                                  4. *
                                                                                                                                                                                  5. *

                                                                                                                                                                                    * Submit an UpdateByteMatchSet request to specify the part of the request that you want AWS WAF to * inspect (for example, the header or the URI) and the value that you want AWS WAF to watch for. *

                                                                                                                                                                                    *
                                                                                                                                                                                  6. *
                                                                                                                                                                                  *

                                                                                                                                                                                  * For more information about how to use the AWS WAF API to allow or block HTTP requests, see the AWS WAF Developer Guide. *

                                                                                                                                                                                  * * @param updateByteMatchSetRequest * @return Result of the UpdateByteMatchSet operation returned by the service. * @throws WafInternalErrorException * The operation failed because of a system problem, even though the request was valid. Retry your request. * @throws WafInvalidAccountException * The operation failed because you tried to create, update, or delete an object by using an invalid account * identifier. * @throws WafInvalidOperationException * The operation failed because there was nothing to do. For example:

                                                                                                                                                                                  *
                                                                                                                                                                                    *
                                                                                                                                                                                  • *

                                                                                                                                                                                    * You tried to remove a Rule from a WebACL, but the Rule isn't in * the specified WebACL. *

                                                                                                                                                                                    *
                                                                                                                                                                                  • *
                                                                                                                                                                                  • *

                                                                                                                                                                                    * You tried to remove an IP address from an IPSet, but the IP address isn't in the specified * IPSet. *

                                                                                                                                                                                    *
                                                                                                                                                                                  • *
                                                                                                                                                                                  • *

                                                                                                                                                                                    * You tried to remove a ByteMatchTuple from a ByteMatchSet, but the * ByteMatchTuple isn't in the specified WebACL. *

                                                                                                                                                                                    *
                                                                                                                                                                                  • *
                                                                                                                                                                                  • *

                                                                                                                                                                                    * You tried to add a Rule to a WebACL, but the Rule already exists * in the specified WebACL. *

                                                                                                                                                                                    *
                                                                                                                                                                                  • *
                                                                                                                                                                                  • *

                                                                                                                                                                                    * You tried to add a ByteMatchTuple to a ByteMatchSet, but the * ByteMatchTuple already exists in the specified WebACL. *

                                                                                                                                                                                    *
                                                                                                                                                                                  • * @throws WafInvalidParameterException * The operation failed because AWS WAF didn't recognize a parameter in the request. For example:

                                                                                                                                                                                    *
                                                                                                                                                                                      *
                                                                                                                                                                                    • *

                                                                                                                                                                                      * You specified an invalid parameter name. *

                                                                                                                                                                                      *
                                                                                                                                                                                    • *
                                                                                                                                                                                    • *

                                                                                                                                                                                      * You specified an invalid value. *

                                                                                                                                                                                      *
                                                                                                                                                                                    • *
                                                                                                                                                                                    • *

                                                                                                                                                                                      * You tried to update an object (ByteMatchSet, IPSet, Rule, or * WebACL) using an action other than INSERT or DELETE. *

                                                                                                                                                                                      *
                                                                                                                                                                                    • *
                                                                                                                                                                                    • *

                                                                                                                                                                                      * You tried to create a WebACL with a DefaultAction Type other than * ALLOW, BLOCK, or COUNT. *

                                                                                                                                                                                      *
                                                                                                                                                                                    • *
                                                                                                                                                                                    • *

                                                                                                                                                                                      * You tried to create a RateBasedRule with a RateKey value other than * IP. *

                                                                                                                                                                                      *
                                                                                                                                                                                    • *
                                                                                                                                                                                    • *

                                                                                                                                                                                      * You tried to update a WebACL with a WafAction Type other than * ALLOW, BLOCK, or COUNT. *

                                                                                                                                                                                      *
                                                                                                                                                                                    • *
                                                                                                                                                                                    • *

                                                                                                                                                                                      * You tried to update a ByteMatchSet with a FieldToMatch Type other * than HEADER, METHOD, QUERY_STRING, URI, or BODY. *

                                                                                                                                                                                      *
                                                                                                                                                                                    • *
                                                                                                                                                                                    • *

                                                                                                                                                                                      * You tried to update a ByteMatchSet with a Field of HEADER but no * value for Data. *

                                                                                                                                                                                      *
                                                                                                                                                                                    • *
                                                                                                                                                                                    • *

                                                                                                                                                                                      * Your request references an ARN that is malformed, or corresponds to a resource with which a web ACL * cannot be associated. *

                                                                                                                                                                                      *
                                                                                                                                                                                    • * @throws WafNonexistentContainerException * The operation failed because you tried to add an object to or delete an object from another object that * doesn't exist. For example:

                                                                                                                                                                                      *
                                                                                                                                                                                        *
                                                                                                                                                                                      • *

                                                                                                                                                                                        * You tried to add a Rule to or delete a Rule from a WebACL that * doesn't exist. *

                                                                                                                                                                                        *
                                                                                                                                                                                      • *
                                                                                                                                                                                      • *

                                                                                                                                                                                        * You tried to add a ByteMatchSet to or delete a ByteMatchSet from a * Rule that doesn't exist. *

                                                                                                                                                                                        *
                                                                                                                                                                                      • *
                                                                                                                                                                                      • *

                                                                                                                                                                                        * You tried to add an IP address to or delete an IP address from an IPSet that doesn't exist. *

                                                                                                                                                                                        *
                                                                                                                                                                                      • *
                                                                                                                                                                                      • *

                                                                                                                                                                                        * You tried to add a ByteMatchTuple to or delete a ByteMatchTuple from a * ByteMatchSet that doesn't exist. *

                                                                                                                                                                                        *
                                                                                                                                                                                      • * @throws WafNonexistentItemException * The operation failed because the referenced object doesn't exist. * @throws WafStaleDataException * The operation failed because you tried to create, update, or delete an object by using a change token * that has already been used. * @throws WafLimitsExceededException * The operation exceeds a resource limit, for example, the maximum number of WebACL objects * that you can create for an AWS account. For more information, see Limits in the AWS WAF * Developer Guide. * @throws SdkException * Base class for all exceptions that can be thrown by the SDK (both service and client). Can be used for * catch all scenarios. * @throws SdkClientException * If any client side error occurs such as an IO related failure, failure to get credentials, etc. * @throws WafException * Base class for all service exceptions. Unknown exceptions will be thrown as an instance of this type. * @sample WafClient.UpdateByteMatchSet * @see AWS API * Documentation */ default UpdateByteMatchSetResponse updateByteMatchSet(UpdateByteMatchSetRequest updateByteMatchSetRequest) throws WafInternalErrorException, WafInvalidAccountException, WafInvalidOperationException, WafInvalidParameterException, WafNonexistentContainerException, WafNonexistentItemException, WafStaleDataException, WafLimitsExceededException, AwsServiceException, SdkClientException, WafException { throw new UnsupportedOperationException(); } /** * *

                                                                                                                                                                                        * This is AWS WAF Classic documentation. For more information, see AWS WAF Classic in the * developer guide. *

                                                                                                                                                                                        *

                                                                                                                                                                                        * For the latest version of AWS WAF, use the AWS WAFV2 API and see the AWS WAF Developer Guide. With * the latest version, AWS WAF has a single set of endpoints for regional and global use. *

                                                                                                                                                                                        *
                                                                                                                                                                                        *

                                                                                                                                                                                        * Inserts or deletes ByteMatchTuple objects (filters) in a ByteMatchSet. For each * ByteMatchTuple object, you specify the following values: *

                                                                                                                                                                                        *
                                                                                                                                                                                          *
                                                                                                                                                                                        • *

                                                                                                                                                                                          * Whether to insert or delete the object from the array. If you want to change a ByteMatchSetUpdate * object, you delete the existing object and add a new one. *

                                                                                                                                                                                          *
                                                                                                                                                                                        • *
                                                                                                                                                                                        • *

                                                                                                                                                                                          * The part of a web request that you want AWS WAF to inspect, such as a query string or the value of the * User-Agent header. *

                                                                                                                                                                                          *
                                                                                                                                                                                        • *
                                                                                                                                                                                        • *

                                                                                                                                                                                          * The bytes (typically a string that corresponds with ASCII characters) that you want AWS WAF to look for. For more * information, including how you specify the values for the AWS WAF API and the AWS CLI or SDKs, see * TargetString in the ByteMatchTuple data type. *

                                                                                                                                                                                          *
                                                                                                                                                                                        • *
                                                                                                                                                                                        • *

                                                                                                                                                                                          * Where to look, such as at the beginning or the end of a query string. *

                                                                                                                                                                                          *
                                                                                                                                                                                        • *
                                                                                                                                                                                        • *

                                                                                                                                                                                          * Whether to perform any conversions on the request, such as converting it to lowercase, before inspecting it for * the specified string. *

                                                                                                                                                                                          *
                                                                                                                                                                                        • *
                                                                                                                                                                                        *

                                                                                                                                                                                        * For example, you can add a ByteMatchSetUpdate object that matches web requests in which * User-Agent headers contain the string BadBot. You can then configure AWS WAF to block * those requests. *

                                                                                                                                                                                        *

                                                                                                                                                                                        * To create and configure a ByteMatchSet, perform the following steps: *

                                                                                                                                                                                        *
                                                                                                                                                                                          *
                                                                                                                                                                                        1. *

                                                                                                                                                                                          * Create a ByteMatchSet. For more information, see CreateByteMatchSet. *

                                                                                                                                                                                          *
                                                                                                                                                                                        2. *
                                                                                                                                                                                        3. *

                                                                                                                                                                                          * Use GetChangeToken to get the change token that you provide in the ChangeToken parameter of * an UpdateByteMatchSet request. *

                                                                                                                                                                                          *
                                                                                                                                                                                        4. *
                                                                                                                                                                                        5. *

                                                                                                                                                                                          * Submit an UpdateByteMatchSet request to specify the part of the request that you want AWS WAF to * inspect (for example, the header or the URI) and the value that you want AWS WAF to watch for. *

                                                                                                                                                                                          *
                                                                                                                                                                                        6. *
                                                                                                                                                                                        *

                                                                                                                                                                                        * For more information about how to use the AWS WAF API to allow or block HTTP requests, see the AWS WAF Developer Guide. *

                                                                                                                                                                                        *
                                                                                                                                                                                        *

                                                                                                                                                                                        * This is a convenience which creates an instance of the {@link UpdateByteMatchSetRequest.Builder} avoiding the * need to create one manually via {@link UpdateByteMatchSetRequest#builder()} *

                                                                                                                                                                                        * * @param updateByteMatchSetRequest * A {@link Consumer} that will call methods on * {@link software.amazon.awssdk.services.waf.model.UpdateByteMatchSetRequest.Builder} to create a request. * @return Result of the UpdateByteMatchSet operation returned by the service. * @throws WafInternalErrorException * The operation failed because of a system problem, even though the request was valid. Retry your request. * @throws WafInvalidAccountException * The operation failed because you tried to create, update, or delete an object by using an invalid account * identifier. * @throws WafInvalidOperationException * The operation failed because there was nothing to do. For example:

                                                                                                                                                                                        *
                                                                                                                                                                                          *
                                                                                                                                                                                        • *

                                                                                                                                                                                          * You tried to remove a Rule from a WebACL, but the Rule isn't in * the specified WebACL. *

                                                                                                                                                                                          *
                                                                                                                                                                                        • *
                                                                                                                                                                                        • *

                                                                                                                                                                                          * You tried to remove an IP address from an IPSet, but the IP address isn't in the specified * IPSet. *

                                                                                                                                                                                          *
                                                                                                                                                                                        • *
                                                                                                                                                                                        • *

                                                                                                                                                                                          * You tried to remove a ByteMatchTuple from a ByteMatchSet, but the * ByteMatchTuple isn't in the specified WebACL. *

                                                                                                                                                                                          *
                                                                                                                                                                                        • *
                                                                                                                                                                                        • *

                                                                                                                                                                                          * You tried to add a Rule to a WebACL, but the Rule already exists * in the specified WebACL. *

                                                                                                                                                                                          *
                                                                                                                                                                                        • *
                                                                                                                                                                                        • *

                                                                                                                                                                                          * You tried to add a ByteMatchTuple to a ByteMatchSet, but the * ByteMatchTuple already exists in the specified WebACL. *

                                                                                                                                                                                          *
                                                                                                                                                                                        • * @throws WafInvalidParameterException * The operation failed because AWS WAF didn't recognize a parameter in the request. For example:

                                                                                                                                                                                          *
                                                                                                                                                                                            *
                                                                                                                                                                                          • *

                                                                                                                                                                                            * You specified an invalid parameter name. *

                                                                                                                                                                                            *
                                                                                                                                                                                          • *
                                                                                                                                                                                          • *

                                                                                                                                                                                            * You specified an invalid value. *

                                                                                                                                                                                            *
                                                                                                                                                                                          • *
                                                                                                                                                                                          • *

                                                                                                                                                                                            * You tried to update an object (ByteMatchSet, IPSet, Rule, or * WebACL) using an action other than INSERT or DELETE. *

                                                                                                                                                                                            *
                                                                                                                                                                                          • *
                                                                                                                                                                                          • *

                                                                                                                                                                                            * You tried to create a WebACL with a DefaultAction Type other than * ALLOW, BLOCK, or COUNT. *

                                                                                                                                                                                            *
                                                                                                                                                                                          • *
                                                                                                                                                                                          • *

                                                                                                                                                                                            * You tried to create a RateBasedRule with a RateKey value other than * IP. *

                                                                                                                                                                                            *
                                                                                                                                                                                          • *
                                                                                                                                                                                          • *

                                                                                                                                                                                            * You tried to update a WebACL with a WafAction Type other than * ALLOW, BLOCK, or COUNT. *

                                                                                                                                                                                            *
                                                                                                                                                                                          • *
                                                                                                                                                                                          • *

                                                                                                                                                                                            * You tried to update a ByteMatchSet with a FieldToMatch Type other * than HEADER, METHOD, QUERY_STRING, URI, or BODY. *

                                                                                                                                                                                            *
                                                                                                                                                                                          • *
                                                                                                                                                                                          • *

                                                                                                                                                                                            * You tried to update a ByteMatchSet with a Field of HEADER but no * value for Data. *

                                                                                                                                                                                            *
                                                                                                                                                                                          • *
                                                                                                                                                                                          • *

                                                                                                                                                                                            * Your request references an ARN that is malformed, or corresponds to a resource with which a web ACL * cannot be associated. *

                                                                                                                                                                                            *
                                                                                                                                                                                          • * @throws WafNonexistentContainerException * The operation failed because you tried to add an object to or delete an object from another object that * doesn't exist. For example:

                                                                                                                                                                                            *
                                                                                                                                                                                              *
                                                                                                                                                                                            • *

                                                                                                                                                                                              * You tried to add a Rule to or delete a Rule from a WebACL that * doesn't exist. *

                                                                                                                                                                                              *
                                                                                                                                                                                            • *
                                                                                                                                                                                            • *

                                                                                                                                                                                              * You tried to add a ByteMatchSet to or delete a ByteMatchSet from a * Rule that doesn't exist. *

                                                                                                                                                                                              *
                                                                                                                                                                                            • *
                                                                                                                                                                                            • *

                                                                                                                                                                                              * You tried to add an IP address to or delete an IP address from an IPSet that doesn't exist. *

                                                                                                                                                                                              *
                                                                                                                                                                                            • *
                                                                                                                                                                                            • *

                                                                                                                                                                                              * You tried to add a ByteMatchTuple to or delete a ByteMatchTuple from a * ByteMatchSet that doesn't exist. *

                                                                                                                                                                                              *
                                                                                                                                                                                            • * @throws WafNonexistentItemException * The operation failed because the referenced object doesn't exist. * @throws WafStaleDataException * The operation failed because you tried to create, update, or delete an object by using a change token * that has already been used. * @throws WafLimitsExceededException * The operation exceeds a resource limit, for example, the maximum number of WebACL objects * that you can create for an AWS account. For more information, see Limits in the AWS WAF * Developer Guide. * @throws SdkException * Base class for all exceptions that can be thrown by the SDK (both service and client). Can be used for * catch all scenarios. * @throws SdkClientException * If any client side error occurs such as an IO related failure, failure to get credentials, etc. * @throws WafException * Base class for all service exceptions. Unknown exceptions will be thrown as an instance of this type. * @sample WafClient.UpdateByteMatchSet * @see AWS API * Documentation */ default UpdateByteMatchSetResponse updateByteMatchSet(Consumer updateByteMatchSetRequest) throws WafInternalErrorException, WafInvalidAccountException, WafInvalidOperationException, WafInvalidParameterException, WafNonexistentContainerException, WafNonexistentItemException, WafStaleDataException, WafLimitsExceededException, AwsServiceException, SdkClientException, WafException { return updateByteMatchSet(UpdateByteMatchSetRequest.builder().applyMutation(updateByteMatchSetRequest).build()); } /** * *

                                                                                                                                                                                              * This is AWS WAF Classic documentation. For more information, see AWS WAF Classic in the * developer guide. *

                                                                                                                                                                                              *

                                                                                                                                                                                              * For the latest version of AWS WAF, use the AWS WAFV2 API and see the AWS WAF Developer Guide. With * the latest version, AWS WAF has a single set of endpoints for regional and global use. *

                                                                                                                                                                                              *
                                                                                                                                                                                              *

                                                                                                                                                                                              * Inserts or deletes GeoMatchConstraint objects in an GeoMatchSet. For each * GeoMatchConstraint object, you specify the following values: *

                                                                                                                                                                                              *
                                                                                                                                                                                                *
                                                                                                                                                                                              • *

                                                                                                                                                                                                * Whether to insert or delete the object from the array. If you want to change an GeoMatchConstraint * object, you delete the existing object and add a new one. *

                                                                                                                                                                                                *
                                                                                                                                                                                              • *
                                                                                                                                                                                              • *

                                                                                                                                                                                                * The Type. The only valid value for Type is Country. *

                                                                                                                                                                                                *
                                                                                                                                                                                              • *
                                                                                                                                                                                              • *

                                                                                                                                                                                                * The Value, which is a two character code for the country to add to the * GeoMatchConstraint object. Valid codes are listed in GeoMatchConstraint$Value. *

                                                                                                                                                                                                *
                                                                                                                                                                                              • *
                                                                                                                                                                                              *

                                                                                                                                                                                              * To create and configure an GeoMatchSet, perform the following steps: *

                                                                                                                                                                                              *
                                                                                                                                                                                                *
                                                                                                                                                                                              1. *

                                                                                                                                                                                                * Submit a CreateGeoMatchSet request. *

                                                                                                                                                                                                *
                                                                                                                                                                                              2. *
                                                                                                                                                                                              3. *

                                                                                                                                                                                                * Use GetChangeToken to get the change token that you provide in the ChangeToken parameter of * an UpdateGeoMatchSet request. *

                                                                                                                                                                                                *
                                                                                                                                                                                              4. *
                                                                                                                                                                                              5. *

                                                                                                                                                                                                * Submit an UpdateGeoMatchSet request to specify the country that you want AWS WAF to watch for. *

                                                                                                                                                                                                *
                                                                                                                                                                                              6. *
                                                                                                                                                                                              *

                                                                                                                                                                                              * When you update an GeoMatchSet, you specify the country that you want to add and/or the country that * you want to delete. If you want to change a country, you delete the existing country and add the new one. *

                                                                                                                                                                                              *

                                                                                                                                                                                              * For more information about how to use the AWS WAF API to allow or block HTTP requests, see the AWS WAF Developer Guide. *

                                                                                                                                                                                              * * @param updateGeoMatchSetRequest * @return Result of the UpdateGeoMatchSet operation returned by the service. * @throws WafStaleDataException * The operation failed because you tried to create, update, or delete an object by using a change token * that has already been used. * @throws WafInternalErrorException * The operation failed because of a system problem, even though the request was valid. Retry your request. * @throws WafInvalidAccountException * The operation failed because you tried to create, update, or delete an object by using an invalid account * identifier. * @throws WafInvalidOperationException * The operation failed because there was nothing to do. For example:

                                                                                                                                                                                              *
                                                                                                                                                                                                *
                                                                                                                                                                                              • *

                                                                                                                                                                                                * You tried to remove a Rule from a WebACL, but the Rule isn't in * the specified WebACL. *

                                                                                                                                                                                                *
                                                                                                                                                                                              • *
                                                                                                                                                                                              • *

                                                                                                                                                                                                * You tried to remove an IP address from an IPSet, but the IP address isn't in the specified * IPSet. *

                                                                                                                                                                                                *
                                                                                                                                                                                              • *
                                                                                                                                                                                              • *

                                                                                                                                                                                                * You tried to remove a ByteMatchTuple from a ByteMatchSet, but the * ByteMatchTuple isn't in the specified WebACL. *

                                                                                                                                                                                                *
                                                                                                                                                                                              • *
                                                                                                                                                                                              • *

                                                                                                                                                                                                * You tried to add a Rule to a WebACL, but the Rule already exists * in the specified WebACL. *

                                                                                                                                                                                                *
                                                                                                                                                                                              • *
                                                                                                                                                                                              • *

                                                                                                                                                                                                * You tried to add a ByteMatchTuple to a ByteMatchSet, but the * ByteMatchTuple already exists in the specified WebACL. *

                                                                                                                                                                                                *
                                                                                                                                                                                              • * @throws WafInvalidParameterException * The operation failed because AWS WAF didn't recognize a parameter in the request. For example:

                                                                                                                                                                                                *
                                                                                                                                                                                                  *
                                                                                                                                                                                                • *

                                                                                                                                                                                                  * You specified an invalid parameter name. *

                                                                                                                                                                                                  *
                                                                                                                                                                                                • *
                                                                                                                                                                                                • *

                                                                                                                                                                                                  * You specified an invalid value. *

                                                                                                                                                                                                  *
                                                                                                                                                                                                • *
                                                                                                                                                                                                • *

                                                                                                                                                                                                  * You tried to update an object (ByteMatchSet, IPSet, Rule, or * WebACL) using an action other than INSERT or DELETE. *

                                                                                                                                                                                                  *
                                                                                                                                                                                                • *
                                                                                                                                                                                                • *

                                                                                                                                                                                                  * You tried to create a WebACL with a DefaultAction Type other than * ALLOW, BLOCK, or COUNT. *

                                                                                                                                                                                                  *
                                                                                                                                                                                                • *
                                                                                                                                                                                                • *

                                                                                                                                                                                                  * You tried to create a RateBasedRule with a RateKey value other than * IP. *

                                                                                                                                                                                                  *
                                                                                                                                                                                                • *
                                                                                                                                                                                                • *

                                                                                                                                                                                                  * You tried to update a WebACL with a WafAction Type other than * ALLOW, BLOCK, or COUNT. *

                                                                                                                                                                                                  *
                                                                                                                                                                                                • *
                                                                                                                                                                                                • *

                                                                                                                                                                                                  * You tried to update a ByteMatchSet with a FieldToMatch Type other * than HEADER, METHOD, QUERY_STRING, URI, or BODY. *

                                                                                                                                                                                                  *
                                                                                                                                                                                                • *
                                                                                                                                                                                                • *

                                                                                                                                                                                                  * You tried to update a ByteMatchSet with a Field of HEADER but no * value for Data. *

                                                                                                                                                                                                  *
                                                                                                                                                                                                • *
                                                                                                                                                                                                • *

                                                                                                                                                                                                  * Your request references an ARN that is malformed, or corresponds to a resource with which a web ACL * cannot be associated. *

                                                                                                                                                                                                  *
                                                                                                                                                                                                • * @throws WafNonexistentContainerException * The operation failed because you tried to add an object to or delete an object from another object that * doesn't exist. For example:

                                                                                                                                                                                                  *
                                                                                                                                                                                                    *
                                                                                                                                                                                                  • *

                                                                                                                                                                                                    * You tried to add a Rule to or delete a Rule from a WebACL that * doesn't exist. *

                                                                                                                                                                                                    *
                                                                                                                                                                                                  • *
                                                                                                                                                                                                  • *

                                                                                                                                                                                                    * You tried to add a ByteMatchSet to or delete a ByteMatchSet from a * Rule that doesn't exist. *

                                                                                                                                                                                                    *
                                                                                                                                                                                                  • *
                                                                                                                                                                                                  • *

                                                                                                                                                                                                    * You tried to add an IP address to or delete an IP address from an IPSet that doesn't exist. *

                                                                                                                                                                                                    *
                                                                                                                                                                                                  • *
                                                                                                                                                                                                  • *

                                                                                                                                                                                                    * You tried to add a ByteMatchTuple to or delete a ByteMatchTuple from a * ByteMatchSet that doesn't exist. *

                                                                                                                                                                                                    *
                                                                                                                                                                                                  • * @throws WafNonexistentItemException * The operation failed because the referenced object doesn't exist. * @throws WafReferencedItemException * The operation failed because you tried to delete an object that is still in use. For example:

                                                                                                                                                                                                    *
                                                                                                                                                                                                      *
                                                                                                                                                                                                    • *

                                                                                                                                                                                                      * You tried to delete a ByteMatchSet that is still referenced by a Rule. *

                                                                                                                                                                                                      *
                                                                                                                                                                                                    • *
                                                                                                                                                                                                    • *

                                                                                                                                                                                                      * You tried to delete a Rule that is still referenced by a WebACL. *

                                                                                                                                                                                                      *
                                                                                                                                                                                                    • * @throws WafLimitsExceededException * The operation exceeds a resource limit, for example, the maximum number of WebACL objects * that you can create for an AWS account. For more information, see Limits in the AWS WAF * Developer Guide. * @throws SdkException * Base class for all exceptions that can be thrown by the SDK (both service and client). Can be used for * catch all scenarios. * @throws SdkClientException * If any client side error occurs such as an IO related failure, failure to get credentials, etc. * @throws WafException * Base class for all service exceptions. Unknown exceptions will be thrown as an instance of this type. * @sample WafClient.UpdateGeoMatchSet * @see AWS API * Documentation */ default UpdateGeoMatchSetResponse updateGeoMatchSet(UpdateGeoMatchSetRequest updateGeoMatchSetRequest) throws WafStaleDataException, WafInternalErrorException, WafInvalidAccountException, WafInvalidOperationException, WafInvalidParameterException, WafNonexistentContainerException, WafNonexistentItemException, WafReferencedItemException, WafLimitsExceededException, AwsServiceException, SdkClientException, WafException { throw new UnsupportedOperationException(); } /** * *

                                                                                                                                                                                                      * This is AWS WAF Classic documentation. For more information, see AWS WAF Classic in the * developer guide. *

                                                                                                                                                                                                      *

                                                                                                                                                                                                      * For the latest version of AWS WAF, use the AWS WAFV2 API and see the AWS WAF Developer Guide. With * the latest version, AWS WAF has a single set of endpoints for regional and global use. *

                                                                                                                                                                                                      *
                                                                                                                                                                                                      *

                                                                                                                                                                                                      * Inserts or deletes GeoMatchConstraint objects in an GeoMatchSet. For each * GeoMatchConstraint object, you specify the following values: *

                                                                                                                                                                                                      *
                                                                                                                                                                                                        *
                                                                                                                                                                                                      • *

                                                                                                                                                                                                        * Whether to insert or delete the object from the array. If you want to change an GeoMatchConstraint * object, you delete the existing object and add a new one. *

                                                                                                                                                                                                        *
                                                                                                                                                                                                      • *
                                                                                                                                                                                                      • *

                                                                                                                                                                                                        * The Type. The only valid value for Type is Country. *

                                                                                                                                                                                                        *
                                                                                                                                                                                                      • *
                                                                                                                                                                                                      • *

                                                                                                                                                                                                        * The Value, which is a two character code for the country to add to the * GeoMatchConstraint object. Valid codes are listed in GeoMatchConstraint$Value. *

                                                                                                                                                                                                        *
                                                                                                                                                                                                      • *
                                                                                                                                                                                                      *

                                                                                                                                                                                                      * To create and configure an GeoMatchSet, perform the following steps: *

                                                                                                                                                                                                      *
                                                                                                                                                                                                        *
                                                                                                                                                                                                      1. *

                                                                                                                                                                                                        * Submit a CreateGeoMatchSet request. *

                                                                                                                                                                                                        *
                                                                                                                                                                                                      2. *
                                                                                                                                                                                                      3. *

                                                                                                                                                                                                        * Use GetChangeToken to get the change token that you provide in the ChangeToken parameter of * an UpdateGeoMatchSet request. *

                                                                                                                                                                                                        *
                                                                                                                                                                                                      4. *
                                                                                                                                                                                                      5. *

                                                                                                                                                                                                        * Submit an UpdateGeoMatchSet request to specify the country that you want AWS WAF to watch for. *

                                                                                                                                                                                                        *
                                                                                                                                                                                                      6. *
                                                                                                                                                                                                      *

                                                                                                                                                                                                      * When you update an GeoMatchSet, you specify the country that you want to add and/or the country that * you want to delete. If you want to change a country, you delete the existing country and add the new one. *

                                                                                                                                                                                                      *

                                                                                                                                                                                                      * For more information about how to use the AWS WAF API to allow or block HTTP requests, see the AWS WAF Developer Guide. *

                                                                                                                                                                                                      *
                                                                                                                                                                                                      *

                                                                                                                                                                                                      * This is a convenience which creates an instance of the {@link UpdateGeoMatchSetRequest.Builder} avoiding the need * to create one manually via {@link UpdateGeoMatchSetRequest#builder()} *

                                                                                                                                                                                                      * * @param updateGeoMatchSetRequest * A {@link Consumer} that will call methods on * {@link software.amazon.awssdk.services.waf.model.UpdateGeoMatchSetRequest.Builder} to create a request. * @return Result of the UpdateGeoMatchSet operation returned by the service. * @throws WafStaleDataException * The operation failed because you tried to create, update, or delete an object by using a change token * that has already been used. * @throws WafInternalErrorException * The operation failed because of a system problem, even though the request was valid. Retry your request. * @throws WafInvalidAccountException * The operation failed because you tried to create, update, or delete an object by using an invalid account * identifier. * @throws WafInvalidOperationException * The operation failed because there was nothing to do. For example:

                                                                                                                                                                                                      *
                                                                                                                                                                                                        *
                                                                                                                                                                                                      • *

                                                                                                                                                                                                        * You tried to remove a Rule from a WebACL, but the Rule isn't in * the specified WebACL. *

                                                                                                                                                                                                        *
                                                                                                                                                                                                      • *
                                                                                                                                                                                                      • *

                                                                                                                                                                                                        * You tried to remove an IP address from an IPSet, but the IP address isn't in the specified * IPSet. *

                                                                                                                                                                                                        *
                                                                                                                                                                                                      • *
                                                                                                                                                                                                      • *

                                                                                                                                                                                                        * You tried to remove a ByteMatchTuple from a ByteMatchSet, but the * ByteMatchTuple isn't in the specified WebACL. *

                                                                                                                                                                                                        *
                                                                                                                                                                                                      • *
                                                                                                                                                                                                      • *

                                                                                                                                                                                                        * You tried to add a Rule to a WebACL, but the Rule already exists * in the specified WebACL. *

                                                                                                                                                                                                        *
                                                                                                                                                                                                      • *
                                                                                                                                                                                                      • *

                                                                                                                                                                                                        * You tried to add a ByteMatchTuple to a ByteMatchSet, but the * ByteMatchTuple already exists in the specified WebACL. *

                                                                                                                                                                                                        *
                                                                                                                                                                                                      • * @throws WafInvalidParameterException * The operation failed because AWS WAF didn't recognize a parameter in the request. For example:

                                                                                                                                                                                                        *
                                                                                                                                                                                                          *
                                                                                                                                                                                                        • *

                                                                                                                                                                                                          * You specified an invalid parameter name. *

                                                                                                                                                                                                          *
                                                                                                                                                                                                        • *
                                                                                                                                                                                                        • *

                                                                                                                                                                                                          * You specified an invalid value. *

                                                                                                                                                                                                          *
                                                                                                                                                                                                        • *
                                                                                                                                                                                                        • *

                                                                                                                                                                                                          * You tried to update an object (ByteMatchSet, IPSet, Rule, or * WebACL) using an action other than INSERT or DELETE. *

                                                                                                                                                                                                          *
                                                                                                                                                                                                        • *
                                                                                                                                                                                                        • *

                                                                                                                                                                                                          * You tried to create a WebACL with a DefaultAction Type other than * ALLOW, BLOCK, or COUNT. *

                                                                                                                                                                                                          *
                                                                                                                                                                                                        • *
                                                                                                                                                                                                        • *

                                                                                                                                                                                                          * You tried to create a RateBasedRule with a RateKey value other than * IP. *

                                                                                                                                                                                                          *
                                                                                                                                                                                                        • *
                                                                                                                                                                                                        • *

                                                                                                                                                                                                          * You tried to update a WebACL with a WafAction Type other than * ALLOW, BLOCK, or COUNT. *

                                                                                                                                                                                                          *
                                                                                                                                                                                                        • *
                                                                                                                                                                                                        • *

                                                                                                                                                                                                          * You tried to update a ByteMatchSet with a FieldToMatch Type other * than HEADER, METHOD, QUERY_STRING, URI, or BODY. *

                                                                                                                                                                                                          *
                                                                                                                                                                                                        • *
                                                                                                                                                                                                        • *

                                                                                                                                                                                                          * You tried to update a ByteMatchSet with a Field of HEADER but no * value for Data. *

                                                                                                                                                                                                          *
                                                                                                                                                                                                        • *
                                                                                                                                                                                                        • *

                                                                                                                                                                                                          * Your request references an ARN that is malformed, or corresponds to a resource with which a web ACL * cannot be associated. *

                                                                                                                                                                                                          *
                                                                                                                                                                                                        • * @throws WafNonexistentContainerException * The operation failed because you tried to add an object to or delete an object from another object that * doesn't exist. For example:

                                                                                                                                                                                                          *
                                                                                                                                                                                                            *
                                                                                                                                                                                                          • *

                                                                                                                                                                                                            * You tried to add a Rule to or delete a Rule from a WebACL that * doesn't exist. *

                                                                                                                                                                                                            *
                                                                                                                                                                                                          • *
                                                                                                                                                                                                          • *

                                                                                                                                                                                                            * You tried to add a ByteMatchSet to or delete a ByteMatchSet from a * Rule that doesn't exist. *

                                                                                                                                                                                                            *
                                                                                                                                                                                                          • *
                                                                                                                                                                                                          • *

                                                                                                                                                                                                            * You tried to add an IP address to or delete an IP address from an IPSet that doesn't exist. *

                                                                                                                                                                                                            *
                                                                                                                                                                                                          • *
                                                                                                                                                                                                          • *

                                                                                                                                                                                                            * You tried to add a ByteMatchTuple to or delete a ByteMatchTuple from a * ByteMatchSet that doesn't exist. *

                                                                                                                                                                                                            *
                                                                                                                                                                                                          • * @throws WafNonexistentItemException * The operation failed because the referenced object doesn't exist. * @throws WafReferencedItemException * The operation failed because you tried to delete an object that is still in use. For example:

                                                                                                                                                                                                            *
                                                                                                                                                                                                              *
                                                                                                                                                                                                            • *

                                                                                                                                                                                                              * You tried to delete a ByteMatchSet that is still referenced by a Rule. *

                                                                                                                                                                                                              *
                                                                                                                                                                                                            • *
                                                                                                                                                                                                            • *

                                                                                                                                                                                                              * You tried to delete a Rule that is still referenced by a WebACL. *

                                                                                                                                                                                                              *
                                                                                                                                                                                                            • * @throws WafLimitsExceededException * The operation exceeds a resource limit, for example, the maximum number of WebACL objects * that you can create for an AWS account. For more information, see Limits in the AWS WAF * Developer Guide. * @throws SdkException * Base class for all exceptions that can be thrown by the SDK (both service and client). Can be used for * catch all scenarios. * @throws SdkClientException * If any client side error occurs such as an IO related failure, failure to get credentials, etc. * @throws WafException * Base class for all service exceptions. Unknown exceptions will be thrown as an instance of this type. * @sample WafClient.UpdateGeoMatchSet * @see AWS API * Documentation */ default UpdateGeoMatchSetResponse updateGeoMatchSet(Consumer updateGeoMatchSetRequest) throws WafStaleDataException, WafInternalErrorException, WafInvalidAccountException, WafInvalidOperationException, WafInvalidParameterException, WafNonexistentContainerException, WafNonexistentItemException, WafReferencedItemException, WafLimitsExceededException, AwsServiceException, SdkClientException, WafException { return updateGeoMatchSet(UpdateGeoMatchSetRequest.builder().applyMutation(updateGeoMatchSetRequest).build()); } /** * *

                                                                                                                                                                                                              * This is AWS WAF Classic documentation. For more information, see AWS WAF Classic in the * developer guide. *

                                                                                                                                                                                                              *

                                                                                                                                                                                                              * For the latest version of AWS WAF, use the AWS WAFV2 API and see the AWS WAF Developer Guide. With * the latest version, AWS WAF has a single set of endpoints for regional and global use. *

                                                                                                                                                                                                              *
                                                                                                                                                                                                              *

                                                                                                                                                                                                              * Inserts or deletes IPSetDescriptor objects in an IPSet. For each IPSetDescriptor * object, you specify the following values: *

                                                                                                                                                                                                              *
                                                                                                                                                                                                                *
                                                                                                                                                                                                              • *

                                                                                                                                                                                                                * Whether to insert or delete the object from the array. If you want to change an IPSetDescriptor * object, you delete the existing object and add a new one. *

                                                                                                                                                                                                                *
                                                                                                                                                                                                              • *
                                                                                                                                                                                                              • *

                                                                                                                                                                                                                * The IP address version, IPv4 or IPv6. *

                                                                                                                                                                                                                *
                                                                                                                                                                                                              • *
                                                                                                                                                                                                              • *

                                                                                                                                                                                                                * The IP address in CIDR notation, for example, 192.0.2.0/24 (for the range of IP addresses from * 192.0.2.0 to 192.0.2.255) or 192.0.2.44/32 (for the individual IP address * 192.0.2.44). *

                                                                                                                                                                                                                *
                                                                                                                                                                                                              • *
                                                                                                                                                                                                              *

                                                                                                                                                                                                              * AWS WAF supports IPv4 address ranges: /8 and any range between /16 through /32. AWS WAF supports IPv6 address * ranges: /24, /32, /48, /56, /64, and /128. For more information about CIDR notation, see the Wikipedia entry Classless Inter-Domain Routing. *

                                                                                                                                                                                                              *

                                                                                                                                                                                                              * IPv6 addresses can be represented using any of the following formats: *

                                                                                                                                                                                                              *
                                                                                                                                                                                                                *
                                                                                                                                                                                                              • *

                                                                                                                                                                                                                * 1111:0000:0000:0000:0000:0000:0000:0111/128 *

                                                                                                                                                                                                                *
                                                                                                                                                                                                              • *
                                                                                                                                                                                                              • *

                                                                                                                                                                                                                * 1111:0:0:0:0:0:0:0111/128 *

                                                                                                                                                                                                                *
                                                                                                                                                                                                              • *
                                                                                                                                                                                                              • *

                                                                                                                                                                                                                * 1111::0111/128 *

                                                                                                                                                                                                                *
                                                                                                                                                                                                              • *
                                                                                                                                                                                                              • *

                                                                                                                                                                                                                * 1111::111/128 *

                                                                                                                                                                                                                *
                                                                                                                                                                                                              • *
                                                                                                                                                                                                              *

                                                                                                                                                                                                              * You use an IPSet to specify which web requests you want to allow or block based on the IP addresses * that the requests originated from. For example, if you're receiving a lot of requests from one or a small number * of IP addresses and you want to block the requests, you can create an IPSet that specifies those IP * addresses, and then configure AWS WAF to block the requests. *

                                                                                                                                                                                                              *

                                                                                                                                                                                                              * To create and configure an IPSet, perform the following steps: *

                                                                                                                                                                                                              *
                                                                                                                                                                                                                *
                                                                                                                                                                                                              1. *

                                                                                                                                                                                                                * Submit a CreateIPSet request. *

                                                                                                                                                                                                                *
                                                                                                                                                                                                              2. *
                                                                                                                                                                                                              3. *

                                                                                                                                                                                                                * Use GetChangeToken to get the change token that you provide in the ChangeToken parameter of * an UpdateIPSet request. *

                                                                                                                                                                                                                *
                                                                                                                                                                                                              4. *
                                                                                                                                                                                                              5. *

                                                                                                                                                                                                                * Submit an UpdateIPSet request to specify the IP addresses that you want AWS WAF to watch for. *

                                                                                                                                                                                                                *
                                                                                                                                                                                                              6. *
                                                                                                                                                                                                              *

                                                                                                                                                                                                              * When you update an IPSet, you specify the IP addresses that you want to add and/or the IP addresses * that you want to delete. If you want to change an IP address, you delete the existing IP address and add the new * one. *

                                                                                                                                                                                                              *

                                                                                                                                                                                                              * You can insert a maximum of 1000 addresses in a single request. *

                                                                                                                                                                                                              *

                                                                                                                                                                                                              * For more information about how to use the AWS WAF API to allow or block HTTP requests, see the AWS WAF Developer Guide. *

                                                                                                                                                                                                              * * @param updateIpSetRequest * @return Result of the UpdateIPSet operation returned by the service. * @throws WafStaleDataException * The operation failed because you tried to create, update, or delete an object by using a change token * that has already been used. * @throws WafInternalErrorException * The operation failed because of a system problem, even though the request was valid. Retry your request. * @throws WafInvalidAccountException * The operation failed because you tried to create, update, or delete an object by using an invalid account * identifier. * @throws WafInvalidOperationException * The operation failed because there was nothing to do. For example:

                                                                                                                                                                                                              *
                                                                                                                                                                                                                *
                                                                                                                                                                                                              • *

                                                                                                                                                                                                                * You tried to remove a Rule from a WebACL, but the Rule isn't in * the specified WebACL. *

                                                                                                                                                                                                                *
                                                                                                                                                                                                              • *
                                                                                                                                                                                                              • *

                                                                                                                                                                                                                * You tried to remove an IP address from an IPSet, but the IP address isn't in the specified * IPSet. *

                                                                                                                                                                                                                *
                                                                                                                                                                                                              • *
                                                                                                                                                                                                              • *

                                                                                                                                                                                                                * You tried to remove a ByteMatchTuple from a ByteMatchSet, but the * ByteMatchTuple isn't in the specified WebACL. *

                                                                                                                                                                                                                *
                                                                                                                                                                                                              • *
                                                                                                                                                                                                              • *

                                                                                                                                                                                                                * You tried to add a Rule to a WebACL, but the Rule already exists * in the specified WebACL. *

                                                                                                                                                                                                                *
                                                                                                                                                                                                              • *
                                                                                                                                                                                                              • *

                                                                                                                                                                                                                * You tried to add a ByteMatchTuple to a ByteMatchSet, but the * ByteMatchTuple already exists in the specified WebACL. *

                                                                                                                                                                                                                *
                                                                                                                                                                                                              • * @throws WafInvalidParameterException * The operation failed because AWS WAF didn't recognize a parameter in the request. For example:

                                                                                                                                                                                                                *
                                                                                                                                                                                                                  *
                                                                                                                                                                                                                • *

                                                                                                                                                                                                                  * You specified an invalid parameter name. *

                                                                                                                                                                                                                  *
                                                                                                                                                                                                                • *
                                                                                                                                                                                                                • *

                                                                                                                                                                                                                  * You specified an invalid value. *

                                                                                                                                                                                                                  *
                                                                                                                                                                                                                • *
                                                                                                                                                                                                                • *

                                                                                                                                                                                                                  * You tried to update an object (ByteMatchSet, IPSet, Rule, or * WebACL) using an action other than INSERT or DELETE. *

                                                                                                                                                                                                                  *
                                                                                                                                                                                                                • *
                                                                                                                                                                                                                • *

                                                                                                                                                                                                                  * You tried to create a WebACL with a DefaultAction Type other than * ALLOW, BLOCK, or COUNT. *

                                                                                                                                                                                                                  *
                                                                                                                                                                                                                • *
                                                                                                                                                                                                                • *

                                                                                                                                                                                                                  * You tried to create a RateBasedRule with a RateKey value other than * IP. *

                                                                                                                                                                                                                  *
                                                                                                                                                                                                                • *
                                                                                                                                                                                                                • *

                                                                                                                                                                                                                  * You tried to update a WebACL with a WafAction Type other than * ALLOW, BLOCK, or COUNT. *

                                                                                                                                                                                                                  *
                                                                                                                                                                                                                • *
                                                                                                                                                                                                                • *

                                                                                                                                                                                                                  * You tried to update a ByteMatchSet with a FieldToMatch Type other * than HEADER, METHOD, QUERY_STRING, URI, or BODY. *

                                                                                                                                                                                                                  *
                                                                                                                                                                                                                • *
                                                                                                                                                                                                                • *

                                                                                                                                                                                                                  * You tried to update a ByteMatchSet with a Field of HEADER but no * value for Data. *

                                                                                                                                                                                                                  *
                                                                                                                                                                                                                • *
                                                                                                                                                                                                                • *

                                                                                                                                                                                                                  * Your request references an ARN that is malformed, or corresponds to a resource with which a web ACL * cannot be associated. *

                                                                                                                                                                                                                  *
                                                                                                                                                                                                                • * @throws WafNonexistentContainerException * The operation failed because you tried to add an object to or delete an object from another object that * doesn't exist. For example:

                                                                                                                                                                                                                  *
                                                                                                                                                                                                                    *
                                                                                                                                                                                                                  • *

                                                                                                                                                                                                                    * You tried to add a Rule to or delete a Rule from a WebACL that * doesn't exist. *

                                                                                                                                                                                                                    *
                                                                                                                                                                                                                  • *
                                                                                                                                                                                                                  • *

                                                                                                                                                                                                                    * You tried to add a ByteMatchSet to or delete a ByteMatchSet from a * Rule that doesn't exist. *

                                                                                                                                                                                                                    *
                                                                                                                                                                                                                  • *
                                                                                                                                                                                                                  • *

                                                                                                                                                                                                                    * You tried to add an IP address to or delete an IP address from an IPSet that doesn't exist. *

                                                                                                                                                                                                                    *
                                                                                                                                                                                                                  • *
                                                                                                                                                                                                                  • *

                                                                                                                                                                                                                    * You tried to add a ByteMatchTuple to or delete a ByteMatchTuple from a * ByteMatchSet that doesn't exist. *

                                                                                                                                                                                                                    *
                                                                                                                                                                                                                  • * @throws WafNonexistentItemException * The operation failed because the referenced object doesn't exist. * @throws WafReferencedItemException * The operation failed because you tried to delete an object that is still in use. For example:

                                                                                                                                                                                                                    *
                                                                                                                                                                                                                      *
                                                                                                                                                                                                                    • *

                                                                                                                                                                                                                      * You tried to delete a ByteMatchSet that is still referenced by a Rule. *

                                                                                                                                                                                                                      *
                                                                                                                                                                                                                    • *
                                                                                                                                                                                                                    • *

                                                                                                                                                                                                                      * You tried to delete a Rule that is still referenced by a WebACL. *

                                                                                                                                                                                                                      *
                                                                                                                                                                                                                    • * @throws WafLimitsExceededException * The operation exceeds a resource limit, for example, the maximum number of WebACL objects * that you can create for an AWS account. For more information, see Limits in the AWS WAF * Developer Guide. * @throws SdkException * Base class for all exceptions that can be thrown by the SDK (both service and client). Can be used for * catch all scenarios. * @throws SdkClientException * If any client side error occurs such as an IO related failure, failure to get credentials, etc. * @throws WafException * Base class for all service exceptions. Unknown exceptions will be thrown as an instance of this type. * @sample WafClient.UpdateIPSet * @see AWS API * Documentation */ default UpdateIpSetResponse updateIPSet(UpdateIpSetRequest updateIpSetRequest) throws WafStaleDataException, WafInternalErrorException, WafInvalidAccountException, WafInvalidOperationException, WafInvalidParameterException, WafNonexistentContainerException, WafNonexistentItemException, WafReferencedItemException, WafLimitsExceededException, AwsServiceException, SdkClientException, WafException { throw new UnsupportedOperationException(); } /** * *

                                                                                                                                                                                                                      * This is AWS WAF Classic documentation. For more information, see AWS WAF Classic in the * developer guide. *

                                                                                                                                                                                                                      *

                                                                                                                                                                                                                      * For the latest version of AWS WAF, use the AWS WAFV2 API and see the AWS WAF Developer Guide. With * the latest version, AWS WAF has a single set of endpoints for regional and global use. *

                                                                                                                                                                                                                      *
                                                                                                                                                                                                                      *

                                                                                                                                                                                                                      * Inserts or deletes IPSetDescriptor objects in an IPSet. For each IPSetDescriptor * object, you specify the following values: *

                                                                                                                                                                                                                      *
                                                                                                                                                                                                                        *
                                                                                                                                                                                                                      • *

                                                                                                                                                                                                                        * Whether to insert or delete the object from the array. If you want to change an IPSetDescriptor * object, you delete the existing object and add a new one. *

                                                                                                                                                                                                                        *
                                                                                                                                                                                                                      • *
                                                                                                                                                                                                                      • *

                                                                                                                                                                                                                        * The IP address version, IPv4 or IPv6. *

                                                                                                                                                                                                                        *
                                                                                                                                                                                                                      • *
                                                                                                                                                                                                                      • *

                                                                                                                                                                                                                        * The IP address in CIDR notation, for example, 192.0.2.0/24 (for the range of IP addresses from * 192.0.2.0 to 192.0.2.255) or 192.0.2.44/32 (for the individual IP address * 192.0.2.44). *

                                                                                                                                                                                                                        *
                                                                                                                                                                                                                      • *
                                                                                                                                                                                                                      *

                                                                                                                                                                                                                      * AWS WAF supports IPv4 address ranges: /8 and any range between /16 through /32. AWS WAF supports IPv6 address * ranges: /24, /32, /48, /56, /64, and /128. For more information about CIDR notation, see the Wikipedia entry Classless Inter-Domain Routing. *

                                                                                                                                                                                                                      *

                                                                                                                                                                                                                      * IPv6 addresses can be represented using any of the following formats: *

                                                                                                                                                                                                                      *
                                                                                                                                                                                                                        *
                                                                                                                                                                                                                      • *

                                                                                                                                                                                                                        * 1111:0000:0000:0000:0000:0000:0000:0111/128 *

                                                                                                                                                                                                                        *
                                                                                                                                                                                                                      • *
                                                                                                                                                                                                                      • *

                                                                                                                                                                                                                        * 1111:0:0:0:0:0:0:0111/128 *

                                                                                                                                                                                                                        *
                                                                                                                                                                                                                      • *
                                                                                                                                                                                                                      • *

                                                                                                                                                                                                                        * 1111::0111/128 *

                                                                                                                                                                                                                        *
                                                                                                                                                                                                                      • *
                                                                                                                                                                                                                      • *

                                                                                                                                                                                                                        * 1111::111/128 *

                                                                                                                                                                                                                        *
                                                                                                                                                                                                                      • *
                                                                                                                                                                                                                      *

                                                                                                                                                                                                                      * You use an IPSet to specify which web requests you want to allow or block based on the IP addresses * that the requests originated from. For example, if you're receiving a lot of requests from one or a small number * of IP addresses and you want to block the requests, you can create an IPSet that specifies those IP * addresses, and then configure AWS WAF to block the requests. *

                                                                                                                                                                                                                      *

                                                                                                                                                                                                                      * To create and configure an IPSet, perform the following steps: *

                                                                                                                                                                                                                      *
                                                                                                                                                                                                                        *
                                                                                                                                                                                                                      1. *

                                                                                                                                                                                                                        * Submit a CreateIPSet request. *

                                                                                                                                                                                                                        *
                                                                                                                                                                                                                      2. *
                                                                                                                                                                                                                      3. *

                                                                                                                                                                                                                        * Use GetChangeToken to get the change token that you provide in the ChangeToken parameter of * an UpdateIPSet request. *

                                                                                                                                                                                                                        *
                                                                                                                                                                                                                      4. *
                                                                                                                                                                                                                      5. *

                                                                                                                                                                                                                        * Submit an UpdateIPSet request to specify the IP addresses that you want AWS WAF to watch for. *

                                                                                                                                                                                                                        *
                                                                                                                                                                                                                      6. *
                                                                                                                                                                                                                      *

                                                                                                                                                                                                                      * When you update an IPSet, you specify the IP addresses that you want to add and/or the IP addresses * that you want to delete. If you want to change an IP address, you delete the existing IP address and add the new * one. *

                                                                                                                                                                                                                      *

                                                                                                                                                                                                                      * You can insert a maximum of 1000 addresses in a single request. *

                                                                                                                                                                                                                      *

                                                                                                                                                                                                                      * For more information about how to use the AWS WAF API to allow or block HTTP requests, see the AWS WAF Developer Guide. *

                                                                                                                                                                                                                      *
                                                                                                                                                                                                                      *

                                                                                                                                                                                                                      * This is a convenience which creates an instance of the {@link UpdateIpSetRequest.Builder} avoiding the need to * create one manually via {@link UpdateIpSetRequest#builder()} *

                                                                                                                                                                                                                      * * @param updateIpSetRequest * A {@link Consumer} that will call methods on * {@link software.amazon.awssdk.services.waf.model.UpdateIpSetRequest.Builder} to create a request. * @return Result of the UpdateIPSet operation returned by the service. * @throws WafStaleDataException * The operation failed because you tried to create, update, or delete an object by using a change token * that has already been used. * @throws WafInternalErrorException * The operation failed because of a system problem, even though the request was valid. Retry your request. * @throws WafInvalidAccountException * The operation failed because you tried to create, update, or delete an object by using an invalid account * identifier. * @throws WafInvalidOperationException * The operation failed because there was nothing to do. For example:

                                                                                                                                                                                                                      *
                                                                                                                                                                                                                        *
                                                                                                                                                                                                                      • *

                                                                                                                                                                                                                        * You tried to remove a Rule from a WebACL, but the Rule isn't in * the specified WebACL. *

                                                                                                                                                                                                                        *
                                                                                                                                                                                                                      • *
                                                                                                                                                                                                                      • *

                                                                                                                                                                                                                        * You tried to remove an IP address from an IPSet, but the IP address isn't in the specified * IPSet. *

                                                                                                                                                                                                                        *
                                                                                                                                                                                                                      • *
                                                                                                                                                                                                                      • *

                                                                                                                                                                                                                        * You tried to remove a ByteMatchTuple from a ByteMatchSet, but the * ByteMatchTuple isn't in the specified WebACL. *

                                                                                                                                                                                                                        *
                                                                                                                                                                                                                      • *
                                                                                                                                                                                                                      • *

                                                                                                                                                                                                                        * You tried to add a Rule to a WebACL, but the Rule already exists * in the specified WebACL. *

                                                                                                                                                                                                                        *
                                                                                                                                                                                                                      • *
                                                                                                                                                                                                                      • *

                                                                                                                                                                                                                        * You tried to add a ByteMatchTuple to a ByteMatchSet, but the * ByteMatchTuple already exists in the specified WebACL. *

                                                                                                                                                                                                                        *
                                                                                                                                                                                                                      • * @throws WafInvalidParameterException * The operation failed because AWS WAF didn't recognize a parameter in the request. For example:

                                                                                                                                                                                                                        *
                                                                                                                                                                                                                          *
                                                                                                                                                                                                                        • *

                                                                                                                                                                                                                          * You specified an invalid parameter name. *

                                                                                                                                                                                                                          *
                                                                                                                                                                                                                        • *
                                                                                                                                                                                                                        • *

                                                                                                                                                                                                                          * You specified an invalid value. *

                                                                                                                                                                                                                          *
                                                                                                                                                                                                                        • *
                                                                                                                                                                                                                        • *

                                                                                                                                                                                                                          * You tried to update an object (ByteMatchSet, IPSet, Rule, or * WebACL) using an action other than INSERT or DELETE. *

                                                                                                                                                                                                                          *
                                                                                                                                                                                                                        • *
                                                                                                                                                                                                                        • *

                                                                                                                                                                                                                          * You tried to create a WebACL with a DefaultAction Type other than * ALLOW, BLOCK, or COUNT. *

                                                                                                                                                                                                                          *
                                                                                                                                                                                                                        • *
                                                                                                                                                                                                                        • *

                                                                                                                                                                                                                          * You tried to create a RateBasedRule with a RateKey value other than * IP. *

                                                                                                                                                                                                                          *
                                                                                                                                                                                                                        • *
                                                                                                                                                                                                                        • *

                                                                                                                                                                                                                          * You tried to update a WebACL with a WafAction Type other than * ALLOW, BLOCK, or COUNT. *

                                                                                                                                                                                                                          *
                                                                                                                                                                                                                        • *
                                                                                                                                                                                                                        • *

                                                                                                                                                                                                                          * You tried to update a ByteMatchSet with a FieldToMatch Type other * than HEADER, METHOD, QUERY_STRING, URI, or BODY. *

                                                                                                                                                                                                                          *
                                                                                                                                                                                                                        • *
                                                                                                                                                                                                                        • *

                                                                                                                                                                                                                          * You tried to update a ByteMatchSet with a Field of HEADER but no * value for Data. *

                                                                                                                                                                                                                          *
                                                                                                                                                                                                                        • *
                                                                                                                                                                                                                        • *

                                                                                                                                                                                                                          * Your request references an ARN that is malformed, or corresponds to a resource with which a web ACL * cannot be associated. *

                                                                                                                                                                                                                          *
                                                                                                                                                                                                                        • * @throws WafNonexistentContainerException * The operation failed because you tried to add an object to or delete an object from another object that * doesn't exist. For example:

                                                                                                                                                                                                                          *
                                                                                                                                                                                                                            *
                                                                                                                                                                                                                          • *

                                                                                                                                                                                                                            * You tried to add a Rule to or delete a Rule from a WebACL that * doesn't exist. *

                                                                                                                                                                                                                            *
                                                                                                                                                                                                                          • *
                                                                                                                                                                                                                          • *

                                                                                                                                                                                                                            * You tried to add a ByteMatchSet to or delete a ByteMatchSet from a * Rule that doesn't exist. *

                                                                                                                                                                                                                            *
                                                                                                                                                                                                                          • *
                                                                                                                                                                                                                          • *

                                                                                                                                                                                                                            * You tried to add an IP address to or delete an IP address from an IPSet that doesn't exist. *

                                                                                                                                                                                                                            *
                                                                                                                                                                                                                          • *
                                                                                                                                                                                                                          • *

                                                                                                                                                                                                                            * You tried to add a ByteMatchTuple to or delete a ByteMatchTuple from a * ByteMatchSet that doesn't exist. *

                                                                                                                                                                                                                            *
                                                                                                                                                                                                                          • * @throws WafNonexistentItemException * The operation failed because the referenced object doesn't exist. * @throws WafReferencedItemException * The operation failed because you tried to delete an object that is still in use. For example:

                                                                                                                                                                                                                            *
                                                                                                                                                                                                                              *
                                                                                                                                                                                                                            • *

                                                                                                                                                                                                                              * You tried to delete a ByteMatchSet that is still referenced by a Rule. *

                                                                                                                                                                                                                              *
                                                                                                                                                                                                                            • *
                                                                                                                                                                                                                            • *

                                                                                                                                                                                                                              * You tried to delete a Rule that is still referenced by a WebACL. *

                                                                                                                                                                                                                              *
                                                                                                                                                                                                                            • * @throws WafLimitsExceededException * The operation exceeds a resource limit, for example, the maximum number of WebACL objects * that you can create for an AWS account. For more information, see Limits in the AWS WAF * Developer Guide. * @throws SdkException * Base class for all exceptions that can be thrown by the SDK (both service and client). Can be used for * catch all scenarios. * @throws SdkClientException * If any client side error occurs such as an IO related failure, failure to get credentials, etc. * @throws WafException * Base class for all service exceptions. Unknown exceptions will be thrown as an instance of this type. * @sample WafClient.UpdateIPSet * @see AWS API * Documentation */ default UpdateIpSetResponse updateIPSet(Consumer updateIpSetRequest) throws WafStaleDataException, WafInternalErrorException, WafInvalidAccountException, WafInvalidOperationException, WafInvalidParameterException, WafNonexistentContainerException, WafNonexistentItemException, WafReferencedItemException, WafLimitsExceededException, AwsServiceException, SdkClientException, WafException { return updateIPSet(UpdateIpSetRequest.builder().applyMutation(updateIpSetRequest).build()); } /** * *

                                                                                                                                                                                                                              * This is AWS WAF Classic documentation. For more information, see AWS WAF Classic in the * developer guide. *

                                                                                                                                                                                                                              *

                                                                                                                                                                                                                              * For the latest version of AWS WAF, use the AWS WAFV2 API and see the AWS WAF Developer Guide. With * the latest version, AWS WAF has a single set of endpoints for regional and global use. *

                                                                                                                                                                                                                              *
                                                                                                                                                                                                                              *

                                                                                                                                                                                                                              * Inserts or deletes Predicate objects in a rule and updates the RateLimit in the rule. *

                                                                                                                                                                                                                              *

                                                                                                                                                                                                                              * Each Predicate object identifies a predicate, such as a ByteMatchSet or an IPSet, that * specifies the web requests that you want to block or count. The RateLimit specifies the number of * requests every five minutes that triggers the rule. *

                                                                                                                                                                                                                              *

                                                                                                                                                                                                                              * If you add more than one predicate to a RateBasedRule, a request must match all the predicates and * exceed the RateLimit to be counted or blocked. For example, suppose you add the following to a * RateBasedRule: *

                                                                                                                                                                                                                              *
                                                                                                                                                                                                                                *
                                                                                                                                                                                                                              • *

                                                                                                                                                                                                                                * An IPSet that matches the IP address 192.0.2.44/32 *

                                                                                                                                                                                                                                *
                                                                                                                                                                                                                              • *
                                                                                                                                                                                                                              • *

                                                                                                                                                                                                                                * A ByteMatchSet that matches BadBot in the User-Agent header *

                                                                                                                                                                                                                                *
                                                                                                                                                                                                                              • *
                                                                                                                                                                                                                              *

                                                                                                                                                                                                                              * Further, you specify a RateLimit of 1,000. *

                                                                                                                                                                                                                              *

                                                                                                                                                                                                                              * You then add the RateBasedRule to a WebACL and specify that you want to block requests * that satisfy the rule. For a request to be blocked, it must come from the IP address 192.0.2.44 and the * User-Agent header in the request must contain the value BadBot. Further, requests that * match these two conditions much be received at a rate of more than 1,000 every five minutes. If the rate drops * below this limit, AWS WAF no longer blocks the requests. *

                                                                                                                                                                                                                              *

                                                                                                                                                                                                                              * As a second example, suppose you want to limit requests to a particular page on your site. To do this, you could * add the following to a RateBasedRule: *

                                                                                                                                                                                                                              *
                                                                                                                                                                                                                                *
                                                                                                                                                                                                                              • *

                                                                                                                                                                                                                                * A ByteMatchSet with FieldToMatch of URI *

                                                                                                                                                                                                                                *
                                                                                                                                                                                                                              • *
                                                                                                                                                                                                                              • *

                                                                                                                                                                                                                                * A PositionalConstraint of STARTS_WITH *

                                                                                                                                                                                                                                *
                                                                                                                                                                                                                              • *
                                                                                                                                                                                                                              • *

                                                                                                                                                                                                                                * A TargetString of login *

                                                                                                                                                                                                                                *
                                                                                                                                                                                                                              • *
                                                                                                                                                                                                                              *

                                                                                                                                                                                                                              * Further, you specify a RateLimit of 1,000. *

                                                                                                                                                                                                                              *

                                                                                                                                                                                                                              * By adding this RateBasedRule to a WebACL, you could limit requests to your login page * without affecting the rest of your site. *

                                                                                                                                                                                                                              * * @param updateRateBasedRuleRequest * @return Result of the UpdateRateBasedRule operation returned by the service. * @throws WafStaleDataException * The operation failed because you tried to create, update, or delete an object by using a change token * that has already been used. * @throws WafInternalErrorException * The operation failed because of a system problem, even though the request was valid. Retry your request. * @throws WafInvalidAccountException * The operation failed because you tried to create, update, or delete an object by using an invalid account * identifier. * @throws WafInvalidOperationException * The operation failed because there was nothing to do. For example:

                                                                                                                                                                                                                              *
                                                                                                                                                                                                                                *
                                                                                                                                                                                                                              • *

                                                                                                                                                                                                                                * You tried to remove a Rule from a WebACL, but the Rule isn't in * the specified WebACL. *

                                                                                                                                                                                                                                *
                                                                                                                                                                                                                              • *
                                                                                                                                                                                                                              • *

                                                                                                                                                                                                                                * You tried to remove an IP address from an IPSet, but the IP address isn't in the specified * IPSet. *

                                                                                                                                                                                                                                *
                                                                                                                                                                                                                              • *
                                                                                                                                                                                                                              • *

                                                                                                                                                                                                                                * You tried to remove a ByteMatchTuple from a ByteMatchSet, but the * ByteMatchTuple isn't in the specified WebACL. *

                                                                                                                                                                                                                                *
                                                                                                                                                                                                                              • *
                                                                                                                                                                                                                              • *

                                                                                                                                                                                                                                * You tried to add a Rule to a WebACL, but the Rule already exists * in the specified WebACL. *

                                                                                                                                                                                                                                *
                                                                                                                                                                                                                              • *
                                                                                                                                                                                                                              • *

                                                                                                                                                                                                                                * You tried to add a ByteMatchTuple to a ByteMatchSet, but the * ByteMatchTuple already exists in the specified WebACL. *

                                                                                                                                                                                                                                *
                                                                                                                                                                                                                              • * @throws WafInvalidParameterException * The operation failed because AWS WAF didn't recognize a parameter in the request. For example:

                                                                                                                                                                                                                                *
                                                                                                                                                                                                                                  *
                                                                                                                                                                                                                                • *

                                                                                                                                                                                                                                  * You specified an invalid parameter name. *

                                                                                                                                                                                                                                  *
                                                                                                                                                                                                                                • *
                                                                                                                                                                                                                                • *

                                                                                                                                                                                                                                  * You specified an invalid value. *

                                                                                                                                                                                                                                  *
                                                                                                                                                                                                                                • *
                                                                                                                                                                                                                                • *

                                                                                                                                                                                                                                  * You tried to update an object (ByteMatchSet, IPSet, Rule, or * WebACL) using an action other than INSERT or DELETE. *

                                                                                                                                                                                                                                  *
                                                                                                                                                                                                                                • *
                                                                                                                                                                                                                                • *

                                                                                                                                                                                                                                  * You tried to create a WebACL with a DefaultAction Type other than * ALLOW, BLOCK, or COUNT. *

                                                                                                                                                                                                                                  *
                                                                                                                                                                                                                                • *
                                                                                                                                                                                                                                • *

                                                                                                                                                                                                                                  * You tried to create a RateBasedRule with a RateKey value other than * IP. *

                                                                                                                                                                                                                                  *
                                                                                                                                                                                                                                • *
                                                                                                                                                                                                                                • *

                                                                                                                                                                                                                                  * You tried to update a WebACL with a WafAction Type other than * ALLOW, BLOCK, or COUNT. *

                                                                                                                                                                                                                                  *
                                                                                                                                                                                                                                • *
                                                                                                                                                                                                                                • *

                                                                                                                                                                                                                                  * You tried to update a ByteMatchSet with a FieldToMatch Type other * than HEADER, METHOD, QUERY_STRING, URI, or BODY. *

                                                                                                                                                                                                                                  *
                                                                                                                                                                                                                                • *
                                                                                                                                                                                                                                • *

                                                                                                                                                                                                                                  * You tried to update a ByteMatchSet with a Field of HEADER but no * value for Data. *

                                                                                                                                                                                                                                  *
                                                                                                                                                                                                                                • *
                                                                                                                                                                                                                                • *

                                                                                                                                                                                                                                  * Your request references an ARN that is malformed, or corresponds to a resource with which a web ACL * cannot be associated. *

                                                                                                                                                                                                                                  *
                                                                                                                                                                                                                                • * @throws WafNonexistentContainerException * The operation failed because you tried to add an object to or delete an object from another object that * doesn't exist. For example:

                                                                                                                                                                                                                                  *
                                                                                                                                                                                                                                    *
                                                                                                                                                                                                                                  • *

                                                                                                                                                                                                                                    * You tried to add a Rule to or delete a Rule from a WebACL that * doesn't exist. *

                                                                                                                                                                                                                                    *
                                                                                                                                                                                                                                  • *
                                                                                                                                                                                                                                  • *

                                                                                                                                                                                                                                    * You tried to add a ByteMatchSet to or delete a ByteMatchSet from a * Rule that doesn't exist. *

                                                                                                                                                                                                                                    *
                                                                                                                                                                                                                                  • *
                                                                                                                                                                                                                                  • *

                                                                                                                                                                                                                                    * You tried to add an IP address to or delete an IP address from an IPSet that doesn't exist. *

                                                                                                                                                                                                                                    *
                                                                                                                                                                                                                                  • *
                                                                                                                                                                                                                                  • *

                                                                                                                                                                                                                                    * You tried to add a ByteMatchTuple to or delete a ByteMatchTuple from a * ByteMatchSet that doesn't exist. *

                                                                                                                                                                                                                                    *
                                                                                                                                                                                                                                  • * @throws WafNonexistentItemException * The operation failed because the referenced object doesn't exist. * @throws WafReferencedItemException * The operation failed because you tried to delete an object that is still in use. For example:

                                                                                                                                                                                                                                    *
                                                                                                                                                                                                                                      *
                                                                                                                                                                                                                                    • *

                                                                                                                                                                                                                                      * You tried to delete a ByteMatchSet that is still referenced by a Rule. *

                                                                                                                                                                                                                                      *
                                                                                                                                                                                                                                    • *
                                                                                                                                                                                                                                    • *

                                                                                                                                                                                                                                      * You tried to delete a Rule that is still referenced by a WebACL. *

                                                                                                                                                                                                                                      *
                                                                                                                                                                                                                                    • * @throws WafLimitsExceededException * The operation exceeds a resource limit, for example, the maximum number of WebACL objects * that you can create for an AWS account. For more information, see Limits in the AWS WAF * Developer Guide. * @throws SdkException * Base class for all exceptions that can be thrown by the SDK (both service and client). Can be used for * catch all scenarios. * @throws SdkClientException * If any client side error occurs such as an IO related failure, failure to get credentials, etc. * @throws WafException * Base class for all service exceptions. Unknown exceptions will be thrown as an instance of this type. * @sample WafClient.UpdateRateBasedRule * @see AWS API * Documentation */ default UpdateRateBasedRuleResponse updateRateBasedRule(UpdateRateBasedRuleRequest updateRateBasedRuleRequest) throws WafStaleDataException, WafInternalErrorException, WafInvalidAccountException, WafInvalidOperationException, WafInvalidParameterException, WafNonexistentContainerException, WafNonexistentItemException, WafReferencedItemException, WafLimitsExceededException, AwsServiceException, SdkClientException, WafException { throw new UnsupportedOperationException(); } /** * *

                                                                                                                                                                                                                                      * This is AWS WAF Classic documentation. For more information, see AWS WAF Classic in the * developer guide. *

                                                                                                                                                                                                                                      *

                                                                                                                                                                                                                                      * For the latest version of AWS WAF, use the AWS WAFV2 API and see the AWS WAF Developer Guide. With * the latest version, AWS WAF has a single set of endpoints for regional and global use. *

                                                                                                                                                                                                                                      *
                                                                                                                                                                                                                                      *

                                                                                                                                                                                                                                      * Inserts or deletes Predicate objects in a rule and updates the RateLimit in the rule. *

                                                                                                                                                                                                                                      *

                                                                                                                                                                                                                                      * Each Predicate object identifies a predicate, such as a ByteMatchSet or an IPSet, that * specifies the web requests that you want to block or count. The RateLimit specifies the number of * requests every five minutes that triggers the rule. *

                                                                                                                                                                                                                                      *

                                                                                                                                                                                                                                      * If you add more than one predicate to a RateBasedRule, a request must match all the predicates and * exceed the RateLimit to be counted or blocked. For example, suppose you add the following to a * RateBasedRule: *

                                                                                                                                                                                                                                      *
                                                                                                                                                                                                                                        *
                                                                                                                                                                                                                                      • *

                                                                                                                                                                                                                                        * An IPSet that matches the IP address 192.0.2.44/32 *

                                                                                                                                                                                                                                        *
                                                                                                                                                                                                                                      • *
                                                                                                                                                                                                                                      • *

                                                                                                                                                                                                                                        * A ByteMatchSet that matches BadBot in the User-Agent header *

                                                                                                                                                                                                                                        *
                                                                                                                                                                                                                                      • *
                                                                                                                                                                                                                                      *

                                                                                                                                                                                                                                      * Further, you specify a RateLimit of 1,000. *

                                                                                                                                                                                                                                      *

                                                                                                                                                                                                                                      * You then add the RateBasedRule to a WebACL and specify that you want to block requests * that satisfy the rule. For a request to be blocked, it must come from the IP address 192.0.2.44 and the * User-Agent header in the request must contain the value BadBot. Further, requests that * match these two conditions much be received at a rate of more than 1,000 every five minutes. If the rate drops * below this limit, AWS WAF no longer blocks the requests. *

                                                                                                                                                                                                                                      *

                                                                                                                                                                                                                                      * As a second example, suppose you want to limit requests to a particular page on your site. To do this, you could * add the following to a RateBasedRule: *

                                                                                                                                                                                                                                      *
                                                                                                                                                                                                                                        *
                                                                                                                                                                                                                                      • *

                                                                                                                                                                                                                                        * A ByteMatchSet with FieldToMatch of URI *

                                                                                                                                                                                                                                        *
                                                                                                                                                                                                                                      • *
                                                                                                                                                                                                                                      • *

                                                                                                                                                                                                                                        * A PositionalConstraint of STARTS_WITH *

                                                                                                                                                                                                                                        *
                                                                                                                                                                                                                                      • *
                                                                                                                                                                                                                                      • *

                                                                                                                                                                                                                                        * A TargetString of login *

                                                                                                                                                                                                                                        *
                                                                                                                                                                                                                                      • *
                                                                                                                                                                                                                                      *

                                                                                                                                                                                                                                      * Further, you specify a RateLimit of 1,000. *

                                                                                                                                                                                                                                      *

                                                                                                                                                                                                                                      * By adding this RateBasedRule to a WebACL, you could limit requests to your login page * without affecting the rest of your site. *

                                                                                                                                                                                                                                      *
                                                                                                                                                                                                                                      *

                                                                                                                                                                                                                                      * This is a convenience which creates an instance of the {@link UpdateRateBasedRuleRequest.Builder} avoiding the * need to create one manually via {@link UpdateRateBasedRuleRequest#builder()} *

                                                                                                                                                                                                                                      * * @param updateRateBasedRuleRequest * A {@link Consumer} that will call methods on * {@link software.amazon.awssdk.services.waf.model.UpdateRateBasedRuleRequest.Builder} to create a request. * @return Result of the UpdateRateBasedRule operation returned by the service. * @throws WafStaleDataException * The operation failed because you tried to create, update, or delete an object by using a change token * that has already been used. * @throws WafInternalErrorException * The operation failed because of a system problem, even though the request was valid. Retry your request. * @throws WafInvalidAccountException * The operation failed because you tried to create, update, or delete an object by using an invalid account * identifier. * @throws WafInvalidOperationException * The operation failed because there was nothing to do. For example:

                                                                                                                                                                                                                                      *
                                                                                                                                                                                                                                        *
                                                                                                                                                                                                                                      • *

                                                                                                                                                                                                                                        * You tried to remove a Rule from a WebACL, but the Rule isn't in * the specified WebACL. *

                                                                                                                                                                                                                                        *
                                                                                                                                                                                                                                      • *
                                                                                                                                                                                                                                      • *

                                                                                                                                                                                                                                        * You tried to remove an IP address from an IPSet, but the IP address isn't in the specified * IPSet. *

                                                                                                                                                                                                                                        *
                                                                                                                                                                                                                                      • *
                                                                                                                                                                                                                                      • *

                                                                                                                                                                                                                                        * You tried to remove a ByteMatchTuple from a ByteMatchSet, but the * ByteMatchTuple isn't in the specified WebACL. *

                                                                                                                                                                                                                                        *
                                                                                                                                                                                                                                      • *
                                                                                                                                                                                                                                      • *

                                                                                                                                                                                                                                        * You tried to add a Rule to a WebACL, but the Rule already exists * in the specified WebACL. *

                                                                                                                                                                                                                                        *
                                                                                                                                                                                                                                      • *
                                                                                                                                                                                                                                      • *

                                                                                                                                                                                                                                        * You tried to add a ByteMatchTuple to a ByteMatchSet, but the * ByteMatchTuple already exists in the specified WebACL. *

                                                                                                                                                                                                                                        *
                                                                                                                                                                                                                                      • * @throws WafInvalidParameterException * The operation failed because AWS WAF didn't recognize a parameter in the request. For example:

                                                                                                                                                                                                                                        *
                                                                                                                                                                                                                                          *
                                                                                                                                                                                                                                        • *

                                                                                                                                                                                                                                          * You specified an invalid parameter name. *

                                                                                                                                                                                                                                          *
                                                                                                                                                                                                                                        • *
                                                                                                                                                                                                                                        • *

                                                                                                                                                                                                                                          * You specified an invalid value. *

                                                                                                                                                                                                                                          *
                                                                                                                                                                                                                                        • *
                                                                                                                                                                                                                                        • *

                                                                                                                                                                                                                                          * You tried to update an object (ByteMatchSet, IPSet, Rule, or * WebACL) using an action other than INSERT or DELETE. *

                                                                                                                                                                                                                                          *
                                                                                                                                                                                                                                        • *
                                                                                                                                                                                                                                        • *

                                                                                                                                                                                                                                          * You tried to create a WebACL with a DefaultAction Type other than * ALLOW, BLOCK, or COUNT. *

                                                                                                                                                                                                                                          *
                                                                                                                                                                                                                                        • *
                                                                                                                                                                                                                                        • *

                                                                                                                                                                                                                                          * You tried to create a RateBasedRule with a RateKey value other than * IP. *

                                                                                                                                                                                                                                          *
                                                                                                                                                                                                                                        • *
                                                                                                                                                                                                                                        • *

                                                                                                                                                                                                                                          * You tried to update a WebACL with a WafAction Type other than * ALLOW, BLOCK, or COUNT. *

                                                                                                                                                                                                                                          *
                                                                                                                                                                                                                                        • *
                                                                                                                                                                                                                                        • *

                                                                                                                                                                                                                                          * You tried to update a ByteMatchSet with a FieldToMatch Type other * than HEADER, METHOD, QUERY_STRING, URI, or BODY. *

                                                                                                                                                                                                                                          *
                                                                                                                                                                                                                                        • *
                                                                                                                                                                                                                                        • *

                                                                                                                                                                                                                                          * You tried to update a ByteMatchSet with a Field of HEADER but no * value for Data. *

                                                                                                                                                                                                                                          *
                                                                                                                                                                                                                                        • *
                                                                                                                                                                                                                                        • *

                                                                                                                                                                                                                                          * Your request references an ARN that is malformed, or corresponds to a resource with which a web ACL * cannot be associated. *

                                                                                                                                                                                                                                          *
                                                                                                                                                                                                                                        • * @throws WafNonexistentContainerException * The operation failed because you tried to add an object to or delete an object from another object that * doesn't exist. For example:

                                                                                                                                                                                                                                          *
                                                                                                                                                                                                                                            *
                                                                                                                                                                                                                                          • *

                                                                                                                                                                                                                                            * You tried to add a Rule to or delete a Rule from a WebACL that * doesn't exist. *

                                                                                                                                                                                                                                            *
                                                                                                                                                                                                                                          • *
                                                                                                                                                                                                                                          • *

                                                                                                                                                                                                                                            * You tried to add a ByteMatchSet to or delete a ByteMatchSet from a * Rule that doesn't exist. *

                                                                                                                                                                                                                                            *
                                                                                                                                                                                                                                          • *
                                                                                                                                                                                                                                          • *

                                                                                                                                                                                                                                            * You tried to add an IP address to or delete an IP address from an IPSet that doesn't exist. *

                                                                                                                                                                                                                                            *
                                                                                                                                                                                                                                          • *
                                                                                                                                                                                                                                          • *

                                                                                                                                                                                                                                            * You tried to add a ByteMatchTuple to or delete a ByteMatchTuple from a * ByteMatchSet that doesn't exist. *

                                                                                                                                                                                                                                            *
                                                                                                                                                                                                                                          • * @throws WafNonexistentItemException * The operation failed because the referenced object doesn't exist. * @throws WafReferencedItemException * The operation failed because you tried to delete an object that is still in use. For example:

                                                                                                                                                                                                                                            *
                                                                                                                                                                                                                                              *
                                                                                                                                                                                                                                            • *

                                                                                                                                                                                                                                              * You tried to delete a ByteMatchSet that is still referenced by a Rule. *

                                                                                                                                                                                                                                              *
                                                                                                                                                                                                                                            • *
                                                                                                                                                                                                                                            • *

                                                                                                                                                                                                                                              * You tried to delete a Rule that is still referenced by a WebACL. *

                                                                                                                                                                                                                                              *
                                                                                                                                                                                                                                            • * @throws WafLimitsExceededException * The operation exceeds a resource limit, for example, the maximum number of WebACL objects * that you can create for an AWS account. For more information, see Limits in the AWS WAF * Developer Guide. * @throws SdkException * Base class for all exceptions that can be thrown by the SDK (both service and client). Can be used for * catch all scenarios. * @throws SdkClientException * If any client side error occurs such as an IO related failure, failure to get credentials, etc. * @throws WafException * Base class for all service exceptions. Unknown exceptions will be thrown as an instance of this type. * @sample WafClient.UpdateRateBasedRule * @see AWS API * Documentation */ default UpdateRateBasedRuleResponse updateRateBasedRule( Consumer updateRateBasedRuleRequest) throws WafStaleDataException, WafInternalErrorException, WafInvalidAccountException, WafInvalidOperationException, WafInvalidParameterException, WafNonexistentContainerException, WafNonexistentItemException, WafReferencedItemException, WafLimitsExceededException, AwsServiceException, SdkClientException, WafException { return updateRateBasedRule(UpdateRateBasedRuleRequest.builder().applyMutation(updateRateBasedRuleRequest).build()); } /** * *

                                                                                                                                                                                                                                              * This is AWS WAF Classic documentation. For more information, see AWS WAF Classic in the * developer guide. *

                                                                                                                                                                                                                                              *

                                                                                                                                                                                                                                              * For the latest version of AWS WAF, use the AWS WAFV2 API and see the AWS WAF Developer Guide. With * the latest version, AWS WAF has a single set of endpoints for regional and global use. *

                                                                                                                                                                                                                                              *
                                                                                                                                                                                                                                              *

                                                                                                                                                                                                                                              * Inserts or deletes RegexMatchTuple objects (filters) in a RegexMatchSet. For each * RegexMatchSetUpdate object, you specify the following values: *

                                                                                                                                                                                                                                              *
                                                                                                                                                                                                                                                *
                                                                                                                                                                                                                                              • *

                                                                                                                                                                                                                                                * Whether to insert or delete the object from the array. If you want to change a RegexMatchSetUpdate * object, you delete the existing object and add a new one. *

                                                                                                                                                                                                                                                *
                                                                                                                                                                                                                                              • *
                                                                                                                                                                                                                                              • *

                                                                                                                                                                                                                                                * The part of a web request that you want AWS WAF to inspectupdate, such as a query string or the value of the * User-Agent header. *

                                                                                                                                                                                                                                                *
                                                                                                                                                                                                                                              • *
                                                                                                                                                                                                                                              • *

                                                                                                                                                                                                                                                * The identifier of the pattern (a regular expression) that you want AWS WAF to look for. For more information, see * RegexPatternSet. *

                                                                                                                                                                                                                                                *
                                                                                                                                                                                                                                              • *
                                                                                                                                                                                                                                              • *

                                                                                                                                                                                                                                                * Whether to perform any conversions on the request, such as converting it to lowercase, before inspecting it for * the specified string. *

                                                                                                                                                                                                                                                *
                                                                                                                                                                                                                                              • *
                                                                                                                                                                                                                                              *

                                                                                                                                                                                                                                              * For example, you can create a RegexPatternSet that matches any requests with User-Agent * headers that contain the string B[a@]dB[o0]t. You can then configure AWS WAF to reject those * requests. *

                                                                                                                                                                                                                                              *

                                                                                                                                                                                                                                              * To create and configure a RegexMatchSet, perform the following steps: *

                                                                                                                                                                                                                                              *
                                                                                                                                                                                                                                                *
                                                                                                                                                                                                                                              1. *

                                                                                                                                                                                                                                                * Create a RegexMatchSet. For more information, see CreateRegexMatchSet. *

                                                                                                                                                                                                                                                *
                                                                                                                                                                                                                                              2. *
                                                                                                                                                                                                                                              3. *

                                                                                                                                                                                                                                                * Use GetChangeToken to get the change token that you provide in the ChangeToken parameter of * an UpdateRegexMatchSet request. *

                                                                                                                                                                                                                                                *
                                                                                                                                                                                                                                              4. *
                                                                                                                                                                                                                                              5. *

                                                                                                                                                                                                                                                * Submit an UpdateRegexMatchSet request to specify the part of the request that you want AWS WAF to * inspect (for example, the header or the URI) and the identifier of the RegexPatternSet that contain * the regular expression patters you want AWS WAF to watch for. *

                                                                                                                                                                                                                                                *
                                                                                                                                                                                                                                              6. *
                                                                                                                                                                                                                                              *

                                                                                                                                                                                                                                              * For more information about how to use the AWS WAF API to allow or block HTTP requests, see the AWS WAF Developer Guide. *

                                                                                                                                                                                                                                              * * @param updateRegexMatchSetRequest * @return Result of the UpdateRegexMatchSet operation returned by the service. * @throws WafStaleDataException * The operation failed because you tried to create, update, or delete an object by using a change token * that has already been used. * @throws WafInternalErrorException * The operation failed because of a system problem, even though the request was valid. Retry your request. * @throws WafDisallowedNameException * The name specified is invalid. * @throws WafLimitsExceededException * The operation exceeds a resource limit, for example, the maximum number of WebACL objects * that you can create for an AWS account. For more information, see Limits in the AWS WAF * Developer Guide. * @throws WafNonexistentItemException * The operation failed because the referenced object doesn't exist. * @throws WafNonexistentContainerException * The operation failed because you tried to add an object to or delete an object from another object that * doesn't exist. For example:

                                                                                                                                                                                                                                              *
                                                                                                                                                                                                                                                *
                                                                                                                                                                                                                                              • *

                                                                                                                                                                                                                                                * You tried to add a Rule to or delete a Rule from a WebACL that * doesn't exist. *

                                                                                                                                                                                                                                                *
                                                                                                                                                                                                                                              • *
                                                                                                                                                                                                                                              • *

                                                                                                                                                                                                                                                * You tried to add a ByteMatchSet to or delete a ByteMatchSet from a * Rule that doesn't exist. *

                                                                                                                                                                                                                                                *
                                                                                                                                                                                                                                              • *
                                                                                                                                                                                                                                              • *

                                                                                                                                                                                                                                                * You tried to add an IP address to or delete an IP address from an IPSet that doesn't exist. *

                                                                                                                                                                                                                                                *
                                                                                                                                                                                                                                              • *
                                                                                                                                                                                                                                              • *

                                                                                                                                                                                                                                                * You tried to add a ByteMatchTuple to or delete a ByteMatchTuple from a * ByteMatchSet that doesn't exist. *

                                                                                                                                                                                                                                                *
                                                                                                                                                                                                                                              • * @throws WafInvalidOperationException * The operation failed because there was nothing to do. For example:

                                                                                                                                                                                                                                                *
                                                                                                                                                                                                                                                  *
                                                                                                                                                                                                                                                • *

                                                                                                                                                                                                                                                  * You tried to remove a Rule from a WebACL, but the Rule isn't in * the specified WebACL. *

                                                                                                                                                                                                                                                  *
                                                                                                                                                                                                                                                • *
                                                                                                                                                                                                                                                • *

                                                                                                                                                                                                                                                  * You tried to remove an IP address from an IPSet, but the IP address isn't in the specified * IPSet. *

                                                                                                                                                                                                                                                  *
                                                                                                                                                                                                                                                • *
                                                                                                                                                                                                                                                • *

                                                                                                                                                                                                                                                  * You tried to remove a ByteMatchTuple from a ByteMatchSet, but the * ByteMatchTuple isn't in the specified WebACL. *

                                                                                                                                                                                                                                                  *
                                                                                                                                                                                                                                                • *
                                                                                                                                                                                                                                                • *

                                                                                                                                                                                                                                                  * You tried to add a Rule to a WebACL, but the Rule already exists * in the specified WebACL. *

                                                                                                                                                                                                                                                  *
                                                                                                                                                                                                                                                • *
                                                                                                                                                                                                                                                • *

                                                                                                                                                                                                                                                  * You tried to add a ByteMatchTuple to a ByteMatchSet, but the * ByteMatchTuple already exists in the specified WebACL. *

                                                                                                                                                                                                                                                  *
                                                                                                                                                                                                                                                • * @throws WafInvalidAccountException * The operation failed because you tried to create, update, or delete an object by using an invalid account * identifier. * @throws SdkException * Base class for all exceptions that can be thrown by the SDK (both service and client). Can be used for * catch all scenarios. * @throws SdkClientException * If any client side error occurs such as an IO related failure, failure to get credentials, etc. * @throws WafException * Base class for all service exceptions. Unknown exceptions will be thrown as an instance of this type. * @sample WafClient.UpdateRegexMatchSet * @see AWS API * Documentation */ default UpdateRegexMatchSetResponse updateRegexMatchSet(UpdateRegexMatchSetRequest updateRegexMatchSetRequest) throws WafStaleDataException, WafInternalErrorException, WafDisallowedNameException, WafLimitsExceededException, WafNonexistentItemException, WafNonexistentContainerException, WafInvalidOperationException, WafInvalidAccountException, AwsServiceException, SdkClientException, WafException { throw new UnsupportedOperationException(); } /** * *

                                                                                                                                                                                                                                                  * This is AWS WAF Classic documentation. For more information, see AWS WAF Classic in the * developer guide. *

                                                                                                                                                                                                                                                  *

                                                                                                                                                                                                                                                  * For the latest version of AWS WAF, use the AWS WAFV2 API and see the AWS WAF Developer Guide. With * the latest version, AWS WAF has a single set of endpoints for regional and global use. *

                                                                                                                                                                                                                                                  *
                                                                                                                                                                                                                                                  *

                                                                                                                                                                                                                                                  * Inserts or deletes RegexMatchTuple objects (filters) in a RegexMatchSet. For each * RegexMatchSetUpdate object, you specify the following values: *

                                                                                                                                                                                                                                                  *
                                                                                                                                                                                                                                                    *
                                                                                                                                                                                                                                                  • *

                                                                                                                                                                                                                                                    * Whether to insert or delete the object from the array. If you want to change a RegexMatchSetUpdate * object, you delete the existing object and add a new one. *

                                                                                                                                                                                                                                                    *
                                                                                                                                                                                                                                                  • *
                                                                                                                                                                                                                                                  • *

                                                                                                                                                                                                                                                    * The part of a web request that you want AWS WAF to inspectupdate, such as a query string or the value of the * User-Agent header. *

                                                                                                                                                                                                                                                    *
                                                                                                                                                                                                                                                  • *
                                                                                                                                                                                                                                                  • *

                                                                                                                                                                                                                                                    * The identifier of the pattern (a regular expression) that you want AWS WAF to look for. For more information, see * RegexPatternSet. *

                                                                                                                                                                                                                                                    *
                                                                                                                                                                                                                                                  • *
                                                                                                                                                                                                                                                  • *

                                                                                                                                                                                                                                                    * Whether to perform any conversions on the request, such as converting it to lowercase, before inspecting it for * the specified string. *

                                                                                                                                                                                                                                                    *
                                                                                                                                                                                                                                                  • *
                                                                                                                                                                                                                                                  *

                                                                                                                                                                                                                                                  * For example, you can create a RegexPatternSet that matches any requests with User-Agent * headers that contain the string B[a@]dB[o0]t. You can then configure AWS WAF to reject those * requests. *

                                                                                                                                                                                                                                                  *

                                                                                                                                                                                                                                                  * To create and configure a RegexMatchSet, perform the following steps: *

                                                                                                                                                                                                                                                  *
                                                                                                                                                                                                                                                    *
                                                                                                                                                                                                                                                  1. *

                                                                                                                                                                                                                                                    * Create a RegexMatchSet. For more information, see CreateRegexMatchSet. *

                                                                                                                                                                                                                                                    *
                                                                                                                                                                                                                                                  2. *
                                                                                                                                                                                                                                                  3. *

                                                                                                                                                                                                                                                    * Use GetChangeToken to get the change token that you provide in the ChangeToken parameter of * an UpdateRegexMatchSet request. *

                                                                                                                                                                                                                                                    *
                                                                                                                                                                                                                                                  4. *
                                                                                                                                                                                                                                                  5. *

                                                                                                                                                                                                                                                    * Submit an UpdateRegexMatchSet request to specify the part of the request that you want AWS WAF to * inspect (for example, the header or the URI) and the identifier of the RegexPatternSet that contain * the regular expression patters you want AWS WAF to watch for. *

                                                                                                                                                                                                                                                    *
                                                                                                                                                                                                                                                  6. *
                                                                                                                                                                                                                                                  *

                                                                                                                                                                                                                                                  * For more information about how to use the AWS WAF API to allow or block HTTP requests, see the AWS WAF Developer Guide. *

                                                                                                                                                                                                                                                  *
                                                                                                                                                                                                                                                  *

                                                                                                                                                                                                                                                  * This is a convenience which creates an instance of the {@link UpdateRegexMatchSetRequest.Builder} avoiding the * need to create one manually via {@link UpdateRegexMatchSetRequest#builder()} *

                                                                                                                                                                                                                                                  * * @param updateRegexMatchSetRequest * A {@link Consumer} that will call methods on * {@link software.amazon.awssdk.services.waf.model.UpdateRegexMatchSetRequest.Builder} to create a request. * @return Result of the UpdateRegexMatchSet operation returned by the service. * @throws WafStaleDataException * The operation failed because you tried to create, update, or delete an object by using a change token * that has already been used. * @throws WafInternalErrorException * The operation failed because of a system problem, even though the request was valid. Retry your request. * @throws WafDisallowedNameException * The name specified is invalid. * @throws WafLimitsExceededException * The operation exceeds a resource limit, for example, the maximum number of WebACL objects * that you can create for an AWS account. For more information, see Limits in the AWS WAF * Developer Guide. * @throws WafNonexistentItemException * The operation failed because the referenced object doesn't exist. * @throws WafNonexistentContainerException * The operation failed because you tried to add an object to or delete an object from another object that * doesn't exist. For example:

                                                                                                                                                                                                                                                  *
                                                                                                                                                                                                                                                    *
                                                                                                                                                                                                                                                  • *

                                                                                                                                                                                                                                                    * You tried to add a Rule to or delete a Rule from a WebACL that * doesn't exist. *

                                                                                                                                                                                                                                                    *
                                                                                                                                                                                                                                                  • *
                                                                                                                                                                                                                                                  • *

                                                                                                                                                                                                                                                    * You tried to add a ByteMatchSet to or delete a ByteMatchSet from a * Rule that doesn't exist. *

                                                                                                                                                                                                                                                    *
                                                                                                                                                                                                                                                  • *
                                                                                                                                                                                                                                                  • *

                                                                                                                                                                                                                                                    * You tried to add an IP address to or delete an IP address from an IPSet that doesn't exist. *

                                                                                                                                                                                                                                                    *
                                                                                                                                                                                                                                                  • *
                                                                                                                                                                                                                                                  • *

                                                                                                                                                                                                                                                    * You tried to add a ByteMatchTuple to or delete a ByteMatchTuple from a * ByteMatchSet that doesn't exist. *

                                                                                                                                                                                                                                                    *
                                                                                                                                                                                                                                                  • * @throws WafInvalidOperationException * The operation failed because there was nothing to do. For example:

                                                                                                                                                                                                                                                    *
                                                                                                                                                                                                                                                      *
                                                                                                                                                                                                                                                    • *

                                                                                                                                                                                                                                                      * You tried to remove a Rule from a WebACL, but the Rule isn't in * the specified WebACL. *

                                                                                                                                                                                                                                                      *
                                                                                                                                                                                                                                                    • *
                                                                                                                                                                                                                                                    • *

                                                                                                                                                                                                                                                      * You tried to remove an IP address from an IPSet, but the IP address isn't in the specified * IPSet. *

                                                                                                                                                                                                                                                      *
                                                                                                                                                                                                                                                    • *
                                                                                                                                                                                                                                                    • *

                                                                                                                                                                                                                                                      * You tried to remove a ByteMatchTuple from a ByteMatchSet, but the * ByteMatchTuple isn't in the specified WebACL. *

                                                                                                                                                                                                                                                      *
                                                                                                                                                                                                                                                    • *
                                                                                                                                                                                                                                                    • *

                                                                                                                                                                                                                                                      * You tried to add a Rule to a WebACL, but the Rule already exists * in the specified WebACL. *

                                                                                                                                                                                                                                                      *
                                                                                                                                                                                                                                                    • *
                                                                                                                                                                                                                                                    • *

                                                                                                                                                                                                                                                      * You tried to add a ByteMatchTuple to a ByteMatchSet, but the * ByteMatchTuple already exists in the specified WebACL. *

                                                                                                                                                                                                                                                      *
                                                                                                                                                                                                                                                    • * @throws WafInvalidAccountException * The operation failed because you tried to create, update, or delete an object by using an invalid account * identifier. * @throws SdkException * Base class for all exceptions that can be thrown by the SDK (both service and client). Can be used for * catch all scenarios. * @throws SdkClientException * If any client side error occurs such as an IO related failure, failure to get credentials, etc. * @throws WafException * Base class for all service exceptions. Unknown exceptions will be thrown as an instance of this type. * @sample WafClient.UpdateRegexMatchSet * @see AWS API * Documentation */ default UpdateRegexMatchSetResponse updateRegexMatchSet( Consumer updateRegexMatchSetRequest) throws WafStaleDataException, WafInternalErrorException, WafDisallowedNameException, WafLimitsExceededException, WafNonexistentItemException, WafNonexistentContainerException, WafInvalidOperationException, WafInvalidAccountException, AwsServiceException, SdkClientException, WafException { return updateRegexMatchSet(UpdateRegexMatchSetRequest.builder().applyMutation(updateRegexMatchSetRequest).build()); } /** * *

                                                                                                                                                                                                                                                      * This is AWS WAF Classic documentation. For more information, see AWS WAF Classic in the * developer guide. *

                                                                                                                                                                                                                                                      *

                                                                                                                                                                                                                                                      * For the latest version of AWS WAF, use the AWS WAFV2 API and see the AWS WAF Developer Guide. With * the latest version, AWS WAF has a single set of endpoints for regional and global use. *

                                                                                                                                                                                                                                                      *
                                                                                                                                                                                                                                                      *

                                                                                                                                                                                                                                                      * Inserts or deletes RegexPatternString objects in a RegexPatternSet. For each * RegexPatternString object, you specify the following values: *

                                                                                                                                                                                                                                                      *
                                                                                                                                                                                                                                                        *
                                                                                                                                                                                                                                                      • *

                                                                                                                                                                                                                                                        * Whether to insert or delete the RegexPatternString. *

                                                                                                                                                                                                                                                        *
                                                                                                                                                                                                                                                      • *
                                                                                                                                                                                                                                                      • *

                                                                                                                                                                                                                                                        * The regular expression pattern that you want to insert or delete. For more information, see * RegexPatternSet. *

                                                                                                                                                                                                                                                        *
                                                                                                                                                                                                                                                      • *
                                                                                                                                                                                                                                                      *

                                                                                                                                                                                                                                                      * For example, you can create a RegexPatternString such as B[a@]dB[o0]t. AWS WAF will * match this RegexPatternString to: *

                                                                                                                                                                                                                                                      *
                                                                                                                                                                                                                                                        *
                                                                                                                                                                                                                                                      • *

                                                                                                                                                                                                                                                        * BadBot *

                                                                                                                                                                                                                                                        *
                                                                                                                                                                                                                                                      • *
                                                                                                                                                                                                                                                      • *

                                                                                                                                                                                                                                                        * BadB0t *

                                                                                                                                                                                                                                                        *
                                                                                                                                                                                                                                                      • *
                                                                                                                                                                                                                                                      • *

                                                                                                                                                                                                                                                        * B@dBot *

                                                                                                                                                                                                                                                        *
                                                                                                                                                                                                                                                      • *
                                                                                                                                                                                                                                                      • *

                                                                                                                                                                                                                                                        * B@dB0t *

                                                                                                                                                                                                                                                        *
                                                                                                                                                                                                                                                      • *
                                                                                                                                                                                                                                                      *

                                                                                                                                                                                                                                                      * To create and configure a RegexPatternSet, perform the following steps: *

                                                                                                                                                                                                                                                      *
                                                                                                                                                                                                                                                        *
                                                                                                                                                                                                                                                      1. *

                                                                                                                                                                                                                                                        * Create a RegexPatternSet. For more information, see CreateRegexPatternSet. *

                                                                                                                                                                                                                                                        *
                                                                                                                                                                                                                                                      2. *
                                                                                                                                                                                                                                                      3. *

                                                                                                                                                                                                                                                        * Use GetChangeToken to get the change token that you provide in the ChangeToken parameter of * an UpdateRegexPatternSet request. *

                                                                                                                                                                                                                                                        *
                                                                                                                                                                                                                                                      4. *
                                                                                                                                                                                                                                                      5. *

                                                                                                                                                                                                                                                        * Submit an UpdateRegexPatternSet request to specify the regular expression pattern that you want AWS * WAF to watch for. *

                                                                                                                                                                                                                                                        *
                                                                                                                                                                                                                                                      6. *
                                                                                                                                                                                                                                                      *

                                                                                                                                                                                                                                                      * For more information about how to use the AWS WAF API to allow or block HTTP requests, see the AWS WAF Developer Guide. *

                                                                                                                                                                                                                                                      * * @param updateRegexPatternSetRequest * @return Result of the UpdateRegexPatternSet operation returned by the service. * @throws WafStaleDataException * The operation failed because you tried to create, update, or delete an object by using a change token * that has already been used. * @throws WafInternalErrorException * The operation failed because of a system problem, even though the request was valid. Retry your request. * @throws WafLimitsExceededException * The operation exceeds a resource limit, for example, the maximum number of WebACL objects * that you can create for an AWS account. For more information, see Limits in the AWS WAF * Developer Guide. * @throws WafNonexistentItemException * The operation failed because the referenced object doesn't exist. * @throws WafNonexistentContainerException * The operation failed because you tried to add an object to or delete an object from another object that * doesn't exist. For example:

                                                                                                                                                                                                                                                      *
                                                                                                                                                                                                                                                        *
                                                                                                                                                                                                                                                      • *

                                                                                                                                                                                                                                                        * You tried to add a Rule to or delete a Rule from a WebACL that * doesn't exist. *

                                                                                                                                                                                                                                                        *
                                                                                                                                                                                                                                                      • *
                                                                                                                                                                                                                                                      • *

                                                                                                                                                                                                                                                        * You tried to add a ByteMatchSet to or delete a ByteMatchSet from a * Rule that doesn't exist. *

                                                                                                                                                                                                                                                        *
                                                                                                                                                                                                                                                      • *
                                                                                                                                                                                                                                                      • *

                                                                                                                                                                                                                                                        * You tried to add an IP address to or delete an IP address from an IPSet that doesn't exist. *

                                                                                                                                                                                                                                                        *
                                                                                                                                                                                                                                                      • *
                                                                                                                                                                                                                                                      • *

                                                                                                                                                                                                                                                        * You tried to add a ByteMatchTuple to or delete a ByteMatchTuple from a * ByteMatchSet that doesn't exist. *

                                                                                                                                                                                                                                                        *
                                                                                                                                                                                                                                                      • * @throws WafInvalidOperationException * The operation failed because there was nothing to do. For example:

                                                                                                                                                                                                                                                        *
                                                                                                                                                                                                                                                          *
                                                                                                                                                                                                                                                        • *

                                                                                                                                                                                                                                                          * You tried to remove a Rule from a WebACL, but the Rule isn't in * the specified WebACL. *

                                                                                                                                                                                                                                                          *
                                                                                                                                                                                                                                                        • *
                                                                                                                                                                                                                                                        • *

                                                                                                                                                                                                                                                          * You tried to remove an IP address from an IPSet, but the IP address isn't in the specified * IPSet. *

                                                                                                                                                                                                                                                          *
                                                                                                                                                                                                                                                        • *
                                                                                                                                                                                                                                                        • *

                                                                                                                                                                                                                                                          * You tried to remove a ByteMatchTuple from a ByteMatchSet, but the * ByteMatchTuple isn't in the specified WebACL. *

                                                                                                                                                                                                                                                          *
                                                                                                                                                                                                                                                        • *
                                                                                                                                                                                                                                                        • *

                                                                                                                                                                                                                                                          * You tried to add a Rule to a WebACL, but the Rule already exists * in the specified WebACL. *

                                                                                                                                                                                                                                                          *
                                                                                                                                                                                                                                                        • *
                                                                                                                                                                                                                                                        • *

                                                                                                                                                                                                                                                          * You tried to add a ByteMatchTuple to a ByteMatchSet, but the * ByteMatchTuple already exists in the specified WebACL. *

                                                                                                                                                                                                                                                          *
                                                                                                                                                                                                                                                        • * @throws WafInvalidAccountException * The operation failed because you tried to create, update, or delete an object by using an invalid account * identifier. * @throws WafInvalidRegexPatternException * The regular expression (regex) you specified in RegexPatternString is invalid. * @throws SdkException * Base class for all exceptions that can be thrown by the SDK (both service and client). Can be used for * catch all scenarios. * @throws SdkClientException * If any client side error occurs such as an IO related failure, failure to get credentials, etc. * @throws WafException * Base class for all service exceptions. Unknown exceptions will be thrown as an instance of this type. * @sample WafClient.UpdateRegexPatternSet * @see AWS API * Documentation */ default UpdateRegexPatternSetResponse updateRegexPatternSet(UpdateRegexPatternSetRequest updateRegexPatternSetRequest) throws WafStaleDataException, WafInternalErrorException, WafLimitsExceededException, WafNonexistentItemException, WafNonexistentContainerException, WafInvalidOperationException, WafInvalidAccountException, WafInvalidRegexPatternException, AwsServiceException, SdkClientException, WafException { throw new UnsupportedOperationException(); } /** * *

                                                                                                                                                                                                                                                          * This is AWS WAF Classic documentation. For more information, see AWS WAF Classic in the * developer guide. *

                                                                                                                                                                                                                                                          *

                                                                                                                                                                                                                                                          * For the latest version of AWS WAF, use the AWS WAFV2 API and see the AWS WAF Developer Guide. With * the latest version, AWS WAF has a single set of endpoints for regional and global use. *

                                                                                                                                                                                                                                                          *
                                                                                                                                                                                                                                                          *

                                                                                                                                                                                                                                                          * Inserts or deletes RegexPatternString objects in a RegexPatternSet. For each * RegexPatternString object, you specify the following values: *

                                                                                                                                                                                                                                                          *
                                                                                                                                                                                                                                                            *
                                                                                                                                                                                                                                                          • *

                                                                                                                                                                                                                                                            * Whether to insert or delete the RegexPatternString. *

                                                                                                                                                                                                                                                            *
                                                                                                                                                                                                                                                          • *
                                                                                                                                                                                                                                                          • *

                                                                                                                                                                                                                                                            * The regular expression pattern that you want to insert or delete. For more information, see * RegexPatternSet. *

                                                                                                                                                                                                                                                            *
                                                                                                                                                                                                                                                          • *
                                                                                                                                                                                                                                                          *

                                                                                                                                                                                                                                                          * For example, you can create a RegexPatternString such as B[a@]dB[o0]t. AWS WAF will * match this RegexPatternString to: *

                                                                                                                                                                                                                                                          *
                                                                                                                                                                                                                                                            *
                                                                                                                                                                                                                                                          • *

                                                                                                                                                                                                                                                            * BadBot *

                                                                                                                                                                                                                                                            *
                                                                                                                                                                                                                                                          • *
                                                                                                                                                                                                                                                          • *

                                                                                                                                                                                                                                                            * BadB0t *

                                                                                                                                                                                                                                                            *
                                                                                                                                                                                                                                                          • *
                                                                                                                                                                                                                                                          • *

                                                                                                                                                                                                                                                            * B@dBot *

                                                                                                                                                                                                                                                            *
                                                                                                                                                                                                                                                          • *
                                                                                                                                                                                                                                                          • *

                                                                                                                                                                                                                                                            * B@dB0t *

                                                                                                                                                                                                                                                            *
                                                                                                                                                                                                                                                          • *
                                                                                                                                                                                                                                                          *

                                                                                                                                                                                                                                                          * To create and configure a RegexPatternSet, perform the following steps: *

                                                                                                                                                                                                                                                          *
                                                                                                                                                                                                                                                            *
                                                                                                                                                                                                                                                          1. *

                                                                                                                                                                                                                                                            * Create a RegexPatternSet. For more information, see CreateRegexPatternSet. *

                                                                                                                                                                                                                                                            *
                                                                                                                                                                                                                                                          2. *
                                                                                                                                                                                                                                                          3. *

                                                                                                                                                                                                                                                            * Use GetChangeToken to get the change token that you provide in the ChangeToken parameter of * an UpdateRegexPatternSet request. *

                                                                                                                                                                                                                                                            *
                                                                                                                                                                                                                                                          4. *
                                                                                                                                                                                                                                                          5. *

                                                                                                                                                                                                                                                            * Submit an UpdateRegexPatternSet request to specify the regular expression pattern that you want AWS * WAF to watch for. *

                                                                                                                                                                                                                                                            *
                                                                                                                                                                                                                                                          6. *
                                                                                                                                                                                                                                                          *

                                                                                                                                                                                                                                                          * For more information about how to use the AWS WAF API to allow or block HTTP requests, see the AWS WAF Developer Guide. *

                                                                                                                                                                                                                                                          *
                                                                                                                                                                                                                                                          *

                                                                                                                                                                                                                                                          * This is a convenience which creates an instance of the {@link UpdateRegexPatternSetRequest.Builder} avoiding the * need to create one manually via {@link UpdateRegexPatternSetRequest#builder()} *

                                                                                                                                                                                                                                                          * * @param updateRegexPatternSetRequest * A {@link Consumer} that will call methods on * {@link software.amazon.awssdk.services.waf.model.UpdateRegexPatternSetRequest.Builder} to create a * request. * @return Result of the UpdateRegexPatternSet operation returned by the service. * @throws WafStaleDataException * The operation failed because you tried to create, update, or delete an object by using a change token * that has already been used. * @throws WafInternalErrorException * The operation failed because of a system problem, even though the request was valid. Retry your request. * @throws WafLimitsExceededException * The operation exceeds a resource limit, for example, the maximum number of WebACL objects * that you can create for an AWS account. For more information, see Limits in the AWS WAF * Developer Guide. * @throws WafNonexistentItemException * The operation failed because the referenced object doesn't exist. * @throws WafNonexistentContainerException * The operation failed because you tried to add an object to or delete an object from another object that * doesn't exist. For example:

                                                                                                                                                                                                                                                          *
                                                                                                                                                                                                                                                            *
                                                                                                                                                                                                                                                          • *

                                                                                                                                                                                                                                                            * You tried to add a Rule to or delete a Rule from a WebACL that * doesn't exist. *

                                                                                                                                                                                                                                                            *
                                                                                                                                                                                                                                                          • *
                                                                                                                                                                                                                                                          • *

                                                                                                                                                                                                                                                            * You tried to add a ByteMatchSet to or delete a ByteMatchSet from a * Rule that doesn't exist. *

                                                                                                                                                                                                                                                            *
                                                                                                                                                                                                                                                          • *
                                                                                                                                                                                                                                                          • *

                                                                                                                                                                                                                                                            * You tried to add an IP address to or delete an IP address from an IPSet that doesn't exist. *

                                                                                                                                                                                                                                                            *
                                                                                                                                                                                                                                                          • *
                                                                                                                                                                                                                                                          • *

                                                                                                                                                                                                                                                            * You tried to add a ByteMatchTuple to or delete a ByteMatchTuple from a * ByteMatchSet that doesn't exist. *

                                                                                                                                                                                                                                                            *
                                                                                                                                                                                                                                                          • * @throws WafInvalidOperationException * The operation failed because there was nothing to do. For example:

                                                                                                                                                                                                                                                            *
                                                                                                                                                                                                                                                              *
                                                                                                                                                                                                                                                            • *

                                                                                                                                                                                                                                                              * You tried to remove a Rule from a WebACL, but the Rule isn't in * the specified WebACL. *

                                                                                                                                                                                                                                                              *
                                                                                                                                                                                                                                                            • *
                                                                                                                                                                                                                                                            • *

                                                                                                                                                                                                                                                              * You tried to remove an IP address from an IPSet, but the IP address isn't in the specified * IPSet. *

                                                                                                                                                                                                                                                              *
                                                                                                                                                                                                                                                            • *
                                                                                                                                                                                                                                                            • *

                                                                                                                                                                                                                                                              * You tried to remove a ByteMatchTuple from a ByteMatchSet, but the * ByteMatchTuple isn't in the specified WebACL. *

                                                                                                                                                                                                                                                              *
                                                                                                                                                                                                                                                            • *
                                                                                                                                                                                                                                                            • *

                                                                                                                                                                                                                                                              * You tried to add a Rule to a WebACL, but the Rule already exists * in the specified WebACL. *

                                                                                                                                                                                                                                                              *
                                                                                                                                                                                                                                                            • *
                                                                                                                                                                                                                                                            • *

                                                                                                                                                                                                                                                              * You tried to add a ByteMatchTuple to a ByteMatchSet, but the * ByteMatchTuple already exists in the specified WebACL. *

                                                                                                                                                                                                                                                              *
                                                                                                                                                                                                                                                            • * @throws WafInvalidAccountException * The operation failed because you tried to create, update, or delete an object by using an invalid account * identifier. * @throws WafInvalidRegexPatternException * The regular expression (regex) you specified in RegexPatternString is invalid. * @throws SdkException * Base class for all exceptions that can be thrown by the SDK (both service and client). Can be used for * catch all scenarios. * @throws SdkClientException * If any client side error occurs such as an IO related failure, failure to get credentials, etc. * @throws WafException * Base class for all service exceptions. Unknown exceptions will be thrown as an instance of this type. * @sample WafClient.UpdateRegexPatternSet * @see AWS API * Documentation */ default UpdateRegexPatternSetResponse updateRegexPatternSet( Consumer updateRegexPatternSetRequest) throws WafStaleDataException, WafInternalErrorException, WafLimitsExceededException, WafNonexistentItemException, WafNonexistentContainerException, WafInvalidOperationException, WafInvalidAccountException, WafInvalidRegexPatternException, AwsServiceException, SdkClientException, WafException { return updateRegexPatternSet(UpdateRegexPatternSetRequest.builder().applyMutation(updateRegexPatternSetRequest).build()); } /** * *

                                                                                                                                                                                                                                                              * This is AWS WAF Classic documentation. For more information, see AWS WAF Classic in the * developer guide. *

                                                                                                                                                                                                                                                              *

                                                                                                                                                                                                                                                              * For the latest version of AWS WAF, use the AWS WAFV2 API and see the AWS WAF Developer Guide. With * the latest version, AWS WAF has a single set of endpoints for regional and global use. *

                                                                                                                                                                                                                                                              *
                                                                                                                                                                                                                                                              *

                                                                                                                                                                                                                                                              * Inserts or deletes Predicate objects in a Rule. Each Predicate object identifies * a predicate, such as a ByteMatchSet or an IPSet, that specifies the web requests that you want to * allow, block, or count. If you add more than one predicate to a Rule, a request must match all of * the specifications to be allowed, blocked, or counted. For example, suppose that you add the following to a * Rule: *

                                                                                                                                                                                                                                                              *
                                                                                                                                                                                                                                                                *
                                                                                                                                                                                                                                                              • *

                                                                                                                                                                                                                                                                * A ByteMatchSet that matches the value BadBot in the User-Agent header *

                                                                                                                                                                                                                                                                *
                                                                                                                                                                                                                                                              • *
                                                                                                                                                                                                                                                              • *

                                                                                                                                                                                                                                                                * An IPSet that matches the IP address 192.0.2.44 *

                                                                                                                                                                                                                                                                *
                                                                                                                                                                                                                                                              • *
                                                                                                                                                                                                                                                              *

                                                                                                                                                                                                                                                              * You then add the Rule to a WebACL and specify that you want to block requests that * satisfy the Rule. For a request to be blocked, the User-Agent header in the request * must contain the value BadBot and the request must originate from the IP address 192.0.2.44. *

                                                                                                                                                                                                                                                              *

                                                                                                                                                                                                                                                              * To create and configure a Rule, perform the following steps: *

                                                                                                                                                                                                                                                              *
                                                                                                                                                                                                                                                                *
                                                                                                                                                                                                                                                              1. *

                                                                                                                                                                                                                                                                * Create and update the predicates that you want to include in the Rule. *

                                                                                                                                                                                                                                                                *
                                                                                                                                                                                                                                                              2. *
                                                                                                                                                                                                                                                              3. *

                                                                                                                                                                                                                                                                * Create the Rule. See CreateRule. *

                                                                                                                                                                                                                                                                *
                                                                                                                                                                                                                                                              4. *
                                                                                                                                                                                                                                                              5. *

                                                                                                                                                                                                                                                                * Use GetChangeToken to get the change token that you provide in the ChangeToken * parameter of an UpdateRule request. *

                                                                                                                                                                                                                                                                *
                                                                                                                                                                                                                                                              6. *
                                                                                                                                                                                                                                                              7. *

                                                                                                                                                                                                                                                                * Submit an UpdateRule request to add predicates to the Rule. *

                                                                                                                                                                                                                                                                *
                                                                                                                                                                                                                                                              8. *
                                                                                                                                                                                                                                                              9. *

                                                                                                                                                                                                                                                                * Create and update a WebACL that contains the Rule. See CreateWebACL. *

                                                                                                                                                                                                                                                                *
                                                                                                                                                                                                                                                              10. *
                                                                                                                                                                                                                                                              *

                                                                                                                                                                                                                                                              * If you want to replace one ByteMatchSet or IPSet with another, you delete the existing * one and add the new one. *

                                                                                                                                                                                                                                                              *

                                                                                                                                                                                                                                                              * For more information about how to use the AWS WAF API to allow or block HTTP requests, see the AWS WAF Developer Guide. *

                                                                                                                                                                                                                                                              * * @param updateRuleRequest * @return Result of the UpdateRule operation returned by the service. * @throws WafStaleDataException * The operation failed because you tried to create, update, or delete an object by using a change token * that has already been used. * @throws WafInternalErrorException * The operation failed because of a system problem, even though the request was valid. Retry your request. * @throws WafInvalidAccountException * The operation failed because you tried to create, update, or delete an object by using an invalid account * identifier. * @throws WafInvalidOperationException * The operation failed because there was nothing to do. For example:

                                                                                                                                                                                                                                                              *
                                                                                                                                                                                                                                                                *
                                                                                                                                                                                                                                                              • *

                                                                                                                                                                                                                                                                * You tried to remove a Rule from a WebACL, but the Rule isn't in * the specified WebACL. *

                                                                                                                                                                                                                                                                *
                                                                                                                                                                                                                                                              • *
                                                                                                                                                                                                                                                              • *

                                                                                                                                                                                                                                                                * You tried to remove an IP address from an IPSet, but the IP address isn't in the specified * IPSet. *

                                                                                                                                                                                                                                                                *
                                                                                                                                                                                                                                                              • *
                                                                                                                                                                                                                                                              • *

                                                                                                                                                                                                                                                                * You tried to remove a ByteMatchTuple from a ByteMatchSet, but the * ByteMatchTuple isn't in the specified WebACL. *

                                                                                                                                                                                                                                                                *
                                                                                                                                                                                                                                                              • *
                                                                                                                                                                                                                                                              • *

                                                                                                                                                                                                                                                                * You tried to add a Rule to a WebACL, but the Rule already exists * in the specified WebACL. *

                                                                                                                                                                                                                                                                *
                                                                                                                                                                                                                                                              • *
                                                                                                                                                                                                                                                              • *

                                                                                                                                                                                                                                                                * You tried to add a ByteMatchTuple to a ByteMatchSet, but the * ByteMatchTuple already exists in the specified WebACL. *

                                                                                                                                                                                                                                                                *
                                                                                                                                                                                                                                                              • * @throws WafInvalidParameterException * The operation failed because AWS WAF didn't recognize a parameter in the request. For example:

                                                                                                                                                                                                                                                                *
                                                                                                                                                                                                                                                                  *
                                                                                                                                                                                                                                                                • *

                                                                                                                                                                                                                                                                  * You specified an invalid parameter name. *

                                                                                                                                                                                                                                                                  *
                                                                                                                                                                                                                                                                • *
                                                                                                                                                                                                                                                                • *

                                                                                                                                                                                                                                                                  * You specified an invalid value. *

                                                                                                                                                                                                                                                                  *
                                                                                                                                                                                                                                                                • *
                                                                                                                                                                                                                                                                • *

                                                                                                                                                                                                                                                                  * You tried to update an object (ByteMatchSet, IPSet, Rule, or * WebACL) using an action other than INSERT or DELETE. *

                                                                                                                                                                                                                                                                  *
                                                                                                                                                                                                                                                                • *
                                                                                                                                                                                                                                                                • *

                                                                                                                                                                                                                                                                  * You tried to create a WebACL with a DefaultAction Type other than * ALLOW, BLOCK, or COUNT. *

                                                                                                                                                                                                                                                                  *
                                                                                                                                                                                                                                                                • *
                                                                                                                                                                                                                                                                • *

                                                                                                                                                                                                                                                                  * You tried to create a RateBasedRule with a RateKey value other than * IP. *

                                                                                                                                                                                                                                                                  *
                                                                                                                                                                                                                                                                • *
                                                                                                                                                                                                                                                                • *

                                                                                                                                                                                                                                                                  * You tried to update a WebACL with a WafAction Type other than * ALLOW, BLOCK, or COUNT. *

                                                                                                                                                                                                                                                                  *
                                                                                                                                                                                                                                                                • *
                                                                                                                                                                                                                                                                • *

                                                                                                                                                                                                                                                                  * You tried to update a ByteMatchSet with a FieldToMatch Type other * than HEADER, METHOD, QUERY_STRING, URI, or BODY. *

                                                                                                                                                                                                                                                                  *
                                                                                                                                                                                                                                                                • *
                                                                                                                                                                                                                                                                • *

                                                                                                                                                                                                                                                                  * You tried to update a ByteMatchSet with a Field of HEADER but no * value for Data. *

                                                                                                                                                                                                                                                                  *
                                                                                                                                                                                                                                                                • *
                                                                                                                                                                                                                                                                • *

                                                                                                                                                                                                                                                                  * Your request references an ARN that is malformed, or corresponds to a resource with which a web ACL * cannot be associated. *

                                                                                                                                                                                                                                                                  *
                                                                                                                                                                                                                                                                • * @throws WafNonexistentContainerException * The operation failed because you tried to add an object to or delete an object from another object that * doesn't exist. For example:

                                                                                                                                                                                                                                                                  *
                                                                                                                                                                                                                                                                    *
                                                                                                                                                                                                                                                                  • *

                                                                                                                                                                                                                                                                    * You tried to add a Rule to or delete a Rule from a WebACL that * doesn't exist. *

                                                                                                                                                                                                                                                                    *
                                                                                                                                                                                                                                                                  • *
                                                                                                                                                                                                                                                                  • *

                                                                                                                                                                                                                                                                    * You tried to add a ByteMatchSet to or delete a ByteMatchSet from a * Rule that doesn't exist. *

                                                                                                                                                                                                                                                                    *
                                                                                                                                                                                                                                                                  • *
                                                                                                                                                                                                                                                                  • *

                                                                                                                                                                                                                                                                    * You tried to add an IP address to or delete an IP address from an IPSet that doesn't exist. *

                                                                                                                                                                                                                                                                    *
                                                                                                                                                                                                                                                                  • *
                                                                                                                                                                                                                                                                  • *

                                                                                                                                                                                                                                                                    * You tried to add a ByteMatchTuple to or delete a ByteMatchTuple from a * ByteMatchSet that doesn't exist. *

                                                                                                                                                                                                                                                                    *
                                                                                                                                                                                                                                                                  • * @throws WafNonexistentItemException * The operation failed because the referenced object doesn't exist. * @throws WafReferencedItemException * The operation failed because you tried to delete an object that is still in use. For example:

                                                                                                                                                                                                                                                                    *
                                                                                                                                                                                                                                                                      *
                                                                                                                                                                                                                                                                    • *

                                                                                                                                                                                                                                                                      * You tried to delete a ByteMatchSet that is still referenced by a Rule. *

                                                                                                                                                                                                                                                                      *
                                                                                                                                                                                                                                                                    • *
                                                                                                                                                                                                                                                                    • *

                                                                                                                                                                                                                                                                      * You tried to delete a Rule that is still referenced by a WebACL. *

                                                                                                                                                                                                                                                                      *
                                                                                                                                                                                                                                                                    • * @throws WafLimitsExceededException * The operation exceeds a resource limit, for example, the maximum number of WebACL objects * that you can create for an AWS account. For more information, see Limits in the AWS WAF * Developer Guide. * @throws SdkException * Base class for all exceptions that can be thrown by the SDK (both service and client). Can be used for * catch all scenarios. * @throws SdkClientException * If any client side error occurs such as an IO related failure, failure to get credentials, etc. * @throws WafException * Base class for all service exceptions. Unknown exceptions will be thrown as an instance of this type. * @sample WafClient.UpdateRule * @see AWS API * Documentation */ default UpdateRuleResponse updateRule(UpdateRuleRequest updateRuleRequest) throws WafStaleDataException, WafInternalErrorException, WafInvalidAccountException, WafInvalidOperationException, WafInvalidParameterException, WafNonexistentContainerException, WafNonexistentItemException, WafReferencedItemException, WafLimitsExceededException, AwsServiceException, SdkClientException, WafException { throw new UnsupportedOperationException(); } /** * *

                                                                                                                                                                                                                                                                      * This is AWS WAF Classic documentation. For more information, see AWS WAF Classic in the * developer guide. *

                                                                                                                                                                                                                                                                      *

                                                                                                                                                                                                                                                                      * For the latest version of AWS WAF, use the AWS WAFV2 API and see the AWS WAF Developer Guide. With * the latest version, AWS WAF has a single set of endpoints for regional and global use. *

                                                                                                                                                                                                                                                                      *
                                                                                                                                                                                                                                                                      *

                                                                                                                                                                                                                                                                      * Inserts or deletes Predicate objects in a Rule. Each Predicate object identifies * a predicate, such as a ByteMatchSet or an IPSet, that specifies the web requests that you want to * allow, block, or count. If you add more than one predicate to a Rule, a request must match all of * the specifications to be allowed, blocked, or counted. For example, suppose that you add the following to a * Rule: *

                                                                                                                                                                                                                                                                      *
                                                                                                                                                                                                                                                                        *
                                                                                                                                                                                                                                                                      • *

                                                                                                                                                                                                                                                                        * A ByteMatchSet that matches the value BadBot in the User-Agent header *

                                                                                                                                                                                                                                                                        *
                                                                                                                                                                                                                                                                      • *
                                                                                                                                                                                                                                                                      • *

                                                                                                                                                                                                                                                                        * An IPSet that matches the IP address 192.0.2.44 *

                                                                                                                                                                                                                                                                        *
                                                                                                                                                                                                                                                                      • *
                                                                                                                                                                                                                                                                      *

                                                                                                                                                                                                                                                                      * You then add the Rule to a WebACL and specify that you want to block requests that * satisfy the Rule. For a request to be blocked, the User-Agent header in the request * must contain the value BadBot and the request must originate from the IP address 192.0.2.44. *

                                                                                                                                                                                                                                                                      *

                                                                                                                                                                                                                                                                      * To create and configure a Rule, perform the following steps: *

                                                                                                                                                                                                                                                                      *
                                                                                                                                                                                                                                                                        *
                                                                                                                                                                                                                                                                      1. *

                                                                                                                                                                                                                                                                        * Create and update the predicates that you want to include in the Rule. *

                                                                                                                                                                                                                                                                        *
                                                                                                                                                                                                                                                                      2. *
                                                                                                                                                                                                                                                                      3. *

                                                                                                                                                                                                                                                                        * Create the Rule. See CreateRule. *

                                                                                                                                                                                                                                                                        *
                                                                                                                                                                                                                                                                      4. *
                                                                                                                                                                                                                                                                      5. *

                                                                                                                                                                                                                                                                        * Use GetChangeToken to get the change token that you provide in the ChangeToken * parameter of an UpdateRule request. *

                                                                                                                                                                                                                                                                        *
                                                                                                                                                                                                                                                                      6. *
                                                                                                                                                                                                                                                                      7. *

                                                                                                                                                                                                                                                                        * Submit an UpdateRule request to add predicates to the Rule. *

                                                                                                                                                                                                                                                                        *
                                                                                                                                                                                                                                                                      8. *
                                                                                                                                                                                                                                                                      9. *

                                                                                                                                                                                                                                                                        * Create and update a WebACL that contains the Rule. See CreateWebACL. *

                                                                                                                                                                                                                                                                        *
                                                                                                                                                                                                                                                                      10. *
                                                                                                                                                                                                                                                                      *

                                                                                                                                                                                                                                                                      * If you want to replace one ByteMatchSet or IPSet with another, you delete the existing * one and add the new one. *

                                                                                                                                                                                                                                                                      *

                                                                                                                                                                                                                                                                      * For more information about how to use the AWS WAF API to allow or block HTTP requests, see the AWS WAF Developer Guide. *

                                                                                                                                                                                                                                                                      *
                                                                                                                                                                                                                                                                      *

                                                                                                                                                                                                                                                                      * This is a convenience which creates an instance of the {@link UpdateRuleRequest.Builder} avoiding the need to * create one manually via {@link UpdateRuleRequest#builder()} *

                                                                                                                                                                                                                                                                      * * @param updateRuleRequest * A {@link Consumer} that will call methods on * {@link software.amazon.awssdk.services.waf.model.UpdateRuleRequest.Builder} to create a request. * @return Result of the UpdateRule operation returned by the service. * @throws WafStaleDataException * The operation failed because you tried to create, update, or delete an object by using a change token * that has already been used. * @throws WafInternalErrorException * The operation failed because of a system problem, even though the request was valid. Retry your request. * @throws WafInvalidAccountException * The operation failed because you tried to create, update, or delete an object by using an invalid account * identifier. * @throws WafInvalidOperationException * The operation failed because there was nothing to do. For example:

                                                                                                                                                                                                                                                                      *
                                                                                                                                                                                                                                                                        *
                                                                                                                                                                                                                                                                      • *

                                                                                                                                                                                                                                                                        * You tried to remove a Rule from a WebACL, but the Rule isn't in * the specified WebACL. *

                                                                                                                                                                                                                                                                        *
                                                                                                                                                                                                                                                                      • *
                                                                                                                                                                                                                                                                      • *

                                                                                                                                                                                                                                                                        * You tried to remove an IP address from an IPSet, but the IP address isn't in the specified * IPSet. *

                                                                                                                                                                                                                                                                        *
                                                                                                                                                                                                                                                                      • *
                                                                                                                                                                                                                                                                      • *

                                                                                                                                                                                                                                                                        * You tried to remove a ByteMatchTuple from a ByteMatchSet, but the * ByteMatchTuple isn't in the specified WebACL. *

                                                                                                                                                                                                                                                                        *
                                                                                                                                                                                                                                                                      • *
                                                                                                                                                                                                                                                                      • *

                                                                                                                                                                                                                                                                        * You tried to add a Rule to a WebACL, but the Rule already exists * in the specified WebACL. *

                                                                                                                                                                                                                                                                        *
                                                                                                                                                                                                                                                                      • *
                                                                                                                                                                                                                                                                      • *

                                                                                                                                                                                                                                                                        * You tried to add a ByteMatchTuple to a ByteMatchSet, but the * ByteMatchTuple already exists in the specified WebACL. *

                                                                                                                                                                                                                                                                        *
                                                                                                                                                                                                                                                                      • * @throws WafInvalidParameterException * The operation failed because AWS WAF didn't recognize a parameter in the request. For example:

                                                                                                                                                                                                                                                                        *
                                                                                                                                                                                                                                                                          *
                                                                                                                                                                                                                                                                        • *

                                                                                                                                                                                                                                                                          * You specified an invalid parameter name. *

                                                                                                                                                                                                                                                                          *
                                                                                                                                                                                                                                                                        • *
                                                                                                                                                                                                                                                                        • *

                                                                                                                                                                                                                                                                          * You specified an invalid value. *

                                                                                                                                                                                                                                                                          *
                                                                                                                                                                                                                                                                        • *
                                                                                                                                                                                                                                                                        • *

                                                                                                                                                                                                                                                                          * You tried to update an object (ByteMatchSet, IPSet, Rule, or * WebACL) using an action other than INSERT or DELETE. *

                                                                                                                                                                                                                                                                          *
                                                                                                                                                                                                                                                                        • *
                                                                                                                                                                                                                                                                        • *

                                                                                                                                                                                                                                                                          * You tried to create a WebACL with a DefaultAction Type other than * ALLOW, BLOCK, or COUNT. *

                                                                                                                                                                                                                                                                          *
                                                                                                                                                                                                                                                                        • *
                                                                                                                                                                                                                                                                        • *

                                                                                                                                                                                                                                                                          * You tried to create a RateBasedRule with a RateKey value other than * IP. *

                                                                                                                                                                                                                                                                          *
                                                                                                                                                                                                                                                                        • *
                                                                                                                                                                                                                                                                        • *

                                                                                                                                                                                                                                                                          * You tried to update a WebACL with a WafAction Type other than * ALLOW, BLOCK, or COUNT. *

                                                                                                                                                                                                                                                                          *
                                                                                                                                                                                                                                                                        • *
                                                                                                                                                                                                                                                                        • *

                                                                                                                                                                                                                                                                          * You tried to update a ByteMatchSet with a FieldToMatch Type other * than HEADER, METHOD, QUERY_STRING, URI, or BODY. *

                                                                                                                                                                                                                                                                          *
                                                                                                                                                                                                                                                                        • *
                                                                                                                                                                                                                                                                        • *

                                                                                                                                                                                                                                                                          * You tried to update a ByteMatchSet with a Field of HEADER but no * value for Data. *

                                                                                                                                                                                                                                                                          *
                                                                                                                                                                                                                                                                        • *
                                                                                                                                                                                                                                                                        • *

                                                                                                                                                                                                                                                                          * Your request references an ARN that is malformed, or corresponds to a resource with which a web ACL * cannot be associated. *

                                                                                                                                                                                                                                                                          *
                                                                                                                                                                                                                                                                        • * @throws WafNonexistentContainerException * The operation failed because you tried to add an object to or delete an object from another object that * doesn't exist. For example:

                                                                                                                                                                                                                                                                          *
                                                                                                                                                                                                                                                                            *
                                                                                                                                                                                                                                                                          • *

                                                                                                                                                                                                                                                                            * You tried to add a Rule to or delete a Rule from a WebACL that * doesn't exist. *

                                                                                                                                                                                                                                                                            *
                                                                                                                                                                                                                                                                          • *
                                                                                                                                                                                                                                                                          • *

                                                                                                                                                                                                                                                                            * You tried to add a ByteMatchSet to or delete a ByteMatchSet from a * Rule that doesn't exist. *

                                                                                                                                                                                                                                                                            *
                                                                                                                                                                                                                                                                          • *
                                                                                                                                                                                                                                                                          • *

                                                                                                                                                                                                                                                                            * You tried to add an IP address to or delete an IP address from an IPSet that doesn't exist. *

                                                                                                                                                                                                                                                                            *
                                                                                                                                                                                                                                                                          • *
                                                                                                                                                                                                                                                                          • *

                                                                                                                                                                                                                                                                            * You tried to add a ByteMatchTuple to or delete a ByteMatchTuple from a * ByteMatchSet that doesn't exist. *

                                                                                                                                                                                                                                                                            *
                                                                                                                                                                                                                                                                          • * @throws WafNonexistentItemException * The operation failed because the referenced object doesn't exist. * @throws WafReferencedItemException * The operation failed because you tried to delete an object that is still in use. For example:

                                                                                                                                                                                                                                                                            *
                                                                                                                                                                                                                                                                              *
                                                                                                                                                                                                                                                                            • *

                                                                                                                                                                                                                                                                              * You tried to delete a ByteMatchSet that is still referenced by a Rule. *

                                                                                                                                                                                                                                                                              *
                                                                                                                                                                                                                                                                            • *
                                                                                                                                                                                                                                                                            • *

                                                                                                                                                                                                                                                                              * You tried to delete a Rule that is still referenced by a WebACL. *

                                                                                                                                                                                                                                                                              *
                                                                                                                                                                                                                                                                            • * @throws WafLimitsExceededException * The operation exceeds a resource limit, for example, the maximum number of WebACL objects * that you can create for an AWS account. For more information, see Limits in the AWS WAF * Developer Guide. * @throws SdkException * Base class for all exceptions that can be thrown by the SDK (both service and client). Can be used for * catch all scenarios. * @throws SdkClientException * If any client side error occurs such as an IO related failure, failure to get credentials, etc. * @throws WafException * Base class for all service exceptions. Unknown exceptions will be thrown as an instance of this type. * @sample WafClient.UpdateRule * @see AWS API * Documentation */ default UpdateRuleResponse updateRule(Consumer updateRuleRequest) throws WafStaleDataException, WafInternalErrorException, WafInvalidAccountException, WafInvalidOperationException, WafInvalidParameterException, WafNonexistentContainerException, WafNonexistentItemException, WafReferencedItemException, WafLimitsExceededException, AwsServiceException, SdkClientException, WafException { return updateRule(UpdateRuleRequest.builder().applyMutation(updateRuleRequest).build()); } /** * *

                                                                                                                                                                                                                                                                              * This is AWS WAF Classic documentation. For more information, see AWS WAF Classic in the * developer guide. *

                                                                                                                                                                                                                                                                              *

                                                                                                                                                                                                                                                                              * For the latest version of AWS WAF, use the AWS WAFV2 API and see the AWS WAF Developer Guide. With * the latest version, AWS WAF has a single set of endpoints for regional and global use. *

                                                                                                                                                                                                                                                                              *
                                                                                                                                                                                                                                                                              *

                                                                                                                                                                                                                                                                              * Inserts or deletes ActivatedRule objects in a RuleGroup. *

                                                                                                                                                                                                                                                                              *

                                                                                                                                                                                                                                                                              * You can only insert REGULAR rules into a rule group. *

                                                                                                                                                                                                                                                                              *

                                                                                                                                                                                                                                                                              * You can have a maximum of ten rules per rule group. *

                                                                                                                                                                                                                                                                              *

                                                                                                                                                                                                                                                                              * To create and configure a RuleGroup, perform the following steps: *

                                                                                                                                                                                                                                                                              *
                                                                                                                                                                                                                                                                                *
                                                                                                                                                                                                                                                                              1. *

                                                                                                                                                                                                                                                                                * Create and update the Rules that you want to include in the RuleGroup. See * CreateRule. *

                                                                                                                                                                                                                                                                                *
                                                                                                                                                                                                                                                                              2. *
                                                                                                                                                                                                                                                                              3. *

                                                                                                                                                                                                                                                                                * Use GetChangeToken to get the change token that you provide in the ChangeToken * parameter of an UpdateRuleGroup request. *

                                                                                                                                                                                                                                                                                *
                                                                                                                                                                                                                                                                              4. *
                                                                                                                                                                                                                                                                              5. *

                                                                                                                                                                                                                                                                                * Submit an UpdateRuleGroup request to add Rules to the RuleGroup. *

                                                                                                                                                                                                                                                                                *
                                                                                                                                                                                                                                                                              6. *
                                                                                                                                                                                                                                                                              7. *

                                                                                                                                                                                                                                                                                * Create and update a WebACL that contains the RuleGroup. See CreateWebACL. *

                                                                                                                                                                                                                                                                                *
                                                                                                                                                                                                                                                                              8. *
                                                                                                                                                                                                                                                                              *

                                                                                                                                                                                                                                                                              * If you want to replace one Rule with another, you delete the existing one and add the new one. *

                                                                                                                                                                                                                                                                              *

                                                                                                                                                                                                                                                                              * For more information about how to use the AWS WAF API to allow or block HTTP requests, see the AWS WAF Developer Guide. *

                                                                                                                                                                                                                                                                              * * @param updateRuleGroupRequest * @return Result of the UpdateRuleGroup operation returned by the service. * @throws WafStaleDataException * The operation failed because you tried to create, update, or delete an object by using a change token * that has already been used. * @throws WafInternalErrorException * The operation failed because of a system problem, even though the request was valid. Retry your request. * @throws WafNonexistentContainerException * The operation failed because you tried to add an object to or delete an object from another object that * doesn't exist. For example:

                                                                                                                                                                                                                                                                              *
                                                                                                                                                                                                                                                                                *
                                                                                                                                                                                                                                                                              • *

                                                                                                                                                                                                                                                                                * You tried to add a Rule to or delete a Rule from a WebACL that * doesn't exist. *

                                                                                                                                                                                                                                                                                *
                                                                                                                                                                                                                                                                              • *
                                                                                                                                                                                                                                                                              • *

                                                                                                                                                                                                                                                                                * You tried to add a ByteMatchSet to or delete a ByteMatchSet from a * Rule that doesn't exist. *

                                                                                                                                                                                                                                                                                *
                                                                                                                                                                                                                                                                              • *
                                                                                                                                                                                                                                                                              • *

                                                                                                                                                                                                                                                                                * You tried to add an IP address to or delete an IP address from an IPSet that doesn't exist. *

                                                                                                                                                                                                                                                                                *
                                                                                                                                                                                                                                                                              • *
                                                                                                                                                                                                                                                                              • *

                                                                                                                                                                                                                                                                                * You tried to add a ByteMatchTuple to or delete a ByteMatchTuple from a * ByteMatchSet that doesn't exist. *

                                                                                                                                                                                                                                                                                *
                                                                                                                                                                                                                                                                              • * @throws WafNonexistentItemException * The operation failed because the referenced object doesn't exist. * @throws WafInvalidOperationException * The operation failed because there was nothing to do. For example:

                                                                                                                                                                                                                                                                                *
                                                                                                                                                                                                                                                                                  *
                                                                                                                                                                                                                                                                                • *

                                                                                                                                                                                                                                                                                  * You tried to remove a Rule from a WebACL, but the Rule isn't in * the specified WebACL. *

                                                                                                                                                                                                                                                                                  *
                                                                                                                                                                                                                                                                                • *
                                                                                                                                                                                                                                                                                • *

                                                                                                                                                                                                                                                                                  * You tried to remove an IP address from an IPSet, but the IP address isn't in the specified * IPSet. *

                                                                                                                                                                                                                                                                                  *
                                                                                                                                                                                                                                                                                • *
                                                                                                                                                                                                                                                                                • *

                                                                                                                                                                                                                                                                                  * You tried to remove a ByteMatchTuple from a ByteMatchSet, but the * ByteMatchTuple isn't in the specified WebACL. *

                                                                                                                                                                                                                                                                                  *
                                                                                                                                                                                                                                                                                • *
                                                                                                                                                                                                                                                                                • *

                                                                                                                                                                                                                                                                                  * You tried to add a Rule to a WebACL, but the Rule already exists * in the specified WebACL. *

                                                                                                                                                                                                                                                                                  *
                                                                                                                                                                                                                                                                                • *
                                                                                                                                                                                                                                                                                • *

                                                                                                                                                                                                                                                                                  * You tried to add a ByteMatchTuple to a ByteMatchSet, but the * ByteMatchTuple already exists in the specified WebACL. *

                                                                                                                                                                                                                                                                                  *
                                                                                                                                                                                                                                                                                • * @throws WafLimitsExceededException * The operation exceeds a resource limit, for example, the maximum number of WebACL objects * that you can create for an AWS account. For more information, see Limits in the AWS WAF * Developer Guide. * @throws WafInvalidParameterException * The operation failed because AWS WAF didn't recognize a parameter in the request. For example:

                                                                                                                                                                                                                                                                                  *
                                                                                                                                                                                                                                                                                    *
                                                                                                                                                                                                                                                                                  • *

                                                                                                                                                                                                                                                                                    * You specified an invalid parameter name. *

                                                                                                                                                                                                                                                                                    *
                                                                                                                                                                                                                                                                                  • *
                                                                                                                                                                                                                                                                                  • *

                                                                                                                                                                                                                                                                                    * You specified an invalid value. *

                                                                                                                                                                                                                                                                                    *
                                                                                                                                                                                                                                                                                  • *
                                                                                                                                                                                                                                                                                  • *

                                                                                                                                                                                                                                                                                    * You tried to update an object (ByteMatchSet, IPSet, Rule, or * WebACL) using an action other than INSERT or DELETE. *

                                                                                                                                                                                                                                                                                    *
                                                                                                                                                                                                                                                                                  • *
                                                                                                                                                                                                                                                                                  • *

                                                                                                                                                                                                                                                                                    * You tried to create a WebACL with a DefaultAction Type other than * ALLOW, BLOCK, or COUNT. *

                                                                                                                                                                                                                                                                                    *
                                                                                                                                                                                                                                                                                  • *
                                                                                                                                                                                                                                                                                  • *

                                                                                                                                                                                                                                                                                    * You tried to create a RateBasedRule with a RateKey value other than * IP. *

                                                                                                                                                                                                                                                                                    *
                                                                                                                                                                                                                                                                                  • *
                                                                                                                                                                                                                                                                                  • *

                                                                                                                                                                                                                                                                                    * You tried to update a WebACL with a WafAction Type other than * ALLOW, BLOCK, or COUNT. *

                                                                                                                                                                                                                                                                                    *
                                                                                                                                                                                                                                                                                  • *
                                                                                                                                                                                                                                                                                  • *

                                                                                                                                                                                                                                                                                    * You tried to update a ByteMatchSet with a FieldToMatch Type other * than HEADER, METHOD, QUERY_STRING, URI, or BODY. *

                                                                                                                                                                                                                                                                                    *
                                                                                                                                                                                                                                                                                  • *
                                                                                                                                                                                                                                                                                  • *

                                                                                                                                                                                                                                                                                    * You tried to update a ByteMatchSet with a Field of HEADER but no * value for Data. *

                                                                                                                                                                                                                                                                                    *
                                                                                                                                                                                                                                                                                  • *
                                                                                                                                                                                                                                                                                  • *

                                                                                                                                                                                                                                                                                    * Your request references an ARN that is malformed, or corresponds to a resource with which a web ACL * cannot be associated. *

                                                                                                                                                                                                                                                                                    *
                                                                                                                                                                                                                                                                                  • * @throws SdkException * Base class for all exceptions that can be thrown by the SDK (both service and client). Can be used for * catch all scenarios. * @throws SdkClientException * If any client side error occurs such as an IO related failure, failure to get credentials, etc. * @throws WafException * Base class for all service exceptions. Unknown exceptions will be thrown as an instance of this type. * @sample WafClient.UpdateRuleGroup * @see AWS API * Documentation */ default UpdateRuleGroupResponse updateRuleGroup(UpdateRuleGroupRequest updateRuleGroupRequest) throws WafStaleDataException, WafInternalErrorException, WafNonexistentContainerException, WafNonexistentItemException, WafInvalidOperationException, WafLimitsExceededException, WafInvalidParameterException, AwsServiceException, SdkClientException, WafException { throw new UnsupportedOperationException(); } /** * *

                                                                                                                                                                                                                                                                                    * This is AWS WAF Classic documentation. For more information, see AWS WAF Classic in the * developer guide. *

                                                                                                                                                                                                                                                                                    *

                                                                                                                                                                                                                                                                                    * For the latest version of AWS WAF, use the AWS WAFV2 API and see the AWS WAF Developer Guide. With * the latest version, AWS WAF has a single set of endpoints for regional and global use. *

                                                                                                                                                                                                                                                                                    *
                                                                                                                                                                                                                                                                                    *

                                                                                                                                                                                                                                                                                    * Inserts or deletes ActivatedRule objects in a RuleGroup. *

                                                                                                                                                                                                                                                                                    *

                                                                                                                                                                                                                                                                                    * You can only insert REGULAR rules into a rule group. *

                                                                                                                                                                                                                                                                                    *

                                                                                                                                                                                                                                                                                    * You can have a maximum of ten rules per rule group. *

                                                                                                                                                                                                                                                                                    *

                                                                                                                                                                                                                                                                                    * To create and configure a RuleGroup, perform the following steps: *

                                                                                                                                                                                                                                                                                    *
                                                                                                                                                                                                                                                                                      *
                                                                                                                                                                                                                                                                                    1. *

                                                                                                                                                                                                                                                                                      * Create and update the Rules that you want to include in the RuleGroup. See * CreateRule. *

                                                                                                                                                                                                                                                                                      *
                                                                                                                                                                                                                                                                                    2. *
                                                                                                                                                                                                                                                                                    3. *

                                                                                                                                                                                                                                                                                      * Use GetChangeToken to get the change token that you provide in the ChangeToken * parameter of an UpdateRuleGroup request. *

                                                                                                                                                                                                                                                                                      *
                                                                                                                                                                                                                                                                                    4. *
                                                                                                                                                                                                                                                                                    5. *

                                                                                                                                                                                                                                                                                      * Submit an UpdateRuleGroup request to add Rules to the RuleGroup. *

                                                                                                                                                                                                                                                                                      *
                                                                                                                                                                                                                                                                                    6. *
                                                                                                                                                                                                                                                                                    7. *

                                                                                                                                                                                                                                                                                      * Create and update a WebACL that contains the RuleGroup. See CreateWebACL. *

                                                                                                                                                                                                                                                                                      *
                                                                                                                                                                                                                                                                                    8. *
                                                                                                                                                                                                                                                                                    *

                                                                                                                                                                                                                                                                                    * If you want to replace one Rule with another, you delete the existing one and add the new one. *

                                                                                                                                                                                                                                                                                    *

                                                                                                                                                                                                                                                                                    * For more information about how to use the AWS WAF API to allow or block HTTP requests, see the AWS WAF Developer Guide. *

                                                                                                                                                                                                                                                                                    *
                                                                                                                                                                                                                                                                                    *

                                                                                                                                                                                                                                                                                    * This is a convenience which creates an instance of the {@link UpdateRuleGroupRequest.Builder} avoiding the need * to create one manually via {@link UpdateRuleGroupRequest#builder()} *

                                                                                                                                                                                                                                                                                    * * @param updateRuleGroupRequest * A {@link Consumer} that will call methods on * {@link software.amazon.awssdk.services.waf.model.UpdateRuleGroupRequest.Builder} to create a request. * @return Result of the UpdateRuleGroup operation returned by the service. * @throws WafStaleDataException * The operation failed because you tried to create, update, or delete an object by using a change token * that has already been used. * @throws WafInternalErrorException * The operation failed because of a system problem, even though the request was valid. Retry your request. * @throws WafNonexistentContainerException * The operation failed because you tried to add an object to or delete an object from another object that * doesn't exist. For example:

                                                                                                                                                                                                                                                                                    *
                                                                                                                                                                                                                                                                                      *
                                                                                                                                                                                                                                                                                    • *

                                                                                                                                                                                                                                                                                      * You tried to add a Rule to or delete a Rule from a WebACL that * doesn't exist. *

                                                                                                                                                                                                                                                                                      *
                                                                                                                                                                                                                                                                                    • *
                                                                                                                                                                                                                                                                                    • *

                                                                                                                                                                                                                                                                                      * You tried to add a ByteMatchSet to or delete a ByteMatchSet from a * Rule that doesn't exist. *

                                                                                                                                                                                                                                                                                      *
                                                                                                                                                                                                                                                                                    • *
                                                                                                                                                                                                                                                                                    • *

                                                                                                                                                                                                                                                                                      * You tried to add an IP address to or delete an IP address from an IPSet that doesn't exist. *

                                                                                                                                                                                                                                                                                      *
                                                                                                                                                                                                                                                                                    • *
                                                                                                                                                                                                                                                                                    • *

                                                                                                                                                                                                                                                                                      * You tried to add a ByteMatchTuple to or delete a ByteMatchTuple from a * ByteMatchSet that doesn't exist. *

                                                                                                                                                                                                                                                                                      *
                                                                                                                                                                                                                                                                                    • * @throws WafNonexistentItemException * The operation failed because the referenced object doesn't exist. * @throws WafInvalidOperationException * The operation failed because there was nothing to do. For example:

                                                                                                                                                                                                                                                                                      *
                                                                                                                                                                                                                                                                                        *
                                                                                                                                                                                                                                                                                      • *

                                                                                                                                                                                                                                                                                        * You tried to remove a Rule from a WebACL, but the Rule isn't in * the specified WebACL. *

                                                                                                                                                                                                                                                                                        *
                                                                                                                                                                                                                                                                                      • *
                                                                                                                                                                                                                                                                                      • *

                                                                                                                                                                                                                                                                                        * You tried to remove an IP address from an IPSet, but the IP address isn't in the specified * IPSet. *

                                                                                                                                                                                                                                                                                        *
                                                                                                                                                                                                                                                                                      • *
                                                                                                                                                                                                                                                                                      • *

                                                                                                                                                                                                                                                                                        * You tried to remove a ByteMatchTuple from a ByteMatchSet, but the * ByteMatchTuple isn't in the specified WebACL. *

                                                                                                                                                                                                                                                                                        *
                                                                                                                                                                                                                                                                                      • *
                                                                                                                                                                                                                                                                                      • *

                                                                                                                                                                                                                                                                                        * You tried to add a Rule to a WebACL, but the Rule already exists * in the specified WebACL. *

                                                                                                                                                                                                                                                                                        *
                                                                                                                                                                                                                                                                                      • *
                                                                                                                                                                                                                                                                                      • *

                                                                                                                                                                                                                                                                                        * You tried to add a ByteMatchTuple to a ByteMatchSet, but the * ByteMatchTuple already exists in the specified WebACL. *

                                                                                                                                                                                                                                                                                        *
                                                                                                                                                                                                                                                                                      • * @throws WafLimitsExceededException * The operation exceeds a resource limit, for example, the maximum number of WebACL objects * that you can create for an AWS account. For more information, see Limits in the AWS WAF * Developer Guide. * @throws WafInvalidParameterException * The operation failed because AWS WAF didn't recognize a parameter in the request. For example:

                                                                                                                                                                                                                                                                                        *
                                                                                                                                                                                                                                                                                          *
                                                                                                                                                                                                                                                                                        • *

                                                                                                                                                                                                                                                                                          * You specified an invalid parameter name. *

                                                                                                                                                                                                                                                                                          *
                                                                                                                                                                                                                                                                                        • *
                                                                                                                                                                                                                                                                                        • *

                                                                                                                                                                                                                                                                                          * You specified an invalid value. *

                                                                                                                                                                                                                                                                                          *
                                                                                                                                                                                                                                                                                        • *
                                                                                                                                                                                                                                                                                        • *

                                                                                                                                                                                                                                                                                          * You tried to update an object (ByteMatchSet, IPSet, Rule, or * WebACL) using an action other than INSERT or DELETE. *

                                                                                                                                                                                                                                                                                          *
                                                                                                                                                                                                                                                                                        • *
                                                                                                                                                                                                                                                                                        • *

                                                                                                                                                                                                                                                                                          * You tried to create a WebACL with a DefaultAction Type other than * ALLOW, BLOCK, or COUNT. *

                                                                                                                                                                                                                                                                                          *
                                                                                                                                                                                                                                                                                        • *
                                                                                                                                                                                                                                                                                        • *

                                                                                                                                                                                                                                                                                          * You tried to create a RateBasedRule with a RateKey value other than * IP. *

                                                                                                                                                                                                                                                                                          *
                                                                                                                                                                                                                                                                                        • *
                                                                                                                                                                                                                                                                                        • *

                                                                                                                                                                                                                                                                                          * You tried to update a WebACL with a WafAction Type other than * ALLOW, BLOCK, or COUNT. *

                                                                                                                                                                                                                                                                                          *
                                                                                                                                                                                                                                                                                        • *
                                                                                                                                                                                                                                                                                        • *

                                                                                                                                                                                                                                                                                          * You tried to update a ByteMatchSet with a FieldToMatch Type other * than HEADER, METHOD, QUERY_STRING, URI, or BODY. *

                                                                                                                                                                                                                                                                                          *
                                                                                                                                                                                                                                                                                        • *
                                                                                                                                                                                                                                                                                        • *

                                                                                                                                                                                                                                                                                          * You tried to update a ByteMatchSet with a Field of HEADER but no * value for Data. *

                                                                                                                                                                                                                                                                                          *
                                                                                                                                                                                                                                                                                        • *
                                                                                                                                                                                                                                                                                        • *

                                                                                                                                                                                                                                                                                          * Your request references an ARN that is malformed, or corresponds to a resource with which a web ACL * cannot be associated. *

                                                                                                                                                                                                                                                                                          *
                                                                                                                                                                                                                                                                                        • * @throws SdkException * Base class for all exceptions that can be thrown by the SDK (both service and client). Can be used for * catch all scenarios. * @throws SdkClientException * If any client side error occurs such as an IO related failure, failure to get credentials, etc. * @throws WafException * Base class for all service exceptions. Unknown exceptions will be thrown as an instance of this type. * @sample WafClient.UpdateRuleGroup * @see AWS API * Documentation */ default UpdateRuleGroupResponse updateRuleGroup(Consumer updateRuleGroupRequest) throws WafStaleDataException, WafInternalErrorException, WafNonexistentContainerException, WafNonexistentItemException, WafInvalidOperationException, WafLimitsExceededException, WafInvalidParameterException, AwsServiceException, SdkClientException, WafException { return updateRuleGroup(UpdateRuleGroupRequest.builder().applyMutation(updateRuleGroupRequest).build()); } /** * *

                                                                                                                                                                                                                                                                                          * This is AWS WAF Classic documentation. For more information, see AWS WAF Classic in the * developer guide. *

                                                                                                                                                                                                                                                                                          *

                                                                                                                                                                                                                                                                                          * For the latest version of AWS WAF, use the AWS WAFV2 API and see the AWS WAF Developer Guide. With * the latest version, AWS WAF has a single set of endpoints for regional and global use. *

                                                                                                                                                                                                                                                                                          *
                                                                                                                                                                                                                                                                                          *

                                                                                                                                                                                                                                                                                          * Inserts or deletes SizeConstraint objects (filters) in a SizeConstraintSet. For each * SizeConstraint object, you specify the following values: *

                                                                                                                                                                                                                                                                                          *
                                                                                                                                                                                                                                                                                            *
                                                                                                                                                                                                                                                                                          • *

                                                                                                                                                                                                                                                                                            * Whether to insert or delete the object from the array. If you want to change a * SizeConstraintSetUpdate object, you delete the existing object and add a new one. *

                                                                                                                                                                                                                                                                                            *
                                                                                                                                                                                                                                                                                          • *
                                                                                                                                                                                                                                                                                          • *

                                                                                                                                                                                                                                                                                            * The part of a web request that you want AWS WAF to evaluate, such as the length of a query string or the length * of the User-Agent header. *

                                                                                                                                                                                                                                                                                            *
                                                                                                                                                                                                                                                                                          • *
                                                                                                                                                                                                                                                                                          • *

                                                                                                                                                                                                                                                                                            * Whether to perform any transformations on the request, such as converting it to lowercase, before checking its * length. Note that transformations of the request body are not supported because the AWS resource forwards only * the first 8192 bytes of your request to AWS WAF. *

                                                                                                                                                                                                                                                                                            *

                                                                                                                                                                                                                                                                                            * You can only specify a single type of TextTransformation. *

                                                                                                                                                                                                                                                                                            *
                                                                                                                                                                                                                                                                                          • *
                                                                                                                                                                                                                                                                                          • *

                                                                                                                                                                                                                                                                                            * A ComparisonOperator used for evaluating the selected part of the request against the specified * Size, such as equals, greater than, less than, and so on. *

                                                                                                                                                                                                                                                                                            *
                                                                                                                                                                                                                                                                                          • *
                                                                                                                                                                                                                                                                                          • *

                                                                                                                                                                                                                                                                                            * The length, in bytes, that you want AWS WAF to watch for in selected part of the request. The length is computed * after applying the transformation. *

                                                                                                                                                                                                                                                                                            *
                                                                                                                                                                                                                                                                                          • *
                                                                                                                                                                                                                                                                                          *

                                                                                                                                                                                                                                                                                          * For example, you can add a SizeConstraintSetUpdate object that matches web requests in which the * length of the User-Agent header is greater than 100 bytes. You can then configure AWS WAF to block * those requests. *

                                                                                                                                                                                                                                                                                          *

                                                                                                                                                                                                                                                                                          * To create and configure a SizeConstraintSet, perform the following steps: *

                                                                                                                                                                                                                                                                                          *
                                                                                                                                                                                                                                                                                            *
                                                                                                                                                                                                                                                                                          1. *

                                                                                                                                                                                                                                                                                            * Create a SizeConstraintSet. For more information, see CreateSizeConstraintSet. *

                                                                                                                                                                                                                                                                                            *
                                                                                                                                                                                                                                                                                          2. *
                                                                                                                                                                                                                                                                                          3. *

                                                                                                                                                                                                                                                                                            * Use GetChangeToken to get the change token that you provide in the ChangeToken parameter of * an UpdateSizeConstraintSet request. *

                                                                                                                                                                                                                                                                                            *
                                                                                                                                                                                                                                                                                          4. *
                                                                                                                                                                                                                                                                                          5. *

                                                                                                                                                                                                                                                                                            * Submit an UpdateSizeConstraintSet request to specify the part of the request that you want AWS WAF * to inspect (for example, the header or the URI) and the value that you want AWS WAF to watch for. *

                                                                                                                                                                                                                                                                                            *
                                                                                                                                                                                                                                                                                          6. *
                                                                                                                                                                                                                                                                                          *

                                                                                                                                                                                                                                                                                          * For more information about how to use the AWS WAF API to allow or block HTTP requests, see the AWS WAF Developer Guide. *

                                                                                                                                                                                                                                                                                          * * @param updateSizeConstraintSetRequest * @return Result of the UpdateSizeConstraintSet operation returned by the service. * @throws WafStaleDataException * The operation failed because you tried to create, update, or delete an object by using a change token * that has already been used. * @throws WafInternalErrorException * The operation failed because of a system problem, even though the request was valid. Retry your request. * @throws WafInvalidAccountException * The operation failed because you tried to create, update, or delete an object by using an invalid account * identifier. * @throws WafInvalidOperationException * The operation failed because there was nothing to do. For example:

                                                                                                                                                                                                                                                                                          *
                                                                                                                                                                                                                                                                                            *
                                                                                                                                                                                                                                                                                          • *

                                                                                                                                                                                                                                                                                            * You tried to remove a Rule from a WebACL, but the Rule isn't in * the specified WebACL. *

                                                                                                                                                                                                                                                                                            *
                                                                                                                                                                                                                                                                                          • *
                                                                                                                                                                                                                                                                                          • *

                                                                                                                                                                                                                                                                                            * You tried to remove an IP address from an IPSet, but the IP address isn't in the specified * IPSet. *

                                                                                                                                                                                                                                                                                            *
                                                                                                                                                                                                                                                                                          • *
                                                                                                                                                                                                                                                                                          • *

                                                                                                                                                                                                                                                                                            * You tried to remove a ByteMatchTuple from a ByteMatchSet, but the * ByteMatchTuple isn't in the specified WebACL. *

                                                                                                                                                                                                                                                                                            *
                                                                                                                                                                                                                                                                                          • *
                                                                                                                                                                                                                                                                                          • *

                                                                                                                                                                                                                                                                                            * You tried to add a Rule to a WebACL, but the Rule already exists * in the specified WebACL. *

                                                                                                                                                                                                                                                                                            *
                                                                                                                                                                                                                                                                                          • *
                                                                                                                                                                                                                                                                                          • *

                                                                                                                                                                                                                                                                                            * You tried to add a ByteMatchTuple to a ByteMatchSet, but the * ByteMatchTuple already exists in the specified WebACL. *

                                                                                                                                                                                                                                                                                            *
                                                                                                                                                                                                                                                                                          • * @throws WafInvalidParameterException * The operation failed because AWS WAF didn't recognize a parameter in the request. For example:

                                                                                                                                                                                                                                                                                            *
                                                                                                                                                                                                                                                                                              *
                                                                                                                                                                                                                                                                                            • *

                                                                                                                                                                                                                                                                                              * You specified an invalid parameter name. *

                                                                                                                                                                                                                                                                                              *
                                                                                                                                                                                                                                                                                            • *
                                                                                                                                                                                                                                                                                            • *

                                                                                                                                                                                                                                                                                              * You specified an invalid value. *

                                                                                                                                                                                                                                                                                              *
                                                                                                                                                                                                                                                                                            • *
                                                                                                                                                                                                                                                                                            • *

                                                                                                                                                                                                                                                                                              * You tried to update an object (ByteMatchSet, IPSet, Rule, or * WebACL) using an action other than INSERT or DELETE. *

                                                                                                                                                                                                                                                                                              *
                                                                                                                                                                                                                                                                                            • *
                                                                                                                                                                                                                                                                                            • *

                                                                                                                                                                                                                                                                                              * You tried to create a WebACL with a DefaultAction Type other than * ALLOW, BLOCK, or COUNT. *

                                                                                                                                                                                                                                                                                              *
                                                                                                                                                                                                                                                                                            • *
                                                                                                                                                                                                                                                                                            • *

                                                                                                                                                                                                                                                                                              * You tried to create a RateBasedRule with a RateKey value other than * IP. *

                                                                                                                                                                                                                                                                                              *
                                                                                                                                                                                                                                                                                            • *
                                                                                                                                                                                                                                                                                            • *

                                                                                                                                                                                                                                                                                              * You tried to update a WebACL with a WafAction Type other than * ALLOW, BLOCK, or COUNT. *

                                                                                                                                                                                                                                                                                              *
                                                                                                                                                                                                                                                                                            • *
                                                                                                                                                                                                                                                                                            • *

                                                                                                                                                                                                                                                                                              * You tried to update a ByteMatchSet with a FieldToMatch Type other * than HEADER, METHOD, QUERY_STRING, URI, or BODY. *

                                                                                                                                                                                                                                                                                              *
                                                                                                                                                                                                                                                                                            • *
                                                                                                                                                                                                                                                                                            • *

                                                                                                                                                                                                                                                                                              * You tried to update a ByteMatchSet with a Field of HEADER but no * value for Data. *

                                                                                                                                                                                                                                                                                              *
                                                                                                                                                                                                                                                                                            • *
                                                                                                                                                                                                                                                                                            • *

                                                                                                                                                                                                                                                                                              * Your request references an ARN that is malformed, or corresponds to a resource with which a web ACL * cannot be associated. *

                                                                                                                                                                                                                                                                                              *
                                                                                                                                                                                                                                                                                            • * @throws WafNonexistentContainerException * The operation failed because you tried to add an object to or delete an object from another object that * doesn't exist. For example:

                                                                                                                                                                                                                                                                                              *
                                                                                                                                                                                                                                                                                                *
                                                                                                                                                                                                                                                                                              • *

                                                                                                                                                                                                                                                                                                * You tried to add a Rule to or delete a Rule from a WebACL that * doesn't exist. *

                                                                                                                                                                                                                                                                                                *
                                                                                                                                                                                                                                                                                              • *
                                                                                                                                                                                                                                                                                              • *

                                                                                                                                                                                                                                                                                                * You tried to add a ByteMatchSet to or delete a ByteMatchSet from a * Rule that doesn't exist. *

                                                                                                                                                                                                                                                                                                *
                                                                                                                                                                                                                                                                                              • *
                                                                                                                                                                                                                                                                                              • *

                                                                                                                                                                                                                                                                                                * You tried to add an IP address to or delete an IP address from an IPSet that doesn't exist. *

                                                                                                                                                                                                                                                                                                *
                                                                                                                                                                                                                                                                                              • *
                                                                                                                                                                                                                                                                                              • *

                                                                                                                                                                                                                                                                                                * You tried to add a ByteMatchTuple to or delete a ByteMatchTuple from a * ByteMatchSet that doesn't exist. *

                                                                                                                                                                                                                                                                                                *
                                                                                                                                                                                                                                                                                              • * @throws WafNonexistentItemException * The operation failed because the referenced object doesn't exist. * @throws WafReferencedItemException * The operation failed because you tried to delete an object that is still in use. For example:

                                                                                                                                                                                                                                                                                                *
                                                                                                                                                                                                                                                                                                  *
                                                                                                                                                                                                                                                                                                • *

                                                                                                                                                                                                                                                                                                  * You tried to delete a ByteMatchSet that is still referenced by a Rule. *

                                                                                                                                                                                                                                                                                                  *
                                                                                                                                                                                                                                                                                                • *
                                                                                                                                                                                                                                                                                                • *

                                                                                                                                                                                                                                                                                                  * You tried to delete a Rule that is still referenced by a WebACL. *

                                                                                                                                                                                                                                                                                                  *
                                                                                                                                                                                                                                                                                                • * @throws WafLimitsExceededException * The operation exceeds a resource limit, for example, the maximum number of WebACL objects * that you can create for an AWS account. For more information, see Limits in the AWS WAF * Developer Guide. * @throws SdkException * Base class for all exceptions that can be thrown by the SDK (both service and client). Can be used for * catch all scenarios. * @throws SdkClientException * If any client side error occurs such as an IO related failure, failure to get credentials, etc. * @throws WafException * Base class for all service exceptions. Unknown exceptions will be thrown as an instance of this type. * @sample WafClient.UpdateSizeConstraintSet * @see AWS * API Documentation */ default UpdateSizeConstraintSetResponse updateSizeConstraintSet(UpdateSizeConstraintSetRequest updateSizeConstraintSetRequest) throws WafStaleDataException, WafInternalErrorException, WafInvalidAccountException, WafInvalidOperationException, WafInvalidParameterException, WafNonexistentContainerException, WafNonexistentItemException, WafReferencedItemException, WafLimitsExceededException, AwsServiceException, SdkClientException, WafException { throw new UnsupportedOperationException(); } /** * *

                                                                                                                                                                                                                                                                                                  * This is AWS WAF Classic documentation. For more information, see AWS WAF Classic in the * developer guide. *

                                                                                                                                                                                                                                                                                                  *

                                                                                                                                                                                                                                                                                                  * For the latest version of AWS WAF, use the AWS WAFV2 API and see the AWS WAF Developer Guide. With * the latest version, AWS WAF has a single set of endpoints for regional and global use. *

                                                                                                                                                                                                                                                                                                  *
                                                                                                                                                                                                                                                                                                  *

                                                                                                                                                                                                                                                                                                  * Inserts or deletes SizeConstraint objects (filters) in a SizeConstraintSet. For each * SizeConstraint object, you specify the following values: *

                                                                                                                                                                                                                                                                                                  *
                                                                                                                                                                                                                                                                                                    *
                                                                                                                                                                                                                                                                                                  • *

                                                                                                                                                                                                                                                                                                    * Whether to insert or delete the object from the array. If you want to change a * SizeConstraintSetUpdate object, you delete the existing object and add a new one. *

                                                                                                                                                                                                                                                                                                    *
                                                                                                                                                                                                                                                                                                  • *
                                                                                                                                                                                                                                                                                                  • *

                                                                                                                                                                                                                                                                                                    * The part of a web request that you want AWS WAF to evaluate, such as the length of a query string or the length * of the User-Agent header. *

                                                                                                                                                                                                                                                                                                    *
                                                                                                                                                                                                                                                                                                  • *
                                                                                                                                                                                                                                                                                                  • *

                                                                                                                                                                                                                                                                                                    * Whether to perform any transformations on the request, such as converting it to lowercase, before checking its * length. Note that transformations of the request body are not supported because the AWS resource forwards only * the first 8192 bytes of your request to AWS WAF. *

                                                                                                                                                                                                                                                                                                    *

                                                                                                                                                                                                                                                                                                    * You can only specify a single type of TextTransformation. *

                                                                                                                                                                                                                                                                                                    *
                                                                                                                                                                                                                                                                                                  • *
                                                                                                                                                                                                                                                                                                  • *

                                                                                                                                                                                                                                                                                                    * A ComparisonOperator used for evaluating the selected part of the request against the specified * Size, such as equals, greater than, less than, and so on. *

                                                                                                                                                                                                                                                                                                    *
                                                                                                                                                                                                                                                                                                  • *
                                                                                                                                                                                                                                                                                                  • *

                                                                                                                                                                                                                                                                                                    * The length, in bytes, that you want AWS WAF to watch for in selected part of the request. The length is computed * after applying the transformation. *

                                                                                                                                                                                                                                                                                                    *
                                                                                                                                                                                                                                                                                                  • *
                                                                                                                                                                                                                                                                                                  *

                                                                                                                                                                                                                                                                                                  * For example, you can add a SizeConstraintSetUpdate object that matches web requests in which the * length of the User-Agent header is greater than 100 bytes. You can then configure AWS WAF to block * those requests. *

                                                                                                                                                                                                                                                                                                  *

                                                                                                                                                                                                                                                                                                  * To create and configure a SizeConstraintSet, perform the following steps: *

                                                                                                                                                                                                                                                                                                  *
                                                                                                                                                                                                                                                                                                    *
                                                                                                                                                                                                                                                                                                  1. *

                                                                                                                                                                                                                                                                                                    * Create a SizeConstraintSet. For more information, see CreateSizeConstraintSet. *

                                                                                                                                                                                                                                                                                                    *
                                                                                                                                                                                                                                                                                                  2. *
                                                                                                                                                                                                                                                                                                  3. *

                                                                                                                                                                                                                                                                                                    * Use GetChangeToken to get the change token that you provide in the ChangeToken parameter of * an UpdateSizeConstraintSet request. *

                                                                                                                                                                                                                                                                                                    *
                                                                                                                                                                                                                                                                                                  4. *
                                                                                                                                                                                                                                                                                                  5. *

                                                                                                                                                                                                                                                                                                    * Submit an UpdateSizeConstraintSet request to specify the part of the request that you want AWS WAF * to inspect (for example, the header or the URI) and the value that you want AWS WAF to watch for. *

                                                                                                                                                                                                                                                                                                    *
                                                                                                                                                                                                                                                                                                  6. *
                                                                                                                                                                                                                                                                                                  *

                                                                                                                                                                                                                                                                                                  * For more information about how to use the AWS WAF API to allow or block HTTP requests, see the AWS WAF Developer Guide. *

                                                                                                                                                                                                                                                                                                  *
                                                                                                                                                                                                                                                                                                  *

                                                                                                                                                                                                                                                                                                  * This is a convenience which creates an instance of the {@link UpdateSizeConstraintSetRequest.Builder} avoiding * the need to create one manually via {@link UpdateSizeConstraintSetRequest#builder()} *

                                                                                                                                                                                                                                                                                                  * * @param updateSizeConstraintSetRequest * A {@link Consumer} that will call methods on * {@link software.amazon.awssdk.services.waf.model.UpdateSizeConstraintSetRequest.Builder} to create a * request. * @return Result of the UpdateSizeConstraintSet operation returned by the service. * @throws WafStaleDataException * The operation failed because you tried to create, update, or delete an object by using a change token * that has already been used. * @throws WafInternalErrorException * The operation failed because of a system problem, even though the request was valid. Retry your request. * @throws WafInvalidAccountException * The operation failed because you tried to create, update, or delete an object by using an invalid account * identifier. * @throws WafInvalidOperationException * The operation failed because there was nothing to do. For example:

                                                                                                                                                                                                                                                                                                  *
                                                                                                                                                                                                                                                                                                    *
                                                                                                                                                                                                                                                                                                  • *

                                                                                                                                                                                                                                                                                                    * You tried to remove a Rule from a WebACL, but the Rule isn't in * the specified WebACL. *

                                                                                                                                                                                                                                                                                                    *
                                                                                                                                                                                                                                                                                                  • *
                                                                                                                                                                                                                                                                                                  • *

                                                                                                                                                                                                                                                                                                    * You tried to remove an IP address from an IPSet, but the IP address isn't in the specified * IPSet. *

                                                                                                                                                                                                                                                                                                    *
                                                                                                                                                                                                                                                                                                  • *
                                                                                                                                                                                                                                                                                                  • *

                                                                                                                                                                                                                                                                                                    * You tried to remove a ByteMatchTuple from a ByteMatchSet, but the * ByteMatchTuple isn't in the specified WebACL. *

                                                                                                                                                                                                                                                                                                    *
                                                                                                                                                                                                                                                                                                  • *
                                                                                                                                                                                                                                                                                                  • *

                                                                                                                                                                                                                                                                                                    * You tried to add a Rule to a WebACL, but the Rule already exists * in the specified WebACL. *

                                                                                                                                                                                                                                                                                                    *
                                                                                                                                                                                                                                                                                                  • *
                                                                                                                                                                                                                                                                                                  • *

                                                                                                                                                                                                                                                                                                    * You tried to add a ByteMatchTuple to a ByteMatchSet, but the * ByteMatchTuple already exists in the specified WebACL. *

                                                                                                                                                                                                                                                                                                    *
                                                                                                                                                                                                                                                                                                  • * @throws WafInvalidParameterException * The operation failed because AWS WAF didn't recognize a parameter in the request. For example:

                                                                                                                                                                                                                                                                                                    *
                                                                                                                                                                                                                                                                                                      *
                                                                                                                                                                                                                                                                                                    • *

                                                                                                                                                                                                                                                                                                      * You specified an invalid parameter name. *

                                                                                                                                                                                                                                                                                                      *
                                                                                                                                                                                                                                                                                                    • *
                                                                                                                                                                                                                                                                                                    • *

                                                                                                                                                                                                                                                                                                      * You specified an invalid value. *

                                                                                                                                                                                                                                                                                                      *
                                                                                                                                                                                                                                                                                                    • *
                                                                                                                                                                                                                                                                                                    • *

                                                                                                                                                                                                                                                                                                      * You tried to update an object (ByteMatchSet, IPSet, Rule, or * WebACL) using an action other than INSERT or DELETE. *

                                                                                                                                                                                                                                                                                                      *
                                                                                                                                                                                                                                                                                                    • *
                                                                                                                                                                                                                                                                                                    • *

                                                                                                                                                                                                                                                                                                      * You tried to create a WebACL with a DefaultAction Type other than * ALLOW, BLOCK, or COUNT. *

                                                                                                                                                                                                                                                                                                      *
                                                                                                                                                                                                                                                                                                    • *
                                                                                                                                                                                                                                                                                                    • *

                                                                                                                                                                                                                                                                                                      * You tried to create a RateBasedRule with a RateKey value other than * IP. *

                                                                                                                                                                                                                                                                                                      *
                                                                                                                                                                                                                                                                                                    • *
                                                                                                                                                                                                                                                                                                    • *

                                                                                                                                                                                                                                                                                                      * You tried to update a WebACL with a WafAction Type other than * ALLOW, BLOCK, or COUNT. *

                                                                                                                                                                                                                                                                                                      *
                                                                                                                                                                                                                                                                                                    • *
                                                                                                                                                                                                                                                                                                    • *

                                                                                                                                                                                                                                                                                                      * You tried to update a ByteMatchSet with a FieldToMatch Type other * than HEADER, METHOD, QUERY_STRING, URI, or BODY. *

                                                                                                                                                                                                                                                                                                      *
                                                                                                                                                                                                                                                                                                    • *
                                                                                                                                                                                                                                                                                                    • *

                                                                                                                                                                                                                                                                                                      * You tried to update a ByteMatchSet with a Field of HEADER but no * value for Data. *

                                                                                                                                                                                                                                                                                                      *
                                                                                                                                                                                                                                                                                                    • *
                                                                                                                                                                                                                                                                                                    • *

                                                                                                                                                                                                                                                                                                      * Your request references an ARN that is malformed, or corresponds to a resource with which a web ACL * cannot be associated. *

                                                                                                                                                                                                                                                                                                      *
                                                                                                                                                                                                                                                                                                    • * @throws WafNonexistentContainerException * The operation failed because you tried to add an object to or delete an object from another object that * doesn't exist. For example:

                                                                                                                                                                                                                                                                                                      *
                                                                                                                                                                                                                                                                                                        *
                                                                                                                                                                                                                                                                                                      • *

                                                                                                                                                                                                                                                                                                        * You tried to add a Rule to or delete a Rule from a WebACL that * doesn't exist. *

                                                                                                                                                                                                                                                                                                        *
                                                                                                                                                                                                                                                                                                      • *
                                                                                                                                                                                                                                                                                                      • *

                                                                                                                                                                                                                                                                                                        * You tried to add a ByteMatchSet to or delete a ByteMatchSet from a * Rule that doesn't exist. *

                                                                                                                                                                                                                                                                                                        *
                                                                                                                                                                                                                                                                                                      • *
                                                                                                                                                                                                                                                                                                      • *

                                                                                                                                                                                                                                                                                                        * You tried to add an IP address to or delete an IP address from an IPSet that doesn't exist. *

                                                                                                                                                                                                                                                                                                        *
                                                                                                                                                                                                                                                                                                      • *
                                                                                                                                                                                                                                                                                                      • *

                                                                                                                                                                                                                                                                                                        * You tried to add a ByteMatchTuple to or delete a ByteMatchTuple from a * ByteMatchSet that doesn't exist. *

                                                                                                                                                                                                                                                                                                        *
                                                                                                                                                                                                                                                                                                      • * @throws WafNonexistentItemException * The operation failed because the referenced object doesn't exist. * @throws WafReferencedItemException * The operation failed because you tried to delete an object that is still in use. For example:

                                                                                                                                                                                                                                                                                                        *
                                                                                                                                                                                                                                                                                                          *
                                                                                                                                                                                                                                                                                                        • *

                                                                                                                                                                                                                                                                                                          * You tried to delete a ByteMatchSet that is still referenced by a Rule. *

                                                                                                                                                                                                                                                                                                          *
                                                                                                                                                                                                                                                                                                        • *
                                                                                                                                                                                                                                                                                                        • *

                                                                                                                                                                                                                                                                                                          * You tried to delete a Rule that is still referenced by a WebACL. *

                                                                                                                                                                                                                                                                                                          *
                                                                                                                                                                                                                                                                                                        • * @throws WafLimitsExceededException * The operation exceeds a resource limit, for example, the maximum number of WebACL objects * that you can create for an AWS account. For more information, see Limits in the AWS WAF * Developer Guide. * @throws SdkException * Base class for all exceptions that can be thrown by the SDK (both service and client). Can be used for * catch all scenarios. * @throws SdkClientException * If any client side error occurs such as an IO related failure, failure to get credentials, etc. * @throws WafException * Base class for all service exceptions. Unknown exceptions will be thrown as an instance of this type. * @sample WafClient.UpdateSizeConstraintSet * @see AWS * API Documentation */ default UpdateSizeConstraintSetResponse updateSizeConstraintSet( Consumer updateSizeConstraintSetRequest) throws WafStaleDataException, WafInternalErrorException, WafInvalidAccountException, WafInvalidOperationException, WafInvalidParameterException, WafNonexistentContainerException, WafNonexistentItemException, WafReferencedItemException, WafLimitsExceededException, AwsServiceException, SdkClientException, WafException { return updateSizeConstraintSet(UpdateSizeConstraintSetRequest.builder().applyMutation(updateSizeConstraintSetRequest) .build()); } /** * *

                                                                                                                                                                                                                                                                                                          * This is AWS WAF Classic documentation. For more information, see AWS WAF Classic in the * developer guide. *

                                                                                                                                                                                                                                                                                                          *

                                                                                                                                                                                                                                                                                                          * For the latest version of AWS WAF, use the AWS WAFV2 API and see the AWS WAF Developer Guide. With * the latest version, AWS WAF has a single set of endpoints for regional and global use. *

                                                                                                                                                                                                                                                                                                          *
                                                                                                                                                                                                                                                                                                          *

                                                                                                                                                                                                                                                                                                          * Inserts or deletes SqlInjectionMatchTuple objects (filters) in a SqlInjectionMatchSet. For each * SqlInjectionMatchTuple object, you specify the following values: *

                                                                                                                                                                                                                                                                                                          *
                                                                                                                                                                                                                                                                                                            *
                                                                                                                                                                                                                                                                                                          • *

                                                                                                                                                                                                                                                                                                            * Action: Whether to insert the object into or delete the object from the array. To change a * SqlInjectionMatchTuple, you delete the existing object and add a new one. *

                                                                                                                                                                                                                                                                                                            *
                                                                                                                                                                                                                                                                                                          • *
                                                                                                                                                                                                                                                                                                          • *

                                                                                                                                                                                                                                                                                                            * FieldToMatch: The part of web requests that you want AWS WAF to inspect and, if you want AWS WAF to * inspect a header or custom query parameter, the name of the header or parameter. *

                                                                                                                                                                                                                                                                                                            *
                                                                                                                                                                                                                                                                                                          • *
                                                                                                                                                                                                                                                                                                          • *

                                                                                                                                                                                                                                                                                                            * TextTransformation: Which text transformation, if any, to perform on the web request before * inspecting the request for snippets of malicious SQL code. *

                                                                                                                                                                                                                                                                                                            *

                                                                                                                                                                                                                                                                                                            * You can only specify a single type of TextTransformation. *

                                                                                                                                                                                                                                                                                                            *
                                                                                                                                                                                                                                                                                                          • *
                                                                                                                                                                                                                                                                                                          *

                                                                                                                                                                                                                                                                                                          * You use SqlInjectionMatchSet objects to specify which CloudFront requests that you want to allow, * block, or count. For example, if you're receiving requests that contain snippets of SQL code in the query string * and you want to block the requests, you can create a SqlInjectionMatchSet with the applicable * settings, and then configure AWS WAF to block the requests. *

                                                                                                                                                                                                                                                                                                          *

                                                                                                                                                                                                                                                                                                          * To create and configure a SqlInjectionMatchSet, perform the following steps: *

                                                                                                                                                                                                                                                                                                          *
                                                                                                                                                                                                                                                                                                            *
                                                                                                                                                                                                                                                                                                          1. *

                                                                                                                                                                                                                                                                                                            * Submit a CreateSqlInjectionMatchSet request. *

                                                                                                                                                                                                                                                                                                            *
                                                                                                                                                                                                                                                                                                          2. *
                                                                                                                                                                                                                                                                                                          3. *

                                                                                                                                                                                                                                                                                                            * Use GetChangeToken to get the change token that you provide in the ChangeToken parameter of * an UpdateIPSet request. *

                                                                                                                                                                                                                                                                                                            *
                                                                                                                                                                                                                                                                                                          4. *
                                                                                                                                                                                                                                                                                                          5. *

                                                                                                                                                                                                                                                                                                            * Submit an UpdateSqlInjectionMatchSet request to specify the parts of web requests that you want AWS * WAF to inspect for snippets of SQL code. *

                                                                                                                                                                                                                                                                                                            *
                                                                                                                                                                                                                                                                                                          6. *
                                                                                                                                                                                                                                                                                                          *

                                                                                                                                                                                                                                                                                                          * For more information about how to use the AWS WAF API to allow or block HTTP requests, see the AWS WAF Developer Guide. *

                                                                                                                                                                                                                                                                                                          * * @param updateSqlInjectionMatchSetRequest * A request to update a SqlInjectionMatchSet. * @return Result of the UpdateSqlInjectionMatchSet operation returned by the service. * @throws WafInternalErrorException * The operation failed because of a system problem, even though the request was valid. Retry your request. * @throws WafInvalidAccountException * The operation failed because you tried to create, update, or delete an object by using an invalid account * identifier. * @throws WafInvalidOperationException * The operation failed because there was nothing to do. For example:

                                                                                                                                                                                                                                                                                                          *
                                                                                                                                                                                                                                                                                                            *
                                                                                                                                                                                                                                                                                                          • *

                                                                                                                                                                                                                                                                                                            * You tried to remove a Rule from a WebACL, but the Rule isn't in * the specified WebACL. *

                                                                                                                                                                                                                                                                                                            *
                                                                                                                                                                                                                                                                                                          • *
                                                                                                                                                                                                                                                                                                          • *

                                                                                                                                                                                                                                                                                                            * You tried to remove an IP address from an IPSet, but the IP address isn't in the specified * IPSet. *

                                                                                                                                                                                                                                                                                                            *
                                                                                                                                                                                                                                                                                                          • *
                                                                                                                                                                                                                                                                                                          • *

                                                                                                                                                                                                                                                                                                            * You tried to remove a ByteMatchTuple from a ByteMatchSet, but the * ByteMatchTuple isn't in the specified WebACL. *

                                                                                                                                                                                                                                                                                                            *
                                                                                                                                                                                                                                                                                                          • *
                                                                                                                                                                                                                                                                                                          • *

                                                                                                                                                                                                                                                                                                            * You tried to add a Rule to a WebACL, but the Rule already exists * in the specified WebACL. *

                                                                                                                                                                                                                                                                                                            *
                                                                                                                                                                                                                                                                                                          • *
                                                                                                                                                                                                                                                                                                          • *

                                                                                                                                                                                                                                                                                                            * You tried to add a ByteMatchTuple to a ByteMatchSet, but the * ByteMatchTuple already exists in the specified WebACL. *

                                                                                                                                                                                                                                                                                                            *
                                                                                                                                                                                                                                                                                                          • * @throws WafInvalidParameterException * The operation failed because AWS WAF didn't recognize a parameter in the request. For example:

                                                                                                                                                                                                                                                                                                            *
                                                                                                                                                                                                                                                                                                              *
                                                                                                                                                                                                                                                                                                            • *

                                                                                                                                                                                                                                                                                                              * You specified an invalid parameter name. *

                                                                                                                                                                                                                                                                                                              *
                                                                                                                                                                                                                                                                                                            • *
                                                                                                                                                                                                                                                                                                            • *

                                                                                                                                                                                                                                                                                                              * You specified an invalid value. *

                                                                                                                                                                                                                                                                                                              *
                                                                                                                                                                                                                                                                                                            • *
                                                                                                                                                                                                                                                                                                            • *

                                                                                                                                                                                                                                                                                                              * You tried to update an object (ByteMatchSet, IPSet, Rule, or * WebACL) using an action other than INSERT or DELETE. *

                                                                                                                                                                                                                                                                                                              *
                                                                                                                                                                                                                                                                                                            • *
                                                                                                                                                                                                                                                                                                            • *

                                                                                                                                                                                                                                                                                                              * You tried to create a WebACL with a DefaultAction Type other than * ALLOW, BLOCK, or COUNT. *

                                                                                                                                                                                                                                                                                                              *
                                                                                                                                                                                                                                                                                                            • *
                                                                                                                                                                                                                                                                                                            • *

                                                                                                                                                                                                                                                                                                              * You tried to create a RateBasedRule with a RateKey value other than * IP. *

                                                                                                                                                                                                                                                                                                              *
                                                                                                                                                                                                                                                                                                            • *
                                                                                                                                                                                                                                                                                                            • *

                                                                                                                                                                                                                                                                                                              * You tried to update a WebACL with a WafAction Type other than * ALLOW, BLOCK, or COUNT. *

                                                                                                                                                                                                                                                                                                              *
                                                                                                                                                                                                                                                                                                            • *
                                                                                                                                                                                                                                                                                                            • *

                                                                                                                                                                                                                                                                                                              * You tried to update a ByteMatchSet with a FieldToMatch Type other * than HEADER, METHOD, QUERY_STRING, URI, or BODY. *

                                                                                                                                                                                                                                                                                                              *
                                                                                                                                                                                                                                                                                                            • *
                                                                                                                                                                                                                                                                                                            • *

                                                                                                                                                                                                                                                                                                              * You tried to update a ByteMatchSet with a Field of HEADER but no * value for Data. *

                                                                                                                                                                                                                                                                                                              *
                                                                                                                                                                                                                                                                                                            • *
                                                                                                                                                                                                                                                                                                            • *

                                                                                                                                                                                                                                                                                                              * Your request references an ARN that is malformed, or corresponds to a resource with which a web ACL * cannot be associated. *

                                                                                                                                                                                                                                                                                                              *
                                                                                                                                                                                                                                                                                                            • * @throws WafNonexistentContainerException * The operation failed because you tried to add an object to or delete an object from another object that * doesn't exist. For example:

                                                                                                                                                                                                                                                                                                              *
                                                                                                                                                                                                                                                                                                                *
                                                                                                                                                                                                                                                                                                              • *

                                                                                                                                                                                                                                                                                                                * You tried to add a Rule to or delete a Rule from a WebACL that * doesn't exist. *

                                                                                                                                                                                                                                                                                                                *
                                                                                                                                                                                                                                                                                                              • *
                                                                                                                                                                                                                                                                                                              • *

                                                                                                                                                                                                                                                                                                                * You tried to add a ByteMatchSet to or delete a ByteMatchSet from a * Rule that doesn't exist. *

                                                                                                                                                                                                                                                                                                                *
                                                                                                                                                                                                                                                                                                              • *
                                                                                                                                                                                                                                                                                                              • *

                                                                                                                                                                                                                                                                                                                * You tried to add an IP address to or delete an IP address from an IPSet that doesn't exist. *

                                                                                                                                                                                                                                                                                                                *
                                                                                                                                                                                                                                                                                                              • *
                                                                                                                                                                                                                                                                                                              • *

                                                                                                                                                                                                                                                                                                                * You tried to add a ByteMatchTuple to or delete a ByteMatchTuple from a * ByteMatchSet that doesn't exist. *

                                                                                                                                                                                                                                                                                                                *
                                                                                                                                                                                                                                                                                                              • * @throws WafNonexistentItemException * The operation failed because the referenced object doesn't exist. * @throws WafStaleDataException * The operation failed because you tried to create, update, or delete an object by using a change token * that has already been used. * @throws WafLimitsExceededException * The operation exceeds a resource limit, for example, the maximum number of WebACL objects * that you can create for an AWS account. For more information, see Limits in the AWS WAF * Developer Guide. * @throws SdkException * Base class for all exceptions that can be thrown by the SDK (both service and client). Can be used for * catch all scenarios. * @throws SdkClientException * If any client side error occurs such as an IO related failure, failure to get credentials, etc. * @throws WafException * Base class for all service exceptions. Unknown exceptions will be thrown as an instance of this type. * @sample WafClient.UpdateSqlInjectionMatchSet * @see AWS API Documentation */ default UpdateSqlInjectionMatchSetResponse updateSqlInjectionMatchSet( UpdateSqlInjectionMatchSetRequest updateSqlInjectionMatchSetRequest) throws WafInternalErrorException, WafInvalidAccountException, WafInvalidOperationException, WafInvalidParameterException, WafNonexistentContainerException, WafNonexistentItemException, WafStaleDataException, WafLimitsExceededException, AwsServiceException, SdkClientException, WafException { throw new UnsupportedOperationException(); } /** * *

                                                                                                                                                                                                                                                                                                                * This is AWS WAF Classic documentation. For more information, see AWS WAF Classic in the * developer guide. *

                                                                                                                                                                                                                                                                                                                *

                                                                                                                                                                                                                                                                                                                * For the latest version of AWS WAF, use the AWS WAFV2 API and see the AWS WAF Developer Guide. With * the latest version, AWS WAF has a single set of endpoints for regional and global use. *

                                                                                                                                                                                                                                                                                                                *
                                                                                                                                                                                                                                                                                                                *

                                                                                                                                                                                                                                                                                                                * Inserts or deletes SqlInjectionMatchTuple objects (filters) in a SqlInjectionMatchSet. For each * SqlInjectionMatchTuple object, you specify the following values: *

                                                                                                                                                                                                                                                                                                                *
                                                                                                                                                                                                                                                                                                                  *
                                                                                                                                                                                                                                                                                                                • *

                                                                                                                                                                                                                                                                                                                  * Action: Whether to insert the object into or delete the object from the array. To change a * SqlInjectionMatchTuple, you delete the existing object and add a new one. *

                                                                                                                                                                                                                                                                                                                  *
                                                                                                                                                                                                                                                                                                                • *
                                                                                                                                                                                                                                                                                                                • *

                                                                                                                                                                                                                                                                                                                  * FieldToMatch: The part of web requests that you want AWS WAF to inspect and, if you want AWS WAF to * inspect a header or custom query parameter, the name of the header or parameter. *

                                                                                                                                                                                                                                                                                                                  *
                                                                                                                                                                                                                                                                                                                • *
                                                                                                                                                                                                                                                                                                                • *

                                                                                                                                                                                                                                                                                                                  * TextTransformation: Which text transformation, if any, to perform on the web request before * inspecting the request for snippets of malicious SQL code. *

                                                                                                                                                                                                                                                                                                                  *

                                                                                                                                                                                                                                                                                                                  * You can only specify a single type of TextTransformation. *

                                                                                                                                                                                                                                                                                                                  *
                                                                                                                                                                                                                                                                                                                • *
                                                                                                                                                                                                                                                                                                                *

                                                                                                                                                                                                                                                                                                                * You use SqlInjectionMatchSet objects to specify which CloudFront requests that you want to allow, * block, or count. For example, if you're receiving requests that contain snippets of SQL code in the query string * and you want to block the requests, you can create a SqlInjectionMatchSet with the applicable * settings, and then configure AWS WAF to block the requests. *

                                                                                                                                                                                                                                                                                                                *

                                                                                                                                                                                                                                                                                                                * To create and configure a SqlInjectionMatchSet, perform the following steps: *

                                                                                                                                                                                                                                                                                                                *
                                                                                                                                                                                                                                                                                                                  *
                                                                                                                                                                                                                                                                                                                1. *

                                                                                                                                                                                                                                                                                                                  * Submit a CreateSqlInjectionMatchSet request. *

                                                                                                                                                                                                                                                                                                                  *
                                                                                                                                                                                                                                                                                                                2. *
                                                                                                                                                                                                                                                                                                                3. *

                                                                                                                                                                                                                                                                                                                  * Use GetChangeToken to get the change token that you provide in the ChangeToken parameter of * an UpdateIPSet request. *

                                                                                                                                                                                                                                                                                                                  *
                                                                                                                                                                                                                                                                                                                4. *
                                                                                                                                                                                                                                                                                                                5. *

                                                                                                                                                                                                                                                                                                                  * Submit an UpdateSqlInjectionMatchSet request to specify the parts of web requests that you want AWS * WAF to inspect for snippets of SQL code. *

                                                                                                                                                                                                                                                                                                                  *
                                                                                                                                                                                                                                                                                                                6. *
                                                                                                                                                                                                                                                                                                                *

                                                                                                                                                                                                                                                                                                                * For more information about how to use the AWS WAF API to allow or block HTTP requests, see the AWS WAF Developer Guide. *

                                                                                                                                                                                                                                                                                                                *
                                                                                                                                                                                                                                                                                                                *

                                                                                                                                                                                                                                                                                                                * This is a convenience which creates an instance of the {@link UpdateSqlInjectionMatchSetRequest.Builder} avoiding * the need to create one manually via {@link UpdateSqlInjectionMatchSetRequest#builder()} *

                                                                                                                                                                                                                                                                                                                * * @param updateSqlInjectionMatchSetRequest * A {@link Consumer} that will call methods on * {@link software.amazon.awssdk.services.waf.model.UpdateSqlInjectionMatchSetRequest.Builder} to create a * request. A request to update a SqlInjectionMatchSet. * @return Result of the UpdateSqlInjectionMatchSet operation returned by the service. * @throws WafInternalErrorException * The operation failed because of a system problem, even though the request was valid. Retry your request. * @throws WafInvalidAccountException * The operation failed because you tried to create, update, or delete an object by using an invalid account * identifier. * @throws WafInvalidOperationException * The operation failed because there was nothing to do. For example:

                                                                                                                                                                                                                                                                                                                *
                                                                                                                                                                                                                                                                                                                  *
                                                                                                                                                                                                                                                                                                                • *

                                                                                                                                                                                                                                                                                                                  * You tried to remove a Rule from a WebACL, but the Rule isn't in * the specified WebACL. *

                                                                                                                                                                                                                                                                                                                  *
                                                                                                                                                                                                                                                                                                                • *
                                                                                                                                                                                                                                                                                                                • *

                                                                                                                                                                                                                                                                                                                  * You tried to remove an IP address from an IPSet, but the IP address isn't in the specified * IPSet. *

                                                                                                                                                                                                                                                                                                                  *
                                                                                                                                                                                                                                                                                                                • *
                                                                                                                                                                                                                                                                                                                • *

                                                                                                                                                                                                                                                                                                                  * You tried to remove a ByteMatchTuple from a ByteMatchSet, but the * ByteMatchTuple isn't in the specified WebACL. *

                                                                                                                                                                                                                                                                                                                  *
                                                                                                                                                                                                                                                                                                                • *
                                                                                                                                                                                                                                                                                                                • *

                                                                                                                                                                                                                                                                                                                  * You tried to add a Rule to a WebACL, but the Rule already exists * in the specified WebACL. *

                                                                                                                                                                                                                                                                                                                  *
                                                                                                                                                                                                                                                                                                                • *
                                                                                                                                                                                                                                                                                                                • *

                                                                                                                                                                                                                                                                                                                  * You tried to add a ByteMatchTuple to a ByteMatchSet, but the * ByteMatchTuple already exists in the specified WebACL. *

                                                                                                                                                                                                                                                                                                                  *
                                                                                                                                                                                                                                                                                                                • * @throws WafInvalidParameterException * The operation failed because AWS WAF didn't recognize a parameter in the request. For example:

                                                                                                                                                                                                                                                                                                                  *
                                                                                                                                                                                                                                                                                                                    *
                                                                                                                                                                                                                                                                                                                  • *

                                                                                                                                                                                                                                                                                                                    * You specified an invalid parameter name. *

                                                                                                                                                                                                                                                                                                                    *
                                                                                                                                                                                                                                                                                                                  • *
                                                                                                                                                                                                                                                                                                                  • *

                                                                                                                                                                                                                                                                                                                    * You specified an invalid value. *

                                                                                                                                                                                                                                                                                                                    *
                                                                                                                                                                                                                                                                                                                  • *
                                                                                                                                                                                                                                                                                                                  • *

                                                                                                                                                                                                                                                                                                                    * You tried to update an object (ByteMatchSet, IPSet, Rule, or * WebACL) using an action other than INSERT or DELETE. *

                                                                                                                                                                                                                                                                                                                    *
                                                                                                                                                                                                                                                                                                                  • *
                                                                                                                                                                                                                                                                                                                  • *

                                                                                                                                                                                                                                                                                                                    * You tried to create a WebACL with a DefaultAction Type other than * ALLOW, BLOCK, or COUNT. *

                                                                                                                                                                                                                                                                                                                    *
                                                                                                                                                                                                                                                                                                                  • *
                                                                                                                                                                                                                                                                                                                  • *

                                                                                                                                                                                                                                                                                                                    * You tried to create a RateBasedRule with a RateKey value other than * IP. *

                                                                                                                                                                                                                                                                                                                    *
                                                                                                                                                                                                                                                                                                                  • *
                                                                                                                                                                                                                                                                                                                  • *

                                                                                                                                                                                                                                                                                                                    * You tried to update a WebACL with a WafAction Type other than * ALLOW, BLOCK, or COUNT. *

                                                                                                                                                                                                                                                                                                                    *
                                                                                                                                                                                                                                                                                                                  • *
                                                                                                                                                                                                                                                                                                                  • *

                                                                                                                                                                                                                                                                                                                    * You tried to update a ByteMatchSet with a FieldToMatch Type other * than HEADER, METHOD, QUERY_STRING, URI, or BODY. *

                                                                                                                                                                                                                                                                                                                    *
                                                                                                                                                                                                                                                                                                                  • *
                                                                                                                                                                                                                                                                                                                  • *

                                                                                                                                                                                                                                                                                                                    * You tried to update a ByteMatchSet with a Field of HEADER but no * value for Data. *

                                                                                                                                                                                                                                                                                                                    *
                                                                                                                                                                                                                                                                                                                  • *
                                                                                                                                                                                                                                                                                                                  • *

                                                                                                                                                                                                                                                                                                                    * Your request references an ARN that is malformed, or corresponds to a resource with which a web ACL * cannot be associated. *

                                                                                                                                                                                                                                                                                                                    *
                                                                                                                                                                                                                                                                                                                  • * @throws WafNonexistentContainerException * The operation failed because you tried to add an object to or delete an object from another object that * doesn't exist. For example:

                                                                                                                                                                                                                                                                                                                    *
                                                                                                                                                                                                                                                                                                                      *
                                                                                                                                                                                                                                                                                                                    • *

                                                                                                                                                                                                                                                                                                                      * You tried to add a Rule to or delete a Rule from a WebACL that * doesn't exist. *

                                                                                                                                                                                                                                                                                                                      *
                                                                                                                                                                                                                                                                                                                    • *
                                                                                                                                                                                                                                                                                                                    • *

                                                                                                                                                                                                                                                                                                                      * You tried to add a ByteMatchSet to or delete a ByteMatchSet from a * Rule that doesn't exist. *

                                                                                                                                                                                                                                                                                                                      *
                                                                                                                                                                                                                                                                                                                    • *
                                                                                                                                                                                                                                                                                                                    • *

                                                                                                                                                                                                                                                                                                                      * You tried to add an IP address to or delete an IP address from an IPSet that doesn't exist. *

                                                                                                                                                                                                                                                                                                                      *
                                                                                                                                                                                                                                                                                                                    • *
                                                                                                                                                                                                                                                                                                                    • *

                                                                                                                                                                                                                                                                                                                      * You tried to add a ByteMatchTuple to or delete a ByteMatchTuple from a * ByteMatchSet that doesn't exist. *

                                                                                                                                                                                                                                                                                                                      *
                                                                                                                                                                                                                                                                                                                    • * @throws WafNonexistentItemException * The operation failed because the referenced object doesn't exist. * @throws WafStaleDataException * The operation failed because you tried to create, update, or delete an object by using a change token * that has already been used. * @throws WafLimitsExceededException * The operation exceeds a resource limit, for example, the maximum number of WebACL objects * that you can create for an AWS account. For more information, see Limits in the AWS WAF * Developer Guide. * @throws SdkException * Base class for all exceptions that can be thrown by the SDK (both service and client). Can be used for * catch all scenarios. * @throws SdkClientException * If any client side error occurs such as an IO related failure, failure to get credentials, etc. * @throws WafException * Base class for all service exceptions. Unknown exceptions will be thrown as an instance of this type. * @sample WafClient.UpdateSqlInjectionMatchSet * @see AWS API Documentation */ default UpdateSqlInjectionMatchSetResponse updateSqlInjectionMatchSet( Consumer updateSqlInjectionMatchSetRequest) throws WafInternalErrorException, WafInvalidAccountException, WafInvalidOperationException, WafInvalidParameterException, WafNonexistentContainerException, WafNonexistentItemException, WafStaleDataException, WafLimitsExceededException, AwsServiceException, SdkClientException, WafException { return updateSqlInjectionMatchSet(UpdateSqlInjectionMatchSetRequest.builder() .applyMutation(updateSqlInjectionMatchSetRequest).build()); } /** * *

                                                                                                                                                                                                                                                                                                                      * This is AWS WAF Classic documentation. For more information, see AWS WAF Classic in the * developer guide. *

                                                                                                                                                                                                                                                                                                                      *

                                                                                                                                                                                                                                                                                                                      * For the latest version of AWS WAF, use the AWS WAFV2 API and see the AWS WAF Developer Guide. With * the latest version, AWS WAF has a single set of endpoints for regional and global use. *

                                                                                                                                                                                                                                                                                                                      *
                                                                                                                                                                                                                                                                                                                      *

                                                                                                                                                                                                                                                                                                                      * Inserts or deletes ActivatedRule objects in a WebACL. Each Rule identifies web * requests that you want to allow, block, or count. When you update a WebACL, you specify the * following values: *

                                                                                                                                                                                                                                                                                                                      *
                                                                                                                                                                                                                                                                                                                        *
                                                                                                                                                                                                                                                                                                                      • *

                                                                                                                                                                                                                                                                                                                        * A default action for the WebACL, either ALLOW or BLOCK. AWS WAF performs * the default action if a request doesn't match the criteria in any of the Rules in a * WebACL. *

                                                                                                                                                                                                                                                                                                                        *
                                                                                                                                                                                                                                                                                                                      • *
                                                                                                                                                                                                                                                                                                                      • *

                                                                                                                                                                                                                                                                                                                        * The Rules that you want to add or delete. If you want to replace one Rule with another, * you delete the existing Rule and add the new one. *

                                                                                                                                                                                                                                                                                                                        *
                                                                                                                                                                                                                                                                                                                      • *
                                                                                                                                                                                                                                                                                                                      • *

                                                                                                                                                                                                                                                                                                                        * For each Rule, whether you want AWS WAF to allow requests, block requests, or count requests that * match the conditions in the Rule. *

                                                                                                                                                                                                                                                                                                                        *
                                                                                                                                                                                                                                                                                                                      • *
                                                                                                                                                                                                                                                                                                                      • *

                                                                                                                                                                                                                                                                                                                        * The order in which you want AWS WAF to evaluate the Rules in a WebACL. If you add more * than one Rule to a WebACL, AWS WAF evaluates each request against the * Rules in order based on the value of Priority. (The Rule that has the * lowest value for Priority is evaluated first.) When a web request matches all the predicates (such * as ByteMatchSets and IPSets) in a Rule, AWS WAF immediately takes the * corresponding action, allow or block, and doesn't evaluate the request against the remaining Rules * in the WebACL, if any. *

                                                                                                                                                                                                                                                                                                                        *
                                                                                                                                                                                                                                                                                                                      • *
                                                                                                                                                                                                                                                                                                                      *

                                                                                                                                                                                                                                                                                                                      * To create and configure a WebACL, perform the following steps: *

                                                                                                                                                                                                                                                                                                                      *
                                                                                                                                                                                                                                                                                                                        *
                                                                                                                                                                                                                                                                                                                      1. *

                                                                                                                                                                                                                                                                                                                        * Create and update the predicates that you want to include in Rules. For more information, see * CreateByteMatchSet, UpdateByteMatchSet, CreateIPSet, UpdateIPSet, * CreateSqlInjectionMatchSet, and UpdateSqlInjectionMatchSet. *

                                                                                                                                                                                                                                                                                                                        *
                                                                                                                                                                                                                                                                                                                      2. *
                                                                                                                                                                                                                                                                                                                      3. *

                                                                                                                                                                                                                                                                                                                        * Create and update the Rules that you want to include in the WebACL. For more * information, see CreateRule and UpdateRule. *

                                                                                                                                                                                                                                                                                                                        *
                                                                                                                                                                                                                                                                                                                      4. *
                                                                                                                                                                                                                                                                                                                      5. *

                                                                                                                                                                                                                                                                                                                        * Create a WebACL. See CreateWebACL. *

                                                                                                                                                                                                                                                                                                                        *
                                                                                                                                                                                                                                                                                                                      6. *
                                                                                                                                                                                                                                                                                                                      7. *

                                                                                                                                                                                                                                                                                                                        * Use GetChangeToken to get the change token that you provide in the ChangeToken * parameter of an UpdateWebACL request. *

                                                                                                                                                                                                                                                                                                                        *
                                                                                                                                                                                                                                                                                                                      8. *
                                                                                                                                                                                                                                                                                                                      9. *

                                                                                                                                                                                                                                                                                                                        * Submit an UpdateWebACL request to specify the Rules that you want to include in the * WebACL, to specify the default action, and to associate the WebACL with a CloudFront * distribution. *

                                                                                                                                                                                                                                                                                                                        *

                                                                                                                                                                                                                                                                                                                        * The ActivatedRule can be a rule group. If you specify a rule group as your * ActivatedRule , you can exclude specific rules from that rule group. *

                                                                                                                                                                                                                                                                                                                        *

                                                                                                                                                                                                                                                                                                                        * If you already have a rule group associated with a web ACL and want to submit an UpdateWebACL * request to exclude certain rules from that rule group, you must first remove the rule group from the web ACL, the * re-insert it again, specifying the excluded rules. For details, see ActivatedRule$ExcludedRules . *

                                                                                                                                                                                                                                                                                                                        *
                                                                                                                                                                                                                                                                                                                      10. *
                                                                                                                                                                                                                                                                                                                      *

                                                                                                                                                                                                                                                                                                                      * Be aware that if you try to add a RATE_BASED rule to a web ACL without setting the rule type when first creating * the rule, the UpdateWebACL request will fail because the request tries to add a REGULAR rule (the default * rule type) with the specified ID, which does not exist. *

                                                                                                                                                                                                                                                                                                                      *

                                                                                                                                                                                                                                                                                                                      * For more information about how to use the AWS WAF API to allow or block HTTP requests, see the AWS WAF Developer Guide. *

                                                                                                                                                                                                                                                                                                                      * * @param updateWebAclRequest * @return Result of the UpdateWebACL operation returned by the service. * @throws WafStaleDataException * The operation failed because you tried to create, update, or delete an object by using a change token * that has already been used. * @throws WafInternalErrorException * The operation failed because of a system problem, even though the request was valid. Retry your request. * @throws WafInvalidAccountException * The operation failed because you tried to create, update, or delete an object by using an invalid account * identifier. * @throws WafInvalidOperationException * The operation failed because there was nothing to do. For example:

                                                                                                                                                                                                                                                                                                                      *
                                                                                                                                                                                                                                                                                                                        *
                                                                                                                                                                                                                                                                                                                      • *

                                                                                                                                                                                                                                                                                                                        * You tried to remove a Rule from a WebACL, but the Rule isn't in * the specified WebACL. *

                                                                                                                                                                                                                                                                                                                        *
                                                                                                                                                                                                                                                                                                                      • *
                                                                                                                                                                                                                                                                                                                      • *

                                                                                                                                                                                                                                                                                                                        * You tried to remove an IP address from an IPSet, but the IP address isn't in the specified * IPSet. *

                                                                                                                                                                                                                                                                                                                        *
                                                                                                                                                                                                                                                                                                                      • *
                                                                                                                                                                                                                                                                                                                      • *

                                                                                                                                                                                                                                                                                                                        * You tried to remove a ByteMatchTuple from a ByteMatchSet, but the * ByteMatchTuple isn't in the specified WebACL. *

                                                                                                                                                                                                                                                                                                                        *
                                                                                                                                                                                                                                                                                                                      • *
                                                                                                                                                                                                                                                                                                                      • *

                                                                                                                                                                                                                                                                                                                        * You tried to add a Rule to a WebACL, but the Rule already exists * in the specified WebACL. *

                                                                                                                                                                                                                                                                                                                        *
                                                                                                                                                                                                                                                                                                                      • *
                                                                                                                                                                                                                                                                                                                      • *

                                                                                                                                                                                                                                                                                                                        * You tried to add a ByteMatchTuple to a ByteMatchSet, but the * ByteMatchTuple already exists in the specified WebACL. *

                                                                                                                                                                                                                                                                                                                        *
                                                                                                                                                                                                                                                                                                                      • * @throws WafInvalidParameterException * The operation failed because AWS WAF didn't recognize a parameter in the request. For example:

                                                                                                                                                                                                                                                                                                                        *
                                                                                                                                                                                                                                                                                                                          *
                                                                                                                                                                                                                                                                                                                        • *

                                                                                                                                                                                                                                                                                                                          * You specified an invalid parameter name. *

                                                                                                                                                                                                                                                                                                                          *
                                                                                                                                                                                                                                                                                                                        • *
                                                                                                                                                                                                                                                                                                                        • *

                                                                                                                                                                                                                                                                                                                          * You specified an invalid value. *

                                                                                                                                                                                                                                                                                                                          *
                                                                                                                                                                                                                                                                                                                        • *
                                                                                                                                                                                                                                                                                                                        • *

                                                                                                                                                                                                                                                                                                                          * You tried to update an object (ByteMatchSet, IPSet, Rule, or * WebACL) using an action other than INSERT or DELETE. *

                                                                                                                                                                                                                                                                                                                          *
                                                                                                                                                                                                                                                                                                                        • *
                                                                                                                                                                                                                                                                                                                        • *

                                                                                                                                                                                                                                                                                                                          * You tried to create a WebACL with a DefaultAction Type other than * ALLOW, BLOCK, or COUNT. *

                                                                                                                                                                                                                                                                                                                          *
                                                                                                                                                                                                                                                                                                                        • *
                                                                                                                                                                                                                                                                                                                        • *

                                                                                                                                                                                                                                                                                                                          * You tried to create a RateBasedRule with a RateKey value other than * IP. *

                                                                                                                                                                                                                                                                                                                          *
                                                                                                                                                                                                                                                                                                                        • *
                                                                                                                                                                                                                                                                                                                        • *

                                                                                                                                                                                                                                                                                                                          * You tried to update a WebACL with a WafAction Type other than * ALLOW, BLOCK, or COUNT. *

                                                                                                                                                                                                                                                                                                                          *
                                                                                                                                                                                                                                                                                                                        • *
                                                                                                                                                                                                                                                                                                                        • *

                                                                                                                                                                                                                                                                                                                          * You tried to update a ByteMatchSet with a FieldToMatch Type other * than HEADER, METHOD, QUERY_STRING, URI, or BODY. *

                                                                                                                                                                                                                                                                                                                          *
                                                                                                                                                                                                                                                                                                                        • *
                                                                                                                                                                                                                                                                                                                        • *

                                                                                                                                                                                                                                                                                                                          * You tried to update a ByteMatchSet with a Field of HEADER but no * value for Data. *

                                                                                                                                                                                                                                                                                                                          *
                                                                                                                                                                                                                                                                                                                        • *
                                                                                                                                                                                                                                                                                                                        • *

                                                                                                                                                                                                                                                                                                                          * Your request references an ARN that is malformed, or corresponds to a resource with which a web ACL * cannot be associated. *

                                                                                                                                                                                                                                                                                                                          *
                                                                                                                                                                                                                                                                                                                        • * @throws WafNonexistentContainerException * The operation failed because you tried to add an object to or delete an object from another object that * doesn't exist. For example:

                                                                                                                                                                                                                                                                                                                          *
                                                                                                                                                                                                                                                                                                                            *
                                                                                                                                                                                                                                                                                                                          • *

                                                                                                                                                                                                                                                                                                                            * You tried to add a Rule to or delete a Rule from a WebACL that * doesn't exist. *

                                                                                                                                                                                                                                                                                                                            *
                                                                                                                                                                                                                                                                                                                          • *
                                                                                                                                                                                                                                                                                                                          • *

                                                                                                                                                                                                                                                                                                                            * You tried to add a ByteMatchSet to or delete a ByteMatchSet from a * Rule that doesn't exist. *

                                                                                                                                                                                                                                                                                                                            *
                                                                                                                                                                                                                                                                                                                          • *
                                                                                                                                                                                                                                                                                                                          • *

                                                                                                                                                                                                                                                                                                                            * You tried to add an IP address to or delete an IP address from an IPSet that doesn't exist. *

                                                                                                                                                                                                                                                                                                                            *
                                                                                                                                                                                                                                                                                                                          • *
                                                                                                                                                                                                                                                                                                                          • *

                                                                                                                                                                                                                                                                                                                            * You tried to add a ByteMatchTuple to or delete a ByteMatchTuple from a * ByteMatchSet that doesn't exist. *

                                                                                                                                                                                                                                                                                                                            *
                                                                                                                                                                                                                                                                                                                          • * @throws WafNonexistentItemException * The operation failed because the referenced object doesn't exist. * @throws WafReferencedItemException * The operation failed because you tried to delete an object that is still in use. For example:

                                                                                                                                                                                                                                                                                                                            *
                                                                                                                                                                                                                                                                                                                              *
                                                                                                                                                                                                                                                                                                                            • *

                                                                                                                                                                                                                                                                                                                              * You tried to delete a ByteMatchSet that is still referenced by a Rule. *

                                                                                                                                                                                                                                                                                                                              *
                                                                                                                                                                                                                                                                                                                            • *
                                                                                                                                                                                                                                                                                                                            • *

                                                                                                                                                                                                                                                                                                                              * You tried to delete a Rule that is still referenced by a WebACL. *

                                                                                                                                                                                                                                                                                                                              *
                                                                                                                                                                                                                                                                                                                            • * @throws WafLimitsExceededException * The operation exceeds a resource limit, for example, the maximum number of WebACL objects * that you can create for an AWS account. For more information, see Limits in the AWS WAF * Developer Guide. * @throws WafSubscriptionNotFoundException * The specified subscription does not exist. * @throws SdkException * Base class for all exceptions that can be thrown by the SDK (both service and client). Can be used for * catch all scenarios. * @throws SdkClientException * If any client side error occurs such as an IO related failure, failure to get credentials, etc. * @throws WafException * Base class for all service exceptions. Unknown exceptions will be thrown as an instance of this type. * @sample WafClient.UpdateWebACL * @see AWS API * Documentation */ default UpdateWebAclResponse updateWebACL(UpdateWebAclRequest updateWebAclRequest) throws WafStaleDataException, WafInternalErrorException, WafInvalidAccountException, WafInvalidOperationException, WafInvalidParameterException, WafNonexistentContainerException, WafNonexistentItemException, WafReferencedItemException, WafLimitsExceededException, WafSubscriptionNotFoundException, AwsServiceException, SdkClientException, WafException { throw new UnsupportedOperationException(); } /** * *

                                                                                                                                                                                                                                                                                                                              * This is AWS WAF Classic documentation. For more information, see AWS WAF Classic in the * developer guide. *

                                                                                                                                                                                                                                                                                                                              *

                                                                                                                                                                                                                                                                                                                              * For the latest version of AWS WAF, use the AWS WAFV2 API and see the AWS WAF Developer Guide. With * the latest version, AWS WAF has a single set of endpoints for regional and global use. *

                                                                                                                                                                                                                                                                                                                              *
                                                                                                                                                                                                                                                                                                                              *

                                                                                                                                                                                                                                                                                                                              * Inserts or deletes ActivatedRule objects in a WebACL. Each Rule identifies web * requests that you want to allow, block, or count. When you update a WebACL, you specify the * following values: *

                                                                                                                                                                                                                                                                                                                              *
                                                                                                                                                                                                                                                                                                                                *
                                                                                                                                                                                                                                                                                                                              • *

                                                                                                                                                                                                                                                                                                                                * A default action for the WebACL, either ALLOW or BLOCK. AWS WAF performs * the default action if a request doesn't match the criteria in any of the Rules in a * WebACL. *

                                                                                                                                                                                                                                                                                                                                *
                                                                                                                                                                                                                                                                                                                              • *
                                                                                                                                                                                                                                                                                                                              • *

                                                                                                                                                                                                                                                                                                                                * The Rules that you want to add or delete. If you want to replace one Rule with another, * you delete the existing Rule and add the new one. *

                                                                                                                                                                                                                                                                                                                                *
                                                                                                                                                                                                                                                                                                                              • *
                                                                                                                                                                                                                                                                                                                              • *

                                                                                                                                                                                                                                                                                                                                * For each Rule, whether you want AWS WAF to allow requests, block requests, or count requests that * match the conditions in the Rule. *

                                                                                                                                                                                                                                                                                                                                *
                                                                                                                                                                                                                                                                                                                              • *
                                                                                                                                                                                                                                                                                                                              • *

                                                                                                                                                                                                                                                                                                                                * The order in which you want AWS WAF to evaluate the Rules in a WebACL. If you add more * than one Rule to a WebACL, AWS WAF evaluates each request against the * Rules in order based on the value of Priority. (The Rule that has the * lowest value for Priority is evaluated first.) When a web request matches all the predicates (such * as ByteMatchSets and IPSets) in a Rule, AWS WAF immediately takes the * corresponding action, allow or block, and doesn't evaluate the request against the remaining Rules * in the WebACL, if any. *

                                                                                                                                                                                                                                                                                                                                *
                                                                                                                                                                                                                                                                                                                              • *
                                                                                                                                                                                                                                                                                                                              *

                                                                                                                                                                                                                                                                                                                              * To create and configure a WebACL, perform the following steps: *

                                                                                                                                                                                                                                                                                                                              *
                                                                                                                                                                                                                                                                                                                                *
                                                                                                                                                                                                                                                                                                                              1. *

                                                                                                                                                                                                                                                                                                                                * Create and update the predicates that you want to include in Rules. For more information, see * CreateByteMatchSet, UpdateByteMatchSet, CreateIPSet, UpdateIPSet, * CreateSqlInjectionMatchSet, and UpdateSqlInjectionMatchSet. *

                                                                                                                                                                                                                                                                                                                                *
                                                                                                                                                                                                                                                                                                                              2. *
                                                                                                                                                                                                                                                                                                                              3. *

                                                                                                                                                                                                                                                                                                                                * Create and update the Rules that you want to include in the WebACL. For more * information, see CreateRule and UpdateRule. *

                                                                                                                                                                                                                                                                                                                                *
                                                                                                                                                                                                                                                                                                                              4. *
                                                                                                                                                                                                                                                                                                                              5. *

                                                                                                                                                                                                                                                                                                                                * Create a WebACL. See CreateWebACL. *

                                                                                                                                                                                                                                                                                                                                *
                                                                                                                                                                                                                                                                                                                              6. *
                                                                                                                                                                                                                                                                                                                              7. *

                                                                                                                                                                                                                                                                                                                                * Use GetChangeToken to get the change token that you provide in the ChangeToken * parameter of an UpdateWebACL request. *

                                                                                                                                                                                                                                                                                                                                *
                                                                                                                                                                                                                                                                                                                              8. *
                                                                                                                                                                                                                                                                                                                              9. *

                                                                                                                                                                                                                                                                                                                                * Submit an UpdateWebACL request to specify the Rules that you want to include in the * WebACL, to specify the default action, and to associate the WebACL with a CloudFront * distribution. *

                                                                                                                                                                                                                                                                                                                                *

                                                                                                                                                                                                                                                                                                                                * The ActivatedRule can be a rule group. If you specify a rule group as your * ActivatedRule , you can exclude specific rules from that rule group. *

                                                                                                                                                                                                                                                                                                                                *

                                                                                                                                                                                                                                                                                                                                * If you already have a rule group associated with a web ACL and want to submit an UpdateWebACL * request to exclude certain rules from that rule group, you must first remove the rule group from the web ACL, the * re-insert it again, specifying the excluded rules. For details, see ActivatedRule$ExcludedRules . *

                                                                                                                                                                                                                                                                                                                                *
                                                                                                                                                                                                                                                                                                                              10. *
                                                                                                                                                                                                                                                                                                                              *

                                                                                                                                                                                                                                                                                                                              * Be aware that if you try to add a RATE_BASED rule to a web ACL without setting the rule type when first creating * the rule, the UpdateWebACL request will fail because the request tries to add a REGULAR rule (the default * rule type) with the specified ID, which does not exist. *

                                                                                                                                                                                                                                                                                                                              *

                                                                                                                                                                                                                                                                                                                              * For more information about how to use the AWS WAF API to allow or block HTTP requests, see the AWS WAF Developer Guide. *

                                                                                                                                                                                                                                                                                                                              *
                                                                                                                                                                                                                                                                                                                              *

                                                                                                                                                                                                                                                                                                                              * This is a convenience which creates an instance of the {@link UpdateWebAclRequest.Builder} avoiding the need to * create one manually via {@link UpdateWebAclRequest#builder()} *

                                                                                                                                                                                                                                                                                                                              * * @param updateWebAclRequest * A {@link Consumer} that will call methods on * {@link software.amazon.awssdk.services.waf.model.UpdateWebAclRequest.Builder} to create a request. * @return Result of the UpdateWebACL operation returned by the service. * @throws WafStaleDataException * The operation failed because you tried to create, update, or delete an object by using a change token * that has already been used. * @throws WafInternalErrorException * The operation failed because of a system problem, even though the request was valid. Retry your request. * @throws WafInvalidAccountException * The operation failed because you tried to create, update, or delete an object by using an invalid account * identifier. * @throws WafInvalidOperationException * The operation failed because there was nothing to do. For example:

                                                                                                                                                                                                                                                                                                                              *
                                                                                                                                                                                                                                                                                                                                *
                                                                                                                                                                                                                                                                                                                              • *

                                                                                                                                                                                                                                                                                                                                * You tried to remove a Rule from a WebACL, but the Rule isn't in * the specified WebACL. *

                                                                                                                                                                                                                                                                                                                                *
                                                                                                                                                                                                                                                                                                                              • *
                                                                                                                                                                                                                                                                                                                              • *

                                                                                                                                                                                                                                                                                                                                * You tried to remove an IP address from an IPSet, but the IP address isn't in the specified * IPSet. *

                                                                                                                                                                                                                                                                                                                                *
                                                                                                                                                                                                                                                                                                                              • *
                                                                                                                                                                                                                                                                                                                              • *

                                                                                                                                                                                                                                                                                                                                * You tried to remove a ByteMatchTuple from a ByteMatchSet, but the * ByteMatchTuple isn't in the specified WebACL. *

                                                                                                                                                                                                                                                                                                                                *
                                                                                                                                                                                                                                                                                                                              • *
                                                                                                                                                                                                                                                                                                                              • *

                                                                                                                                                                                                                                                                                                                                * You tried to add a Rule to a WebACL, but the Rule already exists * in the specified WebACL. *

                                                                                                                                                                                                                                                                                                                                *
                                                                                                                                                                                                                                                                                                                              • *
                                                                                                                                                                                                                                                                                                                              • *

                                                                                                                                                                                                                                                                                                                                * You tried to add a ByteMatchTuple to a ByteMatchSet, but the * ByteMatchTuple already exists in the specified WebACL. *

                                                                                                                                                                                                                                                                                                                                *
                                                                                                                                                                                                                                                                                                                              • * @throws WafInvalidParameterException * The operation failed because AWS WAF didn't recognize a parameter in the request. For example:

                                                                                                                                                                                                                                                                                                                                *
                                                                                                                                                                                                                                                                                                                                  *
                                                                                                                                                                                                                                                                                                                                • *

                                                                                                                                                                                                                                                                                                                                  * You specified an invalid parameter name. *

                                                                                                                                                                                                                                                                                                                                  *
                                                                                                                                                                                                                                                                                                                                • *
                                                                                                                                                                                                                                                                                                                                • *

                                                                                                                                                                                                                                                                                                                                  * You specified an invalid value. *

                                                                                                                                                                                                                                                                                                                                  *
                                                                                                                                                                                                                                                                                                                                • *
                                                                                                                                                                                                                                                                                                                                • *

                                                                                                                                                                                                                                                                                                                                  * You tried to update an object (ByteMatchSet, IPSet, Rule, or * WebACL) using an action other than INSERT or DELETE. *

                                                                                                                                                                                                                                                                                                                                  *
                                                                                                                                                                                                                                                                                                                                • *
                                                                                                                                                                                                                                                                                                                                • *

                                                                                                                                                                                                                                                                                                                                  * You tried to create a WebACL with a DefaultAction Type other than * ALLOW, BLOCK, or COUNT. *

                                                                                                                                                                                                                                                                                                                                  *
                                                                                                                                                                                                                                                                                                                                • *
                                                                                                                                                                                                                                                                                                                                • *

                                                                                                                                                                                                                                                                                                                                  * You tried to create a RateBasedRule with a RateKey value other than * IP. *

                                                                                                                                                                                                                                                                                                                                  *
                                                                                                                                                                                                                                                                                                                                • *
                                                                                                                                                                                                                                                                                                                                • *

                                                                                                                                                                                                                                                                                                                                  * You tried to update a WebACL with a WafAction Type other than * ALLOW, BLOCK, or COUNT. *

                                                                                                                                                                                                                                                                                                                                  *
                                                                                                                                                                                                                                                                                                                                • *
                                                                                                                                                                                                                                                                                                                                • *

                                                                                                                                                                                                                                                                                                                                  * You tried to update a ByteMatchSet with a FieldToMatch Type other * than HEADER, METHOD, QUERY_STRING, URI, or BODY. *

                                                                                                                                                                                                                                                                                                                                  *
                                                                                                                                                                                                                                                                                                                                • *
                                                                                                                                                                                                                                                                                                                                • *

                                                                                                                                                                                                                                                                                                                                  * You tried to update a ByteMatchSet with a Field of HEADER but no * value for Data. *

                                                                                                                                                                                                                                                                                                                                  *
                                                                                                                                                                                                                                                                                                                                • *
                                                                                                                                                                                                                                                                                                                                • *

                                                                                                                                                                                                                                                                                                                                  * Your request references an ARN that is malformed, or corresponds to a resource with which a web ACL * cannot be associated. *

                                                                                                                                                                                                                                                                                                                                  *
                                                                                                                                                                                                                                                                                                                                • * @throws WafNonexistentContainerException * The operation failed because you tried to add an object to or delete an object from another object that * doesn't exist. For example:

                                                                                                                                                                                                                                                                                                                                  *
                                                                                                                                                                                                                                                                                                                                    *
                                                                                                                                                                                                                                                                                                                                  • *

                                                                                                                                                                                                                                                                                                                                    * You tried to add a Rule to or delete a Rule from a WebACL that * doesn't exist. *

                                                                                                                                                                                                                                                                                                                                    *
                                                                                                                                                                                                                                                                                                                                  • *
                                                                                                                                                                                                                                                                                                                                  • *

                                                                                                                                                                                                                                                                                                                                    * You tried to add a ByteMatchSet to or delete a ByteMatchSet from a * Rule that doesn't exist. *

                                                                                                                                                                                                                                                                                                                                    *
                                                                                                                                                                                                                                                                                                                                  • *
                                                                                                                                                                                                                                                                                                                                  • *

                                                                                                                                                                                                                                                                                                                                    * You tried to add an IP address to or delete an IP address from an IPSet that doesn't exist. *

                                                                                                                                                                                                                                                                                                                                    *
                                                                                                                                                                                                                                                                                                                                  • *
                                                                                                                                                                                                                                                                                                                                  • *

                                                                                                                                                                                                                                                                                                                                    * You tried to add a ByteMatchTuple to or delete a ByteMatchTuple from a * ByteMatchSet that doesn't exist. *

                                                                                                                                                                                                                                                                                                                                    *
                                                                                                                                                                                                                                                                                                                                  • * @throws WafNonexistentItemException * The operation failed because the referenced object doesn't exist. * @throws WafReferencedItemException * The operation failed because you tried to delete an object that is still in use. For example:

                                                                                                                                                                                                                                                                                                                                    *
                                                                                                                                                                                                                                                                                                                                      *
                                                                                                                                                                                                                                                                                                                                    • *

                                                                                                                                                                                                                                                                                                                                      * You tried to delete a ByteMatchSet that is still referenced by a Rule. *

                                                                                                                                                                                                                                                                                                                                      *
                                                                                                                                                                                                                                                                                                                                    • *
                                                                                                                                                                                                                                                                                                                                    • *

                                                                                                                                                                                                                                                                                                                                      * You tried to delete a Rule that is still referenced by a WebACL. *

                                                                                                                                                                                                                                                                                                                                      *
                                                                                                                                                                                                                                                                                                                                    • * @throws WafLimitsExceededException * The operation exceeds a resource limit, for example, the maximum number of WebACL objects * that you can create for an AWS account. For more information, see Limits in the AWS WAF * Developer Guide. * @throws WafSubscriptionNotFoundException * The specified subscription does not exist. * @throws SdkException * Base class for all exceptions that can be thrown by the SDK (both service and client). Can be used for * catch all scenarios. * @throws SdkClientException * If any client side error occurs such as an IO related failure, failure to get credentials, etc. * @throws WafException * Base class for all service exceptions. Unknown exceptions will be thrown as an instance of this type. * @sample WafClient.UpdateWebACL * @see AWS API * Documentation */ default UpdateWebAclResponse updateWebACL(Consumer updateWebAclRequest) throws WafStaleDataException, WafInternalErrorException, WafInvalidAccountException, WafInvalidOperationException, WafInvalidParameterException, WafNonexistentContainerException, WafNonexistentItemException, WafReferencedItemException, WafLimitsExceededException, WafSubscriptionNotFoundException, AwsServiceException, SdkClientException, WafException { return updateWebACL(UpdateWebAclRequest.builder().applyMutation(updateWebAclRequest).build()); } /** * *

                                                                                                                                                                                                                                                                                                                                      * This is AWS WAF Classic documentation. For more information, see AWS WAF Classic in the * developer guide. *

                                                                                                                                                                                                                                                                                                                                      *

                                                                                                                                                                                                                                                                                                                                      * For the latest version of AWS WAF, use the AWS WAFV2 API and see the AWS WAF Developer Guide. With * the latest version, AWS WAF has a single set of endpoints for regional and global use. *

                                                                                                                                                                                                                                                                                                                                      *
                                                                                                                                                                                                                                                                                                                                      *

                                                                                                                                                                                                                                                                                                                                      * Inserts or deletes XssMatchTuple objects (filters) in an XssMatchSet. For each * XssMatchTuple object, you specify the following values: *

                                                                                                                                                                                                                                                                                                                                      *
                                                                                                                                                                                                                                                                                                                                        *
                                                                                                                                                                                                                                                                                                                                      • *

                                                                                                                                                                                                                                                                                                                                        * Action: Whether to insert the object into or delete the object from the array. To change an * XssMatchTuple, you delete the existing object and add a new one. *

                                                                                                                                                                                                                                                                                                                                        *
                                                                                                                                                                                                                                                                                                                                      • *
                                                                                                                                                                                                                                                                                                                                      • *

                                                                                                                                                                                                                                                                                                                                        * FieldToMatch: The part of web requests that you want AWS WAF to inspect and, if you want AWS WAF to * inspect a header or custom query parameter, the name of the header or parameter. *

                                                                                                                                                                                                                                                                                                                                        *
                                                                                                                                                                                                                                                                                                                                      • *
                                                                                                                                                                                                                                                                                                                                      • *

                                                                                                                                                                                                                                                                                                                                        * TextTransformation: Which text transformation, if any, to perform on the web request before * inspecting the request for cross-site scripting attacks. *

                                                                                                                                                                                                                                                                                                                                        *

                                                                                                                                                                                                                                                                                                                                        * You can only specify a single type of TextTransformation. *

                                                                                                                                                                                                                                                                                                                                        *
                                                                                                                                                                                                                                                                                                                                      • *
                                                                                                                                                                                                                                                                                                                                      *

                                                                                                                                                                                                                                                                                                                                      * You use XssMatchSet objects to specify which CloudFront requests that you want to allow, block, or * count. For example, if you're receiving requests that contain cross-site scripting attacks in the request body * and you want to block the requests, you can create an XssMatchSet with the applicable settings, and * then configure AWS WAF to block the requests. *

                                                                                                                                                                                                                                                                                                                                      *

                                                                                                                                                                                                                                                                                                                                      * To create and configure an XssMatchSet, perform the following steps: *

                                                                                                                                                                                                                                                                                                                                      *
                                                                                                                                                                                                                                                                                                                                        *
                                                                                                                                                                                                                                                                                                                                      1. *

                                                                                                                                                                                                                                                                                                                                        * Submit a CreateXssMatchSet request. *

                                                                                                                                                                                                                                                                                                                                        *
                                                                                                                                                                                                                                                                                                                                      2. *
                                                                                                                                                                                                                                                                                                                                      3. *

                                                                                                                                                                                                                                                                                                                                        * Use GetChangeToken to get the change token that you provide in the ChangeToken parameter of * an UpdateIPSet request. *

                                                                                                                                                                                                                                                                                                                                        *
                                                                                                                                                                                                                                                                                                                                      4. *
                                                                                                                                                                                                                                                                                                                                      5. *

                                                                                                                                                                                                                                                                                                                                        * Submit an UpdateXssMatchSet request to specify the parts of web requests that you want AWS WAF to * inspect for cross-site scripting attacks. *

                                                                                                                                                                                                                                                                                                                                        *
                                                                                                                                                                                                                                                                                                                                      6. *
                                                                                                                                                                                                                                                                                                                                      *

                                                                                                                                                                                                                                                                                                                                      * For more information about how to use the AWS WAF API to allow or block HTTP requests, see the AWS WAF Developer Guide. *

                                                                                                                                                                                                                                                                                                                                      * * @param updateXssMatchSetRequest * A request to update an XssMatchSet. * @return Result of the UpdateXssMatchSet operation returned by the service. * @throws WafInternalErrorException * The operation failed because of a system problem, even though the request was valid. Retry your request. * @throws WafInvalidAccountException * The operation failed because you tried to create, update, or delete an object by using an invalid account * identifier. * @throws WafInvalidOperationException * The operation failed because there was nothing to do. For example:

                                                                                                                                                                                                                                                                                                                                      *
                                                                                                                                                                                                                                                                                                                                        *
                                                                                                                                                                                                                                                                                                                                      • *

                                                                                                                                                                                                                                                                                                                                        * You tried to remove a Rule from a WebACL, but the Rule isn't in * the specified WebACL. *

                                                                                                                                                                                                                                                                                                                                        *
                                                                                                                                                                                                                                                                                                                                      • *
                                                                                                                                                                                                                                                                                                                                      • *

                                                                                                                                                                                                                                                                                                                                        * You tried to remove an IP address from an IPSet, but the IP address isn't in the specified * IPSet. *

                                                                                                                                                                                                                                                                                                                                        *
                                                                                                                                                                                                                                                                                                                                      • *
                                                                                                                                                                                                                                                                                                                                      • *

                                                                                                                                                                                                                                                                                                                                        * You tried to remove a ByteMatchTuple from a ByteMatchSet, but the * ByteMatchTuple isn't in the specified WebACL. *

                                                                                                                                                                                                                                                                                                                                        *
                                                                                                                                                                                                                                                                                                                                      • *
                                                                                                                                                                                                                                                                                                                                      • *

                                                                                                                                                                                                                                                                                                                                        * You tried to add a Rule to a WebACL, but the Rule already exists * in the specified WebACL. *

                                                                                                                                                                                                                                                                                                                                        *
                                                                                                                                                                                                                                                                                                                                      • *
                                                                                                                                                                                                                                                                                                                                      • *

                                                                                                                                                                                                                                                                                                                                        * You tried to add a ByteMatchTuple to a ByteMatchSet, but the * ByteMatchTuple already exists in the specified WebACL. *

                                                                                                                                                                                                                                                                                                                                        *
                                                                                                                                                                                                                                                                                                                                      • * @throws WafInvalidParameterException * The operation failed because AWS WAF didn't recognize a parameter in the request. For example:

                                                                                                                                                                                                                                                                                                                                        *
                                                                                                                                                                                                                                                                                                                                          *
                                                                                                                                                                                                                                                                                                                                        • *

                                                                                                                                                                                                                                                                                                                                          * You specified an invalid parameter name. *

                                                                                                                                                                                                                                                                                                                                          *
                                                                                                                                                                                                                                                                                                                                        • *
                                                                                                                                                                                                                                                                                                                                        • *

                                                                                                                                                                                                                                                                                                                                          * You specified an invalid value. *

                                                                                                                                                                                                                                                                                                                                          *
                                                                                                                                                                                                                                                                                                                                        • *
                                                                                                                                                                                                                                                                                                                                        • *

                                                                                                                                                                                                                                                                                                                                          * You tried to update an object (ByteMatchSet, IPSet, Rule, or * WebACL) using an action other than INSERT or DELETE. *

                                                                                                                                                                                                                                                                                                                                          *
                                                                                                                                                                                                                                                                                                                                        • *
                                                                                                                                                                                                                                                                                                                                        • *

                                                                                                                                                                                                                                                                                                                                          * You tried to create a WebACL with a DefaultAction Type other than * ALLOW, BLOCK, or COUNT. *

                                                                                                                                                                                                                                                                                                                                          *
                                                                                                                                                                                                                                                                                                                                        • *
                                                                                                                                                                                                                                                                                                                                        • *

                                                                                                                                                                                                                                                                                                                                          * You tried to create a RateBasedRule with a RateKey value other than * IP. *

                                                                                                                                                                                                                                                                                                                                          *
                                                                                                                                                                                                                                                                                                                                        • *
                                                                                                                                                                                                                                                                                                                                        • *

                                                                                                                                                                                                                                                                                                                                          * You tried to update a WebACL with a WafAction Type other than * ALLOW, BLOCK, or COUNT. *

                                                                                                                                                                                                                                                                                                                                          *
                                                                                                                                                                                                                                                                                                                                        • *
                                                                                                                                                                                                                                                                                                                                        • *

                                                                                                                                                                                                                                                                                                                                          * You tried to update a ByteMatchSet with a FieldToMatch Type other * than HEADER, METHOD, QUERY_STRING, URI, or BODY. *

                                                                                                                                                                                                                                                                                                                                          *
                                                                                                                                                                                                                                                                                                                                        • *
                                                                                                                                                                                                                                                                                                                                        • *

                                                                                                                                                                                                                                                                                                                                          * You tried to update a ByteMatchSet with a Field of HEADER but no * value for Data. *

                                                                                                                                                                                                                                                                                                                                          *
                                                                                                                                                                                                                                                                                                                                        • *
                                                                                                                                                                                                                                                                                                                                        • *

                                                                                                                                                                                                                                                                                                                                          * Your request references an ARN that is malformed, or corresponds to a resource with which a web ACL * cannot be associated. *

                                                                                                                                                                                                                                                                                                                                          *
                                                                                                                                                                                                                                                                                                                                        • * @throws WafNonexistentContainerException * The operation failed because you tried to add an object to or delete an object from another object that * doesn't exist. For example:

                                                                                                                                                                                                                                                                                                                                          *
                                                                                                                                                                                                                                                                                                                                            *
                                                                                                                                                                                                                                                                                                                                          • *

                                                                                                                                                                                                                                                                                                                                            * You tried to add a Rule to or delete a Rule from a WebACL that * doesn't exist. *

                                                                                                                                                                                                                                                                                                                                            *
                                                                                                                                                                                                                                                                                                                                          • *
                                                                                                                                                                                                                                                                                                                                          • *

                                                                                                                                                                                                                                                                                                                                            * You tried to add a ByteMatchSet to or delete a ByteMatchSet from a * Rule that doesn't exist. *

                                                                                                                                                                                                                                                                                                                                            *
                                                                                                                                                                                                                                                                                                                                          • *
                                                                                                                                                                                                                                                                                                                                          • *

                                                                                                                                                                                                                                                                                                                                            * You tried to add an IP address to or delete an IP address from an IPSet that doesn't exist. *

                                                                                                                                                                                                                                                                                                                                            *
                                                                                                                                                                                                                                                                                                                                          • *
                                                                                                                                                                                                                                                                                                                                          • *

                                                                                                                                                                                                                                                                                                                                            * You tried to add a ByteMatchTuple to or delete a ByteMatchTuple from a * ByteMatchSet that doesn't exist. *

                                                                                                                                                                                                                                                                                                                                            *
                                                                                                                                                                                                                                                                                                                                          • * @throws WafNonexistentItemException * The operation failed because the referenced object doesn't exist. * @throws WafStaleDataException * The operation failed because you tried to create, update, or delete an object by using a change token * that has already been used. * @throws WafLimitsExceededException * The operation exceeds a resource limit, for example, the maximum number of WebACL objects * that you can create for an AWS account. For more information, see Limits in the AWS WAF * Developer Guide. * @throws SdkException * Base class for all exceptions that can be thrown by the SDK (both service and client). Can be used for * catch all scenarios. * @throws SdkClientException * If any client side error occurs such as an IO related failure, failure to get credentials, etc. * @throws WafException * Base class for all service exceptions. Unknown exceptions will be thrown as an instance of this type. * @sample WafClient.UpdateXssMatchSet * @see AWS API * Documentation */ default UpdateXssMatchSetResponse updateXssMatchSet(UpdateXssMatchSetRequest updateXssMatchSetRequest) throws WafInternalErrorException, WafInvalidAccountException, WafInvalidOperationException, WafInvalidParameterException, WafNonexistentContainerException, WafNonexistentItemException, WafStaleDataException, WafLimitsExceededException, AwsServiceException, SdkClientException, WafException { throw new UnsupportedOperationException(); } /** * *

                                                                                                                                                                                                                                                                                                                                            * This is AWS WAF Classic documentation. For more information, see AWS WAF Classic in the * developer guide. *

                                                                                                                                                                                                                                                                                                                                            *

                                                                                                                                                                                                                                                                                                                                            * For the latest version of AWS WAF, use the AWS WAFV2 API and see the AWS WAF Developer Guide. With * the latest version, AWS WAF has a single set of endpoints for regional and global use. *

                                                                                                                                                                                                                                                                                                                                            *
                                                                                                                                                                                                                                                                                                                                            *

                                                                                                                                                                                                                                                                                                                                            * Inserts or deletes XssMatchTuple objects (filters) in an XssMatchSet. For each * XssMatchTuple object, you specify the following values: *

                                                                                                                                                                                                                                                                                                                                            *
                                                                                                                                                                                                                                                                                                                                              *
                                                                                                                                                                                                                                                                                                                                            • *

                                                                                                                                                                                                                                                                                                                                              * Action: Whether to insert the object into or delete the object from the array. To change an * XssMatchTuple, you delete the existing object and add a new one. *

                                                                                                                                                                                                                                                                                                                                              *
                                                                                                                                                                                                                                                                                                                                            • *
                                                                                                                                                                                                                                                                                                                                            • *

                                                                                                                                                                                                                                                                                                                                              * FieldToMatch: The part of web requests that you want AWS WAF to inspect and, if you want AWS WAF to * inspect a header or custom query parameter, the name of the header or parameter. *

                                                                                                                                                                                                                                                                                                                                              *
                                                                                                                                                                                                                                                                                                                                            • *
                                                                                                                                                                                                                                                                                                                                            • *

                                                                                                                                                                                                                                                                                                                                              * TextTransformation: Which text transformation, if any, to perform on the web request before * inspecting the request for cross-site scripting attacks. *

                                                                                                                                                                                                                                                                                                                                              *

                                                                                                                                                                                                                                                                                                                                              * You can only specify a single type of TextTransformation. *

                                                                                                                                                                                                                                                                                                                                              *
                                                                                                                                                                                                                                                                                                                                            • *
                                                                                                                                                                                                                                                                                                                                            *

                                                                                                                                                                                                                                                                                                                                            * You use XssMatchSet objects to specify which CloudFront requests that you want to allow, block, or * count. For example, if you're receiving requests that contain cross-site scripting attacks in the request body * and you want to block the requests, you can create an XssMatchSet with the applicable settings, and * then configure AWS WAF to block the requests. *

                                                                                                                                                                                                                                                                                                                                            *

                                                                                                                                                                                                                                                                                                                                            * To create and configure an XssMatchSet, perform the following steps: *

                                                                                                                                                                                                                                                                                                                                            *
                                                                                                                                                                                                                                                                                                                                              *
                                                                                                                                                                                                                                                                                                                                            1. *

                                                                                                                                                                                                                                                                                                                                              * Submit a CreateXssMatchSet request. *

                                                                                                                                                                                                                                                                                                                                              *
                                                                                                                                                                                                                                                                                                                                            2. *
                                                                                                                                                                                                                                                                                                                                            3. *

                                                                                                                                                                                                                                                                                                                                              * Use GetChangeToken to get the change token that you provide in the ChangeToken parameter of * an UpdateIPSet request. *

                                                                                                                                                                                                                                                                                                                                              *
                                                                                                                                                                                                                                                                                                                                            4. *
                                                                                                                                                                                                                                                                                                                                            5. *

                                                                                                                                                                                                                                                                                                                                              * Submit an UpdateXssMatchSet request to specify the parts of web requests that you want AWS WAF to * inspect for cross-site scripting attacks. *

                                                                                                                                                                                                                                                                                                                                              *
                                                                                                                                                                                                                                                                                                                                            6. *
                                                                                                                                                                                                                                                                                                                                            *

                                                                                                                                                                                                                                                                                                                                            * For more information about how to use the AWS WAF API to allow or block HTTP requests, see the AWS WAF Developer Guide. *

                                                                                                                                                                                                                                                                                                                                            *
                                                                                                                                                                                                                                                                                                                                            *

                                                                                                                                                                                                                                                                                                                                            * This is a convenience which creates an instance of the {@link UpdateXssMatchSetRequest.Builder} avoiding the need * to create one manually via {@link UpdateXssMatchSetRequest#builder()} *

                                                                                                                                                                                                                                                                                                                                            * * @param updateXssMatchSetRequest * A {@link Consumer} that will call methods on * {@link software.amazon.awssdk.services.waf.model.UpdateXssMatchSetRequest.Builder} to create a request. A * request to update an XssMatchSet. * @return Result of the UpdateXssMatchSet operation returned by the service. * @throws WafInternalErrorException * The operation failed because of a system problem, even though the request was valid. Retry your request. * @throws WafInvalidAccountException * The operation failed because you tried to create, update, or delete an object by using an invalid account * identifier. * @throws WafInvalidOperationException * The operation failed because there was nothing to do. For example:

                                                                                                                                                                                                                                                                                                                                            *
                                                                                                                                                                                                                                                                                                                                              *
                                                                                                                                                                                                                                                                                                                                            • *

                                                                                                                                                                                                                                                                                                                                              * You tried to remove a Rule from a WebACL, but the Rule isn't in * the specified WebACL. *

                                                                                                                                                                                                                                                                                                                                              *
                                                                                                                                                                                                                                                                                                                                            • *
                                                                                                                                                                                                                                                                                                                                            • *

                                                                                                                                                                                                                                                                                                                                              * You tried to remove an IP address from an IPSet, but the IP address isn't in the specified * IPSet. *

                                                                                                                                                                                                                                                                                                                                              *
                                                                                                                                                                                                                                                                                                                                            • *
                                                                                                                                                                                                                                                                                                                                            • *

                                                                                                                                                                                                                                                                                                                                              * You tried to remove a ByteMatchTuple from a ByteMatchSet, but the * ByteMatchTuple isn't in the specified WebACL. *

                                                                                                                                                                                                                                                                                                                                              *
                                                                                                                                                                                                                                                                                                                                            • *
                                                                                                                                                                                                                                                                                                                                            • *

                                                                                                                                                                                                                                                                                                                                              * You tried to add a Rule to a WebACL, but the Rule already exists * in the specified WebACL. *

                                                                                                                                                                                                                                                                                                                                              *
                                                                                                                                                                                                                                                                                                                                            • *
                                                                                                                                                                                                                                                                                                                                            • *

                                                                                                                                                                                                                                                                                                                                              * You tried to add a ByteMatchTuple to a ByteMatchSet, but the * ByteMatchTuple already exists in the specified WebACL. *

                                                                                                                                                                                                                                                                                                                                              *
                                                                                                                                                                                                                                                                                                                                            • * @throws WafInvalidParameterException * The operation failed because AWS WAF didn't recognize a parameter in the request. For example:

                                                                                                                                                                                                                                                                                                                                              *
                                                                                                                                                                                                                                                                                                                                                *
                                                                                                                                                                                                                                                                                                                                              • *

                                                                                                                                                                                                                                                                                                                                                * You specified an invalid parameter name. *

                                                                                                                                                                                                                                                                                                                                                *
                                                                                                                                                                                                                                                                                                                                              • *
                                                                                                                                                                                                                                                                                                                                              • *

                                                                                                                                                                                                                                                                                                                                                * You specified an invalid value. *

                                                                                                                                                                                                                                                                                                                                                *
                                                                                                                                                                                                                                                                                                                                              • *
                                                                                                                                                                                                                                                                                                                                              • *

                                                                                                                                                                                                                                                                                                                                                * You tried to update an object (ByteMatchSet, IPSet, Rule, or * WebACL) using an action other than INSERT or DELETE. *

                                                                                                                                                                                                                                                                                                                                                *
                                                                                                                                                                                                                                                                                                                                              • *
                                                                                                                                                                                                                                                                                                                                              • *

                                                                                                                                                                                                                                                                                                                                                * You tried to create a WebACL with a DefaultAction Type other than * ALLOW, BLOCK, or COUNT. *

                                                                                                                                                                                                                                                                                                                                                *
                                                                                                                                                                                                                                                                                                                                              • *
                                                                                                                                                                                                                                                                                                                                              • *

                                                                                                                                                                                                                                                                                                                                                * You tried to create a RateBasedRule with a RateKey value other than * IP. *

                                                                                                                                                                                                                                                                                                                                                *
                                                                                                                                                                                                                                                                                                                                              • *
                                                                                                                                                                                                                                                                                                                                              • *

                                                                                                                                                                                                                                                                                                                                                * You tried to update a WebACL with a WafAction Type other than * ALLOW, BLOCK, or COUNT. *

                                                                                                                                                                                                                                                                                                                                                *
                                                                                                                                                                                                                                                                                                                                              • *
                                                                                                                                                                                                                                                                                                                                              • *

                                                                                                                                                                                                                                                                                                                                                * You tried to update a ByteMatchSet with a FieldToMatch Type other * than HEADER, METHOD, QUERY_STRING, URI, or BODY. *

                                                                                                                                                                                                                                                                                                                                                *
                                                                                                                                                                                                                                                                                                                                              • *
                                                                                                                                                                                                                                                                                                                                              • *

                                                                                                                                                                                                                                                                                                                                                * You tried to update a ByteMatchSet with a Field of HEADER but no * value for Data. *

                                                                                                                                                                                                                                                                                                                                                *
                                                                                                                                                                                                                                                                                                                                              • *
                                                                                                                                                                                                                                                                                                                                              • *

                                                                                                                                                                                                                                                                                                                                                * Your request references an ARN that is malformed, or corresponds to a resource with which a web ACL * cannot be associated. *

                                                                                                                                                                                                                                                                                                                                                *
                                                                                                                                                                                                                                                                                                                                              • * @throws WafNonexistentContainerException * The operation failed because you tried to add an object to or delete an object from another object that * doesn't exist. For example:

                                                                                                                                                                                                                                                                                                                                                *
                                                                                                                                                                                                                                                                                                                                                  *
                                                                                                                                                                                                                                                                                                                                                • *

                                                                                                                                                                                                                                                                                                                                                  * You tried to add a Rule to or delete a Rule from a WebACL that * doesn't exist. *

                                                                                                                                                                                                                                                                                                                                                  *
                                                                                                                                                                                                                                                                                                                                                • *
                                                                                                                                                                                                                                                                                                                                                • *

                                                                                                                                                                                                                                                                                                                                                  * You tried to add a ByteMatchSet to or delete a ByteMatchSet from a * Rule that doesn't exist. *

                                                                                                                                                                                                                                                                                                                                                  *
                                                                                                                                                                                                                                                                                                                                                • *
                                                                                                                                                                                                                                                                                                                                                • *

                                                                                                                                                                                                                                                                                                                                                  * You tried to add an IP address to or delete an IP address from an IPSet that doesn't exist. *

                                                                                                                                                                                                                                                                                                                                                  *
                                                                                                                                                                                                                                                                                                                                                • *
                                                                                                                                                                                                                                                                                                                                                • *

                                                                                                                                                                                                                                                                                                                                                  * You tried to add a ByteMatchTuple to or delete a ByteMatchTuple from a * ByteMatchSet that doesn't exist. *

                                                                                                                                                                                                                                                                                                                                                  *
                                                                                                                                                                                                                                                                                                                                                • * @throws WafNonexistentItemException * The operation failed because the referenced object doesn't exist. * @throws WafStaleDataException * The operation failed because you tried to create, update, or delete an object by using a change token * that has already been used. * @throws WafLimitsExceededException * The operation exceeds a resource limit, for example, the maximum number of WebACL objects * that you can create for an AWS account. For more information, see Limits in the AWS WAF * Developer Guide. * @throws SdkException * Base class for all exceptions that can be thrown by the SDK (both service and client). Can be used for * catch all scenarios. * @throws SdkClientException * If any client side error occurs such as an IO related failure, failure to get credentials, etc. * @throws WafException * Base class for all service exceptions. Unknown exceptions will be thrown as an instance of this type. * @sample WafClient.UpdateXssMatchSet * @see AWS API * Documentation */ default UpdateXssMatchSetResponse updateXssMatchSet(Consumer updateXssMatchSetRequest) throws WafInternalErrorException, WafInvalidAccountException, WafInvalidOperationException, WafInvalidParameterException, WafNonexistentContainerException, WafNonexistentItemException, WafStaleDataException, WafLimitsExceededException, AwsServiceException, SdkClientException, WafException { return updateXssMatchSet(UpdateXssMatchSetRequest.builder().applyMutation(updateXssMatchSetRequest).build()); } /** * Create a {@link WafClient} with the region loaded from the * {@link software.amazon.awssdk.regions.providers.DefaultAwsRegionProviderChain} and credentials loaded from the * {@link software.amazon.awssdk.auth.credentials.DefaultCredentialsProvider}. */ static WafClient create() { return builder().build(); } /** * Create a builder that can be used to configure and create a {@link WafClient}. */ static WafClientBuilder builder() { return new DefaultWafClientBuilder(); } static ServiceMetadata serviceMetadata() { return ServiceMetadata.of(SERVICE_METADATA_ID); } @Override default WafServiceClientConfiguration serviceClientConfiguration() { throw new UnsupportedOperationException(); } }




© 2015 - 2025 Weber Informatics LLC | Privacy Policy