generated/api/Models/VMGroupCommonProperties.cs

// Code generated by Microsoft (R) AutoRest Code Generator (autorest: 3.8.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 VMGroupCommonProperties :
        Commvault.Powershell.Models.IVMGroupCommonProperties,
        Commvault.Powershell.Models.IVMGroupCommonPropertiesInternal
    {

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

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

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

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

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

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

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

        /// <summary>Internal Acessors for IndexingInfo</summary>
        Commvault.Powershell.Models.IIndexingInfo Commvault.Powershell.Models.IVMGroupCommonPropertiesInternal.IndexingInfo { get => (this._indexingInfo = this._indexingInfo ?? new Commvault.Powershell.Models.IndexingInfo()); set { {_indexingInfo = value;} } }

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

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

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

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

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

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

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

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

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

        /// <summary>Backing field for <see cref="HypervisorType" /> property.</summary>
        private string _hypervisorType;

        [Commvault.Powershell.Origin(Commvault.Powershell.PropertyOrigin.Owned)]
        public string HypervisorType { get => this._hypervisorType; set => this._hypervisorType = value; }

        /// <summary>Backing field for <see cref="IndexingInfo" /> property.</summary>
        private Commvault.Powershell.Models.IIndexingInfo _indexingInfo;

        /// <summary>indexingInfo</summary>
        [Commvault.Powershell.Origin(Commvault.Powershell.PropertyOrigin.Owned)]
        internal Commvault.Powershell.Models.IIndexingInfo IndexingInfo { get => (this._indexingInfo = this._indexingInfo ?? new Commvault.Powershell.Models.IndexingInfo()); set => this._indexingInfo = value; }

        /// <summary>Indexing Message</summary>
        [Commvault.Powershell.Origin(Commvault.Powershell.PropertyOrigin.Inlined)]
        public string IndexingInfoMessage { get => ((Commvault.Powershell.Models.IIndexingInfoInternal)IndexingInfo).Message; set => ((Commvault.Powershell.Models.IIndexingInfoInternal)IndexingInfo).Message = value ?? null; }

        /// <summary>Type of indexing status.</summary>
        [Commvault.Powershell.Origin(Commvault.Powershell.PropertyOrigin.Inlined)]
        public string IndexingInfoStatus { get => ((Commvault.Powershell.Models.IIndexingInfoInternal)IndexingInfo).Status; set => ((Commvault.Powershell.Models.IIndexingInfoInternal)IndexingInfo).Status = value ?? null; }

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

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

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

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

        /// <summary>Backing field for <see cref="IsDeletedHypervisor" /> property.</summary>
        private bool? _isDeletedHypervisor;

        /// <summary>True if the hypervisor is deleted</summary>
        [Commvault.Powershell.Origin(Commvault.Powershell.PropertyOrigin.Owned)]
        public bool? IsDeletedHypervisor { get => this._isDeletedHypervisor; set => this._isDeletedHypervisor = value; }

        /// <summary>Backing field for <see cref="IsEtcdSubclient" /> property.</summary>
        private bool? _isEtcdSubclient;

        /// <summary>True if this is a ETCD Subclient</summary>
        [Commvault.Powershell.Origin(Commvault.Powershell.PropertyOrigin.Owned)]
        public bool? IsEtcdSubclient { get => this._isEtcdSubclient; set => this._isEtcdSubclient = value; }

        /// <summary>Backing field for <see cref="IsHypervisorDeconfigured" /> property.</summary>
        private bool? _isHypervisorDeconfigured;

        /// <summary>true if the hypervisor has been deconfigured</summary>
        [Commvault.Powershell.Origin(Commvault.Powershell.PropertyOrigin.Owned)]
        public bool? IsHypervisorDeconfigured { get => this._isHypervisorDeconfigured; set => this._isHypervisorDeconfigured = value; }

        /// <summary>Backing field for <see cref="IsIndexingV2" /> property.</summary>
        private bool? _isIndexingV2;

        /// <summary>True if Indexing version is 2</summary>
        [Commvault.Powershell.Origin(Commvault.Powershell.PropertyOrigin.Owned)]
        public bool? IsIndexingV2 { get => this._isIndexingV2; set => this._isIndexingV2 = value; }

        /// <summary>Backing field for <see cref="ShowFullBackupLevel" /> property.</summary>
        private bool? _showFullBackupLevel;

        /// <summary>True if we need to show full backup level</summary>
        [Commvault.Powershell.Origin(Commvault.Powershell.PropertyOrigin.Owned)]
        public bool? ShowFullBackupLevel { get => this._showFullBackupLevel; set => this._showFullBackupLevel = value; }

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

        }
    }
    public partial interface IVMGroupCommonProperties :
        Commvault.Powershell.Runtime.IJsonSerializable
    {
        [Commvault.Powershell.Runtime.Info(
        Required = false,
        ReadOnly = false,
        Description = @"",
        SerializedName = @"id",
        PossibleTypes = new [] { typeof(long) })]
        long? BackupsetId { get; set; }

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

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

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

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

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

        [Commvault.Powershell.Runtime.Info(
        Required = false,
        ReadOnly = false,
        Description = @"",
        SerializedName = @"hypervisorType",
        PossibleTypes = new [] { typeof(string) })]
        string HypervisorType { get; set; }
        /// <summary>Indexing Message</summary>
        [Commvault.Powershell.Runtime.Info(
        Required = false,
        ReadOnly = false,
        Description = @"Indexing Message",
        SerializedName = @"message",
        PossibleTypes = new [] { typeof(string) })]
        string IndexingInfoMessage { get; set; }
        /// <summary>Type of indexing status.</summary>
        [Commvault.Powershell.Runtime.Info(
        Required = false,
        ReadOnly = false,
        Description = @"Type of indexing status.",
        SerializedName = @"status",
        PossibleTypes = new [] { typeof(string) })]
        string IndexingInfoStatus { get; set; }

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

        [Commvault.Powershell.Runtime.Info(
        Required = false,
        ReadOnly = false,
        Description = @"",
        SerializedName = @"name",
        PossibleTypes = new [] { typeof(string) })]
        string InstanceName { get; set; }
        /// <summary>True if the hypervisor is deleted</summary>
        [Commvault.Powershell.Runtime.Info(
        Required = false,
        ReadOnly = false,
        Description = @"True if the hypervisor is deleted",
        SerializedName = @"isDeletedHypervisor",
        PossibleTypes = new [] { typeof(bool) })]
        bool? IsDeletedHypervisor { get; set; }
        /// <summary>True if this is a ETCD Subclient</summary>
        [Commvault.Powershell.Runtime.Info(
        Required = false,
        ReadOnly = false,
        Description = @"True if this is a ETCD Subclient",
        SerializedName = @"isETCDSubclient",
        PossibleTypes = new [] { typeof(bool) })]
        bool? IsEtcdSubclient { get; set; }
        /// <summary>true if the hypervisor has been deconfigured</summary>
        [Commvault.Powershell.Runtime.Info(
        Required = false,
        ReadOnly = false,
        Description = @"true if the hypervisor has been deconfigured",
        SerializedName = @"isHypervisorDeconfigured",
        PossibleTypes = new [] { typeof(bool) })]
        bool? IsHypervisorDeconfigured { get; set; }
        /// <summary>True if Indexing version is 2</summary>
        [Commvault.Powershell.Runtime.Info(
        Required = false,
        ReadOnly = false,
        Description = @"True if Indexing version is 2",
        SerializedName = @"isIndexingV2",
        PossibleTypes = new [] { typeof(bool) })]
        bool? IsIndexingV2 { get; set; }
        /// <summary>True if we need to show full backup level</summary>
        [Commvault.Powershell.Runtime.Info(
        Required = false,
        ReadOnly = false,
        Description = @"True if we need to show full backup level",
        SerializedName = @"showFullBackupLevel",
        PossibleTypes = new [] { typeof(bool) })]
        bool? ShowFullBackupLevel { get; set; }

    }
    internal partial interface IVMGroupCommonPropertiesInternal

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

        long? BackupsetId { get; set; }

        string BackupsetName { get; set; }

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

        long? DataBackupStoragePolicyId { get; set; }

        string DataBackupStoragePolicyName { get; set; }

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

        long? HypervisorId { get; set; }

        string HypervisorName { get; set; }

        string HypervisorType { get; set; }
        /// <summary>indexingInfo</summary>
        Commvault.Powershell.Models.IIndexingInfo IndexingInfo { get; set; }
        /// <summary>Indexing Message</summary>
        string IndexingInfoMessage { get; set; }
        /// <summary>Type of indexing status.</summary>
        string IndexingInfoStatus { get; set; }

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

        long? InstanceId { get; set; }

        string InstanceName { get; set; }
        /// <summary>True if the hypervisor is deleted</summary>
        bool? IsDeletedHypervisor { get; set; }
        /// <summary>True if this is a ETCD Subclient</summary>
        bool? IsEtcdSubclient { get; set; }
        /// <summary>true if the hypervisor has been deconfigured</summary>
        bool? IsHypervisorDeconfigured { get; set; }
        /// <summary>True if Indexing version is 2</summary>
        bool? IsIndexingV2 { get; set; }
        /// <summary>True if we need to show full backup level</summary>
        bool? ShowFullBackupLevel { get; set; }

    }
}