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

com.amazonaws.services.wafv2.model.PutManagedRuleSetVersionsRequest Maven / Gradle / Ivy

/*
 * Copyright 2019-2024 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 com.amazonaws.services.wafv2.model;

import java.io.Serializable;
import javax.annotation.Generated;

import com.amazonaws.AmazonWebServiceRequest;

/**
 * 
 * @see AWS
 *      API Documentation
 */
@Generated("com.amazonaws:aws-java-sdk-code-generator")
public class PutManagedRuleSetVersionsRequest extends com.amazonaws.AmazonWebServiceRequest implements Serializable, Cloneable {

    /**
     * 

* The name of the managed rule set. You use this, along with the rule set ID, to identify the rule set. *

*

* This name is assigned to the corresponding managed rule group, which your customers can access and use. *

*/ private String name; /** *

* Specifies whether this is for an Amazon CloudFront distribution or for a regional application. A regional * application can be an Application Load Balancer (ALB), an Amazon API Gateway REST API, an AppSync GraphQL API, an * Amazon Cognito user pool, an App Runner service, or an Amazon Web Services Verified Access instance. *

*

* To work with CloudFront, you must also specify the Region US East (N. Virginia) as follows: *

*
    *
  • *

    * CLI - Specify the Region when you use the CloudFront scope: --scope=CLOUDFRONT --region=us-east-1. *

    *
  • *
  • *

    * API and SDKs - For all calls, use the Region endpoint us-east-1. *

    *
  • *
*/ private String scope; /** *

* A unique identifier for the managed rule set. The ID is returned in the responses to commands like * list. You provide it to operations like get and update. *

*/ private String id; /** *

* A token used for optimistic locking. WAF returns a token to your get and list requests, * to mark the state of the entity at the time of the request. To make changes to the entity associated with the * token, you provide the token to operations like update and delete. WAF uses the token * to ensure that no changes have been made to the entity since you last retrieved it. If a change has been made, * the update fails with a WAFOptimisticLockException. If this happens, perform another * get, and use the new token returned by that operation. *

*/ private String lockToken; /** *

* The version of the named managed rule group that you'd like your customers to choose, from among your version * offerings. *

*/ private String recommendedVersion; /** *

* The versions of the named managed rule group that you want to offer to your customers. *

*/ private java.util.Map versionsToPublish; /** *

* The name of the managed rule set. You use this, along with the rule set ID, to identify the rule set. *

*

* This name is assigned to the corresponding managed rule group, which your customers can access and use. *

* * @param name * The name of the managed rule set. You use this, along with the rule set ID, to identify the rule set.

*

* This name is assigned to the corresponding managed rule group, which your customers can access and use. */ public void setName(String name) { this.name = name; } /** *

* The name of the managed rule set. You use this, along with the rule set ID, to identify the rule set. *

*

* This name is assigned to the corresponding managed rule group, which your customers can access and use. *

* * @return The name of the managed rule set. You use this, along with the rule set ID, to identify the rule set.

*

* This name is assigned to the corresponding managed rule group, which your customers can access and use. */ public String getName() { return this.name; } /** *

* The name of the managed rule set. You use this, along with the rule set ID, to identify the rule set. *

*

* This name is assigned to the corresponding managed rule group, which your customers can access and use. *

* * @param name * The name of the managed rule set. You use this, along with the rule set ID, to identify the rule set.

*

* This name is assigned to the corresponding managed rule group, which your customers can access and use. * @return Returns a reference to this object so that method calls can be chained together. */ public PutManagedRuleSetVersionsRequest withName(String name) { setName(name); return this; } /** *

* Specifies whether this is for an Amazon CloudFront distribution or for a regional application. A regional * application can be an Application Load Balancer (ALB), an Amazon API Gateway REST API, an AppSync GraphQL API, an * Amazon Cognito user pool, an App Runner service, or an Amazon Web Services Verified Access instance. *

*

* To work with CloudFront, you must also specify the Region US East (N. Virginia) as follows: *

*
    *
  • *

    * CLI - Specify the Region when you use the CloudFront scope: --scope=CLOUDFRONT --region=us-east-1. *

    *
  • *
  • *

    * API and SDKs - For all calls, use the Region endpoint us-east-1. *

    *
  • *
* * @param scope * Specifies whether this is for an Amazon CloudFront distribution or for a regional application. A regional * application can be an Application Load Balancer (ALB), an Amazon API Gateway REST API, an AppSync GraphQL * API, an Amazon Cognito user pool, an App Runner service, or an Amazon Web Services Verified Access * instance.

*

* To work with CloudFront, you must also specify the Region US East (N. Virginia) as follows: *

*
    *
  • *

    * CLI - Specify the Region when you use the CloudFront scope: * --scope=CLOUDFRONT --region=us-east-1. *

    *
  • *
  • *

    * API and SDKs - For all calls, use the Region endpoint us-east-1. *

    *
  • * @see Scope */ public void setScope(String scope) { this.scope = scope; } /** *

    * Specifies whether this is for an Amazon CloudFront distribution or for a regional application. A regional * application can be an Application Load Balancer (ALB), an Amazon API Gateway REST API, an AppSync GraphQL API, an * Amazon Cognito user pool, an App Runner service, or an Amazon Web Services Verified Access instance. *

    *

    * To work with CloudFront, you must also specify the Region US East (N. Virginia) as follows: *

    *
      *
    • *

      * CLI - Specify the Region when you use the CloudFront scope: --scope=CLOUDFRONT --region=us-east-1. *

      *
    • *
    • *

      * API and SDKs - For all calls, use the Region endpoint us-east-1. *

      *
    • *
    * * @return Specifies whether this is for an Amazon CloudFront distribution or for a regional application. A regional * application can be an Application Load Balancer (ALB), an Amazon API Gateway REST API, an AppSync GraphQL * API, an Amazon Cognito user pool, an App Runner service, or an Amazon Web Services Verified Access * instance.

    *

    * To work with CloudFront, you must also specify the Region US East (N. Virginia) as follows: *

    *
      *
    • *

      * CLI - Specify the Region when you use the CloudFront scope: * --scope=CLOUDFRONT --region=us-east-1. *

      *
    • *
    • *

      * API and SDKs - For all calls, use the Region endpoint us-east-1. *

      *
    • * @see Scope */ public String getScope() { return this.scope; } /** *

      * Specifies whether this is for an Amazon CloudFront distribution or for a regional application. A regional * application can be an Application Load Balancer (ALB), an Amazon API Gateway REST API, an AppSync GraphQL API, an * Amazon Cognito user pool, an App Runner service, or an Amazon Web Services Verified Access instance. *

      *

      * To work with CloudFront, you must also specify the Region US East (N. Virginia) as follows: *

      *
        *
      • *

        * CLI - Specify the Region when you use the CloudFront scope: --scope=CLOUDFRONT --region=us-east-1. *

        *
      • *
      • *

        * API and SDKs - For all calls, use the Region endpoint us-east-1. *

        *
      • *
      * * @param scope * Specifies whether this is for an Amazon CloudFront distribution or for a regional application. A regional * application can be an Application Load Balancer (ALB), an Amazon API Gateway REST API, an AppSync GraphQL * API, an Amazon Cognito user pool, an App Runner service, or an Amazon Web Services Verified Access * instance.

      *

      * To work with CloudFront, you must also specify the Region US East (N. Virginia) as follows: *

      *
        *
      • *

        * CLI - Specify the Region when you use the CloudFront scope: * --scope=CLOUDFRONT --region=us-east-1. *

        *
      • *
      • *

        * API and SDKs - For all calls, use the Region endpoint us-east-1. *

        *
      • * @return Returns a reference to this object so that method calls can be chained together. * @see Scope */ public PutManagedRuleSetVersionsRequest withScope(String scope) { setScope(scope); return this; } /** *

        * Specifies whether this is for an Amazon CloudFront distribution or for a regional application. A regional * application can be an Application Load Balancer (ALB), an Amazon API Gateway REST API, an AppSync GraphQL API, an * Amazon Cognito user pool, an App Runner service, or an Amazon Web Services Verified Access instance. *

        *

        * To work with CloudFront, you must also specify the Region US East (N. Virginia) as follows: *

        *
          *
        • *

          * CLI - Specify the Region when you use the CloudFront scope: --scope=CLOUDFRONT --region=us-east-1. *

          *
        • *
        • *

          * API and SDKs - For all calls, use the Region endpoint us-east-1. *

          *
        • *
        * * @param scope * Specifies whether this is for an Amazon CloudFront distribution or for a regional application. A regional * application can be an Application Load Balancer (ALB), an Amazon API Gateway REST API, an AppSync GraphQL * API, an Amazon Cognito user pool, an App Runner service, or an Amazon Web Services Verified Access * instance.

        *

        * To work with CloudFront, you must also specify the Region US East (N. Virginia) as follows: *

        *
          *
        • *

          * CLI - Specify the Region when you use the CloudFront scope: * --scope=CLOUDFRONT --region=us-east-1. *

          *
        • *
        • *

          * API and SDKs - For all calls, use the Region endpoint us-east-1. *

          *
        • * @return Returns a reference to this object so that method calls can be chained together. * @see Scope */ public PutManagedRuleSetVersionsRequest withScope(Scope scope) { this.scope = scope.toString(); return this; } /** *

          * A unique identifier for the managed rule set. The ID is returned in the responses to commands like * list. You provide it to operations like get and update. *

          * * @param id * A unique identifier for the managed rule set. The ID is returned in the responses to commands like * list. You provide it to operations like get and update. */ public void setId(String id) { this.id = id; } /** *

          * A unique identifier for the managed rule set. The ID is returned in the responses to commands like * list. You provide it to operations like get and update. *

          * * @return A unique identifier for the managed rule set. The ID is returned in the responses to commands like * list. You provide it to operations like get and update. */ public String getId() { return this.id; } /** *

          * A unique identifier for the managed rule set. The ID is returned in the responses to commands like * list. You provide it to operations like get and update. *

          * * @param id * A unique identifier for the managed rule set. The ID is returned in the responses to commands like * list. You provide it to operations like get and update. * @return Returns a reference to this object so that method calls can be chained together. */ public PutManagedRuleSetVersionsRequest withId(String id) { setId(id); return this; } /** *

          * A token used for optimistic locking. WAF returns a token to your get and list requests, * to mark the state of the entity at the time of the request. To make changes to the entity associated with the * token, you provide the token to operations like update and delete. WAF uses the token * to ensure that no changes have been made to the entity since you last retrieved it. If a change has been made, * the update fails with a WAFOptimisticLockException. If this happens, perform another * get, and use the new token returned by that operation. *

          * * @param lockToken * A token used for optimistic locking. WAF returns a token to your get and list * requests, to mark the state of the entity at the time of the request. To make changes to the entity * associated with the token, you provide the token to operations like update and * delete. WAF uses the token to ensure that no changes have been made to the entity since you * last retrieved it. If a change has been made, the update fails with a * WAFOptimisticLockException. If this happens, perform another get, and use the * new token returned by that operation. */ public void setLockToken(String lockToken) { this.lockToken = lockToken; } /** *

          * A token used for optimistic locking. WAF returns a token to your get and list requests, * to mark the state of the entity at the time of the request. To make changes to the entity associated with the * token, you provide the token to operations like update and delete. WAF uses the token * to ensure that no changes have been made to the entity since you last retrieved it. If a change has been made, * the update fails with a WAFOptimisticLockException. If this happens, perform another * get, and use the new token returned by that operation. *

          * * @return A token used for optimistic locking. WAF returns a token to your get and list * requests, to mark the state of the entity at the time of the request. To make changes to the entity * associated with the token, you provide the token to operations like update and * delete. WAF uses the token to ensure that no changes have been made to the entity since you * last retrieved it. If a change has been made, the update fails with a * WAFOptimisticLockException. If this happens, perform another get, and use the * new token returned by that operation. */ public String getLockToken() { return this.lockToken; } /** *

          * A token used for optimistic locking. WAF returns a token to your get and list requests, * to mark the state of the entity at the time of the request. To make changes to the entity associated with the * token, you provide the token to operations like update and delete. WAF uses the token * to ensure that no changes have been made to the entity since you last retrieved it. If a change has been made, * the update fails with a WAFOptimisticLockException. If this happens, perform another * get, and use the new token returned by that operation. *

          * * @param lockToken * A token used for optimistic locking. WAF returns a token to your get and list * requests, to mark the state of the entity at the time of the request. To make changes to the entity * associated with the token, you provide the token to operations like update and * delete. WAF uses the token to ensure that no changes have been made to the entity since you * last retrieved it. If a change has been made, the update fails with a * WAFOptimisticLockException. If this happens, perform another get, and use the * new token returned by that operation. * @return Returns a reference to this object so that method calls can be chained together. */ public PutManagedRuleSetVersionsRequest withLockToken(String lockToken) { setLockToken(lockToken); return this; } /** *

          * The version of the named managed rule group that you'd like your customers to choose, from among your version * offerings. *

          * * @param recommendedVersion * The version of the named managed rule group that you'd like your customers to choose, from among your * version offerings. */ public void setRecommendedVersion(String recommendedVersion) { this.recommendedVersion = recommendedVersion; } /** *

          * The version of the named managed rule group that you'd like your customers to choose, from among your version * offerings. *

          * * @return The version of the named managed rule group that you'd like your customers to choose, from among your * version offerings. */ public String getRecommendedVersion() { return this.recommendedVersion; } /** *

          * The version of the named managed rule group that you'd like your customers to choose, from among your version * offerings. *

          * * @param recommendedVersion * The version of the named managed rule group that you'd like your customers to choose, from among your * version offerings. * @return Returns a reference to this object so that method calls can be chained together. */ public PutManagedRuleSetVersionsRequest withRecommendedVersion(String recommendedVersion) { setRecommendedVersion(recommendedVersion); return this; } /** *

          * The versions of the named managed rule group that you want to offer to your customers. *

          * * @return The versions of the named managed rule group that you want to offer to your customers. */ public java.util.Map getVersionsToPublish() { return versionsToPublish; } /** *

          * The versions of the named managed rule group that you want to offer to your customers. *

          * * @param versionsToPublish * The versions of the named managed rule group that you want to offer to your customers. */ public void setVersionsToPublish(java.util.Map versionsToPublish) { this.versionsToPublish = versionsToPublish; } /** *

          * The versions of the named managed rule group that you want to offer to your customers. *

          * * @param versionsToPublish * The versions of the named managed rule group that you want to offer to your customers. * @return Returns a reference to this object so that method calls can be chained together. */ public PutManagedRuleSetVersionsRequest withVersionsToPublish(java.util.Map versionsToPublish) { setVersionsToPublish(versionsToPublish); return this; } /** * Add a single VersionsToPublish entry * * @see PutManagedRuleSetVersionsRequest#withVersionsToPublish * @returns a reference to this object so that method calls can be chained together. */ public PutManagedRuleSetVersionsRequest addVersionsToPublishEntry(String key, VersionToPublish value) { if (null == this.versionsToPublish) { this.versionsToPublish = new java.util.HashMap(); } if (this.versionsToPublish.containsKey(key)) throw new IllegalArgumentException("Duplicated keys (" + key.toString() + ") are provided."); this.versionsToPublish.put(key, value); return this; } /** * Removes all the entries added into VersionsToPublish. * * @return Returns a reference to this object so that method calls can be chained together. */ public PutManagedRuleSetVersionsRequest clearVersionsToPublishEntries() { this.versionsToPublish = null; return this; } /** * Returns a string representation of this object. This is useful for testing and debugging. Sensitive data will be * redacted from this string using a placeholder value. * * @return A string representation of this object. * * @see java.lang.Object#toString() */ @Override public String toString() { StringBuilder sb = new StringBuilder(); sb.append("{"); if (getName() != null) sb.append("Name: ").append(getName()).append(","); if (getScope() != null) sb.append("Scope: ").append(getScope()).append(","); if (getId() != null) sb.append("Id: ").append(getId()).append(","); if (getLockToken() != null) sb.append("LockToken: ").append(getLockToken()).append(","); if (getRecommendedVersion() != null) sb.append("RecommendedVersion: ").append(getRecommendedVersion()).append(","); if (getVersionsToPublish() != null) sb.append("VersionsToPublish: ").append(getVersionsToPublish()); sb.append("}"); return sb.toString(); } @Override public boolean equals(Object obj) { if (this == obj) return true; if (obj == null) return false; if (obj instanceof PutManagedRuleSetVersionsRequest == false) return false; PutManagedRuleSetVersionsRequest other = (PutManagedRuleSetVersionsRequest) obj; if (other.getName() == null ^ this.getName() == null) return false; if (other.getName() != null && other.getName().equals(this.getName()) == false) return false; if (other.getScope() == null ^ this.getScope() == null) return false; if (other.getScope() != null && other.getScope().equals(this.getScope()) == false) return false; if (other.getId() == null ^ this.getId() == null) return false; if (other.getId() != null && other.getId().equals(this.getId()) == false) return false; if (other.getLockToken() == null ^ this.getLockToken() == null) return false; if (other.getLockToken() != null && other.getLockToken().equals(this.getLockToken()) == false) return false; if (other.getRecommendedVersion() == null ^ this.getRecommendedVersion() == null) return false; if (other.getRecommendedVersion() != null && other.getRecommendedVersion().equals(this.getRecommendedVersion()) == false) return false; if (other.getVersionsToPublish() == null ^ this.getVersionsToPublish() == null) return false; if (other.getVersionsToPublish() != null && other.getVersionsToPublish().equals(this.getVersionsToPublish()) == false) return false; return true; } @Override public int hashCode() { final int prime = 31; int hashCode = 1; hashCode = prime * hashCode + ((getName() == null) ? 0 : getName().hashCode()); hashCode = prime * hashCode + ((getScope() == null) ? 0 : getScope().hashCode()); hashCode = prime * hashCode + ((getId() == null) ? 0 : getId().hashCode()); hashCode = prime * hashCode + ((getLockToken() == null) ? 0 : getLockToken().hashCode()); hashCode = prime * hashCode + ((getRecommendedVersion() == null) ? 0 : getRecommendedVersion().hashCode()); hashCode = prime * hashCode + ((getVersionsToPublish() == null) ? 0 : getVersionsToPublish().hashCode()); return hashCode; } @Override public PutManagedRuleSetVersionsRequest clone() { return (PutManagedRuleSetVersionsRequest) super.clone(); } }




© 2015 - 2024 Weber Informatics LLC | Privacy Policy