From 0fa768556aca00f4346ccd71917fad048def6323 Mon Sep 17 00:00:00 2001 From: Rory& Date: Thu, 30 May 2024 08:22:50 +0000 Subject: Move around some projects, further cleanup pending --- .../Services/PaginationTokenResolverService.cs | 54 ---------------------- 1 file changed, 54 deletions(-) delete mode 100644 Tests/LibMatrix.HomeserverEmulator/Services/PaginationTokenResolverService.cs (limited to 'Tests/LibMatrix.HomeserverEmulator/Services/PaginationTokenResolverService.cs') diff --git a/Tests/LibMatrix.HomeserverEmulator/Services/PaginationTokenResolverService.cs b/Tests/LibMatrix.HomeserverEmulator/Services/PaginationTokenResolverService.cs deleted file mode 100644 index 0128ba6..0000000 --- a/Tests/LibMatrix.HomeserverEmulator/Services/PaginationTokenResolverService.cs +++ /dev/null @@ -1,54 +0,0 @@ -namespace LibMatrix.HomeserverEmulator.Services; - -public class PaginationTokenResolverService(ILogger logger, RoomStore roomStore, UserStore userStore) { - public async Task ResolveTokenToTimestamp(string token) { - logger.LogTrace("ResolveTokenToTimestamp({token})", token); - if (token.StartsWith('$')) { - //we have an event ID - foreach (var room in roomStore._rooms) { - var evt = await ResolveTokenToEvent(token, room); - if (evt is not null) return evt.OriginServerTs; - } - - // event not found - throw new NotImplementedException(); - } - else { - // we have a sync token - foreach (var user in userStore._users) { - foreach (var (_, session) in user.AccessTokens) { - if (!session.SyncStates.TryGetValue(token, out var syncState)) continue; - long? maxTs = 0; - foreach (var room in syncState.RoomPositions) { - var roomObj = roomStore.GetRoomById(room.Key); - if (roomObj is null) - continue; - var ts = roomObj.Timeline.Last().OriginServerTs; - if (ts > maxTs) maxTs = ts; - } - - return maxTs; - } - } - - throw new NotImplementedException(); - } - } - - public async Task ResolveTokenToEvent(string token, RoomStore.Room room) { - if (token.StartsWith('$')) { - //we have an event ID - logger.LogTrace("ResolveTokenToEvent(EventId({token}), Room({room})): searching for event...", token, room.RoomId); - - var evt = room.Timeline.SingleOrDefault(x => x.EventId == token); - if (evt is not null) return evt; - logger.LogTrace("ResolveTokenToEvent({token}, Room({room})): event not in requested room...", token, room.RoomId); - return null; - } - else { - // we have a sync token - logger.LogTrace("ResolveTokenToEvent(SyncToken({token}), Room({room}))", token, room.RoomId); - throw new NotImplementedException(); - } - } -} \ No newline at end of file -- cgit 1.4.1