/// <summary>
 /// Initializes a new instance of the <see cref="GetUniverseStationsStationIdOk" /> class.
 /// </summary>
 /// <param name="MaxDockableShipVolume">max_dockable_ship_volume number (required).</param>
 /// <param name="Name">name string (required).</param>
 /// <param name="OfficeRentalCost">office_rental_cost number (required).</param>
 /// <param name="Owner">ID of the corporation that controls this station.</param>
 /// <param name="Position">Position.</param>
 /// <param name="RaceId">race_id integer.</param>
 /// <param name="ReprocessingEfficiency">reprocessing_efficiency number (required).</param>
 /// <param name="ReprocessingStationsTake">reprocessing_stations_take number (required).</param>
 /// <param name="Services">services array (required).</param>
 /// <param name="StationId">station_id integer (required).</param>
 /// <param name="SystemId">The solar system this station is in (required).</param>
 /// <param name="TypeId">type_id integer (required).</param>
 public GetUniverseStationsStationIdOk(float?MaxDockableShipVolume = default(float?), string Name = default(string), float?OfficeRentalCost = default(float?), int?Owner = default(int?), GetUniverseStationsStationIdPosition Position = default(GetUniverseStationsStationIdPosition), int?RaceId = default(int?), float?ReprocessingEfficiency = default(float?), float?ReprocessingStationsTake = default(float?), List <ServicesEnum> Services = default(List <ServicesEnum>), int?StationId = default(int?), int?SystemId = default(int?), int?TypeId = default(int?))
 {
     // to ensure "MaxDockableShipVolume" is required (not null)
     if (MaxDockableShipVolume == null)
     {
         throw new InvalidDataException("MaxDockableShipVolume is a required property for GetUniverseStationsStationIdOk and cannot be null");
     }
     else
     {
         this.MaxDockableShipVolume = MaxDockableShipVolume;
     }
     // to ensure "Name" is required (not null)
     if (Name == null)
     {
         throw new InvalidDataException("Name is a required property for GetUniverseStationsStationIdOk and cannot be null");
     }
     else
     {
         this.Name = Name;
     }
     // to ensure "OfficeRentalCost" is required (not null)
     if (OfficeRentalCost == null)
     {
         throw new InvalidDataException("OfficeRentalCost is a required property for GetUniverseStationsStationIdOk and cannot be null");
     }
     else
     {
         this.OfficeRentalCost = OfficeRentalCost;
     }
     // to ensure "ReprocessingEfficiency" is required (not null)
     if (ReprocessingEfficiency == null)
     {
         throw new InvalidDataException("ReprocessingEfficiency is a required property for GetUniverseStationsStationIdOk and cannot be null");
     }
     else
     {
         this.ReprocessingEfficiency = ReprocessingEfficiency;
     }
     // to ensure "ReprocessingStationsTake" is required (not null)
     if (ReprocessingStationsTake == null)
     {
         throw new InvalidDataException("ReprocessingStationsTake is a required property for GetUniverseStationsStationIdOk and cannot be null");
     }
     else
     {
         this.ReprocessingStationsTake = ReprocessingStationsTake;
     }
     // to ensure "Services" is required (not null)
     if (Services == null)
     {
         throw new InvalidDataException("Services is a required property for GetUniverseStationsStationIdOk and cannot be null");
     }
     else
     {
         this.Services = Services;
     }
     // to ensure "StationId" is required (not null)
     if (StationId == null)
     {
         throw new InvalidDataException("StationId is a required property for GetUniverseStationsStationIdOk and cannot be null");
     }
     else
     {
         this.StationId = StationId;
     }
     // to ensure "SystemId" is required (not null)
     if (SystemId == null)
     {
         throw new InvalidDataException("SystemId is a required property for GetUniverseStationsStationIdOk and cannot be null");
     }
     else
     {
         this.SystemId = SystemId;
     }
     // to ensure "TypeId" is required (not null)
     if (TypeId == null)
     {
         throw new InvalidDataException("TypeId is a required property for GetUniverseStationsStationIdOk and cannot be null");
     }
     else
     {
         this.TypeId = TypeId;
     }
     this.Owner    = Owner;
     this.Position = Position;
     this.RaceId   = RaceId;
 }
 /// <summary>
 /// Initializes a new instance of the <see cref="GetUniverseStationsStationIdOk" /> class.
 /// </summary>
 /// <param name="stationId">station_id integer (required).</param>
 /// <param name="name">name string (required).</param>
 /// <param name="owner">ID of the corporation that controls this station.</param>
 /// <param name="typeId">type_id integer (required).</param>
 /// <param name="raceId">race_id integer.</param>
 /// <param name="position">position (required).</param>
 /// <param name="systemId">The solar system this station is in (required).</param>
 /// <param name="reprocessingEfficiency">reprocessing_efficiency number (required).</param>
 /// <param name="reprocessingStationsTake">reprocessing_stations_take number (required).</param>
 /// <param name="maxDockableShipVolume">max_dockable_ship_volume number (required).</param>
 /// <param name="officeRentalCost">office_rental_cost number (required).</param>
 /// <param name="services">services array (required).</param>
 public GetUniverseStationsStationIdOk(int?stationId = default(int?), string name = default(string), int?owner = default(int?), int?typeId = default(int?), int?raceId = default(int?), GetUniverseStationsStationIdPosition position = default(GetUniverseStationsStationIdPosition), int?systemId = default(int?), float?reprocessingEfficiency = default(float?), float?reprocessingStationsTake = default(float?), float?maxDockableShipVolume = default(float?), float?officeRentalCost = default(float?), List <ServicesEnum> services = default(List <ServicesEnum>))
 {
     // to ensure "stationId" is required (not null)
     if (stationId == null)
     {
         throw new InvalidDataException("stationId is a required property for GetUniverseStationsStationIdOk and cannot be null");
     }
     else
     {
         this.StationId = stationId;
     }
     // to ensure "name" is required (not null)
     if (name == null)
     {
         throw new InvalidDataException("name is a required property for GetUniverseStationsStationIdOk and cannot be null");
     }
     else
     {
         this.Name = name;
     }
     // to ensure "typeId" is required (not null)
     if (typeId == null)
     {
         throw new InvalidDataException("typeId is a required property for GetUniverseStationsStationIdOk and cannot be null");
     }
     else
     {
         this.TypeId = typeId;
     }
     // to ensure "position" is required (not null)
     if (position == null)
     {
         throw new InvalidDataException("position is a required property for GetUniverseStationsStationIdOk and cannot be null");
     }
     else
     {
         this.Position = position;
     }
     // to ensure "systemId" is required (not null)
     if (systemId == null)
     {
         throw new InvalidDataException("systemId is a required property for GetUniverseStationsStationIdOk and cannot be null");
     }
     else
     {
         this.SystemId = systemId;
     }
     // to ensure "reprocessingEfficiency" is required (not null)
     if (reprocessingEfficiency == null)
     {
         throw new InvalidDataException("reprocessingEfficiency is a required property for GetUniverseStationsStationIdOk and cannot be null");
     }
     else
     {
         this.ReprocessingEfficiency = reprocessingEfficiency;
     }
     // to ensure "reprocessingStationsTake" is required (not null)
     if (reprocessingStationsTake == null)
     {
         throw new InvalidDataException("reprocessingStationsTake is a required property for GetUniverseStationsStationIdOk and cannot be null");
     }
     else
     {
         this.ReprocessingStationsTake = reprocessingStationsTake;
     }
     // to ensure "maxDockableShipVolume" is required (not null)
     if (maxDockableShipVolume == null)
     {
         throw new InvalidDataException("maxDockableShipVolume is a required property for GetUniverseStationsStationIdOk and cannot be null");
     }
     else
     {
         this.MaxDockableShipVolume = maxDockableShipVolume;
     }
     // to ensure "officeRentalCost" is required (not null)
     if (officeRentalCost == null)
     {
         throw new InvalidDataException("officeRentalCost is a required property for GetUniverseStationsStationIdOk and cannot be null");
     }
     else
     {
         this.OfficeRentalCost = officeRentalCost;
     }
     // to ensure "services" is required (not null)
     if (services == null)
     {
         throw new InvalidDataException("services is a required property for GetUniverseStationsStationIdOk and cannot be null");
     }
     else
     {
         this.Services = services;
     }
     this.Owner  = owner;
     this.RaceId = raceId;
 }