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

    /// <summary>HardwareConfiguration</summary>
    public partial class HardwareConfiguration :
        Commvault.Powershell.Models.IHardwareConfiguration,
        Commvault.Powershell.Models.IHardwareConfigurationInternal
    {

        /// <summary>Internal Acessors for SystemDiskConfiguration</summary>
        Commvault.Powershell.Models.IDiskConfiguration Commvault.Powershell.Models.IHardwareConfigurationInternal.SystemDiskConfiguration { get => (this._systemDiskConfiguration = this._systemDiskConfiguration ?? new Commvault.Powershell.Models.DiskConfiguration()); set { {_systemDiskConfiguration = value;} } }

        /// <summary>Backing field for <see cref="DataDiskConfiguration" /> property.</summary>
        private System.Collections.Generic.List<Commvault.Powershell.Models.IDiskConfiguration> _dataDiskConfiguration;

        [Commvault.Powershell.Origin(Commvault.Powershell.PropertyOrigin.Owned)]
        public System.Collections.Generic.List<Commvault.Powershell.Models.IDiskConfiguration> DataDiskConfiguration { get => this._dataDiskConfiguration; set => this._dataDiskConfiguration = value; }

        /// <summary>Backing field for <see cref="SystemDiskConfiguration" /> property.</summary>
        private Commvault.Powershell.Models.IDiskConfiguration _systemDiskConfiguration;

        /// <summary>DiskConfiguration</summary>
        [Commvault.Powershell.Origin(Commvault.Powershell.PropertyOrigin.Owned)]
        internal Commvault.Powershell.Models.IDiskConfiguration SystemDiskConfiguration { get => (this._systemDiskConfiguration = this._systemDiskConfiguration ?? new Commvault.Powershell.Models.DiskConfiguration()); set => this._systemDiskConfiguration = value; }

        /// <summary>Disk size in bytes</summary>
        [Commvault.Powershell.Origin(Commvault.Powershell.PropertyOrigin.Inlined)]
        public long? SystemDiskConfigurationDiskSize { get => ((Commvault.Powershell.Models.IDiskConfigurationInternal)SystemDiskConfiguration).DiskSize; set => ((Commvault.Powershell.Models.IDiskConfigurationInternal)SystemDiskConfiguration).DiskSize = value ?? default(long); }

        /// <summary>Type of disk controller</summary>
        [Commvault.Powershell.Origin(Commvault.Powershell.PropertyOrigin.Inlined)]
        public string SystemDiskConfigurationDiskType { get => ((Commvault.Powershell.Models.IDiskConfigurationInternal)SystemDiskConfiguration).DiskType; set => ((Commvault.Powershell.Models.IDiskConfigurationInternal)SystemDiskConfiguration).DiskType = value ?? null; }

        /// <summary>Name of the disk</summary>
        [Commvault.Powershell.Origin(Commvault.Powershell.PropertyOrigin.Inlined)]
        public string SystemDiskConfigurationName { get => ((Commvault.Powershell.Models.IDiskConfigurationInternal)SystemDiskConfiguration).Name; set => ((Commvault.Powershell.Models.IDiskConfigurationInternal)SystemDiskConfiguration).Name = value ?? null; }

        /// <summary>Disk provisioning type</summary>
        [Commvault.Powershell.Origin(Commvault.Powershell.PropertyOrigin.Inlined)]
        public string SystemDiskConfigurationProvisioningType { get => ((Commvault.Powershell.Models.IDiskConfigurationInternal)SystemDiskConfiguration).ProvisioningType; set => ((Commvault.Powershell.Models.IDiskConfigurationInternal)SystemDiskConfiguration).ProvisioningType = value ?? null; }

        /// <summary>Backing field for <see cref="VolumeConfiguration" /> property.</summary>
        private System.Collections.Generic.List<Commvault.Powershell.Models.IVolumeConfiguration> _volumeConfiguration;

        [Commvault.Powershell.Origin(Commvault.Powershell.PropertyOrigin.Owned)]
        public System.Collections.Generic.List<Commvault.Powershell.Models.IVolumeConfiguration> VolumeConfiguration { get => this._volumeConfiguration; set => this._volumeConfiguration = value; }

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

        }
    }
    /// HardwareConfiguration
    public partial interface IHardwareConfiguration :
        Commvault.Powershell.Runtime.IJsonSerializable
    {
        [Commvault.Powershell.Runtime.Info(
        Required = false,
        ReadOnly = false,
        Read = true,
        Create = true,
        Update = true,
        Description = @"",
        SerializedName = @"dataDiskConfiguration",
        PossibleTypes = new [] { typeof(Commvault.Powershell.Models.IDiskConfiguration) })]
        System.Collections.Generic.List<Commvault.Powershell.Models.IDiskConfiguration> DataDiskConfiguration { get; set; }
        /// <summary>Disk size in bytes</summary>
        [Commvault.Powershell.Runtime.Info(
        Required = false,
        ReadOnly = false,
        Read = true,
        Create = true,
        Update = true,
        Description = @"Disk size in bytes",
        SerializedName = @"diskSize",
        PossibleTypes = new [] { typeof(long) })]
        long? SystemDiskConfigurationDiskSize { get; set; }
        /// <summary>Type of disk controller</summary>
        [Commvault.Powershell.Runtime.Info(
        Required = false,
        ReadOnly = false,
        Read = true,
        Create = true,
        Update = true,
        Description = @"Type of disk controller",
        SerializedName = @"diskType",
        PossibleTypes = new [] { typeof(string) })]
        string SystemDiskConfigurationDiskType { get; set; }
        /// <summary>Name of the disk</summary>
        [Commvault.Powershell.Runtime.Info(
        Required = false,
        ReadOnly = false,
        Read = true,
        Create = true,
        Update = true,
        Description = @"Name of the disk",
        SerializedName = @"name",
        PossibleTypes = new [] { typeof(string) })]
        string SystemDiskConfigurationName { get; set; }
        /// <summary>Disk provisioning type</summary>
        [Commvault.Powershell.Runtime.Info(
        Required = false,
        ReadOnly = false,
        Read = true,
        Create = true,
        Update = true,
        Description = @"Disk provisioning type",
        SerializedName = @"provisioningType",
        PossibleTypes = new [] { typeof(string) })]
        string SystemDiskConfigurationProvisioningType { get; set; }

        [Commvault.Powershell.Runtime.Info(
        Required = false,
        ReadOnly = false,
        Read = true,
        Create = true,
        Update = true,
        Description = @"",
        SerializedName = @"volumeConfiguration",
        PossibleTypes = new [] { typeof(Commvault.Powershell.Models.IVolumeConfiguration) })]
        System.Collections.Generic.List<Commvault.Powershell.Models.IVolumeConfiguration> VolumeConfiguration { get; set; }

    }
    /// HardwareConfiguration
    internal partial interface IHardwareConfigurationInternal

    {
        System.Collections.Generic.List<Commvault.Powershell.Models.IDiskConfiguration> DataDiskConfiguration { get; set; }
        /// <summary>DiskConfiguration</summary>
        Commvault.Powershell.Models.IDiskConfiguration SystemDiskConfiguration { get; set; }
        /// <summary>Disk size in bytes</summary>
        long? SystemDiskConfigurationDiskSize { get; set; }
        /// <summary>Type of disk controller</summary>
        string SystemDiskConfigurationDiskType { get; set; }
        /// <summary>Name of the disk</summary>
        string SystemDiskConfigurationName { get; set; }
        /// <summary>Disk provisioning type</summary>
        string SystemDiskConfigurationProvisioningType { get; set; }

        System.Collections.Generic.List<Commvault.Powershell.Models.IVolumeConfiguration> VolumeConfiguration { get; set; }

    }
}