From 3ccd5e439da4296d6f2b66ce47075ab20d039676 Mon Sep 17 00:00:00 2001 From: Rob Mensching Date: Sun, 14 Mar 2021 07:38:48 -0700 Subject: Minimize public surface area of Core Fixes wixtoolset/issues#6374 --- .../Unbind/UnbindDatabaseCommand.cs | 10 ++++++---- .../Unbind/UnbindTranformCommand.cs | 9 ++++++--- 2 files changed, 12 insertions(+), 7 deletions(-) (limited to 'src/WixToolset.Core.WindowsInstaller/Unbind') diff --git a/src/WixToolset.Core.WindowsInstaller/Unbind/UnbindDatabaseCommand.cs b/src/WixToolset.Core.WindowsInstaller/Unbind/UnbindDatabaseCommand.cs index 36172b5e..9a55dc77 100644 --- a/src/WixToolset.Core.WindowsInstaller/Unbind/UnbindDatabaseCommand.cs +++ b/src/WixToolset.Core.WindowsInstaller/Unbind/UnbindDatabaseCommand.cs @@ -11,16 +11,16 @@ namespace WixToolset.Core.WindowsInstaller.Unbind using WixToolset.Core.WindowsInstaller.Msi; using WixToolset.Data; using WixToolset.Data.WindowsInstaller; - using WixToolset.Data.WindowsInstaller.Rows; using WixToolset.Extensibility.Services; internal class UnbindDatabaseCommand { private List exportedFiles; - public UnbindDatabaseCommand(IMessaging messaging, Database database, string databasePath, OutputType outputType, string exportBasePath, string intermediateFolder, bool isAdminImage, bool suppressDemodularization, bool skipSummaryInfo) + public UnbindDatabaseCommand(IMessaging messaging, IBackendHelper backendHelper, Database database, string databasePath, OutputType outputType, string exportBasePath, string intermediateFolder, bool isAdminImage, bool suppressDemodularization, bool skipSummaryInfo) { this.Messaging = messaging; + this.BackendHelper = backendHelper; this.Database = database; this.DatabasePath = databasePath; this.OutputType = outputType; @@ -35,6 +35,8 @@ namespace WixToolset.Core.WindowsInstaller.Unbind public IMessaging Messaging { get; } + public IBackendHelper BackendHelper { get; } + public Database Database { get; } public string DatabasePath { get; } @@ -527,7 +529,7 @@ namespace WixToolset.Core.WindowsInstaller.Unbind /// /// The Filename value. /// The source name of the directory in an admin image. - private static string GetAdminSourceName(string value) + private string GetAdminSourceName(string value) { string name = null; string[] names; @@ -535,7 +537,7 @@ namespace WixToolset.Core.WindowsInstaller.Unbind string shortsourcename = null; string sourcename = null; - names = Common.GetNames(value); + names = this.BackendHelper.SplitMsiFileName(value); if (null != names[0] && "." != names[0]) { diff --git a/src/WixToolset.Core.WindowsInstaller/Unbind/UnbindTranformCommand.cs b/src/WixToolset.Core.WindowsInstaller/Unbind/UnbindTranformCommand.cs index de2c5e37..bde29405 100644 --- a/src/WixToolset.Core.WindowsInstaller/Unbind/UnbindTranformCommand.cs +++ b/src/WixToolset.Core.WindowsInstaller/Unbind/UnbindTranformCommand.cs @@ -17,9 +17,10 @@ namespace WixToolset.Core.WindowsInstaller.Unbind internal class UnbindTransformCommand { - public UnbindTransformCommand(IMessaging messaging, string transformFile, string exportBasePath, string intermediateFolder) + public UnbindTransformCommand(IMessaging messaging, IBackendHelper backendHelper, string transformFile, string exportBasePath, string intermediateFolder) { this.Messaging = messaging; + this.BackendHelper = backendHelper; this.TransformFile = transformFile; this.ExportBasePath = exportBasePath; this.IntermediateFolder = intermediateFolder; @@ -29,6 +30,8 @@ namespace WixToolset.Core.WindowsInstaller.Unbind private IMessaging Messaging { get; } + private IBackendHelper BackendHelper { get; } + private string TransformFile { get; } private string ExportBasePath { get; } @@ -87,7 +90,7 @@ namespace WixToolset.Core.WindowsInstaller.Unbind msiDatabase.ApplyTransform(this.TransformFile, TransformErrorConditions.All | TransformErrorConditions.ViewTransform); // unbind the database - var unbindCommand = new UnbindDatabaseCommand(this.Messaging, msiDatabase, msiDatabaseFile, OutputType.Product, this.ExportBasePath, this.IntermediateFolder, false, false, skipSummaryInfo: true); + var unbindCommand = new UnbindDatabaseCommand(this.Messaging, this.BackendHelper, msiDatabase, msiDatabaseFile, OutputType.Product, this.ExportBasePath, this.IntermediateFolder, false, false, skipSummaryInfo: true); var transformViewOutput = unbindCommand.Execute(); // index the added and possibly modified rows (added rows may also appears as modified rows) @@ -157,7 +160,7 @@ namespace WixToolset.Core.WindowsInstaller.Unbind } // unbind the database - var unbindCommand = new UnbindDatabaseCommand(this.Messaging, msiDatabase, msiDatabaseFile, OutputType.Product, this.ExportBasePath, this.IntermediateFolder, false, false, skipSummaryInfo: true); + var unbindCommand = new UnbindDatabaseCommand(this.Messaging, this.BackendHelper, msiDatabase, msiDatabaseFile, OutputType.Product, this.ExportBasePath, this.IntermediateFolder, false, false, skipSummaryInfo: true); var output = unbindCommand.Execute(); // index all the rows to easily find modified rows -- cgit v1.2.3-55-g6feb