diff options
Diffstat (limited to 'src/wixext')
37 files changed, 2624 insertions, 713 deletions
diff --git a/src/wixext/ComPlusCompiler.cs b/src/wixext/ComPlusCompiler.cs index 7f22c56b..4709eba9 100644 --- a/src/wixext/ComPlusCompiler.cs +++ b/src/wixext/ComPlusCompiler.cs | |||
@@ -1,32 +1,23 @@ | |||
1 | // 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. | 1 | // 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. |
2 | 2 | ||
3 | namespace WixToolset.Extensions | 3 | namespace WixToolset.ComPlus |
4 | { | 4 | { |
5 | using System; | 5 | using System; |
6 | using System.Collections; | 6 | using System.Collections; |
7 | using System.Collections.Generic; | 7 | using System.Collections.Generic; |
8 | using System.Globalization; | 8 | using System.Globalization; |
9 | using System.Reflection; | 9 | using System.Text; |
10 | using System.Xml; | ||
11 | using System.Xml.Linq; | 10 | using System.Xml.Linq; |
12 | using System.Xml.Schema; | ||
13 | using WixToolset.Data; | 11 | using WixToolset.Data; |
14 | using WixToolset.Extensibility; | 12 | using WixToolset.Extensibility; |
13 | using WixToolset.Extensibility.Data; | ||
15 | 14 | ||
16 | /// <summary> | 15 | /// <summary> |
17 | /// The compiler for the WiX Toolset Internet Information Services Extension. | 16 | /// The compiler for the WiX Toolset COM+ Extension. |
18 | /// </summary> | 17 | /// </summary> |
19 | public sealed class ComPlusCompiler : CompilerExtension | 18 | public sealed class ComPlusCompiler : BaseCompilerExtension |
20 | { | 19 | { |
21 | /// <summary> | 20 | /// <summary> |
22 | /// Instantiate a new ComPlusCompiler. | ||
23 | /// </summary> | ||
24 | public ComPlusCompiler() | ||
25 | { | ||
26 | this.Namespace = "http://wixtoolset.org/schemas/v4/wxs/complus"; | ||
27 | } | ||
28 | |||
29 | /// <summary> | ||
30 | /// </summary> | 21 | /// </summary> |
31 | /// <remarks></remarks> | 22 | /// <remarks></remarks> |
32 | public enum CpiAssemblyAttributes | 23 | public enum CpiAssemblyAttributes |
@@ -37,6 +28,8 @@ namespace WixToolset.Extensions | |||
37 | RegisterInCommit = (1 << 3) | 28 | RegisterInCommit = (1 << 3) |
38 | } | 29 | } |
39 | 30 | ||
31 | public override XNamespace Namespace => "http://wixtoolset.org/schemas/v4/wxs/complus"; | ||
32 | |||
40 | /// <summary> | 33 | /// <summary> |
41 | /// Processes an element for the Compiler. | 34 | /// Processes an element for the Compiler. |
42 | /// </summary> | 35 | /// </summary> |
@@ -44,7 +37,7 @@ namespace WixToolset.Extensions | |||
44 | /// <param name="parentElement">Parent element of element to process.</param> | 37 | /// <param name="parentElement">Parent element of element to process.</param> |
45 | /// <param name="element">Element to process.</param> | 38 | /// <param name="element">Element to process.</param> |
46 | /// <param name="contextValues">Extra information about the context in which this element is being parsed.</param> | 39 | /// <param name="contextValues">Extra information about the context in which this element is being parsed.</param> |
47 | public override void ParseElement(XElement parentElement, XElement element, IDictionary<string, string> context) | 40 | public override void ParseElement(Intermediate intermediate, IntermediateSection section, XElement parentElement, XElement element, IDictionary<string, string> context) |
48 | { | 41 | { |
49 | switch (parentElement.Name.LocalName) | 42 | switch (parentElement.Name.LocalName) |
50 | { | 43 | { |
@@ -56,49 +49,49 @@ namespace WixToolset.Extensions | |||
56 | switch (element.Name.LocalName) | 49 | switch (element.Name.LocalName) |
57 | { | 50 | { |
58 | case "ComPlusPartition": | 51 | case "ComPlusPartition": |
59 | this.ParseComPlusPartitionElement(element, componentId, win64); | 52 | this.ParseComPlusPartitionElement(intermediate, section, element, componentId, win64); |
60 | break; | 53 | break; |
61 | case "ComPlusPartitionRole": | 54 | case "ComPlusPartitionRole": |
62 | this.ParseComPlusPartitionRoleElement(element, componentId, null); | 55 | this.ParseComPlusPartitionRoleElement(intermediate, section, element, componentId, null); |
63 | break; | 56 | break; |
64 | case "ComPlusUserInPartitionRole": | 57 | case "ComPlusUserInPartitionRole": |
65 | this.ParseComPlusUserInPartitionRoleElement(element, componentId, null); | 58 | this.ParseComPlusUserInPartitionRoleElement(intermediate, section, element, componentId, null); |
66 | break; | 59 | break; |
67 | case "ComPlusGroupInPartitionRole": | 60 | case "ComPlusGroupInPartitionRole": |
68 | this.ParseComPlusGroupInPartitionRoleElement(element, componentId, null); | 61 | this.ParseComPlusGroupInPartitionRoleElement(intermediate, section, element, componentId, null); |
69 | break; | 62 | break; |
70 | case "ComPlusPartitionUser": | 63 | case "ComPlusPartitionUser": |
71 | this.ParseComPlusPartitionUserElement(element, componentId, null); | 64 | this.ParseComPlusPartitionUserElement(intermediate, section, element, componentId, null); |
72 | break; | 65 | break; |
73 | case "ComPlusApplication": | 66 | case "ComPlusApplication": |
74 | this.ParseComPlusApplicationElement(element, componentId, win64, null); | 67 | this.ParseComPlusApplicationElement(intermediate, section, element, componentId, win64, null); |
75 | break; | 68 | break; |
76 | case "ComPlusApplicationRole": | 69 | case "ComPlusApplicationRole": |
77 | this.ParseComPlusApplicationRoleElement(element, componentId, null); | 70 | this.ParseComPlusApplicationRoleElement(intermediate, section, element, componentId, null); |
78 | break; | 71 | break; |
79 | case "ComPlusUserInApplicationRole": | 72 | case "ComPlusUserInApplicationRole": |
80 | this.ParseComPlusUserInApplicationRoleElement(element, componentId, null); | 73 | this.ParseComPlusUserInApplicationRoleElement(intermediate, section, element, componentId, null); |
81 | break; | 74 | break; |
82 | case "ComPlusGroupInApplicationRole": | 75 | case "ComPlusGroupInApplicationRole": |
83 | this.ParseComPlusGroupInApplicationRoleElement(element, componentId, null); | 76 | this.ParseComPlusGroupInApplicationRoleElement(intermediate, section, element, componentId, null); |
84 | break; | 77 | break; |
85 | case "ComPlusAssembly": | 78 | case "ComPlusAssembly": |
86 | this.ParseComPlusAssemblyElement(element, componentId, win64, null); | 79 | this.ParseComPlusAssemblyElement(intermediate, section, element, componentId, win64, null); |
87 | break; | 80 | break; |
88 | case "ComPlusRoleForComponent": | 81 | case "ComPlusRoleForComponent": |
89 | this.ParseComPlusRoleForComponentElement(element, componentId, null); | 82 | this.ParseComPlusRoleForComponentElement(intermediate, section, element, componentId, null); |
90 | break; | 83 | break; |
91 | case "ComPlusRoleForInterface": | 84 | case "ComPlusRoleForInterface": |
92 | this.ParseComPlusRoleForInterfaceElement(element, componentId, null); | 85 | this.ParseComPlusRoleForInterfaceElement(intermediate, section, element, componentId, null); |
93 | break; | 86 | break; |
94 | case "ComPlusRoleForMethod": | 87 | case "ComPlusRoleForMethod": |
95 | this.ParseComPlusRoleForMethodElement(element, componentId, null); | 88 | this.ParseComPlusRoleForMethodElement(intermediate, section, element, componentId, null); |
96 | break; | 89 | break; |
97 | case "ComPlusSubscription": | 90 | case "ComPlusSubscription": |
98 | this.ParseComPlusSubscriptionElement(element, componentId, null); | 91 | this.ParseComPlusSubscriptionElement(intermediate, section, element, componentId, null); |
99 | break; | 92 | break; |
100 | default: | 93 | default: |
101 | this.Core.UnexpectedElement(parentElement, element); | 94 | this.ParseHelper.UnexpectedElement(parentElement, element); |
102 | break; | 95 | break; |
103 | } | 96 | } |
104 | break; | 97 | break; |
@@ -108,24 +101,24 @@ namespace WixToolset.Extensions | |||
108 | switch (element.Name.LocalName) | 101 | switch (element.Name.LocalName) |
109 | { | 102 | { |
110 | case "ComPlusPartition": | 103 | case "ComPlusPartition": |
111 | this.ParseComPlusPartitionElement(element, null, false); | 104 | this.ParseComPlusPartitionElement(intermediate, section, element, null, false); |
112 | break; | 105 | break; |
113 | case "ComPlusPartitionRole": | 106 | case "ComPlusPartitionRole": |
114 | this.ParseComPlusPartitionRoleElement(element, null, null); | 107 | this.ParseComPlusPartitionRoleElement(intermediate, section, element, null, null); |
115 | break; | 108 | break; |
116 | case "ComPlusApplication": | 109 | case "ComPlusApplication": |
117 | this.ParseComPlusApplicationElement(element, null, false, null); | 110 | this.ParseComPlusApplicationElement(intermediate, section, element, null, false, null); |
118 | break; | 111 | break; |
119 | case "ComPlusApplicationRole": | 112 | case "ComPlusApplicationRole": |
120 | this.ParseComPlusApplicationRoleElement(element, null, null); | 113 | this.ParseComPlusApplicationRoleElement(intermediate, section, element, null, null); |
121 | break; | 114 | break; |
122 | default: | 115 | default: |
123 | this.Core.UnexpectedElement(parentElement, element); | 116 | this.ParseHelper.UnexpectedElement(parentElement, element); |
124 | break; | 117 | break; |
125 | } | 118 | } |
126 | break; | 119 | break; |
127 | default: | 120 | default: |
128 | this.Core.UnexpectedElement(parentElement, element); | 121 | this.ParseHelper.UnexpectedElement(parentElement, element); |
129 | break; | 122 | break; |
130 | } | 123 | } |
131 | } | 124 | } |
@@ -135,9 +128,9 @@ namespace WixToolset.Extensions | |||
135 | /// </summary> | 128 | /// </summary> |
136 | /// <param name="node">Element to parse.</param> | 129 | /// <param name="node">Element to parse.</param> |
137 | /// <param name="componentKey">Identifier of parent component.</param> | 130 | /// <param name="componentKey">Identifier of parent component.</param> |
138 | private void ParseComPlusPartitionElement(XElement node, string componentKey, bool win64) | 131 | private void ParseComPlusPartitionElement(Intermediate intermediate, IntermediateSection section, XElement node, string componentKey, bool win64) |
139 | { | 132 | { |
140 | SourceLineNumber sourceLineNumbers = Preprocessor.GetSourceLineNumbers(node); | 133 | SourceLineNumber sourceLineNumbers = this.ParseHelper.GetSourceLineNumbers(node); |
141 | 134 | ||
142 | string key = null; | 135 | string key = null; |
143 | string id = null; | 136 | string id = null; |
@@ -152,49 +145,49 @@ namespace WixToolset.Extensions | |||
152 | switch (attrib.Name.LocalName) | 145 | switch (attrib.Name.LocalName) |
153 | { | 146 | { |
154 | case "Id": | 147 | case "Id": |
155 | key = this.Core.GetAttributeIdentifierValue(sourceLineNumbers, attrib); | 148 | key = this.ParseHelper.GetAttributeIdentifierValue(sourceLineNumbers, attrib); |
156 | break; | 149 | break; |
157 | case "PartitionId": | 150 | case "PartitionId": |
158 | id = TryFormatGuidValue(this.Core.GetAttributeValue(sourceLineNumbers, attrib)); | 151 | id = this.TryFormatGuidValue(this.ParseHelper.GetAttributeValue(sourceLineNumbers, attrib)); |
159 | break; | 152 | break; |
160 | case "Name": | 153 | case "Name": |
161 | name = this.Core.GetAttributeValue(sourceLineNumbers, attrib); | 154 | name = this.ParseHelper.GetAttributeValue(sourceLineNumbers, attrib); |
162 | break; | 155 | break; |
163 | case "Changeable": | 156 | case "Changeable": |
164 | this.Core.OnMessage(WixWarnings.DeprecatedAttribute(sourceLineNumbers, node.Name.LocalName, attrib.Name.LocalName)); | 157 | this.Messaging.Write(WarningMessages.DeprecatedAttribute(sourceLineNumbers, node.Name.LocalName, attrib.Name.LocalName)); |
165 | break; | 158 | break; |
166 | case "Deleteable": | 159 | case "Deleteable": |
167 | if (null == componentKey) | 160 | if (null == componentKey) |
168 | { | 161 | { |
169 | this.Core.OnMessage(ComPlusErrors.IllegalAttributeWithoutComponent(sourceLineNumbers, node.Name.LocalName, attrib.Name.LocalName)); | 162 | this.Messaging.Write(ComPlusErrors.IllegalAttributeWithoutComponent(sourceLineNumbers, node.Name.LocalName, attrib.Name.LocalName)); |
170 | } | 163 | } |
171 | properties["Deleteable"] = YesNoType.Yes == this.Core.GetAttributeYesNoValue(sourceLineNumbers, attrib) ? "1" : "0"; | 164 | properties["Deleteable"] = YesNoType.Yes == this.ParseHelper.GetAttributeYesNoValue(sourceLineNumbers, attrib) ? "1" : "0"; |
172 | break; | 165 | break; |
173 | case "Description": | 166 | case "Description": |
174 | if (null == componentKey) | 167 | if (null == componentKey) |
175 | { | 168 | { |
176 | this.Core.OnMessage(ComPlusErrors.IllegalAttributeWithoutComponent(sourceLineNumbers, node.Name.LocalName, attrib.Name.LocalName)); | 169 | this.Messaging.Write(ComPlusErrors.IllegalAttributeWithoutComponent(sourceLineNumbers, node.Name.LocalName, attrib.Name.LocalName)); |
177 | } | 170 | } |
178 | properties["Description"] = this.Core.GetAttributeValue(sourceLineNumbers, attrib); | 171 | properties["Description"] = this.ParseHelper.GetAttributeValue(sourceLineNumbers, attrib); |
179 | break; | 172 | break; |
180 | default: | 173 | default: |
181 | this.Core.UnexpectedAttribute(node, attrib); | 174 | this.ParseHelper.UnexpectedAttribute(node, attrib); |
182 | break; | 175 | break; |
183 | } | 176 | } |
184 | } | 177 | } |
185 | else | 178 | else |
186 | { | 179 | { |
187 | this.Core.ParseExtensionAttribute(node, attrib); | 180 | this.ParseHelper.ParseExtensionAttribute(this.Context.Extensions, intermediate, section, node, attrib); |
188 | } | 181 | } |
189 | } | 182 | } |
190 | 183 | ||
191 | if (null != componentKey && null == name) | 184 | if (null != componentKey && null == name) |
192 | { | 185 | { |
193 | this.Core.OnMessage(ComPlusErrors.RequiredAttributeUnderComponent(sourceLineNumbers, node.Name.LocalName, "Name")); | 186 | this.Messaging.Write(ComPlusErrors.RequiredAttributeUnderComponent(sourceLineNumbers, node.Name.LocalName, "Name")); |
194 | } | 187 | } |
195 | if (null == componentKey && null == id && null == name) | 188 | if (null == componentKey && null == id && null == name) |
196 | { | 189 | { |
197 | this.Core.OnMessage(ComPlusErrors.RequiredAttributeNotUnderComponent(sourceLineNumbers, node.Name.LocalName, "Id", "Name")); | 190 | this.Messaging.Write(ComPlusErrors.RequiredAttributeNotUnderComponent(sourceLineNumbers, node.Name.LocalName, "Id", "Name")); |
198 | } | 191 | } |
199 | 192 | ||
200 | foreach (XElement child in node.Elements()) | 193 | foreach (XElement child in node.Elements()) |
@@ -204,58 +197,58 @@ namespace WixToolset.Extensions | |||
204 | switch (child.Name.LocalName) | 197 | switch (child.Name.LocalName) |
205 | { | 198 | { |
206 | case "ComPlusPartitionRole": | 199 | case "ComPlusPartitionRole": |
207 | this.ParseComPlusPartitionRoleElement(child, componentKey, key); | 200 | this.ParseComPlusPartitionRoleElement(intermediate, section, child, componentKey, key); |
208 | break; | 201 | break; |
209 | case "ComPlusPartitionUser": | 202 | case "ComPlusPartitionUser": |
210 | this.ParseComPlusPartitionUserElement(child, componentKey, key); | 203 | this.ParseComPlusPartitionUserElement(intermediate, section, child, componentKey, key); |
211 | break; | 204 | break; |
212 | case "ComPlusApplication": | 205 | case "ComPlusApplication": |
213 | this.ParseComPlusApplicationElement(child, componentKey, win64, key); | 206 | this.ParseComPlusApplicationElement(intermediate, section, child, componentKey, win64, key); |
214 | break; | 207 | break; |
215 | default: | 208 | default: |
216 | this.Core.UnexpectedElement(node, child); | 209 | this.ParseHelper.UnexpectedElement(node, child); |
217 | break; | 210 | break; |
218 | } | 211 | } |
219 | } | 212 | } |
220 | else | 213 | else |
221 | { | 214 | { |
222 | this.Core.ParseExtensionElement(node, child); | 215 | this.ParseHelper.ParseExtensionElement(this.Context.Extensions, intermediate, section, node, child); |
223 | } | 216 | } |
224 | } | 217 | } |
225 | 218 | ||
226 | Row row = this.Core.CreateRow(sourceLineNumbers, "ComPlusPartition"); | 219 | var row = this.ParseHelper.CreateRow(section, sourceLineNumbers, "ComPlusPartition"); |
227 | row[0] = key; | 220 | row.Set(0, key); |
228 | row[1] = componentKey; | 221 | row.Set(1, componentKey); |
229 | row[2] = id; | 222 | row.Set(2, id); |
230 | row[3] = name; | 223 | row.Set(3, name); |
231 | 224 | ||
232 | IDictionaryEnumerator propertiesEnumerator = properties.GetEnumerator(); | 225 | IDictionaryEnumerator propertiesEnumerator = properties.GetEnumerator(); |
233 | while (propertiesEnumerator.MoveNext()) | 226 | while (propertiesEnumerator.MoveNext()) |
234 | { | 227 | { |
235 | Row propertyRow = this.Core.CreateRow(sourceLineNumbers, "ComPlusPartitionProperty"); | 228 | var propertyRow = this.ParseHelper.CreateRow(section, sourceLineNumbers, "ComPlusPartitionProperty"); |
236 | propertyRow[0] = key; | 229 | propertyRow.Set(0, key); |
237 | propertyRow[1] = (string)propertiesEnumerator.Key; | 230 | propertyRow.Set(1, (string)propertiesEnumerator.Key); |
238 | propertyRow[2] = (string)propertiesEnumerator.Value; | 231 | propertyRow.Set(2, (string)propertiesEnumerator.Value); |
239 | } | 232 | } |
240 | 233 | ||
241 | if (componentKey != null) | 234 | if (componentKey != null) |
242 | { | 235 | { |
243 | if (win64) | 236 | if (win64) |
244 | { | 237 | { |
245 | if (this.Core.CurrentPlatform == Platform.IA64) | 238 | if (this.Context.Platform == Platform.IA64) |
246 | { | 239 | { |
247 | this.Core.OnMessage(WixErrors.UnsupportedPlatformForElement(sourceLineNumbers, "ia64", node.Name.LocalName)); | 240 | this.Messaging.Write(ErrorMessages.UnsupportedPlatformForElement(sourceLineNumbers, "ia64", node.Name.LocalName)); |
248 | } | 241 | } |
249 | else | 242 | else |
250 | { | 243 | { |
251 | this.Core.CreateSimpleReference(sourceLineNumbers, "CustomAction", "ConfigureComPlusInstall_x64"); | 244 | this.ParseHelper.CreateSimpleReference(section, sourceLineNumbers, "CustomAction", "ConfigureComPlusInstall_x64"); |
252 | this.Core.CreateSimpleReference(sourceLineNumbers, "CustomAction", "ConfigureComPlusUninstall_x64"); | 245 | this.ParseHelper.CreateSimpleReference(section, sourceLineNumbers, "CustomAction", "ConfigureComPlusUninstall_x64"); |
253 | } | 246 | } |
254 | } | 247 | } |
255 | else | 248 | else |
256 | { | 249 | { |
257 | this.Core.CreateSimpleReference(sourceLineNumbers, "CustomAction", "ConfigureComPlusInstall"); | 250 | this.ParseHelper.CreateSimpleReference(section, sourceLineNumbers, "CustomAction", "ConfigureComPlusInstall"); |
258 | this.Core.CreateSimpleReference(sourceLineNumbers, "CustomAction", "ConfigureComPlusUninstall"); | 251 | this.ParseHelper.CreateSimpleReference(section, sourceLineNumbers, "CustomAction", "ConfigureComPlusUninstall"); |
259 | } | 252 | } |
260 | } | 253 | } |
261 | } | 254 | } |
@@ -266,9 +259,9 @@ namespace WixToolset.Extensions | |||
266 | /// <param name="node">Element to parse.</param> | 259 | /// <param name="node">Element to parse.</param> |
267 | /// <param name="componentKey">Identifier of parent component.</param> | 260 | /// <param name="componentKey">Identifier of parent component.</param> |
268 | /// <param name="applicationKey">Optional identifier of parent application.</param> | 261 | /// <param name="applicationKey">Optional identifier of parent application.</param> |
269 | private void ParseComPlusPartitionRoleElement(XElement node, string componentKey, string partitionKey) | 262 | private void ParseComPlusPartitionRoleElement(Intermediate intermediate, IntermediateSection section, XElement node, string componentKey, string partitionKey) |
270 | { | 263 | { |
271 | SourceLineNumber sourceLineNumbers = Preprocessor.GetSourceLineNumbers(node); | 264 | SourceLineNumber sourceLineNumbers = this.ParseHelper.GetSourceLineNumbers(node); |
272 | 265 | ||
273 | string key = null; | 266 | string key = null; |
274 | string name = null; | 267 | string name = null; |
@@ -280,33 +273,33 @@ namespace WixToolset.Extensions | |||
280 | switch (attrib.Name.LocalName) | 273 | switch (attrib.Name.LocalName) |
281 | { | 274 | { |
282 | case "Id": | 275 | case "Id": |
283 | key = this.Core.GetAttributeIdentifierValue(sourceLineNumbers, attrib); | 276 | key = this.ParseHelper.GetAttributeIdentifierValue(sourceLineNumbers, attrib); |
284 | break; | 277 | break; |
285 | case "Partition": | 278 | case "Partition": |
286 | if (null != partitionKey) | 279 | if (null != partitionKey) |
287 | { | 280 | { |
288 | this.Core.OnMessage(WixErrors.IllegalAttributeWhenNested(sourceLineNumbers, node.Name.LocalName, attrib.Name.LocalName, node.Parent.Name.LocalName)); | 281 | this.Messaging.Write(ErrorMessages.IllegalAttributeWhenNested(sourceLineNumbers, node.Name.LocalName, attrib.Name.LocalName, node.Parent.Name.LocalName)); |
289 | } | 282 | } |
290 | partitionKey = this.Core.GetAttributeValue(sourceLineNumbers, attrib); | 283 | partitionKey = this.ParseHelper.GetAttributeValue(sourceLineNumbers, attrib); |
291 | this.Core.CreateSimpleReference(sourceLineNumbers, "ComPlusPartition", partitionKey); | 284 | this.ParseHelper.CreateSimpleReference(section, sourceLineNumbers, "ComPlusPartition", partitionKey); |
292 | break; | 285 | break; |
293 | case "Name": | 286 | case "Name": |
294 | name = this.Core.GetAttributeValue(sourceLineNumbers, attrib); | 287 | name = this.ParseHelper.GetAttributeValue(sourceLineNumbers, attrib); |
295 | break; | 288 | break; |
296 | default: | 289 | default: |
297 | this.Core.UnexpectedAttribute(node, attrib); | 290 | this.ParseHelper.UnexpectedAttribute(node, attrib); |
298 | break; | 291 | break; |
299 | } | 292 | } |
300 | } | 293 | } |
301 | else | 294 | else |
302 | { | 295 | { |
303 | this.Core.ParseExtensionAttribute(node, attrib); | 296 | this.ParseHelper.ParseExtensionAttribute(this.Context.Extensions, intermediate, section, node, attrib); |
304 | } | 297 | } |
305 | } | 298 | } |
306 | 299 | ||
307 | if (null == partitionKey) | 300 | if (null == partitionKey) |
308 | { | 301 | { |
309 | this.Core.OnMessage(WixErrors.ExpectedAttribute(sourceLineNumbers, node.Name.LocalName, "Partition")); | 302 | this.Messaging.Write(ErrorMessages.ExpectedAttribute(sourceLineNumbers, node.Name.LocalName, "Partition")); |
310 | } | 303 | } |
311 | 304 | ||
312 | foreach (XElement child in node.Elements()) | 305 | foreach (XElement child in node.Elements()) |
@@ -316,27 +309,27 @@ namespace WixToolset.Extensions | |||
316 | switch (child.Name.LocalName) | 309 | switch (child.Name.LocalName) |
317 | { | 310 | { |
318 | case "ComPlusUserInPartitionRole": | 311 | case "ComPlusUserInPartitionRole": |
319 | this.ParseComPlusUserInPartitionRoleElement(child, componentKey, key); | 312 | this.ParseComPlusUserInPartitionRoleElement(intermediate, section, child, componentKey, key); |
320 | break; | 313 | break; |
321 | case "ComPlusGroupInPartitionRole": | 314 | case "ComPlusGroupInPartitionRole": |
322 | this.ParseComPlusGroupInPartitionRoleElement(child, componentKey, key); | 315 | this.ParseComPlusGroupInPartitionRoleElement(intermediate, section, child, componentKey, key); |
323 | break; | 316 | break; |
324 | default: | 317 | default: |
325 | this.Core.UnexpectedElement(node, child); | 318 | this.ParseHelper.UnexpectedElement(node, child); |
326 | break; | 319 | break; |
327 | } | 320 | } |
328 | } | 321 | } |
329 | else | 322 | else |
330 | { | 323 | { |
331 | this.Core.ParseExtensionElement(node, child); | 324 | this.ParseHelper.ParseExtensionElement(this.Context.Extensions, intermediate, section, node, child); |
332 | } | 325 | } |
333 | } | 326 | } |
334 | 327 | ||
335 | // add table row | 328 | // add table row |
336 | Row row = this.Core.CreateRow(sourceLineNumbers, "ComPlusPartitionRole"); | 329 | var row = this.ParseHelper.CreateRow(section, sourceLineNumbers, "ComPlusPartitionRole"); |
337 | row[0] = key; | 330 | row.Set(0, key); |
338 | row[1] = partitionKey; | 331 | row.Set(1, partitionKey); |
339 | row[3] = name; | 332 | row.Set(3, name); |
340 | } | 333 | } |
341 | 334 | ||
342 | /// <summary> | 335 | /// <summary> |
@@ -345,9 +338,9 @@ namespace WixToolset.Extensions | |||
345 | /// <param name="node">Element to parse.</param> | 338 | /// <param name="node">Element to parse.</param> |
346 | /// <param name="componentKey">Identifier of parent component.</param> | 339 | /// <param name="componentKey">Identifier of parent component.</param> |
347 | /// <param name="applicationKey">Optional identifier of parent application role.</param> | 340 | /// <param name="applicationKey">Optional identifier of parent application role.</param> |
348 | private void ParseComPlusUserInPartitionRoleElement(XElement node, string componentKey, string partitionRoleKey) | 341 | private void ParseComPlusUserInPartitionRoleElement(Intermediate intermediate, IntermediateSection section, XElement node, string componentKey, string partitionRoleKey) |
349 | { | 342 | { |
350 | SourceLineNumber sourceLineNumbers = Preprocessor.GetSourceLineNumbers(node); | 343 | SourceLineNumber sourceLineNumbers = this.ParseHelper.GetSourceLineNumbers(node); |
351 | 344 | ||
352 | string key = null; | 345 | string key = null; |
353 | string user = null; | 346 | string user = null; |
@@ -359,41 +352,41 @@ namespace WixToolset.Extensions | |||
359 | switch (attrib.Name.LocalName) | 352 | switch (attrib.Name.LocalName) |
360 | { | 353 | { |
361 | case "Id": | 354 | case "Id": |
362 | key = this.Core.GetAttributeIdentifierValue(sourceLineNumbers, attrib); | 355 | key = this.ParseHelper.GetAttributeIdentifierValue(sourceLineNumbers, attrib); |
363 | break; | 356 | break; |
364 | case "PartitionRole": | 357 | case "PartitionRole": |
365 | if (null != partitionRoleKey) | 358 | if (null != partitionRoleKey) |
366 | { | 359 | { |
367 | this.Core.OnMessage(WixErrors.IllegalAttributeWhenNested(sourceLineNumbers, node.Name.LocalName, attrib.Name.LocalName, node.Parent.Name.LocalName)); | 360 | this.Messaging.Write(ErrorMessages.IllegalAttributeWhenNested(sourceLineNumbers, node.Name.LocalName, attrib.Name.LocalName, node.Parent.Name.LocalName)); |
368 | } | 361 | } |
369 | partitionRoleKey = this.Core.GetAttributeValue(sourceLineNumbers, attrib); | 362 | partitionRoleKey = this.ParseHelper.GetAttributeValue(sourceLineNumbers, attrib); |
370 | this.Core.CreateSimpleReference(sourceLineNumbers, "ComPlusPartitionRole", partitionRoleKey); | 363 | this.ParseHelper.CreateSimpleReference(section, sourceLineNumbers, "ComPlusPartitionRole", partitionRoleKey); |
371 | break; | 364 | break; |
372 | case "User": | 365 | case "User": |
373 | user = this.Core.GetAttributeValue(sourceLineNumbers, attrib); | 366 | user = this.ParseHelper.GetAttributeValue(sourceLineNumbers, attrib); |
374 | this.Core.CreateSimpleReference(sourceLineNumbers, "User", user); | 367 | this.ParseHelper.CreateSimpleReference(section, sourceLineNumbers, "User", user); |
375 | break; | 368 | break; |
376 | default: | 369 | default: |
377 | this.Core.UnexpectedAttribute(node, attrib); | 370 | this.ParseHelper.UnexpectedAttribute(node, attrib); |
378 | break; | 371 | break; |
379 | } | 372 | } |
380 | } | 373 | } |
381 | else | 374 | else |
382 | { | 375 | { |
383 | this.Core.ParseExtensionAttribute(node, attrib); | 376 | this.ParseHelper.ParseExtensionAttribute(this.Context.Extensions, intermediate, section, node, attrib); |
384 | } | 377 | } |
385 | } | 378 | } |
386 | 379 | ||
387 | if (null == partitionRoleKey) | 380 | if (null == partitionRoleKey) |
388 | { | 381 | { |
389 | this.Core.OnMessage(WixErrors.ExpectedAttribute(sourceLineNumbers, node.Name.LocalName, "PartitionRole")); | 382 | this.Messaging.Write(ErrorMessages.ExpectedAttribute(sourceLineNumbers, node.Name.LocalName, "PartitionRole")); |
390 | } | 383 | } |
391 | 384 | ||
392 | Row row = this.Core.CreateRow(sourceLineNumbers, "ComPlusUserInPartitionRole"); | 385 | var row = this.ParseHelper.CreateRow(section, sourceLineNumbers, "ComPlusUserInPartitionRole"); |
393 | row[0] = key; | 386 | row.Set(0, key); |
394 | row[1] = partitionRoleKey; | 387 | row.Set(1, partitionRoleKey); |
395 | row[2] = componentKey; | 388 | row.Set(2, componentKey); |
396 | row[3] = user; | 389 | row.Set(3, user); |
397 | } | 390 | } |
398 | 391 | ||
399 | /// <summary> | 392 | /// <summary> |
@@ -402,9 +395,9 @@ namespace WixToolset.Extensions | |||
402 | /// <param name="node">Element to parse.</param> | 395 | /// <param name="node">Element to parse.</param> |
403 | /// <param name="componentKey">Identifier of parent component.</param> | 396 | /// <param name="componentKey">Identifier of parent component.</param> |
404 | /// <param name="applicationKey">Optional identifier of parent application role.</param> | 397 | /// <param name="applicationKey">Optional identifier of parent application role.</param> |
405 | private void ParseComPlusGroupInPartitionRoleElement(XElement node, string componentKey, string partitionRoleKey) | 398 | private void ParseComPlusGroupInPartitionRoleElement(Intermediate intermediate, IntermediateSection section, XElement node, string componentKey, string partitionRoleKey) |
406 | { | 399 | { |
407 | SourceLineNumber sourceLineNumbers = Preprocessor.GetSourceLineNumbers(node); | 400 | SourceLineNumber sourceLineNumbers = this.ParseHelper.GetSourceLineNumbers(node); |
408 | 401 | ||
409 | string key = null; | 402 | string key = null; |
410 | string group = null; | 403 | string group = null; |
@@ -416,41 +409,41 @@ namespace WixToolset.Extensions | |||
416 | switch (attrib.Name.LocalName) | 409 | switch (attrib.Name.LocalName) |
417 | { | 410 | { |
418 | case "Id": | 411 | case "Id": |
419 | key = this.Core.GetAttributeIdentifierValue(sourceLineNumbers, attrib); | 412 | key = this.ParseHelper.GetAttributeIdentifierValue(sourceLineNumbers, attrib); |
420 | break; | 413 | break; |
421 | case "PartitionRole": | 414 | case "PartitionRole": |
422 | if (null != partitionRoleKey) | 415 | if (null != partitionRoleKey) |
423 | { | 416 | { |
424 | this.Core.OnMessage(WixErrors.IllegalAttributeWhenNested(sourceLineNumbers, node.Name.LocalName, attrib.Name.LocalName, node.Parent.Name.LocalName)); | 417 | this.Messaging.Write(ErrorMessages.IllegalAttributeWhenNested(sourceLineNumbers, node.Name.LocalName, attrib.Name.LocalName, node.Parent.Name.LocalName)); |
425 | } | 418 | } |
426 | partitionRoleKey = this.Core.GetAttributeValue(sourceLineNumbers, attrib); | 419 | partitionRoleKey = this.ParseHelper.GetAttributeValue(sourceLineNumbers, attrib); |
427 | this.Core.CreateSimpleReference(sourceLineNumbers, "ComPlusPartitionRole", partitionRoleKey); | 420 | this.ParseHelper.CreateSimpleReference(section, sourceLineNumbers, "ComPlusPartitionRole", partitionRoleKey); |
428 | break; | 421 | break; |
429 | case "Group": | 422 | case "Group": |
430 | group = this.Core.GetAttributeValue(sourceLineNumbers, attrib); | 423 | group = this.ParseHelper.GetAttributeValue(sourceLineNumbers, attrib); |
431 | this.Core.CreateSimpleReference(sourceLineNumbers, "Group", group); | 424 | this.ParseHelper.CreateSimpleReference(section, sourceLineNumbers, "Group", group); |
432 | break; | 425 | break; |
433 | default: | 426 | default: |
434 | this.Core.UnexpectedAttribute(node, attrib); | 427 | this.ParseHelper.UnexpectedAttribute(node, attrib); |
435 | break; | 428 | break; |
436 | } | 429 | } |
437 | } | 430 | } |
438 | else | 431 | else |
439 | { | 432 | { |
440 | this.Core.ParseExtensionAttribute(node, attrib); | 433 | this.ParseHelper.ParseExtensionAttribute(this.Context.Extensions, intermediate, section, node, attrib); |
441 | } | 434 | } |
442 | } | 435 | } |
443 | 436 | ||
444 | if (null == partitionRoleKey) | 437 | if (null == partitionRoleKey) |
445 | { | 438 | { |
446 | this.Core.OnMessage(WixErrors.ExpectedAttribute(sourceLineNumbers, node.Name.LocalName, "PartitionRole")); | 439 | this.Messaging.Write(ErrorMessages.ExpectedAttribute(sourceLineNumbers, node.Name.LocalName, "PartitionRole")); |
447 | } | 440 | } |
448 | 441 | ||
449 | Row row = this.Core.CreateRow(sourceLineNumbers, "ComPlusGroupInPartitionRole"); | 442 | var row = this.ParseHelper.CreateRow(section, sourceLineNumbers, "ComPlusGroupInPartitionRole"); |
450 | row[0] = key; | 443 | row.Set(0, key); |
451 | row[1] = partitionRoleKey; | 444 | row.Set(1, partitionRoleKey); |
452 | row[2] = componentKey; | 445 | row.Set(2, componentKey); |
453 | row[3] = group; | 446 | row.Set(3, group); |
454 | } | 447 | } |
455 | 448 | ||
456 | /// <summary> | 449 | /// <summary> |
@@ -458,9 +451,9 @@ namespace WixToolset.Extensions | |||
458 | /// </summary> | 451 | /// </summary> |
459 | /// <param name="node">Element to parse.</param> | 452 | /// <param name="node">Element to parse.</param> |
460 | /// <param name="componentKey">Identifier of parent component.</param> | 453 | /// <param name="componentKey">Identifier of parent component.</param> |
461 | private void ParseComPlusPartitionUserElement(XElement node, string componentKey, string partitionKey) | 454 | private void ParseComPlusPartitionUserElement(Intermediate intermediate, IntermediateSection section, XElement node, string componentKey, string partitionKey) |
462 | { | 455 | { |
463 | SourceLineNumber sourceLineNumbers = Preprocessor.GetSourceLineNumbers(node); | 456 | SourceLineNumber sourceLineNumbers = this.ParseHelper.GetSourceLineNumbers(node); |
464 | 457 | ||
465 | string key = null; | 458 | string key = null; |
466 | string user = null; | 459 | string user = null; |
@@ -472,41 +465,41 @@ namespace WixToolset.Extensions | |||
472 | switch (attrib.Name.LocalName) | 465 | switch (attrib.Name.LocalName) |
473 | { | 466 | { |
474 | case "Id": | 467 | case "Id": |
475 | key = this.Core.GetAttributeIdentifierValue(sourceLineNumbers, attrib); | 468 | key = this.ParseHelper.GetAttributeIdentifierValue(sourceLineNumbers, attrib); |
476 | break; | 469 | break; |
477 | case "Partition": | 470 | case "Partition": |
478 | if (null != partitionKey) | 471 | if (null != partitionKey) |
479 | { | 472 | { |
480 | this.Core.OnMessage(WixErrors.IllegalAttributeWhenNested(sourceLineNumbers, node.Name.LocalName, attrib.Name.LocalName, node.Parent.Name.LocalName)); | 473 | this.Messaging.Write(ErrorMessages.IllegalAttributeWhenNested(sourceLineNumbers, node.Name.LocalName, attrib.Name.LocalName, node.Parent.Name.LocalName)); |
481 | } | 474 | } |
482 | partitionKey = this.Core.GetAttributeValue(sourceLineNumbers, attrib); | 475 | partitionKey = this.ParseHelper.GetAttributeValue(sourceLineNumbers, attrib); |
483 | this.Core.CreateSimpleReference(sourceLineNumbers, "ComPlusPartition", partitionKey); | 476 | this.ParseHelper.CreateSimpleReference(section, sourceLineNumbers, "ComPlusPartition", partitionKey); |
484 | break; | 477 | break; |
485 | case "User": | 478 | case "User": |
486 | user = this.Core.GetAttributeValue(sourceLineNumbers, attrib); | 479 | user = this.ParseHelper.GetAttributeValue(sourceLineNumbers, attrib); |
487 | this.Core.CreateSimpleReference(sourceLineNumbers, "User", user); | 480 | this.ParseHelper.CreateSimpleReference(section, sourceLineNumbers, "User", user); |
488 | break; | 481 | break; |
489 | default: | 482 | default: |
490 | this.Core.UnexpectedAttribute(node, attrib); | 483 | this.ParseHelper.UnexpectedAttribute(node, attrib); |
491 | break; | 484 | break; |
492 | } | 485 | } |
493 | } | 486 | } |
494 | else | 487 | else |
495 | { | 488 | { |
496 | this.Core.ParseExtensionAttribute(node, attrib); | 489 | this.ParseHelper.ParseExtensionAttribute(this.Context.Extensions, intermediate, section, node, attrib); |
497 | } | 490 | } |
498 | } | 491 | } |
499 | 492 | ||
500 | if (null == partitionKey) | 493 | if (null == partitionKey) |
501 | { | 494 | { |
502 | this.Core.OnMessage(WixErrors.ExpectedAttribute(sourceLineNumbers, node.Name.LocalName, "Partition")); | 495 | this.Messaging.Write(ErrorMessages.ExpectedAttribute(sourceLineNumbers, node.Name.LocalName, "Partition")); |
503 | } | 496 | } |
504 | 497 | ||
505 | Row row = this.Core.CreateRow(sourceLineNumbers, "ComPlusPartitionUser"); | 498 | var row = this.ParseHelper.CreateRow(section, sourceLineNumbers, "ComPlusPartitionUser"); |
506 | row[0] = key; | 499 | row.Set(0, key); |
507 | row[1] = partitionKey; | 500 | row.Set(1, partitionKey); |
508 | row[2] = componentKey; | 501 | row.Set(2, componentKey); |
509 | row[3] = user; | 502 | row.Set(3, user); |
510 | } | 503 | } |
511 | 504 | ||
512 | /// <summary> | 505 | /// <summary> |
@@ -515,9 +508,9 @@ namespace WixToolset.Extensions | |||
515 | /// <param name="node">Element to parse.</param> | 508 | /// <param name="node">Element to parse.</param> |
516 | /// <param name="componentKey">Identifier of parent component.</param> | 509 | /// <param name="componentKey">Identifier of parent component.</param> |
517 | /// <param name="partitionKey">Optional identifier of parent partition.</param> | 510 | /// <param name="partitionKey">Optional identifier of parent partition.</param> |
518 | private void ParseComPlusApplicationElement(XElement node, string componentKey, bool win64, string partitionKey) | 511 | private void ParseComPlusApplicationElement(Intermediate intermediate, IntermediateSection section, XElement node, string componentKey, bool win64, string partitionKey) |
519 | { | 512 | { |
520 | SourceLineNumber sourceLineNumbers = Preprocessor.GetSourceLineNumbers(node); | 513 | SourceLineNumber sourceLineNumbers = this.ParseHelper.GetSourceLineNumbers(node); |
521 | 514 | ||
522 | string key = null; | 515 | string key = null; |
523 | string id = null; | 516 | string id = null; |
@@ -532,35 +525,35 @@ namespace WixToolset.Extensions | |||
532 | switch (attrib.Name.LocalName) | 525 | switch (attrib.Name.LocalName) |
533 | { | 526 | { |
534 | case "Id": | 527 | case "Id": |
535 | key = this.Core.GetAttributeIdentifierValue(sourceLineNumbers, attrib); | 528 | key = this.ParseHelper.GetAttributeIdentifierValue(sourceLineNumbers, attrib); |
536 | break; | 529 | break; |
537 | case "Partition": | 530 | case "Partition": |
538 | if (null != partitionKey) | 531 | if (null != partitionKey) |
539 | { | 532 | { |
540 | this.Core.OnMessage(WixErrors.IllegalAttributeWhenNested(sourceLineNumbers, node.Name.LocalName, attrib.Name.LocalName, node.Parent.Name.LocalName)); | 533 | this.Messaging.Write(ErrorMessages.IllegalAttributeWhenNested(sourceLineNumbers, node.Name.LocalName, attrib.Name.LocalName, node.Parent.Name.LocalName)); |
541 | } | 534 | } |
542 | partitionKey = this.Core.GetAttributeValue(sourceLineNumbers, attrib); | 535 | partitionKey = this.ParseHelper.GetAttributeValue(sourceLineNumbers, attrib); |
543 | this.Core.CreateSimpleReference(sourceLineNumbers, "ComPlusPartition", partitionKey); | 536 | this.ParseHelper.CreateSimpleReference(section, sourceLineNumbers, "ComPlusPartition", partitionKey); |
544 | break; | 537 | break; |
545 | case "ApplicationId": | 538 | case "ApplicationId": |
546 | id = TryFormatGuidValue(this.Core.GetAttributeValue(sourceLineNumbers, attrib)); | 539 | id = this.TryFormatGuidValue(this.ParseHelper.GetAttributeValue(sourceLineNumbers, attrib)); |
547 | break; | 540 | break; |
548 | case "Name": | 541 | case "Name": |
549 | name = this.Core.GetAttributeValue(sourceLineNumbers, attrib); | 542 | name = this.ParseHelper.GetAttributeValue(sourceLineNumbers, attrib); |
550 | break; | 543 | break; |
551 | case "ThreeGigSupportEnabled": | 544 | case "ThreeGigSupportEnabled": |
552 | if (null == componentKey) | 545 | if (null == componentKey) |
553 | { | 546 | { |
554 | this.Core.OnMessage(ComPlusErrors.IllegalAttributeWithoutComponent(sourceLineNumbers, node.Name.LocalName, attrib.Name.LocalName)); | 547 | this.Messaging.Write(ComPlusErrors.IllegalAttributeWithoutComponent(sourceLineNumbers, node.Name.LocalName, attrib.Name.LocalName)); |
555 | } | 548 | } |
556 | properties["3GigSupportEnabled"] = YesNoType.Yes == this.Core.GetAttributeYesNoValue(sourceLineNumbers, attrib) ? "1" : "0"; | 549 | properties["3GigSupportEnabled"] = YesNoType.Yes == this.ParseHelper.GetAttributeYesNoValue(sourceLineNumbers, attrib) ? "1" : "0"; |
557 | break; | 550 | break; |
558 | case "AccessChecksLevel": | 551 | case "AccessChecksLevel": |
559 | if (null == componentKey) | 552 | if (null == componentKey) |
560 | { | 553 | { |
561 | this.Core.OnMessage(ComPlusErrors.IllegalAttributeWithoutComponent(sourceLineNumbers, node.Name.LocalName, attrib.Name.LocalName)); | 554 | this.Messaging.Write(ComPlusErrors.IllegalAttributeWithoutComponent(sourceLineNumbers, node.Name.LocalName, attrib.Name.LocalName)); |
562 | } | 555 | } |
563 | string accessChecksLevelValue = this.Core.GetAttributeValue(sourceLineNumbers, attrib); | 556 | string accessChecksLevelValue = this.ParseHelper.GetAttributeValue(sourceLineNumbers, attrib); |
564 | switch (accessChecksLevelValue) | 557 | switch (accessChecksLevelValue) |
565 | { | 558 | { |
566 | case "applicationLevel": | 559 | case "applicationLevel": |
@@ -570,16 +563,16 @@ namespace WixToolset.Extensions | |||
570 | properties["AccessChecksLevel"] = "1"; | 563 | properties["AccessChecksLevel"] = "1"; |
571 | break; | 564 | break; |
572 | default: | 565 | default: |
573 | this.Core.OnMessage(WixErrors.IllegalAttributeValue(sourceLineNumbers, "ComPlusApplication", "AccessChecksLevel", accessChecksLevelValue, "applicationLevel", "applicationComponentLevel")); | 566 | this.Messaging.Write(ErrorMessages.IllegalAttributeValue(sourceLineNumbers, "ComPlusApplication", "AccessChecksLevel", accessChecksLevelValue, "applicationLevel", "applicationComponentLevel")); |
574 | break; | 567 | break; |
575 | } | 568 | } |
576 | break; | 569 | break; |
577 | case "Activation": | 570 | case "Activation": |
578 | if (null == componentKey) | 571 | if (null == componentKey) |
579 | { | 572 | { |
580 | this.Core.OnMessage(ComPlusErrors.IllegalAttributeWithoutComponent(sourceLineNumbers, node.Name.LocalName, attrib.Name.LocalName)); | 573 | this.Messaging.Write(ComPlusErrors.IllegalAttributeWithoutComponent(sourceLineNumbers, node.Name.LocalName, attrib.Name.LocalName)); |
581 | } | 574 | } |
582 | string activationValue = this.Core.GetAttributeValue(sourceLineNumbers, attrib); | 575 | string activationValue = this.ParseHelper.GetAttributeValue(sourceLineNumbers, attrib); |
583 | switch (activationValue) | 576 | switch (activationValue) |
584 | { | 577 | { |
585 | case "inproc": | 578 | case "inproc": |
@@ -589,30 +582,30 @@ namespace WixToolset.Extensions | |||
589 | properties["Activation"] = "Local"; | 582 | properties["Activation"] = "Local"; |
590 | break; | 583 | break; |
591 | default: | 584 | default: |
592 | this.Core.OnMessage(WixErrors.IllegalAttributeValue(sourceLineNumbers, "ComPlusApplication", "Activation", activationValue, "inproc", "local")); | 585 | this.Messaging.Write(ErrorMessages.IllegalAttributeValue(sourceLineNumbers, "ComPlusApplication", "Activation", activationValue, "inproc", "local")); |
593 | break; | 586 | break; |
594 | } | 587 | } |
595 | break; | 588 | break; |
596 | case "ApplicationAccessChecksEnabled": | 589 | case "ApplicationAccessChecksEnabled": |
597 | if (null == componentKey) | 590 | if (null == componentKey) |
598 | { | 591 | { |
599 | this.Core.OnMessage(ComPlusErrors.IllegalAttributeWithoutComponent(sourceLineNumbers, node.Name.LocalName, attrib.Name.LocalName)); | 592 | this.Messaging.Write(ComPlusErrors.IllegalAttributeWithoutComponent(sourceLineNumbers, node.Name.LocalName, attrib.Name.LocalName)); |
600 | } | 593 | } |
601 | properties["ApplicationAccessChecksEnabled"] = YesNoType.Yes == this.Core.GetAttributeYesNoValue(sourceLineNumbers, attrib) ? "1" : "0"; | 594 | properties["ApplicationAccessChecksEnabled"] = YesNoType.Yes == this.ParseHelper.GetAttributeYesNoValue(sourceLineNumbers, attrib) ? "1" : "0"; |
602 | break; | 595 | break; |
603 | case "ApplicationDirectory": | 596 | case "ApplicationDirectory": |
604 | if (null == componentKey) | 597 | if (null == componentKey) |
605 | { | 598 | { |
606 | this.Core.OnMessage(ComPlusErrors.IllegalAttributeWithoutComponent(sourceLineNumbers, node.Name.LocalName, attrib.Name.LocalName)); | 599 | this.Messaging.Write(ComPlusErrors.IllegalAttributeWithoutComponent(sourceLineNumbers, node.Name.LocalName, attrib.Name.LocalName)); |
607 | } | 600 | } |
608 | properties["ApplicationDirectory"] = this.Core.GetAttributeValue(sourceLineNumbers, attrib); | 601 | properties["ApplicationDirectory"] = this.ParseHelper.GetAttributeValue(sourceLineNumbers, attrib); |
609 | break; | 602 | break; |
610 | case "Authentication": | 603 | case "Authentication": |
611 | if (null == componentKey) | 604 | if (null == componentKey) |
612 | { | 605 | { |
613 | this.Core.OnMessage(ComPlusErrors.IllegalAttributeWithoutComponent(sourceLineNumbers, node.Name.LocalName, attrib.Name.LocalName)); | 606 | this.Messaging.Write(ComPlusErrors.IllegalAttributeWithoutComponent(sourceLineNumbers, node.Name.LocalName, attrib.Name.LocalName)); |
614 | } | 607 | } |
615 | string authenticationValue = this.Core.GetAttributeValue(sourceLineNumbers, attrib); | 608 | string authenticationValue = this.ParseHelper.GetAttributeValue(sourceLineNumbers, attrib); |
616 | switch (authenticationValue) | 609 | switch (authenticationValue) |
617 | { | 610 | { |
618 | case "default": | 611 | case "default": |
@@ -637,16 +630,16 @@ namespace WixToolset.Extensions | |||
637 | properties["Authentication"] = "6"; | 630 | properties["Authentication"] = "6"; |
638 | break; | 631 | break; |
639 | default: | 632 | default: |
640 | this.Core.OnMessage(WixErrors.IllegalAttributeValue(sourceLineNumbers, "ComPlusApplication", "Authentication", authenticationValue, "default", "none", "connect", "call", "packet", "integrity", "privacy")); | 633 | this.Messaging.Write(ErrorMessages.IllegalAttributeValue(sourceLineNumbers, "ComPlusApplication", "Authentication", authenticationValue, "default", "none", "connect", "call", "packet", "integrity", "privacy")); |
641 | break; | 634 | break; |
642 | } | 635 | } |
643 | break; | 636 | break; |
644 | case "AuthenticationCapability": | 637 | case "AuthenticationCapability": |
645 | if (null == componentKey) | 638 | if (null == componentKey) |
646 | { | 639 | { |
647 | this.Core.OnMessage(ComPlusErrors.IllegalAttributeWithoutComponent(sourceLineNumbers, node.Name.LocalName, attrib.Name.LocalName)); | 640 | this.Messaging.Write(ComPlusErrors.IllegalAttributeWithoutComponent(sourceLineNumbers, node.Name.LocalName, attrib.Name.LocalName)); |
648 | } | 641 | } |
649 | string authenticationCapabilityValue = this.Core.GetAttributeValue(sourceLineNumbers, attrib); | 642 | string authenticationCapabilityValue = this.ParseHelper.GetAttributeValue(sourceLineNumbers, attrib); |
650 | switch (authenticationCapabilityValue) | 643 | switch (authenticationCapabilityValue) |
651 | { | 644 | { |
652 | case "none": | 645 | case "none": |
@@ -662,110 +655,110 @@ namespace WixToolset.Extensions | |||
662 | properties["AuthenticationCapability"] = "64"; | 655 | properties["AuthenticationCapability"] = "64"; |
663 | break; | 656 | break; |
664 | default: | 657 | default: |
665 | this.Core.OnMessage(WixErrors.IllegalAttributeValue(sourceLineNumbers, "ComPlusApplication", "AuthenticationCapability", authenticationCapabilityValue, "none", "secureReference", "staticCloaking", "dynamicCloaking")); | 658 | this.Messaging.Write(ErrorMessages.IllegalAttributeValue(sourceLineNumbers, "ComPlusApplication", "AuthenticationCapability", authenticationCapabilityValue, "none", "secureReference", "staticCloaking", "dynamicCloaking")); |
666 | break; | 659 | break; |
667 | } | 660 | } |
668 | break; | 661 | break; |
669 | case "Changeable": | 662 | case "Changeable": |
670 | this.Core.OnMessage(WixWarnings.DeprecatedAttribute(sourceLineNumbers, node.Name.LocalName, attrib.Name.LocalName)); | 663 | this.Messaging.Write(WarningMessages.DeprecatedAttribute(sourceLineNumbers, node.Name.LocalName, attrib.Name.LocalName)); |
671 | break; | 664 | break; |
672 | case "CommandLine": | 665 | case "CommandLine": |
673 | if (null == componentKey) | 666 | if (null == componentKey) |
674 | { | 667 | { |
675 | this.Core.OnMessage(ComPlusErrors.IllegalAttributeWithoutComponent(sourceLineNumbers, node.Name.LocalName, attrib.Name.LocalName)); | 668 | this.Messaging.Write(ComPlusErrors.IllegalAttributeWithoutComponent(sourceLineNumbers, node.Name.LocalName, attrib.Name.LocalName)); |
676 | } | 669 | } |
677 | properties["CommandLine"] = this.Core.GetAttributeValue(sourceLineNumbers, attrib); | 670 | properties["CommandLine"] = this.ParseHelper.GetAttributeValue(sourceLineNumbers, attrib); |
678 | break; | 671 | break; |
679 | case "ConcurrentApps": | 672 | case "ConcurrentApps": |
680 | if (null == componentKey) | 673 | if (null == componentKey) |
681 | { | 674 | { |
682 | this.Core.OnMessage(ComPlusErrors.IllegalAttributeWithoutComponent(sourceLineNumbers, node.Name.LocalName, attrib.Name.LocalName)); | 675 | this.Messaging.Write(ComPlusErrors.IllegalAttributeWithoutComponent(sourceLineNumbers, node.Name.LocalName, attrib.Name.LocalName)); |
683 | } | 676 | } |
684 | properties["ConcurrentApps"] = this.Core.GetAttributeValue(sourceLineNumbers, attrib); | 677 | properties["ConcurrentApps"] = this.ParseHelper.GetAttributeValue(sourceLineNumbers, attrib); |
685 | break; | 678 | break; |
686 | case "CreatedBy": | 679 | case "CreatedBy": |
687 | if (null == componentKey) | 680 | if (null == componentKey) |
688 | { | 681 | { |
689 | this.Core.OnMessage(ComPlusErrors.IllegalAttributeWithoutComponent(sourceLineNumbers, node.Name.LocalName, attrib.Name.LocalName)); | 682 | this.Messaging.Write(ComPlusErrors.IllegalAttributeWithoutComponent(sourceLineNumbers, node.Name.LocalName, attrib.Name.LocalName)); |
690 | } | 683 | } |
691 | properties["CreatedBy"] = this.Core.GetAttributeValue(sourceLineNumbers, attrib); | 684 | properties["CreatedBy"] = this.ParseHelper.GetAttributeValue(sourceLineNumbers, attrib); |
692 | break; | 685 | break; |
693 | case "CRMEnabled": | 686 | case "CRMEnabled": |
694 | if (null == componentKey) | 687 | if (null == componentKey) |
695 | { | 688 | { |
696 | this.Core.OnMessage(ComPlusErrors.IllegalAttributeWithoutComponent(sourceLineNumbers, node.Name.LocalName, attrib.Name.LocalName)); | 689 | this.Messaging.Write(ComPlusErrors.IllegalAttributeWithoutComponent(sourceLineNumbers, node.Name.LocalName, attrib.Name.LocalName)); |
697 | } | 690 | } |
698 | properties["CRMEnabled"] = YesNoType.Yes == this.Core.GetAttributeYesNoValue(sourceLineNumbers, attrib) ? "1" : "0"; | 691 | properties["CRMEnabled"] = YesNoType.Yes == this.ParseHelper.GetAttributeYesNoValue(sourceLineNumbers, attrib) ? "1" : "0"; |
699 | break; | 692 | break; |
700 | case "CRMLogFile": | 693 | case "CRMLogFile": |
701 | if (null == componentKey) | 694 | if (null == componentKey) |
702 | { | 695 | { |
703 | this.Core.OnMessage(ComPlusErrors.IllegalAttributeWithoutComponent(sourceLineNumbers, node.Name.LocalName, attrib.Name.LocalName)); | 696 | this.Messaging.Write(ComPlusErrors.IllegalAttributeWithoutComponent(sourceLineNumbers, node.Name.LocalName, attrib.Name.LocalName)); |
704 | } | 697 | } |
705 | properties["CRMLogFile"] = this.Core.GetAttributeValue(sourceLineNumbers, attrib); | 698 | properties["CRMLogFile"] = this.ParseHelper.GetAttributeValue(sourceLineNumbers, attrib); |
706 | break; | 699 | break; |
707 | case "Deleteable": | 700 | case "Deleteable": |
708 | if (null == componentKey) | 701 | if (null == componentKey) |
709 | { | 702 | { |
710 | this.Core.OnMessage(ComPlusErrors.IllegalAttributeWithoutComponent(sourceLineNumbers, node.Name.LocalName, attrib.Name.LocalName)); | 703 | this.Messaging.Write(ComPlusErrors.IllegalAttributeWithoutComponent(sourceLineNumbers, node.Name.LocalName, attrib.Name.LocalName)); |
711 | } | 704 | } |
712 | properties["Deleteable"] = YesNoType.Yes == this.Core.GetAttributeYesNoValue(sourceLineNumbers, attrib) ? "1" : "0"; | 705 | properties["Deleteable"] = YesNoType.Yes == this.ParseHelper.GetAttributeYesNoValue(sourceLineNumbers, attrib) ? "1" : "0"; |
713 | break; | 706 | break; |
714 | case "Description": | 707 | case "Description": |
715 | if (null == componentKey) | 708 | if (null == componentKey) |
716 | { | 709 | { |
717 | this.Core.OnMessage(ComPlusErrors.IllegalAttributeWithoutComponent(sourceLineNumbers, node.Name.LocalName, attrib.Name.LocalName)); | 710 | this.Messaging.Write(ComPlusErrors.IllegalAttributeWithoutComponent(sourceLineNumbers, node.Name.LocalName, attrib.Name.LocalName)); |
718 | } | 711 | } |
719 | properties["Description"] = this.Core.GetAttributeValue(sourceLineNumbers, attrib); | 712 | properties["Description"] = this.ParseHelper.GetAttributeValue(sourceLineNumbers, attrib); |
720 | break; | 713 | break; |
721 | case "DumpEnabled": | 714 | case "DumpEnabled": |
722 | if (null == componentKey) | 715 | if (null == componentKey) |
723 | { | 716 | { |
724 | this.Core.OnMessage(ComPlusErrors.IllegalAttributeWithoutComponent(sourceLineNumbers, node.Name.LocalName, attrib.Name.LocalName)); | 717 | this.Messaging.Write(ComPlusErrors.IllegalAttributeWithoutComponent(sourceLineNumbers, node.Name.LocalName, attrib.Name.LocalName)); |
725 | } | 718 | } |
726 | properties["DumpEnabled"] = YesNoType.Yes == this.Core.GetAttributeYesNoValue(sourceLineNumbers, attrib) ? "1" : "0"; | 719 | properties["DumpEnabled"] = YesNoType.Yes == this.ParseHelper.GetAttributeYesNoValue(sourceLineNumbers, attrib) ? "1" : "0"; |
727 | break; | 720 | break; |
728 | case "DumpOnException": | 721 | case "DumpOnException": |
729 | if (null == componentKey) | 722 | if (null == componentKey) |
730 | { | 723 | { |
731 | this.Core.OnMessage(ComPlusErrors.IllegalAttributeWithoutComponent(sourceLineNumbers, node.Name.LocalName, attrib.Name.LocalName)); | 724 | this.Messaging.Write(ComPlusErrors.IllegalAttributeWithoutComponent(sourceLineNumbers, node.Name.LocalName, attrib.Name.LocalName)); |
732 | } | 725 | } |
733 | properties["DumpOnException"] = YesNoType.Yes == this.Core.GetAttributeYesNoValue(sourceLineNumbers, attrib) ? "1" : "0"; | 726 | properties["DumpOnException"] = YesNoType.Yes == this.ParseHelper.GetAttributeYesNoValue(sourceLineNumbers, attrib) ? "1" : "0"; |
734 | break; | 727 | break; |
735 | case "DumpOnFailfast": | 728 | case "DumpOnFailfast": |
736 | if (null == componentKey) | 729 | if (null == componentKey) |
737 | { | 730 | { |
738 | this.Core.OnMessage(ComPlusErrors.IllegalAttributeWithoutComponent(sourceLineNumbers, node.Name.LocalName, attrib.Name.LocalName)); | 731 | this.Messaging.Write(ComPlusErrors.IllegalAttributeWithoutComponent(sourceLineNumbers, node.Name.LocalName, attrib.Name.LocalName)); |
739 | } | 732 | } |
740 | properties["DumpOnFailfast"] = YesNoType.Yes == this.Core.GetAttributeYesNoValue(sourceLineNumbers, attrib) ? "1" : "0"; | 733 | properties["DumpOnFailfast"] = YesNoType.Yes == this.ParseHelper.GetAttributeYesNoValue(sourceLineNumbers, attrib) ? "1" : "0"; |
741 | break; | 734 | break; |
742 | case "DumpPath": | 735 | case "DumpPath": |
743 | if (null == componentKey) | 736 | if (null == componentKey) |
744 | { | 737 | { |
745 | this.Core.OnMessage(ComPlusErrors.IllegalAttributeWithoutComponent(sourceLineNumbers, node.Name.LocalName, attrib.Name.LocalName)); | 738 | this.Messaging.Write(ComPlusErrors.IllegalAttributeWithoutComponent(sourceLineNumbers, node.Name.LocalName, attrib.Name.LocalName)); |
746 | } | 739 | } |
747 | properties["DumpPath"] = this.Core.GetAttributeValue(sourceLineNumbers, attrib); | 740 | properties["DumpPath"] = this.ParseHelper.GetAttributeValue(sourceLineNumbers, attrib); |
748 | break; | 741 | break; |
749 | case "EventsEnabled": | 742 | case "EventsEnabled": |
750 | if (null == componentKey) | 743 | if (null == componentKey) |
751 | { | 744 | { |
752 | this.Core.OnMessage(ComPlusErrors.IllegalAttributeWithoutComponent(sourceLineNumbers, node.Name.LocalName, attrib.Name.LocalName)); | 745 | this.Messaging.Write(ComPlusErrors.IllegalAttributeWithoutComponent(sourceLineNumbers, node.Name.LocalName, attrib.Name.LocalName)); |
753 | } | 746 | } |
754 | properties["EventsEnabled"] = YesNoType.Yes == this.Core.GetAttributeYesNoValue(sourceLineNumbers, attrib) ? "1" : "0"; | 747 | properties["EventsEnabled"] = YesNoType.Yes == this.ParseHelper.GetAttributeYesNoValue(sourceLineNumbers, attrib) ? "1" : "0"; |
755 | break; | 748 | break; |
756 | case "Identity": | 749 | case "Identity": |
757 | if (null == componentKey) | 750 | if (null == componentKey) |
758 | { | 751 | { |
759 | this.Core.OnMessage(ComPlusErrors.IllegalAttributeWithoutComponent(sourceLineNumbers, node.Name.LocalName, attrib.Name.LocalName)); | 752 | this.Messaging.Write(ComPlusErrors.IllegalAttributeWithoutComponent(sourceLineNumbers, node.Name.LocalName, attrib.Name.LocalName)); |
760 | } | 753 | } |
761 | properties["Identity"] = this.Core.GetAttributeValue(sourceLineNumbers, attrib); | 754 | properties["Identity"] = this.ParseHelper.GetAttributeValue(sourceLineNumbers, attrib); |
762 | break; | 755 | break; |
763 | case "ImpersonationLevel": | 756 | case "ImpersonationLevel": |
764 | if (null == componentKey) | 757 | if (null == componentKey) |
765 | { | 758 | { |
766 | this.Core.OnMessage(ComPlusErrors.IllegalAttributeWithoutComponent(sourceLineNumbers, node.Name.LocalName, attrib.Name.LocalName)); | 759 | this.Messaging.Write(ComPlusErrors.IllegalAttributeWithoutComponent(sourceLineNumbers, node.Name.LocalName, attrib.Name.LocalName)); |
767 | } | 760 | } |
768 | string impersonationLevelValue = this.Core.GetAttributeValue(sourceLineNumbers, attrib); | 761 | string impersonationLevelValue = this.ParseHelper.GetAttributeValue(sourceLineNumbers, attrib); |
769 | switch (impersonationLevelValue) | 762 | switch (impersonationLevelValue) |
770 | { | 763 | { |
771 | case "anonymous": | 764 | case "anonymous": |
@@ -781,37 +774,37 @@ namespace WixToolset.Extensions | |||
781 | properties["ImpersonationLevel"] = "4"; | 774 | properties["ImpersonationLevel"] = "4"; |
782 | break; | 775 | break; |
783 | default: | 776 | default: |
784 | this.Core.OnMessage(WixErrors.IllegalAttributeValue(sourceLineNumbers, "ComPlusApplication", "ImpersonationLevel", impersonationLevelValue, "anonymous", "identify", "impersonate", "delegate")); | 777 | this.Messaging.Write(ErrorMessages.IllegalAttributeValue(sourceLineNumbers, "ComPlusApplication", "ImpersonationLevel", impersonationLevelValue, "anonymous", "identify", "impersonate", "delegate")); |
785 | break; | 778 | break; |
786 | } | 779 | } |
787 | break; | 780 | break; |
788 | case "IsEnabled": | 781 | case "IsEnabled": |
789 | if (null == componentKey) | 782 | if (null == componentKey) |
790 | { | 783 | { |
791 | this.Core.OnMessage(ComPlusErrors.IllegalAttributeWithoutComponent(sourceLineNumbers, node.Name.LocalName, attrib.Name.LocalName)); | 784 | this.Messaging.Write(ComPlusErrors.IllegalAttributeWithoutComponent(sourceLineNumbers, node.Name.LocalName, attrib.Name.LocalName)); |
792 | } | 785 | } |
793 | properties["IsEnabled"] = YesNoType.Yes == this.Core.GetAttributeYesNoValue(sourceLineNumbers, attrib) ? "1" : "0"; | 786 | properties["IsEnabled"] = YesNoType.Yes == this.ParseHelper.GetAttributeYesNoValue(sourceLineNumbers, attrib) ? "1" : "0"; |
794 | break; | 787 | break; |
795 | case "MaxDumpCount": | 788 | case "MaxDumpCount": |
796 | if (null == componentKey) | 789 | if (null == componentKey) |
797 | { | 790 | { |
798 | this.Core.OnMessage(ComPlusErrors.IllegalAttributeWithoutComponent(sourceLineNumbers, node.Name.LocalName, attrib.Name.LocalName)); | 791 | this.Messaging.Write(ComPlusErrors.IllegalAttributeWithoutComponent(sourceLineNumbers, node.Name.LocalName, attrib.Name.LocalName)); |
799 | } | 792 | } |
800 | properties["MaxDumpCount"] = this.Core.GetAttributeValue(sourceLineNumbers, attrib); | 793 | properties["MaxDumpCount"] = this.ParseHelper.GetAttributeValue(sourceLineNumbers, attrib); |
801 | break; | 794 | break; |
802 | case "Password": | 795 | case "Password": |
803 | if (null == componentKey) | 796 | if (null == componentKey) |
804 | { | 797 | { |
805 | this.Core.OnMessage(ComPlusErrors.IllegalAttributeWithoutComponent(sourceLineNumbers, node.Name.LocalName, attrib.Name.LocalName)); | 798 | this.Messaging.Write(ComPlusErrors.IllegalAttributeWithoutComponent(sourceLineNumbers, node.Name.LocalName, attrib.Name.LocalName)); |
806 | } | 799 | } |
807 | properties["Password"] = this.Core.GetAttributeValue(sourceLineNumbers, attrib); | 800 | properties["Password"] = this.ParseHelper.GetAttributeValue(sourceLineNumbers, attrib); |
808 | break; | 801 | break; |
809 | case "QCAuthenticateMsgs": | 802 | case "QCAuthenticateMsgs": |
810 | if (null == componentKey) | 803 | if (null == componentKey) |
811 | { | 804 | { |
812 | this.Core.OnMessage(ComPlusErrors.IllegalAttributeWithoutComponent(sourceLineNumbers, node.Name.LocalName, attrib.Name.LocalName)); | 805 | this.Messaging.Write(ComPlusErrors.IllegalAttributeWithoutComponent(sourceLineNumbers, node.Name.LocalName, attrib.Name.LocalName)); |
813 | } | 806 | } |
814 | string qcAuthenticateMsgsValue = this.Core.GetAttributeValue(sourceLineNumbers, attrib); | 807 | string qcAuthenticateMsgsValue = this.ParseHelper.GetAttributeValue(sourceLineNumbers, attrib); |
815 | switch (qcAuthenticateMsgsValue) | 808 | switch (qcAuthenticateMsgsValue) |
816 | { | 809 | { |
817 | case "secureApps": | 810 | case "secureApps": |
@@ -824,128 +817,128 @@ namespace WixToolset.Extensions | |||
824 | properties["QCAuthenticateMsgs"] = "2"; | 817 | properties["QCAuthenticateMsgs"] = "2"; |
825 | break; | 818 | break; |
826 | default: | 819 | default: |
827 | this.Core.OnMessage(WixErrors.IllegalAttributeValue(sourceLineNumbers, "ComPlusApplication", "QCAuthenticateMsgs", qcAuthenticateMsgsValue, "secureApps", "off", "on")); | 820 | this.Messaging.Write(ErrorMessages.IllegalAttributeValue(sourceLineNumbers, "ComPlusApplication", "QCAuthenticateMsgs", qcAuthenticateMsgsValue, "secureApps", "off", "on")); |
828 | break; | 821 | break; |
829 | } | 822 | } |
830 | break; | 823 | break; |
831 | case "QCListenerMaxThreads": | 824 | case "QCListenerMaxThreads": |
832 | if (null == componentKey) | 825 | if (null == componentKey) |
833 | { | 826 | { |
834 | this.Core.OnMessage(ComPlusErrors.IllegalAttributeWithoutComponent(sourceLineNumbers, node.Name.LocalName, attrib.Name.LocalName)); | 827 | this.Messaging.Write(ComPlusErrors.IllegalAttributeWithoutComponent(sourceLineNumbers, node.Name.LocalName, attrib.Name.LocalName)); |
835 | } | 828 | } |
836 | properties["QCListenerMaxThreads"] = this.Core.GetAttributeValue(sourceLineNumbers, attrib); | 829 | properties["QCListenerMaxThreads"] = this.ParseHelper.GetAttributeValue(sourceLineNumbers, attrib); |
837 | break; | 830 | break; |
838 | case "QueueListenerEnabled": | 831 | case "QueueListenerEnabled": |
839 | if (null == componentKey) | 832 | if (null == componentKey) |
840 | { | 833 | { |
841 | this.Core.OnMessage(ComPlusErrors.IllegalAttributeWithoutComponent(sourceLineNumbers, node.Name.LocalName, attrib.Name.LocalName)); | 834 | this.Messaging.Write(ComPlusErrors.IllegalAttributeWithoutComponent(sourceLineNumbers, node.Name.LocalName, attrib.Name.LocalName)); |
842 | } | 835 | } |
843 | properties["QueueListenerEnabled"] = YesNoType.Yes == this.Core.GetAttributeYesNoValue(sourceLineNumbers, attrib) ? "1" : "0"; | 836 | properties["QueueListenerEnabled"] = YesNoType.Yes == this.ParseHelper.GetAttributeYesNoValue(sourceLineNumbers, attrib) ? "1" : "0"; |
844 | break; | 837 | break; |
845 | case "QueuingEnabled": | 838 | case "QueuingEnabled": |
846 | if (null == componentKey) | 839 | if (null == componentKey) |
847 | { | 840 | { |
848 | this.Core.OnMessage(ComPlusErrors.IllegalAttributeWithoutComponent(sourceLineNumbers, node.Name.LocalName, attrib.Name.LocalName)); | 841 | this.Messaging.Write(ComPlusErrors.IllegalAttributeWithoutComponent(sourceLineNumbers, node.Name.LocalName, attrib.Name.LocalName)); |
849 | } | 842 | } |
850 | properties["QueuingEnabled"] = YesNoType.Yes == this.Core.GetAttributeYesNoValue(sourceLineNumbers, attrib) ? "1" : "0"; | 843 | properties["QueuingEnabled"] = YesNoType.Yes == this.ParseHelper.GetAttributeYesNoValue(sourceLineNumbers, attrib) ? "1" : "0"; |
851 | break; | 844 | break; |
852 | case "RecycleActivationLimit": | 845 | case "RecycleActivationLimit": |
853 | if (null == componentKey) | 846 | if (null == componentKey) |
854 | { | 847 | { |
855 | this.Core.OnMessage(ComPlusErrors.IllegalAttributeWithoutComponent(sourceLineNumbers, node.Name.LocalName, attrib.Name.LocalName)); | 848 | this.Messaging.Write(ComPlusErrors.IllegalAttributeWithoutComponent(sourceLineNumbers, node.Name.LocalName, attrib.Name.LocalName)); |
856 | } | 849 | } |
857 | properties["RecycleActivationLimit"] = this.Core.GetAttributeValue(sourceLineNumbers, attrib); | 850 | properties["RecycleActivationLimit"] = this.ParseHelper.GetAttributeValue(sourceLineNumbers, attrib); |
858 | break; | 851 | break; |
859 | case "RecycleCallLimit": | 852 | case "RecycleCallLimit": |
860 | if (null == componentKey) | 853 | if (null == componentKey) |
861 | { | 854 | { |
862 | this.Core.OnMessage(ComPlusErrors.IllegalAttributeWithoutComponent(sourceLineNumbers, node.Name.LocalName, attrib.Name.LocalName)); | 855 | this.Messaging.Write(ComPlusErrors.IllegalAttributeWithoutComponent(sourceLineNumbers, node.Name.LocalName, attrib.Name.LocalName)); |
863 | } | 856 | } |
864 | properties["RecycleCallLimit"] = this.Core.GetAttributeValue(sourceLineNumbers, attrib); | 857 | properties["RecycleCallLimit"] = this.ParseHelper.GetAttributeValue(sourceLineNumbers, attrib); |
865 | break; | 858 | break; |
866 | case "RecycleExpirationTimeout": | 859 | case "RecycleExpirationTimeout": |
867 | if (null == componentKey) | 860 | if (null == componentKey) |
868 | { | 861 | { |
869 | this.Core.OnMessage(ComPlusErrors.IllegalAttributeWithoutComponent(sourceLineNumbers, node.Name.LocalName, attrib.Name.LocalName)); | 862 | this.Messaging.Write(ComPlusErrors.IllegalAttributeWithoutComponent(sourceLineNumbers, node.Name.LocalName, attrib.Name.LocalName)); |
870 | } | 863 | } |
871 | properties["RecycleExpirationTimeout"] = this.Core.GetAttributeValue(sourceLineNumbers, attrib); | 864 | properties["RecycleExpirationTimeout"] = this.ParseHelper.GetAttributeValue(sourceLineNumbers, attrib); |
872 | break; | 865 | break; |
873 | case "RecycleLifetimeLimit": | 866 | case "RecycleLifetimeLimit": |
874 | if (null == componentKey) | 867 | if (null == componentKey) |
875 | { | 868 | { |
876 | this.Core.OnMessage(ComPlusErrors.IllegalAttributeWithoutComponent(sourceLineNumbers, node.Name.LocalName, attrib.Name.LocalName)); | 869 | this.Messaging.Write(ComPlusErrors.IllegalAttributeWithoutComponent(sourceLineNumbers, node.Name.LocalName, attrib.Name.LocalName)); |
877 | } | 870 | } |
878 | properties["RecycleLifetimeLimit"] = this.Core.GetAttributeValue(sourceLineNumbers, attrib); | 871 | properties["RecycleLifetimeLimit"] = this.ParseHelper.GetAttributeValue(sourceLineNumbers, attrib); |
879 | break; | 872 | break; |
880 | case "RecycleMemoryLimit": | 873 | case "RecycleMemoryLimit": |
881 | if (null == componentKey) | 874 | if (null == componentKey) |
882 | { | 875 | { |
883 | this.Core.OnMessage(ComPlusErrors.IllegalAttributeWithoutComponent(sourceLineNumbers, node.Name.LocalName, attrib.Name.LocalName)); | 876 | this.Messaging.Write(ComPlusErrors.IllegalAttributeWithoutComponent(sourceLineNumbers, node.Name.LocalName, attrib.Name.LocalName)); |
884 | } | 877 | } |
885 | properties["RecycleMemoryLimit"] = this.Core.GetAttributeValue(sourceLineNumbers, attrib); | 878 | properties["RecycleMemoryLimit"] = this.ParseHelper.GetAttributeValue(sourceLineNumbers, attrib); |
886 | break; | 879 | break; |
887 | case "Replicable": | 880 | case "Replicable": |
888 | if (null == componentKey) | 881 | if (null == componentKey) |
889 | { | 882 | { |
890 | this.Core.OnMessage(ComPlusErrors.IllegalAttributeWithoutComponent(sourceLineNumbers, node.Name.LocalName, attrib.Name.LocalName)); | 883 | this.Messaging.Write(ComPlusErrors.IllegalAttributeWithoutComponent(sourceLineNumbers, node.Name.LocalName, attrib.Name.LocalName)); |
891 | } | 884 | } |
892 | properties["Replicable"] = YesNoType.Yes == this.Core.GetAttributeYesNoValue(sourceLineNumbers, attrib) ? "1" : "0"; | 885 | properties["Replicable"] = YesNoType.Yes == this.ParseHelper.GetAttributeYesNoValue(sourceLineNumbers, attrib) ? "1" : "0"; |
893 | break; | 886 | break; |
894 | case "RunForever": | 887 | case "RunForever": |
895 | if (null == componentKey) | 888 | if (null == componentKey) |
896 | { | 889 | { |
897 | this.Core.OnMessage(ComPlusErrors.IllegalAttributeWithoutComponent(sourceLineNumbers, node.Name.LocalName, attrib.Name.LocalName)); | 890 | this.Messaging.Write(ComPlusErrors.IllegalAttributeWithoutComponent(sourceLineNumbers, node.Name.LocalName, attrib.Name.LocalName)); |
898 | } | 891 | } |
899 | properties["RunForever"] = YesNoType.Yes == this.Core.GetAttributeYesNoValue(sourceLineNumbers, attrib) ? "1" : "0"; | 892 | properties["RunForever"] = YesNoType.Yes == this.ParseHelper.GetAttributeYesNoValue(sourceLineNumbers, attrib) ? "1" : "0"; |
900 | break; | 893 | break; |
901 | case "ShutdownAfter": | 894 | case "ShutdownAfter": |
902 | if (null == componentKey) | 895 | if (null == componentKey) |
903 | { | 896 | { |
904 | this.Core.OnMessage(ComPlusErrors.IllegalAttributeWithoutComponent(sourceLineNumbers, node.Name.LocalName, attrib.Name.LocalName)); | 897 | this.Messaging.Write(ComPlusErrors.IllegalAttributeWithoutComponent(sourceLineNumbers, node.Name.LocalName, attrib.Name.LocalName)); |
905 | } | 898 | } |
906 | properties["ShutdownAfter"] = this.Core.GetAttributeValue(sourceLineNumbers, attrib); | 899 | properties["ShutdownAfter"] = this.ParseHelper.GetAttributeValue(sourceLineNumbers, attrib); |
907 | break; | 900 | break; |
908 | case "SoapActivated": | 901 | case "SoapActivated": |
909 | if (null == componentKey) | 902 | if (null == componentKey) |
910 | { | 903 | { |
911 | this.Core.OnMessage(ComPlusErrors.IllegalAttributeWithoutComponent(sourceLineNumbers, node.Name.LocalName, attrib.Name.LocalName)); | 904 | this.Messaging.Write(ComPlusErrors.IllegalAttributeWithoutComponent(sourceLineNumbers, node.Name.LocalName, attrib.Name.LocalName)); |
912 | } | 905 | } |
913 | properties["SoapActivated"] = YesNoType.Yes == this.Core.GetAttributeYesNoValue(sourceLineNumbers, attrib) ? "1" : "0"; | 906 | properties["SoapActivated"] = YesNoType.Yes == this.ParseHelper.GetAttributeYesNoValue(sourceLineNumbers, attrib) ? "1" : "0"; |
914 | break; | 907 | break; |
915 | case "SoapBaseUrl": | 908 | case "SoapBaseUrl": |
916 | if (null == componentKey) | 909 | if (null == componentKey) |
917 | { | 910 | { |
918 | this.Core.OnMessage(ComPlusErrors.IllegalAttributeWithoutComponent(sourceLineNumbers, node.Name.LocalName, attrib.Name.LocalName)); | 911 | this.Messaging.Write(ComPlusErrors.IllegalAttributeWithoutComponent(sourceLineNumbers, node.Name.LocalName, attrib.Name.LocalName)); |
919 | } | 912 | } |
920 | properties["SoapBaseUrl"] = this.Core.GetAttributeValue(sourceLineNumbers, attrib); | 913 | properties["SoapBaseUrl"] = this.ParseHelper.GetAttributeValue(sourceLineNumbers, attrib); |
921 | break; | 914 | break; |
922 | case "SoapMailTo": | 915 | case "SoapMailTo": |
923 | if (null == componentKey) | 916 | if (null == componentKey) |
924 | { | 917 | { |
925 | this.Core.OnMessage(ComPlusErrors.IllegalAttributeWithoutComponent(sourceLineNumbers, node.Name.LocalName, attrib.Name.LocalName)); | 918 | this.Messaging.Write(ComPlusErrors.IllegalAttributeWithoutComponent(sourceLineNumbers, node.Name.LocalName, attrib.Name.LocalName)); |
926 | } | 919 | } |
927 | properties["SoapMailTo"] = this.Core.GetAttributeValue(sourceLineNumbers, attrib); | 920 | properties["SoapMailTo"] = this.ParseHelper.GetAttributeValue(sourceLineNumbers, attrib); |
928 | break; | 921 | break; |
929 | case "SoapVRoot": | 922 | case "SoapVRoot": |
930 | if (null == componentKey) | 923 | if (null == componentKey) |
931 | { | 924 | { |
932 | this.Core.OnMessage(ComPlusErrors.IllegalAttributeWithoutComponent(sourceLineNumbers, node.Name.LocalName, attrib.Name.LocalName)); | 925 | this.Messaging.Write(ComPlusErrors.IllegalAttributeWithoutComponent(sourceLineNumbers, node.Name.LocalName, attrib.Name.LocalName)); |
933 | } | 926 | } |
934 | properties["SoapVRoot"] = this.Core.GetAttributeValue(sourceLineNumbers, attrib); | 927 | properties["SoapVRoot"] = this.ParseHelper.GetAttributeValue(sourceLineNumbers, attrib); |
935 | break; | 928 | break; |
936 | case "SRPEnabled": | 929 | case "SRPEnabled": |
937 | if (null == componentKey) | 930 | if (null == componentKey) |
938 | { | 931 | { |
939 | this.Core.OnMessage(ComPlusErrors.IllegalAttributeWithoutComponent(sourceLineNumbers, node.Name.LocalName, attrib.Name.LocalName)); | 932 | this.Messaging.Write(ComPlusErrors.IllegalAttributeWithoutComponent(sourceLineNumbers, node.Name.LocalName, attrib.Name.LocalName)); |
940 | } | 933 | } |
941 | properties["SRPEnabled"] = YesNoType.Yes == this.Core.GetAttributeYesNoValue(sourceLineNumbers, attrib) ? "1" : "0"; | 934 | properties["SRPEnabled"] = YesNoType.Yes == this.ParseHelper.GetAttributeYesNoValue(sourceLineNumbers, attrib) ? "1" : "0"; |
942 | break; | 935 | break; |
943 | case "SRPTrustLevel": | 936 | case "SRPTrustLevel": |
944 | if (null == componentKey) | 937 | if (null == componentKey) |
945 | { | 938 | { |
946 | this.Core.OnMessage(ComPlusErrors.IllegalAttributeWithoutComponent(sourceLineNumbers, node.Name.LocalName, attrib.Name.LocalName)); | 939 | this.Messaging.Write(ComPlusErrors.IllegalAttributeWithoutComponent(sourceLineNumbers, node.Name.LocalName, attrib.Name.LocalName)); |
947 | } | 940 | } |
948 | string srpTrustLevelValue = this.Core.GetAttributeValue(sourceLineNumbers, attrib); | 941 | string srpTrustLevelValue = this.ParseHelper.GetAttributeValue(sourceLineNumbers, attrib); |
949 | switch (srpTrustLevelValue) | 942 | switch (srpTrustLevelValue) |
950 | { | 943 | { |
951 | case "disallowed": | 944 | case "disallowed": |
@@ -955,28 +948,28 @@ namespace WixToolset.Extensions | |||
955 | properties["SRPTrustLevel"] = "262144"; | 948 | properties["SRPTrustLevel"] = "262144"; |
956 | break; | 949 | break; |
957 | default: | 950 | default: |
958 | this.Core.OnMessage(WixErrors.IllegalAttributeValue(sourceLineNumbers, "ComPlusApplication", "SRPTrustLevel", srpTrustLevelValue, "disallowed", "fullyTrusted")); | 951 | this.Messaging.Write(ErrorMessages.IllegalAttributeValue(sourceLineNumbers, "ComPlusApplication", "SRPTrustLevel", srpTrustLevelValue, "disallowed", "fullyTrusted")); |
959 | break; | 952 | break; |
960 | } | 953 | } |
961 | break; | 954 | break; |
962 | default: | 955 | default: |
963 | this.Core.UnexpectedAttribute(node, attrib); | 956 | this.ParseHelper.UnexpectedAttribute(node, attrib); |
964 | break; | 957 | break; |
965 | } | 958 | } |
966 | } | 959 | } |
967 | else | 960 | else |
968 | { | 961 | { |
969 | this.Core.ParseExtensionAttribute(node, attrib); | 962 | this.ParseHelper.ParseExtensionAttribute(this.Context.Extensions, intermediate, section, node, attrib); |
970 | } | 963 | } |
971 | } | 964 | } |
972 | 965 | ||
973 | if (null != componentKey && null == name) | 966 | if (null != componentKey && null == name) |
974 | { | 967 | { |
975 | this.Core.OnMessage(ComPlusErrors.RequiredAttributeUnderComponent(sourceLineNumbers, node.Name.LocalName, "Name")); | 968 | this.Messaging.Write(ComPlusErrors.RequiredAttributeUnderComponent(sourceLineNumbers, node.Name.LocalName, "Name")); |
976 | } | 969 | } |
977 | if (null == componentKey && null == id && null == name) | 970 | if (null == componentKey && null == id && null == name) |
978 | { | 971 | { |
979 | this.Core.OnMessage(ComPlusErrors.RequiredAttributeNotUnderComponent(sourceLineNumbers, node.Name.LocalName, "Id", "Name")); | 972 | this.Messaging.Write(ComPlusErrors.RequiredAttributeNotUnderComponent(sourceLineNumbers, node.Name.LocalName, "Id", "Name")); |
980 | } | 973 | } |
981 | 974 | ||
982 | foreach (XElement child in node.Elements()) | 975 | foreach (XElement child in node.Elements()) |
@@ -986,56 +979,56 @@ namespace WixToolset.Extensions | |||
986 | switch (child.Name.LocalName) | 979 | switch (child.Name.LocalName) |
987 | { | 980 | { |
988 | case "ComPlusApplicationRole": | 981 | case "ComPlusApplicationRole": |
989 | this.ParseComPlusApplicationRoleElement(child, componentKey, key); | 982 | this.ParseComPlusApplicationRoleElement(intermediate, section, child, componentKey, key); |
990 | break; | 983 | break; |
991 | case "ComPlusAssembly": | 984 | case "ComPlusAssembly": |
992 | this.ParseComPlusAssemblyElement(child, componentKey, win64, key); | 985 | this.ParseComPlusAssemblyElement(intermediate, section, child, componentKey, win64, key); |
993 | break; | 986 | break; |
994 | default: | 987 | default: |
995 | this.Core.UnexpectedElement(node, child); | 988 | this.ParseHelper.UnexpectedElement(node, child); |
996 | break; | 989 | break; |
997 | } | 990 | } |
998 | } | 991 | } |
999 | else | 992 | else |
1000 | { | 993 | { |
1001 | this.Core.ParseExtensionElement(node, child); | 994 | this.ParseHelper.ParseExtensionElement(this.Context.Extensions, intermediate, section, node, child); |
1002 | } | 995 | } |
1003 | } | 996 | } |
1004 | 997 | ||
1005 | Row row = this.Core.CreateRow(sourceLineNumbers, "ComPlusApplication"); | 998 | var row = this.ParseHelper.CreateRow(section, sourceLineNumbers, "ComPlusApplication"); |
1006 | row[0] = key; | 999 | row.Set(0, key); |
1007 | row[1] = partitionKey; | 1000 | row.Set(1, partitionKey); |
1008 | row[2] = componentKey; | 1001 | row.Set(2, componentKey); |
1009 | row[3] = id; | 1002 | row.Set(3, id); |
1010 | row[4] = name; | 1003 | row.Set(4, name); |
1011 | 1004 | ||
1012 | IDictionaryEnumerator propertiesEnumerator = properties.GetEnumerator(); | 1005 | IDictionaryEnumerator propertiesEnumerator = properties.GetEnumerator(); |
1013 | while (propertiesEnumerator.MoveNext()) | 1006 | while (propertiesEnumerator.MoveNext()) |
1014 | { | 1007 | { |
1015 | Row propertyRow = this.Core.CreateRow(sourceLineNumbers, "ComPlusApplicationProperty"); | 1008 | var propertyRow = this.ParseHelper.CreateRow(section, sourceLineNumbers, "ComPlusApplicationProperty"); |
1016 | propertyRow[0] = key; | 1009 | propertyRow.Set(0, key); |
1017 | propertyRow[1] = (string)propertiesEnumerator.Key; | 1010 | propertyRow.Set(1, (string)propertiesEnumerator.Key); |
1018 | propertyRow[2] = (string)propertiesEnumerator.Value; | 1011 | propertyRow.Set(2, (string)propertiesEnumerator.Value); |
1019 | } | 1012 | } |
1020 | 1013 | ||
1021 | if (componentKey != null) | 1014 | if (componentKey != null) |
1022 | { | 1015 | { |
1023 | if (win64) | 1016 | if (win64) |
1024 | { | 1017 | { |
1025 | if (this.Core.CurrentPlatform == Platform.IA64) | 1018 | if (this.Context.Platform == Platform.IA64) |
1026 | { | 1019 | { |
1027 | this.Core.OnMessage(WixErrors.UnsupportedPlatformForElement(sourceLineNumbers, "ia64", node.Name.LocalName)); | 1020 | this.Messaging.Write(ErrorMessages.UnsupportedPlatformForElement(sourceLineNumbers, "ia64", node.Name.LocalName)); |
1028 | } | 1021 | } |
1029 | else | 1022 | else |
1030 | { | 1023 | { |
1031 | this.Core.CreateSimpleReference(sourceLineNumbers, "CustomAction", "ConfigureComPlusInstall_x64"); | 1024 | this.ParseHelper.CreateSimpleReference(section, sourceLineNumbers, "CustomAction", "ConfigureComPlusInstall_x64"); |
1032 | this.Core.CreateSimpleReference(sourceLineNumbers, "CustomAction", "ConfigureComPlusUninstall_x64"); | 1025 | this.ParseHelper.CreateSimpleReference(section, sourceLineNumbers, "CustomAction", "ConfigureComPlusUninstall_x64"); |
1033 | } | 1026 | } |
1034 | } | 1027 | } |
1035 | else | 1028 | else |
1036 | { | 1029 | { |
1037 | this.Core.CreateSimpleReference(sourceLineNumbers, "CustomAction", "ConfigureComPlusInstall"); | 1030 | this.ParseHelper.CreateSimpleReference(section, sourceLineNumbers, "CustomAction", "ConfigureComPlusInstall"); |
1038 | this.Core.CreateSimpleReference(sourceLineNumbers, "CustomAction", "ConfigureComPlusUninstall"); | 1031 | this.ParseHelper.CreateSimpleReference(section, sourceLineNumbers, "CustomAction", "ConfigureComPlusUninstall"); |
1039 | } | 1032 | } |
1040 | } | 1033 | } |
1041 | } | 1034 | } |
@@ -1046,9 +1039,9 @@ namespace WixToolset.Extensions | |||
1046 | /// <param name="node">Element to parse.</param> | 1039 | /// <param name="node">Element to parse.</param> |
1047 | /// <param name="componentKey">Identifier of parent component.</param> | 1040 | /// <param name="componentKey">Identifier of parent component.</param> |
1048 | /// <param name="applicationKey">Optional identifier of parent application.</param> | 1041 | /// <param name="applicationKey">Optional identifier of parent application.</param> |
1049 | private void ParseComPlusApplicationRoleElement(XElement node, string componentKey, string applicationKey) | 1042 | private void ParseComPlusApplicationRoleElement(Intermediate intermediate, IntermediateSection section, XElement node, string componentKey, string applicationKey) |
1050 | { | 1043 | { |
1051 | SourceLineNumber sourceLineNumbers = Preprocessor.GetSourceLineNumbers(node); | 1044 | SourceLineNumber sourceLineNumbers = this.ParseHelper.GetSourceLineNumbers(node); |
1052 | 1045 | ||
1053 | string key = null; | 1046 | string key = null; |
1054 | string name = null; | 1047 | string name = null; |
@@ -1062,40 +1055,40 @@ namespace WixToolset.Extensions | |||
1062 | switch (attrib.Name.LocalName) | 1055 | switch (attrib.Name.LocalName) |
1063 | { | 1056 | { |
1064 | case "Id": | 1057 | case "Id": |
1065 | key = this.Core.GetAttributeIdentifierValue(sourceLineNumbers, attrib); | 1058 | key = this.ParseHelper.GetAttributeIdentifierValue(sourceLineNumbers, attrib); |
1066 | break; | 1059 | break; |
1067 | case "Application": | 1060 | case "Application": |
1068 | if (null != applicationKey) | 1061 | if (null != applicationKey) |
1069 | { | 1062 | { |
1070 | this.Core.OnMessage(WixErrors.IllegalAttributeWhenNested(sourceLineNumbers, node.Name.LocalName, attrib.Name.LocalName, node.Parent.Name.LocalName)); | 1063 | this.Messaging.Write(ErrorMessages.IllegalAttributeWhenNested(sourceLineNumbers, node.Name.LocalName, attrib.Name.LocalName, node.Parent.Name.LocalName)); |
1071 | } | 1064 | } |
1072 | applicationKey = this.Core.GetAttributeValue(sourceLineNumbers, attrib); | 1065 | applicationKey = this.ParseHelper.GetAttributeValue(sourceLineNumbers, attrib); |
1073 | this.Core.CreateSimpleReference(sourceLineNumbers, "ComPlusApplication", applicationKey); | 1066 | this.ParseHelper.CreateSimpleReference(section, sourceLineNumbers, "ComPlusApplication", applicationKey); |
1074 | break; | 1067 | break; |
1075 | case "Name": | 1068 | case "Name": |
1076 | name = this.Core.GetAttributeValue(sourceLineNumbers, attrib); | 1069 | name = this.ParseHelper.GetAttributeValue(sourceLineNumbers, attrib); |
1077 | break; | 1070 | break; |
1078 | case "Description": | 1071 | case "Description": |
1079 | if (null == componentKey) | 1072 | if (null == componentKey) |
1080 | { | 1073 | { |
1081 | this.Core.OnMessage(ComPlusErrors.IllegalAttributeWithoutComponent(sourceLineNumbers, node.Name.LocalName, attrib.Name.LocalName)); | 1074 | this.Messaging.Write(ComPlusErrors.IllegalAttributeWithoutComponent(sourceLineNumbers, node.Name.LocalName, attrib.Name.LocalName)); |
1082 | } | 1075 | } |
1083 | properties["Description"] = this.Core.GetAttributeValue(sourceLineNumbers, attrib); | 1076 | properties["Description"] = this.ParseHelper.GetAttributeValue(sourceLineNumbers, attrib); |
1084 | break; | 1077 | break; |
1085 | default: | 1078 | default: |
1086 | this.Core.UnexpectedAttribute(node, attrib); | 1079 | this.ParseHelper.UnexpectedAttribute(node, attrib); |
1087 | break; | 1080 | break; |
1088 | } | 1081 | } |
1089 | } | 1082 | } |
1090 | else | 1083 | else |
1091 | { | 1084 | { |
1092 | this.Core.ParseExtensionAttribute(node, attrib); | 1085 | this.ParseHelper.ParseExtensionAttribute(this.Context.Extensions, intermediate, section, node, attrib); |
1093 | } | 1086 | } |
1094 | } | 1087 | } |
1095 | 1088 | ||
1096 | if (null == applicationKey) | 1089 | if (null == applicationKey) |
1097 | { | 1090 | { |
1098 | this.Core.OnMessage(WixErrors.ExpectedAttribute(sourceLineNumbers, node.Name.LocalName, "Application")); | 1091 | this.Messaging.Write(ErrorMessages.ExpectedAttribute(sourceLineNumbers, node.Name.LocalName, "Application")); |
1099 | } | 1092 | } |
1100 | 1093 | ||
1101 | foreach (XElement child in node.Elements()) | 1094 | foreach (XElement child in node.Elements()) |
@@ -1105,35 +1098,35 @@ namespace WixToolset.Extensions | |||
1105 | switch (child.Name.LocalName) | 1098 | switch (child.Name.LocalName) |
1106 | { | 1099 | { |
1107 | case "ComPlusUserInApplicationRole": | 1100 | case "ComPlusUserInApplicationRole": |
1108 | this.ParseComPlusUserInApplicationRoleElement(child, componentKey, key); | 1101 | this.ParseComPlusUserInApplicationRoleElement(intermediate, section, child, componentKey, key); |
1109 | break; | 1102 | break; |
1110 | case "ComPlusGroupInApplicationRole": | 1103 | case "ComPlusGroupInApplicationRole": |
1111 | this.ParseComPlusGroupInApplicationRoleElement(child, componentKey, key); | 1104 | this.ParseComPlusGroupInApplicationRoleElement(intermediate, section, child, componentKey, key); |
1112 | break; | 1105 | break; |
1113 | default: | 1106 | default: |
1114 | this.Core.UnexpectedElement(node, child); | 1107 | this.ParseHelper.UnexpectedElement(node, child); |
1115 | break; | 1108 | break; |
1116 | } | 1109 | } |
1117 | } | 1110 | } |
1118 | else | 1111 | else |
1119 | { | 1112 | { |
1120 | this.Core.ParseExtensionElement(node, child); | 1113 | this.ParseHelper.ParseExtensionElement(this.Context.Extensions, intermediate, section, node, child); |
1121 | } | 1114 | } |
1122 | } | 1115 | } |
1123 | 1116 | ||
1124 | Row row = this.Core.CreateRow(sourceLineNumbers, "ComPlusApplicationRole"); | 1117 | var row = this.ParseHelper.CreateRow(section, sourceLineNumbers, "ComPlusApplicationRole"); |
1125 | row[0] = key; | 1118 | row.Set(0, key); |
1126 | row[1] = applicationKey; | 1119 | row.Set(1, applicationKey); |
1127 | row[2] = componentKey; | 1120 | row.Set(2, componentKey); |
1128 | row[3] = name; | 1121 | row.Set(3, name); |
1129 | 1122 | ||
1130 | IDictionaryEnumerator propertiesEnumerator = properties.GetEnumerator(); | 1123 | IDictionaryEnumerator propertiesEnumerator = properties.GetEnumerator(); |
1131 | while (propertiesEnumerator.MoveNext()) | 1124 | while (propertiesEnumerator.MoveNext()) |
1132 | { | 1125 | { |
1133 | Row propertyRow = this.Core.CreateRow(sourceLineNumbers, "ComPlusApplicationRoleProperty"); | 1126 | var propertyRow = this.ParseHelper.CreateRow(section, sourceLineNumbers, "ComPlusApplicationRoleProperty"); |
1134 | propertyRow[0] = key; | 1127 | propertyRow.Set(0, key); |
1135 | propertyRow[1] = (string)propertiesEnumerator.Key; | 1128 | propertyRow.Set(1, (string)propertiesEnumerator.Key); |
1136 | propertyRow[2] = (string)propertiesEnumerator.Value; | 1129 | propertyRow.Set(2, (string)propertiesEnumerator.Value); |
1137 | } | 1130 | } |
1138 | } | 1131 | } |
1139 | 1132 | ||
@@ -1143,9 +1136,9 @@ namespace WixToolset.Extensions | |||
1143 | /// <param name="node">Element to parse.</param> | 1136 | /// <param name="node">Element to parse.</param> |
1144 | /// <param name="componentKey">Identifier of parent component.</param> | 1137 | /// <param name="componentKey">Identifier of parent component.</param> |
1145 | /// <param name="applicationKey">Optional identifier of parent application role.</param> | 1138 | /// <param name="applicationKey">Optional identifier of parent application role.</param> |
1146 | private void ParseComPlusUserInApplicationRoleElement(XElement node, string componentKey, string applicationRoleKey) | 1139 | private void ParseComPlusUserInApplicationRoleElement(Intermediate intermediate, IntermediateSection section, XElement node, string componentKey, string applicationRoleKey) |
1147 | { | 1140 | { |
1148 | SourceLineNumber sourceLineNumbers = Preprocessor.GetSourceLineNumbers(node); | 1141 | SourceLineNumber sourceLineNumbers = this.ParseHelper.GetSourceLineNumbers(node); |
1149 | 1142 | ||
1150 | string key = null; | 1143 | string key = null; |
1151 | string user = null; | 1144 | string user = null; |
@@ -1157,41 +1150,41 @@ namespace WixToolset.Extensions | |||
1157 | switch (attrib.Name.LocalName) | 1150 | switch (attrib.Name.LocalName) |
1158 | { | 1151 | { |
1159 | case "Id": | 1152 | case "Id": |
1160 | key = this.Core.GetAttributeIdentifierValue(sourceLineNumbers, attrib); | 1153 | key = this.ParseHelper.GetAttributeIdentifierValue(sourceLineNumbers, attrib); |
1161 | break; | 1154 | break; |
1162 | case "ApplicationRole": | 1155 | case "ApplicationRole": |
1163 | if (null != applicationRoleKey) | 1156 | if (null != applicationRoleKey) |
1164 | { | 1157 | { |
1165 | this.Core.OnMessage(WixErrors.IllegalAttributeWhenNested(sourceLineNumbers, node.Name.LocalName, attrib.Name.LocalName, node.Parent.Name.LocalName)); | 1158 | this.Messaging.Write(ErrorMessages.IllegalAttributeWhenNested(sourceLineNumbers, node.Name.LocalName, attrib.Name.LocalName, node.Parent.Name.LocalName)); |
1166 | } | 1159 | } |
1167 | applicationRoleKey = this.Core.GetAttributeValue(sourceLineNumbers, attrib); | 1160 | applicationRoleKey = this.ParseHelper.GetAttributeValue(sourceLineNumbers, attrib); |
1168 | this.Core.CreateSimpleReference(sourceLineNumbers, "ComPlusApplicationRole", applicationRoleKey); | 1161 | this.ParseHelper.CreateSimpleReference(section, sourceLineNumbers, "ComPlusApplicationRole", applicationRoleKey); |
1169 | break; | 1162 | break; |
1170 | case "User": | 1163 | case "User": |
1171 | user = this.Core.GetAttributeValue(sourceLineNumbers, attrib); | 1164 | user = this.ParseHelper.GetAttributeValue(sourceLineNumbers, attrib); |
1172 | this.Core.CreateSimpleReference(sourceLineNumbers, "User", user); | 1165 | this.ParseHelper.CreateSimpleReference(section, sourceLineNumbers, "User", user); |
1173 | break; | 1166 | break; |
1174 | default: | 1167 | default: |
1175 | this.Core.UnexpectedAttribute(node, attrib); | 1168 | this.ParseHelper.UnexpectedAttribute(node, attrib); |
1176 | break; | 1169 | break; |
1177 | } | 1170 | } |
1178 | } | 1171 | } |
1179 | else | 1172 | else |
1180 | { | 1173 | { |
1181 | this.Core.ParseExtensionAttribute(node, attrib); | 1174 | this.ParseHelper.ParseExtensionAttribute(this.Context.Extensions, intermediate, section, node, attrib); |
1182 | } | 1175 | } |
1183 | } | 1176 | } |
1184 | 1177 | ||
1185 | if (null == applicationRoleKey) | 1178 | if (null == applicationRoleKey) |
1186 | { | 1179 | { |
1187 | this.Core.OnMessage(WixErrors.ExpectedAttribute(sourceLineNumbers, node.Name.LocalName, "ApplicationRole")); | 1180 | this.Messaging.Write(ErrorMessages.ExpectedAttribute(sourceLineNumbers, node.Name.LocalName, "ApplicationRole")); |
1188 | } | 1181 | } |
1189 | 1182 | ||
1190 | Row row = this.Core.CreateRow(sourceLineNumbers, "ComPlusUserInApplicationRole"); | 1183 | var row = this.ParseHelper.CreateRow(section, sourceLineNumbers, "ComPlusUserInApplicationRole"); |
1191 | row[0] = key; | 1184 | row.Set(0, key); |
1192 | row[1] = applicationRoleKey; | 1185 | row.Set(1, applicationRoleKey); |
1193 | row[2] = componentKey; | 1186 | row.Set(2, componentKey); |
1194 | row[3] = user; | 1187 | row.Set(3, user); |
1195 | } | 1188 | } |
1196 | 1189 | ||
1197 | /// <summary> | 1190 | /// <summary> |
@@ -1200,9 +1193,9 @@ namespace WixToolset.Extensions | |||
1200 | /// <param name="node">Element to parse.</param> | 1193 | /// <param name="node">Element to parse.</param> |
1201 | /// <param name="componentKey">Identifier of parent component.</param> | 1194 | /// <param name="componentKey">Identifier of parent component.</param> |
1202 | /// <param name="applicationKey">Optional identifier of parent application role.</param> | 1195 | /// <param name="applicationKey">Optional identifier of parent application role.</param> |
1203 | private void ParseComPlusGroupInApplicationRoleElement(XElement node, string componentKey, string applicationRoleKey) | 1196 | private void ParseComPlusGroupInApplicationRoleElement(Intermediate intermediate, IntermediateSection section, XElement node, string componentKey, string applicationRoleKey) |
1204 | { | 1197 | { |
1205 | SourceLineNumber sourceLineNumbers = Preprocessor.GetSourceLineNumbers(node); | 1198 | SourceLineNumber sourceLineNumbers = this.ParseHelper.GetSourceLineNumbers(node); |
1206 | 1199 | ||
1207 | string key = null; | 1200 | string key = null; |
1208 | string group = null; | 1201 | string group = null; |
@@ -1214,41 +1207,41 @@ namespace WixToolset.Extensions | |||
1214 | switch (attrib.Name.LocalName) | 1207 | switch (attrib.Name.LocalName) |
1215 | { | 1208 | { |
1216 | case "Id": | 1209 | case "Id": |
1217 | key = this.Core.GetAttributeIdentifierValue(sourceLineNumbers, attrib); | 1210 | key = this.ParseHelper.GetAttributeIdentifierValue(sourceLineNumbers, attrib); |
1218 | break; | 1211 | break; |
1219 | case "ApplicationRole": | 1212 | case "ApplicationRole": |
1220 | if (null != applicationRoleKey) | 1213 | if (null != applicationRoleKey) |
1221 | { | 1214 | { |
1222 | this.Core.OnMessage(WixErrors.IllegalAttributeWhenNested(sourceLineNumbers, node.Name.LocalName, attrib.Name.LocalName, node.Parent.Name.LocalName)); | 1215 | this.Messaging.Write(ErrorMessages.IllegalAttributeWhenNested(sourceLineNumbers, node.Name.LocalName, attrib.Name.LocalName, node.Parent.Name.LocalName)); |
1223 | } | 1216 | } |
1224 | applicationRoleKey = this.Core.GetAttributeValue(sourceLineNumbers, attrib); | 1217 | applicationRoleKey = this.ParseHelper.GetAttributeValue(sourceLineNumbers, attrib); |
1225 | this.Core.CreateSimpleReference(sourceLineNumbers, "ComPlusApplicationRole", applicationRoleKey); | 1218 | this.ParseHelper.CreateSimpleReference(section, sourceLineNumbers, "ComPlusApplicationRole", applicationRoleKey); |
1226 | break; | 1219 | break; |
1227 | case "Group": | 1220 | case "Group": |
1228 | group = this.Core.GetAttributeValue(sourceLineNumbers, attrib); | 1221 | group = this.ParseHelper.GetAttributeValue(sourceLineNumbers, attrib); |
1229 | this.Core.CreateSimpleReference(sourceLineNumbers, "Group", group); | 1222 | this.ParseHelper.CreateSimpleReference(section, sourceLineNumbers, "Group", group); |
1230 | break; | 1223 | break; |
1231 | default: | 1224 | default: |
1232 | this.Core.UnexpectedAttribute(node, attrib); | 1225 | this.ParseHelper.UnexpectedAttribute(node, attrib); |
1233 | break; | 1226 | break; |
1234 | } | 1227 | } |
1235 | } | 1228 | } |
1236 | else | 1229 | else |
1237 | { | 1230 | { |
1238 | this.Core.ParseExtensionAttribute(node, attrib); | 1231 | this.ParseHelper.ParseExtensionAttribute(this.Context.Extensions, intermediate, section, node, attrib); |
1239 | } | 1232 | } |
1240 | } | 1233 | } |
1241 | 1234 | ||
1242 | if (null == applicationRoleKey) | 1235 | if (null == applicationRoleKey) |
1243 | { | 1236 | { |
1244 | this.Core.OnMessage(WixErrors.ExpectedAttribute(sourceLineNumbers, node.Name.LocalName, "ApplicationRole")); | 1237 | this.Messaging.Write(ErrorMessages.ExpectedAttribute(sourceLineNumbers, node.Name.LocalName, "ApplicationRole")); |
1245 | } | 1238 | } |
1246 | 1239 | ||
1247 | Row row = this.Core.CreateRow(sourceLineNumbers, "ComPlusGroupInApplicationRole"); | 1240 | var row = this.ParseHelper.CreateRow(section, sourceLineNumbers, "ComPlusGroupInApplicationRole"); |
1248 | row[0] = key; | 1241 | row.Set(0, key); |
1249 | row[1] = applicationRoleKey; | 1242 | row.Set(1, applicationRoleKey); |
1250 | row[2] = componentKey; | 1243 | row.Set(2, componentKey); |
1251 | row[3] = group; | 1244 | row.Set(3, group); |
1252 | } | 1245 | } |
1253 | 1246 | ||
1254 | /// <summary> | 1247 | /// <summary> |
@@ -1257,9 +1250,9 @@ namespace WixToolset.Extensions | |||
1257 | /// <param name="node">Element to parse.</param> | 1250 | /// <param name="node">Element to parse.</param> |
1258 | /// <param name="componentKey">Identifier of parent component.</param> | 1251 | /// <param name="componentKey">Identifier of parent component.</param> |
1259 | /// <param name="applicationKey">Optional identifier of parent application.</param> | 1252 | /// <param name="applicationKey">Optional identifier of parent application.</param> |
1260 | private void ParseComPlusAssemblyElement(XElement node, string componentKey, bool win64, string applicationKey) | 1253 | private void ParseComPlusAssemblyElement(Intermediate intermediate, IntermediateSection section, XElement node, string componentKey, bool win64, string applicationKey) |
1261 | { | 1254 | { |
1262 | SourceLineNumber sourceLineNumbers = Preprocessor.GetSourceLineNumbers(node); | 1255 | SourceLineNumber sourceLineNumbers = this.ParseHelper.GetSourceLineNumbers(node); |
1263 | 1256 | ||
1264 | string key = null; | 1257 | string key = null; |
1265 | string assemblyName = null; | 1258 | string assemblyName = null; |
@@ -1277,30 +1270,30 @@ namespace WixToolset.Extensions | |||
1277 | switch (attrib.Name.LocalName) | 1270 | switch (attrib.Name.LocalName) |
1278 | { | 1271 | { |
1279 | case "Id": | 1272 | case "Id": |
1280 | key = this.Core.GetAttributeIdentifierValue(sourceLineNumbers, attrib); | 1273 | key = this.ParseHelper.GetAttributeIdentifierValue(sourceLineNumbers, attrib); |
1281 | break; | 1274 | break; |
1282 | case "Application": | 1275 | case "Application": |
1283 | if (null != applicationKey) | 1276 | if (null != applicationKey) |
1284 | { | 1277 | { |
1285 | this.Core.OnMessage(WixErrors.IllegalAttributeWhenNested(sourceLineNumbers, node.Name.LocalName, attrib.Name.LocalName, node.Parent.Name.LocalName)); | 1278 | this.Messaging.Write(ErrorMessages.IllegalAttributeWhenNested(sourceLineNumbers, node.Name.LocalName, attrib.Name.LocalName, node.Parent.Name.LocalName)); |
1286 | } | 1279 | } |
1287 | applicationKey = this.Core.GetAttributeValue(sourceLineNumbers, attrib); | 1280 | applicationKey = this.ParseHelper.GetAttributeValue(sourceLineNumbers, attrib); |
1288 | this.Core.CreateSimpleReference(sourceLineNumbers, "ComPlusApplication", applicationKey); | 1281 | this.ParseHelper.CreateSimpleReference(section, sourceLineNumbers, "ComPlusApplication", applicationKey); |
1289 | break; | 1282 | break; |
1290 | case "AssemblyName": | 1283 | case "AssemblyName": |
1291 | assemblyName = this.Core.GetAttributeValue(sourceLineNumbers, attrib); | 1284 | assemblyName = this.ParseHelper.GetAttributeValue(sourceLineNumbers, attrib); |
1292 | break; | 1285 | break; |
1293 | case "DllPath": | 1286 | case "DllPath": |
1294 | dllPath = this.Core.GetAttributeValue(sourceLineNumbers, attrib); | 1287 | dllPath = this.ParseHelper.GetAttributeValue(sourceLineNumbers, attrib); |
1295 | break; | 1288 | break; |
1296 | case "TlbPath": | 1289 | case "TlbPath": |
1297 | tlbPath = this.Core.GetAttributeValue(sourceLineNumbers, attrib); | 1290 | tlbPath = this.ParseHelper.GetAttributeValue(sourceLineNumbers, attrib); |
1298 | break; | 1291 | break; |
1299 | case "PSDllPath": | 1292 | case "PSDllPath": |
1300 | psDllPath = this.Core.GetAttributeValue(sourceLineNumbers, attrib); | 1293 | psDllPath = this.ParseHelper.GetAttributeValue(sourceLineNumbers, attrib); |
1301 | break; | 1294 | break; |
1302 | case "Type": | 1295 | case "Type": |
1303 | string typeValue = this.Core.GetAttributeValue(sourceLineNumbers, attrib); | 1296 | string typeValue = this.ParseHelper.GetAttributeValue(sourceLineNumbers, attrib); |
1304 | switch (typeValue) | 1297 | switch (typeValue) |
1305 | { | 1298 | { |
1306 | case ".net": | 1299 | case ".net": |
@@ -1310,12 +1303,12 @@ namespace WixToolset.Extensions | |||
1310 | attributes &= ~(int)CpiAssemblyAttributes.DotNetAssembly; | 1303 | attributes &= ~(int)CpiAssemblyAttributes.DotNetAssembly; |
1311 | break; | 1304 | break; |
1312 | default: | 1305 | default: |
1313 | this.Core.OnMessage(WixErrors.IllegalAttributeValue(sourceLineNumbers, "ComPlusAssembly", "Type", typeValue, ".net", "native")); | 1306 | this.Messaging.Write(ErrorMessages.IllegalAttributeValue(sourceLineNumbers, "ComPlusAssembly", "Type", typeValue, ".net", "native")); |
1314 | break; | 1307 | break; |
1315 | } | 1308 | } |
1316 | break; | 1309 | break; |
1317 | case "EventClass": | 1310 | case "EventClass": |
1318 | if (YesNoType.Yes == this.Core.GetAttributeYesNoValue(sourceLineNumbers, attrib)) | 1311 | if (YesNoType.Yes == this.ParseHelper.GetAttributeYesNoValue(sourceLineNumbers, attrib)) |
1319 | { | 1312 | { |
1320 | attributes |= (int)CpiAssemblyAttributes.EventClass; | 1313 | attributes |= (int)CpiAssemblyAttributes.EventClass; |
1321 | } | 1314 | } |
@@ -1325,7 +1318,7 @@ namespace WixToolset.Extensions | |||
1325 | } | 1318 | } |
1326 | break; | 1319 | break; |
1327 | case "DllPathFromGAC": | 1320 | case "DllPathFromGAC": |
1328 | if (YesNoType.Yes == this.Core.GetAttributeYesNoValue(sourceLineNumbers, attrib)) | 1321 | if (YesNoType.Yes == this.ParseHelper.GetAttributeYesNoValue(sourceLineNumbers, attrib)) |
1329 | { | 1322 | { |
1330 | attributes |= (int)CpiAssemblyAttributes.DllPathFromGAC; | 1323 | attributes |= (int)CpiAssemblyAttributes.DllPathFromGAC; |
1331 | } | 1324 | } |
@@ -1335,7 +1328,7 @@ namespace WixToolset.Extensions | |||
1335 | } | 1328 | } |
1336 | break; | 1329 | break; |
1337 | case "RegisterInCommit": | 1330 | case "RegisterInCommit": |
1338 | if (YesNoType.Yes == this.Core.GetAttributeYesNoValue(sourceLineNumbers, attrib)) | 1331 | if (YesNoType.Yes == this.ParseHelper.GetAttributeYesNoValue(sourceLineNumbers, attrib)) |
1339 | { | 1332 | { |
1340 | attributes |= (int)CpiAssemblyAttributes.RegisterInCommit; | 1333 | attributes |= (int)CpiAssemblyAttributes.RegisterInCommit; |
1341 | } | 1334 | } |
@@ -1345,35 +1338,35 @@ namespace WixToolset.Extensions | |||
1345 | } | 1338 | } |
1346 | break; | 1339 | break; |
1347 | default: | 1340 | default: |
1348 | this.Core.UnexpectedAttribute(node, attrib); | 1341 | this.ParseHelper.UnexpectedAttribute(node, attrib); |
1349 | break; | 1342 | break; |
1350 | } | 1343 | } |
1351 | } | 1344 | } |
1352 | else | 1345 | else |
1353 | { | 1346 | { |
1354 | this.Core.ParseExtensionAttribute(node, attrib); | 1347 | this.ParseHelper.ParseExtensionAttribute(this.Context.Extensions, intermediate, section, node, attrib); |
1355 | } | 1348 | } |
1356 | } | 1349 | } |
1357 | 1350 | ||
1358 | if (null == applicationKey && 0 == (attributes & (int)CpiAssemblyAttributes.DotNetAssembly)) | 1351 | if (null == applicationKey && 0 == (attributes & (int)CpiAssemblyAttributes.DotNetAssembly)) |
1359 | { | 1352 | { |
1360 | this.Core.OnMessage(WixErrors.ExpectedAttribute(sourceLineNumbers, node.Name.LocalName, "Application", "Type", "native")); | 1353 | this.Messaging.Write(ErrorMessages.ExpectedAttribute(sourceLineNumbers, node.Name.LocalName, "Application", "Type", "native")); |
1361 | } | 1354 | } |
1362 | if (null != assemblyName && 0 == (attributes & (int)CpiAssemblyAttributes.DllPathFromGAC)) | 1355 | if (null != assemblyName && 0 == (attributes & (int)CpiAssemblyAttributes.DllPathFromGAC)) |
1363 | { | 1356 | { |
1364 | this.Core.OnMessage(ComPlusErrors.UnexpectedAttributeWithoutOtherValue(sourceLineNumbers, node.Name.LocalName, "AssemblyName", "DllPathFromGAC", "no")); | 1357 | this.Messaging.Write(ComPlusErrors.UnexpectedAttributeWithoutOtherValue(sourceLineNumbers, node.Name.LocalName, "AssemblyName", "DllPathFromGAC", "no")); |
1365 | } | 1358 | } |
1366 | if (null == tlbPath && 0 != (attributes & (int)CpiAssemblyAttributes.DotNetAssembly)) | 1359 | if (null == tlbPath && 0 != (attributes & (int)CpiAssemblyAttributes.DotNetAssembly)) |
1367 | { | 1360 | { |
1368 | this.Core.OnMessage(WixErrors.ExpectedAttribute(sourceLineNumbers, node.Name.LocalName, "TlbPath", "Type", ".net")); | 1361 | this.Messaging.Write(ErrorMessages.ExpectedAttribute(sourceLineNumbers, node.Name.LocalName, "TlbPath", "Type", ".net")); |
1369 | } | 1362 | } |
1370 | if (null != psDllPath && 0 != (attributes & (int)CpiAssemblyAttributes.DotNetAssembly)) | 1363 | if (null != psDllPath && 0 != (attributes & (int)CpiAssemblyAttributes.DotNetAssembly)) |
1371 | { | 1364 | { |
1372 | this.Core.OnMessage(ComPlusErrors.UnexpectedAttributeWithOtherValue(sourceLineNumbers, node.Name.LocalName, "PSDllPath", "Type", ".net")); | 1365 | this.Messaging.Write(ComPlusErrors.UnexpectedAttributeWithOtherValue(sourceLineNumbers, node.Name.LocalName, "PSDllPath", "Type", ".net")); |
1373 | } | 1366 | } |
1374 | if (0 != (attributes & (int)CpiAssemblyAttributes.EventClass) && 0 != (attributes & (int)CpiAssemblyAttributes.DotNetAssembly)) | 1367 | if (0 != (attributes & (int)CpiAssemblyAttributes.EventClass) && 0 != (attributes & (int)CpiAssemblyAttributes.DotNetAssembly)) |
1375 | { | 1368 | { |
1376 | this.Core.OnMessage(ComPlusErrors.UnexpectedAttributeWithOtherValue(sourceLineNumbers, node.Name.LocalName, "EventClass", "yes", "Type", ".net")); | 1369 | this.Messaging.Write(ComPlusErrors.UnexpectedAttributeWithOtherValue(sourceLineNumbers, node.Name.LocalName, "EventClass", "yes", "Type", ".net")); |
1377 | } | 1370 | } |
1378 | 1371 | ||
1379 | foreach (XElement child in node.Elements()) | 1372 | foreach (XElement child in node.Elements()) |
@@ -1383,54 +1376,54 @@ namespace WixToolset.Extensions | |||
1383 | switch (child.Name.LocalName) | 1376 | switch (child.Name.LocalName) |
1384 | { | 1377 | { |
1385 | case "ComPlusAssemblyDependency": | 1378 | case "ComPlusAssemblyDependency": |
1386 | this.ParseComPlusAssemblyDependencyElement(child, key); | 1379 | this.ParseComPlusAssemblyDependencyElement(intermediate, section, child, key); |
1387 | break; | 1380 | break; |
1388 | case "ComPlusComponent": | 1381 | case "ComPlusComponent": |
1389 | this.ParseComPlusComponentElement(child, componentKey, key); | 1382 | this.ParseComPlusComponentElement(intermediate, section, child, componentKey, key); |
1390 | hasComponents = true; | 1383 | hasComponents = true; |
1391 | break; | 1384 | break; |
1392 | default: | 1385 | default: |
1393 | this.Core.UnexpectedElement(node, child); | 1386 | this.ParseHelper.UnexpectedElement(node, child); |
1394 | break; | 1387 | break; |
1395 | } | 1388 | } |
1396 | } | 1389 | } |
1397 | else | 1390 | else |
1398 | { | 1391 | { |
1399 | this.Core.ParseExtensionElement(node, child); | 1392 | this.ParseHelper.ParseExtensionElement(this.Context.Extensions, intermediate, section, node, child); |
1400 | } | 1393 | } |
1401 | } | 1394 | } |
1402 | 1395 | ||
1403 | if (0 == (attributes & (int)CpiAssemblyAttributes.DotNetAssembly) && !hasComponents) | 1396 | if (0 == (attributes & (int)CpiAssemblyAttributes.DotNetAssembly) && !hasComponents) |
1404 | { | 1397 | { |
1405 | this.Core.OnMessage(ComPlusWarnings.MissingComponents(sourceLineNumbers)); | 1398 | this.Messaging.Write(ComPlusWarnings.MissingComponents(sourceLineNumbers)); |
1406 | } | 1399 | } |
1407 | 1400 | ||
1408 | Row row = this.Core.CreateRow(sourceLineNumbers, "ComPlusAssembly"); | 1401 | var row = this.ParseHelper.CreateRow(section, sourceLineNumbers, "ComPlusAssembly"); |
1409 | row[0] = key; | 1402 | row.Set(0, key); |
1410 | row[1] = applicationKey; | 1403 | row.Set(1, applicationKey); |
1411 | row[2] = componentKey; | 1404 | row.Set(2, componentKey); |
1412 | row[3] = assemblyName; | 1405 | row.Set(3, assemblyName); |
1413 | row[4] = dllPath; | 1406 | row.Set(4, dllPath); |
1414 | row[5] = tlbPath; | 1407 | row.Set(5, tlbPath); |
1415 | row[6] = psDllPath; | 1408 | row.Set(6, psDllPath); |
1416 | row[7] = attributes; | 1409 | row.Set(7, attributes); |
1417 | 1410 | ||
1418 | if (win64) | 1411 | if (win64) |
1419 | { | 1412 | { |
1420 | if (this.Core.CurrentPlatform == Platform.IA64) | 1413 | if (this.Context.Platform == Platform.IA64) |
1421 | { | 1414 | { |
1422 | this.Core.OnMessage(WixErrors.UnsupportedPlatformForElement(sourceLineNumbers, "ia64", node.Name.LocalName)); | 1415 | this.Messaging.Write(ErrorMessages.UnsupportedPlatformForElement(sourceLineNumbers, "ia64", node.Name.LocalName)); |
1423 | } | 1416 | } |
1424 | else | 1417 | else |
1425 | { | 1418 | { |
1426 | this.Core.CreateSimpleReference(sourceLineNumbers, "CustomAction", "ConfigureComPlusInstall_x64"); | 1419 | this.ParseHelper.CreateSimpleReference(section, sourceLineNumbers, "CustomAction", "ConfigureComPlusInstall_x64"); |
1427 | this.Core.CreateSimpleReference(sourceLineNumbers, "CustomAction", "ConfigureComPlusUninstall_x64"); | 1420 | this.ParseHelper.CreateSimpleReference(section, sourceLineNumbers, "CustomAction", "ConfigureComPlusUninstall_x64"); |
1428 | } | 1421 | } |
1429 | } | 1422 | } |
1430 | else | 1423 | else |
1431 | { | 1424 | { |
1432 | this.Core.CreateSimpleReference(sourceLineNumbers, "CustomAction", "ConfigureComPlusInstall"); | 1425 | this.ParseHelper.CreateSimpleReference(section, sourceLineNumbers, "CustomAction", "ConfigureComPlusInstall"); |
1433 | this.Core.CreateSimpleReference(sourceLineNumbers, "CustomAction", "ConfigureComPlusUninstall"); | 1426 | this.ParseHelper.CreateSimpleReference(section, sourceLineNumbers, "CustomAction", "ConfigureComPlusUninstall"); |
1434 | } | 1427 | } |
1435 | } | 1428 | } |
1436 | 1429 | ||
@@ -1439,9 +1432,9 @@ namespace WixToolset.Extensions | |||
1439 | /// </summary> | 1432 | /// </summary> |
1440 | /// <param name="node">Element to parse.</param> | 1433 | /// <param name="node">Element to parse.</param> |
1441 | /// <param name="assemblyKey">Identifier of parent assembly.</param> | 1434 | /// <param name="assemblyKey">Identifier of parent assembly.</param> |
1442 | private void ParseComPlusAssemblyDependencyElement(XElement node, string assemblyKey) | 1435 | private void ParseComPlusAssemblyDependencyElement(Intermediate intermediate, IntermediateSection section, XElement node, string assemblyKey) |
1443 | { | 1436 | { |
1444 | SourceLineNumber sourceLineNumbers = Preprocessor.GetSourceLineNumbers(node); | 1437 | SourceLineNumber sourceLineNumbers = this.ParseHelper.GetSourceLineNumbers(node); |
1445 | 1438 | ||
1446 | string requiredAssemblyKey = null; | 1439 | string requiredAssemblyKey = null; |
1447 | 1440 | ||
@@ -1452,22 +1445,22 @@ namespace WixToolset.Extensions | |||
1452 | switch (attrib.Name.LocalName) | 1445 | switch (attrib.Name.LocalName) |
1453 | { | 1446 | { |
1454 | case "RequiredAssembly": | 1447 | case "RequiredAssembly": |
1455 | requiredAssemblyKey = this.Core.GetAttributeValue(sourceLineNumbers, attrib); | 1448 | requiredAssemblyKey = this.ParseHelper.GetAttributeValue(sourceLineNumbers, attrib); |
1456 | break; | 1449 | break; |
1457 | default: | 1450 | default: |
1458 | this.Core.UnexpectedAttribute(node, attrib); | 1451 | this.ParseHelper.UnexpectedAttribute(node, attrib); |
1459 | break; | 1452 | break; |
1460 | } | 1453 | } |
1461 | } | 1454 | } |
1462 | else | 1455 | else |
1463 | { | 1456 | { |
1464 | this.Core.ParseExtensionAttribute(node, attrib); | 1457 | this.ParseHelper.ParseExtensionAttribute(this.Context.Extensions, intermediate, section, node, attrib); |
1465 | } | 1458 | } |
1466 | } | 1459 | } |
1467 | 1460 | ||
1468 | Row row = this.Core.CreateRow(sourceLineNumbers, "ComPlusAssemblyDependency"); | 1461 | var row = this.ParseHelper.CreateRow(section, sourceLineNumbers, "ComPlusAssemblyDependency"); |
1469 | row[0] = assemblyKey; | 1462 | row.Set(0, assemblyKey); |
1470 | row[1] = requiredAssemblyKey; | 1463 | row.Set(1, requiredAssemblyKey); |
1471 | } | 1464 | } |
1472 | 1465 | ||
1473 | /// <summary> | 1466 | /// <summary> |
@@ -1476,9 +1469,9 @@ namespace WixToolset.Extensions | |||
1476 | /// <param name="node">Element to parse.</param> | 1469 | /// <param name="node">Element to parse.</param> |
1477 | /// <param name="componentKey">Identifier of parent component.</param> | 1470 | /// <param name="componentKey">Identifier of parent component.</param> |
1478 | /// <param name="assemblyKey">Identifier of parent assembly.</param> | 1471 | /// <param name="assemblyKey">Identifier of parent assembly.</param> |
1479 | private void ParseComPlusComponentElement(XElement node, string componentKey, string assemblyKey) | 1472 | private void ParseComPlusComponentElement(Intermediate intermediate, IntermediateSection section, XElement node, string componentKey, string assemblyKey) |
1480 | { | 1473 | { |
1481 | SourceLineNumber sourceLineNumbers = Preprocessor.GetSourceLineNumbers(node); | 1474 | SourceLineNumber sourceLineNumbers = this.ParseHelper.GetSourceLineNumbers(node); |
1482 | 1475 | ||
1483 | string key = null; | 1476 | string key = null; |
1484 | string clsid = null; | 1477 | string clsid = null; |
@@ -1492,94 +1485,94 @@ namespace WixToolset.Extensions | |||
1492 | switch (attrib.Name.LocalName) | 1485 | switch (attrib.Name.LocalName) |
1493 | { | 1486 | { |
1494 | case "Id": | 1487 | case "Id": |
1495 | key = this.Core.GetAttributeIdentifierValue(sourceLineNumbers, attrib); | 1488 | key = this.ParseHelper.GetAttributeIdentifierValue(sourceLineNumbers, attrib); |
1496 | break; | 1489 | break; |
1497 | case "CLSID": | 1490 | case "CLSID": |
1498 | clsid = "{" + this.Core.GetAttributeValue(sourceLineNumbers, attrib) + "}"; | 1491 | clsid = "{" + this.ParseHelper.GetAttributeValue(sourceLineNumbers, attrib) + "}"; |
1499 | break; | 1492 | break; |
1500 | case "AllowInprocSubscribers": | 1493 | case "AllowInprocSubscribers": |
1501 | properties["AllowInprocSubscribers"] = YesNoType.Yes == this.Core.GetAttributeYesNoValue(sourceLineNumbers, attrib) ? "1" : "0"; | 1494 | properties["AllowInprocSubscribers"] = YesNoType.Yes == this.ParseHelper.GetAttributeYesNoValue(sourceLineNumbers, attrib) ? "1" : "0"; |
1502 | break; | 1495 | break; |
1503 | case "ComponentAccessChecksEnabled": | 1496 | case "ComponentAccessChecksEnabled": |
1504 | properties["ComponentAccessChecksEnabled"] = YesNoType.Yes == this.Core.GetAttributeYesNoValue(sourceLineNumbers, attrib) ? "1" : "0"; | 1497 | properties["ComponentAccessChecksEnabled"] = YesNoType.Yes == this.ParseHelper.GetAttributeYesNoValue(sourceLineNumbers, attrib) ? "1" : "0"; |
1505 | break; | 1498 | break; |
1506 | case "ComponentTransactionTimeout": | 1499 | case "ComponentTransactionTimeout": |
1507 | properties["ComponentTransactionTimeout"] = this.Core.GetAttributeIntegerValue(sourceLineNumbers, attrib, 0, 3600).ToString(); | 1500 | properties["ComponentTransactionTimeout"] = this.ParseHelper.GetAttributeIntegerValue(sourceLineNumbers, attrib, 0, 3600).ToString(); |
1508 | break; | 1501 | break; |
1509 | case "ComponentTransactionTimeoutEnabled": | 1502 | case "ComponentTransactionTimeoutEnabled": |
1510 | properties["ComponentTransactionTimeoutEnabled"] = YesNoType.Yes == this.Core.GetAttributeYesNoValue(sourceLineNumbers, attrib) ? "1" : "0"; | 1503 | properties["ComponentTransactionTimeoutEnabled"] = YesNoType.Yes == this.ParseHelper.GetAttributeYesNoValue(sourceLineNumbers, attrib) ? "1" : "0"; |
1511 | break; | 1504 | break; |
1512 | case "COMTIIntrinsics": | 1505 | case "COMTIIntrinsics": |
1513 | properties["COMTIIntrinsics"] = YesNoType.Yes == this.Core.GetAttributeYesNoValue(sourceLineNumbers, attrib) ? "1" : "0"; | 1506 | properties["COMTIIntrinsics"] = YesNoType.Yes == this.ParseHelper.GetAttributeYesNoValue(sourceLineNumbers, attrib) ? "1" : "0"; |
1514 | break; | 1507 | break; |
1515 | case "ConstructionEnabled": | 1508 | case "ConstructionEnabled": |
1516 | properties["ConstructionEnabled"] = YesNoType.Yes == this.Core.GetAttributeYesNoValue(sourceLineNumbers, attrib) ? "1" : "0"; | 1509 | properties["ConstructionEnabled"] = YesNoType.Yes == this.ParseHelper.GetAttributeYesNoValue(sourceLineNumbers, attrib) ? "1" : "0"; |
1517 | break; | 1510 | break; |
1518 | case "ConstructorString": | 1511 | case "ConstructorString": |
1519 | properties["ConstructorString"] = this.Core.GetAttributeValue(sourceLineNumbers, attrib); | 1512 | properties["ConstructorString"] = this.ParseHelper.GetAttributeValue(sourceLineNumbers, attrib); |
1520 | break; | 1513 | break; |
1521 | case "CreationTimeout": | 1514 | case "CreationTimeout": |
1522 | properties["CreationTimeout"] = this.Core.GetAttributeValue(sourceLineNumbers, attrib); | 1515 | properties["CreationTimeout"] = this.ParseHelper.GetAttributeValue(sourceLineNumbers, attrib); |
1523 | break; | 1516 | break; |
1524 | case "Description": | 1517 | case "Description": |
1525 | properties["Description"] = this.Core.GetAttributeValue(sourceLineNumbers, attrib); | 1518 | properties["Description"] = this.ParseHelper.GetAttributeValue(sourceLineNumbers, attrib); |
1526 | break; | 1519 | break; |
1527 | case "EventTrackingEnabled": | 1520 | case "EventTrackingEnabled": |
1528 | properties["EventTrackingEnabled"] = YesNoType.Yes == this.Core.GetAttributeYesNoValue(sourceLineNumbers, attrib) ? "1" : "0"; | 1521 | properties["EventTrackingEnabled"] = YesNoType.Yes == this.ParseHelper.GetAttributeYesNoValue(sourceLineNumbers, attrib) ? "1" : "0"; |
1529 | break; | 1522 | break; |
1530 | case "ExceptionClass": | 1523 | case "ExceptionClass": |
1531 | properties["ExceptionClass"] = this.Core.GetAttributeValue(sourceLineNumbers, attrib); | 1524 | properties["ExceptionClass"] = this.ParseHelper.GetAttributeValue(sourceLineNumbers, attrib); |
1532 | break; | 1525 | break; |
1533 | case "FireInParallel": | 1526 | case "FireInParallel": |
1534 | properties["FireInParallel"] = YesNoType.Yes == this.Core.GetAttributeYesNoValue(sourceLineNumbers, attrib) ? "1" : "0"; | 1527 | properties["FireInParallel"] = YesNoType.Yes == this.ParseHelper.GetAttributeYesNoValue(sourceLineNumbers, attrib) ? "1" : "0"; |
1535 | break; | 1528 | break; |
1536 | case "IISIntrinsics": | 1529 | case "IISIntrinsics": |
1537 | properties["IISIntrinsics"] = YesNoType.Yes == this.Core.GetAttributeYesNoValue(sourceLineNumbers, attrib) ? "1" : "0"; | 1530 | properties["IISIntrinsics"] = YesNoType.Yes == this.ParseHelper.GetAttributeYesNoValue(sourceLineNumbers, attrib) ? "1" : "0"; |
1538 | break; | 1531 | break; |
1539 | case "InitializesServerApplication": | 1532 | case "InitializesServerApplication": |
1540 | properties["InitializesServerApplication"] = YesNoType.Yes == this.Core.GetAttributeYesNoValue(sourceLineNumbers, attrib) ? "1" : "0"; | 1533 | properties["InitializesServerApplication"] = YesNoType.Yes == this.ParseHelper.GetAttributeYesNoValue(sourceLineNumbers, attrib) ? "1" : "0"; |
1541 | break; | 1534 | break; |
1542 | case "IsEnabled": | 1535 | case "IsEnabled": |
1543 | properties["IsEnabled"] = YesNoType.Yes == this.Core.GetAttributeYesNoValue(sourceLineNumbers, attrib) ? "1" : "0"; | 1536 | properties["IsEnabled"] = YesNoType.Yes == this.ParseHelper.GetAttributeYesNoValue(sourceLineNumbers, attrib) ? "1" : "0"; |
1544 | break; | 1537 | break; |
1545 | case "IsPrivateComponent": | 1538 | case "IsPrivateComponent": |
1546 | properties["IsPrivateComponent"] = YesNoType.Yes == this.Core.GetAttributeYesNoValue(sourceLineNumbers, attrib) ? "1" : "0"; | 1539 | properties["IsPrivateComponent"] = YesNoType.Yes == this.ParseHelper.GetAttributeYesNoValue(sourceLineNumbers, attrib) ? "1" : "0"; |
1547 | break; | 1540 | break; |
1548 | case "JustInTimeActivation": | 1541 | case "JustInTimeActivation": |
1549 | properties["JustInTimeActivation"] = YesNoType.Yes == this.Core.GetAttributeYesNoValue(sourceLineNumbers, attrib) ? "1" : "0"; | 1542 | properties["JustInTimeActivation"] = YesNoType.Yes == this.ParseHelper.GetAttributeYesNoValue(sourceLineNumbers, attrib) ? "1" : "0"; |
1550 | break; | 1543 | break; |
1551 | case "LoadBalancingSupported": | 1544 | case "LoadBalancingSupported": |
1552 | properties["LoadBalancingSupported"] = YesNoType.Yes == this.Core.GetAttributeYesNoValue(sourceLineNumbers, attrib) ? "1" : "0"; | 1545 | properties["LoadBalancingSupported"] = YesNoType.Yes == this.ParseHelper.GetAttributeYesNoValue(sourceLineNumbers, attrib) ? "1" : "0"; |
1553 | break; | 1546 | break; |
1554 | case "MaxPoolSize": | 1547 | case "MaxPoolSize": |
1555 | properties["MaxPoolSize"] = this.Core.GetAttributeValue(sourceLineNumbers, attrib); | 1548 | properties["MaxPoolSize"] = this.ParseHelper.GetAttributeValue(sourceLineNumbers, attrib); |
1556 | break; | 1549 | break; |
1557 | case "MinPoolSize": | 1550 | case "MinPoolSize": |
1558 | properties["MinPoolSize"] = this.Core.GetAttributeValue(sourceLineNumbers, attrib); | 1551 | properties["MinPoolSize"] = this.ParseHelper.GetAttributeValue(sourceLineNumbers, attrib); |
1559 | break; | 1552 | break; |
1560 | case "MultiInterfacePublisherFilterCLSID": | 1553 | case "MultiInterfacePublisherFilterCLSID": |
1561 | properties["MultiInterfacePublisherFilterCLSID"] = this.Core.GetAttributeValue(sourceLineNumbers, attrib); | 1554 | properties["MultiInterfacePublisherFilterCLSID"] = this.ParseHelper.GetAttributeValue(sourceLineNumbers, attrib); |
1562 | break; | 1555 | break; |
1563 | case "MustRunInClientContext": | 1556 | case "MustRunInClientContext": |
1564 | properties["MustRunInClientContext"] = YesNoType.Yes == this.Core.GetAttributeYesNoValue(sourceLineNumbers, attrib) ? "1" : "0"; | 1557 | properties["MustRunInClientContext"] = YesNoType.Yes == this.ParseHelper.GetAttributeYesNoValue(sourceLineNumbers, attrib) ? "1" : "0"; |
1565 | break; | 1558 | break; |
1566 | case "MustRunInDefaultContext": | 1559 | case "MustRunInDefaultContext": |
1567 | properties["MustRunInDefaultContext"] = YesNoType.Yes == this.Core.GetAttributeYesNoValue(sourceLineNumbers, attrib) ? "1" : "0"; | 1560 | properties["MustRunInDefaultContext"] = YesNoType.Yes == this.ParseHelper.GetAttributeYesNoValue(sourceLineNumbers, attrib) ? "1" : "0"; |
1568 | break; | 1561 | break; |
1569 | case "ObjectPoolingEnabled": | 1562 | case "ObjectPoolingEnabled": |
1570 | properties["ObjectPoolingEnabled"] = YesNoType.Yes == this.Core.GetAttributeYesNoValue(sourceLineNumbers, attrib) ? "1" : "0"; | 1563 | properties["ObjectPoolingEnabled"] = YesNoType.Yes == this.ParseHelper.GetAttributeYesNoValue(sourceLineNumbers, attrib) ? "1" : "0"; |
1571 | break; | 1564 | break; |
1572 | case "PublisherID": | 1565 | case "PublisherID": |
1573 | properties["PublisherID"] = TryFormatGuidValue(this.Core.GetAttributeValue(sourceLineNumbers, attrib)); | 1566 | properties["PublisherID"] = this.TryFormatGuidValue(this.ParseHelper.GetAttributeValue(sourceLineNumbers, attrib)); |
1574 | break; | 1567 | break; |
1575 | case "SoapAssemblyName": | 1568 | case "SoapAssemblyName": |
1576 | properties["SoapAssemblyName"] = this.Core.GetAttributeValue(sourceLineNumbers, attrib); | 1569 | properties["SoapAssemblyName"] = this.ParseHelper.GetAttributeValue(sourceLineNumbers, attrib); |
1577 | break; | 1570 | break; |
1578 | case "SoapTypeName": | 1571 | case "SoapTypeName": |
1579 | properties["SoapTypeName"] = this.Core.GetAttributeValue(sourceLineNumbers, attrib); | 1572 | properties["SoapTypeName"] = this.ParseHelper.GetAttributeValue(sourceLineNumbers, attrib); |
1580 | break; | 1573 | break; |
1581 | case "Synchronization": | 1574 | case "Synchronization": |
1582 | string synchronizationValue = this.Core.GetAttributeValue(sourceLineNumbers, attrib); | 1575 | string synchronizationValue = this.ParseHelper.GetAttributeValue(sourceLineNumbers, attrib); |
1583 | switch (synchronizationValue) | 1576 | switch (synchronizationValue) |
1584 | { | 1577 | { |
1585 | case "ignored": | 1578 | case "ignored": |
@@ -1598,12 +1591,12 @@ namespace WixToolset.Extensions | |||
1598 | properties["Synchronization"] = "4"; | 1591 | properties["Synchronization"] = "4"; |
1599 | break; | 1592 | break; |
1600 | default: | 1593 | default: |
1601 | this.Core.OnMessage(WixErrors.IllegalAttributeValue(sourceLineNumbers, "ComPlusComponent", "Synchronization", synchronizationValue, "ignored", "none", "supported", "required", "requiresNew")); | 1594 | this.Messaging.Write(ErrorMessages.IllegalAttributeValue(sourceLineNumbers, "ComPlusComponent", "Synchronization", synchronizationValue, "ignored", "none", "supported", "required", "requiresNew")); |
1602 | break; | 1595 | break; |
1603 | } | 1596 | } |
1604 | break; | 1597 | break; |
1605 | case "Transaction": | 1598 | case "Transaction": |
1606 | string transactionValue = this.Core.GetAttributeValue(sourceLineNumbers, attrib); | 1599 | string transactionValue = this.ParseHelper.GetAttributeValue(sourceLineNumbers, attrib); |
1607 | switch (transactionValue) | 1600 | switch (transactionValue) |
1608 | { | 1601 | { |
1609 | case "ignored": | 1602 | case "ignored": |
@@ -1622,12 +1615,12 @@ namespace WixToolset.Extensions | |||
1622 | properties["Transaction"] = "4"; | 1615 | properties["Transaction"] = "4"; |
1623 | break; | 1616 | break; |
1624 | default: | 1617 | default: |
1625 | this.Core.OnMessage(WixErrors.IllegalAttributeValue(sourceLineNumbers, "ComPlusComponent", "Transaction", transactionValue, "ignored", "none", "supported", "required", "requiresNew")); | 1618 | this.Messaging.Write(ErrorMessages.IllegalAttributeValue(sourceLineNumbers, "ComPlusComponent", "Transaction", transactionValue, "ignored", "none", "supported", "required", "requiresNew")); |
1626 | break; | 1619 | break; |
1627 | } | 1620 | } |
1628 | break; | 1621 | break; |
1629 | case "TxIsolationLevel": | 1622 | case "TxIsolationLevel": |
1630 | string txIsolationLevelValue = this.Core.GetAttributeValue(sourceLineNumbers, attrib); | 1623 | string txIsolationLevelValue = this.ParseHelper.GetAttributeValue(sourceLineNumbers, attrib); |
1631 | switch (txIsolationLevelValue) | 1624 | switch (txIsolationLevelValue) |
1632 | { | 1625 | { |
1633 | case "any": | 1626 | case "any": |
@@ -1646,18 +1639,18 @@ namespace WixToolset.Extensions | |||
1646 | properties["TxIsolationLevel"] = "4"; | 1639 | properties["TxIsolationLevel"] = "4"; |
1647 | break; | 1640 | break; |
1648 | default: | 1641 | default: |
1649 | this.Core.OnMessage(WixErrors.IllegalAttributeValue(sourceLineNumbers, "ComPlusComponent", "TxIsolationLevel", txIsolationLevelValue, "any", "readUnCommitted", "readCommitted", "repeatableRead", "serializable")); | 1642 | this.Messaging.Write(ErrorMessages.IllegalAttributeValue(sourceLineNumbers, "ComPlusComponent", "TxIsolationLevel", txIsolationLevelValue, "any", "readUnCommitted", "readCommitted", "repeatableRead", "serializable")); |
1650 | break; | 1643 | break; |
1651 | } | 1644 | } |
1652 | break; | 1645 | break; |
1653 | default: | 1646 | default: |
1654 | this.Core.UnexpectedAttribute(node, attrib); | 1647 | this.ParseHelper.UnexpectedAttribute(node, attrib); |
1655 | break; | 1648 | break; |
1656 | } | 1649 | } |
1657 | } | 1650 | } |
1658 | else | 1651 | else |
1659 | { | 1652 | { |
1660 | this.Core.ParseExtensionAttribute(node, attrib); | 1653 | this.ParseHelper.ParseExtensionAttribute(this.Context.Extensions, intermediate, section, node, attrib); |
1661 | } | 1654 | } |
1662 | } | 1655 | } |
1663 | 1656 | ||
@@ -1668,37 +1661,37 @@ namespace WixToolset.Extensions | |||
1668 | switch (child.Name.LocalName) | 1661 | switch (child.Name.LocalName) |
1669 | { | 1662 | { |
1670 | case "ComPlusRoleForComponent": | 1663 | case "ComPlusRoleForComponent": |
1671 | this.ParseComPlusRoleForComponentElement(child, componentKey, key); | 1664 | this.ParseComPlusRoleForComponentElement(intermediate, section, child, componentKey, key); |
1672 | break; | 1665 | break; |
1673 | case "ComPlusInterface": | 1666 | case "ComPlusInterface": |
1674 | this.ParseComPlusInterfaceElement(child, componentKey, key); | 1667 | this.ParseComPlusInterfaceElement(intermediate, section, child, componentKey, key); |
1675 | break; | 1668 | break; |
1676 | case "ComPlusSubscription": | 1669 | case "ComPlusSubscription": |
1677 | this.ParseComPlusSubscriptionElement(child, componentKey, key); | 1670 | this.ParseComPlusSubscriptionElement(intermediate, section, child, componentKey, key); |
1678 | break; | 1671 | break; |
1679 | default: | 1672 | default: |
1680 | this.Core.UnexpectedElement(node, child); | 1673 | this.ParseHelper.UnexpectedElement(node, child); |
1681 | break; | 1674 | break; |
1682 | } | 1675 | } |
1683 | } | 1676 | } |
1684 | else | 1677 | else |
1685 | { | 1678 | { |
1686 | this.Core.ParseExtensionElement(node, child); | 1679 | this.ParseHelper.ParseExtensionElement(this.Context.Extensions, intermediate, section, node, child); |
1687 | } | 1680 | } |
1688 | } | 1681 | } |
1689 | 1682 | ||
1690 | Row row = this.Core.CreateRow(sourceLineNumbers, "ComPlusComponent"); | 1683 | var row = this.ParseHelper.CreateRow(section, sourceLineNumbers, "ComPlusComponent"); |
1691 | row[0] = key; | 1684 | row.Set(0, key); |
1692 | row[1] = assemblyKey; | 1685 | row.Set(1, assemblyKey); |
1693 | row[2] = clsid; | 1686 | row.Set(2, clsid); |
1694 | 1687 | ||
1695 | IDictionaryEnumerator propertiesEnumerator = properties.GetEnumerator(); | 1688 | IDictionaryEnumerator propertiesEnumerator = properties.GetEnumerator(); |
1696 | while (propertiesEnumerator.MoveNext()) | 1689 | while (propertiesEnumerator.MoveNext()) |
1697 | { | 1690 | { |
1698 | Row propertyRow = this.Core.CreateRow(sourceLineNumbers, "ComPlusComponentProperty"); | 1691 | var propertyRow = this.ParseHelper.CreateRow(section, sourceLineNumbers, "ComPlusComponentProperty"); |
1699 | propertyRow[0] = key; | 1692 | propertyRow.Set(0, key); |
1700 | propertyRow[1] = (string)propertiesEnumerator.Key; | 1693 | propertyRow.Set(1, (string)propertiesEnumerator.Key); |
1701 | propertyRow[2] = (string)propertiesEnumerator.Value; | 1694 | propertyRow.Set(2, (string)propertiesEnumerator.Value); |
1702 | } | 1695 | } |
1703 | } | 1696 | } |
1704 | 1697 | ||
@@ -1708,9 +1701,9 @@ namespace WixToolset.Extensions | |||
1708 | /// <param name="node">Element to parse.</param> | 1701 | /// <param name="node">Element to parse.</param> |
1709 | /// <param name="componentKey">Identifier of parent component.</param> | 1702 | /// <param name="componentKey">Identifier of parent component.</param> |
1710 | /// <param name="cpcomponentKey">Identifier of parent COM+ component.</param> | 1703 | /// <param name="cpcomponentKey">Identifier of parent COM+ component.</param> |
1711 | private void ParseComPlusRoleForComponentElement(XElement node, string componentKey, string cpcomponentKey) | 1704 | private void ParseComPlusRoleForComponentElement(Intermediate intermediate, IntermediateSection section, XElement node, string componentKey, string cpcomponentKey) |
1712 | { | 1705 | { |
1713 | SourceLineNumber sourceLineNumbers = Preprocessor.GetSourceLineNumbers(node); | 1706 | SourceLineNumber sourceLineNumbers = this.ParseHelper.GetSourceLineNumbers(node); |
1714 | 1707 | ||
1715 | string key = null; | 1708 | string key = null; |
1716 | string applicationRoleKey = null; | 1709 | string applicationRoleKey = null; |
@@ -1722,40 +1715,40 @@ namespace WixToolset.Extensions | |||
1722 | switch (attrib.Name.LocalName) | 1715 | switch (attrib.Name.LocalName) |
1723 | { | 1716 | { |
1724 | case "Id": | 1717 | case "Id": |
1725 | key = this.Core.GetAttributeIdentifierValue(sourceLineNumbers, attrib); | 1718 | key = this.ParseHelper.GetAttributeIdentifierValue(sourceLineNumbers, attrib); |
1726 | break; | 1719 | break; |
1727 | case "Component": | 1720 | case "Component": |
1728 | if (null != cpcomponentKey) | 1721 | if (null != cpcomponentKey) |
1729 | { | 1722 | { |
1730 | this.Core.OnMessage(WixErrors.IllegalAttributeWhenNested(sourceLineNumbers, node.Name.LocalName, attrib.Name.LocalName, node.Parent.Name.LocalName)); | 1723 | this.Messaging.Write(ErrorMessages.IllegalAttributeWhenNested(sourceLineNumbers, node.Name.LocalName, attrib.Name.LocalName, node.Parent.Name.LocalName)); |
1731 | } | 1724 | } |
1732 | cpcomponentKey = this.Core.GetAttributeValue(sourceLineNumbers, attrib); | 1725 | cpcomponentKey = this.ParseHelper.GetAttributeValue(sourceLineNumbers, attrib); |
1733 | this.Core.CreateSimpleReference(sourceLineNumbers, "ComPlusComponent", cpcomponentKey); | 1726 | this.ParseHelper.CreateSimpleReference(section, sourceLineNumbers, "ComPlusComponent", cpcomponentKey); |
1734 | break; | 1727 | break; |
1735 | case "ApplicationRole": | 1728 | case "ApplicationRole": |
1736 | applicationRoleKey = this.Core.GetAttributeValue(sourceLineNumbers, attrib); | 1729 | applicationRoleKey = this.ParseHelper.GetAttributeValue(sourceLineNumbers, attrib); |
1737 | break; | 1730 | break; |
1738 | default: | 1731 | default: |
1739 | this.Core.UnexpectedAttribute(node, attrib); | 1732 | this.ParseHelper.UnexpectedAttribute(node, attrib); |
1740 | break; | 1733 | break; |
1741 | } | 1734 | } |
1742 | } | 1735 | } |
1743 | else | 1736 | else |
1744 | { | 1737 | { |
1745 | this.Core.ParseExtensionAttribute(node, attrib); | 1738 | this.ParseHelper.ParseExtensionAttribute(this.Context.Extensions, intermediate, section, node, attrib); |
1746 | } | 1739 | } |
1747 | } | 1740 | } |
1748 | 1741 | ||
1749 | if (null == cpcomponentKey) | 1742 | if (null == cpcomponentKey) |
1750 | { | 1743 | { |
1751 | this.Core.OnMessage(WixErrors.ExpectedAttribute(sourceLineNumbers, node.Name.LocalName, "Component")); | 1744 | this.Messaging.Write(ErrorMessages.ExpectedAttribute(sourceLineNumbers, node.Name.LocalName, "Component")); |
1752 | } | 1745 | } |
1753 | 1746 | ||
1754 | Row row = this.Core.CreateRow(sourceLineNumbers, "ComPlusRoleForComponent"); | 1747 | var row = this.ParseHelper.CreateRow(section, sourceLineNumbers, "ComPlusRoleForComponent"); |
1755 | row[0] = key; | 1748 | row.Set(0, key); |
1756 | row[1] = cpcomponentKey; | 1749 | row.Set(1, cpcomponentKey); |
1757 | row[2] = applicationRoleKey; | 1750 | row.Set(2, applicationRoleKey); |
1758 | row[3] = componentKey; | 1751 | row.Set(3, componentKey); |
1759 | } | 1752 | } |
1760 | 1753 | ||
1761 | /// <summary> | 1754 | /// <summary> |
@@ -1764,9 +1757,9 @@ namespace WixToolset.Extensions | |||
1764 | /// <param name="node">Element to parse.</param> | 1757 | /// <param name="node">Element to parse.</param> |
1765 | /// <param name="componentKey">Identifier of parent component.</param> | 1758 | /// <param name="componentKey">Identifier of parent component.</param> |
1766 | /// <param name="cpcomponentKey">Identifier of parent COM+ component.</param> | 1759 | /// <param name="cpcomponentKey">Identifier of parent COM+ component.</param> |
1767 | private void ParseComPlusInterfaceElement(XElement node, string componentKey, string cpcomponentKey) | 1760 | private void ParseComPlusInterfaceElement(Intermediate intermediate, IntermediateSection section, XElement node, string componentKey, string cpcomponentKey) |
1768 | { | 1761 | { |
1769 | SourceLineNumber sourceLineNumbers = Preprocessor.GetSourceLineNumbers(node); | 1762 | SourceLineNumber sourceLineNumbers = this.ParseHelper.GetSourceLineNumbers(node); |
1770 | 1763 | ||
1771 | // parse attributes | 1764 | // parse attributes |
1772 | string key = null; | 1765 | string key = null; |
@@ -1781,25 +1774,25 @@ namespace WixToolset.Extensions | |||
1781 | switch (attrib.Name.LocalName) | 1774 | switch (attrib.Name.LocalName) |
1782 | { | 1775 | { |
1783 | case "Id": | 1776 | case "Id": |
1784 | key = this.Core.GetAttributeIdentifierValue(sourceLineNumbers, attrib); | 1777 | key = this.ParseHelper.GetAttributeIdentifierValue(sourceLineNumbers, attrib); |
1785 | break; | 1778 | break; |
1786 | case "IID": | 1779 | case "IID": |
1787 | iid = "{" + this.Core.GetAttributeValue(sourceLineNumbers, attrib) + "}"; | 1780 | iid = "{" + this.ParseHelper.GetAttributeValue(sourceLineNumbers, attrib) + "}"; |
1788 | break; | 1781 | break; |
1789 | case "Description": | 1782 | case "Description": |
1790 | properties["Description"] = this.Core.GetAttributeValue(sourceLineNumbers, attrib); | 1783 | properties["Description"] = this.ParseHelper.GetAttributeValue(sourceLineNumbers, attrib); |
1791 | break; | 1784 | break; |
1792 | case "QueuingEnabled": | 1785 | case "QueuingEnabled": |
1793 | properties["QueuingEnabled"] = YesNoType.Yes == this.Core.GetAttributeYesNoValue(sourceLineNumbers, attrib) ? "1" : "0"; | 1786 | properties["QueuingEnabled"] = YesNoType.Yes == this.ParseHelper.GetAttributeYesNoValue(sourceLineNumbers, attrib) ? "1" : "0"; |
1794 | break; | 1787 | break; |
1795 | default: | 1788 | default: |
1796 | this.Core.UnexpectedAttribute(node, attrib); | 1789 | this.ParseHelper.UnexpectedAttribute(node, attrib); |
1797 | break; | 1790 | break; |
1798 | } | 1791 | } |
1799 | } | 1792 | } |
1800 | else | 1793 | else |
1801 | { | 1794 | { |
1802 | this.Core.ParseExtensionAttribute(node, attrib); | 1795 | this.ParseHelper.ParseExtensionAttribute(this.Context.Extensions, intermediate, section, node, attrib); |
1803 | } | 1796 | } |
1804 | } | 1797 | } |
1805 | 1798 | ||
@@ -1810,34 +1803,34 @@ namespace WixToolset.Extensions | |||
1810 | switch (child.Name.LocalName) | 1803 | switch (child.Name.LocalName) |
1811 | { | 1804 | { |
1812 | case "ComPlusRoleForInterface": | 1805 | case "ComPlusRoleForInterface": |
1813 | this.ParseComPlusRoleForInterfaceElement(child, componentKey, key); | 1806 | this.ParseComPlusRoleForInterfaceElement(intermediate, section, child, componentKey, key); |
1814 | break; | 1807 | break; |
1815 | case "ComPlusMethod": | 1808 | case "ComPlusMethod": |
1816 | this.ParseComPlusMethodElement(child, componentKey, key); | 1809 | this.ParseComPlusMethodElement(intermediate, section, child, componentKey, key); |
1817 | break; | 1810 | break; |
1818 | default: | 1811 | default: |
1819 | this.Core.UnexpectedElement(node, child); | 1812 | this.ParseHelper.UnexpectedElement(node, child); |
1820 | break; | 1813 | break; |
1821 | } | 1814 | } |
1822 | } | 1815 | } |
1823 | else | 1816 | else |
1824 | { | 1817 | { |
1825 | this.Core.ParseExtensionElement(node, child); | 1818 | this.ParseHelper.ParseExtensionElement(this.Context.Extensions, intermediate, section, node, child); |
1826 | } | 1819 | } |
1827 | } | 1820 | } |
1828 | 1821 | ||
1829 | Row row = this.Core.CreateRow(sourceLineNumbers, "ComPlusInterface"); | 1822 | var row = this.ParseHelper.CreateRow(section, sourceLineNumbers, "ComPlusInterface"); |
1830 | row[0] = key; | 1823 | row.Set(0, key); |
1831 | row[1] = cpcomponentKey; | 1824 | row.Set(1, cpcomponentKey); |
1832 | row[2] = iid; | 1825 | row.Set(2, iid); |
1833 | 1826 | ||
1834 | IDictionaryEnumerator propertiesEnumerator = properties.GetEnumerator(); | 1827 | IDictionaryEnumerator propertiesEnumerator = properties.GetEnumerator(); |
1835 | while (propertiesEnumerator.MoveNext()) | 1828 | while (propertiesEnumerator.MoveNext()) |
1836 | { | 1829 | { |
1837 | Row propertyRow = this.Core.CreateRow(sourceLineNumbers, "ComPlusInterfaceProperty"); | 1830 | var propertyRow = this.ParseHelper.CreateRow(section, sourceLineNumbers, "ComPlusInterfaceProperty"); |
1838 | propertyRow[0] = key; | 1831 | propertyRow.Set(0, key); |
1839 | propertyRow[1] = (string)propertiesEnumerator.Key; | 1832 | propertyRow.Set(1, (string)propertiesEnumerator.Key); |
1840 | propertyRow[2] = (string)propertiesEnumerator.Value; | 1833 | propertyRow.Set(2, (string)propertiesEnumerator.Value); |
1841 | } | 1834 | } |
1842 | } | 1835 | } |
1843 | 1836 | ||
@@ -1847,9 +1840,9 @@ namespace WixToolset.Extensions | |||
1847 | /// <param name="node">Element to parse.</param> | 1840 | /// <param name="node">Element to parse.</param> |
1848 | /// <param name="componentKey">Identifier of parent component.</param> | 1841 | /// <param name="componentKey">Identifier of parent component.</param> |
1849 | /// <param name="interfaceKey">Identifier of parent interface.</param> | 1842 | /// <param name="interfaceKey">Identifier of parent interface.</param> |
1850 | private void ParseComPlusRoleForInterfaceElement(XElement node, string componentKey, string interfaceKey) | 1843 | private void ParseComPlusRoleForInterfaceElement(Intermediate intermediate, IntermediateSection section, XElement node, string componentKey, string interfaceKey) |
1851 | { | 1844 | { |
1852 | SourceLineNumber sourceLineNumbers = Preprocessor.GetSourceLineNumbers(node); | 1845 | SourceLineNumber sourceLineNumbers = this.ParseHelper.GetSourceLineNumbers(node); |
1853 | 1846 | ||
1854 | string key = null; | 1847 | string key = null; |
1855 | string applicationRoleKey = null; | 1848 | string applicationRoleKey = null; |
@@ -1861,40 +1854,40 @@ namespace WixToolset.Extensions | |||
1861 | switch (attrib.Name.LocalName) | 1854 | switch (attrib.Name.LocalName) |
1862 | { | 1855 | { |
1863 | case "Id": | 1856 | case "Id": |
1864 | key = this.Core.GetAttributeIdentifierValue(sourceLineNumbers, attrib); | 1857 | key = this.ParseHelper.GetAttributeIdentifierValue(sourceLineNumbers, attrib); |
1865 | break; | 1858 | break; |
1866 | case "Interface": | 1859 | case "Interface": |
1867 | if (null != interfaceKey) | 1860 | if (null != interfaceKey) |
1868 | { | 1861 | { |
1869 | this.Core.OnMessage(WixErrors.IllegalAttributeWhenNested(sourceLineNumbers, node.Name.LocalName, attrib.Name.LocalName, node.Parent.Name.LocalName)); | 1862 | this.Messaging.Write(ErrorMessages.IllegalAttributeWhenNested(sourceLineNumbers, node.Name.LocalName, attrib.Name.LocalName, node.Parent.Name.LocalName)); |
1870 | } | 1863 | } |
1871 | interfaceKey = this.Core.GetAttributeValue(sourceLineNumbers, attrib); | 1864 | interfaceKey = this.ParseHelper.GetAttributeValue(sourceLineNumbers, attrib); |
1872 | this.Core.CreateSimpleReference(sourceLineNumbers, "ComPlusInterface", interfaceKey); | 1865 | this.ParseHelper.CreateSimpleReference(section, sourceLineNumbers, "ComPlusInterface", interfaceKey); |
1873 | break; | 1866 | break; |
1874 | case "ApplicationRole": | 1867 | case "ApplicationRole": |
1875 | applicationRoleKey = this.Core.GetAttributeValue(sourceLineNumbers, attrib); | 1868 | applicationRoleKey = this.ParseHelper.GetAttributeValue(sourceLineNumbers, attrib); |
1876 | break; | 1869 | break; |
1877 | default: | 1870 | default: |
1878 | this.Core.UnexpectedAttribute(node, attrib); | 1871 | this.ParseHelper.UnexpectedAttribute(node, attrib); |
1879 | break; | 1872 | break; |
1880 | } | 1873 | } |
1881 | } | 1874 | } |
1882 | else | 1875 | else |
1883 | { | 1876 | { |
1884 | this.Core.ParseExtensionAttribute(node, attrib); | 1877 | this.ParseHelper.ParseExtensionAttribute(this.Context.Extensions, intermediate, section, node, attrib); |
1885 | } | 1878 | } |
1886 | } | 1879 | } |
1887 | 1880 | ||
1888 | if (null == interfaceKey) | 1881 | if (null == interfaceKey) |
1889 | { | 1882 | { |
1890 | this.Core.OnMessage(WixErrors.ExpectedAttribute(sourceLineNumbers, node.Name.LocalName, "Interface")); | 1883 | this.Messaging.Write(ErrorMessages.ExpectedAttribute(sourceLineNumbers, node.Name.LocalName, "Interface")); |
1891 | } | 1884 | } |
1892 | 1885 | ||
1893 | Row row = this.Core.CreateRow(sourceLineNumbers, "ComPlusRoleForInterface"); | 1886 | var row = this.ParseHelper.CreateRow(section, sourceLineNumbers, "ComPlusRoleForInterface"); |
1894 | row[0] = key; | 1887 | row.Set(0, key); |
1895 | row[1] = interfaceKey; | 1888 | row.Set(1, interfaceKey); |
1896 | row[2] = applicationRoleKey; | 1889 | row.Set(2, applicationRoleKey); |
1897 | row[3] = componentKey; | 1890 | row.Set(3, componentKey); |
1898 | } | 1891 | } |
1899 | 1892 | ||
1900 | /// <summary> | 1893 | /// <summary> |
@@ -1903,9 +1896,9 @@ namespace WixToolset.Extensions | |||
1903 | /// <param name="node">Element to parse.</param> | 1896 | /// <param name="node">Element to parse.</param> |
1904 | /// <param name="componentKey">Identifier of parent component.</param> | 1897 | /// <param name="componentKey">Identifier of parent component.</param> |
1905 | /// <param name="interfaceKey">Identifier of parent interface.</param> | 1898 | /// <param name="interfaceKey">Identifier of parent interface.</param> |
1906 | private void ParseComPlusMethodElement(XElement node, string componentKey, string interfaceKey) | 1899 | private void ParseComPlusMethodElement(Intermediate intermediate, IntermediateSection section, XElement node, string componentKey, string interfaceKey) |
1907 | { | 1900 | { |
1908 | SourceLineNumber sourceLineNumbers = Preprocessor.GetSourceLineNumbers(node); | 1901 | SourceLineNumber sourceLineNumbers = this.ParseHelper.GetSourceLineNumbers(node); |
1909 | 1902 | ||
1910 | string key = null; | 1903 | string key = null; |
1911 | int index = CompilerConstants.IntegerNotSet; | 1904 | int index = CompilerConstants.IntegerNotSet; |
@@ -1920,28 +1913,28 @@ namespace WixToolset.Extensions | |||
1920 | switch (attrib.Name.LocalName) | 1913 | switch (attrib.Name.LocalName) |
1921 | { | 1914 | { |
1922 | case "Id": | 1915 | case "Id": |
1923 | key = this.Core.GetAttributeIdentifierValue(sourceLineNumbers, attrib); | 1916 | key = this.ParseHelper.GetAttributeIdentifierValue(sourceLineNumbers, attrib); |
1924 | break; | 1917 | break; |
1925 | case "Index": | 1918 | case "Index": |
1926 | index = this.Core.GetAttributeIntegerValue(sourceLineNumbers, attrib, 0, int.MaxValue); | 1919 | index = this.ParseHelper.GetAttributeIntegerValue(sourceLineNumbers, attrib, 0, int.MaxValue); |
1927 | break; | 1920 | break; |
1928 | case "Name": | 1921 | case "Name": |
1929 | name = this.Core.GetAttributeValue(sourceLineNumbers, attrib); | 1922 | name = this.ParseHelper.GetAttributeValue(sourceLineNumbers, attrib); |
1930 | break; | 1923 | break; |
1931 | case "AutoComplete": | 1924 | case "AutoComplete": |
1932 | properties["AutoComplete"] = YesNoType.Yes == this.Core.GetAttributeYesNoValue(sourceLineNumbers, attrib) ? "1" : "0"; | 1925 | properties["AutoComplete"] = YesNoType.Yes == this.ParseHelper.GetAttributeYesNoValue(sourceLineNumbers, attrib) ? "1" : "0"; |
1933 | break; | 1926 | break; |
1934 | case "Description": | 1927 | case "Description": |
1935 | properties["Description"] = this.Core.GetAttributeValue(sourceLineNumbers, attrib); | 1928 | properties["Description"] = this.ParseHelper.GetAttributeValue(sourceLineNumbers, attrib); |
1936 | break; | 1929 | break; |
1937 | default: | 1930 | default: |
1938 | this.Core.UnexpectedAttribute(node, attrib); | 1931 | this.ParseHelper.UnexpectedAttribute(node, attrib); |
1939 | break; | 1932 | break; |
1940 | } | 1933 | } |
1941 | } | 1934 | } |
1942 | else | 1935 | else |
1943 | { | 1936 | { |
1944 | this.Core.ParseExtensionAttribute(node, attrib); | 1937 | this.ParseHelper.ParseExtensionAttribute(this.Context.Extensions, intermediate, section, node, attrib); |
1945 | } | 1938 | } |
1946 | } | 1939 | } |
1947 | 1940 | ||
@@ -1952,40 +1945,40 @@ namespace WixToolset.Extensions | |||
1952 | switch (child.Name.LocalName) | 1945 | switch (child.Name.LocalName) |
1953 | { | 1946 | { |
1954 | case "ComPlusRoleForMethod": | 1947 | case "ComPlusRoleForMethod": |
1955 | this.ParseComPlusRoleForMethodElement(child, componentKey, key); | 1948 | this.ParseComPlusRoleForMethodElement(intermediate, section, child, componentKey, key); |
1956 | break; | 1949 | break; |
1957 | default: | 1950 | default: |
1958 | this.Core.UnexpectedElement(node, child); | 1951 | this.ParseHelper.UnexpectedElement(node, child); |
1959 | break; | 1952 | break; |
1960 | } | 1953 | } |
1961 | } | 1954 | } |
1962 | else | 1955 | else |
1963 | { | 1956 | { |
1964 | this.Core.ParseExtensionElement(node, child); | 1957 | this.ParseHelper.ParseExtensionElement(this.Context.Extensions, intermediate, section, node, child); |
1965 | } | 1958 | } |
1966 | } | 1959 | } |
1967 | 1960 | ||
1968 | if (CompilerConstants.IntegerNotSet == index && null == name) | 1961 | if (CompilerConstants.IntegerNotSet == index && null == name) |
1969 | { | 1962 | { |
1970 | this.Core.OnMessage(ComPlusErrors.RequiredAttribute(sourceLineNumbers, node.Name.LocalName, "Index", "Name")); | 1963 | this.Messaging.Write(ComPlusErrors.RequiredAttribute(sourceLineNumbers, node.Name.LocalName, "Index", "Name")); |
1971 | } | 1964 | } |
1972 | 1965 | ||
1973 | Row row = this.Core.CreateRow(sourceLineNumbers, "ComPlusMethod"); | 1966 | var row = this.ParseHelper.CreateRow(section, sourceLineNumbers, "ComPlusMethod"); |
1974 | row[0] = key; | 1967 | row.Set(0, key); |
1975 | row[1] = interfaceKey; | 1968 | row.Set(1, interfaceKey); |
1976 | if (CompilerConstants.IntegerNotSet != index) | 1969 | if (CompilerConstants.IntegerNotSet != index) |
1977 | { | 1970 | { |
1978 | row[2] = index; | 1971 | row.Set(2, index); |
1979 | } | 1972 | } |
1980 | row[3] = name; | 1973 | row.Set(3, name); |
1981 | 1974 | ||
1982 | IDictionaryEnumerator propertiesEnumerator = properties.GetEnumerator(); | 1975 | IDictionaryEnumerator propertiesEnumerator = properties.GetEnumerator(); |
1983 | while (propertiesEnumerator.MoveNext()) | 1976 | while (propertiesEnumerator.MoveNext()) |
1984 | { | 1977 | { |
1985 | Row propertyRow = this.Core.CreateRow(sourceLineNumbers, "ComPlusMethodProperty"); | 1978 | var propertyRow = this.ParseHelper.CreateRow(section, sourceLineNumbers, "ComPlusMethodProperty"); |
1986 | propertyRow[0] = key; | 1979 | propertyRow.Set(0, key); |
1987 | propertyRow[1] = (string)propertiesEnumerator.Key; | 1980 | propertyRow.Set(1, (string)propertiesEnumerator.Key); |
1988 | propertyRow[2] = (string)propertiesEnumerator.Value; | 1981 | propertyRow.Set(2, (string)propertiesEnumerator.Value); |
1989 | } | 1982 | } |
1990 | } | 1983 | } |
1991 | 1984 | ||
@@ -1995,9 +1988,9 @@ namespace WixToolset.Extensions | |||
1995 | /// <param name="node">Element to parse.</param> | 1988 | /// <param name="node">Element to parse.</param> |
1996 | /// <param name="componentKey">Identifier of parent component.</param> | 1989 | /// <param name="componentKey">Identifier of parent component.</param> |
1997 | /// <param name="methodKey">Identifier of parent method.</param> | 1990 | /// <param name="methodKey">Identifier of parent method.</param> |
1998 | private void ParseComPlusRoleForMethodElement(XElement node, string componentKey, string methodKey) | 1991 | private void ParseComPlusRoleForMethodElement(Intermediate intermediate, IntermediateSection section, XElement node, string componentKey, string methodKey) |
1999 | { | 1992 | { |
2000 | SourceLineNumber sourceLineNumbers = Preprocessor.GetSourceLineNumbers(node); | 1993 | SourceLineNumber sourceLineNumbers = this.ParseHelper.GetSourceLineNumbers(node); |
2001 | 1994 | ||
2002 | string key = null; | 1995 | string key = null; |
2003 | string applicationRoleKey = null; | 1996 | string applicationRoleKey = null; |
@@ -2009,40 +2002,40 @@ namespace WixToolset.Extensions | |||
2009 | switch (attrib.Name.LocalName) | 2002 | switch (attrib.Name.LocalName) |
2010 | { | 2003 | { |
2011 | case "Id": | 2004 | case "Id": |
2012 | key = this.Core.GetAttributeIdentifierValue(sourceLineNumbers, attrib); | 2005 | key = this.ParseHelper.GetAttributeIdentifierValue(sourceLineNumbers, attrib); |
2013 | break; | 2006 | break; |
2014 | case "Method": | 2007 | case "Method": |
2015 | if (null != methodKey) | 2008 | if (null != methodKey) |
2016 | { | 2009 | { |
2017 | this.Core.OnMessage(WixErrors.IllegalAttributeWhenNested(sourceLineNumbers, node.Name.LocalName, attrib.Name.LocalName, node.Parent.Name.LocalName)); | 2010 | this.Messaging.Write(ErrorMessages.IllegalAttributeWhenNested(sourceLineNumbers, node.Name.LocalName, attrib.Name.LocalName, node.Parent.Name.LocalName)); |
2018 | } | 2011 | } |
2019 | methodKey = this.Core.GetAttributeValue(sourceLineNumbers, attrib); | 2012 | methodKey = this.ParseHelper.GetAttributeValue(sourceLineNumbers, attrib); |
2020 | this.Core.CreateSimpleReference(sourceLineNumbers, "ComPlusMethod", methodKey); | 2013 | this.ParseHelper.CreateSimpleReference(section, sourceLineNumbers, "ComPlusMethod", methodKey); |
2021 | break; | 2014 | break; |
2022 | case "ApplicationRole": | 2015 | case "ApplicationRole": |
2023 | applicationRoleKey = this.Core.GetAttributeValue(sourceLineNumbers, attrib); | 2016 | applicationRoleKey = this.ParseHelper.GetAttributeValue(sourceLineNumbers, attrib); |
2024 | break; | 2017 | break; |
2025 | default: | 2018 | default: |
2026 | this.Core.UnexpectedAttribute(node, attrib); | 2019 | this.ParseHelper.UnexpectedAttribute(node, attrib); |
2027 | break; | 2020 | break; |
2028 | } | 2021 | } |
2029 | } | 2022 | } |
2030 | else | 2023 | else |
2031 | { | 2024 | { |
2032 | this.Core.ParseExtensionAttribute(node, attrib); | 2025 | this.ParseHelper.ParseExtensionAttribute(this.Context.Extensions, intermediate, section, node, attrib); |
2033 | } | 2026 | } |
2034 | } | 2027 | } |
2035 | 2028 | ||
2036 | if (null == methodKey) | 2029 | if (null == methodKey) |
2037 | { | 2030 | { |
2038 | this.Core.OnMessage(WixErrors.ExpectedAttribute(sourceLineNumbers, node.Name.LocalName, "Method")); | 2031 | this.Messaging.Write(ErrorMessages.ExpectedAttribute(sourceLineNumbers, node.Name.LocalName, "Method")); |
2039 | } | 2032 | } |
2040 | 2033 | ||
2041 | Row row = this.Core.CreateRow(sourceLineNumbers, "ComPlusRoleForMethod"); | 2034 | var row = this.ParseHelper.CreateRow(section, sourceLineNumbers, "ComPlusRoleForMethod"); |
2042 | row[0] = key; | 2035 | row.Set(0, key); |
2043 | row[1] = methodKey; | 2036 | row.Set(1, methodKey); |
2044 | row[2] = applicationRoleKey; | 2037 | row.Set(2, applicationRoleKey); |
2045 | row[3] = componentKey; | 2038 | row.Set(3, componentKey); |
2046 | } | 2039 | } |
2047 | 2040 | ||
2048 | /// <summary> | 2041 | /// <summary> |
@@ -2051,9 +2044,9 @@ namespace WixToolset.Extensions | |||
2051 | /// <param name="node">Element to parse.</param> | 2044 | /// <param name="node">Element to parse.</param> |
2052 | /// <param name="componentKey">Identifier of parent component.</param> | 2045 | /// <param name="componentKey">Identifier of parent component.</param> |
2053 | /// <param name="cpcomponentKey">Identifier of parent COM+ component.</param> | 2046 | /// <param name="cpcomponentKey">Identifier of parent COM+ component.</param> |
2054 | private void ParseComPlusSubscriptionElement(XElement node, string componentKey, string cpcomponentKey) | 2047 | private void ParseComPlusSubscriptionElement(Intermediate intermediate, IntermediateSection section, XElement node, string componentKey, string cpcomponentKey) |
2055 | { | 2048 | { |
2056 | SourceLineNumber sourceLineNumbers = Preprocessor.GetSourceLineNumbers(node); | 2049 | SourceLineNumber sourceLineNumbers = this.ParseHelper.GetSourceLineNumbers(node); |
2057 | 2050 | ||
2058 | string key = null; | 2051 | string key = null; |
2059 | string id = null; | 2052 | string id = null; |
@@ -2070,95 +2063,95 @@ namespace WixToolset.Extensions | |||
2070 | switch (attrib.Name.LocalName) | 2063 | switch (attrib.Name.LocalName) |
2071 | { | 2064 | { |
2072 | case "Id": | 2065 | case "Id": |
2073 | key = this.Core.GetAttributeIdentifierValue(sourceLineNumbers, attrib); | 2066 | key = this.ParseHelper.GetAttributeIdentifierValue(sourceLineNumbers, attrib); |
2074 | break; | 2067 | break; |
2075 | case "Component": | 2068 | case "Component": |
2076 | if (null != cpcomponentKey) | 2069 | if (null != cpcomponentKey) |
2077 | { | 2070 | { |
2078 | this.Core.OnMessage(WixErrors.IllegalAttributeWhenNested(sourceLineNumbers, node.Name.LocalName, attrib.Name.LocalName, node.Parent.Name.LocalName)); | 2071 | this.Messaging.Write(ErrorMessages.IllegalAttributeWhenNested(sourceLineNumbers, node.Name.LocalName, attrib.Name.LocalName, node.Parent.Name.LocalName)); |
2079 | } | 2072 | } |
2080 | cpcomponentKey = this.Core.GetAttributeValue(sourceLineNumbers, attrib); | 2073 | cpcomponentKey = this.ParseHelper.GetAttributeValue(sourceLineNumbers, attrib); |
2081 | this.Core.CreateSimpleReference(sourceLineNumbers, "ComPlusComponent", cpcomponentKey); | 2074 | this.ParseHelper.CreateSimpleReference(section, sourceLineNumbers, "ComPlusComponent", cpcomponentKey); |
2082 | break; | 2075 | break; |
2083 | case "SubscriptionId": | 2076 | case "SubscriptionId": |
2084 | id = TryFormatGuidValue(this.Core.GetAttributeValue(sourceLineNumbers, attrib)); | 2077 | id = this.TryFormatGuidValue(this.ParseHelper.GetAttributeValue(sourceLineNumbers, attrib)); |
2085 | break; | 2078 | break; |
2086 | case "Name": | 2079 | case "Name": |
2087 | name = this.Core.GetAttributeValue(sourceLineNumbers, attrib); | 2080 | name = this.ParseHelper.GetAttributeValue(sourceLineNumbers, attrib); |
2088 | break; | 2081 | break; |
2089 | case "EventCLSID": | 2082 | case "EventCLSID": |
2090 | eventCLSID = this.Core.GetAttributeValue(sourceLineNumbers, attrib); | 2083 | eventCLSID = this.ParseHelper.GetAttributeValue(sourceLineNumbers, attrib); |
2091 | break; | 2084 | break; |
2092 | case "PublisherID": | 2085 | case "PublisherID": |
2093 | publisherID = TryFormatGuidValue(this.Core.GetAttributeValue(sourceLineNumbers, attrib)); | 2086 | publisherID = this.TryFormatGuidValue(this.ParseHelper.GetAttributeValue(sourceLineNumbers, attrib)); |
2094 | break; | 2087 | break; |
2095 | case "Description": | 2088 | case "Description": |
2096 | properties["Description"] = this.Core.GetAttributeValue(sourceLineNumbers, attrib); | 2089 | properties["Description"] = this.ParseHelper.GetAttributeValue(sourceLineNumbers, attrib); |
2097 | break; | 2090 | break; |
2098 | case "Enabled": | 2091 | case "Enabled": |
2099 | properties["Enabled"] = YesNoType.Yes == this.Core.GetAttributeYesNoValue(sourceLineNumbers, attrib) ? "1" : "0"; | 2092 | properties["Enabled"] = YesNoType.Yes == this.ParseHelper.GetAttributeYesNoValue(sourceLineNumbers, attrib) ? "1" : "0"; |
2100 | break; | 2093 | break; |
2101 | case "EventClassPartitionID": | 2094 | case "EventClassPartitionID": |
2102 | properties["EventClassPartitionID"] = this.Core.GetAttributeValue(sourceLineNumbers, attrib); | 2095 | properties["EventClassPartitionID"] = this.ParseHelper.GetAttributeValue(sourceLineNumbers, attrib); |
2103 | break; | 2096 | break; |
2104 | case "FilterCriteria": | 2097 | case "FilterCriteria": |
2105 | properties["FilterCriteria"] = this.Core.GetAttributeValue(sourceLineNumbers, attrib); | 2098 | properties["FilterCriteria"] = this.ParseHelper.GetAttributeValue(sourceLineNumbers, attrib); |
2106 | break; | 2099 | break; |
2107 | case "InterfaceID": | 2100 | case "InterfaceID": |
2108 | properties["InterfaceID"] = this.Core.GetAttributeValue(sourceLineNumbers, attrib); | 2101 | properties["InterfaceID"] = this.ParseHelper.GetAttributeValue(sourceLineNumbers, attrib); |
2109 | break; | 2102 | break; |
2110 | case "MachineName": | 2103 | case "MachineName": |
2111 | properties["MachineName"] = this.Core.GetAttributeValue(sourceLineNumbers, attrib); | 2104 | properties["MachineName"] = this.ParseHelper.GetAttributeValue(sourceLineNumbers, attrib); |
2112 | break; | 2105 | break; |
2113 | case "MethodName": | 2106 | case "MethodName": |
2114 | properties["MethodName"] = this.Core.GetAttributeValue(sourceLineNumbers, attrib); | 2107 | properties["MethodName"] = this.ParseHelper.GetAttributeValue(sourceLineNumbers, attrib); |
2115 | break; | 2108 | break; |
2116 | case "PerUser": | 2109 | case "PerUser": |
2117 | properties["PerUser"] = YesNoType.Yes == this.Core.GetAttributeYesNoValue(sourceLineNumbers, attrib) ? "1" : "0"; | 2110 | properties["PerUser"] = YesNoType.Yes == this.ParseHelper.GetAttributeYesNoValue(sourceLineNumbers, attrib) ? "1" : "0"; |
2118 | break; | 2111 | break; |
2119 | case "Queued": | 2112 | case "Queued": |
2120 | properties["Queued"] = YesNoType.Yes == this.Core.GetAttributeYesNoValue(sourceLineNumbers, attrib) ? "1" : "0"; | 2113 | properties["Queued"] = YesNoType.Yes == this.ParseHelper.GetAttributeYesNoValue(sourceLineNumbers, attrib) ? "1" : "0"; |
2121 | break; | 2114 | break; |
2122 | case "SubscriberMoniker": | 2115 | case "SubscriberMoniker": |
2123 | properties["SubscriberMoniker"] = this.Core.GetAttributeValue(sourceLineNumbers, attrib); | 2116 | properties["SubscriberMoniker"] = this.ParseHelper.GetAttributeValue(sourceLineNumbers, attrib); |
2124 | break; | 2117 | break; |
2125 | case "UserName": | 2118 | case "UserName": |
2126 | properties["UserName"] = this.Core.GetAttributeValue(sourceLineNumbers, attrib); | 2119 | properties["UserName"] = this.ParseHelper.GetAttributeValue(sourceLineNumbers, attrib); |
2127 | break; | 2120 | break; |
2128 | default: | 2121 | default: |
2129 | this.Core.UnexpectedAttribute(node, attrib); | 2122 | this.ParseHelper.UnexpectedAttribute(node, attrib); |
2130 | break; | 2123 | break; |
2131 | } | 2124 | } |
2132 | } | 2125 | } |
2133 | else | 2126 | else |
2134 | { | 2127 | { |
2135 | this.Core.ParseExtensionAttribute(node, attrib); | 2128 | this.ParseHelper.ParseExtensionAttribute(this.Context.Extensions, intermediate, section, node, attrib); |
2136 | } | 2129 | } |
2137 | } | 2130 | } |
2138 | 2131 | ||
2139 | if (null == cpcomponentKey) | 2132 | if (null == cpcomponentKey) |
2140 | { | 2133 | { |
2141 | this.Core.OnMessage(WixErrors.ExpectedAttribute(sourceLineNumbers, node.Name.LocalName, "Component")); | 2134 | this.Messaging.Write(ErrorMessages.ExpectedAttribute(sourceLineNumbers, node.Name.LocalName, "Component")); |
2142 | } | 2135 | } |
2143 | 2136 | ||
2144 | this.Core.ParseForExtensionElements(node); | 2137 | this.ParseHelper.ParseForExtensionElements(this.Context.Extensions, intermediate, section, node); |
2145 | 2138 | ||
2146 | Row row = this.Core.CreateRow(sourceLineNumbers, "ComPlusSubscription"); | 2139 | var row = this.ParseHelper.CreateRow(section, sourceLineNumbers, "ComPlusSubscription"); |
2147 | row[0] = key; | 2140 | row.Set(0, key); |
2148 | row[1] = cpcomponentKey; | 2141 | row.Set(1, cpcomponentKey); |
2149 | row[2] = componentKey; | 2142 | row.Set(2, componentKey); |
2150 | row[3] = id; | 2143 | row.Set(3, id); |
2151 | row[4] = name; | 2144 | row.Set(4, name); |
2152 | row[5] = eventCLSID; | 2145 | row.Set(5, eventCLSID); |
2153 | row[6] = publisherID; | 2146 | row.Set(6, publisherID); |
2154 | 2147 | ||
2155 | IDictionaryEnumerator propertiesEnumerator = properties.GetEnumerator(); | 2148 | IDictionaryEnumerator propertiesEnumerator = properties.GetEnumerator(); |
2156 | while (propertiesEnumerator.MoveNext()) | 2149 | while (propertiesEnumerator.MoveNext()) |
2157 | { | 2150 | { |
2158 | Row propertyRow = this.Core.CreateRow(sourceLineNumbers, "ComPlusSubscriptionProperty"); | 2151 | var propertyRow = this.ParseHelper.CreateRow(section, sourceLineNumbers, "ComPlusSubscriptionProperty"); |
2159 | propertyRow[0] = key; | 2152 | propertyRow.Set(0, key); |
2160 | propertyRow[1] = (string)propertiesEnumerator.Key; | 2153 | propertyRow.Set(1, (string)propertiesEnumerator.Key); |
2161 | propertyRow[2] = (string)propertiesEnumerator.Value; | 2154 | propertyRow.Set(2, (string)propertiesEnumerator.Value); |
2162 | } | 2155 | } |
2163 | } | 2156 | } |
2164 | 2157 | ||
diff --git a/src/wixext/ComPlusDecompiler.cs b/src/wixext/ComPlusDecompiler.cs index 27f1653e..6da2df94 100644 --- a/src/wixext/ComPlusDecompiler.cs +++ b/src/wixext/ComPlusDecompiler.cs | |||
@@ -1,7 +1,8 @@ | |||
1 | // 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. | 1 | // 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. |
2 | 2 | ||
3 | namespace WixToolset.Extensions | 3 | namespace WixToolset.ComPlus |
4 | { | 4 | { |
5 | #if TODO_CONSIDER_DECOMPILER | ||
5 | using System; | 6 | using System; |
6 | using System.Collections; | 7 | using System.Collections; |
7 | using System.Globalization; | 8 | using System.Globalization; |
@@ -1840,4 +1841,5 @@ namespace WixToolset.Extensions | |||
1840 | } | 1841 | } |
1841 | } | 1842 | } |
1842 | } | 1843 | } |
1844 | #endif | ||
1843 | } | 1845 | } |
diff --git a/src/wixext/ComPlusErrors.cs b/src/wixext/ComPlusErrors.cs new file mode 100644 index 00000000..91b41679 --- /dev/null +++ b/src/wixext/ComPlusErrors.cs | |||
@@ -0,0 +1,72 @@ | |||
1 | // 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. | ||
2 | |||
3 | namespace WixToolset.ComPlus | ||
4 | { | ||
5 | using System; | ||
6 | using System.Resources; | ||
7 | using WixToolset.Data; | ||
8 | |||
9 | public static class ComPlusErrors | ||
10 | { | ||
11 | public static Message IllegalAttributeWithoutComponent(SourceLineNumber sourceLineNumbers, string elementName, string attributeName) | ||
12 | { | ||
13 | return Message(sourceLineNumbers, Ids.IllegalAttributeWithoutComponent, "The {0}/@{1} attribute cannot be specified unless the element has a component as an ancestor. A {0} that does not have a component ancestor is not installed.", elementName, attributeName); | ||
14 | } | ||
15 | |||
16 | public static Message IllegalElementWithoutComponent(SourceLineNumber sourceLineNumbers, string elementName) | ||
17 | { | ||
18 | return Message(sourceLineNumbers, Ids.IllegalElementWithoutComponent, "The {0} element cannot be specified unless the element has a component as an ancestor. A {0} that does not have a component ancestor is not installed.", elementName); | ||
19 | } | ||
20 | |||
21 | public static Message RequiredAttribute(SourceLineNumber sourceLineNumbers, string elementName, string attributeName1, string attributeName2) | ||
22 | { | ||
23 | return Message(sourceLineNumbers, Ids.RequiredAttribute, "A {0} element must have either a {1} attribute or a {2} attribute, or both set.", elementName, attributeName1, attributeName2); | ||
24 | } | ||
25 | |||
26 | public static Message RequiredAttributeNotUnderComponent(SourceLineNumber sourceLineNumbers, string elementName, string attributeName1, string attributeName2) | ||
27 | { | ||
28 | return Message(sourceLineNumbers, Ids.RequiredAttributeNotUnderComponent, "A {0} element not nested under a component must have either a {1} attribute or a {2} attribute, or both set.", elementName, attributeName1, attributeName2); | ||
29 | } | ||
30 | |||
31 | public static Message RequiredAttributeUnderComponent(SourceLineNumber sourceLineNumbers, string elementName, string attributeName) | ||
32 | { | ||
33 | return Message(sourceLineNumbers, Ids.RequiredAttributeUnderComponent, "The {0}/@{1} attribute must be provided when {0} element is nested under a component.", elementName, attributeName); | ||
34 | } | ||
35 | |||
36 | public static Message UnexpectedAttributeWithOtherValue(SourceLineNumber sourceLineNumbers, string elementName, string attributeName, string otherAttributeName, string otherValue) | ||
37 | { | ||
38 | return Message(sourceLineNumbers, Ids.UnexpectedAttributeWithOtherValue, "The {0}/@{1} attribute cannot coexist with the {2} attribute's value of '{3}'.", elementName, attributeName, otherAttributeName, otherValue); | ||
39 | } | ||
40 | |||
41 | public static Message UnexpectedAttributeWithOtherValue(SourceLineNumber sourceLineNumbers, string elementName, string attributeName, string value, string otherAttributeName, string otherValue) | ||
42 | { | ||
43 | return Message(sourceLineNumbers, Ids.UnexpectedAttributeWithOtherValue, "The {0}/@{1} attribute's value, '{2}', cannot coexist with the {3} attribute's value of '{4}'.", elementName, attributeName, value, otherAttributeName, otherValue); | ||
44 | } | ||
45 | |||
46 | public static Message UnexpectedAttributeWithoutOtherValue(SourceLineNumber sourceLineNumbers, string elementName, string attributeName, string otherAttributeName, string otherValue) | ||
47 | { | ||
48 | return Message(sourceLineNumbers, Ids.UnexpectedAttributeWithoutOtherValue, "The {0}/@{1} cannot be provided unless the {2} attribute is provided with a value of '{3}'.", elementName, attributeName, otherAttributeName, otherValue); | ||
49 | } | ||
50 | |||
51 | private static Message Message(SourceLineNumber sourceLineNumber, Ids id, string format, params object[] args) | ||
52 | { | ||
53 | return new Message(sourceLineNumber, MessageLevel.Error, (int)id, format, args); | ||
54 | } | ||
55 | |||
56 | private static Message Message(SourceLineNumber sourceLineNumber, Ids id, ResourceManager resourceManager, string resourceName, params object[] args) | ||
57 | { | ||
58 | return new Message(sourceLineNumber, MessageLevel.Error, (int)id, resourceManager, resourceName, args); | ||
59 | } | ||
60 | |||
61 | public enum Ids | ||
62 | { | ||
63 | IllegalAttributeWithoutComponent = 6000, | ||
64 | IllegalElementWithoutComponent = 6001, | ||
65 | UnexpectedAttributeWithOtherValue = 6002, | ||
66 | UnexpectedAttributeWithoutOtherValue = 6003, | ||
67 | RequiredAttributeUnderComponent = 6004, | ||
68 | RequiredAttribute = 6005, | ||
69 | RequiredAttributeNotUnderComponent = 6006, | ||
70 | } | ||
71 | } | ||
72 | } | ||
diff --git a/src/wixext/ComPlusExtensionData.cs b/src/wixext/ComPlusExtensionData.cs index cedc2474..954e89f6 100644 --- a/src/wixext/ComPlusExtensionData.cs +++ b/src/wixext/ComPlusExtensionData.cs | |||
@@ -1,64 +1,30 @@ | |||
1 | // 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. | 1 | // 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. |
2 | 2 | ||
3 | namespace WixToolset.Extensions | 3 | namespace WixToolset.ComPlus |
4 | { | 4 | { |
5 | using System; | ||
6 | using System.Reflection; | ||
7 | using WixToolset.Data; | 5 | using WixToolset.Data; |
8 | using WixToolset.Extensibility; | 6 | using WixToolset.Extensibility; |
9 | 7 | ||
10 | /// <summary> | 8 | /// <summary> |
11 | /// The WiX Toolset COM+ Extension. | 9 | /// The WiX Toolset COM+ Extension. |
12 | /// </summary> | 10 | /// </summary> |
13 | public sealed class ComPlusExtensionData : ExtensionData | 11 | public sealed class ComPlusExtensionData : BaseExtensionData |
14 | { | 12 | { |
15 | /// <summary> | 13 | /// <summary> |
16 | /// Gets the default culture. | 14 | /// Gets the default culture. |
17 | /// </summary> | 15 | /// </summary> |
18 | /// <value>The default culture.</value> | 16 | /// <value>The default culture.</value> |
19 | public override string DefaultCulture | 17 | public override string DefaultCulture => "en-US"; |
20 | { | ||
21 | get { return "en-us"; } | ||
22 | } | ||
23 | |||
24 | /// <summary> | ||
25 | /// Gets the optional table definitions for this extension. | ||
26 | /// </summary> | ||
27 | /// <value>The optional table definitions for this extension.</value> | ||
28 | public override TableDefinitionCollection TableDefinitions | ||
29 | { | ||
30 | get | ||
31 | { | ||
32 | return ComPlusExtensionData.GetExtensionTableDefinitions(); | ||
33 | } | ||
34 | } | ||
35 | |||
36 | /// <summary> | ||
37 | /// Gets the library associated with this extension. | ||
38 | /// </summary> | ||
39 | /// <param name="tableDefinitions">The table definitions to use while loading the library.</param> | ||
40 | /// <returns>The loaded library.</returns> | ||
41 | public override Library GetLibrary(TableDefinitionCollection tableDefinitions) | ||
42 | { | ||
43 | return ComPlusExtensionData.GetExtensionLibrary(tableDefinitions); | ||
44 | } | ||
45 | 18 | ||
46 | /// <summary> | 19 | public override bool TryGetTupleDefinitionByName(string name, out IntermediateTupleDefinition tupleDefinition) |
47 | /// Internal mechanism to access the extension's table definitions. | ||
48 | /// </summary> | ||
49 | /// <returns>Extension's table definitions.</returns> | ||
50 | internal static TableDefinitionCollection GetExtensionTableDefinitions() | ||
51 | { | 20 | { |
52 | return ExtensionData.LoadTableDefinitionHelper(Assembly.GetExecutingAssembly(), "WixToolset.Extensions.Data.tables.xml"); | 21 | tupleDefinition = ComPlusTupleDefinitions.ByName(name); |
22 | return tupleDefinition != null; | ||
53 | } | 23 | } |
54 | 24 | ||
55 | /// <summary> | 25 | public override Intermediate GetLibrary(ITupleDefinitionCreator tupleDefinitions) |
56 | /// Internal mechanism to access the extension's library. | ||
57 | /// </summary> | ||
58 | /// <returns>Extension's library.</returns> | ||
59 | internal static Library GetExtensionLibrary(TableDefinitionCollection tableDefinitions) | ||
60 | { | 26 | { |
61 | return ExtensionData.LoadLibraryHelper(Assembly.GetExecutingAssembly(), "WixToolset.Extensions.Data.complus.wixlib", tableDefinitions); | 27 | return Intermediate.Load(typeof(ComPlusExtensionData).Assembly, "WixToolset.ComPlus.complus.wixlib", tupleDefinitions); |
62 | } | 28 | } |
63 | } | 29 | } |
64 | } | 30 | } |
diff --git a/src/wixext/ComPlusExtensionFactory.cs b/src/wixext/ComPlusExtensionFactory.cs new file mode 100644 index 00000000..d9405867 --- /dev/null +++ b/src/wixext/ComPlusExtensionFactory.cs | |||
@@ -0,0 +1,18 @@ | |||
1 | // 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. | ||
2 | |||
3 | namespace WixToolset.ComPlus | ||
4 | { | ||
5 | using System; | ||
6 | using System.Collections.Generic; | ||
7 | using WixToolset.Extensibility; | ||
8 | |||
9 | public class ComPlusExtensionFactory : BaseExtensionFactory | ||
10 | { | ||
11 | protected override IEnumerable<Type> ExtensionTypes => new[] | ||
12 | { | ||
13 | typeof(ComPlusCompiler), | ||
14 | typeof(ComPlusExtensionData), | ||
15 | typeof(ComPlusWindowsInstallerBackendBinderExtension), | ||
16 | }; | ||
17 | } | ||
18 | } | ||
diff --git a/src/wixext/ComPlusWarnings.cs b/src/wixext/ComPlusWarnings.cs new file mode 100644 index 00000000..e0000918 --- /dev/null +++ b/src/wixext/ComPlusWarnings.cs | |||
@@ -0,0 +1,31 @@ | |||
1 | // 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. | ||
2 | |||
3 | namespace WixToolset.ComPlus | ||
4 | { | ||
5 | using System; | ||
6 | using System.Resources; | ||
7 | using WixToolset.Data; | ||
8 | |||
9 | public static class ComPlusWarnings | ||
10 | { | ||
11 | public static Message MissingComponents(SourceLineNumber sourceLineNumbers) | ||
12 | { | ||
13 | return Message(sourceLineNumbers, Ids.MissingComponents, "The ComPlusAssembly element has a Type attribute with a value of 'native', but the element does not contain any ComPlusComponent elements. All components contained in a native assembly must be listed, or they will not be correctly removed during uninstall."); | ||
14 | } | ||
15 | |||
16 | private static Message Message(SourceLineNumber sourceLineNumber, Ids id, string format, params object[] args) | ||
17 | { | ||
18 | return new Message(sourceLineNumber, MessageLevel.Warning, (int)id, format, args); | ||
19 | } | ||
20 | |||
21 | private static Message Message(SourceLineNumber sourceLineNumber, Ids id, ResourceManager resourceManager, string resourceName, params object[] args) | ||
22 | { | ||
23 | return new Message(sourceLineNumber, MessageLevel.Warning, (int)id, resourceManager, resourceName, args); | ||
24 | } | ||
25 | |||
26 | public enum Ids | ||
27 | { | ||
28 | MissingComponents = 6007, | ||
29 | } | ||
30 | } | ||
31 | } | ||
diff --git a/src/wixext/ComPlusWindowsInstallerBackendBinderExtension.cs b/src/wixext/ComPlusWindowsInstallerBackendBinderExtension.cs new file mode 100644 index 00000000..b00add9e --- /dev/null +++ b/src/wixext/ComPlusWindowsInstallerBackendBinderExtension.cs | |||
@@ -0,0 +1,26 @@ | |||
1 | // 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. | ||
2 | |||
3 | namespace WixToolset.ComPlus | ||
4 | { | ||
5 | using System.Linq; | ||
6 | using System.Xml; | ||
7 | using WixToolset.Data.WindowsInstaller; | ||
8 | using WixToolset.Extensibility; | ||
9 | |||
10 | public class ComPlusWindowsInstallerBackendBinderExtension : BaseWindowsInstallerBackendBinderExtension | ||
11 | { | ||
12 | private static readonly TableDefinition[] Tables = LoadTables(); | ||
13 | |||
14 | protected override TableDefinition[] TableDefinitionsForTuples => Tables; | ||
15 | |||
16 | private static TableDefinition[] LoadTables() | ||
17 | { | ||
18 | using (var resourceStream = typeof(ComPlusWindowsInstallerBackendBinderExtension).Assembly.GetManifestResourceStream("WixToolset.ComPlus.tables.xml")) | ||
19 | using (var reader = XmlReader.Create(resourceStream)) | ||
20 | { | ||
21 | var tables = TableDefinitionCollection.Load(reader); | ||
22 | return tables.ToArray(); | ||
23 | } | ||
24 | } | ||
25 | } | ||
26 | } | ||
diff --git a/src/wixext/Tuples/ComPlusApplicationPropertyTuple.cs b/src/wixext/Tuples/ComPlusApplicationPropertyTuple.cs new file mode 100644 index 00000000..2582d323 --- /dev/null +++ b/src/wixext/Tuples/ComPlusApplicationPropertyTuple.cs | |||
@@ -0,0 +1,63 @@ | |||
1 | // 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. | ||
2 | |||
3 | namespace WixToolset.ComPlus | ||
4 | { | ||
5 | using WixToolset.Data; | ||
6 | using WixToolset.ComPlus.Tuples; | ||
7 | |||
8 | public static partial class ComPlusTupleDefinitions | ||
9 | { | ||
10 | public static readonly IntermediateTupleDefinition ComPlusApplicationProperty = new IntermediateTupleDefinition( | ||
11 | ComPlusTupleDefinitionType.ComPlusApplicationProperty.ToString(), | ||
12 | new[] | ||
13 | { | ||
14 | new IntermediateFieldDefinition(nameof(ComPlusApplicationPropertyTupleFields.Application_), IntermediateFieldType.String), | ||
15 | new IntermediateFieldDefinition(nameof(ComPlusApplicationPropertyTupleFields.Name), IntermediateFieldType.String), | ||
16 | new IntermediateFieldDefinition(nameof(ComPlusApplicationPropertyTupleFields.Value), IntermediateFieldType.String), | ||
17 | }, | ||
18 | typeof(ComPlusApplicationPropertyTuple)); | ||
19 | } | ||
20 | } | ||
21 | |||
22 | namespace WixToolset.ComPlus.Tuples | ||
23 | { | ||
24 | using WixToolset.Data; | ||
25 | |||
26 | public enum ComPlusApplicationPropertyTupleFields | ||
27 | { | ||
28 | Application_, | ||
29 | Name, | ||
30 | Value, | ||
31 | } | ||
32 | |||
33 | public class ComPlusApplicationPropertyTuple : IntermediateTuple | ||
34 | { | ||
35 | public ComPlusApplicationPropertyTuple() : base(ComPlusTupleDefinitions.ComPlusApplicationProperty, null, null) | ||
36 | { | ||
37 | } | ||
38 | |||
39 | public ComPlusApplicationPropertyTuple(SourceLineNumber sourceLineNumber, Identifier id = null) : base(ComPlusTupleDefinitions.ComPlusApplicationProperty, sourceLineNumber, id) | ||
40 | { | ||
41 | } | ||
42 | |||
43 | public IntermediateField this[ComPlusApplicationPropertyTupleFields index] => this.Fields[(int)index]; | ||
44 | |||
45 | public string Application_ | ||
46 | { | ||
47 | get => this.Fields[(int)ComPlusApplicationPropertyTupleFields.Application_].AsString(); | ||
48 | set => this.Set((int)ComPlusApplicationPropertyTupleFields.Application_, value); | ||
49 | } | ||
50 | |||
51 | public string Name | ||
52 | { | ||
53 | get => this.Fields[(int)ComPlusApplicationPropertyTupleFields.Name].AsString(); | ||
54 | set => this.Set((int)ComPlusApplicationPropertyTupleFields.Name, value); | ||
55 | } | ||
56 | |||
57 | public string Value | ||
58 | { | ||
59 | get => this.Fields[(int)ComPlusApplicationPropertyTupleFields.Value].AsString(); | ||
60 | set => this.Set((int)ComPlusApplicationPropertyTupleFields.Value, value); | ||
61 | } | ||
62 | } | ||
63 | } \ No newline at end of file | ||
diff --git a/src/wixext/Tuples/ComPlusApplicationRolePropertyTuple.cs b/src/wixext/Tuples/ComPlusApplicationRolePropertyTuple.cs new file mode 100644 index 00000000..98eee7f8 --- /dev/null +++ b/src/wixext/Tuples/ComPlusApplicationRolePropertyTuple.cs | |||
@@ -0,0 +1,63 @@ | |||
1 | // 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. | ||
2 | |||
3 | namespace WixToolset.ComPlus | ||
4 | { | ||
5 | using WixToolset.Data; | ||
6 | using WixToolset.ComPlus.Tuples; | ||
7 | |||
8 | public static partial class ComPlusTupleDefinitions | ||
9 | { | ||
10 | public static readonly IntermediateTupleDefinition ComPlusApplicationRoleProperty = new IntermediateTupleDefinition( | ||
11 | ComPlusTupleDefinitionType.ComPlusApplicationRoleProperty.ToString(), | ||
12 | new[] | ||
13 | { | ||
14 | new IntermediateFieldDefinition(nameof(ComPlusApplicationRolePropertyTupleFields.ApplicationRole_), IntermediateFieldType.String), | ||
15 | new IntermediateFieldDefinition(nameof(ComPlusApplicationRolePropertyTupleFields.Name), IntermediateFieldType.String), | ||
16 | new IntermediateFieldDefinition(nameof(ComPlusApplicationRolePropertyTupleFields.Value), IntermediateFieldType.String), | ||
17 | }, | ||
18 | typeof(ComPlusApplicationRolePropertyTuple)); | ||
19 | } | ||
20 | } | ||
21 | |||
22 | namespace WixToolset.ComPlus.Tuples | ||
23 | { | ||
24 | using WixToolset.Data; | ||
25 | |||
26 | public enum ComPlusApplicationRolePropertyTupleFields | ||
27 | { | ||
28 | ApplicationRole_, | ||
29 | Name, | ||
30 | Value, | ||
31 | } | ||
32 | |||
33 | public class ComPlusApplicationRolePropertyTuple : IntermediateTuple | ||
34 | { | ||
35 | public ComPlusApplicationRolePropertyTuple() : base(ComPlusTupleDefinitions.ComPlusApplicationRoleProperty, null, null) | ||
36 | { | ||
37 | } | ||
38 | |||
39 | public ComPlusApplicationRolePropertyTuple(SourceLineNumber sourceLineNumber, Identifier id = null) : base(ComPlusTupleDefinitions.ComPlusApplicationRoleProperty, sourceLineNumber, id) | ||
40 | { | ||
41 | } | ||
42 | |||
43 | public IntermediateField this[ComPlusApplicationRolePropertyTupleFields index] => this.Fields[(int)index]; | ||
44 | |||
45 | public string ApplicationRole_ | ||
46 | { | ||
47 | get => this.Fields[(int)ComPlusApplicationRolePropertyTupleFields.ApplicationRole_].AsString(); | ||
48 | set => this.Set((int)ComPlusApplicationRolePropertyTupleFields.ApplicationRole_, value); | ||
49 | } | ||
50 | |||
51 | public string Name | ||
52 | { | ||
53 | get => this.Fields[(int)ComPlusApplicationRolePropertyTupleFields.Name].AsString(); | ||
54 | set => this.Set((int)ComPlusApplicationRolePropertyTupleFields.Name, value); | ||
55 | } | ||
56 | |||
57 | public string Value | ||
58 | { | ||
59 | get => this.Fields[(int)ComPlusApplicationRolePropertyTupleFields.Value].AsString(); | ||
60 | set => this.Set((int)ComPlusApplicationRolePropertyTupleFields.Value, value); | ||
61 | } | ||
62 | } | ||
63 | } \ No newline at end of file | ||
diff --git a/src/wixext/Tuples/ComPlusApplicationRoleTuple.cs b/src/wixext/Tuples/ComPlusApplicationRoleTuple.cs new file mode 100644 index 00000000..5a0cf378 --- /dev/null +++ b/src/wixext/Tuples/ComPlusApplicationRoleTuple.cs | |||
@@ -0,0 +1,71 @@ | |||
1 | // 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. | ||
2 | |||
3 | namespace WixToolset.ComPlus | ||
4 | { | ||
5 | using WixToolset.Data; | ||
6 | using WixToolset.ComPlus.Tuples; | ||
7 | |||
8 | public static partial class ComPlusTupleDefinitions | ||
9 | { | ||
10 | public static readonly IntermediateTupleDefinition ComPlusApplicationRole = new IntermediateTupleDefinition( | ||
11 | ComPlusTupleDefinitionType.ComPlusApplicationRole.ToString(), | ||
12 | new[] | ||
13 | { | ||
14 | new IntermediateFieldDefinition(nameof(ComPlusApplicationRoleTupleFields.ApplicationRole), IntermediateFieldType.String), | ||
15 | new IntermediateFieldDefinition(nameof(ComPlusApplicationRoleTupleFields.Application_), IntermediateFieldType.String), | ||
16 | new IntermediateFieldDefinition(nameof(ComPlusApplicationRoleTupleFields.Component_), IntermediateFieldType.String), | ||
17 | new IntermediateFieldDefinition(nameof(ComPlusApplicationRoleTupleFields.Name), IntermediateFieldType.String), | ||
18 | }, | ||
19 | typeof(ComPlusApplicationRoleTuple)); | ||
20 | } | ||
21 | } | ||
22 | |||
23 | namespace WixToolset.ComPlus.Tuples | ||
24 | { | ||
25 | using WixToolset.Data; | ||
26 | |||
27 | public enum ComPlusApplicationRoleTupleFields | ||
28 | { | ||
29 | ApplicationRole, | ||
30 | Application_, | ||
31 | Component_, | ||
32 | Name, | ||
33 | } | ||
34 | |||
35 | public class ComPlusApplicationRoleTuple : IntermediateTuple | ||
36 | { | ||
37 | public ComPlusApplicationRoleTuple() : base(ComPlusTupleDefinitions.ComPlusApplicationRole, null, null) | ||
38 | { | ||
39 | } | ||
40 | |||
41 | public ComPlusApplicationRoleTuple(SourceLineNumber sourceLineNumber, Identifier id = null) : base(ComPlusTupleDefinitions.ComPlusApplicationRole, sourceLineNumber, id) | ||
42 | { | ||
43 | } | ||
44 | |||
45 | public IntermediateField this[ComPlusApplicationRoleTupleFields index] => this.Fields[(int)index]; | ||
46 | |||
47 | public string ApplicationRole | ||
48 | { | ||
49 | get => this.Fields[(int)ComPlusApplicationRoleTupleFields.ApplicationRole].AsString(); | ||
50 | set => this.Set((int)ComPlusApplicationRoleTupleFields.ApplicationRole, value); | ||
51 | } | ||
52 | |||
53 | public string Application_ | ||
54 | { | ||
55 | get => this.Fields[(int)ComPlusApplicationRoleTupleFields.Application_].AsString(); | ||
56 | set => this.Set((int)ComPlusApplicationRoleTupleFields.Application_, value); | ||
57 | } | ||
58 | |||
59 | public string Component_ | ||
60 | { | ||
61 | get => this.Fields[(int)ComPlusApplicationRoleTupleFields.Component_].AsString(); | ||
62 | set => this.Set((int)ComPlusApplicationRoleTupleFields.Component_, value); | ||
63 | } | ||
64 | |||
65 | public string Name | ||
66 | { | ||
67 | get => this.Fields[(int)ComPlusApplicationRoleTupleFields.Name].AsString(); | ||
68 | set => this.Set((int)ComPlusApplicationRoleTupleFields.Name, value); | ||
69 | } | ||
70 | } | ||
71 | } \ No newline at end of file | ||
diff --git a/src/wixext/Tuples/ComPlusApplicationTuple.cs b/src/wixext/Tuples/ComPlusApplicationTuple.cs new file mode 100644 index 00000000..7fd5fbd4 --- /dev/null +++ b/src/wixext/Tuples/ComPlusApplicationTuple.cs | |||
@@ -0,0 +1,79 @@ | |||
1 | // 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. | ||
2 | |||
3 | namespace WixToolset.ComPlus | ||
4 | { | ||
5 | using WixToolset.Data; | ||
6 | using WixToolset.ComPlus.Tuples; | ||
7 | |||
8 | public static partial class ComPlusTupleDefinitions | ||
9 | { | ||
10 | public static readonly IntermediateTupleDefinition ComPlusApplication = new IntermediateTupleDefinition( | ||
11 | ComPlusTupleDefinitionType.ComPlusApplication.ToString(), | ||
12 | new[] | ||
13 | { | ||
14 | new IntermediateFieldDefinition(nameof(ComPlusApplicationTupleFields.Application), IntermediateFieldType.String), | ||
15 | new IntermediateFieldDefinition(nameof(ComPlusApplicationTupleFields.Partition_), IntermediateFieldType.String), | ||
16 | new IntermediateFieldDefinition(nameof(ComPlusApplicationTupleFields.Component_), IntermediateFieldType.String), | ||
17 | new IntermediateFieldDefinition(nameof(ComPlusApplicationTupleFields.CustomId), IntermediateFieldType.String), | ||
18 | new IntermediateFieldDefinition(nameof(ComPlusApplicationTupleFields.Name), IntermediateFieldType.String), | ||
19 | }, | ||
20 | typeof(ComPlusApplicationTuple)); | ||
21 | } | ||
22 | } | ||
23 | |||
24 | namespace WixToolset.ComPlus.Tuples | ||
25 | { | ||
26 | using WixToolset.Data; | ||
27 | |||
28 | public enum ComPlusApplicationTupleFields | ||
29 | { | ||
30 | Application, | ||
31 | Partition_, | ||
32 | Component_, | ||
33 | CustomId, | ||
34 | Name, | ||
35 | } | ||
36 | |||
37 | public class ComPlusApplicationTuple : IntermediateTuple | ||
38 | { | ||
39 | public ComPlusApplicationTuple() : base(ComPlusTupleDefinitions.ComPlusApplication, null, null) | ||
40 | { | ||
41 | } | ||
42 | |||
43 | public ComPlusApplicationTuple(SourceLineNumber sourceLineNumber, Identifier id = null) : base(ComPlusTupleDefinitions.ComPlusApplication, sourceLineNumber, id) | ||
44 | { | ||
45 | } | ||
46 | |||
47 | public IntermediateField this[ComPlusApplicationTupleFields index] => this.Fields[(int)index]; | ||
48 | |||
49 | public string Application | ||
50 | { | ||
51 | get => this.Fields[(int)ComPlusApplicationTupleFields.Application].AsString(); | ||
52 | set => this.Set((int)ComPlusApplicationTupleFields.Application, value); | ||
53 | } | ||
54 | |||
55 | public string Partition_ | ||
56 | { | ||
57 | get => this.Fields[(int)ComPlusApplicationTupleFields.Partition_].AsString(); | ||
58 | set => this.Set((int)ComPlusApplicationTupleFields.Partition_, value); | ||
59 | } | ||
60 | |||
61 | public string Component_ | ||
62 | { | ||
63 | get => this.Fields[(int)ComPlusApplicationTupleFields.Component_].AsString(); | ||
64 | set => this.Set((int)ComPlusApplicationTupleFields.Component_, value); | ||
65 | } | ||
66 | |||
67 | public string CustomId | ||
68 | { | ||
69 | get => this.Fields[(int)ComPlusApplicationTupleFields.CustomId].AsString(); | ||
70 | set => this.Set((int)ComPlusApplicationTupleFields.CustomId, value); | ||
71 | } | ||
72 | |||
73 | public string Name | ||
74 | { | ||
75 | get => this.Fields[(int)ComPlusApplicationTupleFields.Name].AsString(); | ||
76 | set => this.Set((int)ComPlusApplicationTupleFields.Name, value); | ||
77 | } | ||
78 | } | ||
79 | } \ No newline at end of file | ||
diff --git a/src/wixext/Tuples/ComPlusAssemblyDependencyTuple.cs b/src/wixext/Tuples/ComPlusAssemblyDependencyTuple.cs new file mode 100644 index 00000000..be0bc073 --- /dev/null +++ b/src/wixext/Tuples/ComPlusAssemblyDependencyTuple.cs | |||
@@ -0,0 +1,55 @@ | |||
1 | // 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. | ||
2 | |||
3 | namespace WixToolset.ComPlus | ||
4 | { | ||
5 | using WixToolset.Data; | ||
6 | using WixToolset.ComPlus.Tuples; | ||
7 | |||
8 | public static partial class ComPlusTupleDefinitions | ||
9 | { | ||
10 | public static readonly IntermediateTupleDefinition ComPlusAssemblyDependency = new IntermediateTupleDefinition( | ||
11 | ComPlusTupleDefinitionType.ComPlusAssemblyDependency.ToString(), | ||
12 | new[] | ||
13 | { | ||
14 | new IntermediateFieldDefinition(nameof(ComPlusAssemblyDependencyTupleFields.Assembly_), IntermediateFieldType.String), | ||
15 | new IntermediateFieldDefinition(nameof(ComPlusAssemblyDependencyTupleFields.RequiredAssembly_), IntermediateFieldType.String), | ||
16 | }, | ||
17 | typeof(ComPlusAssemblyDependencyTuple)); | ||
18 | } | ||
19 | } | ||
20 | |||
21 | namespace WixToolset.ComPlus.Tuples | ||
22 | { | ||
23 | using WixToolset.Data; | ||
24 | |||
25 | public enum ComPlusAssemblyDependencyTupleFields | ||
26 | { | ||
27 | Assembly_, | ||
28 | RequiredAssembly_, | ||
29 | } | ||
30 | |||
31 | public class ComPlusAssemblyDependencyTuple : IntermediateTuple | ||
32 | { | ||
33 | public ComPlusAssemblyDependencyTuple() : base(ComPlusTupleDefinitions.ComPlusAssemblyDependency, null, null) | ||
34 | { | ||
35 | } | ||
36 | |||
37 | public ComPlusAssemblyDependencyTuple(SourceLineNumber sourceLineNumber, Identifier id = null) : base(ComPlusTupleDefinitions.ComPlusAssemblyDependency, sourceLineNumber, id) | ||
38 | { | ||
39 | } | ||
40 | |||
41 | public IntermediateField this[ComPlusAssemblyDependencyTupleFields index] => this.Fields[(int)index]; | ||
42 | |||
43 | public string Assembly_ | ||
44 | { | ||
45 | get => this.Fields[(int)ComPlusAssemblyDependencyTupleFields.Assembly_].AsString(); | ||
46 | set => this.Set((int)ComPlusAssemblyDependencyTupleFields.Assembly_, value); | ||
47 | } | ||
48 | |||
49 | public string RequiredAssembly_ | ||
50 | { | ||
51 | get => this.Fields[(int)ComPlusAssemblyDependencyTupleFields.RequiredAssembly_].AsString(); | ||
52 | set => this.Set((int)ComPlusAssemblyDependencyTupleFields.RequiredAssembly_, value); | ||
53 | } | ||
54 | } | ||
55 | } \ No newline at end of file | ||
diff --git a/src/wixext/Tuples/ComPlusAssemblyTuple.cs b/src/wixext/Tuples/ComPlusAssemblyTuple.cs new file mode 100644 index 00000000..0330b4e8 --- /dev/null +++ b/src/wixext/Tuples/ComPlusAssemblyTuple.cs | |||
@@ -0,0 +1,103 @@ | |||
1 | // 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. | ||
2 | |||
3 | namespace WixToolset.ComPlus | ||
4 | { | ||
5 | using WixToolset.Data; | ||
6 | using WixToolset.ComPlus.Tuples; | ||
7 | |||
8 | public static partial class ComPlusTupleDefinitions | ||
9 | { | ||
10 | public static readonly IntermediateTupleDefinition ComPlusAssembly = new IntermediateTupleDefinition( | ||
11 | ComPlusTupleDefinitionType.ComPlusAssembly.ToString(), | ||
12 | new[] | ||
13 | { | ||
14 | new IntermediateFieldDefinition(nameof(ComPlusAssemblyTupleFields.Assembly), IntermediateFieldType.String), | ||
15 | new IntermediateFieldDefinition(nameof(ComPlusAssemblyTupleFields.Application_), IntermediateFieldType.String), | ||
16 | new IntermediateFieldDefinition(nameof(ComPlusAssemblyTupleFields.Component_), IntermediateFieldType.String), | ||
17 | new IntermediateFieldDefinition(nameof(ComPlusAssemblyTupleFields.AssemblyName), IntermediateFieldType.String), | ||
18 | new IntermediateFieldDefinition(nameof(ComPlusAssemblyTupleFields.DllPath), IntermediateFieldType.String), | ||
19 | new IntermediateFieldDefinition(nameof(ComPlusAssemblyTupleFields.TlbPath), IntermediateFieldType.String), | ||
20 | new IntermediateFieldDefinition(nameof(ComPlusAssemblyTupleFields.PSDllPath), IntermediateFieldType.String), | ||
21 | new IntermediateFieldDefinition(nameof(ComPlusAssemblyTupleFields.Attributes), IntermediateFieldType.Number), | ||
22 | }, | ||
23 | typeof(ComPlusAssemblyTuple)); | ||
24 | } | ||
25 | } | ||
26 | |||
27 | namespace WixToolset.ComPlus.Tuples | ||
28 | { | ||
29 | using WixToolset.Data; | ||
30 | |||
31 | public enum ComPlusAssemblyTupleFields | ||
32 | { | ||
33 | Assembly, | ||
34 | Application_, | ||
35 | Component_, | ||
36 | AssemblyName, | ||
37 | DllPath, | ||
38 | TlbPath, | ||
39 | PSDllPath, | ||
40 | Attributes, | ||
41 | } | ||
42 | |||
43 | public class ComPlusAssemblyTuple : IntermediateTuple | ||
44 | { | ||
45 | public ComPlusAssemblyTuple() : base(ComPlusTupleDefinitions.ComPlusAssembly, null, null) | ||
46 | { | ||
47 | } | ||
48 | |||
49 | public ComPlusAssemblyTuple(SourceLineNumber sourceLineNumber, Identifier id = null) : base(ComPlusTupleDefinitions.ComPlusAssembly, sourceLineNumber, id) | ||
50 | { | ||
51 | } | ||
52 | |||
53 | public IntermediateField this[ComPlusAssemblyTupleFields index] => this.Fields[(int)index]; | ||
54 | |||
55 | public string Assembly | ||
56 | { | ||
57 | get => this.Fields[(int)ComPlusAssemblyTupleFields.Assembly].AsString(); | ||
58 | set => this.Set((int)ComPlusAssemblyTupleFields.Assembly, value); | ||
59 | } | ||
60 | |||
61 | public string Application_ | ||
62 | { | ||
63 | get => this.Fields[(int)ComPlusAssemblyTupleFields.Application_].AsString(); | ||
64 | set => this.Set((int)ComPlusAssemblyTupleFields.Application_, value); | ||
65 | } | ||
66 | |||
67 | public string Component_ | ||
68 | { | ||
69 | get => this.Fields[(int)ComPlusAssemblyTupleFields.Component_].AsString(); | ||
70 | set => this.Set((int)ComPlusAssemblyTupleFields.Component_, value); | ||
71 | } | ||
72 | |||
73 | public string AssemblyName | ||
74 | { | ||
75 | get => this.Fields[(int)ComPlusAssemblyTupleFields.AssemblyName].AsString(); | ||
76 | set => this.Set((int)ComPlusAssemblyTupleFields.AssemblyName, value); | ||
77 | } | ||
78 | |||
79 | public string DllPath | ||
80 | { | ||
81 | get => this.Fields[(int)ComPlusAssemblyTupleFields.DllPath].AsString(); | ||
82 | set => this.Set((int)ComPlusAssemblyTupleFields.DllPath, value); | ||
83 | } | ||
84 | |||
85 | public string TlbPath | ||
86 | { | ||
87 | get => this.Fields[(int)ComPlusAssemblyTupleFields.TlbPath].AsString(); | ||
88 | set => this.Set((int)ComPlusAssemblyTupleFields.TlbPath, value); | ||
89 | } | ||
90 | |||
91 | public string PSDllPath | ||
92 | { | ||
93 | get => this.Fields[(int)ComPlusAssemblyTupleFields.PSDllPath].AsString(); | ||
94 | set => this.Set((int)ComPlusAssemblyTupleFields.PSDllPath, value); | ||
95 | } | ||
96 | |||
97 | public int Attributes | ||
98 | { | ||
99 | get => this.Fields[(int)ComPlusAssemblyTupleFields.Attributes].AsNumber(); | ||
100 | set => this.Set((int)ComPlusAssemblyTupleFields.Attributes, value); | ||
101 | } | ||
102 | } | ||
103 | } \ No newline at end of file | ||
diff --git a/src/wixext/Tuples/ComPlusComponentPropertyTuple.cs b/src/wixext/Tuples/ComPlusComponentPropertyTuple.cs new file mode 100644 index 00000000..81651343 --- /dev/null +++ b/src/wixext/Tuples/ComPlusComponentPropertyTuple.cs | |||
@@ -0,0 +1,63 @@ | |||
1 | // 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. | ||
2 | |||
3 | namespace WixToolset.ComPlus | ||
4 | { | ||
5 | using WixToolset.Data; | ||
6 | using WixToolset.ComPlus.Tuples; | ||
7 | |||
8 | public static partial class ComPlusTupleDefinitions | ||
9 | { | ||
10 | public static readonly IntermediateTupleDefinition ComPlusComponentProperty = new IntermediateTupleDefinition( | ||
11 | ComPlusTupleDefinitionType.ComPlusComponentProperty.ToString(), | ||
12 | new[] | ||
13 | { | ||
14 | new IntermediateFieldDefinition(nameof(ComPlusComponentPropertyTupleFields.ComPlusComponent_), IntermediateFieldType.String), | ||
15 | new IntermediateFieldDefinition(nameof(ComPlusComponentPropertyTupleFields.Name), IntermediateFieldType.String), | ||
16 | new IntermediateFieldDefinition(nameof(ComPlusComponentPropertyTupleFields.Value), IntermediateFieldType.String), | ||
17 | }, | ||
18 | typeof(ComPlusComponentPropertyTuple)); | ||
19 | } | ||
20 | } | ||
21 | |||
22 | namespace WixToolset.ComPlus.Tuples | ||
23 | { | ||
24 | using WixToolset.Data; | ||
25 | |||
26 | public enum ComPlusComponentPropertyTupleFields | ||
27 | { | ||
28 | ComPlusComponent_, | ||
29 | Name, | ||
30 | Value, | ||
31 | } | ||
32 | |||
33 | public class ComPlusComponentPropertyTuple : IntermediateTuple | ||
34 | { | ||
35 | public ComPlusComponentPropertyTuple() : base(ComPlusTupleDefinitions.ComPlusComponentProperty, null, null) | ||
36 | { | ||
37 | } | ||
38 | |||
39 | public ComPlusComponentPropertyTuple(SourceLineNumber sourceLineNumber, Identifier id = null) : base(ComPlusTupleDefinitions.ComPlusComponentProperty, sourceLineNumber, id) | ||
40 | { | ||
41 | } | ||
42 | |||
43 | public IntermediateField this[ComPlusComponentPropertyTupleFields index] => this.Fields[(int)index]; | ||
44 | |||
45 | public string ComPlusComponent_ | ||
46 | { | ||
47 | get => this.Fields[(int)ComPlusComponentPropertyTupleFields.ComPlusComponent_].AsString(); | ||
48 | set => this.Set((int)ComPlusComponentPropertyTupleFields.ComPlusComponent_, value); | ||
49 | } | ||
50 | |||
51 | public string Name | ||
52 | { | ||
53 | get => this.Fields[(int)ComPlusComponentPropertyTupleFields.Name].AsString(); | ||
54 | set => this.Set((int)ComPlusComponentPropertyTupleFields.Name, value); | ||
55 | } | ||
56 | |||
57 | public string Value | ||
58 | { | ||
59 | get => this.Fields[(int)ComPlusComponentPropertyTupleFields.Value].AsString(); | ||
60 | set => this.Set((int)ComPlusComponentPropertyTupleFields.Value, value); | ||
61 | } | ||
62 | } | ||
63 | } \ No newline at end of file | ||
diff --git a/src/wixext/Tuples/ComPlusComponentTuple.cs b/src/wixext/Tuples/ComPlusComponentTuple.cs new file mode 100644 index 00000000..923ff6e3 --- /dev/null +++ b/src/wixext/Tuples/ComPlusComponentTuple.cs | |||
@@ -0,0 +1,63 @@ | |||
1 | // 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. | ||
2 | |||
3 | namespace WixToolset.ComPlus | ||
4 | { | ||
5 | using WixToolset.Data; | ||
6 | using WixToolset.ComPlus.Tuples; | ||
7 | |||
8 | public static partial class ComPlusTupleDefinitions | ||
9 | { | ||
10 | public static readonly IntermediateTupleDefinition ComPlusComponent = new IntermediateTupleDefinition( | ||
11 | ComPlusTupleDefinitionType.ComPlusComponent.ToString(), | ||
12 | new[] | ||
13 | { | ||
14 | new IntermediateFieldDefinition(nameof(ComPlusComponentTupleFields.ComPlusComponent), IntermediateFieldType.String), | ||
15 | new IntermediateFieldDefinition(nameof(ComPlusComponentTupleFields.Assembly_), IntermediateFieldType.String), | ||
16 | new IntermediateFieldDefinition(nameof(ComPlusComponentTupleFields.CLSID), IntermediateFieldType.String), | ||
17 | }, | ||
18 | typeof(ComPlusComponentTuple)); | ||
19 | } | ||
20 | } | ||
21 | |||
22 | namespace WixToolset.ComPlus.Tuples | ||
23 | { | ||
24 | using WixToolset.Data; | ||
25 | |||
26 | public enum ComPlusComponentTupleFields | ||
27 | { | ||
28 | ComPlusComponent, | ||
29 | Assembly_, | ||
30 | CLSID, | ||
31 | } | ||
32 | |||
33 | public class ComPlusComponentTuple : IntermediateTuple | ||
34 | { | ||
35 | public ComPlusComponentTuple() : base(ComPlusTupleDefinitions.ComPlusComponent, null, null) | ||
36 | { | ||
37 | } | ||
38 | |||
39 | public ComPlusComponentTuple(SourceLineNumber sourceLineNumber, Identifier id = null) : base(ComPlusTupleDefinitions.ComPlusComponent, sourceLineNumber, id) | ||
40 | { | ||
41 | } | ||
42 | |||
43 | public IntermediateField this[ComPlusComponentTupleFields index] => this.Fields[(int)index]; | ||
44 | |||
45 | public string ComPlusComponent | ||
46 | { | ||
47 | get => this.Fields[(int)ComPlusComponentTupleFields.ComPlusComponent].AsString(); | ||
48 | set => this.Set((int)ComPlusComponentTupleFields.ComPlusComponent, value); | ||
49 | } | ||
50 | |||
51 | public string Assembly_ | ||
52 | { | ||
53 | get => this.Fields[(int)ComPlusComponentTupleFields.Assembly_].AsString(); | ||
54 | set => this.Set((int)ComPlusComponentTupleFields.Assembly_, value); | ||
55 | } | ||
56 | |||
57 | public string CLSID | ||
58 | { | ||
59 | get => this.Fields[(int)ComPlusComponentTupleFields.CLSID].AsString(); | ||
60 | set => this.Set((int)ComPlusComponentTupleFields.CLSID, value); | ||
61 | } | ||
62 | } | ||
63 | } \ No newline at end of file | ||
diff --git a/src/wixext/Tuples/ComPlusGroupInApplicationRoleTuple.cs b/src/wixext/Tuples/ComPlusGroupInApplicationRoleTuple.cs new file mode 100644 index 00000000..40b47eb3 --- /dev/null +++ b/src/wixext/Tuples/ComPlusGroupInApplicationRoleTuple.cs | |||
@@ -0,0 +1,71 @@ | |||
1 | // 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. | ||
2 | |||
3 | namespace WixToolset.ComPlus | ||
4 | { | ||
5 | using WixToolset.Data; | ||
6 | using WixToolset.ComPlus.Tuples; | ||
7 | |||
8 | public static partial class ComPlusTupleDefinitions | ||
9 | { | ||
10 | public static readonly IntermediateTupleDefinition ComPlusGroupInApplicationRole = new IntermediateTupleDefinition( | ||
11 | ComPlusTupleDefinitionType.ComPlusGroupInApplicationRole.ToString(), | ||
12 | new[] | ||
13 | { | ||
14 | new IntermediateFieldDefinition(nameof(ComPlusGroupInApplicationRoleTupleFields.GroupInApplicationRole), IntermediateFieldType.String), | ||
15 | new IntermediateFieldDefinition(nameof(ComPlusGroupInApplicationRoleTupleFields.ApplicationRole_), IntermediateFieldType.String), | ||
16 | new IntermediateFieldDefinition(nameof(ComPlusGroupInApplicationRoleTupleFields.Component_), IntermediateFieldType.String), | ||
17 | new IntermediateFieldDefinition(nameof(ComPlusGroupInApplicationRoleTupleFields.Group_), IntermediateFieldType.String), | ||
18 | }, | ||
19 | typeof(ComPlusGroupInApplicationRoleTuple)); | ||
20 | } | ||
21 | } | ||
22 | |||
23 | namespace WixToolset.ComPlus.Tuples | ||
24 | { | ||
25 | using WixToolset.Data; | ||
26 | |||
27 | public enum ComPlusGroupInApplicationRoleTupleFields | ||
28 | { | ||
29 | GroupInApplicationRole, | ||
30 | ApplicationRole_, | ||
31 | Component_, | ||
32 | Group_, | ||
33 | } | ||
34 | |||
35 | public class ComPlusGroupInApplicationRoleTuple : IntermediateTuple | ||
36 | { | ||
37 | public ComPlusGroupInApplicationRoleTuple() : base(ComPlusTupleDefinitions.ComPlusGroupInApplicationRole, null, null) | ||
38 | { | ||
39 | } | ||
40 | |||
41 | public ComPlusGroupInApplicationRoleTuple(SourceLineNumber sourceLineNumber, Identifier id = null) : base(ComPlusTupleDefinitions.ComPlusGroupInApplicationRole, sourceLineNumber, id) | ||
42 | { | ||
43 | } | ||
44 | |||
45 | public IntermediateField this[ComPlusGroupInApplicationRoleTupleFields index] => this.Fields[(int)index]; | ||
46 | |||
47 | public string GroupInApplicationRole | ||
48 | { | ||
49 | get => this.Fields[(int)ComPlusGroupInApplicationRoleTupleFields.GroupInApplicationRole].AsString(); | ||
50 | set => this.Set((int)ComPlusGroupInApplicationRoleTupleFields.GroupInApplicationRole, value); | ||
51 | } | ||
52 | |||
53 | public string ApplicationRole_ | ||
54 | { | ||
55 | get => this.Fields[(int)ComPlusGroupInApplicationRoleTupleFields.ApplicationRole_].AsString(); | ||
56 | set => this.Set((int)ComPlusGroupInApplicationRoleTupleFields.ApplicationRole_, value); | ||
57 | } | ||
58 | |||
59 | public string Component_ | ||
60 | { | ||
61 | get => this.Fields[(int)ComPlusGroupInApplicationRoleTupleFields.Component_].AsString(); | ||
62 | set => this.Set((int)ComPlusGroupInApplicationRoleTupleFields.Component_, value); | ||
63 | } | ||
64 | |||
65 | public string Group_ | ||
66 | { | ||
67 | get => this.Fields[(int)ComPlusGroupInApplicationRoleTupleFields.Group_].AsString(); | ||
68 | set => this.Set((int)ComPlusGroupInApplicationRoleTupleFields.Group_, value); | ||
69 | } | ||
70 | } | ||
71 | } \ No newline at end of file | ||
diff --git a/src/wixext/Tuples/ComPlusGroupInPartitionRoleTuple.cs b/src/wixext/Tuples/ComPlusGroupInPartitionRoleTuple.cs new file mode 100644 index 00000000..092937f0 --- /dev/null +++ b/src/wixext/Tuples/ComPlusGroupInPartitionRoleTuple.cs | |||
@@ -0,0 +1,71 @@ | |||
1 | // 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. | ||
2 | |||
3 | namespace WixToolset.ComPlus | ||
4 | { | ||
5 | using WixToolset.Data; | ||
6 | using WixToolset.ComPlus.Tuples; | ||
7 | |||
8 | public static partial class ComPlusTupleDefinitions | ||
9 | { | ||
10 | public static readonly IntermediateTupleDefinition ComPlusGroupInPartitionRole = new IntermediateTupleDefinition( | ||
11 | ComPlusTupleDefinitionType.ComPlusGroupInPartitionRole.ToString(), | ||
12 | new[] | ||
13 | { | ||
14 | new IntermediateFieldDefinition(nameof(ComPlusGroupInPartitionRoleTupleFields.GroupInPartitionRole), IntermediateFieldType.String), | ||
15 | new IntermediateFieldDefinition(nameof(ComPlusGroupInPartitionRoleTupleFields.PartitionRole_), IntermediateFieldType.String), | ||
16 | new IntermediateFieldDefinition(nameof(ComPlusGroupInPartitionRoleTupleFields.Component_), IntermediateFieldType.String), | ||
17 | new IntermediateFieldDefinition(nameof(ComPlusGroupInPartitionRoleTupleFields.Group_), IntermediateFieldType.String), | ||
18 | }, | ||
19 | typeof(ComPlusGroupInPartitionRoleTuple)); | ||
20 | } | ||
21 | } | ||
22 | |||
23 | namespace WixToolset.ComPlus.Tuples | ||
24 | { | ||
25 | using WixToolset.Data; | ||
26 | |||
27 | public enum ComPlusGroupInPartitionRoleTupleFields | ||
28 | { | ||
29 | GroupInPartitionRole, | ||
30 | PartitionRole_, | ||
31 | Component_, | ||
32 | Group_, | ||
33 | } | ||
34 | |||
35 | public class ComPlusGroupInPartitionRoleTuple : IntermediateTuple | ||
36 | { | ||
37 | public ComPlusGroupInPartitionRoleTuple() : base(ComPlusTupleDefinitions.ComPlusGroupInPartitionRole, null, null) | ||
38 | { | ||
39 | } | ||
40 | |||
41 | public ComPlusGroupInPartitionRoleTuple(SourceLineNumber sourceLineNumber, Identifier id = null) : base(ComPlusTupleDefinitions.ComPlusGroupInPartitionRole, sourceLineNumber, id) | ||
42 | { | ||
43 | } | ||
44 | |||
45 | public IntermediateField this[ComPlusGroupInPartitionRoleTupleFields index] => this.Fields[(int)index]; | ||
46 | |||
47 | public string GroupInPartitionRole | ||
48 | { | ||
49 | get => this.Fields[(int)ComPlusGroupInPartitionRoleTupleFields.GroupInPartitionRole].AsString(); | ||
50 | set => this.Set((int)ComPlusGroupInPartitionRoleTupleFields.GroupInPartitionRole, value); | ||
51 | } | ||
52 | |||
53 | public string PartitionRole_ | ||
54 | { | ||
55 | get => this.Fields[(int)ComPlusGroupInPartitionRoleTupleFields.PartitionRole_].AsString(); | ||
56 | set => this.Set((int)ComPlusGroupInPartitionRoleTupleFields.PartitionRole_, value); | ||
57 | } | ||
58 | |||
59 | public string Component_ | ||
60 | { | ||
61 | get => this.Fields[(int)ComPlusGroupInPartitionRoleTupleFields.Component_].AsString(); | ||
62 | set => this.Set((int)ComPlusGroupInPartitionRoleTupleFields.Component_, value); | ||
63 | } | ||
64 | |||
65 | public string Group_ | ||
66 | { | ||
67 | get => this.Fields[(int)ComPlusGroupInPartitionRoleTupleFields.Group_].AsString(); | ||
68 | set => this.Set((int)ComPlusGroupInPartitionRoleTupleFields.Group_, value); | ||
69 | } | ||
70 | } | ||
71 | } \ No newline at end of file | ||
diff --git a/src/wixext/Tuples/ComPlusInterfacePropertyTuple.cs b/src/wixext/Tuples/ComPlusInterfacePropertyTuple.cs new file mode 100644 index 00000000..94f12914 --- /dev/null +++ b/src/wixext/Tuples/ComPlusInterfacePropertyTuple.cs | |||
@@ -0,0 +1,63 @@ | |||
1 | // 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. | ||
2 | |||
3 | namespace WixToolset.ComPlus | ||
4 | { | ||
5 | using WixToolset.Data; | ||
6 | using WixToolset.ComPlus.Tuples; | ||
7 | |||
8 | public static partial class ComPlusTupleDefinitions | ||
9 | { | ||
10 | public static readonly IntermediateTupleDefinition ComPlusInterfaceProperty = new IntermediateTupleDefinition( | ||
11 | ComPlusTupleDefinitionType.ComPlusInterfaceProperty.ToString(), | ||
12 | new[] | ||
13 | { | ||
14 | new IntermediateFieldDefinition(nameof(ComPlusInterfacePropertyTupleFields.Interface_), IntermediateFieldType.String), | ||
15 | new IntermediateFieldDefinition(nameof(ComPlusInterfacePropertyTupleFields.Name), IntermediateFieldType.String), | ||
16 | new IntermediateFieldDefinition(nameof(ComPlusInterfacePropertyTupleFields.Value), IntermediateFieldType.String), | ||
17 | }, | ||
18 | typeof(ComPlusInterfacePropertyTuple)); | ||
19 | } | ||
20 | } | ||
21 | |||
22 | namespace WixToolset.ComPlus.Tuples | ||
23 | { | ||
24 | using WixToolset.Data; | ||
25 | |||
26 | public enum ComPlusInterfacePropertyTupleFields | ||
27 | { | ||
28 | Interface_, | ||
29 | Name, | ||
30 | Value, | ||
31 | } | ||
32 | |||
33 | public class ComPlusInterfacePropertyTuple : IntermediateTuple | ||
34 | { | ||
35 | public ComPlusInterfacePropertyTuple() : base(ComPlusTupleDefinitions.ComPlusInterfaceProperty, null, null) | ||
36 | { | ||
37 | } | ||
38 | |||
39 | public ComPlusInterfacePropertyTuple(SourceLineNumber sourceLineNumber, Identifier id = null) : base(ComPlusTupleDefinitions.ComPlusInterfaceProperty, sourceLineNumber, id) | ||
40 | { | ||
41 | } | ||
42 | |||
43 | public IntermediateField this[ComPlusInterfacePropertyTupleFields index] => this.Fields[(int)index]; | ||
44 | |||
45 | public string Interface_ | ||
46 | { | ||
47 | get => this.Fields[(int)ComPlusInterfacePropertyTupleFields.Interface_].AsString(); | ||
48 | set => this.Set((int)ComPlusInterfacePropertyTupleFields.Interface_, value); | ||
49 | } | ||
50 | |||
51 | public string Name | ||
52 | { | ||
53 | get => this.Fields[(int)ComPlusInterfacePropertyTupleFields.Name].AsString(); | ||
54 | set => this.Set((int)ComPlusInterfacePropertyTupleFields.Name, value); | ||
55 | } | ||
56 | |||
57 | public string Value | ||
58 | { | ||
59 | get => this.Fields[(int)ComPlusInterfacePropertyTupleFields.Value].AsString(); | ||
60 | set => this.Set((int)ComPlusInterfacePropertyTupleFields.Value, value); | ||
61 | } | ||
62 | } | ||
63 | } \ No newline at end of file | ||
diff --git a/src/wixext/Tuples/ComPlusInterfaceTuple.cs b/src/wixext/Tuples/ComPlusInterfaceTuple.cs new file mode 100644 index 00000000..3c4042ef --- /dev/null +++ b/src/wixext/Tuples/ComPlusInterfaceTuple.cs | |||
@@ -0,0 +1,63 @@ | |||
1 | // 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. | ||
2 | |||
3 | namespace WixToolset.ComPlus | ||
4 | { | ||
5 | using WixToolset.Data; | ||
6 | using WixToolset.ComPlus.Tuples; | ||
7 | |||
8 | public static partial class ComPlusTupleDefinitions | ||
9 | { | ||
10 | public static readonly IntermediateTupleDefinition ComPlusInterface = new IntermediateTupleDefinition( | ||
11 | ComPlusTupleDefinitionType.ComPlusInterface.ToString(), | ||
12 | new[] | ||
13 | { | ||
14 | new IntermediateFieldDefinition(nameof(ComPlusInterfaceTupleFields.Interface), IntermediateFieldType.String), | ||
15 | new IntermediateFieldDefinition(nameof(ComPlusInterfaceTupleFields.ComPlusComponent_), IntermediateFieldType.String), | ||
16 | new IntermediateFieldDefinition(nameof(ComPlusInterfaceTupleFields.IID), IntermediateFieldType.String), | ||
17 | }, | ||
18 | typeof(ComPlusInterfaceTuple)); | ||
19 | } | ||
20 | } | ||
21 | |||
22 | namespace WixToolset.ComPlus.Tuples | ||
23 | { | ||
24 | using WixToolset.Data; | ||
25 | |||
26 | public enum ComPlusInterfaceTupleFields | ||
27 | { | ||
28 | Interface, | ||
29 | ComPlusComponent_, | ||
30 | IID, | ||
31 | } | ||
32 | |||
33 | public class ComPlusInterfaceTuple : IntermediateTuple | ||
34 | { | ||
35 | public ComPlusInterfaceTuple() : base(ComPlusTupleDefinitions.ComPlusInterface, null, null) | ||
36 | { | ||
37 | } | ||
38 | |||
39 | public ComPlusInterfaceTuple(SourceLineNumber sourceLineNumber, Identifier id = null) : base(ComPlusTupleDefinitions.ComPlusInterface, sourceLineNumber, id) | ||
40 | { | ||
41 | } | ||
42 | |||
43 | public IntermediateField this[ComPlusInterfaceTupleFields index] => this.Fields[(int)index]; | ||
44 | |||
45 | public string Interface | ||
46 | { | ||
47 | get => this.Fields[(int)ComPlusInterfaceTupleFields.Interface].AsString(); | ||
48 | set => this.Set((int)ComPlusInterfaceTupleFields.Interface, value); | ||
49 | } | ||
50 | |||
51 | public string ComPlusComponent_ | ||
52 | { | ||
53 | get => this.Fields[(int)ComPlusInterfaceTupleFields.ComPlusComponent_].AsString(); | ||
54 | set => this.Set((int)ComPlusInterfaceTupleFields.ComPlusComponent_, value); | ||
55 | } | ||
56 | |||
57 | public string IID | ||
58 | { | ||
59 | get => this.Fields[(int)ComPlusInterfaceTupleFields.IID].AsString(); | ||
60 | set => this.Set((int)ComPlusInterfaceTupleFields.IID, value); | ||
61 | } | ||
62 | } | ||
63 | } \ No newline at end of file | ||
diff --git a/src/wixext/Tuples/ComPlusMethodPropertyTuple.cs b/src/wixext/Tuples/ComPlusMethodPropertyTuple.cs new file mode 100644 index 00000000..8ebc3f6b --- /dev/null +++ b/src/wixext/Tuples/ComPlusMethodPropertyTuple.cs | |||
@@ -0,0 +1,63 @@ | |||
1 | // 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. | ||
2 | |||
3 | namespace WixToolset.ComPlus | ||
4 | { | ||
5 | using WixToolset.Data; | ||
6 | using WixToolset.ComPlus.Tuples; | ||
7 | |||
8 | public static partial class ComPlusTupleDefinitions | ||
9 | { | ||
10 | public static readonly IntermediateTupleDefinition ComPlusMethodProperty = new IntermediateTupleDefinition( | ||
11 | ComPlusTupleDefinitionType.ComPlusMethodProperty.ToString(), | ||
12 | new[] | ||
13 | { | ||
14 | new IntermediateFieldDefinition(nameof(ComPlusMethodPropertyTupleFields.Method_), IntermediateFieldType.String), | ||
15 | new IntermediateFieldDefinition(nameof(ComPlusMethodPropertyTupleFields.Name), IntermediateFieldType.String), | ||
16 | new IntermediateFieldDefinition(nameof(ComPlusMethodPropertyTupleFields.Value), IntermediateFieldType.String), | ||
17 | }, | ||
18 | typeof(ComPlusMethodPropertyTuple)); | ||
19 | } | ||
20 | } | ||
21 | |||
22 | namespace WixToolset.ComPlus.Tuples | ||
23 | { | ||
24 | using WixToolset.Data; | ||
25 | |||
26 | public enum ComPlusMethodPropertyTupleFields | ||
27 | { | ||
28 | Method_, | ||
29 | Name, | ||
30 | Value, | ||
31 | } | ||
32 | |||
33 | public class ComPlusMethodPropertyTuple : IntermediateTuple | ||
34 | { | ||
35 | public ComPlusMethodPropertyTuple() : base(ComPlusTupleDefinitions.ComPlusMethodProperty, null, null) | ||
36 | { | ||
37 | } | ||
38 | |||
39 | public ComPlusMethodPropertyTuple(SourceLineNumber sourceLineNumber, Identifier id = null) : base(ComPlusTupleDefinitions.ComPlusMethodProperty, sourceLineNumber, id) | ||
40 | { | ||
41 | } | ||
42 | |||
43 | public IntermediateField this[ComPlusMethodPropertyTupleFields index] => this.Fields[(int)index]; | ||
44 | |||
45 | public string Method_ | ||
46 | { | ||
47 | get => this.Fields[(int)ComPlusMethodPropertyTupleFields.Method_].AsString(); | ||
48 | set => this.Set((int)ComPlusMethodPropertyTupleFields.Method_, value); | ||
49 | } | ||
50 | |||
51 | public string Name | ||
52 | { | ||
53 | get => this.Fields[(int)ComPlusMethodPropertyTupleFields.Name].AsString(); | ||
54 | set => this.Set((int)ComPlusMethodPropertyTupleFields.Name, value); | ||
55 | } | ||
56 | |||
57 | public string Value | ||
58 | { | ||
59 | get => this.Fields[(int)ComPlusMethodPropertyTupleFields.Value].AsString(); | ||
60 | set => this.Set((int)ComPlusMethodPropertyTupleFields.Value, value); | ||
61 | } | ||
62 | } | ||
63 | } \ No newline at end of file | ||
diff --git a/src/wixext/Tuples/ComPlusMethodTuple.cs b/src/wixext/Tuples/ComPlusMethodTuple.cs new file mode 100644 index 00000000..bcca034a --- /dev/null +++ b/src/wixext/Tuples/ComPlusMethodTuple.cs | |||
@@ -0,0 +1,71 @@ | |||
1 | // 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. | ||
2 | |||
3 | namespace WixToolset.ComPlus | ||
4 | { | ||
5 | using WixToolset.Data; | ||
6 | using WixToolset.ComPlus.Tuples; | ||
7 | |||
8 | public static partial class ComPlusTupleDefinitions | ||
9 | { | ||
10 | public static readonly IntermediateTupleDefinition ComPlusMethod = new IntermediateTupleDefinition( | ||
11 | ComPlusTupleDefinitionType.ComPlusMethod.ToString(), | ||
12 | new[] | ||
13 | { | ||
14 | new IntermediateFieldDefinition(nameof(ComPlusMethodTupleFields.Method), IntermediateFieldType.String), | ||
15 | new IntermediateFieldDefinition(nameof(ComPlusMethodTupleFields.Interface_), IntermediateFieldType.String), | ||
16 | new IntermediateFieldDefinition(nameof(ComPlusMethodTupleFields.Index), IntermediateFieldType.Number), | ||
17 | new IntermediateFieldDefinition(nameof(ComPlusMethodTupleFields.Name), IntermediateFieldType.String), | ||
18 | }, | ||
19 | typeof(ComPlusMethodTuple)); | ||
20 | } | ||
21 | } | ||
22 | |||
23 | namespace WixToolset.ComPlus.Tuples | ||
24 | { | ||
25 | using WixToolset.Data; | ||
26 | |||
27 | public enum ComPlusMethodTupleFields | ||
28 | { | ||
29 | Method, | ||
30 | Interface_, | ||
31 | Index, | ||
32 | Name, | ||
33 | } | ||
34 | |||
35 | public class ComPlusMethodTuple : IntermediateTuple | ||
36 | { | ||
37 | public ComPlusMethodTuple() : base(ComPlusTupleDefinitions.ComPlusMethod, null, null) | ||
38 | { | ||
39 | } | ||
40 | |||
41 | public ComPlusMethodTuple(SourceLineNumber sourceLineNumber, Identifier id = null) : base(ComPlusTupleDefinitions.ComPlusMethod, sourceLineNumber, id) | ||
42 | { | ||
43 | } | ||
44 | |||
45 | public IntermediateField this[ComPlusMethodTupleFields index] => this.Fields[(int)index]; | ||
46 | |||
47 | public string Method | ||
48 | { | ||
49 | get => this.Fields[(int)ComPlusMethodTupleFields.Method].AsString(); | ||
50 | set => this.Set((int)ComPlusMethodTupleFields.Method, value); | ||
51 | } | ||
52 | |||
53 | public string Interface_ | ||
54 | { | ||
55 | get => this.Fields[(int)ComPlusMethodTupleFields.Interface_].AsString(); | ||
56 | set => this.Set((int)ComPlusMethodTupleFields.Interface_, value); | ||
57 | } | ||
58 | |||
59 | public int Index | ||
60 | { | ||
61 | get => this.Fields[(int)ComPlusMethodTupleFields.Index].AsNumber(); | ||
62 | set => this.Set((int)ComPlusMethodTupleFields.Index, value); | ||
63 | } | ||
64 | |||
65 | public string Name | ||
66 | { | ||
67 | get => this.Fields[(int)ComPlusMethodTupleFields.Name].AsString(); | ||
68 | set => this.Set((int)ComPlusMethodTupleFields.Name, value); | ||
69 | } | ||
70 | } | ||
71 | } \ No newline at end of file | ||
diff --git a/src/wixext/Tuples/ComPlusPartitionPropertyTuple.cs b/src/wixext/Tuples/ComPlusPartitionPropertyTuple.cs new file mode 100644 index 00000000..3427b10a --- /dev/null +++ b/src/wixext/Tuples/ComPlusPartitionPropertyTuple.cs | |||
@@ -0,0 +1,63 @@ | |||
1 | // 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. | ||
2 | |||
3 | namespace WixToolset.ComPlus | ||
4 | { | ||
5 | using WixToolset.Data; | ||
6 | using WixToolset.ComPlus.Tuples; | ||
7 | |||
8 | public static partial class ComPlusTupleDefinitions | ||
9 | { | ||
10 | public static readonly IntermediateTupleDefinition ComPlusPartitionProperty = new IntermediateTupleDefinition( | ||
11 | ComPlusTupleDefinitionType.ComPlusPartitionProperty.ToString(), | ||
12 | new[] | ||
13 | { | ||
14 | new IntermediateFieldDefinition(nameof(ComPlusPartitionPropertyTupleFields.Partition_), IntermediateFieldType.String), | ||
15 | new IntermediateFieldDefinition(nameof(ComPlusPartitionPropertyTupleFields.Name), IntermediateFieldType.String), | ||
16 | new IntermediateFieldDefinition(nameof(ComPlusPartitionPropertyTupleFields.Value), IntermediateFieldType.String), | ||
17 | }, | ||
18 | typeof(ComPlusPartitionPropertyTuple)); | ||
19 | } | ||
20 | } | ||
21 | |||
22 | namespace WixToolset.ComPlus.Tuples | ||
23 | { | ||
24 | using WixToolset.Data; | ||
25 | |||
26 | public enum ComPlusPartitionPropertyTupleFields | ||
27 | { | ||
28 | Partition_, | ||
29 | Name, | ||
30 | Value, | ||
31 | } | ||
32 | |||
33 | public class ComPlusPartitionPropertyTuple : IntermediateTuple | ||
34 | { | ||
35 | public ComPlusPartitionPropertyTuple() : base(ComPlusTupleDefinitions.ComPlusPartitionProperty, null, null) | ||
36 | { | ||
37 | } | ||
38 | |||
39 | public ComPlusPartitionPropertyTuple(SourceLineNumber sourceLineNumber, Identifier id = null) : base(ComPlusTupleDefinitions.ComPlusPartitionProperty, sourceLineNumber, id) | ||
40 | { | ||
41 | } | ||
42 | |||
43 | public IntermediateField this[ComPlusPartitionPropertyTupleFields index] => this.Fields[(int)index]; | ||
44 | |||
45 | public string Partition_ | ||
46 | { | ||
47 | get => this.Fields[(int)ComPlusPartitionPropertyTupleFields.Partition_].AsString(); | ||
48 | set => this.Set((int)ComPlusPartitionPropertyTupleFields.Partition_, value); | ||
49 | } | ||
50 | |||
51 | public string Name | ||
52 | { | ||
53 | get => this.Fields[(int)ComPlusPartitionPropertyTupleFields.Name].AsString(); | ||
54 | set => this.Set((int)ComPlusPartitionPropertyTupleFields.Name, value); | ||
55 | } | ||
56 | |||
57 | public string Value | ||
58 | { | ||
59 | get => this.Fields[(int)ComPlusPartitionPropertyTupleFields.Value].AsString(); | ||
60 | set => this.Set((int)ComPlusPartitionPropertyTupleFields.Value, value); | ||
61 | } | ||
62 | } | ||
63 | } \ No newline at end of file | ||
diff --git a/src/wixext/Tuples/ComPlusPartitionRoleTuple.cs b/src/wixext/Tuples/ComPlusPartitionRoleTuple.cs new file mode 100644 index 00000000..a2259cc6 --- /dev/null +++ b/src/wixext/Tuples/ComPlusPartitionRoleTuple.cs | |||
@@ -0,0 +1,71 @@ | |||
1 | // 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. | ||
2 | |||
3 | namespace WixToolset.ComPlus | ||
4 | { | ||
5 | using WixToolset.Data; | ||
6 | using WixToolset.ComPlus.Tuples; | ||
7 | |||
8 | public static partial class ComPlusTupleDefinitions | ||
9 | { | ||
10 | public static readonly IntermediateTupleDefinition ComPlusPartitionRole = new IntermediateTupleDefinition( | ||
11 | ComPlusTupleDefinitionType.ComPlusPartitionRole.ToString(), | ||
12 | new[] | ||
13 | { | ||
14 | new IntermediateFieldDefinition(nameof(ComPlusPartitionRoleTupleFields.PartitionRole), IntermediateFieldType.String), | ||
15 | new IntermediateFieldDefinition(nameof(ComPlusPartitionRoleTupleFields.Partition_), IntermediateFieldType.String), | ||
16 | new IntermediateFieldDefinition(nameof(ComPlusPartitionRoleTupleFields.Component_), IntermediateFieldType.String), | ||
17 | new IntermediateFieldDefinition(nameof(ComPlusPartitionRoleTupleFields.Name), IntermediateFieldType.String), | ||
18 | }, | ||
19 | typeof(ComPlusPartitionRoleTuple)); | ||
20 | } | ||
21 | } | ||
22 | |||
23 | namespace WixToolset.ComPlus.Tuples | ||
24 | { | ||
25 | using WixToolset.Data; | ||
26 | |||
27 | public enum ComPlusPartitionRoleTupleFields | ||
28 | { | ||
29 | PartitionRole, | ||
30 | Partition_, | ||
31 | Component_, | ||
32 | Name, | ||
33 | } | ||
34 | |||
35 | public class ComPlusPartitionRoleTuple : IntermediateTuple | ||
36 | { | ||
37 | public ComPlusPartitionRoleTuple() : base(ComPlusTupleDefinitions.ComPlusPartitionRole, null, null) | ||
38 | { | ||
39 | } | ||
40 | |||
41 | public ComPlusPartitionRoleTuple(SourceLineNumber sourceLineNumber, Identifier id = null) : base(ComPlusTupleDefinitions.ComPlusPartitionRole, sourceLineNumber, id) | ||
42 | { | ||
43 | } | ||
44 | |||
45 | public IntermediateField this[ComPlusPartitionRoleTupleFields index] => this.Fields[(int)index]; | ||
46 | |||
47 | public string PartitionRole | ||
48 | { | ||
49 | get => this.Fields[(int)ComPlusPartitionRoleTupleFields.PartitionRole].AsString(); | ||
50 | set => this.Set((int)ComPlusPartitionRoleTupleFields.PartitionRole, value); | ||
51 | } | ||
52 | |||
53 | public string Partition_ | ||
54 | { | ||
55 | get => this.Fields[(int)ComPlusPartitionRoleTupleFields.Partition_].AsString(); | ||
56 | set => this.Set((int)ComPlusPartitionRoleTupleFields.Partition_, value); | ||
57 | } | ||
58 | |||
59 | public string Component_ | ||
60 | { | ||
61 | get => this.Fields[(int)ComPlusPartitionRoleTupleFields.Component_].AsString(); | ||
62 | set => this.Set((int)ComPlusPartitionRoleTupleFields.Component_, value); | ||
63 | } | ||
64 | |||
65 | public string Name | ||
66 | { | ||
67 | get => this.Fields[(int)ComPlusPartitionRoleTupleFields.Name].AsString(); | ||
68 | set => this.Set((int)ComPlusPartitionRoleTupleFields.Name, value); | ||
69 | } | ||
70 | } | ||
71 | } \ No newline at end of file | ||
diff --git a/src/wixext/Tuples/ComPlusPartitionTuple.cs b/src/wixext/Tuples/ComPlusPartitionTuple.cs new file mode 100644 index 00000000..68de9955 --- /dev/null +++ b/src/wixext/Tuples/ComPlusPartitionTuple.cs | |||
@@ -0,0 +1,71 @@ | |||
1 | // 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. | ||
2 | |||
3 | namespace WixToolset.ComPlus | ||
4 | { | ||
5 | using WixToolset.Data; | ||
6 | using WixToolset.ComPlus.Tuples; | ||
7 | |||
8 | public static partial class ComPlusTupleDefinitions | ||
9 | { | ||
10 | public static readonly IntermediateTupleDefinition ComPlusPartition = new IntermediateTupleDefinition( | ||
11 | ComPlusTupleDefinitionType.ComPlusPartition.ToString(), | ||
12 | new[] | ||
13 | { | ||
14 | new IntermediateFieldDefinition(nameof(ComPlusPartitionTupleFields.Partition), IntermediateFieldType.String), | ||
15 | new IntermediateFieldDefinition(nameof(ComPlusPartitionTupleFields.Component_), IntermediateFieldType.String), | ||
16 | new IntermediateFieldDefinition(nameof(ComPlusPartitionTupleFields.CustomId), IntermediateFieldType.String), | ||
17 | new IntermediateFieldDefinition(nameof(ComPlusPartitionTupleFields.Name), IntermediateFieldType.String), | ||
18 | }, | ||
19 | typeof(ComPlusPartitionTuple)); | ||
20 | } | ||
21 | } | ||
22 | |||
23 | namespace WixToolset.ComPlus.Tuples | ||
24 | { | ||
25 | using WixToolset.Data; | ||
26 | |||
27 | public enum ComPlusPartitionTupleFields | ||
28 | { | ||
29 | Partition, | ||
30 | Component_, | ||
31 | CustomId, | ||
32 | Name, | ||
33 | } | ||
34 | |||
35 | public class ComPlusPartitionTuple : IntermediateTuple | ||
36 | { | ||
37 | public ComPlusPartitionTuple() : base(ComPlusTupleDefinitions.ComPlusPartition, null, null) | ||
38 | { | ||
39 | } | ||
40 | |||
41 | public ComPlusPartitionTuple(SourceLineNumber sourceLineNumber, Identifier id = null) : base(ComPlusTupleDefinitions.ComPlusPartition, sourceLineNumber, id) | ||
42 | { | ||
43 | } | ||
44 | |||
45 | public IntermediateField this[ComPlusPartitionTupleFields index] => this.Fields[(int)index]; | ||
46 | |||
47 | public string Partition | ||
48 | { | ||
49 | get => this.Fields[(int)ComPlusPartitionTupleFields.Partition].AsString(); | ||
50 | set => this.Set((int)ComPlusPartitionTupleFields.Partition, value); | ||
51 | } | ||
52 | |||
53 | public string Component_ | ||
54 | { | ||
55 | get => this.Fields[(int)ComPlusPartitionTupleFields.Component_].AsString(); | ||
56 | set => this.Set((int)ComPlusPartitionTupleFields.Component_, value); | ||
57 | } | ||
58 | |||
59 | public string CustomId | ||
60 | { | ||
61 | get => this.Fields[(int)ComPlusPartitionTupleFields.CustomId].AsString(); | ||
62 | set => this.Set((int)ComPlusPartitionTupleFields.CustomId, value); | ||
63 | } | ||
64 | |||
65 | public string Name | ||
66 | { | ||
67 | get => this.Fields[(int)ComPlusPartitionTupleFields.Name].AsString(); | ||
68 | set => this.Set((int)ComPlusPartitionTupleFields.Name, value); | ||
69 | } | ||
70 | } | ||
71 | } \ No newline at end of file | ||
diff --git a/src/wixext/Tuples/ComPlusPartitionUserTuple.cs b/src/wixext/Tuples/ComPlusPartitionUserTuple.cs new file mode 100644 index 00000000..33a58d38 --- /dev/null +++ b/src/wixext/Tuples/ComPlusPartitionUserTuple.cs | |||
@@ -0,0 +1,71 @@ | |||
1 | // 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. | ||
2 | |||
3 | namespace WixToolset.ComPlus | ||
4 | { | ||
5 | using WixToolset.Data; | ||
6 | using WixToolset.ComPlus.Tuples; | ||
7 | |||
8 | public static partial class ComPlusTupleDefinitions | ||
9 | { | ||
10 | public static readonly IntermediateTupleDefinition ComPlusPartitionUser = new IntermediateTupleDefinition( | ||
11 | ComPlusTupleDefinitionType.ComPlusPartitionUser.ToString(), | ||
12 | new[] | ||
13 | { | ||
14 | new IntermediateFieldDefinition(nameof(ComPlusPartitionUserTupleFields.PartitionUser), IntermediateFieldType.String), | ||
15 | new IntermediateFieldDefinition(nameof(ComPlusPartitionUserTupleFields.Partition_), IntermediateFieldType.String), | ||
16 | new IntermediateFieldDefinition(nameof(ComPlusPartitionUserTupleFields.Component_), IntermediateFieldType.String), | ||
17 | new IntermediateFieldDefinition(nameof(ComPlusPartitionUserTupleFields.User_), IntermediateFieldType.String), | ||
18 | }, | ||
19 | typeof(ComPlusPartitionUserTuple)); | ||
20 | } | ||
21 | } | ||
22 | |||
23 | namespace WixToolset.ComPlus.Tuples | ||
24 | { | ||
25 | using WixToolset.Data; | ||
26 | |||
27 | public enum ComPlusPartitionUserTupleFields | ||
28 | { | ||
29 | PartitionUser, | ||
30 | Partition_, | ||
31 | Component_, | ||
32 | User_, | ||
33 | } | ||
34 | |||
35 | public class ComPlusPartitionUserTuple : IntermediateTuple | ||
36 | { | ||
37 | public ComPlusPartitionUserTuple() : base(ComPlusTupleDefinitions.ComPlusPartitionUser, null, null) | ||
38 | { | ||
39 | } | ||
40 | |||
41 | public ComPlusPartitionUserTuple(SourceLineNumber sourceLineNumber, Identifier id = null) : base(ComPlusTupleDefinitions.ComPlusPartitionUser, sourceLineNumber, id) | ||
42 | { | ||
43 | } | ||
44 | |||
45 | public IntermediateField this[ComPlusPartitionUserTupleFields index] => this.Fields[(int)index]; | ||
46 | |||
47 | public string PartitionUser | ||
48 | { | ||
49 | get => this.Fields[(int)ComPlusPartitionUserTupleFields.PartitionUser].AsString(); | ||
50 | set => this.Set((int)ComPlusPartitionUserTupleFields.PartitionUser, value); | ||
51 | } | ||
52 | |||
53 | public string Partition_ | ||
54 | { | ||
55 | get => this.Fields[(int)ComPlusPartitionUserTupleFields.Partition_].AsString(); | ||
56 | set => this.Set((int)ComPlusPartitionUserTupleFields.Partition_, value); | ||
57 | } | ||
58 | |||
59 | public string Component_ | ||
60 | { | ||
61 | get => this.Fields[(int)ComPlusPartitionUserTupleFields.Component_].AsString(); | ||
62 | set => this.Set((int)ComPlusPartitionUserTupleFields.Component_, value); | ||
63 | } | ||
64 | |||
65 | public string User_ | ||
66 | { | ||
67 | get => this.Fields[(int)ComPlusPartitionUserTupleFields.User_].AsString(); | ||
68 | set => this.Set((int)ComPlusPartitionUserTupleFields.User_, value); | ||
69 | } | ||
70 | } | ||
71 | } \ No newline at end of file | ||
diff --git a/src/wixext/Tuples/ComPlusRoleForComponentTuple.cs b/src/wixext/Tuples/ComPlusRoleForComponentTuple.cs new file mode 100644 index 00000000..75d8cfaf --- /dev/null +++ b/src/wixext/Tuples/ComPlusRoleForComponentTuple.cs | |||
@@ -0,0 +1,71 @@ | |||
1 | // 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. | ||
2 | |||
3 | namespace WixToolset.ComPlus | ||
4 | { | ||
5 | using WixToolset.Data; | ||
6 | using WixToolset.ComPlus.Tuples; | ||
7 | |||
8 | public static partial class ComPlusTupleDefinitions | ||
9 | { | ||
10 | public static readonly IntermediateTupleDefinition ComPlusRoleForComponent = new IntermediateTupleDefinition( | ||
11 | ComPlusTupleDefinitionType.ComPlusRoleForComponent.ToString(), | ||
12 | new[] | ||
13 | { | ||
14 | new IntermediateFieldDefinition(nameof(ComPlusRoleForComponentTupleFields.RoleForComponent), IntermediateFieldType.String), | ||
15 | new IntermediateFieldDefinition(nameof(ComPlusRoleForComponentTupleFields.ComPlusComponent_), IntermediateFieldType.String), | ||
16 | new IntermediateFieldDefinition(nameof(ComPlusRoleForComponentTupleFields.ApplicationRole_), IntermediateFieldType.String), | ||
17 | new IntermediateFieldDefinition(nameof(ComPlusRoleForComponentTupleFields.Component_), IntermediateFieldType.String), | ||
18 | }, | ||
19 | typeof(ComPlusRoleForComponentTuple)); | ||
20 | } | ||
21 | } | ||
22 | |||
23 | namespace WixToolset.ComPlus.Tuples | ||
24 | { | ||
25 | using WixToolset.Data; | ||
26 | |||
27 | public enum ComPlusRoleForComponentTupleFields | ||
28 | { | ||
29 | RoleForComponent, | ||
30 | ComPlusComponent_, | ||
31 | ApplicationRole_, | ||
32 | Component_, | ||
33 | } | ||
34 | |||
35 | public class ComPlusRoleForComponentTuple : IntermediateTuple | ||
36 | { | ||
37 | public ComPlusRoleForComponentTuple() : base(ComPlusTupleDefinitions.ComPlusRoleForComponent, null, null) | ||
38 | { | ||
39 | } | ||
40 | |||
41 | public ComPlusRoleForComponentTuple(SourceLineNumber sourceLineNumber, Identifier id = null) : base(ComPlusTupleDefinitions.ComPlusRoleForComponent, sourceLineNumber, id) | ||
42 | { | ||
43 | } | ||
44 | |||
45 | public IntermediateField this[ComPlusRoleForComponentTupleFields index] => this.Fields[(int)index]; | ||
46 | |||
47 | public string RoleForComponent | ||
48 | { | ||
49 | get => this.Fields[(int)ComPlusRoleForComponentTupleFields.RoleForComponent].AsString(); | ||
50 | set => this.Set((int)ComPlusRoleForComponentTupleFields.RoleForComponent, value); | ||
51 | } | ||
52 | |||
53 | public string ComPlusComponent_ | ||
54 | { | ||
55 | get => this.Fields[(int)ComPlusRoleForComponentTupleFields.ComPlusComponent_].AsString(); | ||
56 | set => this.Set((int)ComPlusRoleForComponentTupleFields.ComPlusComponent_, value); | ||
57 | } | ||
58 | |||
59 | public string ApplicationRole_ | ||
60 | { | ||
61 | get => this.Fields[(int)ComPlusRoleForComponentTupleFields.ApplicationRole_].AsString(); | ||
62 | set => this.Set((int)ComPlusRoleForComponentTupleFields.ApplicationRole_, value); | ||
63 | } | ||
64 | |||
65 | public string Component_ | ||
66 | { | ||
67 | get => this.Fields[(int)ComPlusRoleForComponentTupleFields.Component_].AsString(); | ||
68 | set => this.Set((int)ComPlusRoleForComponentTupleFields.Component_, value); | ||
69 | } | ||
70 | } | ||
71 | } \ No newline at end of file | ||
diff --git a/src/wixext/Tuples/ComPlusRoleForInterfaceTuple.cs b/src/wixext/Tuples/ComPlusRoleForInterfaceTuple.cs new file mode 100644 index 00000000..139417d3 --- /dev/null +++ b/src/wixext/Tuples/ComPlusRoleForInterfaceTuple.cs | |||
@@ -0,0 +1,71 @@ | |||
1 | // 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. | ||
2 | |||
3 | namespace WixToolset.ComPlus | ||
4 | { | ||
5 | using WixToolset.Data; | ||
6 | using WixToolset.ComPlus.Tuples; | ||
7 | |||
8 | public static partial class ComPlusTupleDefinitions | ||
9 | { | ||
10 | public static readonly IntermediateTupleDefinition ComPlusRoleForInterface = new IntermediateTupleDefinition( | ||
11 | ComPlusTupleDefinitionType.ComPlusRoleForInterface.ToString(), | ||
12 | new[] | ||
13 | { | ||
14 | new IntermediateFieldDefinition(nameof(ComPlusRoleForInterfaceTupleFields.RoleForInterface), IntermediateFieldType.String), | ||
15 | new IntermediateFieldDefinition(nameof(ComPlusRoleForInterfaceTupleFields.Interface_), IntermediateFieldType.String), | ||
16 | new IntermediateFieldDefinition(nameof(ComPlusRoleForInterfaceTupleFields.ApplicationRole_), IntermediateFieldType.String), | ||
17 | new IntermediateFieldDefinition(nameof(ComPlusRoleForInterfaceTupleFields.Component_), IntermediateFieldType.String), | ||
18 | }, | ||
19 | typeof(ComPlusRoleForInterfaceTuple)); | ||
20 | } | ||
21 | } | ||
22 | |||
23 | namespace WixToolset.ComPlus.Tuples | ||
24 | { | ||
25 | using WixToolset.Data; | ||
26 | |||
27 | public enum ComPlusRoleForInterfaceTupleFields | ||
28 | { | ||
29 | RoleForInterface, | ||
30 | Interface_, | ||
31 | ApplicationRole_, | ||
32 | Component_, | ||
33 | } | ||
34 | |||
35 | public class ComPlusRoleForInterfaceTuple : IntermediateTuple | ||
36 | { | ||
37 | public ComPlusRoleForInterfaceTuple() : base(ComPlusTupleDefinitions.ComPlusRoleForInterface, null, null) | ||
38 | { | ||
39 | } | ||
40 | |||
41 | public ComPlusRoleForInterfaceTuple(SourceLineNumber sourceLineNumber, Identifier id = null) : base(ComPlusTupleDefinitions.ComPlusRoleForInterface, sourceLineNumber, id) | ||
42 | { | ||
43 | } | ||
44 | |||
45 | public IntermediateField this[ComPlusRoleForInterfaceTupleFields index] => this.Fields[(int)index]; | ||
46 | |||
47 | public string RoleForInterface | ||
48 | { | ||
49 | get => this.Fields[(int)ComPlusRoleForInterfaceTupleFields.RoleForInterface].AsString(); | ||
50 | set => this.Set((int)ComPlusRoleForInterfaceTupleFields.RoleForInterface, value); | ||
51 | } | ||
52 | |||
53 | public string Interface_ | ||
54 | { | ||
55 | get => this.Fields[(int)ComPlusRoleForInterfaceTupleFields.Interface_].AsString(); | ||
56 | set => this.Set((int)ComPlusRoleForInterfaceTupleFields.Interface_, value); | ||
57 | } | ||
58 | |||
59 | public string ApplicationRole_ | ||
60 | { | ||
61 | get => this.Fields[(int)ComPlusRoleForInterfaceTupleFields.ApplicationRole_].AsString(); | ||
62 | set => this.Set((int)ComPlusRoleForInterfaceTupleFields.ApplicationRole_, value); | ||
63 | } | ||
64 | |||
65 | public string Component_ | ||
66 | { | ||
67 | get => this.Fields[(int)ComPlusRoleForInterfaceTupleFields.Component_].AsString(); | ||
68 | set => this.Set((int)ComPlusRoleForInterfaceTupleFields.Component_, value); | ||
69 | } | ||
70 | } | ||
71 | } \ No newline at end of file | ||
diff --git a/src/wixext/Tuples/ComPlusRoleForMethodTuple.cs b/src/wixext/Tuples/ComPlusRoleForMethodTuple.cs new file mode 100644 index 00000000..5b6e994e --- /dev/null +++ b/src/wixext/Tuples/ComPlusRoleForMethodTuple.cs | |||
@@ -0,0 +1,71 @@ | |||
1 | // 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. | ||
2 | |||
3 | namespace WixToolset.ComPlus | ||
4 | { | ||
5 | using WixToolset.Data; | ||
6 | using WixToolset.ComPlus.Tuples; | ||
7 | |||
8 | public static partial class ComPlusTupleDefinitions | ||
9 | { | ||
10 | public static readonly IntermediateTupleDefinition ComPlusRoleForMethod = new IntermediateTupleDefinition( | ||
11 | ComPlusTupleDefinitionType.ComPlusRoleForMethod.ToString(), | ||
12 | new[] | ||
13 | { | ||
14 | new IntermediateFieldDefinition(nameof(ComPlusRoleForMethodTupleFields.RoleForMethod), IntermediateFieldType.String), | ||
15 | new IntermediateFieldDefinition(nameof(ComPlusRoleForMethodTupleFields.Method_), IntermediateFieldType.String), | ||
16 | new IntermediateFieldDefinition(nameof(ComPlusRoleForMethodTupleFields.ApplicationRole_), IntermediateFieldType.String), | ||
17 | new IntermediateFieldDefinition(nameof(ComPlusRoleForMethodTupleFields.Component_), IntermediateFieldType.String), | ||
18 | }, | ||
19 | typeof(ComPlusRoleForMethodTuple)); | ||
20 | } | ||
21 | } | ||
22 | |||
23 | namespace WixToolset.ComPlus.Tuples | ||
24 | { | ||
25 | using WixToolset.Data; | ||
26 | |||
27 | public enum ComPlusRoleForMethodTupleFields | ||
28 | { | ||
29 | RoleForMethod, | ||
30 | Method_, | ||
31 | ApplicationRole_, | ||
32 | Component_, | ||
33 | } | ||
34 | |||
35 | public class ComPlusRoleForMethodTuple : IntermediateTuple | ||
36 | { | ||
37 | public ComPlusRoleForMethodTuple() : base(ComPlusTupleDefinitions.ComPlusRoleForMethod, null, null) | ||
38 | { | ||
39 | } | ||
40 | |||
41 | public ComPlusRoleForMethodTuple(SourceLineNumber sourceLineNumber, Identifier id = null) : base(ComPlusTupleDefinitions.ComPlusRoleForMethod, sourceLineNumber, id) | ||
42 | { | ||
43 | } | ||
44 | |||
45 | public IntermediateField this[ComPlusRoleForMethodTupleFields index] => this.Fields[(int)index]; | ||
46 | |||
47 | public string RoleForMethod | ||
48 | { | ||
49 | get => this.Fields[(int)ComPlusRoleForMethodTupleFields.RoleForMethod].AsString(); | ||
50 | set => this.Set((int)ComPlusRoleForMethodTupleFields.RoleForMethod, value); | ||
51 | } | ||
52 | |||
53 | public string Method_ | ||
54 | { | ||
55 | get => this.Fields[(int)ComPlusRoleForMethodTupleFields.Method_].AsString(); | ||
56 | set => this.Set((int)ComPlusRoleForMethodTupleFields.Method_, value); | ||
57 | } | ||
58 | |||
59 | public string ApplicationRole_ | ||
60 | { | ||
61 | get => this.Fields[(int)ComPlusRoleForMethodTupleFields.ApplicationRole_].AsString(); | ||
62 | set => this.Set((int)ComPlusRoleForMethodTupleFields.ApplicationRole_, value); | ||
63 | } | ||
64 | |||
65 | public string Component_ | ||
66 | { | ||
67 | get => this.Fields[(int)ComPlusRoleForMethodTupleFields.Component_].AsString(); | ||
68 | set => this.Set((int)ComPlusRoleForMethodTupleFields.Component_, value); | ||
69 | } | ||
70 | } | ||
71 | } \ No newline at end of file | ||
diff --git a/src/wixext/Tuples/ComPlusSubscriptionPropertyTuple.cs b/src/wixext/Tuples/ComPlusSubscriptionPropertyTuple.cs new file mode 100644 index 00000000..ad0841f4 --- /dev/null +++ b/src/wixext/Tuples/ComPlusSubscriptionPropertyTuple.cs | |||
@@ -0,0 +1,63 @@ | |||
1 | // 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. | ||
2 | |||
3 | namespace WixToolset.ComPlus | ||
4 | { | ||
5 | using WixToolset.Data; | ||
6 | using WixToolset.ComPlus.Tuples; | ||
7 | |||
8 | public static partial class ComPlusTupleDefinitions | ||
9 | { | ||
10 | public static readonly IntermediateTupleDefinition ComPlusSubscriptionProperty = new IntermediateTupleDefinition( | ||
11 | ComPlusTupleDefinitionType.ComPlusSubscriptionProperty.ToString(), | ||
12 | new[] | ||
13 | { | ||
14 | new IntermediateFieldDefinition(nameof(ComPlusSubscriptionPropertyTupleFields.Subscription_), IntermediateFieldType.String), | ||
15 | new IntermediateFieldDefinition(nameof(ComPlusSubscriptionPropertyTupleFields.Name), IntermediateFieldType.String), | ||
16 | new IntermediateFieldDefinition(nameof(ComPlusSubscriptionPropertyTupleFields.Value), IntermediateFieldType.String), | ||
17 | }, | ||
18 | typeof(ComPlusSubscriptionPropertyTuple)); | ||
19 | } | ||
20 | } | ||
21 | |||
22 | namespace WixToolset.ComPlus.Tuples | ||
23 | { | ||
24 | using WixToolset.Data; | ||
25 | |||
26 | public enum ComPlusSubscriptionPropertyTupleFields | ||
27 | { | ||
28 | Subscription_, | ||
29 | Name, | ||
30 | Value, | ||
31 | } | ||
32 | |||
33 | public class ComPlusSubscriptionPropertyTuple : IntermediateTuple | ||
34 | { | ||
35 | public ComPlusSubscriptionPropertyTuple() : base(ComPlusTupleDefinitions.ComPlusSubscriptionProperty, null, null) | ||
36 | { | ||
37 | } | ||
38 | |||
39 | public ComPlusSubscriptionPropertyTuple(SourceLineNumber sourceLineNumber, Identifier id = null) : base(ComPlusTupleDefinitions.ComPlusSubscriptionProperty, sourceLineNumber, id) | ||
40 | { | ||
41 | } | ||
42 | |||
43 | public IntermediateField this[ComPlusSubscriptionPropertyTupleFields index] => this.Fields[(int)index]; | ||
44 | |||
45 | public string Subscription_ | ||
46 | { | ||
47 | get => this.Fields[(int)ComPlusSubscriptionPropertyTupleFields.Subscription_].AsString(); | ||
48 | set => this.Set((int)ComPlusSubscriptionPropertyTupleFields.Subscription_, value); | ||
49 | } | ||
50 | |||
51 | public string Name | ||
52 | { | ||
53 | get => this.Fields[(int)ComPlusSubscriptionPropertyTupleFields.Name].AsString(); | ||
54 | set => this.Set((int)ComPlusSubscriptionPropertyTupleFields.Name, value); | ||
55 | } | ||
56 | |||
57 | public string Value | ||
58 | { | ||
59 | get => this.Fields[(int)ComPlusSubscriptionPropertyTupleFields.Value].AsString(); | ||
60 | set => this.Set((int)ComPlusSubscriptionPropertyTupleFields.Value, value); | ||
61 | } | ||
62 | } | ||
63 | } \ No newline at end of file | ||
diff --git a/src/wixext/Tuples/ComPlusSubscriptionTuple.cs b/src/wixext/Tuples/ComPlusSubscriptionTuple.cs new file mode 100644 index 00000000..fedab172 --- /dev/null +++ b/src/wixext/Tuples/ComPlusSubscriptionTuple.cs | |||
@@ -0,0 +1,95 @@ | |||
1 | // 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. | ||
2 | |||
3 | namespace WixToolset.ComPlus | ||
4 | { | ||
5 | using WixToolset.Data; | ||
6 | using WixToolset.ComPlus.Tuples; | ||
7 | |||
8 | public static partial class ComPlusTupleDefinitions | ||
9 | { | ||
10 | public static readonly IntermediateTupleDefinition ComPlusSubscription = new IntermediateTupleDefinition( | ||
11 | ComPlusTupleDefinitionType.ComPlusSubscription.ToString(), | ||
12 | new[] | ||
13 | { | ||
14 | new IntermediateFieldDefinition(nameof(ComPlusSubscriptionTupleFields.Subscription), IntermediateFieldType.String), | ||
15 | new IntermediateFieldDefinition(nameof(ComPlusSubscriptionTupleFields.ComPlusComponent_), IntermediateFieldType.String), | ||
16 | new IntermediateFieldDefinition(nameof(ComPlusSubscriptionTupleFields.Component_), IntermediateFieldType.String), | ||
17 | new IntermediateFieldDefinition(nameof(ComPlusSubscriptionTupleFields.CustomId), IntermediateFieldType.String), | ||
18 | new IntermediateFieldDefinition(nameof(ComPlusSubscriptionTupleFields.Name), IntermediateFieldType.String), | ||
19 | new IntermediateFieldDefinition(nameof(ComPlusSubscriptionTupleFields.EventCLSID), IntermediateFieldType.String), | ||
20 | new IntermediateFieldDefinition(nameof(ComPlusSubscriptionTupleFields.PublisherID), IntermediateFieldType.String), | ||
21 | }, | ||
22 | typeof(ComPlusSubscriptionTuple)); | ||
23 | } | ||
24 | } | ||
25 | |||
26 | namespace WixToolset.ComPlus.Tuples | ||
27 | { | ||
28 | using WixToolset.Data; | ||
29 | |||
30 | public enum ComPlusSubscriptionTupleFields | ||
31 | { | ||
32 | Subscription, | ||
33 | ComPlusComponent_, | ||
34 | Component_, | ||
35 | CustomId, | ||
36 | Name, | ||
37 | EventCLSID, | ||
38 | PublisherID, | ||
39 | } | ||
40 | |||
41 | public class ComPlusSubscriptionTuple : IntermediateTuple | ||
42 | { | ||
43 | public ComPlusSubscriptionTuple() : base(ComPlusTupleDefinitions.ComPlusSubscription, null, null) | ||
44 | { | ||
45 | } | ||
46 | |||
47 | public ComPlusSubscriptionTuple(SourceLineNumber sourceLineNumber, Identifier id = null) : base(ComPlusTupleDefinitions.ComPlusSubscription, sourceLineNumber, id) | ||
48 | { | ||
49 | } | ||
50 | |||
51 | public IntermediateField this[ComPlusSubscriptionTupleFields index] => this.Fields[(int)index]; | ||
52 | |||
53 | public string Subscription | ||
54 | { | ||
55 | get => this.Fields[(int)ComPlusSubscriptionTupleFields.Subscription].AsString(); | ||
56 | set => this.Set((int)ComPlusSubscriptionTupleFields.Subscription, value); | ||
57 | } | ||
58 | |||
59 | public string ComPlusComponent_ | ||
60 | { | ||
61 | get => this.Fields[(int)ComPlusSubscriptionTupleFields.ComPlusComponent_].AsString(); | ||
62 | set => this.Set((int)ComPlusSubscriptionTupleFields.ComPlusComponent_, value); | ||
63 | } | ||
64 | |||
65 | public string Component_ | ||
66 | { | ||
67 | get => this.Fields[(int)ComPlusSubscriptionTupleFields.Component_].AsString(); | ||
68 | set => this.Set((int)ComPlusSubscriptionTupleFields.Component_, value); | ||
69 | } | ||
70 | |||
71 | public string CustomId | ||
72 | { | ||
73 | get => this.Fields[(int)ComPlusSubscriptionTupleFields.CustomId].AsString(); | ||
74 | set => this.Set((int)ComPlusSubscriptionTupleFields.CustomId, value); | ||
75 | } | ||
76 | |||
77 | public string Name | ||
78 | { | ||
79 | get => this.Fields[(int)ComPlusSubscriptionTupleFields.Name].AsString(); | ||
80 | set => this.Set((int)ComPlusSubscriptionTupleFields.Name, value); | ||
81 | } | ||
82 | |||
83 | public string EventCLSID | ||
84 | { | ||
85 | get => this.Fields[(int)ComPlusSubscriptionTupleFields.EventCLSID].AsString(); | ||
86 | set => this.Set((int)ComPlusSubscriptionTupleFields.EventCLSID, value); | ||
87 | } | ||
88 | |||
89 | public string PublisherID | ||
90 | { | ||
91 | get => this.Fields[(int)ComPlusSubscriptionTupleFields.PublisherID].AsString(); | ||
92 | set => this.Set((int)ComPlusSubscriptionTupleFields.PublisherID, value); | ||
93 | } | ||
94 | } | ||
95 | } \ No newline at end of file | ||
diff --git a/src/wixext/Tuples/ComPlusTupleDefinitions.cs b/src/wixext/Tuples/ComPlusTupleDefinitions.cs new file mode 100644 index 00000000..1019c046 --- /dev/null +++ b/src/wixext/Tuples/ComPlusTupleDefinitions.cs | |||
@@ -0,0 +1,135 @@ | |||
1 | // 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. | ||
2 | |||
3 | namespace WixToolset.ComPlus | ||
4 | { | ||
5 | using System; | ||
6 | using WixToolset.Data; | ||
7 | |||
8 | public enum ComPlusTupleDefinitionType | ||
9 | { | ||
10 | ComPlusApplication, | ||
11 | ComPlusApplicationProperty, | ||
12 | ComPlusApplicationRole, | ||
13 | ComPlusApplicationRoleProperty, | ||
14 | ComPlusAssembly, | ||
15 | ComPlusAssemblyDependency, | ||
16 | ComPlusComponent, | ||
17 | ComPlusComponentProperty, | ||
18 | ComPlusGroupInApplicationRole, | ||
19 | ComPlusGroupInPartitionRole, | ||
20 | ComPlusInterface, | ||
21 | ComPlusInterfaceProperty, | ||
22 | ComPlusMethod, | ||
23 | ComPlusMethodProperty, | ||
24 | ComPlusPartition, | ||
25 | ComPlusPartitionProperty, | ||
26 | ComPlusPartitionRole, | ||
27 | ComPlusPartitionUser, | ||
28 | ComPlusRoleForComponent, | ||
29 | ComPlusRoleForInterface, | ||
30 | ComPlusRoleForMethod, | ||
31 | ComPlusSubscription, | ||
32 | ComPlusSubscriptionProperty, | ||
33 | ComPlusUserInApplicationRole, | ||
34 | ComPlusUserInPartitionRole, | ||
35 | } | ||
36 | |||
37 | public static partial class ComPlusTupleDefinitions | ||
38 | { | ||
39 | public static readonly Version Version = new Version("4.0.0"); | ||
40 | |||
41 | public static IntermediateTupleDefinition ByName(string name) | ||
42 | { | ||
43 | if (!Enum.TryParse(name, out ComPlusTupleDefinitionType type)) | ||
44 | { | ||
45 | return null; | ||
46 | } | ||
47 | |||
48 | return ByType(type); | ||
49 | } | ||
50 | |||
51 | public static IntermediateTupleDefinition ByType(ComPlusTupleDefinitionType type) | ||
52 | { | ||
53 | switch (type) | ||
54 | { | ||
55 | case ComPlusTupleDefinitionType.ComPlusApplication: | ||
56 | return ComPlusTupleDefinitions.ComPlusApplication; | ||
57 | |||
58 | case ComPlusTupleDefinitionType.ComPlusApplicationProperty: | ||
59 | return ComPlusTupleDefinitions.ComPlusApplicationProperty; | ||
60 | |||
61 | case ComPlusTupleDefinitionType.ComPlusApplicationRole: | ||
62 | return ComPlusTupleDefinitions.ComPlusApplicationRole; | ||
63 | |||
64 | case ComPlusTupleDefinitionType.ComPlusApplicationRoleProperty: | ||
65 | return ComPlusTupleDefinitions.ComPlusApplicationRoleProperty; | ||
66 | |||
67 | case ComPlusTupleDefinitionType.ComPlusAssembly: | ||
68 | return ComPlusTupleDefinitions.ComPlusAssembly; | ||
69 | |||
70 | case ComPlusTupleDefinitionType.ComPlusAssemblyDependency: | ||
71 | return ComPlusTupleDefinitions.ComPlusAssemblyDependency; | ||
72 | |||
73 | case ComPlusTupleDefinitionType.ComPlusComponent: | ||
74 | return ComPlusTupleDefinitions.ComPlusComponent; | ||
75 | |||
76 | case ComPlusTupleDefinitionType.ComPlusComponentProperty: | ||
77 | return ComPlusTupleDefinitions.ComPlusComponentProperty; | ||
78 | |||
79 | case ComPlusTupleDefinitionType.ComPlusGroupInApplicationRole: | ||
80 | return ComPlusTupleDefinitions.ComPlusGroupInApplicationRole; | ||
81 | |||
82 | case ComPlusTupleDefinitionType.ComPlusGroupInPartitionRole: | ||
83 | return ComPlusTupleDefinitions.ComPlusGroupInPartitionRole; | ||
84 | |||
85 | case ComPlusTupleDefinitionType.ComPlusInterface: | ||
86 | return ComPlusTupleDefinitions.ComPlusInterface; | ||
87 | |||
88 | case ComPlusTupleDefinitionType.ComPlusInterfaceProperty: | ||
89 | return ComPlusTupleDefinitions.ComPlusInterfaceProperty; | ||
90 | |||
91 | case ComPlusTupleDefinitionType.ComPlusMethod: | ||
92 | return ComPlusTupleDefinitions.ComPlusMethod; | ||
93 | |||
94 | case ComPlusTupleDefinitionType.ComPlusMethodProperty: | ||
95 | return ComPlusTupleDefinitions.ComPlusMethodProperty; | ||
96 | |||
97 | case ComPlusTupleDefinitionType.ComPlusPartition: | ||
98 | return ComPlusTupleDefinitions.ComPlusPartition; | ||
99 | |||
100 | case ComPlusTupleDefinitionType.ComPlusPartitionProperty: | ||
101 | return ComPlusTupleDefinitions.ComPlusPartitionProperty; | ||
102 | |||
103 | case ComPlusTupleDefinitionType.ComPlusPartitionRole: | ||
104 | return ComPlusTupleDefinitions.ComPlusPartitionRole; | ||
105 | |||
106 | case ComPlusTupleDefinitionType.ComPlusPartitionUser: | ||
107 | return ComPlusTupleDefinitions.ComPlusPartitionUser; | ||
108 | |||
109 | case ComPlusTupleDefinitionType.ComPlusRoleForComponent: | ||
110 | return ComPlusTupleDefinitions.ComPlusRoleForComponent; | ||
111 | |||
112 | case ComPlusTupleDefinitionType.ComPlusRoleForInterface: | ||
113 | return ComPlusTupleDefinitions.ComPlusRoleForInterface; | ||
114 | |||
115 | case ComPlusTupleDefinitionType.ComPlusRoleForMethod: | ||
116 | return ComPlusTupleDefinitions.ComPlusRoleForMethod; | ||
117 | |||
118 | case ComPlusTupleDefinitionType.ComPlusSubscription: | ||
119 | return ComPlusTupleDefinitions.ComPlusSubscription; | ||
120 | |||
121 | case ComPlusTupleDefinitionType.ComPlusSubscriptionProperty: | ||
122 | return ComPlusTupleDefinitions.ComPlusSubscriptionProperty; | ||
123 | |||
124 | case ComPlusTupleDefinitionType.ComPlusUserInApplicationRole: | ||
125 | return ComPlusTupleDefinitions.ComPlusUserInApplicationRole; | ||
126 | |||
127 | case ComPlusTupleDefinitionType.ComPlusUserInPartitionRole: | ||
128 | return ComPlusTupleDefinitions.ComPlusUserInPartitionRole; | ||
129 | |||
130 | default: | ||
131 | throw new ArgumentOutOfRangeException(nameof(type)); | ||
132 | } | ||
133 | } | ||
134 | } | ||
135 | } | ||
diff --git a/src/wixext/Tuples/ComPlusUserInApplicationRoleTuple.cs b/src/wixext/Tuples/ComPlusUserInApplicationRoleTuple.cs new file mode 100644 index 00000000..3916c0ee --- /dev/null +++ b/src/wixext/Tuples/ComPlusUserInApplicationRoleTuple.cs | |||
@@ -0,0 +1,71 @@ | |||
1 | // 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. | ||
2 | |||
3 | namespace WixToolset.ComPlus | ||
4 | { | ||
5 | using WixToolset.Data; | ||
6 | using WixToolset.ComPlus.Tuples; | ||
7 | |||
8 | public static partial class ComPlusTupleDefinitions | ||
9 | { | ||
10 | public static readonly IntermediateTupleDefinition ComPlusUserInApplicationRole = new IntermediateTupleDefinition( | ||
11 | ComPlusTupleDefinitionType.ComPlusUserInApplicationRole.ToString(), | ||
12 | new[] | ||
13 | { | ||
14 | new IntermediateFieldDefinition(nameof(ComPlusUserInApplicationRoleTupleFields.UserInApplicationRole), IntermediateFieldType.String), | ||
15 | new IntermediateFieldDefinition(nameof(ComPlusUserInApplicationRoleTupleFields.ApplicationRole_), IntermediateFieldType.String), | ||
16 | new IntermediateFieldDefinition(nameof(ComPlusUserInApplicationRoleTupleFields.Component_), IntermediateFieldType.String), | ||
17 | new IntermediateFieldDefinition(nameof(ComPlusUserInApplicationRoleTupleFields.User_), IntermediateFieldType.String), | ||
18 | }, | ||
19 | typeof(ComPlusUserInApplicationRoleTuple)); | ||
20 | } | ||
21 | } | ||
22 | |||
23 | namespace WixToolset.ComPlus.Tuples | ||
24 | { | ||
25 | using WixToolset.Data; | ||
26 | |||
27 | public enum ComPlusUserInApplicationRoleTupleFields | ||
28 | { | ||
29 | UserInApplicationRole, | ||
30 | ApplicationRole_, | ||
31 | Component_, | ||
32 | User_, | ||
33 | } | ||
34 | |||
35 | public class ComPlusUserInApplicationRoleTuple : IntermediateTuple | ||
36 | { | ||
37 | public ComPlusUserInApplicationRoleTuple() : base(ComPlusTupleDefinitions.ComPlusUserInApplicationRole, null, null) | ||
38 | { | ||
39 | } | ||
40 | |||
41 | public ComPlusUserInApplicationRoleTuple(SourceLineNumber sourceLineNumber, Identifier id = null) : base(ComPlusTupleDefinitions.ComPlusUserInApplicationRole, sourceLineNumber, id) | ||
42 | { | ||
43 | } | ||
44 | |||
45 | public IntermediateField this[ComPlusUserInApplicationRoleTupleFields index] => this.Fields[(int)index]; | ||
46 | |||
47 | public string UserInApplicationRole | ||
48 | { | ||
49 | get => this.Fields[(int)ComPlusUserInApplicationRoleTupleFields.UserInApplicationRole].AsString(); | ||
50 | set => this.Set((int)ComPlusUserInApplicationRoleTupleFields.UserInApplicationRole, value); | ||
51 | } | ||
52 | |||
53 | public string ApplicationRole_ | ||
54 | { | ||
55 | get => this.Fields[(int)ComPlusUserInApplicationRoleTupleFields.ApplicationRole_].AsString(); | ||
56 | set => this.Set((int)ComPlusUserInApplicationRoleTupleFields.ApplicationRole_, value); | ||
57 | } | ||
58 | |||
59 | public string Component_ | ||
60 | { | ||
61 | get => this.Fields[(int)ComPlusUserInApplicationRoleTupleFields.Component_].AsString(); | ||
62 | set => this.Set((int)ComPlusUserInApplicationRoleTupleFields.Component_, value); | ||
63 | } | ||
64 | |||
65 | public string User_ | ||
66 | { | ||
67 | get => this.Fields[(int)ComPlusUserInApplicationRoleTupleFields.User_].AsString(); | ||
68 | set => this.Set((int)ComPlusUserInApplicationRoleTupleFields.User_, value); | ||
69 | } | ||
70 | } | ||
71 | } \ No newline at end of file | ||
diff --git a/src/wixext/Tuples/ComPlusUserInPartitionRoleTuple.cs b/src/wixext/Tuples/ComPlusUserInPartitionRoleTuple.cs new file mode 100644 index 00000000..06d742b8 --- /dev/null +++ b/src/wixext/Tuples/ComPlusUserInPartitionRoleTuple.cs | |||
@@ -0,0 +1,71 @@ | |||
1 | // 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. | ||
2 | |||
3 | namespace WixToolset.ComPlus | ||
4 | { | ||
5 | using WixToolset.Data; | ||
6 | using WixToolset.ComPlus.Tuples; | ||
7 | |||
8 | public static partial class ComPlusTupleDefinitions | ||
9 | { | ||
10 | public static readonly IntermediateTupleDefinition ComPlusUserInPartitionRole = new IntermediateTupleDefinition( | ||
11 | ComPlusTupleDefinitionType.ComPlusUserInPartitionRole.ToString(), | ||
12 | new[] | ||
13 | { | ||
14 | new IntermediateFieldDefinition(nameof(ComPlusUserInPartitionRoleTupleFields.UserInPartitionRole), IntermediateFieldType.String), | ||
15 | new IntermediateFieldDefinition(nameof(ComPlusUserInPartitionRoleTupleFields.PartitionRole_), IntermediateFieldType.String), | ||
16 | new IntermediateFieldDefinition(nameof(ComPlusUserInPartitionRoleTupleFields.Component_), IntermediateFieldType.String), | ||
17 | new IntermediateFieldDefinition(nameof(ComPlusUserInPartitionRoleTupleFields.User_), IntermediateFieldType.String), | ||
18 | }, | ||
19 | typeof(ComPlusUserInPartitionRoleTuple)); | ||
20 | } | ||
21 | } | ||
22 | |||
23 | namespace WixToolset.ComPlus.Tuples | ||
24 | { | ||
25 | using WixToolset.Data; | ||
26 | |||
27 | public enum ComPlusUserInPartitionRoleTupleFields | ||
28 | { | ||
29 | UserInPartitionRole, | ||
30 | PartitionRole_, | ||
31 | Component_, | ||
32 | User_, | ||
33 | } | ||
34 | |||
35 | public class ComPlusUserInPartitionRoleTuple : IntermediateTuple | ||
36 | { | ||
37 | public ComPlusUserInPartitionRoleTuple() : base(ComPlusTupleDefinitions.ComPlusUserInPartitionRole, null, null) | ||
38 | { | ||
39 | } | ||
40 | |||
41 | public ComPlusUserInPartitionRoleTuple(SourceLineNumber sourceLineNumber, Identifier id = null) : base(ComPlusTupleDefinitions.ComPlusUserInPartitionRole, sourceLineNumber, id) | ||
42 | { | ||
43 | } | ||
44 | |||
45 | public IntermediateField this[ComPlusUserInPartitionRoleTupleFields index] => this.Fields[(int)index]; | ||
46 | |||
47 | public string UserInPartitionRole | ||
48 | { | ||
49 | get => this.Fields[(int)ComPlusUserInPartitionRoleTupleFields.UserInPartitionRole].AsString(); | ||
50 | set => this.Set((int)ComPlusUserInPartitionRoleTupleFields.UserInPartitionRole, value); | ||
51 | } | ||
52 | |||
53 | public string PartitionRole_ | ||
54 | { | ||
55 | get => this.Fields[(int)ComPlusUserInPartitionRoleTupleFields.PartitionRole_].AsString(); | ||
56 | set => this.Set((int)ComPlusUserInPartitionRoleTupleFields.PartitionRole_, value); | ||
57 | } | ||
58 | |||
59 | public string Component_ | ||
60 | { | ||
61 | get => this.Fields[(int)ComPlusUserInPartitionRoleTupleFields.Component_].AsString(); | ||
62 | set => this.Set((int)ComPlusUserInPartitionRoleTupleFields.Component_, value); | ||
63 | } | ||
64 | |||
65 | public string User_ | ||
66 | { | ||
67 | get => this.Fields[(int)ComPlusUserInPartitionRoleTupleFields.User_].AsString(); | ||
68 | set => this.Set((int)ComPlusUserInPartitionRoleTupleFields.User_, value); | ||
69 | } | ||
70 | } | ||
71 | } \ No newline at end of file | ||
diff --git a/src/wixext/WixComPlusExtension.csproj b/src/wixext/WixComPlusExtension.csproj deleted file mode 100644 index 92cbacae..00000000 --- a/src/wixext/WixComPlusExtension.csproj +++ /dev/null | |||
@@ -1,50 +0,0 @@ | |||
1 | <?xml version="1.0" encoding="utf-8"?> | ||
2 | <!-- 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. --> | ||
3 | |||
4 | |||
5 | <Project DefaultTargets="Build" xmlns="http://schemas.microsoft.com/developer/msbuild/2003" ToolsVersion="4.0"> | ||
6 | <PropertyGroup> | ||
7 | <ProjectGuid>{1497B777-330B-4CFE-927A-22850CD24D64}</ProjectGuid> | ||
8 | <AssemblyName>WixComPlusExtension</AssemblyName> | ||
9 | <OutputType>Library</OutputType> | ||
10 | <RootNamespace>WixToolset.Extensions</RootNamespace> | ||
11 | </PropertyGroup> | ||
12 | <ItemGroup> | ||
13 | <Compile Include="AssemblyInfo.cs" /> | ||
14 | <Compile Include="ComPlusCompiler.cs" /> | ||
15 | <Compile Include="ComPlusDecompiler.cs" /> | ||
16 | <Compile Include="ComPlusExtensionData.cs" /> | ||
17 | <MsgGenSource Include="Data\messages.xml"> | ||
18 | <ResourcesLogicalName>$(RootNamespace).Data.Messages.resources</ResourcesLogicalName> | ||
19 | </MsgGenSource> | ||
20 | <EmbeddedFlattenedResource Include="Data\tables.xml"> | ||
21 | <LogicalName>$(RootNamespace).Data.tables.xml</LogicalName> | ||
22 | </EmbeddedFlattenedResource> | ||
23 | <EmbeddedFlattenedResource Include="Xsd\complus.xsd"> | ||
24 | <LogicalName>$(RootNamespace).Xsd.complus.xsd</LogicalName> | ||
25 | </EmbeddedFlattenedResource> | ||
26 | <XsdGenSource Include="Xsd\complus.xsd"> | ||
27 | <CommonNamespace>WixToolset.Data.Serialize</CommonNamespace> | ||
28 | <Namespace>WixToolset.Extensions.Serialize.ComPlus</Namespace> | ||
29 | </XsdGenSource> | ||
30 | <None Include="Xsd\complus.xsd"> | ||
31 | <Link>complus.xsd</Link> | ||
32 | <CopyToOutputDirectory>PreserveNewest</CopyToOutputDirectory> | ||
33 | </None> | ||
34 | <EmbeddedResource Include="$(OutputPath)\complus.wixlib"> | ||
35 | <Link>Data\complus.wixlib</Link> | ||
36 | </EmbeddedResource> | ||
37 | </ItemGroup> | ||
38 | <ItemGroup> | ||
39 | <Reference Include="System" /> | ||
40 | <Reference Include="System.Xml" /> | ||
41 | <Reference Include="System.Xml.Linq" /> | ||
42 | <ProjectReference Include="..\..\..\libs\WixToolset.Data\WixToolset.Data.csproj" /> | ||
43 | <ProjectReference Include="..\..\..\libs\WixToolset.Extensibility\WixToolset.Extensibility.csproj" /> | ||
44 | <ProjectReference Include="..\..\..\tools\wix\Wix.csproj" /> | ||
45 | <ProjectReference Include="..\wixlib\ComPlusExtension.wixproj"> | ||
46 | <ReferenceOutputAssembly>false</ReferenceOutputAssembly> | ||
47 | </ProjectReference> | ||
48 | </ItemGroup> | ||
49 | <Import Project="$([MSBuild]::GetDirectoryNameOfFileAbove($(MSBuildProjectDirectory), wix.proj))\tools\WixBuild.targets" /> | ||
50 | </Project> | ||
diff --git a/src/wixext/WixToolset.ComPlus.wixext.csproj b/src/wixext/WixToolset.ComPlus.wixext.csproj new file mode 100644 index 00000000..882dc7e1 --- /dev/null +++ b/src/wixext/WixToolset.ComPlus.wixext.csproj | |||
@@ -0,0 +1,33 @@ | |||
1 | <?xml version="1.0" encoding="utf-8"?> | ||
2 | <!-- 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. --> | ||
3 | |||
4 | <Project Sdk="Microsoft.NET.Sdk"> | ||
5 | <PropertyGroup> | ||
6 | <TargetFramework>netstandard2.0</TargetFramework> | ||
7 | <RootNamespace>WixToolset.ComPlus</RootNamespace> | ||
8 | <Description>WiX Toolset ComPlus Extension</Description> | ||
9 | <Title>WiX Toolset ComPlus Extension</Title> | ||
10 | <IsTool>true</IsTool> | ||
11 | <ContentTargetFolders>build</ContentTargetFolders> | ||
12 | </PropertyGroup> | ||
13 | |||
14 | <ItemGroup> | ||
15 | <Content Include="$(MSBuildThisFileName).targets" /> | ||
16 | <Content Include="complus.xsd" PackagePath="tools" /> | ||
17 | <EmbeddedResource Include="tables.xml" /> | ||
18 | <EmbeddedResource Include="$(OutputPath)..\complus.wixlib" /> | ||
19 | </ItemGroup> | ||
20 | |||
21 | <ItemGroup> | ||
22 | <PackageReference Include="WixToolset.Data" Version="4.0.*" PrivateAssets="all" /> | ||
23 | <PackageReference Include="WixToolset.Extensibility" Version="4.0.*" PrivateAssets="all" /> | ||
24 | </ItemGroup> | ||
25 | |||
26 | <ItemGroup> | ||
27 | <ProjectReference Include="..\wixlib\complus.wixproj" ReferenceOutputAssembly="false" Condition=" '$(NCrunch)'=='' " /> | ||
28 | </ItemGroup> | ||
29 | |||
30 | <ItemGroup> | ||
31 | <PackageReference Include="Nerdbank.GitVersioning" Version="2.1.65" PrivateAssets="all" /> | ||
32 | </ItemGroup> | ||
33 | </Project> | ||
diff --git a/src/wixext/WixToolset.ComPlus.wixext.targets b/src/wixext/WixToolset.ComPlus.wixext.targets new file mode 100644 index 00000000..8115b715 --- /dev/null +++ b/src/wixext/WixToolset.ComPlus.wixext.targets | |||
@@ -0,0 +1,11 @@ | |||
1 | <?xml version="1.0" encoding="utf-8"?> | ||
2 | <!-- 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. --> | ||
3 | |||
4 | <Project xmlns="http://schemas.microsoft.com/developer/msbuild/2003" ToolsVersion="4.0"> | ||
5 | <PropertyGroup> | ||
6 | <WixToolsetComPlusWixextPath Condition=" '$(WixToolsetComPlusWixextPath)' == '' ">$(MSBuildThisFileDirectory)..\tools\WixToolset.ComPlus.wixext.dll</WixToolsetComPlusWixextPath> | ||
7 | </PropertyGroup> | ||
8 | <ItemGroup> | ||
9 | <WixExtension Include="$(WixToolsetComPlusWixextPath)" /> | ||
10 | </ItemGroup> | ||
11 | </Project> | ||
diff --git a/src/wixext/messages.xml b/src/wixext/messages.xml deleted file mode 100644 index 66c0a9e6..00000000 --- a/src/wixext/messages.xml +++ /dev/null | |||
@@ -1,77 +0,0 @@ | |||
1 | <?xml version="1.0" encoding="utf-8"?> | ||
2 | <!-- 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. --> | ||
3 | |||
4 | |||
5 | <Messages Namespace="WixToolset.Extensions" Resources="Data.Messages" xmlns="http://schemas.microsoft.com/genmsgs/2004/07/messages"> | ||
6 | <Class Name="ComPlusErrors" ContainerName="ComPlusErrorEventArgs" BaseContainerName="MessageEventArgs"> | ||
7 | <Message Id="IllegalAttributeWithoutComponent" Number="6000"> | ||
8 | <Instance> | ||
9 | The {0}/@{1} attribute cannot be specified unless the element has a component as an ancestor. A {0} that does not have a component ancestor is not installed. | ||
10 | <Parameter Type="System.String" Name="elementName" /> | ||
11 | <Parameter Type="System.String" Name="attributeName" /> | ||
12 | </Instance> | ||
13 | </Message> | ||
14 | <Message Id="IllegalElementWithoutComponent" Number="6001"> | ||
15 | <Instance> | ||
16 | The {0} element cannot be specified unless the element has a component as an ancestor. A {0} that does not have a component ancestor is not installed. | ||
17 | <Parameter Type="System.String" Name="elementName" /> | ||
18 | </Instance> | ||
19 | </Message> | ||
20 | <Message Id="UnexpectedAttributeWithOtherValue" Number="6002"> | ||
21 | <Instance> | ||
22 | The {0}/@{1} attribute cannot coexist with the {2} attribute's value of '{3}'. | ||
23 | <Parameter Type="System.String" Name="elementName" /> | ||
24 | <Parameter Type="System.String" Name="attributeName" /> | ||
25 | <Parameter Type="System.String" Name="otherAttributeName" /> | ||
26 | <Parameter Type="System.String" Name="otherValue" /> | ||
27 | </Instance> | ||
28 | <Instance> | ||
29 | The {0}/@{1} attribute's value, '{2}', cannot coexist with the {3} attribute's value of '{4}'. | ||
30 | <Parameter Type="System.String" Name="elementName" /> | ||
31 | <Parameter Type="System.String" Name="attributeName" /> | ||
32 | <Parameter Type="System.String" Name="value" /> | ||
33 | <Parameter Type="System.String" Name="otherAttributeName" /> | ||
34 | <Parameter Type="System.String" Name="otherValue" /> | ||
35 | </Instance> | ||
36 | </Message> | ||
37 | <Message Id="UnexpectedAttributeWithoutOtherValue" Number="6003"> | ||
38 | <Instance> | ||
39 | The {0}/@{1} cannot be provided unless the {2} attribute is provided with a value of '{3}'. | ||
40 | <Parameter Type="System.String" Name="elementName" /> | ||
41 | <Parameter Type="System.String" Name="attributeName" /> | ||
42 | <Parameter Type="System.String" Name="otherAttributeName" /> | ||
43 | <Parameter Type="System.String" Name="otherValue" /> | ||
44 | </Instance> | ||
45 | </Message> | ||
46 | <Message Id="RequiredAttributeUnderComponent" Number="6004"> | ||
47 | <Instance> | ||
48 | The {0}/@{1} attribute must be provided when {0} element is nested under a component. | ||
49 | <Parameter Type="System.String" Name="elementName" /> | ||
50 | <Parameter Type="System.String" Name="attributeName" /> | ||
51 | </Instance> | ||
52 | </Message> | ||
53 | <Message Id="RequiredAttribute" Number="6005"> | ||
54 | <Instance> | ||
55 | A {0} element must have either a {1} attribute or a {2} attribute, or both set. | ||
56 | <Parameter Type="System.String" Name="elementName" /> | ||
57 | <Parameter Type="System.String" Name="attributeName1" /> | ||
58 | <Parameter Type="System.String" Name="attributeName2" /> | ||
59 | </Instance> | ||
60 | </Message> | ||
61 | <Message Id="RequiredAttributeNotUnderComponent" Number="6006"> | ||
62 | <Instance> | ||
63 | A {0} element not nested under a component must have either a {1} attribute or a {2} attribute, or both set. | ||
64 | <Parameter Type="System.String" Name="elementName" /> | ||
65 | <Parameter Type="System.String" Name="attributeName1" /> | ||
66 | <Parameter Type="System.String" Name="attributeName2" /> | ||
67 | </Instance> | ||
68 | </Message> | ||
69 | </Class> | ||
70 | <Class Name="ComPlusWarnings" ContainerName="ComPlusWarningEventArgs" BaseContainerName="MessageEventArgs"> | ||
71 | <Message Id="MissingComponents" Number="6007"> | ||
72 | <Instance>The ComPlusAssembly element has a Type attribute with a value of 'native', but the element does not contain any ComPlusComponent elements. All components contained in a native assembly must be listed, or they will not be correctly removed during uninstall.</Instance> | ||
73 | </Message> | ||
74 | </Class> | ||
75 | <Class Name="ComPlusVerboses" ContainerName="ComPlusVerboseEventArgs" BaseContainerName="MessageEventArgs"> | ||
76 | </Class> | ||
77 | </Messages> | ||