generated/api/Models/ClusterDetailsCommonProps.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>Describe the common properties of a Kubernetes cluster</summary>
    public partial class ClusterDetailsCommonProps :
        Commvault.Powershell.Models.IClusterDetailsCommonProps,
        Commvault.Powershell.Models.IClusterDetailsCommonPropsInternal
    {

        /// <summary>Backing field for <see cref="AssociatedUserGroups" /> property.</summary>
        private System.Collections.Generic.List<Commvault.Powershell.Models.IIdName> _associatedUserGroups;

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

        /// <summary>Internal Acessors for Security</summary>
        Commvault.Powershell.Models.IClusterDetailsCommonClientSecurity Commvault.Powershell.Models.IClusterDetailsCommonPropsInternal.Security { get => (this._security = this._security ?? new Commvault.Powershell.Models.ClusterDetailsCommonClientSecurity()); set { {_security = value;} } }

        /// <summary>Backing field for <see cref="Security" /> property.</summary>
        private Commvault.Powershell.Models.IClusterDetailsCommonClientSecurity _security;

        /// <summary>Describe the client security details of a Kubernetes cluster</summary>
        [Commvault.Powershell.Origin(Commvault.Powershell.PropertyOrigin.Owned)]
        internal Commvault.Powershell.Models.IClusterDetailsCommonClientSecurity Security { get => (this._security = this._security ?? new Commvault.Powershell.Models.ClusterDetailsCommonClientSecurity()); set => this._security = value; }

        /// <summary>List of owners associated to the cluster</summary>
        [Commvault.Powershell.Origin(Commvault.Powershell.PropertyOrigin.Inlined)]
        public System.Collections.Generic.List<string> SecurityOwners { get => ((Commvault.Powershell.Models.IClusterDetailsCommonClientSecurityInternal)Security).Owners; set => ((Commvault.Powershell.Models.IClusterDetailsCommonClientSecurityInternal)Security).Owners = value ?? null /* arrayOf */; }

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

        }
    }
    /// Describe the common properties of a Kubernetes cluster
    public partial interface IClusterDetailsCommonProps :
        Commvault.Powershell.Runtime.IJsonSerializable
    {
        [Commvault.Powershell.Runtime.Info(
        Required = false,
        ReadOnly = false,
        Read = true,
        Create = true,
        Update = true,
        Description = @"",
        SerializedName = @"associatedUserGroups",
        PossibleTypes = new [] { typeof(Commvault.Powershell.Models.IIdName) })]
        System.Collections.Generic.List<Commvault.Powershell.Models.IIdName> AssociatedUserGroups { get; set; }
        /// <summary>List of owners associated to the cluster</summary>
        [Commvault.Powershell.Runtime.Info(
        Required = false,
        ReadOnly = false,
        Read = true,
        Create = true,
        Update = true,
        Description = @"List of owners associated to the cluster",
        SerializedName = @"owners",
        PossibleTypes = new [] { typeof(string) })]
        System.Collections.Generic.List<string> SecurityOwners { get; set; }

    }
    /// Describe the common properties of a Kubernetes cluster
    internal partial interface IClusterDetailsCommonPropsInternal

    {
        System.Collections.Generic.List<Commvault.Powershell.Models.IIdName> AssociatedUserGroups { get; set; }
        /// <summary>Describe the client security details of a Kubernetes cluster</summary>
        Commvault.Powershell.Models.IClusterDetailsCommonClientSecurity Security { get; set; }
        /// <summary>List of owners associated to the cluster</summary>
        System.Collections.Generic.List<string> SecurityOwners { get; set; }

    }
}