generated/api/Models/LocationDetailsWithZone.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>Details of a location with Zone</summary>
    public partial class LocationDetailsWithZone :
        Commvault.Powershell.Models.ILocationDetailsWithZone,
        Commvault.Powershell.Models.ILocationDetailsWithZoneInternal
    {

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

        /// <summary>Name of city for the location</summary>
        [Commvault.Powershell.Origin(Commvault.Powershell.PropertyOrigin.Owned)]
        public string City { get => this._city; set => this._city = value; }

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

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

        /// <summary>Name of continent for the location</summary>
        [Commvault.Powershell.Origin(Commvault.Powershell.PropertyOrigin.Owned)]
        public string Continent { get => this._continent; set => this._continent = value; }

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

        /// <summary>Name of country for the location</summary>
        [Commvault.Powershell.Origin(Commvault.Powershell.PropertyOrigin.Owned)]
        public string Country { get => this._country; set => this._country = value; }

        /// <summary>Backing field for <see cref="Latitude" /> property.</summary>
        private double _latitude;

        /// <summary>Latitude for the location</summary>
        [Commvault.Powershell.Origin(Commvault.Powershell.PropertyOrigin.Owned)]
        public double Latitude { get => this._latitude; set => this._latitude = value; }

        /// <summary>Backing field for <see cref="Longitude" /> property.</summary>
        private double _longitude;

        /// <summary>Longitude for the location</summary>
        [Commvault.Powershell.Origin(Commvault.Powershell.PropertyOrigin.Owned)]
        public double Longitude { get => this._longitude; set => this._longitude = value; }

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

        /// <summary>Name of state for the location</summary>
        [Commvault.Powershell.Origin(Commvault.Powershell.PropertyOrigin.Owned)]
        public string State { get => this._state; set => this._state = value; }

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

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

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

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

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

        }
    }
    /// Details of a location with Zone
    public partial interface ILocationDetailsWithZone :
        Commvault.Powershell.Runtime.IJsonSerializable
    {
        /// <summary>Name of city for the location</summary>
        [Commvault.Powershell.Runtime.Info(
        Required = false,
        ReadOnly = false,
        Description = @"Name of city for the location",
        SerializedName = @"city",
        PossibleTypes = new [] { typeof(string) })]
        string City { get; set; }
        /// <summary>Name of continent for the location</summary>
        [Commvault.Powershell.Runtime.Info(
        Required = false,
        ReadOnly = false,
        Description = @"Name of continent for the location",
        SerializedName = @"continent",
        PossibleTypes = new [] { typeof(string) })]
        string Continent { get; set; }
        /// <summary>Name of country for the location</summary>
        [Commvault.Powershell.Runtime.Info(
        Required = true,
        ReadOnly = false,
        Description = @"Name of country for the location",
        SerializedName = @"country",
        PossibleTypes = new [] { typeof(string) })]
        string Country { get; set; }
        /// <summary>Latitude for the location</summary>
        [Commvault.Powershell.Runtime.Info(
        Required = true,
        ReadOnly = false,
        Description = @"Latitude for the location",
        SerializedName = @"latitude",
        PossibleTypes = new [] { typeof(double) })]
        double Latitude { get; set; }
        /// <summary>Longitude for the location</summary>
        [Commvault.Powershell.Runtime.Info(
        Required = true,
        ReadOnly = false,
        Description = @"Longitude for the location",
        SerializedName = @"longitude",
        PossibleTypes = new [] { typeof(double) })]
        double Longitude { get; set; }
        /// <summary>Name of state for the location</summary>
        [Commvault.Powershell.Runtime.Info(
        Required = false,
        ReadOnly = false,
        Description = @"Name of state for the location",
        SerializedName = @"state",
        PossibleTypes = new [] { typeof(string) })]
        string State { get; set; }

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

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

    }
    /// Details of a location with Zone
    internal partial interface ILocationDetailsWithZoneInternal

    {
        /// <summary>Name of city for the location</summary>
        string City { get; set; }
        /// <summary>Name of continent for the location</summary>
        string Continent { get; set; }
        /// <summary>Name of country for the location</summary>
        string Country { get; set; }
        /// <summary>Latitude for the location</summary>
        double Latitude { get; set; }
        /// <summary>Longitude for the location</summary>
        double Longitude { get; set; }
        /// <summary>Name of state for the location</summary>
        string State { get; set; }

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

        long? ZoneId { get; set; }

        string ZoneName { get; set; }

    }
}