From db835755e01b13dcb8d33a91f57ae8f20b931c57 Mon Sep 17 00:00:00 2001 From: Rory& Date: Sun, 9 Mar 2025 17:24:34 +0100 Subject: Well known resolver work, synapse admin work --- .../WellKnownResolvers/ClientWellKnownResolver.cs | 53 ---------------------- 1 file changed, 53 deletions(-) delete mode 100644 LibMatrix/Services/WellKnownResolvers/ClientWellKnownResolver.cs (limited to 'LibMatrix/Services/WellKnownResolvers/ClientWellKnownResolver.cs') diff --git a/LibMatrix/Services/WellKnownResolvers/ClientWellKnownResolver.cs b/LibMatrix/Services/WellKnownResolvers/ClientWellKnownResolver.cs deleted file mode 100644 index d4d0166..0000000 --- a/LibMatrix/Services/WellKnownResolvers/ClientWellKnownResolver.cs +++ /dev/null @@ -1,53 +0,0 @@ -using System.Text.Json.Serialization; -using ArcaneLibs.Collections; -using LibMatrix.Extensions; -using Microsoft.Extensions.Logging; - -namespace LibMatrix.Services.WellKnownResolvers; - -public class ClientWellKnownResolver(ILogger logger) { - private static readonly SemaphoreCache ClientWellKnownCache = new() { - StoreNulls = false - }; - private static readonly MatrixHttpClient HttpClient = new(); - - public Task TryResolveClientWellKnown(string homeserver) { - return ClientWellKnownCache.TryGetOrAdd(homeserver, async () => { - logger.LogTrace($"Resolving client well-known: {homeserver}"); - if ((await TryGetClientWellKnownFromHttps(homeserver)) is { } clientWellKnown) - return new() { - Source = WellKnownResolverService.WellKnownSource.Https, - WellKnown = clientWellKnown - }; - - return default!; - }); - } - - private async Task TryGetClientWellKnownFromHttps(string homeserver) { - try { - return await HttpClient.TryGetFromJsonAsync($"https://{homeserver}/.well-known/matrix/client"); - } - catch { - return null; - } - } - - - - public class ClientWellKnown { - [JsonPropertyName("m.homeserver")] - public required WellKnownHomeserver Homeserver { get; set; } - - public class WellKnownHomeserver { - [JsonPropertyName("base_url")] - public required string BaseUrl { get; set; } - } - } - - public struct WellKnownResolutionResult { - public WellKnownResolverService.WellKnownSource Source { get; set; } - public ClientWellKnown WellKnown { get; set; } - public List Warnings { get; set; } - } -} \ No newline at end of file -- cgit 1.5.1