mirror of
https://github.com/aljazceru/btcpayserver.git
synced 2025-12-17 22:14:26 +01:00
Pluginify BTCPayNetworkProvider (#5331)
This commit is contained in:
@@ -10,6 +10,7 @@ using System.Reflection;
|
||||
using System.Text.RegularExpressions;
|
||||
using BTCPayServer.Abstractions.Contracts;
|
||||
using BTCPayServer.Configuration;
|
||||
using BTCPayServer.Logging;
|
||||
using McMaster.NETCore.Plugins;
|
||||
using Microsoft.AspNetCore.Builder;
|
||||
using Microsoft.AspNetCore.Hosting;
|
||||
@@ -18,6 +19,7 @@ using Microsoft.Extensions.Configuration;
|
||||
using Microsoft.Extensions.DependencyInjection;
|
||||
using Microsoft.Extensions.FileProviders;
|
||||
using Microsoft.Extensions.Logging;
|
||||
using NBXplorer;
|
||||
|
||||
namespace BTCPayServer.Plugins
|
||||
{
|
||||
@@ -61,7 +63,7 @@ namespace BTCPayServer.Plugins
|
||||
return false;
|
||||
}
|
||||
public static IMvcBuilder AddPlugins(this IMvcBuilder mvcBuilder, IServiceCollection serviceCollection,
|
||||
IConfiguration config, ILoggerFactory loggerFactory)
|
||||
IConfiguration config, ILoggerFactory loggerFactory, ServiceProvider bootstrapServiceProvider)
|
||||
{
|
||||
var logger = loggerFactory.CreateLogger(typeof(PluginManager));
|
||||
var pluginsFolder = new DataDirectories().Configure(config).PluginDir;
|
||||
@@ -184,7 +186,8 @@ namespace BTCPayServer.Plugins
|
||||
{
|
||||
logger.LogInformation(
|
||||
$"Adding and executing plugin {plugin.Identifier} - {plugin.Version}");
|
||||
plugin.Execute(serviceCollection);
|
||||
var pluginServiceCollection = new PluginServiceCollection(serviceCollection, bootstrapServiceProvider);
|
||||
plugin.Execute(pluginServiceCollection);
|
||||
serviceCollection.AddSingleton(plugin);
|
||||
}
|
||||
catch (Exception e)
|
||||
|
||||
Reference in New Issue
Block a user