/*
* 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.Ecdn.V20191012.Models
{
using Newtonsoft.Json;
using System.Collections.Generic;
using TencentCloud.Common;
public class Origin : AbstractModel
{
///
/// 主源站列表,默认格式为 ["ip1:port1", "ip2:port2"]。
/// 支持在源站列表中配置权重,配置IP源站权重格式为 ["ip1:port1:weight1", "ip2:port2:weight2"]。
///
[JsonProperty("Origins")]
public string[] Origins{ get; set; }
///
/// 主源站类型,支持domain,ip,分别表示域名源站,ip源站。
/// 设置Origins时必须填写。
/// 注意:此字段可能返回 null,表示取不到有效值。
///
[JsonProperty("OriginType")]
public string OriginType{ get; set; }
///
/// 回源时Host头部值。
/// 注意:此字段可能返回 null,表示取不到有效值。
///
[JsonProperty("ServerName")]
public string ServerName{ get; set; }
///
/// 回源协议类型,支持http,follow,https,分别表示强制http回源,协议跟随回源,https回源。
/// 注意:此字段可能返回 null,表示取不到有效值。
///
[JsonProperty("OriginPullProtocol")]
public string OriginPullProtocol{ get; set; }
///
/// 备份源站列表。
///
[JsonProperty("BackupOrigins")]
public string[] BackupOrigins{ get; set; }
///
/// 备份源站类型,同OriginType。
/// 设置BackupOrigins时必须填写。
/// 注意:此字段可能返回 null,表示取不到有效值。
///
[JsonProperty("BackupOriginType")]
public string BackupOriginType{ get; set; }
///
/// For internal usage only. DO NOT USE IT.
///
internal override void ToMap(Dictionary map, string prefix)
{
this.SetParamArraySimple(map, prefix + "Origins.", this.Origins);
this.SetParamSimple(map, prefix + "OriginType", this.OriginType);
this.SetParamSimple(map, prefix + "ServerName", this.ServerName);
this.SetParamSimple(map, prefix + "OriginPullProtocol", this.OriginPullProtocol);
this.SetParamArraySimple(map, prefix + "BackupOrigins.", this.BackupOrigins);
this.SetParamSimple(map, prefix + "BackupOriginType", this.BackupOriginType);
}
}
}