/// <summary> /// Initializes a new instance of the <see cref="PluginLoader"/> class. /// </summary> /// <param name="directory">The directory.</param> /// <param name="jsonUtil">The json util.</param> /// <param name="pluginLoadContextProvider"></param> /// <param name="log">The log.</param> /// <param name="reflectorUtil">The reflector util.</param> /// <param name="objectFactory">The object factory.</param> /// <param name="pluginManagers"></param> /// <param name="moduleLoader"></param> /// <param name="loadActions"></param> /// <param name="unLoadActions"></param> /// <param name="applicationOption"></param> /// <param name="hostEnvironment"></param> public PluginLoader(ISysDirectory directory, IJsonUtil jsonUtil, IPluginLoadContextProvider pluginLoadContextProvider, ILogger <PluginLoader> log, IReflectorUtil reflectorUtil, IObjectFactory objectFactory, IPluginManagers pluginManagers, IModuleLoader moduleLoader, IEnumerable <IPluginLoadAction> loadActions, IEnumerable <IPluginUnLoadAction> unLoadActions, ApplicationOption applicationOption, IHostEnvironment hostEnvironment) { this.directory = directory; this.jsonUtil = jsonUtil; this.pluginLoadContextProvider = pluginLoadContextProvider; this.log = log; pluginContextDic = objectFactory.Create <ConcurrentDictionary <Guid, IPluginsLoadContext> >(); this.reflectorUtil = reflectorUtil; this.objectFactory = objectFactory; _pluginManagers = pluginManagers; _moduleLoader = moduleLoader; _loadActions = loadActions; _unLoadActions = unLoadActions; _applicationOption = applicationOption; _hostEnvironment = hostEnvironment; }
/// <summary> /// Initializes a new instance of the <see cref="PluginsServiceProvider"/> class. /// </summary> /// <param name="services">The services.</param> /// <param name="pluginManagers"></param> /// <param name="pluginServiceTypeCache"></param> public PluginsServiceProvider(IServiceCollection services, IPluginManagers pluginManagers, PluginSerivceTypeCache pluginServiceTypeCache) { this._services = services; this.pluginManagers = pluginManagers; this.pluginServiceTypeCache = pluginServiceTypeCache; aspectConfiguration = new AspectConfiguration(); }
/// <summary> /// Initializes a new instance of the <see cref="TestController"/> class. /// </summary> /// <param name="pluginLoader">The plugin loader.</param> /// <param name="reflectorUtil">The reflector util.</param> /// <param name="pluginManagers">The plugin managers.</param> /// <param name="mvcBuilder"></param> /// <param name="applicationBuilder"></param> public TestController( IPluginLoader pluginLoader, IReflectorUtil reflectorUtil, IPluginManagers pluginManagers, IMvcBuilder mvcBuilder, IApplicationBuilder applicationBuilder) { this.pluginLoader = pluginLoader; this.reflectorUtil = reflectorUtil; this.pluginManagers = pluginManagers; this.mvcBuilder = mvcBuilder; this.applicationBuilder = applicationBuilder; }
/// <summary> /// Initializes a new instance of the <see cref="TestController"/> class. /// </summary> /// <param name="pluginLoader">The plugin loader.</param> /// <param name="application">The application.</param> /// <param name="reflectorUtil">The reflector util.</param> /// <param name="pluginManagers">The plugin managers.</param> public TestController( IPluginLoader pluginLoader, IBApplication application, IReflectorUtil reflectorUtil, IPluginManagers pluginManagers) { this.pluginLoader = pluginLoader; this.application = application; this.reflectorUtil = reflectorUtil; this.pluginManagers = pluginManagers; }
/// <summary> /// Initializes a new instance of the <see cref="PluginSerivceTypeCache"/> class. /// </summary> /// <param name="pluginManagers">The plugin managers.</param> public PluginSerivceTypeCache(IPluginManagers pluginManagers) { this.pluginManagers = pluginManagers; cache = new ConcurrentDictionary <Type, Plugins>(); }
/// <summary> /// Initializes a new instance of the <see cref="PluginApplicationBuilderFactory"/> class. /// </summary> /// <param name="provider">The provider.</param> /// <param name="pluginManagers">The plugin managers.</param> public PluginApplicationBuilderFactory(IServiceProvider provider, IPluginManagers pluginManagers) { this.provider = provider; this.pluginManagers = pluginManagers; }