aboutsummaryrefslogtreecommitdiff
path: root/src/WixToolset.Core.WindowsInstaller
diff options
context:
space:
mode:
Diffstat (limited to 'src/WixToolset.Core.WindowsInstaller')
-rw-r--r--src/WixToolset.Core.WindowsInstaller/Bind/AssignMediaCommand.cs3
-rw-r--r--src/WixToolset.Core.WindowsInstaller/Bind/CabinetBuilder.cs1
-rw-r--r--src/WixToolset.Core.WindowsInstaller/Bind/CabinetResolver.cs2
-rw-r--r--src/WixToolset.Core.WindowsInstaller/Bind/CabinetWorkItem.cs11
-rw-r--r--src/WixToolset.Core.WindowsInstaller/Bind/CreateCabinetsCommand.cs6
-rw-r--r--src/WixToolset.Core.WindowsInstaller/Bind/GenerateDatabaseCommand.cs2
-rw-r--r--src/WixToolset.Core.WindowsInstaller/Bind/GenerateTransformCommand.cs6
-rw-r--r--src/WixToolset.Core.WindowsInstaller/Bind/UpdateTransformsWithFileFacades.cs2
-rw-r--r--src/WixToolset.Core.WindowsInstaller/Decompile/Decompiler.cs21
-rw-r--r--src/WixToolset.Core.WindowsInstaller/Msi/MsiInterop.cs2
-rw-r--r--src/WixToolset.Core.WindowsInstaller/RowDictionary.cs12
-rw-r--r--src/WixToolset.Core.WindowsInstaller/Unbinder.cs2
-rw-r--r--src/WixToolset.Core.WindowsInstaller/Validator.cs2
-rw-r--r--src/WixToolset.Core.WindowsInstaller/ValidatorExtension.cs6
-rw-r--r--src/WixToolset.Core.WindowsInstaller/WixToolset.Core.WindowsInstaller.csproj3
-rw-r--r--src/WixToolset.Core.WindowsInstaller/WixToolsetCoreServiceProviderExtensions.cs8
16 files changed, 48 insertions, 41 deletions
diff --git a/src/WixToolset.Core.WindowsInstaller/Bind/AssignMediaCommand.cs b/src/WixToolset.Core.WindowsInstaller/Bind/AssignMediaCommand.cs
index eccc97d2..301c3246 100644
--- a/src/WixToolset.Core.WindowsInstaller/Bind/AssignMediaCommand.cs
+++ b/src/WixToolset.Core.WindowsInstaller/Bind/AssignMediaCommand.cs
@@ -115,7 +115,6 @@ namespace WixToolset.Core.WindowsInstaller.Bind
115 /// <summary> 115 /// <summary>
116 /// Assign files to cabinets based on MediaTemplate authoring. 116 /// Assign files to cabinets based on MediaTemplate authoring.
117 /// </summary> 117 /// </summary>
118 /// <param name="fileFacades">FileRowCollection</param>
119 private void AutoAssignFiles(List<MediaSymbol> mediaTable, Dictionary<MediaSymbol, List<FileFacade>> filesByCabinetMedia, List<FileFacade> uncompressedFiles) 118 private void AutoAssignFiles(List<MediaSymbol> mediaTable, Dictionary<MediaSymbol, List<FileFacade>> filesByCabinetMedia, List<FileFacade> uncompressedFiles)
120 { 119 {
121 const int MaxCabIndex = 999; 120 const int MaxCabIndex = 999;
@@ -295,7 +294,7 @@ namespace WixToolset.Core.WindowsInstaller.Bind
295 /// <summary> 294 /// <summary>
296 /// Adds a symbol to the section with cab name template filled in. 295 /// Adds a symbol to the section with cab name template filled in.
297 /// </summary> 296 /// </summary>
298 /// <param name="mediaTable"></param> 297 /// <param name="mediaTemplateSymbol"></param>
299 /// <param name="cabIndex"></param> 298 /// <param name="cabIndex"></param>
300 /// <returns></returns> 299 /// <returns></returns>
301 private MediaSymbol AddMediaSymbol(WixMediaTemplateSymbol mediaTemplateSymbol, int cabIndex) 300 private MediaSymbol AddMediaSymbol(WixMediaTemplateSymbol mediaTemplateSymbol, int cabIndex)
diff --git a/src/WixToolset.Core.WindowsInstaller/Bind/CabinetBuilder.cs b/src/WixToolset.Core.WindowsInstaller/Bind/CabinetBuilder.cs
index dce89f78..382e6515 100644
--- a/src/WixToolset.Core.WindowsInstaller/Bind/CabinetBuilder.cs
+++ b/src/WixToolset.Core.WindowsInstaller/Bind/CabinetBuilder.cs
@@ -28,6 +28,7 @@ namespace WixToolset.Core.WindowsInstaller.Bind
28 /// <summary> 28 /// <summary>
29 /// Instantiate a new CabinetBuilder. 29 /// Instantiate a new CabinetBuilder.
30 /// </summary> 30 /// </summary>
31 /// <param name="messaging"></param>
31 /// <param name="threadCount">number of threads to use</param> 32 /// <param name="threadCount">number of threads to use</param>
32 /// <param name="newCabNamesCallBackAddress">Address of Binder's callback function for Cabinet Splitting</param> 33 /// <param name="newCabNamesCallBackAddress">Address of Binder's callback function for Cabinet Splitting</param>
33 public CabinetBuilder(IMessaging messaging, int threadCount, IntPtr newCabNamesCallBackAddress) 34 public CabinetBuilder(IMessaging messaging, int threadCount, IntPtr newCabNamesCallBackAddress)
diff --git a/src/WixToolset.Core.WindowsInstaller/Bind/CabinetResolver.cs b/src/WixToolset.Core.WindowsInstaller/Bind/CabinetResolver.cs
index 189c5f01..6dbcb1a1 100644
--- a/src/WixToolset.Core.WindowsInstaller/Bind/CabinetResolver.cs
+++ b/src/WixToolset.Core.WindowsInstaller/Bind/CabinetResolver.cs
@@ -13,7 +13,7 @@ namespace WixToolset.Core.WindowsInstaller.Bind
13 using WixToolset.Extensibility.Data; 13 using WixToolset.Extensibility.Data;
14 using WixToolset.Extensibility.Services; 14 using WixToolset.Extensibility.Services;
15 15
16 public class CabinetResolver 16 internal class CabinetResolver
17 { 17 {
18 public CabinetResolver(IWixToolsetServiceProvider serviceProvider, string cabCachePath, IEnumerable<IWindowsInstallerBackendBinderExtension> backendExtensions) 18 public CabinetResolver(IWixToolsetServiceProvider serviceProvider, string cabCachePath, IEnumerable<IWindowsInstallerBackendBinderExtension> backendExtensions)
19 { 19 {
diff --git a/src/WixToolset.Core.WindowsInstaller/Bind/CabinetWorkItem.cs b/src/WixToolset.Core.WindowsInstaller/Bind/CabinetWorkItem.cs
index a451229f..48f0574e 100644
--- a/src/WixToolset.Core.WindowsInstaller/Bind/CabinetWorkItem.cs
+++ b/src/WixToolset.Core.WindowsInstaller/Bind/CabinetWorkItem.cs
@@ -18,7 +18,8 @@ namespace WixToolset.Core.WindowsInstaller.Bind
18 /// <param name="cabinetFile">The cabinet file.</param> 18 /// <param name="cabinetFile">The cabinet file.</param>
19 /// <param name="maxThreshold">Maximum threshold for each cabinet.</param> 19 /// <param name="maxThreshold">Maximum threshold for each cabinet.</param>
20 /// <param name="compressionLevel">The compression level of the cabinet.</param> 20 /// <param name="compressionLevel">The compression level of the cabinet.</param>
21 /// <param name="binderFileManager">The binder file manager.</param> 21 /// <param name="modularizationSuffix">Modularization suffix used when building a Merge Module.</param>
22 /// <!--<param name="binderFileManager">The binder file manager.</param>-->
22 public CabinetWorkItem(IEnumerable<FileFacade> fileFacades, string cabinetFile, int maxThreshold, CompressionLevel compressionLevel, string modularizationSuffix /*, BinderFileManager binderFileManager*/) 23 public CabinetWorkItem(IEnumerable<FileFacade> fileFacades, string cabinetFile, int maxThreshold, CompressionLevel compressionLevel, string modularizationSuffix /*, BinderFileManager binderFileManager*/)
23 { 24 {
24 this.CabinetFile = cabinetFile; 25 this.CabinetFile = cabinetFile;
@@ -52,10 +53,10 @@ namespace WixToolset.Core.WindowsInstaller.Bind
52 /// <value>The collection of files in this cabinet.</value> 53 /// <value>The collection of files in this cabinet.</value>
53 public IEnumerable<FileFacade> FileFacades { get; } 54 public IEnumerable<FileFacade> FileFacades { get; }
54 55
55 /// <summary> 56 // <summary>
56 /// Gets the binder file manager. 57 // Gets the binder file manager.
57 /// </summary> 58 // </summary>
58 /// <value>The binder file manager.</value> 59 // <value>The binder file manager.</value>
59 //public BinderFileManager BinderFileManager { get; private set; } 60 //public BinderFileManager BinderFileManager { get; private set; }
60 61
61 /// <summary> 62 /// <summary>
diff --git a/src/WixToolset.Core.WindowsInstaller/Bind/CreateCabinetsCommand.cs b/src/WixToolset.Core.WindowsInstaller/Bind/CreateCabinetsCommand.cs
index 5c296f74..f0acd3d4 100644
--- a/src/WixToolset.Core.WindowsInstaller/Bind/CreateCabinetsCommand.cs
+++ b/src/WixToolset.Core.WindowsInstaller/Bind/CreateCabinetsCommand.cs
@@ -90,9 +90,6 @@ namespace WixToolset.Core.WindowsInstaller.Bind
90 90
91 public IEnumerable<ITrackedFile> TrackedFiles => this.trackedFiles; 91 public IEnumerable<ITrackedFile> TrackedFiles => this.trackedFiles;
92 92
93 /// <param name="output">Output to generate image for.</param>
94 /// <param name="layoutDirectory">The directory in which the image should be layed out.</param>
95 /// <param name="compressed">Flag if source image should be compressed.</param>
96 public void Execute() 93 public void Execute()
97 { 94 {
98 this.lastCabinetAddedToMediaTable = new Dictionary<string, string>(); 95 this.lastCabinetAddedToMediaTable = new Dictionary<string, string>();
@@ -177,6 +174,7 @@ namespace WixToolset.Core.WindowsInstaller.Bind
177 /// <param name="output">Output for the current database.</param> 174 /// <param name="output">Output for the current database.</param>
178 /// <param name="cabinetDir">Directory to create cabinet in.</param> 175 /// <param name="cabinetDir">Directory to create cabinet in.</param>
179 /// <param name="mediaSymbol">Media symbol containing information about the cabinet.</param> 176 /// <param name="mediaSymbol">Media symbol containing information about the cabinet.</param>
177 /// <param name="compressionLevel">Desired compression level.</param>
180 /// <param name="fileFacades">Collection of files in this cabinet.</param> 178 /// <param name="fileFacades">Collection of files in this cabinet.</param>
181 /// <returns>created CabinetWorkItem object</returns> 179 /// <returns>created CabinetWorkItem object</returns>
182 private CabinetWorkItem CreateCabinetWorkItem(WindowsInstallerData output, string cabinetDir, MediaSymbol mediaSymbol, CompressionLevel compressionLevel, IEnumerable<FileFacade> fileFacades) 180 private CabinetWorkItem CreateCabinetWorkItem(WindowsInstallerData output, string cabinetDir, MediaSymbol mediaSymbol, CompressionLevel compressionLevel, IEnumerable<FileFacade> fileFacades)
@@ -284,7 +282,7 @@ namespace WixToolset.Core.WindowsInstaller.Bind
284 /// This callback will not be called in case there is no File splitting. i.e. MaximumCabinetSizeForLargeFileSplitting was not authored 282 /// This callback will not be called in case there is no File splitting. i.e. MaximumCabinetSizeForLargeFileSplitting was not authored
285 /// </summary> 283 /// </summary>
286 /// <param name="firstCabName">The name of splitting cabinet without extention e.g. "cab1".</param> 284 /// <param name="firstCabName">The name of splitting cabinet without extention e.g. "cab1".</param>
287 /// <param name="newCabName">The name of the new cabinet that would be formed by splitting e.g. "cab1b.cab"</param> 285 /// <param name="newCabinetName">The name of the new cabinet that would be formed by splitting e.g. "cab1b.cab"</param>
288 /// <param name="fileToken">The file token of the first file present in the splitting cabinet</param> 286 /// <param name="fileToken">The file token of the first file present in the splitting cabinet</param>
289 internal void NewCabNamesCallBack([MarshalAs(UnmanagedType.LPWStr)]string firstCabName, [MarshalAs(UnmanagedType.LPWStr)]string newCabinetName, [MarshalAs(UnmanagedType.LPWStr)]string fileToken) 287 internal void NewCabNamesCallBack([MarshalAs(UnmanagedType.LPWStr)]string firstCabName, [MarshalAs(UnmanagedType.LPWStr)]string newCabinetName, [MarshalAs(UnmanagedType.LPWStr)]string fileToken)
290 { 288 {
diff --git a/src/WixToolset.Core.WindowsInstaller/Bind/GenerateDatabaseCommand.cs b/src/WixToolset.Core.WindowsInstaller/Bind/GenerateDatabaseCommand.cs
index c8fa0370..d3c65b6a 100644
--- a/src/WixToolset.Core.WindowsInstaller/Bind/GenerateDatabaseCommand.cs
+++ b/src/WixToolset.Core.WindowsInstaller/Bind/GenerateDatabaseCommand.cs
@@ -55,7 +55,7 @@ namespace WixToolset.Core.WindowsInstaller.Bind
55 public List<ITrackedFile> GeneratedTemporaryFiles { get; } = new List<ITrackedFile>(); 55 public List<ITrackedFile> GeneratedTemporaryFiles { get; } = new List<ITrackedFile>();
56 56
57 /// <summary> 57 /// <summary>
58 /// Whether to use a subdirectory based on the <paramref name="databaseFile"/> file name for intermediate files. 58 /// Whether to use a subdirectory based on the database file name for intermediate files.
59 /// </summary> 59 /// </summary>
60 private bool SuppressAddingValidationRows { get; } 60 private bool SuppressAddingValidationRows { get; }
61 61
diff --git a/src/WixToolset.Core.WindowsInstaller/Bind/GenerateTransformCommand.cs b/src/WixToolset.Core.WindowsInstaller/Bind/GenerateTransformCommand.cs
index 121ffb1b..6dcb1096 100644
--- a/src/WixToolset.Core.WindowsInstaller/Bind/GenerateTransformCommand.cs
+++ b/src/WixToolset.Core.WindowsInstaller/Bind/GenerateTransformCommand.cs
@@ -15,7 +15,7 @@ namespace WixToolset.Core.WindowsInstaller
15 /// <summary> 15 /// <summary>
16 /// Creates a transform by diffing two outputs. 16 /// Creates a transform by diffing two outputs.
17 /// </summary> 17 /// </summary>
18 public sealed class GenerateTransformCommand 18 internal class GenerateTransformCommand
19 { 19 {
20 private const char sectionDelimiter = '/'; 20 private const char sectionDelimiter = '/';
21 private readonly IMessaging messaging; 21 private readonly IMessaging messaging;
@@ -62,10 +62,6 @@ namespace WixToolset.Core.WindowsInstaller
62 /// <summary> 62 /// <summary>
63 /// Creates a transform by diffing two outputs. 63 /// Creates a transform by diffing two outputs.
64 /// </summary> 64 /// </summary>
65 /// <param name="targetOutput">The target output.</param>
66 /// <param name="updatedOutput">The updated output.</param>
67 /// <param name="validationFlags"></param>
68 /// <returns>The transform.</returns>
69 public WindowsInstallerData Execute() 65 public WindowsInstallerData Execute()
70 { 66 {
71 var targetOutput = this.TargetOutput; 67 var targetOutput = this.TargetOutput;
diff --git a/src/WixToolset.Core.WindowsInstaller/Bind/UpdateTransformsWithFileFacades.cs b/src/WixToolset.Core.WindowsInstaller/Bind/UpdateTransformsWithFileFacades.cs
index 944fb224..4e716a47 100644
--- a/src/WixToolset.Core.WindowsInstaller/Bind/UpdateTransformsWithFileFacades.cs
+++ b/src/WixToolset.Core.WindowsInstaller/Bind/UpdateTransformsWithFileFacades.cs
@@ -384,7 +384,7 @@ namespace WixToolset.Core.WindowsInstaller.Bind
384 /// <summary> 384 /// <summary>
385 /// Signal a warning if a non-keypath file was changed in a patch without also changing the keypath file of the component. 385 /// Signal a warning if a non-keypath file was changed in a patch without also changing the keypath file of the component.
386 /// </summary> 386 /// </summary>
387 /// <param name="output">The output to validate.</param> 387 /// <param name="transform">The output to validate.</param>
388 private void ValidateFileRowChanges(WindowsInstallerData transform) 388 private void ValidateFileRowChanges(WindowsInstallerData transform)
389 { 389 {
390 var componentTable = transform.Tables["Component"]; 390 var componentTable = transform.Tables["Component"];
diff --git a/src/WixToolset.Core.WindowsInstaller/Decompile/Decompiler.cs b/src/WixToolset.Core.WindowsInstaller/Decompile/Decompiler.cs
index 2288cedf..29e15c91 100644
--- a/src/WixToolset.Core.WindowsInstaller/Decompile/Decompiler.cs
+++ b/src/WixToolset.Core.WindowsInstaller/Decompile/Decompiler.cs
@@ -248,19 +248,20 @@ namespace WixToolset.Core.WindowsInstaller
248 private XElement GetIndexedElement(string table, params string[] primaryKey) => this.IndexedElements[String.Concat(table, ':', String.Join(DecompilerConstants.PrimaryKeyDelimiterString, primaryKey))]; 248 private XElement GetIndexedElement(string table, params string[] primaryKey) => this.IndexedElements[String.Concat(table, ':', String.Join(DecompilerConstants.PrimaryKeyDelimiterString, primaryKey))];
249 249
250 /// <summary> 250 /// <summary>
251 /// Gets the element corresponding to the primary key of the given table. 251 /// Tries to get the element corresponding to the primary key of the given table.
252 /// </summary> 252 /// </summary>
253 /// <param name="table">The table corresponding to the element.</param> 253 /// <param name="row">The table corresponding to the element.</param>
254 /// <param name="primaryKey">The primary key corresponding to the element.</param> 254 /// <param name="xElement">The indexed element.</param>
255 /// <returns>The indexed element.</returns> 255 /// <returns>Whether the element was found.</returns>
256 private bool TryGetIndexedElement(WixToolset.Data.WindowsInstaller.Row row, out XElement xElement) => this.TryGetIndexedElement(row.TableDefinition.Name, out xElement, row.GetPrimaryKey(DecompilerConstants.PrimaryKeyDelimiter)); 256 private bool TryGetIndexedElement(WixToolset.Data.WindowsInstaller.Row row, out XElement xElement) => this.TryGetIndexedElement(row.TableDefinition.Name, out xElement, row.GetPrimaryKey(DecompilerConstants.PrimaryKeyDelimiter));
257 257
258 /// <summary> 258 /// <summary>
259 /// Gets the element corresponding to the primary key of the given table. 259 /// Tries to get the element corresponding to the primary key of the given table.
260 /// </summary> 260 /// </summary>
261 /// <param name="table">The table corresponding to the element.</param> 261 /// <param name="table">The table corresponding to the element.</param>
262 /// <param name="xElement">The indexed element.</param>
262 /// <param name="primaryKey">The primary key corresponding to the element.</param> 263 /// <param name="primaryKey">The primary key corresponding to the element.</param>
263 /// <returns>The indexed element.</returns> 264 /// <returns>Whether the element was found.</returns>
264 private bool TryGetIndexedElement(string table, out XElement xElement, params string[] primaryKey) => this.IndexedElements.TryGetValue(String.Concat(table, ':', String.Join(DecompilerConstants.PrimaryKeyDelimiterString, primaryKey)), out xElement); 265 private bool TryGetIndexedElement(string table, out XElement xElement, params string[] primaryKey) => this.IndexedElements.TryGetValue(String.Concat(table, ':', String.Join(DecompilerConstants.PrimaryKeyDelimiterString, primaryKey)), out xElement);
265 266
266 /// <summary> 267 /// <summary>
@@ -276,8 +277,9 @@ namespace WixToolset.Core.WindowsInstaller
276 /// <summary> 277 /// <summary>
277 /// Index an element by its corresponding row. 278 /// Index an element by its corresponding row.
278 /// </summary> 279 /// </summary>
279 /// <param name="row">The row corresponding to the element.</param>
280 /// <param name="element">The element to index.</param> 280 /// <param name="element">The element to index.</param>
281 /// <param name="table"></param>
282 /// <param name="primaryKey"></param>
281 private void IndexElement(XElement element, string table, params string[] primaryKey) 283 private void IndexElement(XElement element, string table, params string[] primaryKey)
282 { 284 {
283 this.IndexedElements.Add(String.Concat(table, ':', String.Join(DecompilerConstants.PrimaryKeyDelimiterString, primaryKey)), element); 285 this.IndexedElements.Add(String.Concat(table, ':', String.Join(DecompilerConstants.PrimaryKeyDelimiterString, primaryKey)), element);
@@ -342,7 +344,7 @@ namespace WixToolset.Core.WindowsInstaller
342 /// Set the common control attributes in a control element. 344 /// Set the common control attributes in a control element.
343 /// </summary> 345 /// </summary>
344 /// <param name="attributes">The control attributes.</param> 346 /// <param name="attributes">The control attributes.</param>
345 /// <param name="control">The control element.</param> 347 /// <param name="xControl">The control element.</param>
346 private static void SetControlAttributes(int attributes, XElement xControl) 348 private static void SetControlAttributes(int attributes, XElement xControl)
347 { 349 {
348 if (0 == (attributes & WindowsInstallerConstants.MsidbControlAttributesEnabled)) 350 if (0 == (attributes & WindowsInstallerConstants.MsidbControlAttributesEnabled))
@@ -2424,6 +2426,7 @@ namespace WixToolset.Core.WindowsInstaller
2424 /// Initialize decompilation. 2426 /// Initialize decompilation.
2425 /// </summary> 2427 /// </summary>
2426 /// <param name="tables">The collection of all tables.</param> 2428 /// <param name="tables">The collection of all tables.</param>
2429 /// <param name="codepage"></param>
2427 private void InitializeDecompile(TableIndexedCollection tables, int codepage) 2430 private void InitializeDecompile(TableIndexedCollection tables, int codepage)
2428 { 2431 {
2429 // reset all the state information 2432 // reset all the state information
@@ -2983,7 +2986,7 @@ namespace WixToolset.Core.WindowsInstaller
2983 /// <summary> 2986 /// <summary>
2984 /// Decompile the _SummaryInformation table. 2987 /// Decompile the _SummaryInformation table.
2985 /// </summary> 2988 /// </summary>
2986 /// <param name="table">The table to decompile.</param> 2989 /// <param name="tables">The tables to decompile.</param>
2987 private void FinalizeSummaryInformationStream(TableIndexedCollection tables) 2990 private void FinalizeSummaryInformationStream(TableIndexedCollection tables)
2988 { 2991 {
2989 var table = tables["_SummaryInformation"]; 2992 var table = tables["_SummaryInformation"];
diff --git a/src/WixToolset.Core.WindowsInstaller/Msi/MsiInterop.cs b/src/WixToolset.Core.WindowsInstaller/Msi/MsiInterop.cs
index 8d195033..ae585612 100644
--- a/src/WixToolset.Core.WindowsInstaller/Msi/MsiInterop.cs
+++ b/src/WixToolset.Core.WindowsInstaller/Msi/MsiInterop.cs
@@ -177,7 +177,7 @@ namespace WixToolset.Core.WindowsInstaller.Msi
177 /// <summary> 177 /// <summary>
178 /// Class exposing static functions and structs from MSI API. 178 /// Class exposing static functions and structs from MSI API.
179 /// </summary> 179 /// </summary>
180 public sealed class MsiInterop 180 internal sealed class MsiInterop
181 { 181 {
182 // Patching constants 182 // Patching constants
183 public const int MsiMaxStreamNameLength = 62; // http://msdn2.microsoft.com/library/aa370551.aspx 183 public const int MsiMaxStreamNameLength = 62; // http://msdn2.microsoft.com/library/aa370551.aspx
diff --git a/src/WixToolset.Core.WindowsInstaller/RowDictionary.cs b/src/WixToolset.Core.WindowsInstaller/RowDictionary.cs
index 101ebefd..bbb97c25 100644
--- a/src/WixToolset.Core.WindowsInstaller/RowDictionary.cs
+++ b/src/WixToolset.Core.WindowsInstaller/RowDictionary.cs
@@ -7,13 +7,13 @@ namespace WixToolset.Core.WindowsInstaller
7 using WixToolset.Data.WindowsInstaller; 7 using WixToolset.Data.WindowsInstaller;
8 8
9 /// <summary> 9 /// <summary>
10 /// A dictionary of rows. Unlike the <see cref="RowIndexedCollection"/> this 10 /// A dictionary of rows. Unlike the RowIndexedList this
11 /// will throw when multiple rows with the same key are added. 11 /// will throw when multiple rows with the same key are added.
12 /// </summary> 12 /// </summary>
13 public sealed class RowDictionary<T> : Dictionary<string, T> where T : Row 13 internal sealed class RowDictionary<T> : Dictionary<string, T> where T : Row
14 { 14 {
15 /// <summary> 15 /// <summary>
16 /// Creates an empty <see cref="RowDictionary"/>. 16 /// Creates an empty <see cref="RowDictionary{T}"/>.
17 /// </summary> 17 /// </summary>
18 public RowDictionary() 18 public RowDictionary()
19 : base(StringComparer.InvariantCulture) 19 : base(StringComparer.InvariantCulture)
@@ -21,9 +21,9 @@ namespace WixToolset.Core.WindowsInstaller
21 } 21 }
22 22
23 /// <summary> 23 /// <summary>
24 /// Creates and populates a <see cref="RowDictionary"/> with the rows from the given enumerator. 24 /// Creates and populates a <see cref="RowDictionary{T}"/> with the rows from the given enumerator.
25 /// </summary> 25 /// </summary>
26 /// <param name="Rows">Rows to add.</param> 26 /// <param name="rows">Rows to add.</param>
27 public RowDictionary(IEnumerable<T> rows) 27 public RowDictionary(IEnumerable<T> rows)
28 : this() 28 : this()
29 { 29 {
@@ -34,7 +34,7 @@ namespace WixToolset.Core.WindowsInstaller
34 } 34 }
35 35
36 /// <summary> 36 /// <summary>
37 /// Creates and populates a <see cref="RowDictionary"/> with the rows from the given <see cref="Table"/>. 37 /// Creates and populates a <see cref="RowDictionary{T}"/> with the rows from the given <see cref="Table"/>.
38 /// </summary> 38 /// </summary>
39 /// <param name="table">The table to index.</param> 39 /// <param name="table">The table to index.</param>
40 /// <remarks> 40 /// <remarks>
diff --git a/src/WixToolset.Core.WindowsInstaller/Unbinder.cs b/src/WixToolset.Core.WindowsInstaller/Unbinder.cs
index 2ca0b557..a2f02269 100644
--- a/src/WixToolset.Core.WindowsInstaller/Unbinder.cs
+++ b/src/WixToolset.Core.WindowsInstaller/Unbinder.cs
@@ -11,7 +11,7 @@ namespace WixToolset.Core
11 /// <summary> 11 /// <summary>
12 /// Unbinder core of the WiX toolset. 12 /// Unbinder core of the WiX toolset.
13 /// </summary> 13 /// </summary>
14 public sealed class Unbinder 14 internal sealed class Unbinder
15 { 15 {
16 public IEnumerable<IBackendFactory> BackendFactories { get; } 16 public IEnumerable<IBackendFactory> BackendFactories { get; }
17 17
diff --git a/src/WixToolset.Core.WindowsInstaller/Validator.cs b/src/WixToolset.Core.WindowsInstaller/Validator.cs
index 72b09ebc..e8117de7 100644
--- a/src/WixToolset.Core.WindowsInstaller/Validator.cs
+++ b/src/WixToolset.Core.WindowsInstaller/Validator.cs
@@ -22,7 +22,7 @@ namespace WixToolset.Core.WindowsInstaller
22 /// <summary> 22 /// <summary>
23 /// Runs internal consistency evaluators (ICEs) from cub files against a database. 23 /// Runs internal consistency evaluators (ICEs) from cub files against a database.
24 /// </summary> 24 /// </summary>
25 public sealed class Validator 25 internal sealed class Validator
26 { 26 {
27 private string actionName; 27 private string actionName;
28 private StringCollection cubeFiles; 28 private StringCollection cubeFiles;
diff --git a/src/WixToolset.Core.WindowsInstaller/ValidatorExtension.cs b/src/WixToolset.Core.WindowsInstaller/ValidatorExtension.cs
index 5ce04147..968ab387 100644
--- a/src/WixToolset.Core.WindowsInstaller/ValidatorExtension.cs
+++ b/src/WixToolset.Core.WindowsInstaller/ValidatorExtension.cs
@@ -52,7 +52,7 @@ namespace WixToolset.Extensibility
52 /// Called at the beginning of the validation of a database file. 52 /// Called at the beginning of the validation of a database file.
53 /// </summary> 53 /// </summary>
54 /// <remarks> 54 /// <remarks>
55 /// <para>The <see cref="Validator"/> will set 55 /// <para>The Validator will set
56 /// <see cref="DatabaseFile"/> before calling InitializeValidator.</para> 56 /// <see cref="DatabaseFile"/> before calling InitializeValidator.</para>
57 /// <para><b>Notes to Inheritors:</b> When overriding 57 /// <para><b>Notes to Inheritors:</b> When overriding
58 /// <b>InitializeValidator</b> in a derived class, be sure to call 58 /// <b>InitializeValidator</b> in a derived class, be sure to call
@@ -83,7 +83,7 @@ namespace WixToolset.Extensibility
83 } 83 }
84 84
85 /// <summary> 85 /// <summary>
86 /// Logs a message from the <see cref="Validator"/>. 86 /// Logs a message from the Validator.
87 /// </summary> 87 /// </summary>
88 /// <param name="message">A <see cref="String"/> of tab-delmited tokens 88 /// <param name="message">A <see cref="String"/> of tab-delmited tokens
89 /// in the validation message.</param> 89 /// in the validation message.</param>
@@ -93,7 +93,7 @@ namespace WixToolset.Extensibility
93 } 93 }
94 94
95 /// <summary> 95 /// <summary>
96 /// Logs a message from the <see cref="Validator"/>. 96 /// Logs a message from the Validator.
97 /// </summary> 97 /// </summary>
98 /// <param name="message">A <see cref="String"/> of tab-delmited tokens 98 /// <param name="message">A <see cref="String"/> of tab-delmited tokens
99 /// in the validation message.</param> 99 /// in the validation message.</param>
diff --git a/src/WixToolset.Core.WindowsInstaller/WixToolset.Core.WindowsInstaller.csproj b/src/WixToolset.Core.WindowsInstaller/WixToolset.Core.WindowsInstaller.csproj
index 9836acb8..900115ec 100644
--- a/src/WixToolset.Core.WindowsInstaller/WixToolset.Core.WindowsInstaller.csproj
+++ b/src/WixToolset.Core.WindowsInstaller/WixToolset.Core.WindowsInstaller.csproj
@@ -9,6 +9,7 @@
9 <Title>WiX Toolset Core Windows Installer</Title> 9 <Title>WiX Toolset Core Windows Installer</Title>
10 <DebugType>embedded</DebugType> 10 <DebugType>embedded</DebugType>
11 <PublishRepositoryUrl>true</PublishRepositoryUrl> 11 <PublishRepositoryUrl>true</PublishRepositoryUrl>
12 <CreateDocumentationFile>true</CreateDocumentationFile>
12 </PropertyGroup> 13 </PropertyGroup>
13 14
14 <ItemGroup> 15 <ItemGroup>
@@ -17,7 +18,7 @@
17 18
18 <ItemGroup> 19 <ItemGroup>
19 <PackageReference Include="WixToolset.Core.Native" Version="4.0.*" /> 20 <PackageReference Include="WixToolset.Core.Native" Version="4.0.*" />
20 <PackageReference Include="WixToolset.Dtf.WindowsInstaller" Version="4.0.*" NoWarn="NU1701" /> 21 <PackageReference Include="WixToolset.Dtf.WindowsInstaller" Version="4.0.*" />
21 </ItemGroup> 22 </ItemGroup>
22 23
23 <ItemGroup> 24 <ItemGroup>
diff --git a/src/WixToolset.Core.WindowsInstaller/WixToolsetCoreServiceProviderExtensions.cs b/src/WixToolset.Core.WindowsInstaller/WixToolsetCoreServiceProviderExtensions.cs
index 15fbf679..c69f1af1 100644
--- a/src/WixToolset.Core.WindowsInstaller/WixToolsetCoreServiceProviderExtensions.cs
+++ b/src/WixToolset.Core.WindowsInstaller/WixToolsetCoreServiceProviderExtensions.cs
@@ -7,8 +7,16 @@ namespace WixToolset.Core.WindowsInstaller
7 using WixToolset.Core.WindowsInstaller.ExtensibilityServices; 7 using WixToolset.Core.WindowsInstaller.ExtensibilityServices;
8 using WixToolset.Extensibility.Services; 8 using WixToolset.Extensibility.Services;
9 9
10 /// <summary>
11 /// Extensions methods for adding WindowsInstaller services.
12 /// </summary>
10 public static class WixToolsetCoreServiceProviderExtensions 13 public static class WixToolsetCoreServiceProviderExtensions
11 { 14 {
15 /// <summary>
16 /// Adds WindowsInstaller services.
17 /// </summary>
18 /// <param name="coreProvider"></param>
19 /// <returns></returns>
12 public static IWixToolsetCoreServiceProvider AddWindowsInstallerBackend(this IWixToolsetCoreServiceProvider coreProvider) 20 public static IWixToolsetCoreServiceProvider AddWindowsInstallerBackend(this IWixToolsetCoreServiceProvider coreProvider)
13 { 21 {
14 AddServices(coreProvider); 22 AddServices(coreProvider);