[store] Reduce amount of hardcoded values.

This commit is contained in:
West14
2022-02-16 18:08:02 +02:00
parent d99c71c07c
commit cd8b25bcb8
9 changed files with 32 additions and 46 deletions
+5 -5
View File
@@ -8,25 +8,25 @@ namespace West.TelegramBot.ContentStore;
public class ContentStore : Module
{
private readonly List<Type> _mediaServiceTypes = new();
public readonly List<Type> MediaServiceTypes = new();
public ContentStore(Core core) : base(core)
{
foreach (var assembly in AppDomain.CurrentDomain.GetAssemblies())
{
foreach (var exportedType in assembly.GetExportedTypes()
.Where(t => !t.IsAbstract && t.IsSubclassOf(typeof(IRandomMediaService))))
.Where(t => !t.IsAbstract && t.GetInterface(nameof(IRandomMediaService)) != null))
{
_mediaServiceTypes.Add(exportedType);
MediaServiceTypes.Add(exportedType);
}
}
}
public override void ConfigureServices(IServiceCollection services)
{
foreach (var serviceType in _mediaServiceTypes)
foreach (var serviceType in MediaServiceTypes)
{
services.AddSingleton(serviceType);
services.AddSingleton(typeof(IRandomMediaService), serviceType);
}
}
}