diff options
author | Rob Mensching <rob@firegiant.com> | 2020-06-06 13:24:14 -0700 |
---|---|---|
committer | Rob Mensching <rob@firegiant.com> | 2020-06-08 16:34:16 -0700 |
commit | 59e358df2f15d478e5bd9f48e3e0824d8a59d7f4 (patch) | |
tree | fb6f0ea9be1021f6dc585e52189dde6d2d5f4f5e /src | |
parent | 5a19fb2cef32b214834aa1ca5627324f2da0e5b8 (diff) | |
download | wix-59e358df2f15d478e5bd9f48e3e0824d8a59d7f4.tar.gz wix-59e358df2f15d478e5bd9f48e3e0824d8a59d7f4.tar.bz2 wix-59e358df2f15d478e5bd9f48e3e0824d8a59d7f4.zip |
Add xmldoc
Diffstat (limited to 'src')
3 files changed, 55 insertions, 9 deletions
diff --git a/src/WixToolset.Extensibility/Services/IExtensionManager.cs b/src/WixToolset.Extensibility/Services/IExtensionManager.cs index 19b41e4f..a8087941 100644 --- a/src/WixToolset.Extensibility/Services/IExtensionManager.cs +++ b/src/WixToolset.Extensibility/Services/IExtensionManager.cs | |||
@@ -5,6 +5,9 @@ namespace WixToolset.Extensibility.Services | |||
5 | using System.Collections.Generic; | 5 | using System.Collections.Generic; |
6 | using System.Reflection; | 6 | using System.Reflection; |
7 | 7 | ||
8 | /// <summary> | ||
9 | /// Loads extensions and uses the extensions' factories to provide services. | ||
10 | /// </summary> | ||
8 | public interface IExtensionManager | 11 | public interface IExtensionManager |
9 | { | 12 | { |
10 | /// <summary> | 13 | /// <summary> |
@@ -14,20 +17,20 @@ namespace WixToolset.Extensibility.Services | |||
14 | void Add(Assembly extensionAssembly); | 17 | void Add(Assembly extensionAssembly); |
15 | 18 | ||
16 | /// <summary> | 19 | /// <summary> |
17 | /// Loads an extension assembly from a type description string. | 20 | /// Loads an extension assembly from an extension reference string. |
18 | /// </summary> | 21 | /// </summary> |
19 | /// <param name="extension">The assembly type description string.</param> | 22 | /// <param name="extensionReference">Reference to the extension.</param> |
20 | /// <returns>The loaded assembly. This assembly can be ignored since the extension manager maintains the list of loaded assemblies internally.</returns> | 23 | /// <returns>The loaded assembly. This assembly can be ignored since the extension manager maintains the list of loaded assemblies internally.</returns> |
21 | /// <remarks> | 24 | /// <remarks> |
22 | /// <paramref name="extension"/> can be in several different forms: | 25 | /// <paramref name="extensionReference"/> can be in several different forms: |
23 | /// <list type="number"> | 26 | /// <list type="number"> |
24 | /// <item><term>AssemblyName (MyAssembly, Version=1.3.0.0, Culture=neutral, PublicKeyToken=b17a5c561934e089)</term></item> | 27 | /// <item><term>Full path to an extension file (C:\MyExtensions\MyExtension.Example.wixext.dll)</term></item> |
25 | /// <item><term>Absolute path to an assembly (C:\MyExtensions\ExtensionAssembly.dll)</term></item> | 28 | /// <item><term>Reference to latest version of an extension in the cache (MyExtension.Example.wixext)</term></item> |
26 | /// <item><term>Filename of an assembly in the application directory (ExtensionAssembly.dll)</term></item> | 29 | /// <item><term>Versioned reference to specific extension in the cache (MyExtension.Example.wixext/1.0.2)</term></item> |
27 | /// <item><term>Relative path to an assembly (..\..\MyExtensions\ExtensionAssembly.dll)</term></item> | 30 | /// <item><term>Relative path to an extension file (..\..\MyExtensions\MyExtension.Example.wixext.dll)</term></item> |
28 | /// </list> | 31 | /// </list> |
29 | /// </remarks> | 32 | /// </remarks> |
30 | void Load(string extensionPath); | 33 | void Load(string extensionReference); |
31 | 34 | ||
32 | /// <summary> | 35 | /// <summary> |
33 | /// Gets extensions of specified type from factories loaded into the extension manager. | 36 | /// Gets extensions of specified type from factories loaded into the extension manager. |
diff --git a/src/WixToolset.Extensibility/Services/IWixToolsetServiceProvider.cs b/src/WixToolset.Extensibility/Services/IWixToolsetServiceProvider.cs index c9ef36e1..0315f7ed 100644 --- a/src/WixToolset.Extensibility/Services/IWixToolsetServiceProvider.cs +++ b/src/WixToolset.Extensibility/Services/IWixToolsetServiceProvider.cs | |||
@@ -4,10 +4,31 @@ namespace WixToolset.Extensibility.Services | |||
4 | { | 4 | { |
5 | using System; | 5 | using System; |
6 | 6 | ||
7 | /// <summary> | ||
8 | /// Service provider. | ||
9 | /// </summary> | ||
7 | public interface IWixToolsetServiceProvider : IServiceProvider | 10 | public interface IWixToolsetServiceProvider : IServiceProvider |
8 | { | 11 | { |
12 | /// <summary> | ||
13 | /// Gets a service from the service provider. | ||
14 | /// </summary> | ||
15 | /// <typeparam name="T">Type of service to get.</typeparam> | ||
16 | T GetService<T>() where T : class; | ||
17 | |||
18 | /// <summary> | ||
19 | /// Gets a service from the service provider. | ||
20 | /// </summary> | ||
21 | /// <param name="serviceType">Type of service to get.</param> | ||
22 | /// <param name="service">Retrieved service.</param> | ||
23 | /// <returns>True if the service was found, otherwise false</returns> | ||
9 | bool TryGetService(Type serviceType, out object service); | 24 | bool TryGetService(Type serviceType, out object service); |
25 | |||
26 | /// <summary> | ||
27 | /// Gets a service from the service provider. | ||
28 | /// </summary> | ||
29 | /// <typeparam name="T">Type of service to get.</typeparam> | ||
30 | /// <param name="service">Retrieved service.</param> | ||
31 | /// <returns>True if the service was found, otherwise false</returns> | ||
10 | bool TryGetService<T>(out T service) where T : class; | 32 | bool TryGetService<T>(out T service) where T : class; |
11 | T GetService<T>() where T : class; | ||
12 | } | 33 | } |
13 | } | 34 | } |
diff --git a/src/WixToolset.Extensibility/Services/IWixtoolsetCoreServiceProvider.cs b/src/WixToolset.Extensibility/Services/IWixtoolsetCoreServiceProvider.cs index cda725f7..3c80ddef 100644 --- a/src/WixToolset.Extensibility/Services/IWixtoolsetCoreServiceProvider.cs +++ b/src/WixToolset.Extensibility/Services/IWixtoolsetCoreServiceProvider.cs | |||
@@ -5,9 +5,31 @@ namespace WixToolset.Extensibility.Services | |||
5 | using System; | 5 | using System; |
6 | using System.Collections.Generic; | 6 | using System.Collections.Generic; |
7 | 7 | ||
8 | /// <summary> | ||
9 | /// The core of the service provider used to add services to the service provider. | ||
10 | /// </summary> | ||
8 | public interface IWixToolsetCoreServiceProvider : IWixToolsetServiceProvider | 11 | public interface IWixToolsetCoreServiceProvider : IWixToolsetServiceProvider |
9 | { | 12 | { |
13 | /// <summary> | ||
14 | /// Adds a service to the service locator. | ||
15 | /// </summary> | ||
16 | /// <param name="serviceType">Type of the service to add.</param> | ||
17 | /// <param name="creationFunction"> | ||
18 | /// A function that creates the service. The create function is provided the service provider | ||
19 | /// itself to resolve additional services and a type dictionary that stores singleton services | ||
20 | /// the creation function can add its service to. | ||
21 | /// </param> | ||
10 | void AddService(Type serviceType, Func<IWixToolsetCoreServiceProvider, Dictionary<Type, object>, object> creationFunction); | 22 | void AddService(Type serviceType, Func<IWixToolsetCoreServiceProvider, Dictionary<Type, object>, object> creationFunction); |
23 | |||
24 | /// <summary> | ||
25 | /// Adds a service to the service locator. | ||
26 | /// </summary> | ||
27 | /// <param name="serviceType">Type of the service to add.</param> | ||
28 | /// <param name="creationFunction"> | ||
29 | /// A function that creates the service. The create function is provided the service provider | ||
30 | /// itself to resolve additional services and a type dictionary that stores singleton services | ||
31 | /// the creation function can add its service to. | ||
32 | /// </param> | ||
11 | void AddService<T>(Func<IWixToolsetCoreServiceProvider, Dictionary<Type, object>, T> creationFunction) where T : class; | 33 | void AddService<T>(Func<IWixToolsetCoreServiceProvider, Dictionary<Type, object>, T> creationFunction) where T : class; |
12 | } | 34 | } |
13 | } | 35 | } |