about summary refs log tree commit diff
path: root/Tests/LibMatrix.HomeserverEmulator/Controllers/LegacyController.cs
diff options
context:
space:
mode:
Diffstat (limited to 'Tests/LibMatrix.HomeserverEmulator/Controllers/LegacyController.cs')
-rw-r--r--Tests/LibMatrix.HomeserverEmulator/Controllers/LegacyController.cs56
1 files changed, 0 insertions, 56 deletions
diff --git a/Tests/LibMatrix.HomeserverEmulator/Controllers/LegacyController.cs b/Tests/LibMatrix.HomeserverEmulator/Controllers/LegacyController.cs
deleted file mode 100644
index 1fb427e..0000000
--- a/Tests/LibMatrix.HomeserverEmulator/Controllers/LegacyController.cs
+++ /dev/null
@@ -1,56 +0,0 @@
-using System.Diagnostics;
-using System.Diagnostics.CodeAnalysis;
-using System.Security.Cryptography;
-using System.Text.Json.Nodes;
-using ArcaneLibs.Extensions;
-using LibMatrix.EventTypes.Spec.State;
-using LibMatrix.HomeserverEmulator.Services;
-using LibMatrix.Responses;
-using LibMatrix.Services;
-using Microsoft.AspNetCore.Mvc;
-
-namespace LibMatrix.HomeserverEmulator.Controllers;
-
-[ApiController]
-[Route("/_matrix/client/{version}/")]
-public class LegacyController(ILogger<LegacyController> logger, TokenService tokenService, UserStore userStore, RoomStore roomStore) : ControllerBase {
-    [HttpGet("rooms/{roomId}/initialSync")]
-    [SuppressMessage("ReSharper.DPA", "DPA0011: High execution time of MVC action", Justification = "Endpoint is expected to wait until data is available or timeout.")]
-    public async Task<object> Sync([FromRoute] string roomId, [FromQuery] int limit = 20) {
-        var sw = Stopwatch.StartNew();
-        var token = tokenService.GetAccessTokenOrNull(HttpContext);
-        if (token == null)
-            throw new MatrixException() {
-                ErrorCode = "M_MISSING_TOKEN",
-                Error = "Missing token"
-            };
-
-        var user = await userStore.GetUserByToken(token);
-        if (user == null)
-            throw new MatrixException() {
-                ErrorCode = "M_UNKNOWN_TOKEN",
-                Error = "No such user"
-            };
-        var room = roomStore.GetRoomById(roomId);
-        if (room is null)
-            throw new MatrixException() {
-                ErrorCode = "M_NOT_FOUND",
-                Error = "Room not found."
-            };
-        var accountData = room.AccountData.GetOrCreate(user.UserId, _ => []);
-        var membership = room.State.FirstOrDefault(x => x.Type == "m.room.member" && x.StateKey == user.UserId);
-        var timelineChunk = room.Timeline.TakeLast(limit).ToList();
-        return new {
-            account_data = accountData,
-            membership = (membership?.TypedContent as RoomMemberEventContent)?.Membership ?? "leave",
-            room_id = room.RoomId,
-            state = room.State.ToList(),
-            visibility = "public",
-            messages = new PaginatedChunkedStateEventResponse() {
-                Chunk = timelineChunk,
-                End = timelineChunk.Last().EventId,
-                Start = timelineChunk.Count >= limit ? timelineChunk.First().EventId : null
-            }
-        };
-    }
-}
\ No newline at end of file