aboutsummaryrefslogtreecommitdiff
path: root/BartService.cs
diff options
context:
space:
mode:
authorJake Mannens <jake@asger.xyz>2024-10-24 09:45:36 +1100
committerJake Mannens <jake@asger.xyz>2024-11-01 16:23:35 +1100
commit2d36ac8d5b71c55ec397fd3beae81edf825be6ff (patch)
tree480efb688acb889f4d62b750dd4a3dd67fb42982 /BartService.cs
parent113f9282b0069ebf97240d3fc476dcc099542506 (diff)
Fetch login token from config
Diffstat (limited to 'BartService.cs')
-rw-r--r--BartService.cs10
1 files changed, 8 insertions, 2 deletions
diff --git a/BartService.cs b/BartService.cs
index 89088e4..f453423 100644
--- a/BartService.cs
+++ b/BartService.cs
@@ -79,15 +79,20 @@ namespace PagerParser.Bart {
private const string AvailabilityEndpointUrl =
@"https://bartapp.net/webapp/webservice/WebsiteService.svc/GetUserAvailabilityList";
+ private IConfiguration config;
private ILogger logger;
private IServiceProvider serviceProvider;
+ private string? loginToken;
+
private HttpClient httpClient;
public BartService(
+ IConfiguration config,
ILogger<BartService> logger,
IServiceProvider serviceProvider) {
+ this.config = config;
this.logger = logger;
this.serviceProvider = serviceProvider;
}
@@ -99,8 +104,7 @@ namespace PagerParser.Bart {
// Prepare API request
var request = new BartAvailabilityRequest() {
RelatedDay = DateTime.Now.ToString("yyyy-MM-dd"),
- // TODO: retrieve this from config
- LoginToken = "<login token here>",
+ LoginToken = loginToken,
PermissionLevel = 2,
UserQualFilterIds = [],
AvailabilityGroupFilterId = "1366",
@@ -185,12 +189,14 @@ namespace PagerParser.Bart {
public async Task StartAsync(CancellationToken cancellationToken) {
logger.LogInformation("BART service starting...");
+ loginToken = config.GetValue<string>("PagerParser:Bart:Token");
httpClient = new();
await FetchAsync(DateTime.Now);
}
public Task StopAsync(CancellationToken cancellationToken) {
logger.LogInformation("BART service stopping...");
+ loginToken = null;
httpClient.Dispose();
return Task.CompletedTask;
}