generated/api/Models/HypervisorSettings.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>hypervisorSettings</summary>
    public partial class HypervisorSettings :
        Commvault.Powershell.Models.IHypervisorSettings,
        Commvault.Powershell.Models.IHypervisorSettingsInternal
    {

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

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

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

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

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

        /// <summary>Internal Acessors for CustomAttributes</summary>
        Commvault.Powershell.Models.IHypervisorCustomAttribute Commvault.Powershell.Models.IHypervisorSettingsInternal.CustomAttributes { get => (this._customAttributes = this._customAttributes ?? new Commvault.Powershell.Models.HypervisorCustomAttribute()); set { {_customAttributes = value;} } }

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

        /// <summary>Internal Acessors for MetricsMonitoringPolicy</summary>
        Commvault.Powershell.Models.IHypervisorMonitoringPolicy Commvault.Powershell.Models.IHypervisorSettingsInternal.MetricsMonitoringPolicy { get => (this._metricsMonitoringPolicy = this._metricsMonitoringPolicy ?? new Commvault.Powershell.Models.HypervisorMonitoringPolicy()); set { {_metricsMonitoringPolicy = value;} } }

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

        /// <summary>Internal Acessors for RegionInfo</summary>
        Commvault.Powershell.Models.IRegionInfo Commvault.Powershell.Models.IHypervisorSettingsInternal.RegionInfo { get => (this._regionInfo = this._regionInfo ?? new Commvault.Powershell.Models.RegionInfo()); set { {_regionInfo = value;} } }

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

        /// <summary>client custom attribute type . Ex- 3 - For client 8- For clientGroup</summary>
        [Commvault.Powershell.Origin(Commvault.Powershell.PropertyOrigin.Inlined)]
        public long? CustomAttributeType { get => ((Commvault.Powershell.Models.IHypervisorCustomAttributeInternal)CustomAttributes).Type; set => ((Commvault.Powershell.Models.IHypervisorCustomAttributeInternal)CustomAttributes).Type = value ?? default(long); }

        /// <summary>client/Client Group custom attribute value</summary>
        [Commvault.Powershell.Origin(Commvault.Powershell.PropertyOrigin.Inlined)]
        public string CustomAttributeValue { get => ((Commvault.Powershell.Models.IHypervisorCustomAttributeInternal)CustomAttributes).Value; set => ((Commvault.Powershell.Models.IHypervisorCustomAttributeInternal)CustomAttributes).Value = value ?? null; }

        /// <summary>Backing field for <see cref="CustomAttributes" /> property.</summary>
        private Commvault.Powershell.Models.IHypervisorCustomAttribute _customAttributes;

        [Commvault.Powershell.Origin(Commvault.Powershell.PropertyOrigin.Owned)]
        internal Commvault.Powershell.Models.IHypervisorCustomAttribute CustomAttributes { get => (this._customAttributes = this._customAttributes ?? new Commvault.Powershell.Models.HypervisorCustomAttribute()); set => this._customAttributes = value; }

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

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

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

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

        /// <summary>Metrics Moitoring PolicyId</summary>
        [Commvault.Powershell.Origin(Commvault.Powershell.PropertyOrigin.Inlined)]
        public long? MetricMonitoringPolicyId { get => ((Commvault.Powershell.Models.IHypervisorMonitoringPolicyInternal)MetricsMonitoringPolicy).Id; set => ((Commvault.Powershell.Models.IHypervisorMonitoringPolicyInternal)MetricsMonitoringPolicy).Id = value ?? default(long); }

        /// <summary>True if Metrics Monioring policy is enabled</summary>
        [Commvault.Powershell.Origin(Commvault.Powershell.PropertyOrigin.Inlined)]
        public bool? MetricMonitoringPolicyIsEnabled { get => ((Commvault.Powershell.Models.IHypervisorMonitoringPolicyInternal)MetricsMonitoringPolicy).IsEnabled; set => ((Commvault.Powershell.Models.IHypervisorMonitoringPolicyInternal)MetricsMonitoringPolicy).IsEnabled = value ?? default(bool); }

        /// <summary>Metrics Moitoring Policy Name</summary>
        [Commvault.Powershell.Origin(Commvault.Powershell.PropertyOrigin.Inlined)]
        public string MetricMonitoringPolicyName { get => ((Commvault.Powershell.Models.IHypervisorMonitoringPolicyInternal)MetricsMonitoringPolicy).Name; set => ((Commvault.Powershell.Models.IHypervisorMonitoringPolicyInternal)MetricsMonitoringPolicy).Name = value ?? null; }

        /// <summary>Backing field for <see cref="MetricsMonitoringPolicy" /> property.</summary>
        private Commvault.Powershell.Models.IHypervisorMonitoringPolicy _metricsMonitoringPolicy;

        [Commvault.Powershell.Origin(Commvault.Powershell.PropertyOrigin.Owned)]
        internal Commvault.Powershell.Models.IHypervisorMonitoringPolicy MetricsMonitoringPolicy { get => (this._metricsMonitoringPolicy = this._metricsMonitoringPolicy ?? new Commvault.Powershell.Models.HypervisorMonitoringPolicy()); set => this._metricsMonitoringPolicy = value; }

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

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

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

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

        /// <summary>Backing field for <see cref="RegionInfo" /> property.</summary>
        private Commvault.Powershell.Models.IRegionInfo _regionInfo;

        /// <summary>RegionInfo</summary>
        [Commvault.Powershell.Origin(Commvault.Powershell.PropertyOrigin.Owned)]
        internal Commvault.Powershell.Models.IRegionInfo RegionInfo { get => (this._regionInfo = this._regionInfo ?? new Commvault.Powershell.Models.RegionInfo()); set => this._regionInfo = value; }

        /// <summary>Display Name of Region</summary>
        [Commvault.Powershell.Origin(Commvault.Powershell.PropertyOrigin.Inlined)]
        public string RegionInfoDisplayName { get => ((Commvault.Powershell.Models.IRegionInfoInternal)RegionInfo).DisplayName; set => ((Commvault.Powershell.Models.IRegionInfoInternal)RegionInfo).DisplayName = value ?? null; }

        /// <summary>Region Id</summary>
        [Commvault.Powershell.Origin(Commvault.Powershell.PropertyOrigin.Inlined)]
        public long? RegionInfoId { get => ((Commvault.Powershell.Models.IRegionInfoInternal)RegionInfo).Id; set => ((Commvault.Powershell.Models.IRegionInfoInternal)RegionInfo).Id = value ?? default(long); }

        /// <summary>Geolocation Latitude</summary>
        [Commvault.Powershell.Origin(Commvault.Powershell.PropertyOrigin.Inlined)]
        public string RegionInfoLatitude { get => ((Commvault.Powershell.Models.IRegionInfoInternal)RegionInfo).Latitude; set => ((Commvault.Powershell.Models.IRegionInfoInternal)RegionInfo).Latitude = value ?? null; }

        /// <summary>Geolocation Longitude</summary>
        [Commvault.Powershell.Origin(Commvault.Powershell.PropertyOrigin.Inlined)]
        public string RegionInfoLongitude { get => ((Commvault.Powershell.Models.IRegionInfoInternal)RegionInfo).Longitude; set => ((Commvault.Powershell.Models.IRegionInfoInternal)RegionInfo).Longitude = value ?? null; }

        /// <summary>Region Name</summary>
        [Commvault.Powershell.Origin(Commvault.Powershell.PropertyOrigin.Inlined)]
        public string RegionInfoName { get => ((Commvault.Powershell.Models.IRegionInfoInternal)RegionInfo).Name; set => ((Commvault.Powershell.Models.IRegionInfoInternal)RegionInfo).Name = value ?? null; }

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

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

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

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

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

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

        [Commvault.Powershell.Runtime.Info(
        Required = false,
        ReadOnly = false,
        Description = @"",
        SerializedName = @"name",
        PossibleTypes = new [] { typeof(string) })]
        string ApplicationCredentialsName { get; set; }
        /// <summary>client custom attribute type . Ex- 3 - For client 8- For clientGroup</summary>
        [Commvault.Powershell.Runtime.Info(
        Required = false,
        ReadOnly = false,
        Description = @"client custom attribute type . Ex- 3 - For client 8- For clientGroup",
        SerializedName = @"type",
        PossibleTypes = new [] { typeof(long) })]
        long? CustomAttributeType { get; set; }
        /// <summary>client/Client Group custom attribute value</summary>
        [Commvault.Powershell.Runtime.Info(
        Required = false,
        ReadOnly = false,
        Description = @"client/Client Group custom attribute value",
        SerializedName = @"value",
        PossibleTypes = new [] { typeof(string) })]
        string CustomAttributeValue { get; set; }

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

        [Commvault.Powershell.Runtime.Info(
        Required = false,
        ReadOnly = false,
        Description = @"",
        SerializedName = @"name",
        PossibleTypes = new [] { typeof(string) })]
        string GuestCredentialsName { get; set; }
        /// <summary>Metrics Moitoring PolicyId</summary>
        [Commvault.Powershell.Runtime.Info(
        Required = false,
        ReadOnly = false,
        Description = @"Metrics Moitoring PolicyId",
        SerializedName = @"id",
        PossibleTypes = new [] { typeof(long) })]
        long? MetricMonitoringPolicyId { get; set; }
        /// <summary>True if Metrics Monioring policy is enabled</summary>
        [Commvault.Powershell.Runtime.Info(
        Required = false,
        ReadOnly = false,
        Description = @"True if Metrics Monioring policy is enabled",
        SerializedName = @"isEnabled",
        PossibleTypes = new [] { typeof(bool) })]
        bool? MetricMonitoringPolicyIsEnabled { get; set; }
        /// <summary>Metrics Moitoring Policy Name</summary>
        [Commvault.Powershell.Runtime.Info(
        Required = false,
        ReadOnly = false,
        Description = @"Metrics Moitoring Policy Name",
        SerializedName = @"name",
        PossibleTypes = new [] { typeof(string) })]
        string MetricMonitoringPolicyName { get; set; }

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

        [Commvault.Powershell.Runtime.Info(
        Required = false,
        ReadOnly = false,
        Description = @"",
        SerializedName = @"name",
        PossibleTypes = new [] { typeof(string) })]
        string MountAccessNodeName { get; set; }
        /// <summary>Display Name of Region</summary>
        [Commvault.Powershell.Runtime.Info(
        Required = false,
        ReadOnly = false,
        Description = @"Display Name of Region",
        SerializedName = @"displayName",
        PossibleTypes = new [] { typeof(string) })]
        string RegionInfoDisplayName { get; set; }
        /// <summary>Region Id</summary>
        [Commvault.Powershell.Runtime.Info(
        Required = false,
        ReadOnly = false,
        Description = @"Region Id",
        SerializedName = @"id",
        PossibleTypes = new [] { typeof(long) })]
        long? RegionInfoId { get; set; }
        /// <summary>Geolocation Latitude</summary>
        [Commvault.Powershell.Runtime.Info(
        Required = false,
        ReadOnly = false,
        Description = @"Geolocation Latitude",
        SerializedName = @"latitude",
        PossibleTypes = new [] { typeof(string) })]
        string RegionInfoLatitude { get; set; }
        /// <summary>Geolocation Longitude</summary>
        [Commvault.Powershell.Runtime.Info(
        Required = false,
        ReadOnly = false,
        Description = @"Geolocation Longitude",
        SerializedName = @"longitude",
        PossibleTypes = new [] { typeof(string) })]
        string RegionInfoLongitude { get; set; }
        /// <summary>Region Name</summary>
        [Commvault.Powershell.Runtime.Info(
        Required = false,
        ReadOnly = false,
        Description = @"Region Name",
        SerializedName = @"name",
        PossibleTypes = new [] { typeof(string) })]
        string RegionInfoName { get; set; }

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

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

    }
    /// hypervisorSettings
    internal partial interface IHypervisorSettingsInternal

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

        long? ApplicationCredentialsId { get; set; }

        string ApplicationCredentialsName { get; set; }
        /// <summary>client custom attribute type . Ex- 3 - For client 8- For clientGroup</summary>
        long? CustomAttributeType { get; set; }
        /// <summary>client/Client Group custom attribute value</summary>
        string CustomAttributeValue { get; set; }

        Commvault.Powershell.Models.IHypervisorCustomAttribute CustomAttributes { get; set; }

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

        long? GuestCredentialsId { get; set; }

        string GuestCredentialsName { get; set; }
        /// <summary>Metrics Moitoring PolicyId</summary>
        long? MetricMonitoringPolicyId { get; set; }
        /// <summary>True if Metrics Monioring policy is enabled</summary>
        bool? MetricMonitoringPolicyIsEnabled { get; set; }
        /// <summary>Metrics Moitoring Policy Name</summary>
        string MetricMonitoringPolicyName { get; set; }

        Commvault.Powershell.Models.IHypervisorMonitoringPolicy MetricsMonitoringPolicy { get; set; }

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

        long? MountAccessNodeId { get; set; }

        string MountAccessNodeName { get; set; }
        /// <summary>RegionInfo</summary>
        Commvault.Powershell.Models.IRegionInfo RegionInfo { get; set; }
        /// <summary>Display Name of Region</summary>
        string RegionInfoDisplayName { get; set; }
        /// <summary>Region Id</summary>
        long? RegionInfoId { get; set; }
        /// <summary>Geolocation Latitude</summary>
        string RegionInfoLatitude { get; set; }
        /// <summary>Geolocation Longitude</summary>
        string RegionInfoLongitude { get; set; }
        /// <summary>Region Name</summary>
        string RegionInfoName { get; set; }

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

        long? TimeZoneId { get; set; }

        string TimeZoneName { get; set; }

    }
}