aboutsummaryrefslogtreecommitdiff
path: root/src
diff options
context:
space:
mode:
authorRob Mensching <rob@firegiant.com>2020-06-23 16:45:26 -0700
committerRob Mensching <rob@firegiant.com>2020-06-23 16:52:05 -0700
commit0185c2ea6e638dc7e1c5224739717ba2152bb510 (patch)
tree4b5241794849f4b07b9d2eb73a2a761a230a1242 /src
parent51441387b09aa6b8c00fbc0d8841118b7fee63d6 (diff)
downloadwix-0185c2ea6e638dc7e1c5224739717ba2152bb510.tar.gz
wix-0185c2ea6e638dc7e1c5224739717ba2152bb510.tar.bz2
wix-0185c2ea6e638dc7e1c5224739717ba2152bb510.zip
Move Windows Installer specific backend services to WindowsInstaller
Diffstat (limited to 'src')
-rw-r--r--src/WixToolset.Core.WindowsInstaller/ExtensibilityServices/WindowsInstallerBackendHelper.cs (renamed from src/WixToolset.Core/ExtensibilityServices/WindowsInstallerBackendHelper.cs)2
-rw-r--r--src/WixToolset.Core.WindowsInstaller/WixToolsetCoreServiceProviderExtensions.cs17
-rw-r--r--src/WixToolset.Core/WixToolsetServiceProvider.cs1
3 files changed, 18 insertions, 2 deletions
diff --git a/src/WixToolset.Core/ExtensibilityServices/WindowsInstallerBackendHelper.cs b/src/WixToolset.Core.WindowsInstaller/ExtensibilityServices/WindowsInstallerBackendHelper.cs
index a923a8cc..a1df335c 100644
--- a/src/WixToolset.Core/ExtensibilityServices/WindowsInstallerBackendHelper.cs
+++ b/src/WixToolset.Core.WindowsInstaller/ExtensibilityServices/WindowsInstallerBackendHelper.cs
@@ -1,6 +1,6 @@
1// Copyright (c) .NET Foundation and contributors. All rights reserved. Licensed under the Microsoft Reciprocal License. See LICENSE.TXT file in the project root for full license information. 1// Copyright (c) .NET Foundation and contributors. All rights reserved. Licensed under the Microsoft Reciprocal License. See LICENSE.TXT file in the project root for full license information.
2 2
3namespace WixToolset.Core.ExtensibilityServices 3namespace WixToolset.Core.WindowsInstaller.ExtensibilityServices
4{ 4{
5 using System.Linq; 5 using System.Linq;
6 using WixToolset.Data; 6 using WixToolset.Data;
diff --git a/src/WixToolset.Core.WindowsInstaller/WixToolsetCoreServiceProviderExtensions.cs b/src/WixToolset.Core.WindowsInstaller/WixToolsetCoreServiceProviderExtensions.cs
index f3671332..15fbf679 100644
--- a/src/WixToolset.Core.WindowsInstaller/WixToolsetCoreServiceProviderExtensions.cs
+++ b/src/WixToolset.Core.WindowsInstaller/WixToolsetCoreServiceProviderExtensions.cs
@@ -2,16 +2,33 @@
2 2
3namespace WixToolset.Core.WindowsInstaller 3namespace WixToolset.Core.WindowsInstaller
4{ 4{
5 using System;
6 using System.Collections.Generic;
7 using WixToolset.Core.WindowsInstaller.ExtensibilityServices;
5 using WixToolset.Extensibility.Services; 8 using WixToolset.Extensibility.Services;
6 9
7 public static class WixToolsetCoreServiceProviderExtensions 10 public static class WixToolsetCoreServiceProviderExtensions
8 { 11 {
9 public static IWixToolsetCoreServiceProvider AddWindowsInstallerBackend(this IWixToolsetCoreServiceProvider coreProvider) 12 public static IWixToolsetCoreServiceProvider AddWindowsInstallerBackend(this IWixToolsetCoreServiceProvider coreProvider)
10 { 13 {
14 AddServices(coreProvider);
15
11 var extensionManager = coreProvider.GetService<IExtensionManager>(); 16 var extensionManager = coreProvider.GetService<IExtensionManager>();
12 extensionManager.Add(typeof(WindowsInstallerExtensionFactory).Assembly); 17 extensionManager.Add(typeof(WindowsInstallerExtensionFactory).Assembly);
13 18
14 return coreProvider; 19 return coreProvider;
15 } 20 }
21
22 private static void AddServices(IWixToolsetCoreServiceProvider coreProvider)
23 {
24 // Singletons.
25 coreProvider.AddService((provider, singletons) => AddSingleton<IWindowsInstallerBackendHelper>(singletons, new WindowsInstallerBackendHelper()));
26 }
27
28 private static T AddSingleton<T>(Dictionary<Type, object> singletons, T service) where T : class
29 {
30 singletons.Add(typeof(T), service);
31 return service;
32 }
16 } 33 }
17} 34}
diff --git a/src/WixToolset.Core/WixToolsetServiceProvider.cs b/src/WixToolset.Core/WixToolsetServiceProvider.cs
index 1d475d00..d7a6171a 100644
--- a/src/WixToolset.Core/WixToolsetServiceProvider.cs
+++ b/src/WixToolset.Core/WixToolsetServiceProvider.cs
@@ -25,7 +25,6 @@ namespace WixToolset.Core
25 this.AddService((provider, singletons) => AddSingleton<IPreprocessHelper>(singletons, new PreprocessHelper(provider))); 25 this.AddService((provider, singletons) => AddSingleton<IPreprocessHelper>(singletons, new PreprocessHelper(provider)));
26 this.AddService((provider, singletons) => AddSingleton<IBackendHelper>(singletons, new BackendHelper(provider))); 26 this.AddService((provider, singletons) => AddSingleton<IBackendHelper>(singletons, new BackendHelper(provider)));
27 this.AddService((provider, singletons) => AddSingleton<IPathResolver>(singletons, new PathResolver())); 27 this.AddService((provider, singletons) => AddSingleton<IPathResolver>(singletons, new PathResolver()));
28 this.AddService((provider, singletons) => AddSingleton<IWindowsInstallerBackendHelper>(singletons, new WindowsInstallerBackendHelper()));
29 28
30 // Transients. 29 // Transients.
31 this.AddService<ICommandLineArguments>((provider, singletons) => new CommandLineArguments(provider)); 30 this.AddService<ICommandLineArguments>((provider, singletons) => new CommandLineArguments(provider));