generated/api/Models/UpdatePlanBackupDestinationDetails.cs
// Code generated by Microsoft (R) AutoRest Code Generator (autorest: 3.9.4, generator: @autorest/powershell@3.0.415) // Changes may cause incorrect behavior and will be lost if the code is regenerated. namespace Commvault.Powershell.Models { using static Commvault.Powershell.Runtime.Extensions; public partial class UpdatePlanBackupDestinationDetails : Commvault.Powershell.Models.IUpdatePlanBackupDestinationDetails, Commvault.Powershell.Models.IUpdatePlanBackupDestinationDetailsInternal { /// <summary>Backing field for <see cref="BackupType" /> property.</summary> private Commvault.Powershell.Models.IPlanBackupDestinationBackupTypeInfo _backupType; [Commvault.Powershell.Origin(Commvault.Powershell.PropertyOrigin.Owned)] internal Commvault.Powershell.Models.IPlanBackupDestinationBackupTypeInfo BackupType { get => (this._backupType = this._backupType ?? new Commvault.Powershell.Models.PlanBackupDestinationBackupTypeInfo()); set => this._backupType = value; } /// <summary> /// Tells what start date, backup types should be copied from. The date is provided in unix time format in number of seconds. /// -1 means initial backup date. /// </summary> [Commvault.Powershell.Origin(Commvault.Powershell.PropertyOrigin.Inlined)] public long? BackupTypeBackupTypesCopiedFrom { get => ((Commvault.Powershell.Models.IPlanBackupDestinationBackupTypeInfoInternal)BackupType).BackupTypesCopiedFrom; set => ((Commvault.Powershell.Models.IPlanBackupDestinationBackupTypeInfoInternal)BackupType).BackupTypesCopiedFrom = value ?? default(long); } /// <summary> /// All_JOBS means SYNCHRONOUS copy type, others are applicable for SELECTIVE copy Type only. /// </summary> [Commvault.Powershell.Origin(Commvault.Powershell.PropertyOrigin.Inlined)] public string BackupTypeBackupTypesToCopy { get => ((Commvault.Powershell.Models.IPlanBackupDestinationBackupTypeInfoInternal)BackupType).BackupTypesToCopy; set => ((Commvault.Powershell.Models.IPlanBackupDestinationBackupTypeInfoInternal)BackupType).BackupTypesToCopy = value ?? null; } /// <summary> /// Which type of backup type should be copied for the given backup destination when backup type is not all jobs. Default /// is LAST while adding new backup destination. /// </summary> [Commvault.Powershell.Origin(Commvault.Powershell.PropertyOrigin.Inlined)] public string BackupTypeFullBackupTypesToCopy { get => ((Commvault.Powershell.Models.IPlanBackupDestinationBackupTypeInfoInternal)BackupType).FullBackupTypesToCopy; set => ((Commvault.Powershell.Models.IPlanBackupDestinationBackupTypeInfoInternal)BackupType).FullBackupTypesToCopy = value ?? null; } /// <summary>Internal Acessors for BackupType</summary> Commvault.Powershell.Models.IPlanBackupDestinationBackupTypeInfo Commvault.Powershell.Models.IUpdatePlanBackupDestinationDetailsInternal.BackupType { get => (this._backupType = this._backupType ?? new Commvault.Powershell.Models.PlanBackupDestinationBackupTypeInfo()); set { {_backupType = value;} } } /// <summary>Internal Acessors for ExtendedRetentionRuleFirstExtendedRetentionRule</summary> Commvault.Powershell.Models.IPlanRetentionRule Commvault.Powershell.Models.IUpdatePlanBackupDestinationDetailsInternal.ExtendedRetentionRuleFirstExtendedRetentionRule { get => ((Commvault.Powershell.Models.IPlanBackupDestinationRetentionRuleInfoInternal)RetentionRules).ExtendedRetentionRuleFirstExtendedRetentionRule; set => ((Commvault.Powershell.Models.IPlanBackupDestinationRetentionRuleInfoInternal)RetentionRules).ExtendedRetentionRuleFirstExtendedRetentionRule = value; } /// <summary>Internal Acessors for ExtendedRetentionRuleSecondExtendedRetentionRule</summary> Commvault.Powershell.Models.IPlanRetentionRule Commvault.Powershell.Models.IUpdatePlanBackupDestinationDetailsInternal.ExtendedRetentionRuleSecondExtendedRetentionRule { get => ((Commvault.Powershell.Models.IPlanBackupDestinationRetentionRuleInfoInternal)RetentionRules).ExtendedRetentionRuleSecondExtendedRetentionRule; set => ((Commvault.Powershell.Models.IPlanBackupDestinationRetentionRuleInfoInternal)RetentionRules).ExtendedRetentionRuleSecondExtendedRetentionRule = value; } /// <summary>Internal Acessors for ExtendedRetentionRuleThirdExtendedRetentionRule</summary> Commvault.Powershell.Models.IPlanRetentionRule Commvault.Powershell.Models.IUpdatePlanBackupDestinationDetailsInternal.ExtendedRetentionRuleThirdExtendedRetentionRule { get => ((Commvault.Powershell.Models.IPlanBackupDestinationRetentionRuleInfoInternal)RetentionRules).ExtendedRetentionRuleThirdExtendedRetentionRule; set => ((Commvault.Powershell.Models.IPlanBackupDestinationRetentionRuleInfoInternal)RetentionRules).ExtendedRetentionRuleThirdExtendedRetentionRule = value; } /// <summary>Internal Acessors for General</summary> Commvault.Powershell.Models.IPlanBackupDestinationGeneralInfoUpdate Commvault.Powershell.Models.IUpdatePlanBackupDestinationDetailsInternal.General { get => (this._general = this._general ?? new Commvault.Powershell.Models.PlanBackupDestinationGeneralInfoUpdate()); set { {_general = value;} } } /// <summary>Internal Acessors for GeneralSource</summary> Commvault.Powershell.Models.IIdName Commvault.Powershell.Models.IUpdatePlanBackupDestinationDetailsInternal.GeneralSource { get => ((Commvault.Powershell.Models.IPlanBackupDestinationGeneralInfoUpdateInternal)General).Source; set => ((Commvault.Powershell.Models.IPlanBackupDestinationGeneralInfoUpdateInternal)General).Source = value; } /// <summary>Internal Acessors for RetentionRuleExtendedRetentionRules</summary> Commvault.Powershell.Models.IExtendedRetentionRules Commvault.Powershell.Models.IUpdatePlanBackupDestinationDetailsInternal.RetentionRuleExtendedRetentionRules { get => ((Commvault.Powershell.Models.IPlanBackupDestinationRetentionRuleInfoInternal)RetentionRules).ExtendedRetentionRules; set => ((Commvault.Powershell.Models.IPlanBackupDestinationRetentionRuleInfoInternal)RetentionRules).ExtendedRetentionRules = value; } /// <summary>Internal Acessors for RetentionRules</summary> Commvault.Powershell.Models.IPlanBackupDestinationRetentionRuleInfo Commvault.Powershell.Models.IUpdatePlanBackupDestinationDetailsInternal.RetentionRules { get => (this._retentionRules = this._retentionRules ?? new Commvault.Powershell.Models.PlanBackupDestinationRetentionRuleInfo()); set { {_retentionRules = value;} } } /// <summary>If this is set as true, no need to specify retentionPeriodDays.</summary> [Commvault.Powershell.Origin(Commvault.Powershell.PropertyOrigin.Inlined)] public bool? FirstExtendedRetentionRuleIsInfiniteRetention { get => ((Commvault.Powershell.Models.IPlanBackupDestinationRetentionRuleInfoInternal)RetentionRules).FirstExtendedRetentionRuleIsInfiniteRetention; set => ((Commvault.Powershell.Models.IPlanBackupDestinationRetentionRuleInfoInternal)RetentionRules).FirstExtendedRetentionRuleIsInfiniteRetention = value ?? default(bool); } /// <summary>If this is set, no need to specify isInfiniteRetention as false.</summary> [Commvault.Powershell.Origin(Commvault.Powershell.PropertyOrigin.Inlined)] public long? FirstExtendedRetentionRuleRetentionPeriodDays { get => ((Commvault.Powershell.Models.IPlanBackupDestinationRetentionRuleInfoInternal)RetentionRules).FirstExtendedRetentionRuleRetentionPeriodDays; set => ((Commvault.Powershell.Models.IPlanBackupDestinationRetentionRuleInfoInternal)RetentionRules).FirstExtendedRetentionRuleRetentionPeriodDays = value ?? default(long); } /// <summary> /// All_JOBS means SYNCHRONOUS copy type, others are applicable for SELECTIVE copy Type only. /// </summary> [Commvault.Powershell.Origin(Commvault.Powershell.PropertyOrigin.Inlined)] public string FirstExtendedRetentionRuleType { get => ((Commvault.Powershell.Models.IPlanBackupDestinationRetentionRuleInfoInternal)RetentionRules).FirstExtendedRetentionRuleType; set => ((Commvault.Powershell.Models.IPlanBackupDestinationRetentionRuleInfoInternal)RetentionRules).FirstExtendedRetentionRuleType = value ?? null; } /// <summary>Backing field for <see cref="General" /> property.</summary> private Commvault.Powershell.Models.IPlanBackupDestinationGeneralInfoUpdate _general; [Commvault.Powershell.Origin(Commvault.Powershell.PropertyOrigin.Owned)] internal Commvault.Powershell.Models.IPlanBackupDestinationGeneralInfoUpdate General { get => (this._general = this._general ?? new Commvault.Powershell.Models.PlanBackupDestinationGeneralInfoUpdate()); set => this._general = value; } /// <summary>Toggle to keep backup destination active</summary> [Commvault.Powershell.Origin(Commvault.Powershell.PropertyOrigin.Inlined)] public bool? GeneralIsActive { get => ((Commvault.Powershell.Models.IPlanBackupDestinationGeneralInfoUpdateInternal)General).IsActive; set => ((Commvault.Powershell.Models.IPlanBackupDestinationGeneralInfoUpdateInternal)General).IsActive = value ?? default(bool); } /// <summary>Backing field for <see cref="Mappings" /> property.</summary> private Commvault.Powershell.Models.ISnapshotCopyMapping[] _mappings; [Commvault.Powershell.Origin(Commvault.Powershell.PropertyOrigin.Owned)] public Commvault.Powershell.Models.ISnapshotCopyMapping[] Mappings { get => this._mappings; set => this._mappings = value; } /// <summary>Backing field for <see cref="NewName" /> property.</summary> private string _newName; /// <summary>New name for backup destination</summary> [Commvault.Powershell.Origin(Commvault.Powershell.PropertyOrigin.Owned)] public string NewName { get => this._newName; set => this._newName = value; } /// <summary>Tells if this copy has data aging enabled</summary> [Commvault.Powershell.Origin(Commvault.Powershell.PropertyOrigin.Inlined)] public bool? RetentionRuleEnableDataAging { get => ((Commvault.Powershell.Models.IPlanBackupDestinationRetentionRuleInfoInternal)RetentionRules).EnableDataAging; set => ((Commvault.Powershell.Models.IPlanBackupDestinationRetentionRuleInfoInternal)RetentionRules).EnableDataAging = value ?? default(bool); } /// <summary> /// Which type of backup type should be copied for the given backup destination when backup type is not all jobs. Default /// is LAST while adding new backup destination. /// </summary> [Commvault.Powershell.Origin(Commvault.Powershell.PropertyOrigin.Inlined)] public string RetentionRuleFullBackupTypesToBeRetained { get => ((Commvault.Powershell.Models.IPlanBackupDestinationRetentionRuleInfoInternal)RetentionRules).FullBackupTypesToBeRetained; set => ((Commvault.Powershell.Models.IPlanBackupDestinationRetentionRuleInfoInternal)RetentionRules).FullBackupTypesToBeRetained = value ?? null; } /// <summary> /// Tells if this copy should use storage pool retention period days or the retention defined for this copy. Set as true to /// use retention defined on this copy. /// </summary> [Commvault.Powershell.Origin(Commvault.Powershell.PropertyOrigin.Inlined)] public bool? RetentionRuleOverrideRetentionSettings { get => ((Commvault.Powershell.Models.IPlanBackupDestinationRetentionRuleInfoInternal)RetentionRules).OverrideRetentionSettings; set => ((Commvault.Powershell.Models.IPlanBackupDestinationRetentionRuleInfoInternal)RetentionRules).OverrideRetentionSettings = value ?? default(bool); } /// <summary>Retention period in days</summary> [Commvault.Powershell.Origin(Commvault.Powershell.PropertyOrigin.Inlined)] public long? RetentionRuleRetentionPeriodDays { get => ((Commvault.Powershell.Models.IPlanBackupDestinationRetentionRuleInfoInternal)RetentionRules).RetentionPeriodDays; set => ((Commvault.Powershell.Models.IPlanBackupDestinationRetentionRuleInfoInternal)RetentionRules).RetentionPeriodDays = value ?? default(long); } /// <summary>Number of snap recovery points for snap copy for retention</summary> [Commvault.Powershell.Origin(Commvault.Powershell.PropertyOrigin.Inlined)] public long? RetentionRuleSnapRecoveryPoints { get => ((Commvault.Powershell.Models.IPlanBackupDestinationRetentionRuleInfoInternal)RetentionRules).SnapRecoveryPoints; set => ((Commvault.Powershell.Models.IPlanBackupDestinationRetentionRuleInfoInternal)RetentionRules).SnapRecoveryPoints = value ?? default(long); } /// <summary>Which type of retention rule should be used for the given backup destination</summary> [Commvault.Powershell.Origin(Commvault.Powershell.PropertyOrigin.Inlined)] public string RetentionRuleType { get => ((Commvault.Powershell.Models.IPlanBackupDestinationRetentionRuleInfoInternal)RetentionRules).RetentionRuleType; set => ((Commvault.Powershell.Models.IPlanBackupDestinationRetentionRuleInfoInternal)RetentionRules).RetentionRuleType = value ?? null; } /// <summary>Should extended retention rules be used</summary> [Commvault.Powershell.Origin(Commvault.Powershell.PropertyOrigin.Inlined)] public bool? RetentionRuleUseExtendedRetentionRules { get => ((Commvault.Powershell.Models.IPlanBackupDestinationRetentionRuleInfoInternal)RetentionRules).UseExtendedRetentionRules; set => ((Commvault.Powershell.Models.IPlanBackupDestinationRetentionRuleInfoInternal)RetentionRules).UseExtendedRetentionRules = value ?? default(bool); } /// <summary>Backing field for <see cref="RetentionRules" /> property.</summary> private Commvault.Powershell.Models.IPlanBackupDestinationRetentionRuleInfo _retentionRules; [Commvault.Powershell.Origin(Commvault.Powershell.PropertyOrigin.Owned)] internal Commvault.Powershell.Models.IPlanBackupDestinationRetentionRuleInfo RetentionRules { get => (this._retentionRules = this._retentionRules ?? new Commvault.Powershell.Models.PlanBackupDestinationRetentionRuleInfo()); set => this._retentionRules = value; } /// <summary>If this is set as true, no need to specify retentionPeriodDays.</summary> [Commvault.Powershell.Origin(Commvault.Powershell.PropertyOrigin.Inlined)] public bool? SecondExtendedRetentionRuleIsInfiniteRetention { get => ((Commvault.Powershell.Models.IPlanBackupDestinationRetentionRuleInfoInternal)RetentionRules).SecondExtendedRetentionRuleIsInfiniteRetention; set => ((Commvault.Powershell.Models.IPlanBackupDestinationRetentionRuleInfoInternal)RetentionRules).SecondExtendedRetentionRuleIsInfiniteRetention = value ?? default(bool); } /// <summary>If this is set, no need to specify isInfiniteRetention as false.</summary> [Commvault.Powershell.Origin(Commvault.Powershell.PropertyOrigin.Inlined)] public long? SecondExtendedRetentionRuleRetentionPeriodDays { get => ((Commvault.Powershell.Models.IPlanBackupDestinationRetentionRuleInfoInternal)RetentionRules).SecondExtendedRetentionRuleRetentionPeriodDays; set => ((Commvault.Powershell.Models.IPlanBackupDestinationRetentionRuleInfoInternal)RetentionRules).SecondExtendedRetentionRuleRetentionPeriodDays = value ?? default(long); } /// <summary> /// All_JOBS means SYNCHRONOUS copy type, others are applicable for SELECTIVE copy Type only. /// </summary> [Commvault.Powershell.Origin(Commvault.Powershell.PropertyOrigin.Inlined)] public string SecondExtendedRetentionRuleType { get => ((Commvault.Powershell.Models.IPlanBackupDestinationRetentionRuleInfoInternal)RetentionRules).SecondExtendedRetentionRuleType; set => ((Commvault.Powershell.Models.IPlanBackupDestinationRetentionRuleInfoInternal)RetentionRules).SecondExtendedRetentionRuleType = value ?? null; } [Commvault.Powershell.Origin(Commvault.Powershell.PropertyOrigin.Inlined)] public long? SourceId { get => ((Commvault.Powershell.Models.IPlanBackupDestinationGeneralInfoUpdateInternal)General).SourceId; set => ((Commvault.Powershell.Models.IPlanBackupDestinationGeneralInfoUpdateInternal)General).SourceId = value ?? default(long); } [Commvault.Powershell.Origin(Commvault.Powershell.PropertyOrigin.Inlined)] public string SourceName { get => ((Commvault.Powershell.Models.IPlanBackupDestinationGeneralInfoUpdateInternal)General).SourceName; set => ((Commvault.Powershell.Models.IPlanBackupDestinationGeneralInfoUpdateInternal)General).SourceName = value ?? null; } /// <summary>If this is set as true, no need to specify retentionPeriodDays.</summary> [Commvault.Powershell.Origin(Commvault.Powershell.PropertyOrigin.Inlined)] public bool? ThirdExtendedRetentionRuleIsInfiniteRetention { get => ((Commvault.Powershell.Models.IPlanBackupDestinationRetentionRuleInfoInternal)RetentionRules).ThirdExtendedRetentionRuleIsInfiniteRetention; set => ((Commvault.Powershell.Models.IPlanBackupDestinationRetentionRuleInfoInternal)RetentionRules).ThirdExtendedRetentionRuleIsInfiniteRetention = value ?? default(bool); } /// <summary>If this is set, no need to specify isInfiniteRetention as false.</summary> [Commvault.Powershell.Origin(Commvault.Powershell.PropertyOrigin.Inlined)] public long? ThirdExtendedRetentionRuleRetentionPeriodDays { get => ((Commvault.Powershell.Models.IPlanBackupDestinationRetentionRuleInfoInternal)RetentionRules).ThirdExtendedRetentionRuleRetentionPeriodDays; set => ((Commvault.Powershell.Models.IPlanBackupDestinationRetentionRuleInfoInternal)RetentionRules).ThirdExtendedRetentionRuleRetentionPeriodDays = value ?? default(long); } /// <summary> /// All_JOBS means SYNCHRONOUS copy type, others are applicable for SELECTIVE copy Type only. /// </summary> [Commvault.Powershell.Origin(Commvault.Powershell.PropertyOrigin.Inlined)] public string ThirdExtendedRetentionRuleType { get => ((Commvault.Powershell.Models.IPlanBackupDestinationRetentionRuleInfoInternal)RetentionRules).ThirdExtendedRetentionRuleType; set => ((Commvault.Powershell.Models.IPlanBackupDestinationRetentionRuleInfoInternal)RetentionRules).ThirdExtendedRetentionRuleType = value ?? null; } /// <summary>Creates an new <see cref="UpdatePlanBackupDestinationDetails" /> instance.</summary> public UpdatePlanBackupDestinationDetails() { } } public partial interface IUpdatePlanBackupDestinationDetails : Commvault.Powershell.Runtime.IJsonSerializable { /// <summary> /// Tells what start date, backup types should be copied from. The date is provided in unix time format in number of seconds. /// -1 means initial backup date. /// </summary> [Commvault.Powershell.Runtime.Info( Required = false, ReadOnly = false, Description = @"Tells what start date, backup types should be copied from. The date is provided in unix time format in number of seconds. -1 means initial backup date.", SerializedName = @"backupTypesCopiedFrom", PossibleTypes = new [] { typeof(long) })] long? BackupTypeBackupTypesCopiedFrom { get; set; } /// <summary> /// All_JOBS means SYNCHRONOUS copy type, others are applicable for SELECTIVE copy Type only. /// </summary> [Commvault.Powershell.Runtime.Info( Required = false, ReadOnly = false, Description = @"All_JOBS means SYNCHRONOUS copy type, others are applicable for SELECTIVE copy Type only.", SerializedName = @"backupTypesToCopy", PossibleTypes = new [] { typeof(string) })] string BackupTypeBackupTypesToCopy { get; set; } /// <summary> /// Which type of backup type should be copied for the given backup destination when backup type is not all jobs. Default /// is LAST while adding new backup destination. /// </summary> [Commvault.Powershell.Runtime.Info( Required = false, ReadOnly = false, Description = @"Which type of backup type should be copied for the given backup destination when backup type is not all jobs. Default is LAST while adding new backup destination.", SerializedName = @"fullBackupTypesToCopy", PossibleTypes = new [] { typeof(string) })] string BackupTypeFullBackupTypesToCopy { get; set; } /// <summary>If this is set as true, no need to specify retentionPeriodDays.</summary> [Commvault.Powershell.Runtime.Info( Required = false, ReadOnly = false, Description = @"If this is set as true, no need to specify retentionPeriodDays.", SerializedName = @"isInfiniteRetention", PossibleTypes = new [] { typeof(bool) })] bool? FirstExtendedRetentionRuleIsInfiniteRetention { get; set; } /// <summary>If this is set, no need to specify isInfiniteRetention as false.</summary> [Commvault.Powershell.Runtime.Info( Required = false, ReadOnly = false, Description = @"If this is set, no need to specify isInfiniteRetention as false.", SerializedName = @"retentionPeriodDays", PossibleTypes = new [] { typeof(long) })] long? FirstExtendedRetentionRuleRetentionPeriodDays { get; set; } /// <summary> /// All_JOBS means SYNCHRONOUS copy type, others are applicable for SELECTIVE copy Type only. /// </summary> [Commvault.Powershell.Runtime.Info( Required = false, ReadOnly = false, Description = @"All_JOBS means SYNCHRONOUS copy type, others are applicable for SELECTIVE copy Type only.", SerializedName = @"type", PossibleTypes = new [] { typeof(string) })] string FirstExtendedRetentionRuleType { get; set; } /// <summary>Toggle to keep backup destination active</summary> [Commvault.Powershell.Runtime.Info( Required = false, ReadOnly = false, Description = @"Toggle to keep backup destination active", SerializedName = @"isActive", PossibleTypes = new [] { typeof(bool) })] bool? GeneralIsActive { get; set; } [Commvault.Powershell.Runtime.Info( Required = false, ReadOnly = false, Description = @"", SerializedName = @"mappings", PossibleTypes = new [] { typeof(Commvault.Powershell.Models.ISnapshotCopyMapping) })] Commvault.Powershell.Models.ISnapshotCopyMapping[] Mappings { get; set; } /// <summary>New name for backup destination</summary> [Commvault.Powershell.Runtime.Info( Required = false, ReadOnly = false, Description = @"New name for backup destination", SerializedName = @"newName", PossibleTypes = new [] { typeof(string) })] string NewName { get; set; } /// <summary>Tells if this copy has data aging enabled</summary> [Commvault.Powershell.Runtime.Info( Required = false, ReadOnly = false, Description = @"Tells if this copy has data aging enabled", SerializedName = @"enableDataAging", PossibleTypes = new [] { typeof(bool) })] bool? RetentionRuleEnableDataAging { get; set; } /// <summary> /// Which type of backup type should be copied for the given backup destination when backup type is not all jobs. Default /// is LAST while adding new backup destination. /// </summary> [Commvault.Powershell.Runtime.Info( Required = false, ReadOnly = false, Description = @"Which type of backup type should be copied for the given backup destination when backup type is not all jobs. Default is LAST while adding new backup destination.", SerializedName = @"fullBackupTypesToBeRetained", PossibleTypes = new [] { typeof(string) })] string RetentionRuleFullBackupTypesToBeRetained { get; set; } /// <summary> /// Tells if this copy should use storage pool retention period days or the retention defined for this copy. Set as true to /// use retention defined on this copy. /// </summary> [Commvault.Powershell.Runtime.Info( Required = false, ReadOnly = false, Description = @"Tells if this copy should use storage pool retention period days or the retention defined for this copy. Set as true to use retention defined on this copy.", SerializedName = @"overrideRetentionSettings", PossibleTypes = new [] { typeof(bool) })] bool? RetentionRuleOverrideRetentionSettings { get; set; } /// <summary>Retention period in days</summary> [Commvault.Powershell.Runtime.Info( Required = false, ReadOnly = false, Description = @"Retention period in days", SerializedName = @"retentionPeriodDays", PossibleTypes = new [] { typeof(long) })] long? RetentionRuleRetentionPeriodDays { get; set; } /// <summary>Number of snap recovery points for snap copy for retention</summary> [Commvault.Powershell.Runtime.Info( Required = false, ReadOnly = false, Description = @"Number of snap recovery points for snap copy for retention", SerializedName = @"snapRecoveryPoints", PossibleTypes = new [] { typeof(long) })] long? RetentionRuleSnapRecoveryPoints { get; set; } /// <summary>Which type of retention rule should be used for the given backup destination</summary> [Commvault.Powershell.Runtime.Info( Required = false, ReadOnly = false, Description = @"Which type of retention rule should be used for the given backup destination", SerializedName = @"retentionRuleType", PossibleTypes = new [] { typeof(string) })] string RetentionRuleType { get; set; } /// <summary>Should extended retention rules be used</summary> [Commvault.Powershell.Runtime.Info( Required = false, ReadOnly = false, Description = @"Should extended retention rules be used", SerializedName = @"useExtendedRetentionRules", PossibleTypes = new [] { typeof(bool) })] bool? RetentionRuleUseExtendedRetentionRules { get; set; } /// <summary>If this is set as true, no need to specify retentionPeriodDays.</summary> [Commvault.Powershell.Runtime.Info( Required = false, ReadOnly = false, Description = @"If this is set as true, no need to specify retentionPeriodDays.", SerializedName = @"isInfiniteRetention", PossibleTypes = new [] { typeof(bool) })] bool? SecondExtendedRetentionRuleIsInfiniteRetention { get; set; } /// <summary>If this is set, no need to specify isInfiniteRetention as false.</summary> [Commvault.Powershell.Runtime.Info( Required = false, ReadOnly = false, Description = @"If this is set, no need to specify isInfiniteRetention as false.", SerializedName = @"retentionPeriodDays", PossibleTypes = new [] { typeof(long) })] long? SecondExtendedRetentionRuleRetentionPeriodDays { get; set; } /// <summary> /// All_JOBS means SYNCHRONOUS copy type, others are applicable for SELECTIVE copy Type only. /// </summary> [Commvault.Powershell.Runtime.Info( Required = false, ReadOnly = false, Description = @"All_JOBS means SYNCHRONOUS copy type, others are applicable for SELECTIVE copy Type only.", SerializedName = @"type", PossibleTypes = new [] { typeof(string) })] string SecondExtendedRetentionRuleType { get; set; } [Commvault.Powershell.Runtime.Info( Required = false, ReadOnly = false, Description = @"", SerializedName = @"id", PossibleTypes = new [] { typeof(long) })] long? SourceId { get; set; } [Commvault.Powershell.Runtime.Info( Required = false, ReadOnly = false, Description = @"", SerializedName = @"name", PossibleTypes = new [] { typeof(string) })] string SourceName { get; set; } /// <summary>If this is set as true, no need to specify retentionPeriodDays.</summary> [Commvault.Powershell.Runtime.Info( Required = false, ReadOnly = false, Description = @"If this is set as true, no need to specify retentionPeriodDays.", SerializedName = @"isInfiniteRetention", PossibleTypes = new [] { typeof(bool) })] bool? ThirdExtendedRetentionRuleIsInfiniteRetention { get; set; } /// <summary>If this is set, no need to specify isInfiniteRetention as false.</summary> [Commvault.Powershell.Runtime.Info( Required = false, ReadOnly = false, Description = @"If this is set, no need to specify isInfiniteRetention as false.", SerializedName = @"retentionPeriodDays", PossibleTypes = new [] { typeof(long) })] long? ThirdExtendedRetentionRuleRetentionPeriodDays { get; set; } /// <summary> /// All_JOBS means SYNCHRONOUS copy type, others are applicable for SELECTIVE copy Type only. /// </summary> [Commvault.Powershell.Runtime.Info( Required = false, ReadOnly = false, Description = @"All_JOBS means SYNCHRONOUS copy type, others are applicable for SELECTIVE copy Type only.", SerializedName = @"type", PossibleTypes = new [] { typeof(string) })] string ThirdExtendedRetentionRuleType { get; set; } } internal partial interface IUpdatePlanBackupDestinationDetailsInternal { Commvault.Powershell.Models.IPlanBackupDestinationBackupTypeInfo BackupType { get; set; } /// <summary> /// Tells what start date, backup types should be copied from. The date is provided in unix time format in number of seconds. /// -1 means initial backup date. /// </summary> long? BackupTypeBackupTypesCopiedFrom { get; set; } /// <summary> /// All_JOBS means SYNCHRONOUS copy type, others are applicable for SELECTIVE copy Type only. /// </summary> string BackupTypeBackupTypesToCopy { get; set; } /// <summary> /// Which type of backup type should be copied for the given backup destination when backup type is not all jobs. Default /// is LAST while adding new backup destination. /// </summary> string BackupTypeFullBackupTypesToCopy { get; set; } Commvault.Powershell.Models.IPlanRetentionRule ExtendedRetentionRuleFirstExtendedRetentionRule { get; set; } Commvault.Powershell.Models.IPlanRetentionRule ExtendedRetentionRuleSecondExtendedRetentionRule { get; set; } Commvault.Powershell.Models.IPlanRetentionRule ExtendedRetentionRuleThirdExtendedRetentionRule { get; set; } /// <summary>If this is set as true, no need to specify retentionPeriodDays.</summary> bool? FirstExtendedRetentionRuleIsInfiniteRetention { get; set; } /// <summary>If this is set, no need to specify isInfiniteRetention as false.</summary> long? FirstExtendedRetentionRuleRetentionPeriodDays { get; set; } /// <summary> /// All_JOBS means SYNCHRONOUS copy type, others are applicable for SELECTIVE copy Type only. /// </summary> string FirstExtendedRetentionRuleType { get; set; } Commvault.Powershell.Models.IPlanBackupDestinationGeneralInfoUpdate General { get; set; } /// <summary>Toggle to keep backup destination active</summary> bool? GeneralIsActive { get; set; } Commvault.Powershell.Models.IIdName GeneralSource { get; set; } Commvault.Powershell.Models.ISnapshotCopyMapping[] Mappings { get; set; } /// <summary>New name for backup destination</summary> string NewName { get; set; } /// <summary>Tells if this copy has data aging enabled</summary> bool? RetentionRuleEnableDataAging { get; set; } /// <summary> /// If you want to update, specify the whole object. Extended retention rules should be bigger than retention period. /// </summary> Commvault.Powershell.Models.IExtendedRetentionRules RetentionRuleExtendedRetentionRules { get; set; } /// <summary> /// Which type of backup type should be copied for the given backup destination when backup type is not all jobs. Default /// is LAST while adding new backup destination. /// </summary> string RetentionRuleFullBackupTypesToBeRetained { get; set; } /// <summary> /// Tells if this copy should use storage pool retention period days or the retention defined for this copy. Set as true to /// use retention defined on this copy. /// </summary> bool? RetentionRuleOverrideRetentionSettings { get; set; } /// <summary>Retention period in days</summary> long? RetentionRuleRetentionPeriodDays { get; set; } /// <summary>Number of snap recovery points for snap copy for retention</summary> long? RetentionRuleSnapRecoveryPoints { get; set; } /// <summary>Which type of retention rule should be used for the given backup destination</summary> string RetentionRuleType { get; set; } /// <summary>Should extended retention rules be used</summary> bool? RetentionRuleUseExtendedRetentionRules { get; set; } Commvault.Powershell.Models.IPlanBackupDestinationRetentionRuleInfo RetentionRules { get; set; } /// <summary>If this is set as true, no need to specify retentionPeriodDays.</summary> bool? SecondExtendedRetentionRuleIsInfiniteRetention { get; set; } /// <summary>If this is set, no need to specify isInfiniteRetention as false.</summary> long? SecondExtendedRetentionRuleRetentionPeriodDays { get; set; } /// <summary> /// All_JOBS means SYNCHRONOUS copy type, others are applicable for SELECTIVE copy Type only. /// </summary> string SecondExtendedRetentionRuleType { get; set; } long? SourceId { get; set; } string SourceName { get; set; } /// <summary>If this is set as true, no need to specify retentionPeriodDays.</summary> bool? ThirdExtendedRetentionRuleIsInfiniteRetention { get; set; } /// <summary>If this is set, no need to specify isInfiniteRetention as false.</summary> long? ThirdExtendedRetentionRuleRetentionPeriodDays { get; set; } /// <summary> /// All_JOBS means SYNCHRONOUS copy type, others are applicable for SELECTIVE copy Type only. /// </summary> string ThirdExtendedRetentionRuleType { get; set; } } } |