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

com.amazonaws.services.waf.model.ActivatedRule Maven / Gradle / Ivy

/*
 * Copyright 2010-2016 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.waf.model;

import java.io.Serializable;

/**
 * 

* The ActivatedRule object in an UpdateWebACL request * specifies a Rule that you want to insert or delete, the priority * of the Rule in the WebACL, and the action that you * want AWS WAF to take when a web request matches the Rule ( * ALLOW, BLOCK, or COUNT). *

*

* To specify whether to insert or delete a Rule, use the * Action parameter in the WebACLUpdate data type. *

*/ public class ActivatedRule implements Serializable, Cloneable { /** *

* Specifies the order in which the Rules in a * WebACL are evaluated. Rules with a lower value for * Priority are evaluated before Rules with a * higher value. The value must be a unique integer. If you add multiple * Rules to a WebACL, the values don't need to be * consecutive. *

*/ private Integer priority; /** *

* The RuleId for a Rule. You use * RuleId to get more information about a Rule * (see GetRule), update a Rule (see UpdateRule), * insert a Rule into a WebACL or delete a one * from a WebACL (see UpdateWebACL), or delete a * Rule from AWS WAF (see DeleteRule). *

*

* RuleId is returned by CreateRule and by * ListRules. *

*/ private String ruleId; /** *

* Specifies the action that CloudFront or AWS WAF takes when a web request * matches the conditions in the Rule. Valid values for * Action include the following: *

*
    *
  • ALLOW: CloudFront responds with the requested object.
  • *
  • BLOCK: CloudFront responds with an HTTP 403 (Forbidden) * status code.
  • *
  • COUNT: AWS WAF increments a counter of requests that * match the conditions in the rule and then continues to inspect the web * request based on the remaining rules in the web ACL.
  • *
*/ private WafAction action; /** *

* Specifies the order in which the Rules in a * WebACL are evaluated. Rules with a lower value for * Priority are evaluated before Rules with a * higher value. The value must be a unique integer. If you add multiple * Rules to a WebACL, the values don't need to be * consecutive. *

* * @param priority * Specifies the order in which the Rules in a * WebACL are evaluated. Rules with a lower value for * Priority are evaluated before Rules with * a higher value. The value must be a unique integer. If you add * multiple Rules to a WebACL, the values * don't need to be consecutive. */ public void setPriority(Integer priority) { this.priority = priority; } /** *

* Specifies the order in which the Rules in a * WebACL are evaluated. Rules with a lower value for * Priority are evaluated before Rules with a * higher value. The value must be a unique integer. If you add multiple * Rules to a WebACL, the values don't need to be * consecutive. *

* * @return Specifies the order in which the Rules in a * WebACL are evaluated. Rules with a lower value for * Priority are evaluated before Rules * with a higher value. The value must be a unique integer. If you * add multiple Rules to a WebACL, the * values don't need to be consecutive. */ public Integer getPriority() { return this.priority; } /** *

* Specifies the order in which the Rules in a * WebACL are evaluated. Rules with a lower value for * Priority are evaluated before Rules with a * higher value. The value must be a unique integer. If you add multiple * Rules to a WebACL, the values don't need to be * consecutive. *

* * @param priority * Specifies the order in which the Rules in a * WebACL are evaluated. Rules with a lower value for * Priority are evaluated before Rules with * a higher value. The value must be a unique integer. If you add * multiple Rules to a WebACL, the values * don't need to be consecutive. * @return Returns a reference to this object so that method calls can be * chained together. */ public ActivatedRule withPriority(Integer priority) { setPriority(priority); return this; } /** *

* The RuleId for a Rule. You use * RuleId to get more information about a Rule * (see GetRule), update a Rule (see UpdateRule), * insert a Rule into a WebACL or delete a one * from a WebACL (see UpdateWebACL), or delete a * Rule from AWS WAF (see DeleteRule). *

*

* RuleId is returned by CreateRule and by * ListRules. *

* * @param ruleId * The RuleId for a Rule. You use * RuleId to get more information about a * Rule (see GetRule), update a Rule * (see UpdateRule), insert a Rule into a * WebACL or delete a one from a WebACL * (see UpdateWebACL), or delete a Rule from AWS * WAF (see DeleteRule).

*

* RuleId is returned by CreateRule and by * ListRules. */ public void setRuleId(String ruleId) { this.ruleId = ruleId; } /** *

* The RuleId for a Rule. You use * RuleId to get more information about a Rule * (see GetRule), update a Rule (see UpdateRule), * insert a Rule into a WebACL or delete a one * from a WebACL (see UpdateWebACL), or delete a * Rule from AWS WAF (see DeleteRule). *

*

* RuleId is returned by CreateRule and by * ListRules. *

* * @return The RuleId for a Rule. You use * RuleId to get more information about a * Rule (see GetRule), update a * Rule (see UpdateRule), insert a * Rule into a WebACL or delete a one from * a WebACL (see UpdateWebACL), or delete a * Rule from AWS WAF (see DeleteRule).

*

* RuleId is returned by CreateRule and by * ListRules. */ public String getRuleId() { return this.ruleId; } /** *

* The RuleId for a Rule. You use * RuleId to get more information about a Rule * (see GetRule), update a Rule (see UpdateRule), * insert a Rule into a WebACL or delete a one * from a WebACL (see UpdateWebACL), or delete a * Rule from AWS WAF (see DeleteRule). *

*

* RuleId is returned by CreateRule and by * ListRules. *

* * @param ruleId * The RuleId for a Rule. You use * RuleId to get more information about a * Rule (see GetRule), update a Rule * (see UpdateRule), insert a Rule into a * WebACL or delete a one from a WebACL * (see UpdateWebACL), or delete a Rule from AWS * WAF (see DeleteRule).

*

* RuleId is returned by CreateRule and by * ListRules. * @return Returns a reference to this object so that method calls can be * chained together. */ public ActivatedRule withRuleId(String ruleId) { setRuleId(ruleId); return this; } /** *

* Specifies the action that CloudFront or AWS WAF takes when a web request * matches the conditions in the Rule. Valid values for * Action include the following: *

*
    *
  • ALLOW: CloudFront responds with the requested object.
  • *
  • BLOCK: CloudFront responds with an HTTP 403 (Forbidden) * status code.
  • *
  • COUNT: AWS WAF increments a counter of requests that * match the conditions in the rule and then continues to inspect the web * request based on the remaining rules in the web ACL.
  • *
* * @param action * Specifies the action that CloudFront or AWS WAF takes when a web * request matches the conditions in the Rule. Valid * values for Action include the following:

*
    *
  • ALLOW: CloudFront responds with the requested * object.
  • *
  • BLOCK: CloudFront responds with an HTTP 403 * (Forbidden) status code.
  • *
  • COUNT: AWS WAF increments a counter of requests * that match the conditions in the rule and then continues to * inspect the web request based on the remaining rules in the web * ACL.
  • */ public void setAction(WafAction action) { this.action = action; } /** *

    * Specifies the action that CloudFront or AWS WAF takes when a web request * matches the conditions in the Rule. Valid values for * Action include the following: *

    *
      *
    • ALLOW: CloudFront responds with the requested object.
    • *
    • BLOCK: CloudFront responds with an HTTP 403 (Forbidden) * status code.
    • *
    • COUNT: AWS WAF increments a counter of requests that * match the conditions in the rule and then continues to inspect the web * request based on the remaining rules in the web ACL.
    • *
    * * @return Specifies the action that CloudFront or AWS WAF takes when a web * request matches the conditions in the Rule. Valid * values for Action include the following:

    *
      *
    • ALLOW: CloudFront responds with the requested * object.
    • *
    • BLOCK: CloudFront responds with an HTTP 403 * (Forbidden) status code.
    • *
    • COUNT: AWS WAF increments a counter of requests * that match the conditions in the rule and then continues to * inspect the web request based on the remaining rules in the web * ACL.
    • */ public WafAction getAction() { return this.action; } /** *

      * Specifies the action that CloudFront or AWS WAF takes when a web request * matches the conditions in the Rule. Valid values for * Action include the following: *

      *
        *
      • ALLOW: CloudFront responds with the requested object.
      • *
      • BLOCK: CloudFront responds with an HTTP 403 (Forbidden) * status code.
      • *
      • COUNT: AWS WAF increments a counter of requests that * match the conditions in the rule and then continues to inspect the web * request based on the remaining rules in the web ACL.
      • *
      * * @param action * Specifies the action that CloudFront or AWS WAF takes when a web * request matches the conditions in the Rule. Valid * values for Action include the following:

      *
        *
      • ALLOW: CloudFront responds with the requested * object.
      • *
      • BLOCK: CloudFront responds with an HTTP 403 * (Forbidden) status code.
      • *
      • COUNT: AWS WAF increments a counter of requests * that match the conditions in the rule and then continues to * inspect the web request based on the remaining rules in the web * ACL.
      • * @return Returns a reference to this object so that method calls can be * chained together. */ public ActivatedRule withAction(WafAction action) { setAction(action); return this; } /** * Returns a string representation of this object; useful for testing and * debugging. * * @return A string representation of this object. * * @see java.lang.Object#toString() */ @Override public String toString() { StringBuilder sb = new StringBuilder(); sb.append("{"); if (getPriority() != null) sb.append("Priority: " + getPriority() + ","); if (getRuleId() != null) sb.append("RuleId: " + getRuleId() + ","); if (getAction() != null) sb.append("Action: " + getAction()); sb.append("}"); return sb.toString(); } @Override public boolean equals(Object obj) { if (this == obj) return true; if (obj == null) return false; if (obj instanceof ActivatedRule == false) return false; ActivatedRule other = (ActivatedRule) obj; if (other.getPriority() == null ^ this.getPriority() == null) return false; if (other.getPriority() != null && other.getPriority().equals(this.getPriority()) == false) return false; if (other.getRuleId() == null ^ this.getRuleId() == null) return false; if (other.getRuleId() != null && other.getRuleId().equals(this.getRuleId()) == false) return false; if (other.getAction() == null ^ this.getAction() == null) return false; if (other.getAction() != null && other.getAction().equals(this.getAction()) == false) return false; return true; } @Override public int hashCode() { final int prime = 31; int hashCode = 1; hashCode = prime * hashCode + ((getPriority() == null) ? 0 : getPriority().hashCode()); hashCode = prime * hashCode + ((getRuleId() == null) ? 0 : getRuleId().hashCode()); hashCode = prime * hashCode + ((getAction() == null) ? 0 : getAction().hashCode()); return hashCode; } @Override public ActivatedRule clone() { try { return (ActivatedRule) super.clone(); } catch (CloneNotSupportedException e) { throw new IllegalStateException( "Got a CloneNotSupportedException from Object.clone() " + "even though we're Cloneable!", e); } } }




© 2015 - 2025 Weber Informatics LLC | Privacy Policy