From 7027e259b8987e425362ee8248e5d0efe8003d51 Mon Sep 17 00:00:00 2001 From: Sean Hall Date: Thu, 2 Apr 2020 21:00:43 +1000 Subject: Hide the concrete implementation of the service provider interfaces by adding WixToolsetServiceProviderFactory. This forces consumers to code to the interfaces. --- src/WixToolset.Core/ExtensibilityServices/ExtensionManager.cs | 6 +++--- 1 file changed, 3 insertions(+), 3 deletions(-) (limited to 'src/WixToolset.Core/ExtensibilityServices') diff --git a/src/WixToolset.Core/ExtensibilityServices/ExtensionManager.cs b/src/WixToolset.Core/ExtensibilityServices/ExtensionManager.cs index d80f25a2..97216479 100644 --- a/src/WixToolset.Core/ExtensibilityServices/ExtensionManager.cs +++ b/src/WixToolset.Core/ExtensibilityServices/ExtensionManager.cs @@ -16,12 +16,12 @@ namespace WixToolset.Core.ExtensibilityServices private List extensionFactories = new List(); private Dictionary> loadedExtensionsByType = new Dictionary>(); - public ExtensionManager(IServiceProvider serviceProvider) + public ExtensionManager(IWixToolsetCoreServiceProvider serviceProvider) { this.ServiceProvider = serviceProvider; } - private IServiceProvider ServiceProvider { get; } + private IWixToolsetCoreServiceProvider ServiceProvider { get; } public void Add(Assembly extensionAssembly) { @@ -33,7 +33,7 @@ namespace WixToolset.Core.ExtensibilityServices private IExtensionFactory CreateExtensionFactory(Type type) { - var constructor = type.GetConstructor(new[] { typeof(IServiceProvider) }); + var constructor = type.GetConstructor(new[] { typeof(IWixToolsetCoreServiceProvider) }); if (constructor != null) { return (IExtensionFactory)constructor.Invoke(new[] { this.ServiceProvider }); -- cgit v1.2.3-55-g6feb