/* * 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.Clb.V20180317.Models { using Newtonsoft.Json; using System.Collections.Generic; using TencentCloud.Common; public class ModifyRuleRequest : AbstractModel { /// /// 负载均衡实例 ID /// [JsonProperty("LoadBalancerId")] public string LoadBalancerId{ get; set; } /// /// 负载均衡监听器 ID /// [JsonProperty("ListenerId")] public string ListenerId{ get; set; } /// /// 要修改的转发规则的 ID。 /// [JsonProperty("LocationId")] public string LocationId{ get; set; } /// /// 转发规则的新的转发路径,如不需修改Url,则不需提供此参数 /// [JsonProperty("Url")] public string Url{ get; set; } /// /// 健康检查信息 /// [JsonProperty("HealthCheck")] public HealthCheck HealthCheck{ get; set; } /// /// 规则的请求转发方式,可选值:WRR、LEAST_CONN、IP_HASH /// 分别表示按权重轮询、最小连接数、按IP哈希, 默认为 WRR。 /// [JsonProperty("Scheduler")] public string Scheduler{ get; set; } /// /// 会话保持时间 /// [JsonProperty("SessionExpireTime")] public long? SessionExpireTime{ get; set; } /// /// 负载均衡实例与后端服务之间的转发协议,默认HTTP,可取值:HTTP、HTTPS、TRPC /// [JsonProperty("ForwardType")] public string ForwardType{ get; set; } /// /// TRPC被调服务器路由,ForwardType为TRPC时必填 /// [JsonProperty("TrpcCallee")] public string TrpcCallee{ get; set; } /// /// TRPC调用服务接口,ForwardType为TRPC时必填 /// [JsonProperty("TrpcFunc")] public string TrpcFunc{ get; set; } /// /// For internal usage only. DO NOT USE IT. /// internal override void ToMap(Dictionary map, string prefix) { this.SetParamSimple(map, prefix + "LoadBalancerId", this.LoadBalancerId); this.SetParamSimple(map, prefix + "ListenerId", this.ListenerId); this.SetParamSimple(map, prefix + "LocationId", this.LocationId); this.SetParamSimple(map, prefix + "Url", this.Url); this.SetParamObj(map, prefix + "HealthCheck.", this.HealthCheck); this.SetParamSimple(map, prefix + "Scheduler", this.Scheduler); this.SetParamSimple(map, prefix + "SessionExpireTime", this.SessionExpireTime); this.SetParamSimple(map, prefix + "ForwardType", this.ForwardType); this.SetParamSimple(map, prefix + "TrpcCallee", this.TrpcCallee); this.SetParamSimple(map, prefix + "TrpcFunc", this.TrpcFunc); } } }