/*
* 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.Cbs.V20170312.Models
{
using Newtonsoft.Json;
using System.Collections.Generic;
using TencentCloud.Common;
public class Snapshot : AbstractModel
{
///
/// 快照ID。
///
[JsonProperty("SnapshotId")]
public string SnapshotId{ get; set; }
///
/// 快照所在的位置。
///
[JsonProperty("Placement")]
public Placement Placement{ get; set; }
///
/// 创建此快照的云硬盘类型。取值范围:
SYSTEM_DISK:系统盘
DATA_DISK:数据盘。
///
[JsonProperty("DiskUsage")]
public string DiskUsage{ get; set; }
///
/// 创建此快照的云硬盘ID。
///
[JsonProperty("DiskId")]
public string DiskId{ get; set; }
///
/// 创建此快照的云硬盘大小,单位GB。
///
[JsonProperty("DiskSize")]
public ulong? DiskSize{ get; set; }
///
/// 快照的状态。取值范围:
NORMAL:正常
CREATING:创建中
ROLLBACKING:回滚中
COPYING_FROM_REMOTE:跨地域复制快照拷贝中。
///
[JsonProperty("SnapshotState")]
public string SnapshotState{ get; set; }
///
/// 快照名称,用户自定义的快照别名。调用[ModifySnapshotAttribute](/document/product/362/15650)可修改此字段。
///
[JsonProperty("SnapshotName")]
public string SnapshotName{ get; set; }
///
/// 快照创建进度百分比,快照创建成功后此字段恒为100。
///
[JsonProperty("Percent")]
public ulong? Percent{ get; set; }
///
/// 快照的创建时间。
///
[JsonProperty("CreateTime")]
public string CreateTime{ get; set; }
///
/// 快照到期时间。如果快照为永久保留,此字段为空。
///
[JsonProperty("DeadlineTime")]
public string DeadlineTime{ get; set; }
///
/// 是否为加密盘创建的快照。取值范围:
true:该快照为加密盘创建的
false:非加密盘创建的快照。
///
[JsonProperty("Encrypt")]
public bool? Encrypt{ get; set; }
///
/// 是否为永久快照。取值范围:
true:永久快照
false:非永久快照。
///
[JsonProperty("IsPermanent")]
public bool? IsPermanent{ get; set; }
///
/// 快照正在跨地域复制的目的地域,默认取值为[]。
///
[JsonProperty("CopyingToRegions")]
public string[] CopyingToRegions{ get; set; }
///
/// 是否为跨地域复制的快照。取值范围:
true:表示为跨地域复制的快照。
false:本地域的快照。
///
[JsonProperty("CopyFromRemote")]
public bool? CopyFromRemote{ get; set; }
///
/// 快照关联的镜像列表。
///
[JsonProperty("Images")]
public Image[] Images{ get; set; }
///
/// 快照关联的镜像个数。
///
[JsonProperty("ImageCount")]
public ulong? ImageCount{ get; set; }
///
/// 快照类型,目前该项取值可以为PRIVATE_SNAPSHOT或者SHARED_SNAPSHOT
///
[JsonProperty("SnapshotType")]
public string SnapshotType{ get; set; }
///
/// 快照当前被共享数
///
[JsonProperty("ShareReference")]
public ulong? ShareReference{ get; set; }
///
/// For internal usage only. DO NOT USE IT.
///
internal override void ToMap(Dictionary map, string prefix)
{
this.SetParamSimple(map, prefix + "SnapshotId", this.SnapshotId);
this.SetParamObj(map, prefix + "Placement.", this.Placement);
this.SetParamSimple(map, prefix + "DiskUsage", this.DiskUsage);
this.SetParamSimple(map, prefix + "DiskId", this.DiskId);
this.SetParamSimple(map, prefix + "DiskSize", this.DiskSize);
this.SetParamSimple(map, prefix + "SnapshotState", this.SnapshotState);
this.SetParamSimple(map, prefix + "SnapshotName", this.SnapshotName);
this.SetParamSimple(map, prefix + "Percent", this.Percent);
this.SetParamSimple(map, prefix + "CreateTime", this.CreateTime);
this.SetParamSimple(map, prefix + "DeadlineTime", this.DeadlineTime);
this.SetParamSimple(map, prefix + "Encrypt", this.Encrypt);
this.SetParamSimple(map, prefix + "IsPermanent", this.IsPermanent);
this.SetParamArraySimple(map, prefix + "CopyingToRegions.", this.CopyingToRegions);
this.SetParamSimple(map, prefix + "CopyFromRemote", this.CopyFromRemote);
this.SetParamArrayObj(map, prefix + "Images.", this.Images);
this.SetParamSimple(map, prefix + "ImageCount", this.ImageCount);
this.SetParamSimple(map, prefix + "SnapshotType", this.SnapshotType);
this.SetParamSimple(map, prefix + "ShareReference", this.ShareReference);
}
}
}