generated/api/Models/ArchivePlanInheritSettings.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;

    /// <summary>ArchivePlanInheritSettings</summary>
    public partial class ArchivePlanInheritSettings :
        Commvault.Powershell.Models.IArchivePlanInheritSettings,
        Commvault.Powershell.Models.IArchivePlanInheritSettingsInternal
    {

        /// <summary>Flag telling if this setting is currently being overriden</summary>
        [Commvault.Powershell.Origin(Commvault.Powershell.PropertyOrigin.Inlined)]
        public bool? ArchivingRuleOverridden { get => ((Commvault.Powershell.Models.IPlanOverridenOptionsInternal)ArchivingRules).Overridden; set => ((Commvault.Powershell.Models.IPlanOverridenOptionsInternal)ArchivingRules).Overridden = value ?? default(bool); }

        [Commvault.Powershell.Origin(Commvault.Powershell.PropertyOrigin.Inlined)]
        public string ArchivingRuleOverrideBase { get => ((Commvault.Powershell.Models.IPlanOverridenOptionsInternal)ArchivingRules).OverrideBase; set => ((Commvault.Powershell.Models.IPlanOverridenOptionsInternal)ArchivingRules).OverrideBase = value ?? null; }

        /// <summary>Backing field for <see cref="ArchivingRules" /> property.</summary>
        private Commvault.Powershell.Models.IPlanOverridenOptions _archivingRules;

        /// <summary>PlanOverridenOptions</summary>
        [Commvault.Powershell.Origin(Commvault.Powershell.PropertyOrigin.Owned)]
        internal Commvault.Powershell.Models.IPlanOverridenOptions ArchivingRules { get => (this._archivingRules = this._archivingRules ?? new Commvault.Powershell.Models.PlanOverridenOptions()); set => this._archivingRules = value; }

        /// <summary>Backing field for <see cref="BasePlan" /> property.</summary>
        private Commvault.Powershell.Models.IIdName _basePlan;

        [Commvault.Powershell.Origin(Commvault.Powershell.PropertyOrigin.Owned)]
        internal Commvault.Powershell.Models.IIdName BasePlan { get => (this._basePlan = this._basePlan ?? new Commvault.Powershell.Models.IdName()); set => this._basePlan = value; }

        [Commvault.Powershell.Origin(Commvault.Powershell.PropertyOrigin.Inlined)]
        public long? BasePlanId { get => ((Commvault.Powershell.Models.IIdNameInternal)BasePlan).Id; set => ((Commvault.Powershell.Models.IIdNameInternal)BasePlan).Id = value ?? default(long); }

        [Commvault.Powershell.Origin(Commvault.Powershell.PropertyOrigin.Inlined)]
        public string BasePlanName { get => ((Commvault.Powershell.Models.IIdNameInternal)BasePlan).Name; set => ((Commvault.Powershell.Models.IIdNameInternal)BasePlan).Name = value ?? null; }

        /// <summary>Internal Acessors for ArchivingRules</summary>
        Commvault.Powershell.Models.IPlanOverridenOptions Commvault.Powershell.Models.IArchivePlanInheritSettingsInternal.ArchivingRules { get => (this._archivingRules = this._archivingRules ?? new Commvault.Powershell.Models.PlanOverridenOptions()); set { {_archivingRules = value;} } }

        /// <summary>Internal Acessors for BasePlan</summary>
        Commvault.Powershell.Models.IIdName Commvault.Powershell.Models.IArchivePlanInheritSettingsInternal.BasePlan { get => (this._basePlan = this._basePlan ?? new Commvault.Powershell.Models.IdName()); set { {_basePlan = value;} } }

        /// <summary>Internal Acessors for Rpo</summary>
        Commvault.Powershell.Models.IPlanOverridenOptions Commvault.Powershell.Models.IArchivePlanInheritSettingsInternal.Rpo { get => (this._rpo = this._rpo ?? new Commvault.Powershell.Models.PlanOverridenOptions()); set { {_rpo = value;} } }

        /// <summary>Internal Acessors for StoragePool</summary>
        Commvault.Powershell.Models.IPlanOverridenOptions Commvault.Powershell.Models.IArchivePlanInheritSettingsInternal.StoragePool { get => (this._storagePool = this._storagePool ?? new Commvault.Powershell.Models.PlanOverridenOptions()); set { {_storagePool = value;} } }

        /// <summary>Backing field for <see cref="Rpo" /> property.</summary>
        private Commvault.Powershell.Models.IPlanOverridenOptions _rpo;

        /// <summary>PlanOverridenOptions</summary>
        [Commvault.Powershell.Origin(Commvault.Powershell.PropertyOrigin.Owned)]
        internal Commvault.Powershell.Models.IPlanOverridenOptions Rpo { get => (this._rpo = this._rpo ?? new Commvault.Powershell.Models.PlanOverridenOptions()); set => this._rpo = value; }

        /// <summary>Flag telling if this setting is currently being overriden</summary>
        [Commvault.Powershell.Origin(Commvault.Powershell.PropertyOrigin.Inlined)]
        public bool? RpoOverridden { get => ((Commvault.Powershell.Models.IPlanOverridenOptionsInternal)Rpo).Overridden; set => ((Commvault.Powershell.Models.IPlanOverridenOptionsInternal)Rpo).Overridden = value ?? default(bool); }

        [Commvault.Powershell.Origin(Commvault.Powershell.PropertyOrigin.Inlined)]
        public string RpoOverrideBase { get => ((Commvault.Powershell.Models.IPlanOverridenOptionsInternal)Rpo).OverrideBase; set => ((Commvault.Powershell.Models.IPlanOverridenOptionsInternal)Rpo).OverrideBase = value ?? null; }

        /// <summary>Backing field for <see cref="StoragePool" /> property.</summary>
        private Commvault.Powershell.Models.IPlanOverridenOptions _storagePool;

        /// <summary>PlanOverridenOptions</summary>
        [Commvault.Powershell.Origin(Commvault.Powershell.PropertyOrigin.Owned)]
        internal Commvault.Powershell.Models.IPlanOverridenOptions StoragePool { get => (this._storagePool = this._storagePool ?? new Commvault.Powershell.Models.PlanOverridenOptions()); set => this._storagePool = value; }

        /// <summary>Flag telling if this setting is currently being overriden</summary>
        [Commvault.Powershell.Origin(Commvault.Powershell.PropertyOrigin.Inlined)]
        public bool? StoragePoolOverridden { get => ((Commvault.Powershell.Models.IPlanOverridenOptionsInternal)StoragePool).Overridden; set => ((Commvault.Powershell.Models.IPlanOverridenOptionsInternal)StoragePool).Overridden = value ?? default(bool); }

        [Commvault.Powershell.Origin(Commvault.Powershell.PropertyOrigin.Inlined)]
        public string StoragePoolOverrideBase { get => ((Commvault.Powershell.Models.IPlanOverridenOptionsInternal)StoragePool).OverrideBase; set => ((Commvault.Powershell.Models.IPlanOverridenOptionsInternal)StoragePool).OverrideBase = value ?? null; }

        /// <summary>Creates an new <see cref="ArchivePlanInheritSettings" /> instance.</summary>
        public ArchivePlanInheritSettings()
        {

        }
    }
    /// ArchivePlanInheritSettings
    public partial interface IArchivePlanInheritSettings :
        Commvault.Powershell.Runtime.IJsonSerializable
    {
        /// <summary>Flag telling if this setting is currently being overriden</summary>
        [Commvault.Powershell.Runtime.Info(
        Required = false,
        ReadOnly = false,
        Description = @"Flag telling if this setting is currently being overriden",
        SerializedName = @"overridden",
        PossibleTypes = new [] { typeof(bool) })]
        bool? ArchivingRuleOverridden { get; set; }

        [Commvault.Powershell.Runtime.Info(
        Required = false,
        ReadOnly = false,
        Description = @"",
        SerializedName = @"overrideBase",
        PossibleTypes = new [] { typeof(string) })]
        string ArchivingRuleOverrideBase { get; set; }

        [Commvault.Powershell.Runtime.Info(
        Required = false,
        ReadOnly = false,
        Description = @"",
        SerializedName = @"id",
        PossibleTypes = new [] { typeof(long) })]
        long? BasePlanId { get; set; }

        [Commvault.Powershell.Runtime.Info(
        Required = false,
        ReadOnly = false,
        Description = @"",
        SerializedName = @"name",
        PossibleTypes = new [] { typeof(string) })]
        string BasePlanName { get; set; }
        /// <summary>Flag telling if this setting is currently being overriden</summary>
        [Commvault.Powershell.Runtime.Info(
        Required = false,
        ReadOnly = false,
        Description = @"Flag telling if this setting is currently being overriden",
        SerializedName = @"overridden",
        PossibleTypes = new [] { typeof(bool) })]
        bool? RpoOverridden { get; set; }

        [Commvault.Powershell.Runtime.Info(
        Required = false,
        ReadOnly = false,
        Description = @"",
        SerializedName = @"overrideBase",
        PossibleTypes = new [] { typeof(string) })]
        string RpoOverrideBase { get; set; }
        /// <summary>Flag telling if this setting is currently being overriden</summary>
        [Commvault.Powershell.Runtime.Info(
        Required = false,
        ReadOnly = false,
        Description = @"Flag telling if this setting is currently being overriden",
        SerializedName = @"overridden",
        PossibleTypes = new [] { typeof(bool) })]
        bool? StoragePoolOverridden { get; set; }

        [Commvault.Powershell.Runtime.Info(
        Required = false,
        ReadOnly = false,
        Description = @"",
        SerializedName = @"overrideBase",
        PossibleTypes = new [] { typeof(string) })]
        string StoragePoolOverrideBase { get; set; }

    }
    /// ArchivePlanInheritSettings
    internal partial interface IArchivePlanInheritSettingsInternal

    {
        /// <summary>Flag telling if this setting is currently being overriden</summary>
        bool? ArchivingRuleOverridden { get; set; }

        string ArchivingRuleOverrideBase { get; set; }
        /// <summary>PlanOverridenOptions</summary>
        Commvault.Powershell.Models.IPlanOverridenOptions ArchivingRules { get; set; }

        Commvault.Powershell.Models.IIdName BasePlan { get; set; }

        long? BasePlanId { get; set; }

        string BasePlanName { get; set; }
        /// <summary>PlanOverridenOptions</summary>
        Commvault.Powershell.Models.IPlanOverridenOptions Rpo { get; set; }
        /// <summary>Flag telling if this setting is currently being overriden</summary>
        bool? RpoOverridden { get; set; }

        string RpoOverrideBase { get; set; }
        /// <summary>PlanOverridenOptions</summary>
        Commvault.Powershell.Models.IPlanOverridenOptions StoragePool { get; set; }
        /// <summary>Flag telling if this setting is currently being overriden</summary>
        bool? StoragePoolOverridden { get; set; }

        string StoragePoolOverrideBase { get; set; }

    }
}