server-master/srcs/DiscordNotifier/Formatting/DiscordLogExtensions.cs
2026-02-10 18:21:30 +01:00

25 lines
No EOL
1 KiB
C#

using Microsoft.Extensions.DependencyInjection;
using PhoenixLib.ServiceBus.Extensions;
using Plugin.PlayerLogs;
namespace DiscordNotifier.Formatting
{
public static class DiscordLogExtensions
{
public static void AddDiscordFormattedLog<TMessage, TFormatter>(this IServiceCollection services)
where TMessage : class, IPlayerActionLogMessage
where TFormatter : class, IDiscordLogFormatter<TMessage>
{
services.AddMessageSubscriber<TMessage, GenericDiscordLogConsumer<TMessage>>();
services.AddSingleton<IDiscordLogFormatter<TMessage>, TFormatter>();
}
public static void AddDiscordEmbedFormattedLog<TMessage, TFormatter>(this IServiceCollection services)
where TMessage : class, IPlayerActionLogMessage
where TFormatter : class, IDiscordEmbedLogFormatter<TMessage>
{
services.AddMessageSubscriber<TMessage, GenericDiscordEmbedLogConsumer<TMessage>>();
services.AddSingleton<IDiscordEmbedLogFormatter<TMessage>, TFormatter>();
}
}
}