mirror of
https://github.com/PluralKit/PluralKit.git
synced 2026-02-07 06:17:55 +00:00
Migrate DI container to Autofac
This commit is contained in:
parent
4311cb3ad1
commit
1ea0526ef8
10 changed files with 384 additions and 292 deletions
|
|
@ -3,6 +3,9 @@ using System.Threading.Tasks;
|
|||
|
||||
using App.Metrics;
|
||||
|
||||
using Autofac;
|
||||
using Autofac.Core;
|
||||
|
||||
using Discord;
|
||||
using Discord.WebSocket;
|
||||
|
||||
|
|
@ -12,7 +15,7 @@ namespace PluralKit.Bot.CommandSystem
|
|||
{
|
||||
public class Context
|
||||
{
|
||||
private IServiceProvider _provider;
|
||||
private ILifetimeScope _provider;
|
||||
|
||||
private readonly DiscordShardedClient _client;
|
||||
private readonly SocketUserMessage _message;
|
||||
|
|
@ -24,14 +27,14 @@ namespace PluralKit.Bot.CommandSystem
|
|||
|
||||
private Command _currentCommand;
|
||||
|
||||
public Context(IServiceProvider provider, SocketUserMessage message, int commandParseOffset,
|
||||
public Context(ILifetimeScope provider, SocketUserMessage message, int commandParseOffset,
|
||||
PKSystem senderSystem)
|
||||
{
|
||||
_client = provider.GetRequiredService<IDiscordClient>() as DiscordShardedClient;
|
||||
_client = provider.Resolve<DiscordShardedClient>();
|
||||
_message = message;
|
||||
_data = provider.GetRequiredService<IDataStore>();
|
||||
_data = provider.Resolve<IDataStore>();
|
||||
_senderSystem = senderSystem;
|
||||
_metrics = provider.GetRequiredService<IMetrics>();
|
||||
_metrics = provider.Resolve<IMetrics>();
|
||||
_provider = provider;
|
||||
_parameters = new Parameters(message.Content.Substring(commandParseOffset));
|
||||
}
|
||||
|
|
@ -86,7 +89,7 @@ namespace PluralKit.Bot.CommandSystem
|
|||
|
||||
try
|
||||
{
|
||||
await handler(_provider.GetRequiredService<T>());
|
||||
await handler(_provider.Resolve<T>());
|
||||
_metrics.Measure.Meter.Mark(BotMetrics.CommandsRun);
|
||||
}
|
||||
catch (PKSyntaxError e)
|
||||
|
|
|
|||
Loading…
Add table
Add a link
Reference in a new issue