generated/api/Models/LicenseUsageDetails.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>License usage information for a given license type</summary>
    public partial class LicenseUsageDetails :
        Commvault.Powershell.Models.ILicenseUsageDetails,
        Commvault.Powershell.Models.ILicenseUsageDetailsInternal
    {

        /// <summary>Internal Acessors for Error</summary>
        Commvault.Powershell.Models.IGenericResp Commvault.Powershell.Models.ILicenseUsageDetailsInternal.Error { get => (this._error = this._error ?? new Commvault.Powershell.Models.GenericResp()); set { {_error = value;} } }

        /// <summary>Backing field for <see cref="Error" /> property.</summary>
        private Commvault.Powershell.Models.IGenericResp _error;

        [Commvault.Powershell.Origin(Commvault.Powershell.PropertyOrigin.Owned)]
        internal Commvault.Powershell.Models.IGenericResp Error { get => (this._error = this._error ?? new Commvault.Powershell.Models.GenericResp()); set => this._error = value; }

        [Commvault.Powershell.Origin(Commvault.Powershell.PropertyOrigin.Inlined)]
        public long? ErrorCode { get => ((Commvault.Powershell.Models.IGenericRespInternal)Error).ErrorCode; set => ((Commvault.Powershell.Models.IGenericRespInternal)Error).ErrorCode = value ?? default(long); }

        [Commvault.Powershell.Origin(Commvault.Powershell.PropertyOrigin.Inlined)]
        public string ErrorMessage { get => ((Commvault.Powershell.Models.IGenericRespInternal)Error).ErrorMessage; set => ((Commvault.Powershell.Models.IGenericRespInternal)Error).ErrorMessage = value ?? null; }

        /// <summary>Backing field for <see cref="IssuedQuantity" /> property.</summary>
        private long? _issuedQuantity;

        /// <summary>The quantity issued in the license</summary>
        [Commvault.Powershell.Origin(Commvault.Powershell.PropertyOrigin.Owned)]
        public long? IssuedQuantity { get => this._issuedQuantity; set => this._issuedQuantity = value; }

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

        /// <summary>The name of the license</summary>
        [Commvault.Powershell.Origin(Commvault.Powershell.PropertyOrigin.Owned)]
        public string LicenseName { get => this._licenseName; set => this._licenseName = value; }

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

        /// <summary>The type of licenses supported for LicenseUsage API</summary>
        [Commvault.Powershell.Origin(Commvault.Powershell.PropertyOrigin.Owned)]
        public string LicenseType { get => this._licenseType; set => this._licenseType = value; }

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

        /// <summary>The state of a license supported for LicenseUsage API</summary>
        [Commvault.Powershell.Origin(Commvault.Powershell.PropertyOrigin.Owned)]
        public string LicenseUsageType { get => this._licenseUsageType; set => this._licenseUsageType = value; }

        /// <summary>Backing field for <see cref="UsedQuantity" /> property.</summary>
        private long? _usedQuantity;

        /// <summary>The quantity used in the license</summary>
        [Commvault.Powershell.Origin(Commvault.Powershell.PropertyOrigin.Owned)]
        public long? UsedQuantity { get => this._usedQuantity; set => this._usedQuantity = value; }

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

        }
    }
    /// License usage information for a given license type
    public partial interface ILicenseUsageDetails :
        Commvault.Powershell.Runtime.IJsonSerializable
    {
        [Commvault.Powershell.Runtime.Info(
        Required = false,
        ReadOnly = false,
        Read = true,
        Create = true,
        Update = true,
        Description = @"",
        SerializedName = @"errorCode",
        PossibleTypes = new [] { typeof(long) })]
        long? ErrorCode { get; set; }

        [Commvault.Powershell.Runtime.Info(
        Required = false,
        ReadOnly = false,
        Read = true,
        Create = true,
        Update = true,
        Description = @"",
        SerializedName = @"errorMessage",
        PossibleTypes = new [] { typeof(string) })]
        string ErrorMessage { get; set; }
        /// <summary>The quantity issued in the license</summary>
        [Commvault.Powershell.Runtime.Info(
        Required = false,
        ReadOnly = false,
        Read = true,
        Create = true,
        Update = true,
        Description = @"The quantity issued in the license",
        SerializedName = @"issuedQuantity",
        PossibleTypes = new [] { typeof(long) })]
        long? IssuedQuantity { get; set; }
        /// <summary>The name of the license</summary>
        [Commvault.Powershell.Runtime.Info(
        Required = false,
        ReadOnly = false,
        Read = true,
        Create = true,
        Update = true,
        Description = @"The name of the license",
        SerializedName = @"licenseName",
        PossibleTypes = new [] { typeof(string) })]
        string LicenseName { get; set; }
        /// <summary>The type of licenses supported for LicenseUsage API</summary>
        [Commvault.Powershell.Runtime.Info(
        Required = false,
        ReadOnly = false,
        Read = true,
        Create = true,
        Update = true,
        Description = @"The type of licenses supported for LicenseUsage API",
        SerializedName = @"licenseType",
        PossibleTypes = new [] { typeof(string) })]
        string LicenseType { get; set; }
        /// <summary>The state of a license supported for LicenseUsage API</summary>
        [Commvault.Powershell.Runtime.Info(
        Required = false,
        ReadOnly = false,
        Read = true,
        Create = true,
        Update = true,
        Description = @"The state of a license supported for LicenseUsage API",
        SerializedName = @"licenseUsageType",
        PossibleTypes = new [] { typeof(string) })]
        string LicenseUsageType { get; set; }
        /// <summary>The quantity used in the license</summary>
        [Commvault.Powershell.Runtime.Info(
        Required = false,
        ReadOnly = false,
        Read = true,
        Create = true,
        Update = true,
        Description = @"The quantity used in the license",
        SerializedName = @"usedQuantity",
        PossibleTypes = new [] { typeof(long) })]
        long? UsedQuantity { get; set; }

    }
    /// License usage information for a given license type
    internal partial interface ILicenseUsageDetailsInternal

    {
        Commvault.Powershell.Models.IGenericResp Error { get; set; }

        long? ErrorCode { get; set; }

        string ErrorMessage { get; set; }
        /// <summary>The quantity issued in the license</summary>
        long? IssuedQuantity { get; set; }
        /// <summary>The name of the license</summary>
        string LicenseName { get; set; }
        /// <summary>The type of licenses supported for LicenseUsage API</summary>
        string LicenseType { get; set; }
        /// <summary>The state of a license supported for LicenseUsage API</summary>
        string LicenseUsageType { get; set; }
        /// <summary>The quantity used in the license</summary>
        long? UsedQuantity { get; set; }

    }
}