Enable XML doc and delete obsolete IParseHelper methods.
Sean Hall committed
Dec 18, 2020 at 20:09 UTC
f1b37c3a4d620298f8c646ac0a308a6fae1b662d
64 files changed
+300
-49
src/CSharp.Build.props
+1
@@ -8,5 +8,6 @@
8
<CheckForOverflowUnderflow>true</CheckForOverflowUnderflow>
9
<SignAssembly>true</SignAssembly>
10
<AssemblyOriginatorKeyFile>$([System.IO.Path]::GetFullPath($(MSBuildThisFileDirectory)wix.snk))</AssemblyOriginatorKeyFile>
11
+ <NBGV_EmitThisAssemblyClass>false</NBGV_EmitThisAssemblyClass>
12
</PropertyGroup>
13
</Project>
src/Directory.Build.targets
+8
@@ -9,6 +9,11 @@
9
See the original here: https://github.com/dotnet/sdk/issues/1151#issuecomment-385133284
10
-->
11
<Project>
12
+ <PropertyGroup>
13
+ <CreateDocumentation Condition=" '$(CreateDocumentationFile)'!='true' ">false</CreateDocumentation>
14
+ <DocumentationFile Condition=" '$(CreateDocumentationFile)'=='true' ">$(OutputPath)\$(AssemblyName).xml</DocumentationFile>
15
+ </PropertyGroup>
16
+
17
<PropertyGroup>
18
<ReplacePackageReferences>true</ReplacePackageReferences>
19
<TheSolutionPath Condition=" '$(NCrunch)'=='' ">$(SolutionPath)</TheSolutionPath>
@@ -45,4 +50,7 @@
50
51
</When>
52
</Choose>
53
+
54
+ <Import Project="Wix.Build.targets" Condition=" Exists('Wix.Build.targets') And '$(MSBuildProjectExtension)'=='.wixproj' " />
55
+ <Import Project="Custom.Build.targets" Condition=" Exists('Custom.Build.targets') " />
56
</Project>
src/WixToolset.Extensibility/BaseBurnBackendExtension.cs
+42
@@ -9,6 +9,9 @@ namespace WixToolset.Extensibility
9
using WixToolset.Extensibility.Data;
10
using WixToolset.Extensibility.Services;
11
12
+ /// <summary>
13
+ /// Base class for creating a Burn backend extension.
14
+ /// </summary>
15
public abstract class BaseBurnBackendExtension : IBurnBackendExtension
16
{
17
/// <summary>
@@ -31,14 +34,25 @@ namespace WixToolset.Extensibility
34
/// </summary>
35
protected virtual IEnumerable<IntermediateSymbolDefinition> SymbolDefinitions => Enumerable.Empty<IntermediateSymbolDefinition>();
36
37
+ /// <summary>
38
+ /// Called after all output changes occur and right before the output is bound into its final format.
39
+ /// </summary>
40
public virtual void BundleFinalize()
41
{
42
}
43
44
+ /// <summary>
45
+ /// Called after output is bound into its final format.
46
+ /// </summary>
47
+ /// <param name="result"></param>
48
public virtual void PostBackendBind(IBindResult result)
49
{
50
}
51
52
+ /// <summary>
53
+ /// Called before binding occurs.
54
+ /// </summary>
55
+ /// <param name="context"></param>
56
public virtual void PreBackendBind(IBindContext context)
57
{
58
this.Context = context;
@@ -46,16 +60,44 @@ namespace WixToolset.Extensibility
60
this.BackendHelper = context.ServiceProvider.GetService<IBurnBackendHelper>();
61
}
62
63
+ /// <summary>
64
+ ///
65
+ /// </summary>
66
+ /// <param name="source"></param>
67
+ /// <param name="relatedSource"></param>
68
+ /// <param name="type"></param>
69
+ /// <param name="sourceLineNumbers"></param>
70
+ /// <param name="bindStage"></param>
71
+ /// <returns></returns>
72
public virtual IResolveFileResult ResolveRelatedFile(string source, string relatedSource, string type, SourceLineNumber sourceLineNumbers, BindStage bindStage)
73
{
74
return null;
75
}
76
77
+ /// <summary>
78
+ ///
79
+ /// </summary>
80
+ /// <param name="url"></param>
81
+ /// <param name="fallbackUrl"></param>
82
+ /// <param name="packageId"></param>
83
+ /// <param name="payloadId"></param>
84
+ /// <param name="fileName"></param>
85
+ /// <returns></returns>
86
public virtual string ResolveUrl(string url, string fallbackUrl, string packageId, string payloadId, string fileName)
87
{
88
return null;
89
}
90
91
+ /// <summary>
92
+ /// Called for each extension symbol that hasn't been handled yet.
93
+ /// Use IBurnBackendHelper to add data to the appropriate data manifest.
94
+ /// </summary>
95
+ /// <param name="section">The linked section.</param>
96
+ /// <param name="symbol">The current symbol.</param>
97
+ /// <returns>
98
+ /// True if the extension handled the symbol, false otherwise.
99
+ /// The Burn backend will warn on all unhandled symbols.
100
+ /// </returns>
101
public virtual bool TryAddSymbolToDataManifest(IntermediateSection section, IntermediateSymbol symbol)
102
{
103
if (this.SymbolDefinitions.Any(t => t == symbol.Definition) &&
src/WixToolset.Extensibility/BaseCompilerExtension.cs
+3
-13
@@ -52,34 +52,24 @@ namespace WixToolset.Extensibility
52
}
53
54
/// <summary>
55
- /// Processes an attribute for the Compiler.
55
+ /// See <see cref="ICompilerExtension.ParseAttribute(Intermediate, IntermediateSection, XElement, XAttribute, IDictionary{string, string})"/>
56
/// </summary>
57
- /// <param name="parentElement">Parent element of attribute.</param>
58
- /// <param name="attribute">Attribute to process.</param>
59
- /// <param name="context">Extra information about the context in which this element is being parsed.</param>
57
public virtual void ParseAttribute(Intermediate intermediate, IntermediateSection section, XElement parentElement, XAttribute attribute, IDictionary<string, string> context)
58
{
59
this.ParseHelper.UnexpectedAttribute(parentElement, attribute);
60
}
61
62
/// <summary>
66
- /// Processes an element for the Compiler.
63
+ /// See <see cref="ICompilerExtension.ParseElement(Intermediate, IntermediateSection, XElement, XElement, IDictionary{string, string})"/>
64
/// </summary>
68
- /// <param name="parentElement">Parent element of element to process.</param>
69
- /// <param name="element">Element to process.</param>
70
- /// <param name="contextValues">Extra information about the context in which this element is being parsed.</param>
65
public virtual void ParseElement(Intermediate intermediate, IntermediateSection section, XElement parentElement, XElement element, IDictionary<string, string> context)
66
{
67
this.ParseHelper.UnexpectedElement(parentElement, element);
68
}
69
70
/// <summary>
77
- /// Processes an element for the Compiler, with the ability to supply a component keypath.
71
+ /// See <see cref="ICompilerExtension.ParsePossibleKeyPathElement(Intermediate, IntermediateSection, XElement, XElement, IDictionary{string, string})"/>
72
/// </summary>
79
- /// <param name="parentElement">Parent element of element to process.</param>
80
- /// <param name="element">Element to process.</param>
81
- /// <param name="keyPath">Explicit key path.</param>
82
- /// <param name="contextValues">Extra information about the context in which this element is being parsed.</param>
73
public virtual IComponentKeyPath ParsePossibleKeyPathElement(Intermediate intermediate, IntermediateSection section, XElement parentElement, XElement element, IDictionary<string, string> context)
74
{
75
this.ParseElement(intermediate, section, parentElement, element, context);
src/WixToolset.Extensibility/BaseExtensionCommandLine.cs
+18
@@ -7,23 +7,41 @@ namespace WixToolset.Extensibility
7
using WixToolset.Extensibility.Data;
8
using WixToolset.Extensibility.Services;
9
10
+ /// <summary>
11
+ /// Base class for extensions to be able to parse the command-line.
12
+ /// </summary>
13
public abstract class BaseExtensionCommandLine : IExtensionCommandLine
14
{
15
+ /// <summary>
16
+ /// See <see cref="IExtensionCommandLine.CommandLineSwitches" />
17
+ /// </summary>
18
public virtual IEnumerable<ExtensionCommandLineSwitch> CommandLineSwitches => Enumerable.Empty<ExtensionCommandLineSwitch>();
19
20
+ /// <summary>
21
+ /// See <see cref="IExtensionCommandLine.PostParse" />
22
+ /// </summary>
23
public virtual void PostParse()
24
{
25
}
26
27
+ /// <summary>
28
+ /// See <see cref="IExtensionCommandLine.PreParse" />
29
+ /// </summary>
30
public virtual void PreParse(ICommandLineContext context)
31
{
32
}
33
34
+ /// <summary>
35
+ /// See <see cref="IExtensionCommandLine.TryParseArgument" />
36
+ /// </summary>
37
public virtual bool TryParseArgument(ICommandLineParser parser, string argument)
38
{
39
return false;
40
}
41
42
+ /// <summary>
43
+ /// See <see cref="IExtensionCommandLine.TryParseCommand" />
44
+ /// </summary>
45
public virtual bool TryParseCommand(ICommandLineParser parser, string argument, out ICommandLineCommand command)
46
{
47
command = null;
src/WixToolset.Extensibility/BaseExtensionData.cs
+9
@@ -9,13 +9,22 @@ namespace WixToolset.Extensibility
9
/// </summary>
10
public abstract class BaseExtensionData : IExtensionData
11
{
12
+ /// <summary>
13
+ /// See <see cref="IExtensionData.DefaultCulture"/>
14
+ /// </summary>
15
public virtual string DefaultCulture => null;
16
17
+ /// <summary>
18
+ /// See <see cref="IExtensionData.GetLibrary"/>
19
+ /// </summary>
20
public virtual Intermediate GetLibrary(ISymbolDefinitionCreator symbolDefinitions)
21
{
22
return null;
23
}
24
25
+ /// <summary>
26
+ /// See <see cref="IExtensionData.TryGetSymbolDefinitionByName"/>
27
+ /// </summary>
28
public virtual bool TryGetSymbolDefinitionByName(string name, out IntermediateSymbolDefinition symbolDefinition)
29
{
30
symbolDefinition = null;
src/WixToolset.Extensibility/BaseExtensionFactory.cs
+6
@@ -12,8 +12,14 @@ namespace WixToolset.Extensibility
12
/// </summary>
13
public abstract class BaseExtensionFactory : IExtensionFactory
14
{
15
+ /// <summary>
16
+ /// The extension types of the WiX extension.
17
+ /// </summary>
18
protected abstract IEnumerable<Type> ExtensionTypes { get; }
19
20
+ /// <summary>
21
+ /// See <see cref="IExtensionFactory.TryCreateExtension(Type, out object)"/>
22
+ /// </summary>
23
public virtual bool TryCreateExtension(Type extensionType, out object extension)
24
{
25
extension = null;
src/WixToolset.Extensibility/BaseLayoutExtension.cs
+12
@@ -30,11 +30,23 @@ namespace WixToolset.Extensibility
30
this.Messaging = context.ServiceProvider.GetService<IMessaging>();
31
}
32
33
+ /// <summary>
34
+ /// See <see cref="ILayoutExtension.CopyFile(string, string)"/>
35
+ /// </summary>
36
+ /// <param name="source"></param>
37
+ /// <param name="destination"></param>
38
+ /// <returns></returns>
39
public virtual bool CopyFile(string source, string destination)
40
{
41
return false;
42
}
43
44
+ /// <summary>
45
+ /// See <see cref="ILayoutExtension.MoveFile(string, string)"/>
46
+ /// </summary>
47
+ /// <param name="source"></param>
48
+ /// <param name="destination"></param>
49
+ /// <returns></returns>
50
public virtual bool MoveFile(string source, string destination)
51
{
52
return false;
src/WixToolset.Extensibility/BasePreprocessorExtension.cs
-1
@@ -70,7 +70,6 @@ namespace WixToolset.Extensibility
70
/// <summary>
71
/// Processes a pragma defined in the extension.
72
/// </summary>
73
- /// <param name="sourceLineNumbers">The location of this pragma's PI.</param>
73
/// <param name="prefix">The prefix of the pragma to be processed by the extension.</param>
74
/// <param name="pragma">The name of the pragma.</param>
75
/// <param name="args">The pragma's arguments.</param>
src/WixToolset.Extensibility/BaseResolverExtension.cs
+8
@@ -36,6 +36,14 @@ namespace WixToolset.Extensibility
36
this.Messaging = context.ServiceProvider.GetService<IMessaging>();
37
}
38
39
+ /// <summary>
40
+ /// See <see cref="IResolverExtension.ResolveFile(string, IntermediateSymbolDefinition, SourceLineNumber, BindStage)"/>
41
+ /// </summary>
42
+ /// <param name="source"></param>
43
+ /// <param name="symbolDefinition"></param>
44
+ /// <param name="sourceLineNumbers"></param>
45
+ /// <param name="bindStage"></param>
46
+ /// <returns></returns>
47
public virtual IResolveFileResult ResolveFile(string source, IntermediateSymbolDefinition symbolDefinition, SourceLineNumber sourceLineNumbers, BindStage bindStage)
48
{
49
return null;
src/WixToolset.Extensibility/BaseWindowsInstallerBackendBinderExtension.cs
+15
@@ -40,6 +40,9 @@ namespace WixToolset.Extensibility
40
/// </summary>
41
protected IResolvedCabinet CreateResolvedCabinet() => this.Context.ServiceProvider.GetService<IResolvedCabinet>();
42
43
+ /// <summary>
44
+ /// See <see cref="IWindowsInstallerBackendBinderExtension.PreBackendBind(IBindContext)"/>
45
+ /// </summary>
46
public virtual void PreBackendBind(IBindContext context)
47
{
48
this.Context = context;
@@ -49,10 +52,19 @@ namespace WixToolset.Extensibility
52
this.BackendHelper = context.ServiceProvider.GetService<IWindowsInstallerBackendHelper>();
53
}
54
55
+ /// <summary>
56
+ /// See <see cref="IWindowsInstallerBackendBinderExtension.PreBackendBind(IBindContext)"/>
57
+ /// </summary>
58
public virtual IResolvedCabinet ResolveCabinet(string cabinetPath, IEnumerable<IBindFileWithPath> files) => null;
59
60
+ /// <summary>
61
+ /// See <see cref="IWindowsInstallerBackendBinderExtension.PreBackendBind(IBindContext)"/>
62
+ /// </summary>
63
public virtual string ResolveMedia(MediaSymbol mediaRow, string mediaLayoutDirectory, string layoutDirectory) => null;
64
65
+ /// <summary>
66
+ /// See <see cref="IWindowsInstallerBackendBinderExtension.PreBackendBind(IBindContext)"/>
67
+ /// </summary>
68
public virtual bool TryAddSymbolToOutput(IntermediateSection section, IntermediateSymbol symbol, WindowsInstallerData output, TableDefinitionCollection tableDefinitions)
69
{
70
if (this.TableDefinitions.Any(t => t.SymbolDefinition == symbol.Definition))
@@ -63,6 +75,9 @@ namespace WixToolset.Extensibility
75
return false;
76
}
77
78
+ /// <summary>
79
+ /// See <see cref="IWindowsInstallerBackendBinderExtension.PreBackendBind(IBindContext)"/>
80
+ /// </summary>
81
public virtual void PostBackendBind(IBindResult result)
82
{
83
}
src/WixToolset.Extensibility/CompilerConstants.cs
+23
@@ -9,11 +9,34 @@ namespace WixToolset.Extensibility
9
/// </summary>
10
public static class CompilerConstants
11
{
12
+ /// <summary>
13
+ ///
14
+ /// </summary>
15
public const int IntegerNotSet = int.MinValue;
16
+
17
+ /// <summary>
18
+ ///
19
+ /// </summary>
20
public const int IllegalInteger = int.MinValue + 1;
21
+
22
+ /// <summary>
23
+ ///
24
+ /// </summary>
25
public const long LongNotSet = long.MinValue;
26
+
27
+ /// <summary>
28
+ ///
29
+ /// </summary>
30
public const long IllegalLong = long.MinValue + 1;
31
+
32
+ /// <summary>
33
+ ///
34
+ /// </summary>
35
public const string IllegalGuid = "IllegalGuid";
36
+
37
+ /// <summary>
38
+ ///
39
+ /// </summary>
40
public static readonly Version IllegalVersion = new Version(Int32.MaxValue, Int32.MaxValue, Int32.MaxValue, Int32.MaxValue);
41
}
42
}
src/WixToolset.Extensibility/Data/BindStage.cs
+3
@@ -2,6 +2,9 @@
2
3
namespace WixToolset.Extensibility.Data
4
{
5
+ /// <summary>
6
+ ///
7
+ /// </summary>
8
public enum BindStage
9
{
10
/// <summary>
src/WixToolset.Extensibility/Data/ExtensionCommandLineSwitch.cs
+7
-1
@@ -1,4 +1,4 @@
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
3
namespace WixToolset.Extensibility.Data
4
{
@@ -7,8 +7,14 @@ namespace WixToolset.Extensibility.Data
7
/// </summary>
8
public struct ExtensionCommandLineSwitch
9
{
10
+ /// <summary>
11
+ ///
12
+ /// </summary>
13
public string Switch { get; set; }
14
15
+ /// <summary>
16
+ ///
17
+ /// </summary>
18
public string Description { get; set; }
19
}
20
}
src/WixToolset.Extensibility/Data/IBindContext.cs
+1
@@ -7,6 +7,7 @@ namespace WixToolset.Extensibility.Data
7
using WixToolset.Data;
8
using WixToolset.Extensibility.Services;
9
10
+#pragma warning disable 1591 // TODO: add documentation
11
public interface IBindContext
12
{
13
IWixToolsetServiceProvider ServiceProvider { get; }
src/WixToolset.Extensibility/Data/IBindFileWithPath.cs
+1
@@ -2,6 +2,7 @@
2
3
namespace WixToolset.Extensibility.Data
4
{
5
+#pragma warning disable 1591 // TODO: add documentation
6
public interface IBindFileWithPath
7
{
8
string Id { get; set; }
src/WixToolset.Extensibility/Data/IBindPath.cs
+3
@@ -2,6 +2,9 @@
2
3
namespace WixToolset.Extensibility.Data
4
{
5
+ /// <summary>
6
+ /// Interface for a bind path.
7
+ /// </summary>
8
public interface IBindPath
9
{
10
/// <summary>
src/WixToolset.Extensibility/Data/IBindResult.cs
+1
@@ -6,6 +6,7 @@ namespace WixToolset.Extensibility.Data
6
using System.Collections.Generic;
7
using WixToolset.Data;
8
9
+#pragma warning disable 1591 // TODO: add documentation
10
public interface IBindResult : IDisposable
11
{
12
IEnumerable<IFileTransfer> FileTransfers { get; set; }
src/WixToolset.Extensibility/Data/ICommandLineArguments.cs
+1
@@ -9,6 +9,7 @@ namespace WixToolset.Extensibility.Data
9
/// </summary>
10
public interface ICommandLineArguments
11
{
12
+#pragma warning disable 1591 // TODO: add documentation
13
string[] OriginalArguments { get; set; }
14
15
string[] Arguments { get; set; }
src/WixToolset.Extensibility/Data/ICommandLineContext.cs
+1
@@ -5,6 +5,7 @@ namespace WixToolset.Extensibility.Data
5
using System;
6
using WixToolset.Extensibility.Services;
7
8
+#pragma warning disable 1591 // TODO: add documentation
9
public interface ICommandLineContext
10
{
11
IWixToolsetServiceProvider ServiceProvider { get; }
src/WixToolset.Extensibility/Data/ICompileContext.cs
+1
@@ -8,6 +8,7 @@ namespace WixToolset.Extensibility.Data
8
using WixToolset.Data;
9
using WixToolset.Extensibility.Services;
10
11
+#pragma warning disable 1591 // TODO: add documentation
12
public interface ICompileContext
13
{
14
IWixToolsetServiceProvider ServiceProvider { get; }
src/WixToolset.Extensibility/Data/IComponentKeyPath.cs
+1
@@ -2,6 +2,7 @@
2
3
namespace WixToolset.Extensibility.Data
4
{
5
+#pragma warning disable 1591 // TODO: add documentation
6
public interface IComponentKeyPath
7
{
8
bool Explicit { get; set; }
src/WixToolset.Extensibility/Data/IDecompileContext.cs
+1
@@ -7,6 +7,7 @@ namespace WixToolset.Extensibility.Data
7
using WixToolset.Data;
8
using WixToolset.Extensibility.Services;
9
10
+#pragma warning disable 1591 // TODO: add documentation
11
public interface IDecompileContext
12
{
13
IWixToolsetServiceProvider ServiceProvider { get; }
src/WixToolset.Extensibility/Data/IDecompileResult.cs
+1
@@ -6,6 +6,7 @@ namespace WixToolset.Extensibility.Data
6
using System.Xml.Linq;
7
using WixToolset.Data;
8
9
+#pragma warning disable 1591 // TODO: add documentation
10
public interface IDecompileResult
11
{
12
XDocument Document { get; set; }
src/WixToolset.Extensibility/Data/IDelayedField.cs
+1
@@ -4,6 +4,7 @@ namespace WixToolset.Extensibility.Data
4
{
5
using WixToolset.Data;
6
7
+#pragma warning disable 1591 // TODO: add documentation
8
public interface IDelayedField
9
{
10
IntermediateField Field { get; }
src/WixToolset.Extensibility/Data/IExpectedExtractFile.cs
+1
@@ -4,6 +4,7 @@ namespace WixToolset.Extensibility.Data
4
{
5
using System;
6
7
+#pragma warning disable 1591 // TODO: add documentation
8
public interface IExpectedExtractFile
9
{
10
Uri Uri { get; set; }
src/WixToolset.Extensibility/Data/IFileSystemContext.cs
+1
@@ -6,6 +6,7 @@ namespace WixToolset.Extensibility.Data
6
using WixToolset.Data;
7
using WixToolset.Extensibility.Services;
8
9
+#pragma warning disable 1591 // TODO: add documentation
10
public interface IFileSystemContext
11
{
12
IWixToolsetServiceProvider ServiceProvider { get; }
src/WixToolset.Extensibility/Data/IIncludedFile.cs
+3
@@ -4,6 +4,9 @@ namespace WixToolset.Extensibility.Data
4
{
5
using WixToolset.Data;
6
7
+ /// <summary>
8
+ /// Interface for an included file.
9
+ /// </summary>
10
public interface IIncludedFile
11
{
12
/// <summary>
src/WixToolset.Extensibility/Data/IInscribeContext.cs
+1
@@ -5,6 +5,7 @@ namespace WixToolset.Extensibility.Data
5
using System;
6
using WixToolset.Extensibility.Services;
7
8
+#pragma warning disable 1591 // TODO: add documentation
9
public interface IInscribeContext
10
{
11
IWixToolsetServiceProvider ServiceProvider { get; }
src/WixToolset.Extensibility/Data/ILayoutContext.cs
+1
@@ -6,6 +6,7 @@ namespace WixToolset.Extensibility.Data
6
using System.Threading;
7
using WixToolset.Extensibility.Services;
8
9
+#pragma warning disable 1591 // TODO: add documentation
10
public interface ILayoutContext
11
{
12
IWixToolsetServiceProvider ServiceProvider { get; }
src/WixToolset.Extensibility/Data/ILibraryContext.cs
+1
@@ -7,6 +7,7 @@ namespace WixToolset.Extensibility.Data
7
using WixToolset.Data;
8
using WixToolset.Extensibility.Services;
9
10
+#pragma warning disable 1591 // TODO: add documentation
11
public interface ILibraryContext
12
{
13
IWixToolsetServiceProvider ServiceProvider { get; }
src/WixToolset.Extensibility/Data/ILinkContext.cs
+1
@@ -7,6 +7,7 @@ namespace WixToolset.Extensibility.Data
7
using WixToolset.Data;
8
using WixToolset.Extensibility.Services;
9
10
+#pragma warning disable 1591 // TODO: add documentation
11
public interface ILinkContext
12
{
13
IWixToolsetServiceProvider ServiceProvider { get; }
src/WixToolset.Extensibility/Data/IPreprocessContext.cs
+1
@@ -7,6 +7,7 @@ namespace WixToolset.Extensibility.Data
7
using WixToolset.Data;
8
using WixToolset.Extensibility.Services;
9
10
+#pragma warning disable 1591 // TODO: add documentation
11
public interface IPreprocessContext
12
{
13
IWixToolsetServiceProvider ServiceProvider { get; }
src/WixToolset.Extensibility/Data/IPreprocessResult.cs
+1
@@ -5,6 +5,7 @@ namespace WixToolset.Extensibility.Data
5
using System.Collections.Generic;
6
using System.Xml.Linq;
7
8
+#pragma warning disable 1591 // TODO: add documentation
9
public interface IPreprocessResult
10
{
11
XDocument Document { get; set; }
src/WixToolset.Extensibility/Data/IResolveContext.cs
+1
@@ -7,6 +7,7 @@ namespace WixToolset.Extensibility.Data
7
using WixToolset.Data;
8
using WixToolset.Extensibility.Services;
9
10
+#pragma warning disable 1591 // TODO: add documentation
11
public interface IResolveContext
12
{
13
IWixToolsetServiceProvider ServiceProvider { get; }
src/WixToolset.Extensibility/Data/IResolveFileResult.cs
+1
@@ -4,6 +4,7 @@ namespace WixToolset.Extensibility.Data
4
{
5
using System.Collections.Generic;
6
7
+#pragma warning disable 1591 // TODO: add documentation
8
public interface IResolveFileResult
9
{
10
IEnumerable<string> CheckedPaths { get; set; }
src/WixToolset.Extensibility/Data/IResolveResult.cs
+1
@@ -5,6 +5,7 @@ namespace WixToolset.Extensibility.Data
5
using System.Collections.Generic;
6
using WixToolset.Data;
7
8
+#pragma warning disable 1591 // TODO: add documentation
9
public interface IResolveResult
10
{
11
int Codepage { get; set; }
src/WixToolset.Extensibility/Data/IResolvedCabinet.cs
+1
@@ -2,6 +2,7 @@
2
3
namespace WixToolset.Extensibility.Data
4
{
5
+#pragma warning disable 1591 // TODO: add documentation
6
public interface IResolvedCabinet
7
{
8
CabinetBuildOption BuildOption { get; set; }
src/WixToolset.Extensibility/Data/IUnbindContext.cs
+1
@@ -5,6 +5,7 @@ namespace WixToolset.Extensibility.Data
5
using System;
6
using WixToolset.Extensibility.Services;
7
8
+#pragma warning disable 1591 // TODO: add documentation
9
public interface IUnbindContext
10
{
11
IWixToolsetServiceProvider ServiceProvider { get; }
src/WixToolset.Extensibility/Data/PossibleKeyPathType.cs
+3
@@ -2,6 +2,9 @@
2
3
namespace WixToolset.Extensibility.Data
4
{
5
+ /// <summary>
6
+ /// Key path types.
7
+ /// </summary>
8
public enum PossibleKeyPathType
9
{
10
/// <summary>
src/WixToolset.Extensibility/Data/TrackedFileType.cs
+4
-1
@@ -1,7 +1,10 @@
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
3
namespace WixToolset.Extensibility.Data
4
{
5
+ /// <summary>
6
+ /// Tracked file types.
7
+ /// </summary>
8
public enum TrackedFileType
9
{
10
/// <summary>
src/WixToolset.Extensibility/DecompilerConstants.cs
+7
@@ -7,7 +7,14 @@ namespace WixToolset.Extensibility
7
/// </summary>
8
public static class DecompilerConstants
9
{
10
+ /// <summary>
11
+ ///
12
+ /// </summary>
13
public const char PrimaryKeyDelimiter = '/';
14
+
15
+ /// <summary>
16
+ ///
17
+ /// </summary>
18
public const string PrimaryKeyDelimiterString = "/";
19
}
20
}
src/WixToolset.Extensibility/IBackend.cs
+1
@@ -5,6 +5,7 @@ namespace WixToolset.Extensibility
5
using WixToolset.Data;
6
using WixToolset.Extensibility.Data;
7
8
+#pragma warning disable 1591 // TODO: add documentation
9
public interface IBackend
10
{
11
IBindResult Bind(IBindContext context);
src/WixToolset.Extensibility/IBackendFactory.cs
+2
-1
@@ -1,7 +1,8 @@
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
3
namespace WixToolset.Extensibility
4
{
5
+#pragma warning disable 1591 // TODO: add documentation
6
public interface IBackendFactory
7
{
8
bool TryCreateBackend(string outputType, string outputPath, out IBackend backend);
src/WixToolset.Extensibility/IBurnBackendExtension.cs
+21
@@ -5,6 +5,9 @@ namespace WixToolset.Extensibility
5
using WixToolset.Data;
6
using WixToolset.Extensibility.Data;
7
8
+ /// <summary>
9
+ /// Interface all Burn backend extensions implement.
10
+ /// </summary>
11
public interface IBurnBackendExtension
12
{
13
/// <summary>
@@ -12,8 +15,26 @@ namespace WixToolset.Extensibility
15
/// </summary>
16
void PreBackendBind(IBindContext context);
17
18
+ /// <summary>
19
+ ///
20
+ /// </summary>
21
+ /// <param name="source"></param>
22
+ /// <param name="relatedSource"></param>
23
+ /// <param name="type"></param>
24
+ /// <param name="sourceLineNumbers"></param>
25
+ /// <param name="bindStage"></param>
26
+ /// <returns></returns>
27
IResolveFileResult ResolveRelatedFile(string source, string relatedSource, string type, SourceLineNumber sourceLineNumbers, BindStage bindStage);
28
29
+ /// <summary>
30
+ ///
31
+ /// </summary>
32
+ /// <param name="url"></param>
33
+ /// <param name="fallbackUrl"></param>
34
+ /// <param name="packageId"></param>
35
+ /// <param name="payloadId"></param>
36
+ /// <param name="fileName"></param>
37
+ /// <returns></returns>
38
string ResolveUrl(string url, string fallbackUrl, string packageId, string payloadId, string fileName);
39
40
/// <summary>
src/WixToolset.Extensibility/ICompilerExtension.cs
+7
-1
@@ -26,6 +26,8 @@ namespace WixToolset.Extensibility
26
/// <summary>
27
/// Processes an attribute for the Compiler.
28
/// </summary>
29
+ /// <param name="intermediate">Parent intermediate.</param>
30
+ /// <param name="section">Parent section.</param>
31
/// <param name="parentElement">Parent element of attribute.</param>
32
/// <param name="attribute">Attribute to process.</param>
33
/// <param name="context">Extra information about the context in which this element is being parsed.</param>
@@ -34,6 +36,8 @@ namespace WixToolset.Extensibility
36
/// <summary>
37
/// Processes an element for the Compiler.
38
/// </summary>
39
+ /// <param name="intermediate">Parent intermediate.</param>
40
+ /// <param name="section">Parent section.</param>
41
/// <param name="parentElement">Parent element of element to process.</param>
42
/// <param name="element">Element to process.</param>
43
/// <param name="context">Extra information about the context in which this element is being parsed.</param>
@@ -42,9 +46,11 @@ namespace WixToolset.Extensibility
46
/// <summary>
47
/// Processes an element for the Compiler, with the ability to supply a component keypath.
48
/// </summary>
49
+ /// <param name="intermediate">Parent intermediate.</param>
50
+ /// <param name="section">Parent section.</param>
51
/// <param name="parentElement">Parent element of element to process.</param>
52
/// <param name="element">Element to process.</param>
47
- /// <param name="contextValues">Extra information about the context in which this element is being parsed.</param>
53
+ /// <param name="context">Extra information about the context in which this element is being parsed.</param>
54
IComponentKeyPath ParsePossibleKeyPathElement(Intermediate intermediate, IntermediateSection section, XElement parentElement, XElement element, IDictionary<string, string> context);
55
56
/// <summary>
src/WixToolset.Extensibility/IExtensionCommandLine.cs
+1
-2
@@ -34,11 +34,10 @@ namespace WixToolset.Extensibility
34
/// <summary>
35
/// Gives the extension an opportunity to provide a command.
36
/// </summary>
37
- /// </summary>
37
/// <param name="parser">Parser to help parse the argument and additional arguments.</param>
38
/// <param name="argument">Argument to parse.</param>
39
/// <param name="command"></param>
41
- /// <returns>True if the argument is recognized as a commond; otherwise false to allow another extension to process it.</returns>
40
+ /// <returns>True if the argument is recognized as a command; otherwise false to allow another extension to process it.</returns>
41
bool TryParseCommand(ICommandLineParser parser, string argument, out ICommandLineCommand command);
42
43
/// <summary>
src/WixToolset.Extensibility/IFileSystemExtension.cs
+1
@@ -9,6 +9,7 @@ namespace WixToolset.Extensibility
9
/// </summary>
10
public interface IFileSystemExtension
11
{
12
+#pragma warning disable 1591 // TODO: add documentation
13
void Initialize(IFileSystemContext context);
14
15
bool? CompareFiles(string targetFile, string updatedFile);
src/WixToolset.Extensibility/IInspectorExtension.cs
+6
-5
@@ -10,15 +10,13 @@ namespace WixToolset.Extensibility
10
/// Interface for inspector extensions.
11
/// </summary>
12
/// <remarks>
13
- /// The inspector methods are stateless, but extensions are loaded and last for the lifetime of the
14
- /// containing classes like <see cref="Preprocessor"/>, <see cref="Compiler"/>, <see cref="Linker"/>,
15
- /// <see cref="Differ"/>, and <see cref="Binder"/>. If you want to maintain state, you should check
13
+ /// The inspector methods are stateless, but extensions are loaded once. If you want to maintain state, you should check
14
/// if your data is loaded for each method and, if not, load it.
15
/// </remarks>
16
public interface IInspectorExtension
17
{
18
/// <summary>
21
- /// Gets or sets the <see cref="InspectorCore"/> for inspector extensions to use.
19
+ /// Gets or sets the <see cref="IInspectorCore"/> for inspector extensions to use.
20
/// </summary>
21
IInspectorCore Core { get; set; }
22
@@ -34,6 +32,7 @@ namespace WixToolset.Extensibility
32
/// <param name="intermediate">The compiled output.</param>
33
void InspectIntermediate(Intermediate intermediate);
34
35
+#if REWRITE
36
/// <summary>
37
/// Inspect the output.
38
/// </summary>
@@ -46,13 +45,15 @@ namespace WixToolset.Extensibility
45
/// transforms are the primary transforms you'll typically want to inspect
46
/// and contain your changes to target products.
47
/// </remarks>
48
+#endif
49
+ /// <summary />
50
void InspectOutput(Intermediate output);
51
52
/// <summary>
53
/// Inspect the final output after binding.
54
/// </summary>
55
/// <param name="filePath">The file path to the final bound output.</param>
55
- /// <param name="pdb">The <see cref="Pdb"/> that contains source line numbers
56
+ /// <param name="pdb">The <see cref="Intermediate"/> that contains source line numbers
57
/// for the database and all rows.</param>
58
void InspectDatabase(string filePath, Intermediate pdb);
59
}
src/WixToolset.Extensibility/ILayoutExtension.cs
+2
@@ -14,9 +14,11 @@ namespace WixToolset.Extensibility
14
/// </summary>
15
void PreLayout(ILayoutContext context);
16
17
+#pragma warning disable 1591 // TODO: add documentation
18
bool CopyFile(string source, string destination);
19
20
bool MoveFile(string source, string destination);
21
+#pragma warning restore 1591
22
23
/// <summary>
24
/// Called after all layout occurs.
src/WixToolset.Extensibility/ILibrarianExtension.cs
+1
@@ -5,6 +5,7 @@ namespace WixToolset.Extensibility
5
using WixToolset.Data;
6
using WixToolset.Extensibility.Data;
7
8
+#pragma warning disable 1591 // TODO: add documentation
9
public interface ILibrarianExtension
10
{
11
void PreCombine(ILibraryContext context);
src/WixToolset.Extensibility/IMessageListener.cs
+1
@@ -5,6 +5,7 @@ namespace WixToolset.Extensibility
5
using WixToolset.Data;
6
using WixToolset.Extensibility.Services;
7
8
+#pragma warning disable 1591 // TODO: add documentation
9
public interface IMessageListener
10
{
11
MessageLevel CalculateMessageLevel(IMessaging messaging, Message message, MessageLevel defaultMessageLevel);
src/WixToolset.Extensibility/IPreprocessorExtension.cs
-1
@@ -41,7 +41,6 @@ namespace WixToolset.Extensibility
41
/// <summary>
42
/// Processes a pragma defined in the extension.
43
/// </summary>
44
- /// <param name="sourceLineNumbers">The location of this pragma's PI.</param>
44
/// <param name="prefix">The prefix of the pragma to be processed by the extension.</param>
45
/// <param name="pragma">The name of the pragma.</param>
46
/// <param name="args">The pragma's arguments.</param>
src/WixToolset.Extensibility/IWindowsInstallerBackendBinderExtension.cs
+4
@@ -13,18 +13,22 @@ namespace WixToolset.Extensibility
13
/// </summary>
14
public interface IWindowsInstallerBackendBinderExtension
15
{
16
+#pragma warning disable 1591 // TODO: add documentation
17
IEnumerable<TableDefinition> TableDefinitions { get; }
18
+#pragma warning restore 1591
19
20
/// <summary>
21
/// Called before binding occurs.
22
/// </summary>
23
void PreBackendBind(IBindContext context);
24
25
+#pragma warning disable 1591 // TODO: add documentation
26
IResolvedCabinet ResolveCabinet(string cabinetPath, IEnumerable<IBindFileWithPath> files);
27
28
string ResolveMedia(MediaSymbol mediaRow, string mediaLayoutDirectory, string layoutDirectory);
29
30
bool TryAddSymbolToOutput(IntermediateSection section, IntermediateSymbol symbol, WindowsInstallerData output, TableDefinitionCollection tableDefinitions);
31
+#pragma warning restore 1591
32
33
/// <summary>
34
/// Called after all output changes occur and right before the output is bound into its final format.
src/WixToolset.Extensibility/Services/IBackendHelper.cs
+1
@@ -17,6 +17,7 @@ namespace WixToolset.Extensibility.Services
17
/// <param name="source">Source for the file transfer.</param>
18
/// <param name="destination">Destination for the file transfer.</param>
19
/// <param name="move">Indicates whether to move or copy the source file.</param>
20
+ /// <param name="sourceLineNumbers">Optional source line numbers that requested the file transfer.</param>
21
IFileTransfer CreateFileTransfer(string source, string destination, bool move, SourceLineNumber sourceLineNumbers = null);
22
23
/// <summary>
src/WixToolset.Extensibility/Services/ICommandLineParser.cs
+1
@@ -4,6 +4,7 @@ namespace WixToolset.Extensibility.Services
4
{
5
using System.Collections.Generic;
6
7
+#pragma warning disable 1591 // TODO: add documentation
8
public interface ICommandLineParser
9
{
10
string ErrorArgument { get; set; }
src/WixToolset.Extensibility/Services/IParseHelper.cs
+23
-19
@@ -68,15 +68,6 @@ namespace WixToolset.Extensibility.Services
68
/// <returns>New symbol.</returns>
69
IntermediateSymbol CreateSymbol(IntermediateSection section, SourceLineNumber sourceLineNumbers, IntermediateSymbolDefinition symbolDefinition, Identifier identifier = null);
70
71
- [Obsolete]
72
- IntermediateSymbol CreateRow(IntermediateSection section, SourceLineNumber sourceLineNumbers, string tableName, Identifier identifier = null);
73
-
74
- [Obsolete]
75
- IntermediateSymbol CreateSymbol(IntermediateSection section, SourceLineNumber sourceLineNumbers, SymbolDefinitionType symbolType, Identifier identifier = null);
76
-
77
- [Obsolete]
78
- IntermediateSymbol CreateRow(IntermediateSection section, SourceLineNumber sourceLineNumbers, SymbolDefinitionType symbolType, Identifier identifier = null);
79
-
71
/// <summary>
72
/// Creates a directory row from a name.
73
/// </summary>
@@ -106,6 +97,7 @@ namespace WixToolset.Extensibility.Services
97
/// <summary>
98
/// Creates a Registry symbol in the active section.
99
/// </summary>
100
+ /// <param name="section">Active section.</param>
101
/// <param name="sourceLineNumbers">Source and line number of the current symbol.</param>
102
/// <param name="root">The registry entry root.</param>
103
/// <param name="key">The registry entry key.</param>
@@ -115,9 +107,6 @@ namespace WixToolset.Extensibility.Services
107
/// <param name="escapeLeadingHash">If true, "escape" leading '#' characters so the value is written as a REG_SZ.</param>
108
Identifier CreateRegistrySymbol(IntermediateSection section, SourceLineNumber sourceLineNumbers, RegistryRootType root, string key, string name, string value, string componentId, bool escapeLeadingHash);
109
118
- [Obsolete]
119
- Identifier CreateRegistryRow(IntermediateSection section, SourceLineNumber sourceLineNumbers, RegistryRootType root, string key, string name, string value, string componentId, bool escapeLeadingHash);
120
-
110
/// <summary>
111
/// Creates a short file/directory name using an identifier and long file/directory name as input.
112
/// </summary>
@@ -131,6 +120,7 @@ namespace WixToolset.Extensibility.Services
120
/// <summary>
121
/// Create a WixSimpleReference symbol in the active section.
122
/// </summary>
123
+ /// <param name="section">Active section.</param>
124
/// <param name="sourceLineNumbers">Source line information for the row.</param>
125
/// <param name="symbolName">The symbol name of the simple reference.</param>
126
/// <param name="primaryKey">The primary key of the simple reference.</param>
@@ -139,6 +129,7 @@ namespace WixToolset.Extensibility.Services
129
/// <summary>
130
/// Create a WixSimpleReference symbol in the active section.
131
/// </summary>
132
+ /// <param name="section">Active section.</param>
133
/// <param name="sourceLineNumbers">Source line information for the row.</param>
134
/// <param name="symbolName">The symbol name of the simple reference.</param>
135
/// <param name="primaryKeys">The primary keys of the simple reference.</param>
@@ -147,6 +138,7 @@ namespace WixToolset.Extensibility.Services
138
/// <summary>
139
/// Create a WixSimpleReference symbol in the active section.
140
/// </summary>
141
+ /// <param name="section">Active section.</param>
142
/// <param name="sourceLineNumbers">Source line information for the row.</param>
143
/// <param name="symbolDefinition">The symbol definition of the simple reference.</param>
144
/// <param name="primaryKey">The primary key of the simple reference.</param>
@@ -155,6 +147,7 @@ namespace WixToolset.Extensibility.Services
147
/// <summary>
148
/// Create a WixSimpleReference symbol in the active section.
149
/// </summary>
150
+ /// <param name="section">Active section.</param>
151
/// <param name="sourceLineNumbers">Source line information for the row.</param>
152
/// <param name="symbolDefinition">The symbol definition of the simple reference.</param>
153
/// <param name="primaryKeys">The primary keys of the simple reference.</param>
@@ -167,7 +160,7 @@ namespace WixToolset.Extensibility.Services
160
/// <param name="sourceLineNumbers">Source line information.</param>
161
/// <param name="section">Section to create the reference in.</param>
162
/// <param name="customAction">The custom action base name.</param>
170
- /// <param name="currentPlatform">The platform being compiled.</param>
163
+ /// <param name="platform">The platform being compiled.</param>
164
/// <param name="supportedPlatforms">The platforms for which there are specialized custom actions.</param>
165
void CreateCustomActionReference(SourceLineNumber sourceLineNumbers, IntermediateSection section, string customAction, Platform platform, CustomActionPlatforms supportedPlatforms);
166
@@ -195,9 +188,6 @@ namespace WixToolset.Extensibility.Services
188
/// <param name="childId">Id of the Child Node.</param>
189
void CreateWixGroupSymbol(IntermediateSection section, SourceLineNumber sourceLineNumbers, ComplexReferenceParentType parentType, string parentId, ComplexReferenceChildType childType, string childId);
190
198
- [Obsolete]
199
- void CreateWixGroupRow(IntermediateSection section, SourceLineNumber sourceLineNumbers, ComplexReferenceParentType parentType, string parentId, ComplexReferenceChildType childType, string childId);
200
-
191
/// <summary>
192
/// Creates a symbol in the WixSearch table.
193
/// </summary>
@@ -231,6 +221,7 @@ namespace WixToolset.Extensibility.Services
221
/// <summary>
222
/// Add the appropriate symbols to make sure that the given table shows up in the resulting output.
223
/// </summary>
224
+ /// <param name="section">Active section.</param>
225
/// <param name="sourceLineNumbers">Source line numbers.</param>
226
/// <param name="tableName">Name of the table to ensure existance of.</param>
227
void EnsureTable(IntermediateSection section, SourceLineNumber sourceLineNumbers, string tableName);
@@ -238,6 +229,7 @@ namespace WixToolset.Extensibility.Services
229
/// <summary>
230
/// Add the appropriate symbols to make sure that the given table shows up in the resulting output.
231
/// </summary>
232
+ /// <param name="section">Active section.</param>
233
/// <param name="sourceLineNumbers">Source line numbers.</param>
234
/// <param name="tableDefinition">Definition of the table to ensure existance of.</param>
235
void EnsureTable(IntermediateSection section, SourceLineNumber sourceLineNumbers, TableDefinition tableDefinition);
@@ -408,6 +400,9 @@ namespace WixToolset.Extensibility.Services
400
/// <summary>
401
/// Attempts to use an extension to parse the attribute.
402
/// </summary>
403
+ /// <param name="extensions"></param>
404
+ /// <param name="intermediate">Parent intermediate.</param>
405
+ /// <param name="section">Parent section.</param>
406
/// <param name="element">Element containing attribute to be parsed.</param>
407
/// <param name="attribute">Attribute to be parsed.</param>
408
/// <param name="context">Extra information about the context in which this element is being parsed.</param>
@@ -416,22 +411,31 @@ namespace WixToolset.Extensibility.Services
411
/// <summary>
412
/// Attempts to use an extension to parse the element.
413
/// </summary>
414
+ /// <param name="extensions"></param>
415
+ /// <param name="intermediate">Parent intermediate.</param>
416
+ /// <param name="section">Parent section.</param>
417
/// <param name="parentElement">Element containing element to be parsed.</param>
418
/// <param name="element">Element to be parsed.</param>
421
- /// <param name="contextValues">Extra information about the context in which this element is being parsed.</param>
419
+ /// <param name="context">Extra information about the context in which this element is being parsed.</param>
420
void ParseExtensionElement(IEnumerable<ICompilerExtension> extensions, Intermediate intermediate, IntermediateSection section, XElement parentElement, XElement element, IDictionary<string, string> context = null);
421
422
/// <summary>
423
/// Attempts to use an extension to parse the element, with support for setting component keypath.
424
/// </summary>
425
+ /// <param name="extensions"></param>
426
+ /// <param name="intermediate">Parent intermediate.</param>
427
+ /// <param name="section">Parent section.</param>
428
/// <param name="parentElement">Element containing element to be parsed.</param>
429
/// <param name="element">Element to be parsed.</param>
429
- /// <param name="contextValues">Extra information about the context in which this element is being parsed.</param>
430
+ /// <param name="context">Extra information about the context in which this element is being parsed.</param>
431
IComponentKeyPath ParsePossibleKeyPathExtensionElement(IEnumerable<ICompilerExtension> extensions, Intermediate intermediate, IntermediateSection section, XElement parentElement, XElement element, IDictionary<string, string> context);
432
433
/// <summary>
434
/// Process all children of the element looking for extensions and erroring on the unexpected.
435
/// </summary>
436
+ /// <param name="extensions"></param>
437
+ /// <param name="intermediate">Parent intermediate.</param>
438
+ /// <param name="section">Parent section.</param>
439
/// <param name="element">Element to parse children.</param>
440
void ParseForExtensionElements(IEnumerable<ICompilerExtension> extensions, Intermediate intermediate, IntermediateSection section, XElement element);
441
@@ -452,7 +456,7 @@ namespace WixToolset.Extensibility.Services
456
/// <summary>
457
/// Called when the compiler encounters an unexpected attribute.
458
/// </summary>
455
- /// <param name="parentElement">Parent element that found unexpected attribute.</param>
459
+ /// <param name="element">Parent element that found unexpected attribute.</param>
460
/// <param name="attribute">Unexpected attribute.</param>
461
void UnexpectedAttribute(XElement element, XAttribute attribute);
462
src/WixToolset.Extensibility/Services/IPathResolver.cs
+4
-1
@@ -6,7 +6,9 @@ namespace WixToolset.Extensibility.Services
6
using WixToolset.Data;
7
using WixToolset.Extensibility.Data;
8
9
+#pragma warning disable 1591 // TODO: add documentation
10
public interface IPathResolver
11
+#pragma warning restore 1591
12
{
13
/// <summary>
14
/// Get the canonical source path of a directory.
@@ -14,6 +16,7 @@ namespace WixToolset.Extensibility.Services
16
/// <param name="directories">All cached directories.</param>
17
/// <param name="componentIdGenSeeds">Hash table of Component GUID generation seeds indexed by directory id.</param>
18
/// <param name="directory">Directory identifier.</param>
19
+ /// <param name="platform">Current platform.</param>
20
/// <returns>Source path of a directory.</returns>
21
string GetCanonicalDirectoryPath(Dictionary<string, IResolvedDirectory> directories, Dictionary<string, string> componentIdGenSeeds, string directory, Platform platform);
22
@@ -28,7 +31,7 @@ namespace WixToolset.Extensibility.Services
31
/// <summary>
32
/// Gets the source path of a file.
33
/// </summary>
31
- /// <param name="directories">All cached directories in <see cref="ResolvedDirectory"/>.</param>
34
+ /// <param name="directories">All cached directories in <see cref="IResolvedDirectory"/>.</param>
35
/// <param name="directoryId">Parent directory identifier.</param>
36
/// <param name="fileName">File name (in long|source format).</param>
37
/// <param name="compressed">Specifies the package is compressed.</param>
src/WixToolset.Extensibility/Services/IPreprocessHelper.cs
+2
-2
@@ -24,7 +24,7 @@ namespace WixToolset.Extensibility.Services
24
/// <param name="context">The preprocess context.</param>
25
/// <param name="name">The variable name.</param>
26
/// <param name="value">The variable value.</param>
27
- /// <param name="overwrite">Set to true to show variable overwrite warning.</param>
27
+ /// <param name="showWarning">Set to true to show variable overwrite warning.</param>
28
void AddVariable(IPreprocessContext context, string name, string value, bool showWarning);
29
30
/// <summary>
@@ -67,7 +67,7 @@ namespace WixToolset.Extensibility.Services
67
/// Evaluate a Pragma.
68
/// </summary>
69
/// <param name="context">The preprocess context.</param>
70
- /// <param name="pragmaName">The pragma's full name (<prefix>.<pragma>).</param>
70
+ /// <param name="pragmaName">The pragma's full name (<prefix>.<pragma>).</param>
71
/// <param name="args">The arguments to the pragma.</param>
72
/// <param name="parent">The parent element of the pragma.</param>
73
void PreprocessPragma(IPreprocessContext context, string pragmaName, string args, XContainer parent);
src/WixToolset.Extensibility/Services/IVariableResolution.cs
+1
@@ -2,6 +2,7 @@
2
3
namespace WixToolset.Extensibility.Services
4
{
5
+#pragma warning disable 1591 // TODO: add documentation
6
public interface IVariableResolution
7
{
8
bool DelayedResolve { get; set; }
src/WixToolset.Extensibility/Services/IVariableResolver.cs
+3
@@ -4,13 +4,16 @@ namespace WixToolset.Extensibility.Services
4
{
5
using WixToolset.Data;
6
7
+#pragma warning disable 1591 // TODO: add documentation
8
public interface IVariableResolver
9
{
10
void AddLocalization(Localization localization);
11
+#pragma warning restore 1591
12
13
/// <summary>
14
/// Add a variable.
15
/// </summary>
16
+ /// <param name="sourceLineNumber">The source line information for the value.</param>
17
/// <param name="name">The name of the variable.</param>
18
/// <param name="value">The value of the variable.</param>
19
/// <param name="overridable">Indicates whether the variable can be overridden by an existing variable.</param>
src/WixToolset.Extensibility/Services/IWindowsInstallerBackendHelper.cs
+19
@@ -10,7 +10,26 @@ namespace WixToolset.Extensibility.Services
10
/// </summary>
11
public interface IWindowsInstallerBackendHelper
12
{
13
+ /// <summary>
14
+ /// Creates a <see cref="Row"/> in the specified table.
15
+ /// </summary>
16
+ /// <param name="section">Parent section.</param>
17
+ /// <param name="symbol">Symbol with line information for the row.</param>
18
+ /// <param name="output">Current context.</param>
19
+ /// <param name="tableDefinition">Table definition for the row.</param>
20
+ /// <returns></returns>
21
Row CreateRow(IntermediateSection section, IntermediateSymbol symbol, WindowsInstallerData output, TableDefinition tableDefinition);
22
+
23
+ /// <summary>
24
+ /// Looks up the registered <see cref="TableDefinition"/> for the given <see cref="IntermediateSymbol"/> and creates a <see cref="Row"/> in that table.
25
+ /// Goes sequentially through each field in the symbol and assigns the value to the column with the same index as the field.
26
+ /// If the symbol's Id is registered as the primary key then that is used for the first column and the column data is offset by 1.
27
+ /// </summary>
28
+ /// <param name="section">Parent section.</param>
29
+ /// <param name="symbol">Symbol to create the row from.</param>
30
+ /// <param name="output">Current context.</param>
31
+ /// <param name="tableDefinitions">Table definitions that have been registered with the binder.</param>
32
+ /// <returns>True if a row was created.</returns>
33
bool TryAddSymbolToOutputMatchingTableDefinitions(IntermediateSection section, IntermediateSymbol symbol, WindowsInstallerData output, TableDefinitionCollection tableDefinitions);
34
}
35
}
src/WixToolset.Extensibility/Services/IWixtoolsetCoreServiceProvider.cs
-1
@@ -24,7 +24,6 @@ namespace WixToolset.Extensibility.Services
24
/// <summary>
25
/// Adds a service to the service locator.
26
/// </summary>
27
- /// <param name="serviceType">Type of the service to add.</param>
27
/// <param name="creationFunction">
28
/// A function that creates the service. The create function is provided the service provider
29
/// itself to resolve additional services and a type dictionary that stores singleton services
src/WixToolset.Extensibility/WixToolset.Extensibility.csproj
+1
@@ -9,6 +9,7 @@
9
<Description></Description>
10
<DebugType>embedded</DebugType>
11
<PublishRepositoryUrl>true</PublishRepositoryUrl>
12
+ <CreateDocumentationFile>true</CreateDocumentationFile>
13
</PropertyGroup>
14
15
<ItemGroup>