generated/api/Models/CreateKubernetesClusterRequest.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>Request definition for creating Kubernetes cluster</summary> public partial class CreateKubernetesClusterRequest : Commvault.Powershell.Models.ICreateKubernetesClusterRequest, Commvault.Powershell.Models.ICreateKubernetesClusterRequestInternal, Commvault.Powershell.Runtime.IValidates { /// <summary> /// Backing field for Inherited model <see cref= "Commvault.Powershell.Models.IKubernetesAccessNodes" /> /// </summary> private Commvault.Powershell.Models.IKubernetesAccessNodes __kubernetesAccessNodes = new Commvault.Powershell.Models.KubernetesAccessNodes(); /// <summary> /// Backing field for Inherited model <see cref= "Commvault.Powershell.Models.IKubernetesClusterCredentials" /> /// </summary> private Commvault.Powershell.Models.IKubernetesClusterCredentials __kubernetesClusterCredentials = new Commvault.Powershell.Models.KubernetesClusterCredentials(); [Commvault.Powershell.Origin(Commvault.Powershell.PropertyOrigin.Inherited)] public System.Collections.Generic.List<Commvault.Powershell.Models.IIdNameType> AccessNodes { get => ((Commvault.Powershell.Models.IKubernetesAccessNodesInternal)__kubernetesAccessNodes).AccessNodes; set => ((Commvault.Powershell.Models.IKubernetesAccessNodesInternal)__kubernetesAccessNodes).AccessNodes = value ?? null /* arrayOf */; } /// <summary>API Server Endpoint of the cluster</summary> [Commvault.Powershell.Origin(Commvault.Powershell.PropertyOrigin.Inherited)] public string ApiServer { get => ((Commvault.Powershell.Models.IKubernetesClusterCredentialsInternal)__kubernetesClusterCredentials).ApiServer; set => ((Commvault.Powershell.Models.IKubernetesClusterCredentialsInternal)__kubernetesClusterCredentials).ApiServer = value ?? null; } /// <summary>Internal Acessors for EtcdProtection</summary> Commvault.Powershell.Models.IEtcdProtectionItem Commvault.Powershell.Models.ICreateKubernetesClusterRequestInternal.EtcdProtection { get => (this._etcdProtection = this._etcdProtection ?? new Commvault.Powershell.Models.EtcdProtectionItem()); set { {_etcdProtection = value;} } } /// <summary>Internal Acessors for EtcdProtectionPlan</summary> Commvault.Powershell.Models.IIdName Commvault.Powershell.Models.ICreateKubernetesClusterRequestInternal.EtcdProtectionPlan { get => ((Commvault.Powershell.Models.IEtcdProtectionItemInternal)EtcdProtection).Plan; set => ((Commvault.Powershell.Models.IEtcdProtectionItemInternal)EtcdProtection).Plan = value; } /// <summary>Backing field for <see cref="EtcdProtection" /> property.</summary> private Commvault.Powershell.Models.IEtcdProtectionItem _etcdProtection; /// <summary>Enable ETCD Protection on the Kubernetes Cluster</summary> [Commvault.Powershell.Origin(Commvault.Powershell.PropertyOrigin.Owned)] internal Commvault.Powershell.Models.IEtcdProtectionItem EtcdProtection { get => (this._etcdProtection = this._etcdProtection ?? new Commvault.Powershell.Models.EtcdProtectionItem()); set => this._etcdProtection = value; } /// <summary>Denote if etcd protection is enabled</summary> [Commvault.Powershell.Origin(Commvault.Powershell.PropertyOrigin.Inlined)] public bool? EtcdProtectionEnabled { get => ((Commvault.Powershell.Models.IEtcdProtectionItemInternal)EtcdProtection).Enabled; set => ((Commvault.Powershell.Models.IEtcdProtectionItemInternal)EtcdProtection).Enabled = value ?? default(bool); } /// <summary>Backing field for <see cref="Name" /> property.</summary> private string _name; /// <summary>Name of the Kubernetes Cluster</summary> [Commvault.Powershell.Origin(Commvault.Powershell.PropertyOrigin.Owned)] public string Name { get => this._name; set => this._name = value; } [Commvault.Powershell.Origin(Commvault.Powershell.PropertyOrigin.Inlined)] public long? PlanId { get => ((Commvault.Powershell.Models.IEtcdProtectionItemInternal)EtcdProtection).PlanId; set => ((Commvault.Powershell.Models.IEtcdProtectionItemInternal)EtcdProtection).PlanId = value ?? default(long); } [Commvault.Powershell.Origin(Commvault.Powershell.PropertyOrigin.Inlined)] public string PlanName { get => ((Commvault.Powershell.Models.IEtcdProtectionItemInternal)EtcdProtection).PlanName; set => ((Commvault.Powershell.Models.IEtcdProtectionItemInternal)EtcdProtection).PlanName = value ?? null; } /// <summary>Name of the Service Account to authenticate with the cluster</summary> [Commvault.Powershell.Origin(Commvault.Powershell.PropertyOrigin.Inherited)] public string ServiceAccount { get => ((Commvault.Powershell.Models.IKubernetesClusterCredentialsInternal)__kubernetesClusterCredentials).ServiceAccount; set => ((Commvault.Powershell.Models.IKubernetesClusterCredentialsInternal)__kubernetesClusterCredentials).ServiceAccount = value ?? null; } /// <summary>Secret token to authenticate with the cluster</summary> [Commvault.Powershell.Origin(Commvault.Powershell.PropertyOrigin.Inherited)] public string ServiceToken { get => ((Commvault.Powershell.Models.IKubernetesClusterCredentialsInternal)__kubernetesClusterCredentials).ServiceToken; set => ((Commvault.Powershell.Models.IKubernetesClusterCredentialsInternal)__kubernetesClusterCredentials).ServiceToken = value ?? null; } /// <summary>Backing field for <see cref="ServiceType" /> property.</summary> private string _serviceType; /// <summary>The Service Type of the Kubernetes cluster</summary> [Commvault.Powershell.Origin(Commvault.Powershell.PropertyOrigin.Owned)] public string ServiceType { get => this._serviceType; set => this._serviceType = value; } /// <summary>Creates an new <see cref="CreateKubernetesClusterRequest" /> instance.</summary> public CreateKubernetesClusterRequest() { } /// <summary>Validates that this object meets the validation criteria.</summary> /// <param name="eventListener">an <see cref="Commvault.Powershell.Runtime.IEventListener" /> instance that will receive validation /// events.</param> /// <returns> /// A <see cref = "global::System.Threading.Tasks.Task" /> that will be complete when validation is completed. /// </returns> public async global::System.Threading.Tasks.Task Validate(Commvault.Powershell.Runtime.IEventListener eventListener) { await eventListener.AssertNotNull(nameof(__kubernetesClusterCredentials), __kubernetesClusterCredentials); await eventListener.AssertObjectIsValid(nameof(__kubernetesClusterCredentials), __kubernetesClusterCredentials); await eventListener.AssertNotNull(nameof(__kubernetesAccessNodes), __kubernetesAccessNodes); await eventListener.AssertObjectIsValid(nameof(__kubernetesAccessNodes), __kubernetesAccessNodes); } } /// Request definition for creating Kubernetes cluster public partial interface ICreateKubernetesClusterRequest : Commvault.Powershell.Runtime.IJsonSerializable, Commvault.Powershell.Models.IKubernetesClusterCredentials, Commvault.Powershell.Models.IKubernetesAccessNodes { /// <summary>Denote if etcd protection is enabled</summary> [Commvault.Powershell.Runtime.Info( Required = false, ReadOnly = false, Read = true, Create = true, Update = true, Description = @"Denote if etcd protection is enabled", SerializedName = @"enabled", PossibleTypes = new [] { typeof(bool) })] bool? EtcdProtectionEnabled { get; set; } /// <summary>Name of the Kubernetes Cluster</summary> [Commvault.Powershell.Runtime.Info( Required = true, ReadOnly = false, Read = true, Create = true, Update = true, Description = @"Name of the Kubernetes Cluster", SerializedName = @"name", PossibleTypes = new [] { typeof(string) })] string Name { get; set; } [Commvault.Powershell.Runtime.Info( Required = false, ReadOnly = false, Read = true, Create = true, Update = true, Description = @"", SerializedName = @"id", PossibleTypes = new [] { typeof(long) })] long? PlanId { get; set; } [Commvault.Powershell.Runtime.Info( Required = false, ReadOnly = false, Read = true, Create = true, Update = true, Description = @"", SerializedName = @"name", PossibleTypes = new [] { typeof(string) })] string PlanName { get; set; } /// <summary>The Service Type of the Kubernetes cluster</summary> [Commvault.Powershell.Runtime.Info( Required = false, ReadOnly = false, Read = true, Create = true, Update = true, Description = @"The Service Type of the Kubernetes cluster", SerializedName = @"serviceType", PossibleTypes = new [] { typeof(string) })] string ServiceType { get; set; } } /// Request definition for creating Kubernetes cluster internal partial interface ICreateKubernetesClusterRequestInternal : Commvault.Powershell.Models.IKubernetesClusterCredentialsInternal, Commvault.Powershell.Models.IKubernetesAccessNodesInternal { /// <summary>Enable ETCD Protection on the Kubernetes Cluster</summary> Commvault.Powershell.Models.IEtcdProtectionItem EtcdProtection { get; set; } /// <summary>Denote if etcd protection is enabled</summary> bool? EtcdProtectionEnabled { get; set; } Commvault.Powershell.Models.IIdName EtcdProtectionPlan { get; set; } /// <summary>Name of the Kubernetes Cluster</summary> string Name { get; set; } long? PlanId { get; set; } string PlanName { get; set; } /// <summary>The Service Type of the Kubernetes cluster</summary> string ServiceType { get; set; } } } |