/*
* 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.Dc.V20180410.Models
{
using Newtonsoft.Json;
using System.Collections.Generic;
using TencentCloud.Common;
public class DirectConnectTunnel : AbstractModel
{
///
/// 专用通道ID
///
[JsonProperty("DirectConnectTunnelId")]
public string DirectConnectTunnelId{ get; set; }
///
/// 物理专线ID
///
[JsonProperty("DirectConnectId")]
public string DirectConnectId{ get; set; }
///
/// 专用通道状态
/// AVAILABLE:就绪或者已连接
/// PENDING:申请中
/// ALLOCATING:配置中
/// ALLOCATED:配置完成
/// ALTERING:修改中
/// DELETING:删除中
/// DELETED:删除完成
/// COMFIRMING:待接受
/// REJECTED:拒绝
///
[JsonProperty("State")]
public string State{ get; set; }
///
/// 物理专线的拥有者,开发商账号 ID
///
[JsonProperty("DirectConnectOwnerAccount")]
public string DirectConnectOwnerAccount{ get; set; }
///
/// 专用通道的拥有者,开发商账号 ID
///
[JsonProperty("OwnerAccount")]
public string OwnerAccount{ get; set; }
///
/// 网络类型,分别为VPC、BMVPC、CCN
/// VPC:私有网络 ,BMVPC:黑石网络,CCN:云联网
///
[JsonProperty("NetworkType")]
public string NetworkType{ get; set; }
///
/// VPC地域对应的网络名,如ap-guangzhou
///
[JsonProperty("NetworkRegion")]
public string NetworkRegion{ get; set; }
///
/// 私有网络统一 ID 或者黑石网络统一 ID
///
[JsonProperty("VpcId")]
public string VpcId{ get; set; }
///
/// 专线网关 ID
///
[JsonProperty("DirectConnectGatewayId")]
public string DirectConnectGatewayId{ get; set; }
///
/// BGP :BGP路由 STATIC:静态 默认为 BGP 路由
///
[JsonProperty("RouteType")]
public string RouteType{ get; set; }
///
/// 用户侧BGP,Asn,AuthKey
///
[JsonProperty("BgpPeer")]
public BgpPeer BgpPeer{ get; set; }
///
/// 用户侧网段地址
///
[JsonProperty("RouteFilterPrefixes")]
public RouteFilterPrefix[] RouteFilterPrefixes{ get; set; }
///
/// 专用通道的Vlan
///
[JsonProperty("Vlan")]
public long? Vlan{ get; set; }
///
/// TencentAddress,腾讯侧互联 IP
///
[JsonProperty("TencentAddress")]
public string TencentAddress{ get; set; }
///
/// CustomerAddress,用户侧互联 IP
///
[JsonProperty("CustomerAddress")]
public string CustomerAddress{ get; set; }
///
/// 专用通道名称
///
[JsonProperty("DirectConnectTunnelName")]
public string DirectConnectTunnelName{ get; set; }
///
/// 专用通道创建时间
///
[JsonProperty("CreatedTime")]
public string CreatedTime{ get; set; }
///
/// 专用通道带宽值
///
[JsonProperty("Bandwidth")]
public long? Bandwidth{ get; set; }
///
/// 专用通道标签值
///
[JsonProperty("TagSet")]
public Tag[] TagSet{ get; set; }
///
/// 关联的网络自定义探测ID
/// 注意:此字段可能返回 null,表示取不到有效值。
///
[JsonProperty("NetDetectId")]
public string NetDetectId{ get; set; }
///
/// BGP community开关
/// 注意:此字段可能返回 null,表示取不到有效值。
///
[JsonProperty("EnableBGPCommunity")]
public bool? EnableBGPCommunity{ get; set; }
///
/// 是否为Nat通道
/// 注意:此字段可能返回 null,表示取不到有效值。
///
[JsonProperty("NatType")]
public long? NatType{ get; set; }
///
/// VPC地域简码,如gz、cd
/// 注意:此字段可能返回 null,表示取不到有效值。
///
[JsonProperty("VpcRegion")]
public string VpcRegion{ get; set; }
///
/// 是否开启BFD
/// 注意:此字段可能返回 null,表示取不到有效值。
///
[JsonProperty("BfdEnable")]
public long? BfdEnable{ get; set; }
///
/// 专用通道接入点类型
/// 注意:此字段可能返回 null,表示取不到有效值。
///
[JsonProperty("AccessPointType")]
public string AccessPointType{ get; set; }
///
/// 专线网关名称
/// 注意:此字段可能返回 null,表示取不到有效值。
///
[JsonProperty("DirectConnectGatewayName")]
public string DirectConnectGatewayName{ get; set; }
///
/// VPC名称
/// 注意:此字段可能返回 null,表示取不到有效值。
///
[JsonProperty("VpcName")]
public string VpcName{ get; set; }
///
/// TencentBackupAddress,腾讯侧备用互联 IP
/// 注意:此字段可能返回 null,表示取不到有效值。
///
[JsonProperty("TencentBackupAddress")]
public string TencentBackupAddress{ get; set; }
///
/// For internal usage only. DO NOT USE IT.
///
internal override void ToMap(Dictionary map, string prefix)
{
this.SetParamSimple(map, prefix + "DirectConnectTunnelId", this.DirectConnectTunnelId);
this.SetParamSimple(map, prefix + "DirectConnectId", this.DirectConnectId);
this.SetParamSimple(map, prefix + "State", this.State);
this.SetParamSimple(map, prefix + "DirectConnectOwnerAccount", this.DirectConnectOwnerAccount);
this.SetParamSimple(map, prefix + "OwnerAccount", this.OwnerAccount);
this.SetParamSimple(map, prefix + "NetworkType", this.NetworkType);
this.SetParamSimple(map, prefix + "NetworkRegion", this.NetworkRegion);
this.SetParamSimple(map, prefix + "VpcId", this.VpcId);
this.SetParamSimple(map, prefix + "DirectConnectGatewayId", this.DirectConnectGatewayId);
this.SetParamSimple(map, prefix + "RouteType", this.RouteType);
this.SetParamObj(map, prefix + "BgpPeer.", this.BgpPeer);
this.SetParamArrayObj(map, prefix + "RouteFilterPrefixes.", this.RouteFilterPrefixes);
this.SetParamSimple(map, prefix + "Vlan", this.Vlan);
this.SetParamSimple(map, prefix + "TencentAddress", this.TencentAddress);
this.SetParamSimple(map, prefix + "CustomerAddress", this.CustomerAddress);
this.SetParamSimple(map, prefix + "DirectConnectTunnelName", this.DirectConnectTunnelName);
this.SetParamSimple(map, prefix + "CreatedTime", this.CreatedTime);
this.SetParamSimple(map, prefix + "Bandwidth", this.Bandwidth);
this.SetParamArrayObj(map, prefix + "TagSet.", this.TagSet);
this.SetParamSimple(map, prefix + "NetDetectId", this.NetDetectId);
this.SetParamSimple(map, prefix + "EnableBGPCommunity", this.EnableBGPCommunity);
this.SetParamSimple(map, prefix + "NatType", this.NatType);
this.SetParamSimple(map, prefix + "VpcRegion", this.VpcRegion);
this.SetParamSimple(map, prefix + "BfdEnable", this.BfdEnable);
this.SetParamSimple(map, prefix + "AccessPointType", this.AccessPointType);
this.SetParamSimple(map, prefix + "DirectConnectGatewayName", this.DirectConnectGatewayName);
this.SetParamSimple(map, prefix + "VpcName", this.VpcName);
this.SetParamSimple(map, prefix + "TencentBackupAddress", this.TencentBackupAddress);
}
}
}