generated/api/Models/CreateObjectStorePlan.cs
// Code generated by Microsoft (R) AutoRest Code Generator (autorest: 3.10.2, generator: @autorest/powershell@4.0.708) // 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 CreateObjectStorePlan : Commvault.Powershell.Models.ICreateObjectStorePlan, Commvault.Powershell.Models.ICreateObjectStorePlanInternal { /// <summary>Backing field for <see cref="BackupDestinations" /> property.</summary> private System.Collections.Generic.List<Commvault.Powershell.Models.IObjectStorePlanBackupDestination> _backupDestinations; /// <summary>Copy destinations for the plan. Specify where you want to store your data.</summary> [Commvault.Powershell.Origin(Commvault.Powershell.PropertyOrigin.Owned)] public System.Collections.Generic.List<Commvault.Powershell.Models.IObjectStorePlanBackupDestination> BackupDestinations { get => this._backupDestinations; set => this._backupDestinations = value; } /// <summary>Operation type for the list</summary> [Commvault.Powershell.Origin(Commvault.Powershell.PropertyOrigin.Inlined)] public string BackupFrequencyOperationType { get => ((Commvault.Powershell.Models.IObjectStoreBackupPlanRpoInternal)Rpo).BackupFrequencyOperationType; set => ((Commvault.Powershell.Models.IObjectStoreBackupPlanRpoInternal)Rpo).BackupFrequencyOperationType = value ?? null; } [Commvault.Powershell.Origin(Commvault.Powershell.PropertyOrigin.Inlined)] public System.Collections.Generic.List<Commvault.Powershell.Models.IObjectStorePlanSchedule> BackupFrequencySchedules { get => ((Commvault.Powershell.Models.IObjectStoreBackupPlanRpoInternal)Rpo).BackupFrequencySchedules; set => ((Commvault.Powershell.Models.IObjectStoreBackupPlanRpoInternal)Rpo).BackupFrequencySchedules = value ?? null /* arrayOf */; } /// <summary>Internal Acessors for Rpo</summary> Commvault.Powershell.Models.IObjectStoreBackupPlanRpo Commvault.Powershell.Models.ICreateObjectStorePlanInternal.Rpo { get => (this._rpo = this._rpo ?? new Commvault.Powershell.Models.ObjectStoreBackupPlanRpo()); set { {_rpo = value;} } } /// <summary>Internal Acessors for RpoBackupFrequency</summary> Commvault.Powershell.Models.IObjectStorePlanSchedules Commvault.Powershell.Models.ICreateObjectStorePlanInternal.RpoBackupFrequency { get => ((Commvault.Powershell.Models.IObjectStoreBackupPlanRpoInternal)Rpo).BackupFrequency; set => ((Commvault.Powershell.Models.IObjectStoreBackupPlanRpoInternal)Rpo).BackupFrequency = value; } /// <summary>Backing field for <see cref="PlanName" /> property.</summary> private string _planName; /// <summary>Name of the new plan</summary> [Commvault.Powershell.Origin(Commvault.Powershell.PropertyOrigin.Owned)] public string PlanName { get => this._planName; set => this._planName = value; } /// <summary>Backing field for <see cref="Rpo" /> property.</summary> private Commvault.Powershell.Models.IObjectStoreBackupPlanRpo _rpo; /// <summary> /// Recovery Point Objective (RPO) is the maximum amount of time that data can be lost during a service disruption. Your RPO /// determines the frequency of your backup jobs. /// </summary> [Commvault.Powershell.Origin(Commvault.Powershell.PropertyOrigin.Owned)] internal Commvault.Powershell.Models.IObjectStoreBackupPlanRpo Rpo { get => (this._rpo = this._rpo ?? new Commvault.Powershell.Models.ObjectStoreBackupPlanRpo()); set => this._rpo = value; } /// <summary>Backup window for full backup</summary> [Commvault.Powershell.Origin(Commvault.Powershell.PropertyOrigin.Inlined)] public System.Collections.Generic.List<Commvault.Powershell.Models.IDayAndTime> RpoFullBackupWindow { get => ((Commvault.Powershell.Models.IObjectStoreBackupPlanRpoInternal)Rpo).FullBackupWindow; set => ((Commvault.Powershell.Models.IObjectStoreBackupPlanRpoInternal)Rpo).FullBackupWindow = value ?? null /* arrayOf */; } /// <summary>Creates an new <see cref="CreateObjectStorePlan" /> instance.</summary> public CreateObjectStorePlan() { } } public partial interface ICreateObjectStorePlan : Commvault.Powershell.Runtime.IJsonSerializable { /// <summary>Copy destinations for the plan. Specify where you want to store your data.</summary> [Commvault.Powershell.Runtime.Info( Required = true, ReadOnly = false, Read = true, Create = true, Update = true, Description = @"Copy destinations for the plan. Specify where you want to store your data.", SerializedName = @"backupDestinations", PossibleTypes = new [] { typeof(Commvault.Powershell.Models.IObjectStorePlanBackupDestination) })] System.Collections.Generic.List<Commvault.Powershell.Models.IObjectStorePlanBackupDestination> BackupDestinations { get; set; } /// <summary>Operation type for the list</summary> [Commvault.Powershell.Runtime.Info( Required = false, ReadOnly = false, Read = true, Create = true, Update = true, Description = @"Operation type for the list", SerializedName = @"operationType", PossibleTypes = new [] { typeof(string) })] string BackupFrequencyOperationType { get; set; } [Commvault.Powershell.Runtime.Info( Required = false, ReadOnly = false, Read = true, Create = true, Update = true, Description = @"", SerializedName = @"schedules", PossibleTypes = new [] { typeof(Commvault.Powershell.Models.IObjectStorePlanSchedule) })] System.Collections.Generic.List<Commvault.Powershell.Models.IObjectStorePlanSchedule> BackupFrequencySchedules { get; set; } /// <summary>Name of the new plan</summary> [Commvault.Powershell.Runtime.Info( Required = true, ReadOnly = false, Read = true, Create = true, Update = true, Description = @"Name of the new plan", SerializedName = @"planName", PossibleTypes = new [] { typeof(string) })] string PlanName { get; set; } /// <summary>Backup window for full backup</summary> [Commvault.Powershell.Runtime.Info( Required = false, ReadOnly = false, Read = true, Create = true, Update = true, Description = @"Backup window for full backup", SerializedName = @"fullBackupWindow", PossibleTypes = new [] { typeof(Commvault.Powershell.Models.IDayAndTime) })] System.Collections.Generic.List<Commvault.Powershell.Models.IDayAndTime> RpoFullBackupWindow { get; set; } } internal partial interface ICreateObjectStorePlanInternal { /// <summary>Copy destinations for the plan. Specify where you want to store your data.</summary> System.Collections.Generic.List<Commvault.Powershell.Models.IObjectStorePlanBackupDestination> BackupDestinations { get; set; } /// <summary>Operation type for the list</summary> string BackupFrequencyOperationType { get; set; } System.Collections.Generic.List<Commvault.Powershell.Models.IObjectStorePlanSchedule> BackupFrequencySchedules { get; set; } /// <summary>Name of the new plan</summary> string PlanName { get; set; } /// <summary> /// Recovery Point Objective (RPO) is the maximum amount of time that data can be lost during a service disruption. Your RPO /// determines the frequency of your backup jobs. /// </summary> Commvault.Powershell.Models.IObjectStoreBackupPlanRpo Rpo { get; set; } /// <summary>PlanSchedules</summary> Commvault.Powershell.Models.IObjectStorePlanSchedules RpoBackupFrequency { get; set; } /// <summary>Backup window for full backup</summary> System.Collections.Generic.List<Commvault.Powershell.Models.IDayAndTime> RpoFullBackupWindow { get; set; } } } |