generated/api/Models/OverrideReplicationOptionsGcp.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>Extended instance configuration options</summary>
    public partial class OverrideReplicationOptionsGcp :
        Commvault.Powershell.Models.IOverrideReplicationOptionsGcp,
        Commvault.Powershell.Models.IOverrideReplicationOptionsGcpInternal
    {

        /// <summary>Internal Acessors for Network</summary>
        Commvault.Powershell.Models.INetwork Commvault.Powershell.Models.IOverrideReplicationOptionsGcpInternal.Network { get => (this._network = this._network ?? new Commvault.Powershell.Models.Network()); set { {_network = value;} } }

        /// <summary>Internal Acessors for Tags</summary>
        Commvault.Powershell.Models.INameValue Commvault.Powershell.Models.IOverrideReplicationOptionsGcpInternal.Tags { get => (this._tags = this._tags ?? new Commvault.Powershell.Models.NameValue()); set { {_tags = value;} } }

        /// <summary>Internal Acessors for VMNodeAffinity</summary>
        Commvault.Powershell.Models.INameValue Commvault.Powershell.Models.IOverrideReplicationOptionsGcpInternal.VMNodeAffinity { get => (this._vMNodeAffinity = this._vMNodeAffinity ?? new Commvault.Powershell.Models.NameValue()); set { {_vMNodeAffinity = value;} } }

        /// <summary>Backing field for <see cref="Network" /> property.</summary>
        private Commvault.Powershell.Models.INetwork _network;

        /// <summary>Network interface for the destination instances</summary>
        [Commvault.Powershell.Origin(Commvault.Powershell.PropertyOrigin.Owned)]
        internal Commvault.Powershell.Models.INetwork Network { get => (this._network = this._network ?? new Commvault.Powershell.Models.Network()); set => this._network = value; }

        /// <summary>Network display name</summary>
        [Commvault.Powershell.Origin(Commvault.Powershell.PropertyOrigin.Inlined)]
        public string NetworkDisplayName { get => ((Commvault.Powershell.Models.INetworkInternal)Network).NetworkDisplayName; set => ((Commvault.Powershell.Models.INetworkInternal)Network).NetworkDisplayName = value ?? null; }

        /// <summary>Name of network</summary>
        [Commvault.Powershell.Origin(Commvault.Powershell.PropertyOrigin.Inlined)]
        public string NetworkName { get => ((Commvault.Powershell.Models.INetworkInternal)Network).NetworkName; set => ((Commvault.Powershell.Models.INetworkInternal)Network).NetworkName = value ?? null; }

        /// <summary>subnet id of network</summary>
        [Commvault.Powershell.Origin(Commvault.Powershell.PropertyOrigin.Inlined)]
        public string NetworkSubnetId { get => ((Commvault.Powershell.Models.INetworkInternal)Network).SubnetId; set => ((Commvault.Powershell.Models.INetworkInternal)Network).SubnetId = value ?? null; }

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

        [Commvault.Powershell.Origin(Commvault.Powershell.PropertyOrigin.Inlined)]
        public string TagValue { get => ((Commvault.Powershell.Models.INameValueInternal)Tags).Value; set => ((Commvault.Powershell.Models.INameValueInternal)Tags).Value = value ?? null; }

        /// <summary>Backing field for <see cref="Tags" /> property.</summary>
        private Commvault.Powershell.Models.INameValue _tags;

        /// <summary>NameValue</summary>
        [Commvault.Powershell.Origin(Commvault.Powershell.PropertyOrigin.Owned)]
        internal Commvault.Powershell.Models.INameValue Tags { get => (this._tags = this._tags ?? new Commvault.Powershell.Models.NameValue()); set => this._tags = value; }

        /// <summary>Backing field for <see cref="VMNodeAffinity" /> property.</summary>
        private Commvault.Powershell.Models.INameValue _vMNodeAffinity;

        /// <summary>NameValue</summary>
        [Commvault.Powershell.Origin(Commvault.Powershell.PropertyOrigin.Owned)]
        internal Commvault.Powershell.Models.INameValue VMNodeAffinity { get => (this._vMNodeAffinity = this._vMNodeAffinity ?? new Commvault.Powershell.Models.NameValue()); set => this._vMNodeAffinity = value; }

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

        [Commvault.Powershell.Origin(Commvault.Powershell.PropertyOrigin.Inlined)]
        public string VMNodeAffinityValue { get => ((Commvault.Powershell.Models.INameValueInternal)VMNodeAffinity).Value; set => ((Commvault.Powershell.Models.INameValueInternal)VMNodeAffinity).Value = value ?? null; }

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

        }
    }
    /// Extended instance configuration options
    public partial interface IOverrideReplicationOptionsGcp :
        Commvault.Powershell.Runtime.IJsonSerializable
    {
        /// <summary>Network display name</summary>
        [Commvault.Powershell.Runtime.Info(
        Required = false,
        ReadOnly = false,
        Description = @"Network display name",
        SerializedName = @"networkDisplayName",
        PossibleTypes = new [] { typeof(string) })]
        string NetworkDisplayName { get; set; }
        /// <summary>Name of network</summary>
        [Commvault.Powershell.Runtime.Info(
        Required = false,
        ReadOnly = false,
        Description = @"Name of network",
        SerializedName = @"networkName",
        PossibleTypes = new [] { typeof(string) })]
        string NetworkName { get; set; }
        /// <summary>subnet id of network</summary>
        [Commvault.Powershell.Runtime.Info(
        Required = false,
        ReadOnly = false,
        Description = @"subnet id of network",
        SerializedName = @"subnetId",
        PossibleTypes = new [] { typeof(string) })]
        string NetworkSubnetId { get; set; }

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

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

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

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

    }
    /// Extended instance configuration options
    internal partial interface IOverrideReplicationOptionsGcpInternal

    {
        /// <summary>Network interface for the destination instances</summary>
        Commvault.Powershell.Models.INetwork Network { get; set; }
        /// <summary>Network display name</summary>
        string NetworkDisplayName { get; set; }
        /// <summary>Name of network</summary>
        string NetworkName { get; set; }
        /// <summary>subnet id of network</summary>
        string NetworkSubnetId { get; set; }

        string TagName { get; set; }

        string TagValue { get; set; }
        /// <summary>NameValue</summary>
        Commvault.Powershell.Models.INameValue Tags { get; set; }
        /// <summary>NameValue</summary>
        Commvault.Powershell.Models.INameValue VMNodeAffinity { get; set; }

        string VMNodeAffinityName { get; set; }

        string VMNodeAffinityValue { get; set; }

    }
}