generated/api/Models/KubernetesAppGroupAppAndNamespaceItem.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>Kubernetes Application Group Namespace and App Item</summary>
    public partial class KubernetesAppGroupAppAndNamespaceItem :
        Commvault.Powershell.Models.IKubernetesAppGroupAppAndNamespaceItem,
        Commvault.Powershell.Models.IKubernetesAppGroupAppAndNamespaceItemInternal
    {

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

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

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

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

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

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

        /// <summary>Internal Acessors for TimeRange</summary>
        Commvault.Powershell.Models.ITimeRange Commvault.Powershell.Models.IKubernetesAppGroupAppAndNamespaceItemInternal.TimeRange { get => (this._timeRange = this._timeRange ?? new Commvault.Powershell.Models.TimeRange()); set { {_timeRange = value;} } }

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

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

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

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

        /// <summary>Backing field for <see cref="InPlace" /> property.</summary>
        private bool? _inPlace;

        /// <summary>Run In-Place restore job</summary>
        [Commvault.Powershell.Origin(Commvault.Powershell.PropertyOrigin.Owned)]
        public bool? InPlace { get => this._inPlace; set => this._inPlace = value; }

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

        /// <summary>Specify list of resource modifier YAML as a string</summary>
        [Commvault.Powershell.Origin(Commvault.Powershell.PropertyOrigin.Owned)]
        public string Modifier { get => this._modifier; set => this._modifier = value; }

        /// <summary>Backing field for <see cref="Overwrite" /> property.</summary>
        private bool? _overwrite;

        /// <summary>Overwrite if already present</summary>
        [Commvault.Powershell.Origin(Commvault.Powershell.PropertyOrigin.Owned)]
        public bool? Overwrite { get => this._overwrite; set => this._overwrite = value; }

        /// <summary>Backing field for <see cref="TimeRange" /> property.</summary>
        private Commvault.Powershell.Models.ITimeRange _timeRange;

        /// <summary>
        /// Time range is for time related token rule values to specify from and to time in unix timestamp format.
        /// </summary>
        [Commvault.Powershell.Origin(Commvault.Powershell.PropertyOrigin.Owned)]
        internal Commvault.Powershell.Models.ITimeRange TimeRange { get => (this._timeRange = this._timeRange ?? new Commvault.Powershell.Models.TimeRange()); set => this._timeRange = value; }

        /// <summary>From time value in unix timestamp format</summary>
        [Commvault.Powershell.Origin(Commvault.Powershell.PropertyOrigin.Inlined)]
        public string TimeRangeFromTime { get => ((Commvault.Powershell.Models.ITimeRangeInternal)TimeRange).FromTime; set => ((Commvault.Powershell.Models.ITimeRangeInternal)TimeRange).FromTime = value ?? null; }

        /// <summary>To time value in unix timestamp format</summary>
        [Commvault.Powershell.Origin(Commvault.Powershell.PropertyOrigin.Inlined)]
        public string TimeRangeToTime { get => ((Commvault.Powershell.Models.ITimeRangeInternal)TimeRange).ToTime; set => ((Commvault.Powershell.Models.ITimeRangeInternal)TimeRange).ToTime = value ?? null; }

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

        }
    }
    /// Kubernetes Application Group Namespace and App Item
    public partial interface IKubernetesAppGroupAppAndNamespaceItem :
        Commvault.Powershell.Runtime.IJsonSerializable
    {
        [Commvault.Powershell.Runtime.Info(
        Required = false,
        ReadOnly = false,
        Read = true,
        Create = true,
        Update = true,
        Description = @"",
        SerializedName = @"id",
        PossibleTypes = new [] { typeof(long) })]
        long? AccessNodeId { get; set; }

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

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

        [Commvault.Powershell.Runtime.Info(
        Required = false,
        ReadOnly = false,
        Read = true,
        Create = true,
        Update = true,
        Description = @"",
        SerializedName = @"name",
        PossibleTypes = new [] { typeof(string) })]
        string DestinationClusterName { get; set; }
        /// <summary>Run In-Place restore job</summary>
        [Commvault.Powershell.Runtime.Info(
        Required = false,
        ReadOnly = false,
        Read = true,
        Create = true,
        Update = true,
        Description = @"Run In-Place restore job",
        SerializedName = @"inPlace",
        PossibleTypes = new [] { typeof(bool) })]
        bool? InPlace { get; set; }
        /// <summary>Specify list of resource modifier YAML as a string</summary>
        [Commvault.Powershell.Runtime.Info(
        Required = false,
        ReadOnly = false,
        Read = true,
        Create = true,
        Update = true,
        Description = @"Specify list of resource modifier YAML as a string",
        SerializedName = @"modifier",
        PossibleTypes = new [] { typeof(string) })]
        string Modifier { get; set; }
        /// <summary>Overwrite if already present</summary>
        [Commvault.Powershell.Runtime.Info(
        Required = false,
        ReadOnly = false,
        Read = true,
        Create = true,
        Update = true,
        Description = @"Overwrite if already present",
        SerializedName = @"overwrite",
        PossibleTypes = new [] { typeof(bool) })]
        bool? Overwrite { get; set; }
        /// <summary>From time value in unix timestamp format</summary>
        [Commvault.Powershell.Runtime.Info(
        Required = false,
        ReadOnly = false,
        Read = true,
        Create = true,
        Update = true,
        Description = @"From time value in unix timestamp format",
        SerializedName = @"fromTime",
        PossibleTypes = new [] { typeof(string) })]
        string TimeRangeFromTime { get; set; }
        /// <summary>To time value in unix timestamp format</summary>
        [Commvault.Powershell.Runtime.Info(
        Required = false,
        ReadOnly = false,
        Read = true,
        Create = true,
        Update = true,
        Description = @"To time value in unix timestamp format",
        SerializedName = @"toTime",
        PossibleTypes = new [] { typeof(string) })]
        string TimeRangeToTime { get; set; }

    }
    /// Kubernetes Application Group Namespace and App Item
    internal partial interface IKubernetesAppGroupAppAndNamespaceItemInternal

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

        long? AccessNodeId { get; set; }

        string AccessNodeName { get; set; }

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

        long? DestinationClusterId { get; set; }

        string DestinationClusterName { get; set; }
        /// <summary>Run In-Place restore job</summary>
        bool? InPlace { get; set; }
        /// <summary>Specify list of resource modifier YAML as a string</summary>
        string Modifier { get; set; }
        /// <summary>Overwrite if already present</summary>
        bool? Overwrite { get; set; }
        /// <summary>
        /// Time range is for time related token rule values to specify from and to time in unix timestamp format.
        /// </summary>
        Commvault.Powershell.Models.ITimeRange TimeRange { get; set; }
        /// <summary>From time value in unix timestamp format</summary>
        string TimeRangeFromTime { get; set; }
        /// <summary>To time value in unix timestamp format</summary>
        string TimeRangeToTime { get; set; }

    }
}