diff --git a/Tests/TestDataGenerator/Bot/DataFetcher.cs b/Tests/TestDataGenerator/Bot/DataFetcher.cs
index b1f8402..5e8c1a1 100644
--- a/Tests/TestDataGenerator/Bot/DataFetcher.cs
+++ b/Tests/TestDataGenerator/Bot/DataFetcher.cs
@@ -1,25 +1,17 @@
-using System.Text;
-using System.Threading.Channels;
using ArcaneLibs.Extensions;
using LibMatrix.EventTypes.Spec;
-using LibMatrix.EventTypes.Spec.State;
-using LibMatrix.Helpers;
using LibMatrix.Homeservers;
-using LibMatrix.Interfaces;
using LibMatrix.RoomTypes;
-using LibMatrix.Services;
-using LibMatrix.Tests;
using LibMatrix.Utilities.Bot;
-using LibMatrix.Utilities.Bot.Interfaces;
using Microsoft.Extensions.Hosting;
using Microsoft.Extensions.Logging;
-namespace PluralContactBotPoC.Bot;
+#pragma warning disable CS1998 // Async method lacks 'await' operators and will run synchronously
-public class DataFetcher(AuthenticatedHomeserverGeneric hs, ILogger<DataFetcher> logger, LibMatrixBotConfiguration botConfiguration,
- // DataFetcherConfiguration configuration,
- HomeserverResolverService hsResolver) : IHostedService {
- private Task _listenerTask;
+namespace TestDataGenerator.Bot;
+
+public class DataFetcher(AuthenticatedHomeserverGeneric hs, ILogger<DataFetcher> logger, LibMatrixBotConfiguration botConfiguration) : IHostedService {
+ private Task? _listenerTask;
private GenericRoom? _logRoom;
@@ -32,7 +24,7 @@ public class DataFetcher(AuthenticatedHomeserverGeneric hs, ILogger<DataFetcher>
private async Task Run(CancellationToken cancellationToken) {
Directory.GetFiles("bot_data/cache").ToList().ForEach(File.Delete);
- _logRoom = hs.GetRoom(botConfiguration.LogRoom);
+ _logRoom = hs.GetRoom(botConfiguration.LogRoom!);
await _logRoom.SendMessageEventAsync(new RoomMessageEventContent(body: "Test data collector started!"));
await _logRoom.SendMessageEventAsync(new RoomMessageEventContent(body: "Fetching rooms..."));
@@ -42,16 +34,14 @@ public class DataFetcher(AuthenticatedHomeserverGeneric hs, ILogger<DataFetcher>
await _logRoom.SendMessageEventAsync(new RoomMessageEventContent(body: "Fetching room data..."));
- Config cfg = new Config();
-
var roomAliasTasks = rooms.Select(room => room.GetCanonicalAliasAsync()).ToAsyncEnumerable();
List<Task<(string, string)>> aliasResolutionTasks = new();
await foreach (var @event in roomAliasTasks) {
if (@event?.Alias != null) {
await _logRoom.SendMessageEventAsync(new RoomMessageEventContent(body: $"Fetched room alias {(@event).Alias}!"));
- aliasResolutionTasks.Add(Task<(string, string)>.Run(async () => {
+ aliasResolutionTasks.Add(Task.Run(async () => {
var alias = await hs.ResolveRoomAliasAsync(@event.Alias);
- return (@event.Alias, @alias.RoomId);
+ return (@event.Alias, alias.RoomId);
}, cancellationToken));
}
}
@@ -65,5 +55,6 @@ public class DataFetcher(AuthenticatedHomeserverGeneric hs, ILogger<DataFetcher>
/// <param name="cancellationToken">Indicates that the shutdown process should no longer be graceful.</param>
public async Task StopAsync(CancellationToken cancellationToken) {
logger.LogInformation("Shutting down bot!");
+ _listenerTask?.Dispose();
}
}
|