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

com.tencentcloudapi.teo.v20220901.models.RuleCondition Maven / Gradle / Ivy

There is a newer version: 3.0.1034
Show newest version
/*
 * Copyright (c) 2017-2018 THL A29 Limited, a Tencent company. 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.
 * You may obtain a copy of the License at
 *
 *    http://www.apache.org/licenses/LICENSE-2.0
 *
 * Unless required by applicable law or agreed to in writing, software
 * distributed under the License 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.tencentcloudapi.teo.v20220901.models;

import com.tencentcloudapi.common.AbstractModel;
import com.tencentcloudapi.common.SSEResponseModel;
import com.google.gson.annotations.SerializedName;
import com.google.gson.annotations.Expose;
import java.util.HashMap;

public class RuleCondition extends AbstractModel {

    /**
    * Operator. Valid values:
  • `equals`: Equals
  • `notEquals`: Does not equal
  • `exist`: Exists
  • `notexist`: Does not exist
  • */ @SerializedName("Operator") @Expose private String Operator; /** * Matching type. Valid values:
  • filename: Filename;
  • extension: File suffix;
  • host: Host;
  • full_url: A complete URL path under the current site, including the HTTP protocol, the host, and the path;
  • url: The request for a URL path under the current site;
  • client_country: Client country/region;
  • query_string: The query string for a requested URL under the current site;
  • request_header: HTTP request header;
  • client_ip: Client IP;
  • request_protocol: Request protocol;
  • request_method: HTTP request method.
  • */ @SerializedName("Target") @Expose private String Target; /** * Parameter values for corresponding matching types. It is allowed to pass an empty array only when the matching type is query_string or request_header and the operator value is exist or not exist. Corresponding match types include:
  • extension: File suffix such as jpg or txt;
  • filename: For example, foo in foo.jpg;
  • all (any request under the site): all;
  • host: The host under the current site. For example, www.maxx55.com;
  • URL path: The request for a URL path under the current site. For example, /example;
  • URL full: The request for a complete URL under the current site, including the HTTP protocol, the host, and the path. For example: https://www.maxx55.cn/example;
  • client_country: Country/region identifier compliant with the ISO3166 standard;
  • query_string: The parameter value in the query string of the requested URL under the current site. For example, cn and 1 in lang=cn&version=1;
  • request_header: The value of the HTTP request header field. For example, zh-CN,zh;q=0.9 in Accept-Language:zh-CN,zh;q=0.9;
  • client_ip: The client request IP carried in the current request, which supports IPv4/IPv6 and an IP range;
  • request_protocol: The protocol of the current request. Valid values: HTTP and HTTPS;
  • request_method: The method of the current request. Valid values: GET, HEAD, POST, PUT, DELETE, TRACE, CONNECT, OPTIONS, PATCH, COPY, LOCK, MKCOL, MOVE, PROPFIND, PROPPATCH, and UNLOCK.
  • */ @SerializedName("Values") @Expose private String [] Values; /** * Whether the parameter value is case insensitive. Default value: false. */ @SerializedName("IgnoreCase") @Expose private Boolean IgnoreCase; /** * The parameter name of the match type. This field is required only when `Target=query_string/request_header`.
  • `query_string`: Name of the query string, such as "lang" and "version" in "lang=cn&version=1".
  • `request_header`: Name of the HTTP request header, such as "Accept-Language" in the "Accept-Language:zh-CN,zh;q=0.9" header.
  • */ @SerializedName("Name") @Expose private String Name; /** * Whether the parameter name is case insensitive. Default value: `false`. Note: This field may return null, indicating that no valid values can be obtained. */ @SerializedName("IgnoreNameCase") @Expose private Boolean IgnoreNameCase; /** * Get Operator. Valid values:
  • `equals`: Equals
  • `notEquals`: Does not equal
  • `exist`: Exists
  • `notexist`: Does not exist
  • * @return Operator Operator. Valid values:
  • `equals`: Equals
  • `notEquals`: Does not equal
  • `exist`: Exists
  • `notexist`: Does not exist
  • */ public String getOperator() { return this.Operator; } /** * Set Operator. Valid values:
  • `equals`: Equals
  • `notEquals`: Does not equal
  • `exist`: Exists
  • `notexist`: Does not exist
  • * @param Operator Operator. Valid values:
  • `equals`: Equals
  • `notEquals`: Does not equal
  • `exist`: Exists
  • `notexist`: Does not exist
  • */ public void setOperator(String Operator) { this.Operator = Operator; } /** * Get Matching type. Valid values:
  • filename: Filename;
  • extension: File suffix;
  • host: Host;
  • full_url: A complete URL path under the current site, including the HTTP protocol, the host, and the path;
  • url: The request for a URL path under the current site;
  • client_country: Client country/region;
  • query_string: The query string for a requested URL under the current site;
  • request_header: HTTP request header;
  • client_ip: Client IP;
  • request_protocol: Request protocol;
  • request_method: HTTP request method.
  • * @return Target Matching type. Valid values:
  • filename: Filename;
  • extension: File suffix;
  • host: Host;
  • full_url: A complete URL path under the current site, including the HTTP protocol, the host, and the path;
  • url: The request for a URL path under the current site;
  • client_country: Client country/region;
  • query_string: The query string for a requested URL under the current site;
  • request_header: HTTP request header;
  • client_ip: Client IP;
  • request_protocol: Request protocol;
  • request_method: HTTP request method.
  • */ public String getTarget() { return this.Target; } /** * Set Matching type. Valid values:
  • filename: Filename;
  • extension: File suffix;
  • host: Host;
  • full_url: A complete URL path under the current site, including the HTTP protocol, the host, and the path;
  • url: The request for a URL path under the current site;
  • client_country: Client country/region;
  • query_string: The query string for a requested URL under the current site;
  • request_header: HTTP request header;
  • client_ip: Client IP;
  • request_protocol: Request protocol;
  • request_method: HTTP request method.
  • * @param Target Matching type. Valid values:
  • filename: Filename;
  • extension: File suffix;
  • host: Host;
  • full_url: A complete URL path under the current site, including the HTTP protocol, the host, and the path;
  • url: The request for a URL path under the current site;
  • client_country: Client country/region;
  • query_string: The query string for a requested URL under the current site;
  • request_header: HTTP request header;
  • client_ip: Client IP;
  • request_protocol: Request protocol;
  • request_method: HTTP request method.
  • */ public void setTarget(String Target) { this.Target = Target; } /** * Get Parameter values for corresponding matching types. It is allowed to pass an empty array only when the matching type is query_string or request_header and the operator value is exist or not exist. Corresponding match types include:
  • extension: File suffix such as jpg or txt;
  • filename: For example, foo in foo.jpg;
  • all (any request under the site): all;
  • host: The host under the current site. For example, www.maxx55.com;
  • URL path: The request for a URL path under the current site. For example, /example;
  • URL full: The request for a complete URL under the current site, including the HTTP protocol, the host, and the path. For example: https://www.maxx55.cn/example;
  • client_country: Country/region identifier compliant with the ISO3166 standard;
  • query_string: The parameter value in the query string of the requested URL under the current site. For example, cn and 1 in lang=cn&version=1;
  • request_header: The value of the HTTP request header field. For example, zh-CN,zh;q=0.9 in Accept-Language:zh-CN,zh;q=0.9;
  • client_ip: The client request IP carried in the current request, which supports IPv4/IPv6 and an IP range;
  • request_protocol: The protocol of the current request. Valid values: HTTP and HTTPS;
  • request_method: The method of the current request. Valid values: GET, HEAD, POST, PUT, DELETE, TRACE, CONNECT, OPTIONS, PATCH, COPY, LOCK, MKCOL, MOVE, PROPFIND, PROPPATCH, and UNLOCK.
  • * @return Values Parameter values for corresponding matching types. It is allowed to pass an empty array only when the matching type is query_string or request_header and the operator value is exist or not exist. Corresponding match types include:
  • extension: File suffix such as jpg or txt;
  • filename: For example, foo in foo.jpg;
  • all (any request under the site): all;
  • host: The host under the current site. For example, www.maxx55.com;
  • URL path: The request for a URL path under the current site. For example, /example;
  • URL full: The request for a complete URL under the current site, including the HTTP protocol, the host, and the path. For example: https://www.maxx55.cn/example;
  • client_country: Country/region identifier compliant with the ISO3166 standard;
  • query_string: The parameter value in the query string of the requested URL under the current site. For example, cn and 1 in lang=cn&version=1;
  • request_header: The value of the HTTP request header field. For example, zh-CN,zh;q=0.9 in Accept-Language:zh-CN,zh;q=0.9;
  • client_ip: The client request IP carried in the current request, which supports IPv4/IPv6 and an IP range;
  • request_protocol: The protocol of the current request. Valid values: HTTP and HTTPS;
  • request_method: The method of the current request. Valid values: GET, HEAD, POST, PUT, DELETE, TRACE, CONNECT, OPTIONS, PATCH, COPY, LOCK, MKCOL, MOVE, PROPFIND, PROPPATCH, and UNLOCK.
  • */ public String [] getValues() { return this.Values; } /** * Set Parameter values for corresponding matching types. It is allowed to pass an empty array only when the matching type is query_string or request_header and the operator value is exist or not exist. Corresponding match types include:
  • extension: File suffix such as jpg or txt;
  • filename: For example, foo in foo.jpg;
  • all (any request under the site): all;
  • host: The host under the current site. For example, www.maxx55.com;
  • URL path: The request for a URL path under the current site. For example, /example;
  • URL full: The request for a complete URL under the current site, including the HTTP protocol, the host, and the path. For example: https://www.maxx55.cn/example;
  • client_country: Country/region identifier compliant with the ISO3166 standard;
  • query_string: The parameter value in the query string of the requested URL under the current site. For example, cn and 1 in lang=cn&version=1;
  • request_header: The value of the HTTP request header field. For example, zh-CN,zh;q=0.9 in Accept-Language:zh-CN,zh;q=0.9;
  • client_ip: The client request IP carried in the current request, which supports IPv4/IPv6 and an IP range;
  • request_protocol: The protocol of the current request. Valid values: HTTP and HTTPS;
  • request_method: The method of the current request. Valid values: GET, HEAD, POST, PUT, DELETE, TRACE, CONNECT, OPTIONS, PATCH, COPY, LOCK, MKCOL, MOVE, PROPFIND, PROPPATCH, and UNLOCK.
  • * @param Values Parameter values for corresponding matching types. It is allowed to pass an empty array only when the matching type is query_string or request_header and the operator value is exist or not exist. Corresponding match types include:
  • extension: File suffix such as jpg or txt;
  • filename: For example, foo in foo.jpg;
  • all (any request under the site): all;
  • host: The host under the current site. For example, www.maxx55.com;
  • URL path: The request for a URL path under the current site. For example, /example;
  • URL full: The request for a complete URL under the current site, including the HTTP protocol, the host, and the path. For example: https://www.maxx55.cn/example;
  • client_country: Country/region identifier compliant with the ISO3166 standard;
  • query_string: The parameter value in the query string of the requested URL under the current site. For example, cn and 1 in lang=cn&version=1;
  • request_header: The value of the HTTP request header field. For example, zh-CN,zh;q=0.9 in Accept-Language:zh-CN,zh;q=0.9;
  • client_ip: The client request IP carried in the current request, which supports IPv4/IPv6 and an IP range;
  • request_protocol: The protocol of the current request. Valid values: HTTP and HTTPS;
  • request_method: The method of the current request. Valid values: GET, HEAD, POST, PUT, DELETE, TRACE, CONNECT, OPTIONS, PATCH, COPY, LOCK, MKCOL, MOVE, PROPFIND, PROPPATCH, and UNLOCK.
  • */ public void setValues(String [] Values) { this.Values = Values; } /** * Get Whether the parameter value is case insensitive. Default value: false. * @return IgnoreCase Whether the parameter value is case insensitive. Default value: false. */ public Boolean getIgnoreCase() { return this.IgnoreCase; } /** * Set Whether the parameter value is case insensitive. Default value: false. * @param IgnoreCase Whether the parameter value is case insensitive. Default value: false. */ public void setIgnoreCase(Boolean IgnoreCase) { this.IgnoreCase = IgnoreCase; } /** * Get The parameter name of the match type. This field is required only when `Target=query_string/request_header`.
  • `query_string`: Name of the query string, such as "lang" and "version" in "lang=cn&version=1".
  • `request_header`: Name of the HTTP request header, such as "Accept-Language" in the "Accept-Language:zh-CN,zh;q=0.9" header.
  • * @return Name The parameter name of the match type. This field is required only when `Target=query_string/request_header`.
  • `query_string`: Name of the query string, such as "lang" and "version" in "lang=cn&version=1".
  • `request_header`: Name of the HTTP request header, such as "Accept-Language" in the "Accept-Language:zh-CN,zh;q=0.9" header.
  • */ public String getName() { return this.Name; } /** * Set The parameter name of the match type. This field is required only when `Target=query_string/request_header`.
  • `query_string`: Name of the query string, such as "lang" and "version" in "lang=cn&version=1".
  • `request_header`: Name of the HTTP request header, such as "Accept-Language" in the "Accept-Language:zh-CN,zh;q=0.9" header.
  • * @param Name The parameter name of the match type. This field is required only when `Target=query_string/request_header`.
  • `query_string`: Name of the query string, such as "lang" and "version" in "lang=cn&version=1".
  • `request_header`: Name of the HTTP request header, such as "Accept-Language" in the "Accept-Language:zh-CN,zh;q=0.9" header.
  • */ public void setName(String Name) { this.Name = Name; } /** * Get Whether the parameter name is case insensitive. Default value: `false`. Note: This field may return null, indicating that no valid values can be obtained. * @return IgnoreNameCase Whether the parameter name is case insensitive. Default value: `false`. Note: This field may return null, indicating that no valid values can be obtained. * @deprecated */ @Deprecated public Boolean getIgnoreNameCase() { return this.IgnoreNameCase; } /** * Set Whether the parameter name is case insensitive. Default value: `false`. Note: This field may return null, indicating that no valid values can be obtained. * @param IgnoreNameCase Whether the parameter name is case insensitive. Default value: `false`. Note: This field may return null, indicating that no valid values can be obtained. * @deprecated */ @Deprecated public void setIgnoreNameCase(Boolean IgnoreNameCase) { this.IgnoreNameCase = IgnoreNameCase; } public RuleCondition() { } /** * NOTE: Any ambiguous key set via .set("AnyKey", "value") will be a shallow copy, * and any explicit key, i.e Foo, set via .setFoo("value") will be a deep copy. */ public RuleCondition(RuleCondition source) { if (source.Operator != null) { this.Operator = new String(source.Operator); } if (source.Target != null) { this.Target = new String(source.Target); } if (source.Values != null) { this.Values = new String[source.Values.length]; for (int i = 0; i < source.Values.length; i++) { this.Values[i] = new String(source.Values[i]); } } if (source.IgnoreCase != null) { this.IgnoreCase = new Boolean(source.IgnoreCase); } if (source.Name != null) { this.Name = new String(source.Name); } if (source.IgnoreNameCase != null) { this.IgnoreNameCase = new Boolean(source.IgnoreNameCase); } } /** * Internal implementation, normal users should not use it. */ public void toMap(HashMap map, String prefix) { this.setParamSimple(map, prefix + "Operator", this.Operator); this.setParamSimple(map, prefix + "Target", this.Target); this.setParamArraySimple(map, prefix + "Values.", this.Values); this.setParamSimple(map, prefix + "IgnoreCase", this.IgnoreCase); this.setParamSimple(map, prefix + "Name", this.Name); this.setParamSimple(map, prefix + "IgnoreNameCase", this.IgnoreNameCase); } }




    © 2015 - 2025 Weber Informatics LLC | Privacy Policy