aboutsummaryrefslogtreecommitdiff
path: root/Backend/GetStopList.cs
diff options
context:
space:
mode:
Diffstat (limited to 'Backend/GetStopList.cs')
-rw-r--r--Backend/GetStopList.cs31
1 files changed, 31 insertions, 0 deletions
diff --git a/Backend/GetStopList.cs b/Backend/GetStopList.cs
new file mode 100644
index 0000000..e3a1894
--- /dev/null
+++ b/Backend/GetStopList.cs
@@ -0,0 +1,31 @@
+using Microsoft.Azure.Functions.Worker;
+using Microsoft.AspNetCore.Http;
+using Microsoft.AspNetCore.Mvc;
+using Costasdev.VigoTransitApi;
+
+namespace Costasdev.UrbanoVigoWeb;
+
+public class GetStopList
+{
+ private readonly VigoTransitApiClient _api;
+
+ public GetStopList(HttpClient http)
+ {
+ _api = new VigoTransitApiClient(http);
+ }
+
+ [Function("GetStopList")]
+ public async Task<IActionResult> Run([HttpTrigger(AuthorizationLevel.Anonymous, "get")] HttpRequest req)
+ {
+ try
+ {
+ var stops = await _api.GetStops();
+ return new OkObjectResult(stops);
+ }
+ catch (InvalidOperationException)
+ {
+ return new BadRequestObjectResult("Failed to retrieve stops");
+ }
+ }
+}
+