using System;
using System.Collections.Generic;
using TINK.Model.Station.Operator;
namespace TINK.Model.Station
{
/// Holds station info.
public class Station : IStation
{
/// Constructs a station object.
/// Id of the station.
/// Group (TINK, Konrad) to which station is related.
/// GPS- position of the station.
/// Name of the station.
public Station(
string id,
IEnumerable group,
IPosition position,
string stationName = "",
Data operatorData = null)
{
Id = id;
Group = group ?? throw new ArgumentException("Can not construct station object. Group of stations must not be null.");
Position = position;
StationName = stationName ?? string.Empty;
OperatorData = operatorData ?? new Data();
}
/// Holds the unique id of the station.c
public string Id { get; }
/// Holds the group to which the station belongs.
public IEnumerable Group { get; }
/// Gets the name of the station.
public string StationName { get; }
/// Holds the gps- position of the station.
public IPosition Position { get; }
/// Holds operator related info.
public IData OperatorData { get; }
}
}