aboutsummaryrefslogtreecommitdiff
path: root/src/WixToolset.Mba.Core/BaseBootstrapperApplicationFactory.cs
diff options
context:
space:
mode:
authorSean Hall <r.sean.hall@gmail.com>2020-12-19 19:15:11 -0600
committerSean Hall <r.sean.hall@gmail.com>2020-12-19 21:48:05 -0600
commit80df808461fca91b53e232b5b504a5c868029697 (patch)
tree0dc9efa22de03db0022f2a0e48b3fcd5874a10d2 /src/WixToolset.Mba.Core/BaseBootstrapperApplicationFactory.cs
parentca5d60d267051b4b75e22763ad8eda06f0501451 (diff)
downloadwix-80df808461fca91b53e232b5b504a5c868029697.tar.gz
wix-80df808461fca91b53e232b5b504a5c868029697.tar.bz2
wix-80df808461fca91b53e232b5b504a5c868029697.zip
Enable XML doc.
Diffstat (limited to 'src/WixToolset.Mba.Core/BaseBootstrapperApplicationFactory.cs')
-rw-r--r--src/WixToolset.Mba.Core/BaseBootstrapperApplicationFactory.cs27
1 files changed, 27 insertions, 0 deletions
diff --git a/src/WixToolset.Mba.Core/BaseBootstrapperApplicationFactory.cs b/src/WixToolset.Mba.Core/BaseBootstrapperApplicationFactory.cs
index 264733ac..ad8a5dc0 100644
--- a/src/WixToolset.Mba.Core/BaseBootstrapperApplicationFactory.cs
+++ b/src/WixToolset.Mba.Core/BaseBootstrapperApplicationFactory.cs
@@ -5,8 +5,16 @@ namespace WixToolset.Mba.Core
5 using System; 5 using System;
6 using System.Runtime.InteropServices; 6 using System.Runtime.InteropServices;
7 7
8 /// <summary>
9 /// Default implementation of <see cref="IBootstrapperApplicationFactory"/>.
10 /// </summary>
8 public abstract class BaseBootstrapperApplicationFactory : IBootstrapperApplicationFactory 11 public abstract class BaseBootstrapperApplicationFactory : IBootstrapperApplicationFactory
9 { 12 {
13 /// <summary>
14 /// Default implementation of <see cref="IBootstrapperApplicationFactory.Create(IntPtr, IntPtr)"/>
15 /// </summary>
16 /// <param name="pArgs"></param>
17 /// <param name="pResults"></param>
10 public void Create(IntPtr pArgs, IntPtr pResults) 18 public void Create(IntPtr pArgs, IntPtr pResults)
11 { 19 {
12 InitializeFromCreateArgs(pArgs, out var engine, out var bootstrapperCommand); 20 InitializeFromCreateArgs(pArgs, out var engine, out var bootstrapperCommand);
@@ -15,8 +23,21 @@ namespace WixToolset.Mba.Core
15 StoreBAInCreateResults(pResults, ba); 23 StoreBAInCreateResults(pResults, ba);
16 } 24 }
17 25
26 /// <summary>
27 /// Called by <see cref="BaseBootstrapperApplicationFactory.Create(IntPtr, IntPtr)"/> to get the <see cref="IBootstrapperApplication"/>.
28 /// </summary>
29 /// <param name="engine">The bundle engine.</param>
30 /// <param name="bootstrapperCommand">Command information passed from the engine for the BA to perform.</param>
31 /// <returns>The <see cref="IBootstrapperApplication"/> for the bundle.</returns>
18 protected abstract IBootstrapperApplication Create(IEngine engine, IBootstrapperCommand bootstrapperCommand); 32 protected abstract IBootstrapperApplication Create(IEngine engine, IBootstrapperCommand bootstrapperCommand);
19 33
34 /// <summary>
35 /// Initializes the native part of <see cref="WixToolset.Mba.Core"/>.
36 /// Most users should inherit from <see cref="BaseBootstrapperApplicationFactory"/> instead of calling this method.
37 /// </summary>
38 /// <param name="pArgs">The args struct given by the engine when initially creating the BA.</param>
39 /// <param name="engine">The bundle engine interface.</param>
40 /// <param name="bootstrapperCommand">The context of the current run of the bundle.</param>
20 public static void InitializeFromCreateArgs(IntPtr pArgs, out IEngine engine, out IBootstrapperCommand bootstrapperCommand) 41 public static void InitializeFromCreateArgs(IntPtr pArgs, out IEngine engine, out IBootstrapperCommand bootstrapperCommand)
21 { 42 {
22 Command pCommand = new Command 43 Command pCommand = new Command
@@ -28,6 +49,12 @@ namespace WixToolset.Mba.Core
28 bootstrapperCommand = pCommand.GetBootstrapperCommand(); 49 bootstrapperCommand = pCommand.GetBootstrapperCommand();
29 } 50 }
30 51
52 /// <summary>
53 /// Registers the BA with the engine using the default mapping between the message based interface and the COM interface.
54 /// Most users should inherit from <see cref="BaseBootstrapperApplicationFactory"/> instead of calling this method.
55 /// </summary>
56 /// <param name="pResults">The results struct given by the engine when initially creating the BA</param>
57 /// <param name="ba">The <see cref="IBootstrapperApplication"/>.</param>
31 public static void StoreBAInCreateResults(IntPtr pResults, IBootstrapperApplication ba) 58 public static void StoreBAInCreateResults(IntPtr pResults, IBootstrapperApplication ba)
32 { 59 {
33 BalUtil.StoreBAInCreateResults(pResults, ba); 60 BalUtil.StoreBAInCreateResults(pResults, ba);