/*
* 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 ModifyAutoSnapshotPolicyAttributeRequest : AbstractModel
{
///
/// 定期快照策略ID。
///
[JsonProperty("AutoSnapshotPolicyId")]
public string AutoSnapshotPolicyId{ get; set; }
///
/// 定期快照的执行策略。
///
[JsonProperty("Policy")]
public Policy[] Policy{ get; set; }
///
/// 要创建的定期快照策略名。不传则默认为“未命名”。最大长度不能超60个字节。
///
[JsonProperty("AutoSnapshotPolicyName")]
public string AutoSnapshotPolicyName{ get; set; }
///
/// 是否激活定期快照策略,FALSE表示未激活,TRUE表示激活,默认为TRUE。
///
[JsonProperty("IsActivated")]
public bool? IsActivated{ get; set; }
///
/// 通过该定期快照策略创建的快照是否永久保留。FALSE表示非永久保留,TRUE表示永久保留,默认为FALSE。
///
[JsonProperty("IsPermanent")]
public bool? IsPermanent{ get; set; }
///
/// 通过该定期快照策略创建的快照保留天数,该参数不可与`IsPermanent`参数冲突,即若定期快照策略设置为永久保留,`RetentionDays`应置0。
///
[JsonProperty("RetentionDays")]
public ulong? RetentionDays{ get; set; }
///
/// For internal usage only. DO NOT USE IT.
///
internal override void ToMap(Dictionary map, string prefix)
{
this.SetParamSimple(map, prefix + "AutoSnapshotPolicyId", this.AutoSnapshotPolicyId);
this.SetParamArrayObj(map, prefix + "Policy.", this.Policy);
this.SetParamSimple(map, prefix + "AutoSnapshotPolicyName", this.AutoSnapshotPolicyName);
this.SetParamSimple(map, prefix + "IsActivated", this.IsActivated);
this.SetParamSimple(map, prefix + "IsPermanent", this.IsPermanent);
this.SetParamSimple(map, prefix + "RetentionDays", this.RetentionDays);
}
}
}