From 863c1b8180d802f98e37be876b0c27efce2e8ace Mon Sep 17 00:00:00 2001 From: Sean Hall Date: Wed, 13 Apr 2022 10:13:36 -0500 Subject: Create Harvested*PackageSymbols. --- .../WixToolset.Data/Symbols/SymbolDefinitions.cs | 12 ++ .../WixBundleHarvestedBundlePackageSymbol.cs | 134 ++++++++++++++++ .../Symbols/WixBundleHarvestedMsiPackageSymbol.cs | 174 +++++++++++++++++++++ .../Symbols/WixBundleHarvestedMspPackageSymbol.cs | 92 +++++++++++ 4 files changed, 412 insertions(+) create mode 100644 src/api/wix/WixToolset.Data/Symbols/WixBundleHarvestedBundlePackageSymbol.cs create mode 100644 src/api/wix/WixToolset.Data/Symbols/WixBundleHarvestedMsiPackageSymbol.cs create mode 100644 src/api/wix/WixToolset.Data/Symbols/WixBundleHarvestedMspPackageSymbol.cs (limited to 'src/api') diff --git a/src/api/wix/WixToolset.Data/Symbols/SymbolDefinitions.cs b/src/api/wix/WixToolset.Data/Symbols/SymbolDefinitions.cs index 1fd8ded1..3e0ec512 100644 --- a/src/api/wix/WixToolset.Data/Symbols/SymbolDefinitions.cs +++ b/src/api/wix/WixToolset.Data/Symbols/SymbolDefinitions.cs @@ -130,6 +130,9 @@ namespace WixToolset.Data WixBundleExePackage, WixBundleExePackagePayload, WixBundleExtension, + WixBundleHarvestedBundlePackage, + WixBundleHarvestedMsiPackage, + WixBundleHarvestedMspPackage, WixBundleMsiFeature, WixBundleMsiPackage, WixBundleMsiPackagePayload, @@ -583,6 +586,15 @@ namespace WixToolset.Data case SymbolDefinitionType.WixBundleExePackagePayload: return SymbolDefinitions.WixBundleExePackagePayload; + case SymbolDefinitionType.WixBundleHarvestedBundlePackage: + return SymbolDefinitions.WixBundleHarvestedBundlePackage; + + case SymbolDefinitionType.WixBundleHarvestedMsiPackage: + return SymbolDefinitions.WixBundleHarvestedMsiPackage; + + case SymbolDefinitionType.WixBundleHarvestedMspPackage: + return SymbolDefinitions.WixBundleHarvestedMspPackage; + case SymbolDefinitionType.WixBundleMsiFeature: return SymbolDefinitions.WixBundleMsiFeature; diff --git a/src/api/wix/WixToolset.Data/Symbols/WixBundleHarvestedBundlePackageSymbol.cs b/src/api/wix/WixToolset.Data/Symbols/WixBundleHarvestedBundlePackageSymbol.cs new file mode 100644 index 00000000..01e18728 --- /dev/null +++ b/src/api/wix/WixToolset.Data/Symbols/WixBundleHarvestedBundlePackageSymbol.cs @@ -0,0 +1,134 @@ +// 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. + +namespace WixToolset.Data +{ + using WixToolset.Data.Symbols; + + public static partial class SymbolDefinitions + { + public static readonly IntermediateSymbolDefinition WixBundleHarvestedBundlePackage = new IntermediateSymbolDefinition( + SymbolDefinitionType.WixBundleHarvestedBundlePackage, + new[] + { + new IntermediateFieldDefinition(nameof(WixBundleHarvestedBundlePackageSymbolFields.Attributes), IntermediateFieldType.Number), + new IntermediateFieldDefinition(nameof(WixBundleHarvestedBundlePackageSymbolFields.BundleId), IntermediateFieldType.String), + new IntermediateFieldDefinition(nameof(WixBundleHarvestedBundlePackageSymbolFields.ManifestNamespace), IntermediateFieldType.String), + new IntermediateFieldDefinition(nameof(WixBundleHarvestedBundlePackageSymbolFields.ProtocolVersion), IntermediateFieldType.Number), + new IntermediateFieldDefinition(nameof(WixBundleHarvestedBundlePackageSymbolFields.Version), IntermediateFieldType.String), + new IntermediateFieldDefinition(nameof(WixBundleHarvestedBundlePackageSymbolFields.DisplayName), IntermediateFieldType.String), + new IntermediateFieldDefinition(nameof(WixBundleHarvestedBundlePackageSymbolFields.InstallSize), IntermediateFieldType.LargeNumber), + }, + typeof(WixBundleHarvestedBundlePackageSymbol)); + } +} + +namespace WixToolset.Data.Symbols +{ + using System; + + public enum WixBundleHarvestedBundlePackageSymbolFields + { + Attributes, + BundleId, + ManifestNamespace, + ProtocolVersion, + Version, + DisplayName, + InstallSize, + } + + [Flags] + public enum WixBundleHarvestedBundlePackageAttributes + { + None = 0x0, + PerMachine = 0x1, + Win64 = 0x2, + } + + public class WixBundleHarvestedBundlePackageSymbol : IntermediateSymbol + { + public WixBundleHarvestedBundlePackageSymbol() : base(SymbolDefinitions.WixBundleHarvestedBundlePackage, null, null) + { + } + + public WixBundleHarvestedBundlePackageSymbol(SourceLineNumber sourceLineNumber, Identifier id = null) : base(SymbolDefinitions.WixBundleHarvestedBundlePackage, sourceLineNumber, id) + { + } + + public IntermediateField this[WixBundleHarvestedBundlePackageSymbolFields index] => this.Fields[(int)index]; + + public WixBundleHarvestedBundlePackageAttributes Attributes + { + get => (WixBundleHarvestedBundlePackageAttributes)this.Fields[(int)WixBundleHarvestedBundlePackageSymbolFields.Attributes].AsNumber(); + set => this.Set((int)WixBundleHarvestedBundlePackageSymbolFields.Attributes, (int)value); + } + + public string BundleId + { + get => this.Fields[(int)WixBundleHarvestedBundlePackageSymbolFields.BundleId].AsString(); + set => this.Set((int)WixBundleHarvestedBundlePackageSymbolFields.BundleId, value); + } + + public string ManifestNamespace + { + get => this.Fields[(int)WixBundleHarvestedBundlePackageSymbolFields.ManifestNamespace].AsString(); + set => this.Set((int)WixBundleHarvestedBundlePackageSymbolFields.ManifestNamespace, value); + } + + public int ProtocolVersion + { + get => this.Fields[(int)WixBundleHarvestedBundlePackageSymbolFields.ProtocolVersion].AsNumber(); + set => this.Set((int)WixBundleHarvestedBundlePackageSymbolFields.ProtocolVersion, value); + } + + public string Version + { + get => this.Fields[(int)WixBundleHarvestedBundlePackageSymbolFields.Version].AsString(); + set => this.Set((int)WixBundleHarvestedBundlePackageSymbolFields.Version, value); + } + + public string DisplayName + { + get => this.Fields[(int)WixBundleHarvestedBundlePackageSymbolFields.DisplayName].AsString(); + set => this.Set((int)WixBundleHarvestedBundlePackageSymbolFields.DisplayName, value); + } + + public long InstallSize + { + get => this.Fields[(int)WixBundleHarvestedBundlePackageSymbolFields.InstallSize].AsLargeNumber(); + set => this.Set((int)WixBundleHarvestedBundlePackageSymbolFields.InstallSize, value); + } + + public bool PerMachine + { + get { return this.Attributes.HasFlag(WixBundleHarvestedBundlePackageAttributes.PerMachine); } + set + { + if (value) + { + this.Attributes |= WixBundleHarvestedBundlePackageAttributes.PerMachine; + } + else + { + this.Attributes &= ~WixBundleHarvestedBundlePackageAttributes.PerMachine; + } + } + } + + public bool Win64 + { + get { return this.Attributes.HasFlag(WixBundleHarvestedBundlePackageAttributes.Win64); } + set + { + if (value) + { + this.Attributes |= WixBundleHarvestedBundlePackageAttributes.Win64; + } + else + { + this.Attributes &= ~WixBundleHarvestedBundlePackageAttributes.Win64; + } + } + } + } +} diff --git a/src/api/wix/WixToolset.Data/Symbols/WixBundleHarvestedMsiPackageSymbol.cs b/src/api/wix/WixToolset.Data/Symbols/WixBundleHarvestedMsiPackageSymbol.cs new file mode 100644 index 00000000..8a274720 --- /dev/null +++ b/src/api/wix/WixToolset.Data/Symbols/WixBundleHarvestedMsiPackageSymbol.cs @@ -0,0 +1,174 @@ +// 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. + +namespace WixToolset.Data +{ + using WixToolset.Data.Symbols; + + public static partial class SymbolDefinitions + { + public static readonly IntermediateSymbolDefinition WixBundleHarvestedMsiPackage = new IntermediateSymbolDefinition( + SymbolDefinitionType.WixBundleHarvestedMsiPackage, + new[] + { + new IntermediateFieldDefinition(nameof(WixBundleHarvestedMsiPackageSymbolFields.Attributes), IntermediateFieldType.Number), + new IntermediateFieldDefinition(nameof(WixBundleHarvestedMsiPackageSymbolFields.ProductName), IntermediateFieldType.String), + new IntermediateFieldDefinition(nameof(WixBundleHarvestedMsiPackageSymbolFields.ArpComments), IntermediateFieldType.String), + new IntermediateFieldDefinition(nameof(WixBundleHarvestedMsiPackageSymbolFields.AllUsers), IntermediateFieldType.String), + new IntermediateFieldDefinition(nameof(WixBundleHarvestedMsiPackageSymbolFields.MsiFastInstall), IntermediateFieldType.String), + new IntermediateFieldDefinition(nameof(WixBundleHarvestedMsiPackageSymbolFields.ArpSystemComponent), IntermediateFieldType.String), + new IntermediateFieldDefinition(nameof(WixBundleHarvestedMsiPackageSymbolFields.ProductCode), IntermediateFieldType.String), + new IntermediateFieldDefinition(nameof(WixBundleHarvestedMsiPackageSymbolFields.UpgradeCode), IntermediateFieldType.String), + new IntermediateFieldDefinition(nameof(WixBundleHarvestedMsiPackageSymbolFields.Manufacturer), IntermediateFieldType.String), + new IntermediateFieldDefinition(nameof(WixBundleHarvestedMsiPackageSymbolFields.ProductLanguage), IntermediateFieldType.String), + new IntermediateFieldDefinition(nameof(WixBundleHarvestedMsiPackageSymbolFields.ProductVersion), IntermediateFieldType.String), + new IntermediateFieldDefinition(nameof(WixBundleHarvestedMsiPackageSymbolFields.InstallSize), IntermediateFieldType.LargeNumber), + }, + typeof(WixBundleHarvestedMsiPackageSymbol)); + } +} + +namespace WixToolset.Data.Symbols +{ + using System; + + public enum WixBundleHarvestedMsiPackageSymbolFields + { + Attributes, + ProductName, + ArpComments, + AllUsers, + MsiFastInstall, + ArpSystemComponent, + ProductCode, + UpgradeCode, + Manufacturer, + ProductLanguage, + ProductVersion, + InstallSize, + } + + [Flags] + public enum WixBundleHarvestedMsiPackageAttributes + { + None = 0x0, + PerMachine = 0x01, + Win64 = 0x2, + } + + public class WixBundleHarvestedMsiPackageSymbol : IntermediateSymbol + { + public WixBundleHarvestedMsiPackageSymbol() : base(SymbolDefinitions.WixBundleHarvestedMsiPackage, null, null) + { + } + + public WixBundleHarvestedMsiPackageSymbol(SourceLineNumber sourceLineNumber, Identifier id = null) : base(SymbolDefinitions.WixBundleHarvestedMsiPackage, sourceLineNumber, id) + { + } + + public IntermediateField this[WixBundleHarvestedMsiPackageSymbolFields index] => this.Fields[(int)index]; + + public WixBundleHarvestedMsiPackageAttributes Attributes + { + get => (WixBundleHarvestedMsiPackageAttributes)this.Fields[(int)WixBundleHarvestedMsiPackageSymbolFields.Attributes].AsNumber(); + set => this.Set((int)WixBundleHarvestedMsiPackageSymbolFields.Attributes, (int)value); + } + + public string ProductName + { + get => this.Fields[(int)WixBundleHarvestedMsiPackageSymbolFields.ProductName].AsString(); + set => this.Set((int)WixBundleHarvestedMsiPackageSymbolFields.ProductName, value); + } + + public string ArpComments + { + get => this.Fields[(int)WixBundleHarvestedMsiPackageSymbolFields.ArpComments].AsString(); + set => this.Set((int)WixBundleHarvestedMsiPackageSymbolFields.ArpComments, value); + } + + public string AllUsers + { + get => this.Fields[(int)WixBundleHarvestedMsiPackageSymbolFields.AllUsers].AsString(); + set => this.Set((int)WixBundleHarvestedMsiPackageSymbolFields.AllUsers, value); + } + + public string MsiFastInstall + { + get => this.Fields[(int)WixBundleHarvestedMsiPackageSymbolFields.MsiFastInstall].AsString(); + set => this.Set((int)WixBundleHarvestedMsiPackageSymbolFields.MsiFastInstall, value); + } + + public string ArpSystemComponent + { + get => this.Fields[(int)WixBundleHarvestedMsiPackageSymbolFields.ArpSystemComponent].AsString(); + set => this.Set((int)WixBundleHarvestedMsiPackageSymbolFields.ArpSystemComponent, value); + } + + public string ProductCode + { + get => this.Fields[(int)WixBundleHarvestedMsiPackageSymbolFields.ProductCode].AsString(); + set => this.Set((int)WixBundleHarvestedMsiPackageSymbolFields.ProductCode, value); + } + + public string UpgradeCode + { + get => this.Fields[(int)WixBundleHarvestedMsiPackageSymbolFields.UpgradeCode].AsString(); + set => this.Set((int)WixBundleHarvestedMsiPackageSymbolFields.UpgradeCode, value); + } + + public string Manufacturer + { + get => this.Fields[(int)WixBundleHarvestedMsiPackageSymbolFields.Manufacturer].AsString(); + set => this.Set((int)WixBundleHarvestedMsiPackageSymbolFields.Manufacturer, value); + } + + public string ProductLanguage + { + get => this.Fields[(int)WixBundleHarvestedMsiPackageSymbolFields.ProductLanguage].AsString(); + set => this.Set((int)WixBundleHarvestedMsiPackageSymbolFields.ProductLanguage, value); + } + + public string ProductVersion + { + get => this.Fields[(int)WixBundleHarvestedMsiPackageSymbolFields.ProductVersion].AsString(); + set => this.Set((int)WixBundleHarvestedMsiPackageSymbolFields.ProductVersion, value); + } + + public long InstallSize + { + get => this.Fields[(int)WixBundleHarvestedMsiPackageSymbolFields.InstallSize].AsLargeNumber(); + set => this.Set((int)WixBundleHarvestedMsiPackageSymbolFields.InstallSize, value); + } + + public bool PerMachine + { + get { return this.Attributes.HasFlag(WixBundleHarvestedMsiPackageAttributes.PerMachine); } + set + { + if (value) + { + this.Attributes |= WixBundleHarvestedMsiPackageAttributes.PerMachine; + } + else + { + this.Attributes &= ~WixBundleHarvestedMsiPackageAttributes.PerMachine; + } + } + } + + public bool Win64 + { + get { return this.Attributes.HasFlag(WixBundleHarvestedMsiPackageAttributes.Win64); } + set + { + if (value) + { + this.Attributes |= WixBundleHarvestedMsiPackageAttributes.Win64; + } + else + { + this.Attributes &= ~WixBundleHarvestedMsiPackageAttributes.Win64; + } + } + } + } +} diff --git a/src/api/wix/WixToolset.Data/Symbols/WixBundleHarvestedMspPackageSymbol.cs b/src/api/wix/WixToolset.Data/Symbols/WixBundleHarvestedMspPackageSymbol.cs new file mode 100644 index 00000000..43bcc763 --- /dev/null +++ b/src/api/wix/WixToolset.Data/Symbols/WixBundleHarvestedMspPackageSymbol.cs @@ -0,0 +1,92 @@ +// 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. + +namespace WixToolset.Data +{ + using WixToolset.Data.Symbols; + + public static partial class SymbolDefinitions + { + public static readonly IntermediateSymbolDefinition WixBundleHarvestedMspPackage = new IntermediateSymbolDefinition( + SymbolDefinitionType.WixBundleHarvestedMspPackage, + new[] + { + new IntermediateFieldDefinition(nameof(WixBundleHarvestedMspPackageSymbolFields.Attributes), IntermediateFieldType.Number), + new IntermediateFieldDefinition(nameof(WixBundleHarvestedMspPackageSymbolFields.PatchCode), IntermediateFieldType.String), + new IntermediateFieldDefinition(nameof(WixBundleHarvestedMspPackageSymbolFields.DisplayName), IntermediateFieldType.String), + new IntermediateFieldDefinition(nameof(WixBundleHarvestedMspPackageSymbolFields.Description), IntermediateFieldType.String), + new IntermediateFieldDefinition(nameof(WixBundleHarvestedMspPackageSymbolFields.ManufacturerName), IntermediateFieldType.String), + new IntermediateFieldDefinition(nameof(WixBundleHarvestedMspPackageSymbolFields.PatchXml), IntermediateFieldType.String), + }, + typeof(WixBundleHarvestedMspPackageSymbol)); + } +} + +namespace WixToolset.Data.Symbols +{ + using System; + + public enum WixBundleHarvestedMspPackageSymbolFields + { + Attributes, + PatchCode, + DisplayName, + Description, + ManufacturerName, + PatchXml, + } + + [Flags] + public enum WixBundleHarvestedMspPackageAttributes + { + None = 0x0, + } + + public class WixBundleHarvestedMspPackageSymbol : IntermediateSymbol + { + public WixBundleHarvestedMspPackageSymbol() : base(SymbolDefinitions.WixBundleHarvestedMspPackage, null, null) + { + } + + public WixBundleHarvestedMspPackageSymbol(SourceLineNumber sourceLineNumber, Identifier id = null) : base(SymbolDefinitions.WixBundleHarvestedMspPackage, sourceLineNumber, id) + { + } + + public IntermediateField this[WixBundleHarvestedMspPackageSymbolFields index] => this.Fields[(int)index]; + + public WixBundleHarvestedMspPackageAttributes Attributes + { + get => (WixBundleHarvestedMspPackageAttributes)this.Fields[(int)WixBundleHarvestedMspPackageSymbolFields.Attributes].AsNumber(); + set => this.Set((int)WixBundleHarvestedMspPackageSymbolFields.Attributes, (int)value); + } + + public string PatchCode + { + get => this.Fields[(int)WixBundleHarvestedMspPackageSymbolFields.PatchCode].AsString(); + set => this.Set((int)WixBundleHarvestedMspPackageSymbolFields.PatchCode, value); + } + + public string DisplayName + { + get => this.Fields[(int)WixBundleHarvestedMspPackageSymbolFields.DisplayName].AsString(); + set => this.Set((int)WixBundleHarvestedMspPackageSymbolFields.DisplayName, value); + } + + public string Description + { + get => this.Fields[(int)WixBundleHarvestedMspPackageSymbolFields.Description].AsString(); + set => this.Set((int)WixBundleHarvestedMspPackageSymbolFields.Description, value); + } + + public string ManufacturerName + { + get => this.Fields[(int)WixBundleHarvestedMspPackageSymbolFields.ManufacturerName].AsString(); + set => this.Set((int)WixBundleHarvestedMspPackageSymbolFields.ManufacturerName, value); + } + + public string PatchXml + { + get => this.Fields[(int)WixBundleHarvestedMspPackageSymbolFields.PatchXml].AsString(); + set => this.Set((int)WixBundleHarvestedMspPackageSymbolFields.PatchXml, value); + } + } +} -- cgit v1.2.3-55-g6feb