From c9c92ff83b24d6ed055032f62e833090ea4f8d9c Mon Sep 17 00:00:00 2001 From: Rob Mensching Date: Sat, 10 Apr 2021 15:15:02 -0700 Subject: Add support for RepairCondition on Exe, Msi and Msp packages --- src/WixToolset.Data/Symbols/WixBundleExePackageSymbol.cs | 8 ++++++++ src/WixToolset.Data/Symbols/WixBundleMsiPackageSymbol.cs | 8 ++++++++ src/WixToolset.Data/Symbols/WixBundleMspPackageSymbol.cs | 8 ++++++++ 3 files changed, 24 insertions(+) (limited to 'src') diff --git a/src/WixToolset.Data/Symbols/WixBundleExePackageSymbol.cs b/src/WixToolset.Data/Symbols/WixBundleExePackageSymbol.cs index 8a8cff1b..f377adca 100644 --- a/src/WixToolset.Data/Symbols/WixBundleExePackageSymbol.cs +++ b/src/WixToolset.Data/Symbols/WixBundleExePackageSymbol.cs @@ -16,6 +16,7 @@ namespace WixToolset.Data new IntermediateFieldDefinition(nameof(WixBundleExePackageSymbolFields.RepairCommand), IntermediateFieldType.String), new IntermediateFieldDefinition(nameof(WixBundleExePackageSymbolFields.UninstallCommand), IntermediateFieldType.String), new IntermediateFieldDefinition(nameof(WixBundleExePackageSymbolFields.ExeProtocol), IntermediateFieldType.String), + new IntermediateFieldDefinition(nameof(WixBundleExePackageSymbolFields.RepairCondition), IntermediateFieldType.String), }, typeof(WixBundleExePackageSymbol)); } @@ -33,6 +34,7 @@ namespace WixToolset.Data.Symbols RepairCommand, UninstallCommand, ExeProtocol, + RepairCondition, } [Flags] @@ -89,6 +91,12 @@ namespace WixToolset.Data.Symbols set => this.Set((int)WixBundleExePackageSymbolFields.ExeProtocol, value); } + public string RepairCondition + { + get => (string)this.Fields[(int)WixBundleExePackageSymbolFields.RepairCondition]; + set => this.Set((int)WixBundleExePackageSymbolFields.RepairCondition, value); + } + public bool Repairable => !String.IsNullOrEmpty(this.RepairCommand); } } diff --git a/src/WixToolset.Data/Symbols/WixBundleMsiPackageSymbol.cs b/src/WixToolset.Data/Symbols/WixBundleMsiPackageSymbol.cs index 21735f64..ef7ba34e 100644 --- a/src/WixToolset.Data/Symbols/WixBundleMsiPackageSymbol.cs +++ b/src/WixToolset.Data/Symbols/WixBundleMsiPackageSymbol.cs @@ -17,6 +17,7 @@ namespace WixToolset.Data new IntermediateFieldDefinition(nameof(WixBundleMsiPackageSymbolFields.ProductLanguage), IntermediateFieldType.Number), new IntermediateFieldDefinition(nameof(WixBundleMsiPackageSymbolFields.ProductName), IntermediateFieldType.String), new IntermediateFieldDefinition(nameof(WixBundleMsiPackageSymbolFields.Manufacturer), IntermediateFieldType.String), + new IntermediateFieldDefinition(nameof(WixBundleMsiPackageSymbolFields.RepairCondition), IntermediateFieldType.String), }, typeof(WixBundleMsiPackageSymbol)); } @@ -35,6 +36,7 @@ namespace WixToolset.Data.Symbols ProductLanguage, ProductName, Manufacturer, + RepairCondition, } [Flags] @@ -98,6 +100,12 @@ namespace WixToolset.Data.Symbols set => this.Set((int)WixBundleMsiPackageSymbolFields.Manufacturer, value); } + public string RepairCondition + { + get => (string)this.Fields[(int)WixBundleMsiPackageSymbolFields.RepairCondition]; + set => this.Set((int)WixBundleMsiPackageSymbolFields.RepairCondition, value); + } + public bool EnableFeatureSelection => (this.Attributes & WixBundleMsiPackageAttributes.EnableFeatureSelection) == WixBundleMsiPackageAttributes.EnableFeatureSelection; public bool ForcePerMachine => (this.Attributes & WixBundleMsiPackageAttributes.ForcePerMachine) == WixBundleMsiPackageAttributes.ForcePerMachine; diff --git a/src/WixToolset.Data/Symbols/WixBundleMspPackageSymbol.cs b/src/WixToolset.Data/Symbols/WixBundleMspPackageSymbol.cs index 3784c2ff..d4aa19a2 100644 --- a/src/WixToolset.Data/Symbols/WixBundleMspPackageSymbol.cs +++ b/src/WixToolset.Data/Symbols/WixBundleMspPackageSymbol.cs @@ -14,6 +14,7 @@ namespace WixToolset.Data new IntermediateFieldDefinition(nameof(WixBundleMspPackageSymbolFields.PatchCode), IntermediateFieldType.String), new IntermediateFieldDefinition(nameof(WixBundleMspPackageSymbolFields.Manufacturer), IntermediateFieldType.String), new IntermediateFieldDefinition(nameof(WixBundleMspPackageSymbolFields.PatchXml), IntermediateFieldType.String), + new IntermediateFieldDefinition(nameof(WixBundleMspPackageSymbolFields.RepairCondition), IntermediateFieldType.String), }, typeof(WixBundleMspPackageSymbol)); } @@ -29,6 +30,7 @@ namespace WixToolset.Data.Symbols PatchCode, Manufacturer, PatchXml, + RepairCondition, } [Flags] @@ -74,6 +76,12 @@ namespace WixToolset.Data.Symbols set => this.Set((int)WixBundleMspPackageSymbolFields.PatchXml, value); } + public string RepairCondition + { + get => (string)this.Fields[(int)WixBundleMspPackageSymbolFields.RepairCondition]; + set => this.Set((int)WixBundleMspPackageSymbolFields.RepairCondition, value); + } + public bool Slipstream => (this.Attributes & WixBundleMspPackageAttributes.Slipstream) == WixBundleMspPackageAttributes.Slipstream; public bool TargetUnspecified => (this.Attributes & WixBundleMspPackageAttributes.TargetUnspecified) == WixBundleMspPackageAttributes.TargetUnspecified; -- cgit v1.2.3-55-g6feb