diff options
Diffstat (limited to 'src/Costasdev.Busurbano.Sources.TranviasCoruna')
3 files changed, 0 insertions, 93 deletions
diff --git a/src/Costasdev.Busurbano.Sources.TranviasCoruna/CorunaRealtimeEstimatesProvider.cs b/src/Costasdev.Busurbano.Sources.TranviasCoruna/CorunaRealtimeEstimatesProvider.cs deleted file mode 100644 index 4bc7ef1..0000000 --- a/src/Costasdev.Busurbano.Sources.TranviasCoruna/CorunaRealtimeEstimatesProvider.cs +++ /dev/null @@ -1,50 +0,0 @@ -using System.Net.Http.Json; - -namespace Costasdev.Busurbano.Sources.TranviasCoruna; - -public class CorunaRealtimeEstimatesProvider -{ - private HttpClient _http; - - public CorunaRealtimeEstimatesProvider(HttpClient http) - { - _http = http; - } - - public async Task<List<CorunaEstimate>> GetEstimatesForStop(int stopId) - { - var url = GetRequestUrl(stopId.ToString()); - - var response = await _http.GetAsync(url); - var queryitrResponse = await response.Content.ReadFromJsonAsync<QueryitrResponse>(); - - if (queryitrResponse is null) - { - var responseString = await response.Content.ReadAsStringAsync(); - throw new Exception("Error parsing queryitr_v3 response: " + responseString); - } - - return queryitrResponse.ArrivalInfo.Routes.SelectMany(r => - { - return r.Arrivals.Select(arrival => - { - var minutes = arrival.Minutes == "<1" ? 0 : int.Parse(arrival.Minutes); - - return new CorunaEstimate - ( - r.RouteId.ToString(), - minutes, - int.Parse(arrival.Metres), - arrival.VehicleNumber.ToString() - ); - }).ToList(); - }).OrderBy(a => a.Minutes).ToList(); - } - - private string GetRequestUrl(string stopId) - { - return $"https://itranvias.com/queryitr_v3.php?&func=0&dato={stopId}"; - } -} - -public record CorunaEstimate(string RouteId, int Minutes, int Metres, string VehicleNumber); diff --git a/src/Costasdev.Busurbano.Sources.TranviasCoruna/Costasdev.Busurbano.Sources.TranviasCoruna.csproj b/src/Costasdev.Busurbano.Sources.TranviasCoruna/Costasdev.Busurbano.Sources.TranviasCoruna.csproj deleted file mode 100644 index 237d661..0000000 --- a/src/Costasdev.Busurbano.Sources.TranviasCoruna/Costasdev.Busurbano.Sources.TranviasCoruna.csproj +++ /dev/null @@ -1,9 +0,0 @@ -<Project Sdk="Microsoft.NET.Sdk"> - - <PropertyGroup> - <TargetFramework>net10.0</TargetFramework> - <ImplicitUsings>enable</ImplicitUsings> - <Nullable>enable</Nullable> - </PropertyGroup> - -</Project> diff --git a/src/Costasdev.Busurbano.Sources.TranviasCoruna/Response.cs b/src/Costasdev.Busurbano.Sources.TranviasCoruna/Response.cs deleted file mode 100644 index fe2a6cf..0000000 --- a/src/Costasdev.Busurbano.Sources.TranviasCoruna/Response.cs +++ /dev/null @@ -1,34 +0,0 @@ -using System.Text.Json.Serialization; - -namespace Costasdev.Busurbano.Sources.TranviasCoruna; - -public class QueryitrResponse -{ - [JsonPropertyName("buses")] public ArrivalInfo ArrivalInfo { get; set; } -} - -public class ArrivalInfo -{ - [JsonPropertyName("parada")] - public int StopId { get; set; } - [JsonPropertyName("lineas")] - public Route[] Routes { get; set; } -} - -public class Route -{ - [JsonPropertyName("linea")] - public int RouteId { get; set; } - [JsonPropertyName("buses")] - public Arrival[] Arrivals { get; set; } -} - -public class Arrival -{ - [JsonPropertyName("bus")] - public int VehicleNumber { get; set; } - [JsonPropertyName("tiempo")] - public string Minutes { get; set; } - [JsonPropertyName("distancia")] - public string Metres { get; set; } -} |
