aboutsummaryrefslogtreecommitdiff
path: root/src/wixext
diff options
context:
space:
mode:
Diffstat (limited to 'src/wixext')
-rw-r--r--src/wixext/Symbols/XmlConfigSymbol.cs8
-rw-r--r--src/wixext/UtilCompiler.cs4
-rw-r--r--src/wixext/UtilTableDefinitions.cs3
3 files changed, 13 insertions, 2 deletions
diff --git a/src/wixext/Symbols/XmlConfigSymbol.cs b/src/wixext/Symbols/XmlConfigSymbol.cs
index ca1cf047..6503a586 100644
--- a/src/wixext/Symbols/XmlConfigSymbol.cs
+++ b/src/wixext/Symbols/XmlConfigSymbol.cs
@@ -12,6 +12,7 @@ namespace WixToolset.Util
12 new[] 12 new[]
13 { 13 {
14 new IntermediateFieldDefinition(nameof(XmlConfigSymbolFields.File), IntermediateFieldType.String), 14 new IntermediateFieldDefinition(nameof(XmlConfigSymbolFields.File), IntermediateFieldType.String),
15 new IntermediateFieldDefinition(nameof(XmlConfigSymbolFields.ElementId), IntermediateFieldType.String),
15 new IntermediateFieldDefinition(nameof(XmlConfigSymbolFields.ElementPath), IntermediateFieldType.String), 16 new IntermediateFieldDefinition(nameof(XmlConfigSymbolFields.ElementPath), IntermediateFieldType.String),
16 new IntermediateFieldDefinition(nameof(XmlConfigSymbolFields.VerifyPath), IntermediateFieldType.String), 17 new IntermediateFieldDefinition(nameof(XmlConfigSymbolFields.VerifyPath), IntermediateFieldType.String),
17 new IntermediateFieldDefinition(nameof(XmlConfigSymbolFields.Name), IntermediateFieldType.String), 18 new IntermediateFieldDefinition(nameof(XmlConfigSymbolFields.Name), IntermediateFieldType.String),
@@ -31,6 +32,7 @@ namespace WixToolset.Util.Symbols
31 public enum XmlConfigSymbolFields 32 public enum XmlConfigSymbolFields
32 { 33 {
33 File, 34 File,
35 ElementId,
34 ElementPath, 36 ElementPath,
35 VerifyPath, 37 VerifyPath,
36 Name, 38 Name,
@@ -58,6 +60,12 @@ namespace WixToolset.Util.Symbols
58 set => this.Set((int)XmlConfigSymbolFields.File, value); 60 set => this.Set((int)XmlConfigSymbolFields.File, value);
59 } 61 }
60 62
63 public string ElementId
64 {
65 get => this.Fields[(int)XmlConfigSymbolFields.ElementId].AsString();
66 set => this.Set((int)XmlConfigSymbolFields.ElementId, value);
67 }
68
61 public string ElementPath 69 public string ElementPath
62 { 70 {
63 get => this.Fields[(int)XmlConfigSymbolFields.ElementPath].AsString(); 71 get => this.Fields[(int)XmlConfigSymbolFields.ElementPath].AsString();
diff --git a/src/wixext/UtilCompiler.cs b/src/wixext/UtilCompiler.cs
index 68c7a234..7314570e 100644
--- a/src/wixext/UtilCompiler.cs
+++ b/src/wixext/UtilCompiler.cs
@@ -3706,13 +3706,15 @@ namespace WixToolset.Util
3706 var symbol = section.AddSymbol(new XmlConfigSymbol(sourceLineNumbers, id) 3706 var symbol = section.AddSymbol(new XmlConfigSymbol(sourceLineNumbers, id)
3707 { 3707 {
3708 File = file, 3708 File = file,
3709 ElementPath = elementId ?? elementPath, 3709 ElementId = elementId,
3710 ElementPath = elementPath,
3710 VerifyPath = verifyPath, 3711 VerifyPath = verifyPath,
3711 Name = name, 3712 Name = name,
3712 Value = value, 3713 Value = value,
3713 Flags = flags, 3714 Flags = flags,
3714 ComponentRef = componentId, 3715 ComponentRef = componentId,
3715 }); 3716 });
3717
3716 if (CompilerConstants.IntegerNotSet != sequence) 3718 if (CompilerConstants.IntegerNotSet != sequence)
3717 { 3719 {
3718 symbol.Sequence = sequence; 3720 symbol.Sequence = sequence;
diff --git a/src/wixext/UtilTableDefinitions.cs b/src/wixext/UtilTableDefinitions.cs
index e5d0850f..1908915c 100644
--- a/src/wixext/UtilTableDefinitions.cs
+++ b/src/wixext/UtilTableDefinitions.cs
@@ -253,7 +253,8 @@ namespace WixToolset.Util
253 { 253 {
254 new ColumnDefinition("Wix4XmlConfig", ColumnType.String, 72, primaryKey: true, nullable: false, ColumnCategory.Identifier, description: "Primary key, non-localized token.", modularizeType: ColumnModularizeType.Column), 254 new ColumnDefinition("Wix4XmlConfig", ColumnType.String, 72, primaryKey: true, nullable: false, ColumnCategory.Identifier, description: "Primary key, non-localized token.", modularizeType: ColumnModularizeType.Column),
255 new ColumnDefinition("File", ColumnType.Localized, 255, primaryKey: false, nullable: false, ColumnCategory.Formatted, description: "The .XML file in which to write the information", modularizeType: ColumnModularizeType.Property), 255 new ColumnDefinition("File", ColumnType.Localized, 255, primaryKey: false, nullable: false, ColumnCategory.Formatted, description: "The .XML file in which to write the information", modularizeType: ColumnModularizeType.Property),
256 new ColumnDefinition("ElementPath", ColumnType.Localized, 0, primaryKey: false, nullable: false, ColumnCategory.Formatted, description: "The XPATH query for an element to modify or add children to. Can also be a foreign key reference to another Wix4XmlConfig row if no attributes are set and the row referenced is a create element row.", modularizeType: ColumnModularizeType.Property), 256 new ColumnDefinition("ElementId", ColumnType.String, 0, primaryKey: false, nullable: true, ColumnCategory.Identifier, keyTable: "Wix4XmlConfig", keyColumn: 1, description: "A foreign key reference to another Wix4XmlConfig row if no attributes are set and the row referenced is a create element row.", modularizeType: ColumnModularizeType.Column),
257 new ColumnDefinition("ElementPath", ColumnType.Localized, 0, primaryKey: false, nullable: true, ColumnCategory.Formatted, description: "The XPATH query for an element to modify or add children to. Must be null if ElementId is provided", modularizeType: ColumnModularizeType.Property),
257 new ColumnDefinition("VerifyPath", ColumnType.Localized, 0, primaryKey: false, nullable: true, ColumnCategory.Formatted, description: "The XPATH query run from ElementPath to verify whether a repair is necessary. Also used to uninstall.", modularizeType: ColumnModularizeType.Property), 258 new ColumnDefinition("VerifyPath", ColumnType.Localized, 0, primaryKey: false, nullable: true, ColumnCategory.Formatted, description: "The XPATH query run from ElementPath to verify whether a repair is necessary. Also used to uninstall.", modularizeType: ColumnModularizeType.Property),
258 new ColumnDefinition("Name", ColumnType.Localized, 255, primaryKey: false, nullable: true, ColumnCategory.Formatted, description: "The .XML file node to set/add in the element.", modularizeType: ColumnModularizeType.Property), 259 new ColumnDefinition("Name", ColumnType.Localized, 255, primaryKey: false, nullable: true, ColumnCategory.Formatted, description: "The .XML file node to set/add in the element.", modularizeType: ColumnModularizeType.Property),
259 new ColumnDefinition("Value", ColumnType.Localized, 0, primaryKey: false, nullable: true, ColumnCategory.Formatted, description: "The value to be written.", modularizeType: ColumnModularizeType.Property), 260 new ColumnDefinition("Value", ColumnType.Localized, 0, primaryKey: false, nullable: true, ColumnCategory.Formatted, description: "The value to be written.", modularizeType: ColumnModularizeType.Property),