diff options
| author | Rob Mensching <rob@firegiant.com> | 2020-01-23 12:43:48 -0800 |
|---|---|---|
| committer | Rob Mensching <rob@firegiant.com> | 2020-01-23 12:44:58 -0800 |
| commit | c8edfc4d712c2f0abf3ba2d6b3fb2a8f0ad94261 (patch) | |
| tree | d4fd108cb427029553cf4f5470cca6c7d494bf72 /src | |
| parent | fdb5b2a2cf0690cebbb449ba47370bdc55928539 (diff) | |
| download | wix-c8edfc4d712c2f0abf3ba2d6b3fb2a8f0ad94261.tar.gz wix-c8edfc4d712c2f0abf3ba2d6b3fb2a8f0ad94261.tar.bz2 wix-c8edfc4d712c2f0abf3ba2d6b3fb2a8f0ad94261.zip | |
Expose table definitions from IWindowsInstallerBackendBinderExtension
Diffstat (limited to 'src')
3 files changed, 12 insertions, 14 deletions
diff --git a/src/WixToolset.Extensibility/BaseWindowsInstallerBackendBinderExtension.cs b/src/WixToolset.Extensibility/BaseWindowsInstallerBackendBinderExtension.cs index 0eed98af..6e13b625 100644 --- a/src/WixToolset.Extensibility/BaseWindowsInstallerBackendBinderExtension.cs +++ b/src/WixToolset.Extensibility/BaseWindowsInstallerBackendBinderExtension.cs | |||
| @@ -3,6 +3,7 @@ | |||
| 3 | namespace WixToolset.Extensibility | 3 | namespace WixToolset.Extensibility |
| 4 | { | 4 | { |
| 5 | using System.Collections.Generic; | 5 | using System.Collections.Generic; |
| 6 | using System.Linq; | ||
| 6 | using WixToolset.Data; | 7 | using WixToolset.Data; |
| 7 | using WixToolset.Data.Tuples; | 8 | using WixToolset.Data.Tuples; |
| 8 | using WixToolset.Data.WindowsInstaller; | 9 | using WixToolset.Data.WindowsInstaller; |
| @@ -30,9 +31,9 @@ namespace WixToolset.Extensibility | |||
| 30 | protected IWindowsInstallerBackendHelper BackendHelper { get; private set; } | 31 | protected IWindowsInstallerBackendHelper BackendHelper { get; private set; } |
| 31 | 32 | ||
| 32 | /// <summary> | 33 | /// <summary> |
| 33 | /// Optional table definitions to automatically map to tuples. | 34 | /// Optional table definitions. |
| 34 | /// </summary> | 35 | /// </summary> |
| 35 | protected virtual TableDefinition[] TableDefinitionsForTuples { get; } | 36 | public virtual IEnumerable<TableDefinition> TableDefinitions => Enumerable.Empty<TableDefinition>(); |
| 36 | 37 | ||
| 37 | /// <summary> | 38 | /// <summary> |
| 38 | /// Creates a resolved cabinet result. | 39 | /// Creates a resolved cabinet result. |
| @@ -48,21 +49,15 @@ namespace WixToolset.Extensibility | |||
| 48 | this.BackendHelper = context.ServiceProvider.GetService<IWindowsInstallerBackendHelper>(); | 49 | this.BackendHelper = context.ServiceProvider.GetService<IWindowsInstallerBackendHelper>(); |
| 49 | } | 50 | } |
| 50 | 51 | ||
| 51 | public virtual IResolvedCabinet ResolveCabinet(string cabinetPath, IEnumerable<IBindFileWithPath> files) | 52 | public virtual IResolvedCabinet ResolveCabinet(string cabinetPath, IEnumerable<IBindFileWithPath> files) => null; |
| 52 | { | ||
| 53 | return null; | ||
| 54 | } | ||
| 55 | 53 | ||
| 56 | public virtual string ResolveMedia(MediaTuple mediaRow, string mediaLayoutDirectory, string layoutDirectory) | 54 | public virtual string ResolveMedia(MediaTuple mediaRow, string mediaLayoutDirectory, string layoutDirectory) => null; |
| 57 | { | ||
| 58 | return null; | ||
| 59 | } | ||
| 60 | 55 | ||
| 61 | public virtual bool TryAddTupleToOutput(IntermediateTuple tuple, WindowsInstallerData output) | 56 | public virtual bool TryAddTupleToOutput(IntermediateTuple tuple, WindowsInstallerData output) |
| 62 | { | 57 | { |
| 63 | if (this.TableDefinitionsForTuples != null) | 58 | if (this.TableDefinitions.Any()) |
| 64 | { | 59 | { |
| 65 | return this.BackendHelper.TryAddTupleToOutputMatchingTableDefinitions(tuple, output, this.TableDefinitionsForTuples); | 60 | return this.BackendHelper.TryAddTupleToOutputMatchingTableDefinitions(tuple, output, this.TableDefinitions); |
| 66 | } | 61 | } |
| 67 | 62 | ||
| 68 | return false; | 63 | return false; |
diff --git a/src/WixToolset.Extensibility/IWindowsInstallerBackendBinderExtension.cs b/src/WixToolset.Extensibility/IWindowsInstallerBackendBinderExtension.cs index 22939103..167e1083 100644 --- a/src/WixToolset.Extensibility/IWindowsInstallerBackendBinderExtension.cs +++ b/src/WixToolset.Extensibility/IWindowsInstallerBackendBinderExtension.cs | |||
| @@ -13,6 +13,8 @@ namespace WixToolset.Extensibility | |||
| 13 | /// </summary> | 13 | /// </summary> |
| 14 | public interface IWindowsInstallerBackendBinderExtension | 14 | public interface IWindowsInstallerBackendBinderExtension |
| 15 | { | 15 | { |
| 16 | IEnumerable<TableDefinition> TableDefinitions { get; } | ||
| 17 | |||
| 16 | /// <summary> | 18 | /// <summary> |
| 17 | /// Called before binding occurs. | 19 | /// Called before binding occurs. |
| 18 | /// </summary> | 20 | /// </summary> |
diff --git a/src/WixToolset.Extensibility/Services/IWindowsInstallerBackendHelper.cs b/src/WixToolset.Extensibility/Services/IWindowsInstallerBackendHelper.cs index 573620df..4552c7cb 100644 --- a/src/WixToolset.Extensibility/Services/IWindowsInstallerBackendHelper.cs +++ b/src/WixToolset.Extensibility/Services/IWindowsInstallerBackendHelper.cs | |||
| @@ -2,6 +2,7 @@ | |||
| 2 | 2 | ||
| 3 | namespace WixToolset.Extensibility.Services | 3 | namespace WixToolset.Extensibility.Services |
| 4 | { | 4 | { |
| 5 | using System.Collections.Generic; | ||
| 5 | using WixToolset.Data; | 6 | using WixToolset.Data; |
| 6 | using WixToolset.Data.WindowsInstaller; | 7 | using WixToolset.Data.WindowsInstaller; |
| 7 | 8 | ||
| @@ -10,8 +11,8 @@ namespace WixToolset.Extensibility.Services | |||
| 10 | /// </summary> | 11 | /// </summary> |
| 11 | public interface IWindowsInstallerBackendHelper | 12 | public interface IWindowsInstallerBackendHelper |
| 12 | { | 13 | { |
| 13 | bool TryAddTupleToOutputMatchingTableDefinitions(IntermediateTuple tuple, WindowsInstallerData output, TableDefinition[] tableDefinitions); | 14 | bool TryAddTupleToOutputMatchingTableDefinitions(IntermediateTuple tuple, WindowsInstallerData output, IEnumerable<TableDefinition> tableDefinitions); |
| 14 | 15 | ||
| 15 | bool TryAddTupleToOutputMatchingTableDefinitions(IntermediateTuple tuple, WindowsInstallerData output, TableDefinition[] tableDefinitions, bool columnZeroIsId); | 16 | bool TryAddTupleToOutputMatchingTableDefinitions(IntermediateTuple tuple, WindowsInstallerData output, IEnumerable<TableDefinition> tableDefinitions, bool columnZeroIsId); |
| 16 | } | 17 | } |
| 17 | } | 18 | } |
