/*
* Copyright (c) 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.
*/
namespace TencentCloud.Gaap.V20180529.Models
{
using Newtonsoft.Json;
using System.Collections.Generic;
using TencentCloud.Common;
public class ModifyRuleAttributeRequest : AbstractModel
{
///
/// 监听器ID
///
[JsonProperty("ListenerId")]
public string ListenerId{ get; set; }
///
/// 转发规则ID
///
[JsonProperty("RuleId")]
public string RuleId{ get; set; }
///
/// 调度策略,其中:
/// rr,轮询;
/// wrr,加权轮询;
/// lc,最小连接数。
///
[JsonProperty("Scheduler")]
public string Scheduler{ get; set; }
///
/// 源站健康检查开关,其中:
/// 1,开启;
/// 0,关闭。
///
[JsonProperty("HealthCheck")]
public ulong? HealthCheck{ get; set; }
///
/// 健康检查配置参数
///
[JsonProperty("CheckParams")]
public RuleCheckParams CheckParams{ get; set; }
///
/// 转发规则路径
///
[JsonProperty("Path")]
public string Path{ get; set; }
///
/// 加速通道转发到源站的协议类型,支持:default, HTTP和HTTPS。
/// 当ForwardProtocol=default时,表示使用对应监听器的ForwardProtocol。
///
[JsonProperty("ForwardProtocol")]
public string ForwardProtocol{ get; set; }
///
/// 加速通道转发到源站的请求中携带的host。
/// 当ForwardHost=default时,使用规则的域名,其他情况为该字段所设置的值。
///
[JsonProperty("ForwardHost")]
public string ForwardHost{ get; set; }
///
/// For internal usage only. DO NOT USE IT.
///
internal override void ToMap(Dictionary map, string prefix)
{
this.SetParamSimple(map, prefix + "ListenerId", this.ListenerId);
this.SetParamSimple(map, prefix + "RuleId", this.RuleId);
this.SetParamSimple(map, prefix + "Scheduler", this.Scheduler);
this.SetParamSimple(map, prefix + "HealthCheck", this.HealthCheck);
this.SetParamObj(map, prefix + "CheckParams.", this.CheckParams);
this.SetParamSimple(map, prefix + "Path", this.Path);
this.SetParamSimple(map, prefix + "ForwardProtocol", this.ForwardProtocol);
this.SetParamSimple(map, prefix + "ForwardHost", this.ForwardHost);
}
}
}