diff options
| author | Rob Mensching <rob@firegiant.com> | 2021-02-23 08:17:10 -0800 |
|---|---|---|
| committer | Rob Mensching <rob@firegiant.com> | 2021-02-27 07:47:08 -0800 |
| commit | da9f4cf9627ca628f87f0938414795258190439b (patch) | |
| tree | b7ad6aa313d85a9499287954094423638ae2b86e /src/WixToolset.Core.WindowsInstaller | |
| parent | 41a337d00efa2f649ae5c1575ff55e568dc0b796 (diff) | |
| download | wix-da9f4cf9627ca628f87f0938414795258190439b.tar.gz wix-da9f4cf9627ca628f87f0938414795258190439b.tar.bz2 wix-da9f4cf9627ca628f87f0938414795258190439b.zip | |
Implement IBackendHelper passthru in Burn and WindowsInstaller helpers
Diffstat (limited to 'src/WixToolset.Core.WindowsInstaller')
| -rw-r--r-- | src/WixToolset.Core.WindowsInstaller/ExtensibilityServices/WindowsInstallerBackendHelper.cs | 27 | ||||
| -rw-r--r-- | src/WixToolset.Core.WindowsInstaller/WixToolsetCoreServiceProviderExtensions.cs | 2 |
2 files changed, 28 insertions, 1 deletions
diff --git a/src/WixToolset.Core.WindowsInstaller/ExtensibilityServices/WindowsInstallerBackendHelper.cs b/src/WixToolset.Core.WindowsInstaller/ExtensibilityServices/WindowsInstallerBackendHelper.cs index 0082bc7c..248dea9b 100644 --- a/src/WixToolset.Core.WindowsInstaller/ExtensibilityServices/WindowsInstallerBackendHelper.cs +++ b/src/WixToolset.Core.WindowsInstaller/ExtensibilityServices/WindowsInstallerBackendHelper.cs | |||
| @@ -2,13 +2,38 @@ | |||
| 2 | 2 | ||
| 3 | namespace WixToolset.Core.WindowsInstaller.ExtensibilityServices | 3 | namespace WixToolset.Core.WindowsInstaller.ExtensibilityServices |
| 4 | { | 4 | { |
| 5 | using System; | ||
| 5 | using System.Linq; | 6 | using System.Linq; |
| 6 | using WixToolset.Data; | 7 | using WixToolset.Data; |
| 7 | using WixToolset.Data.WindowsInstaller; | 8 | using WixToolset.Data.WindowsInstaller; |
| 9 | using WixToolset.Extensibility.Data; | ||
| 8 | using WixToolset.Extensibility.Services; | 10 | using WixToolset.Extensibility.Services; |
| 9 | 11 | ||
| 10 | internal class WindowsInstallerBackendHelper : IWindowsInstallerBackendHelper | 12 | internal class WindowsInstallerBackendHelper : IWindowsInstallerBackendHelper |
| 11 | { | 13 | { |
| 14 | private readonly IBackendHelper backendHelper; | ||
| 15 | |||
| 16 | public WindowsInstallerBackendHelper(IWixToolsetServiceProvider serviceProvider) | ||
| 17 | { | ||
| 18 | this.backendHelper = serviceProvider.GetService<IBackendHelper>(); | ||
| 19 | } | ||
| 20 | |||
| 21 | #region IBackendHelper interfaces | ||
| 22 | |||
| 23 | public IFileTransfer CreateFileTransfer(string source, string destination, bool move, SourceLineNumber sourceLineNumbers = null) => this.backendHelper.CreateFileTransfer(source, destination, move, sourceLineNumbers); | ||
| 24 | |||
| 25 | public string CreateGuid(Guid namespaceGuid, string value) => this.backendHelper.CreateGuid(namespaceGuid, value); | ||
| 26 | |||
| 27 | public IResolvedDirectory CreateResolvedDirectory(string directoryParent, string name) => this.backendHelper.CreateResolvedDirectory(directoryParent, name); | ||
| 28 | |||
| 29 | public string GetCanonicalRelativePath(SourceLineNumber sourceLineNumbers, string elementName, string attributeName, string relativePath) => this.backendHelper.GetCanonicalRelativePath(sourceLineNumbers, elementName, attributeName, relativePath); | ||
| 30 | |||
| 31 | public ITrackedFile TrackFile(string path, TrackedFileType type, SourceLineNumber sourceLineNumbers = null) => this.backendHelper.TrackFile(path, type, sourceLineNumbers); | ||
| 32 | |||
| 33 | #endregion | ||
| 34 | |||
| 35 | #region IWindowsInstallerBackendHelper interfaces | ||
| 36 | |||
| 12 | public Row CreateRow(IntermediateSection section, IntermediateSymbol symbol, WindowsInstallerData output, TableDefinition tableDefinition) | 37 | public Row CreateRow(IntermediateSection section, IntermediateSymbol symbol, WindowsInstallerData output, TableDefinition tableDefinition) |
| 13 | { | 38 | { |
| 14 | var table = output.EnsureTable(tableDefinition); | 39 | var table = output.EnsureTable(tableDefinition); |
| @@ -57,5 +82,7 @@ namespace WixToolset.Core.WindowsInstaller.ExtensibilityServices | |||
| 57 | 82 | ||
| 58 | return true; | 83 | return true; |
| 59 | } | 84 | } |
| 85 | |||
| 86 | #endregion | ||
| 60 | } | 87 | } |
| 61 | } | 88 | } |
diff --git a/src/WixToolset.Core.WindowsInstaller/WixToolsetCoreServiceProviderExtensions.cs b/src/WixToolset.Core.WindowsInstaller/WixToolsetCoreServiceProviderExtensions.cs index e013cefb..d9649dec 100644 --- a/src/WixToolset.Core.WindowsInstaller/WixToolsetCoreServiceProviderExtensions.cs +++ b/src/WixToolset.Core.WindowsInstaller/WixToolsetCoreServiceProviderExtensions.cs | |||
| @@ -30,7 +30,7 @@ namespace WixToolset.Core.WindowsInstaller | |||
| 30 | private static void AddServices(IWixToolsetCoreServiceProvider coreProvider) | 30 | private static void AddServices(IWixToolsetCoreServiceProvider coreProvider) |
| 31 | { | 31 | { |
| 32 | // Singletons. | 32 | // Singletons. |
| 33 | coreProvider.AddService((provider, singletons) => AddSingleton<IWindowsInstallerBackendHelper>(singletons, new WindowsInstallerBackendHelper())); | 33 | coreProvider.AddService((provider, singletons) => AddSingleton<IWindowsInstallerBackendHelper>(singletons, new WindowsInstallerBackendHelper(provider))); |
| 34 | coreProvider.AddService<IUnbinder>((provider, singletons) => new Unbinder(provider)); | 34 | coreProvider.AddService<IUnbinder>((provider, singletons) => new Unbinder(provider)); |
| 35 | } | 35 | } |
| 36 | 36 | ||
