get identifier async

This commit is contained in:
Stanley Dimant
2024-07-28 12:47:04 +02:00
committed by Loporrit
parent 0228c2343b
commit b2fa3b9f32
2 changed files with 8 additions and 6 deletions

View File

@@ -149,7 +149,8 @@ public class FileTransferOrchestrator : DisposableMediatorSubscriberBase
private async Task<HttpResponseMessage> SendRequestInternalAsync(HttpRequestMessage requestMessage,
CancellationToken? ct = null, HttpCompletionOption httpCompletionOption = HttpCompletionOption.ResponseContentRead)
{
requestMessage.Headers.Authorization = new AuthenticationHeaderValue("Bearer", _tokenProvider.GetToken());
var token = await _tokenProvider.GetToken().ConfigureAwait(false);
requestMessage.Headers.Authorization = new AuthenticationHeaderValue("Bearer", token);
if (requestMessage.Content != null && requestMessage.Content is not StreamContent && requestMessage.Content is not ByteArrayContent)
{

View File

@@ -96,13 +96,14 @@ public sealed class TokenProvider : IDisposable, IMediatorSubscriber
return response;
}
private JwtIdentifier? GetIdentifier()
private async Task<JwtIdentifier?> GetIdentifier()
{
JwtIdentifier jwtIdentifier;
try
{
var playerIdentifier = await _dalamudUtil.GetPlayerNameHashedAsync().ConfigureAwait(false);
jwtIdentifier = new(_serverManager.CurrentApiUrl,
_dalamudUtil.GetPlayerNameHashedAsync().GetAwaiter().GetResult(),
playerIdentifier,
_serverManager.GetSecretKey(out _)!);
_lastJwtIdentifier = jwtIdentifier;
}
@@ -122,9 +123,9 @@ public sealed class TokenProvider : IDisposable, IMediatorSubscriber
return jwtIdentifier;
}
public string? GetToken()
public async Task<string?> GetToken()
{
JwtIdentifier? jwtIdentifier = GetIdentifier();
JwtIdentifier? jwtIdentifier = await GetIdentifier().ConfigureAwait(false);
if (jwtIdentifier == null) return null;
if (_tokenCache.TryGetValue(jwtIdentifier, out var token))
@@ -137,7 +138,7 @@ public sealed class TokenProvider : IDisposable, IMediatorSubscriber
public async Task<string?> GetOrUpdateToken(CancellationToken ct)
{
JwtIdentifier? jwtIdentifier = GetIdentifier();
JwtIdentifier? jwtIdentifier = await GetIdentifier().ConfigureAwait(false);
if (jwtIdentifier == null) return null;
if (_tokenCache.TryGetValue(jwtIdentifier, out var token))