diff options
author | Rob Mensching <rob@firegiant.com> | 2019-10-07 07:32:59 -0700 |
---|---|---|
committer | Rob Mensching <rob@firegiant.com> | 2019-10-07 11:27:21 -0700 |
commit | cece10e037c6daacc8d2def1a9057882aec47fe4 (patch) | |
tree | 8e79c0d5b30ed8e663c077b2d9ce2b829b76ab84 | |
parent | 7462108b714d07161126dcedda5312daef54ae13 (diff) | |
download | wix-cece10e037c6daacc8d2def1a9057882aec47fe4.tar.gz wix-cece10e037c6daacc8d2def1a9057882aec47fe4.tar.bz2 wix-cece10e037c6daacc8d2def1a9057882aec47fe4.zip |
Add support for long fields and fix up Bundle and many other tuples
39 files changed, 761 insertions, 976 deletions
diff --git a/src/WixToolset.Data/BundleApprovedExeForElevationAttributes.cs b/src/WixToolset.Data/BundleApprovedExeForElevationAttributes.cs deleted file mode 100644 index 240c2160..00000000 --- a/src/WixToolset.Data/BundleApprovedExeForElevationAttributes.cs +++ /dev/null | |||
@@ -1,16 +0,0 @@ | |||
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.Data | ||
4 | { | ||
5 | using System; | ||
6 | |||
7 | /// <summary> | ||
8 | /// Attributes available for an ApprovedExeForElevation. | ||
9 | /// </summary> | ||
10 | [Flags] | ||
11 | public enum BundleApprovedExeForElevationAttributes : int | ||
12 | { | ||
13 | None = 0x0, | ||
14 | Win64 = 0x1, | ||
15 | } | ||
16 | } | ||
diff --git a/src/WixToolset.Data/Burn/BurnConstants.cs b/src/WixToolset.Data/Burn/BurnConstants.cs new file mode 100644 index 00000000..9803a73a --- /dev/null +++ b/src/WixToolset.Data/Burn/BurnConstants.cs | |||
@@ -0,0 +1,19 @@ | |||
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.Data.Burn | ||
4 | { | ||
5 | public static class BurnConstants | ||
6 | { | ||
7 | public const string BurnUXContainerName = "WixUXContainer"; | ||
8 | public const string BurnDefaultAttachedContainerName = "WixAttachedContainer"; | ||
9 | public const string BundleLayoutOnlyPayloadsName = "BundleLayoutOnlyPayloads"; | ||
10 | |||
11 | public const string BootstrapperApplicationDataTupleDefinitionTag = "WixBootstrapperApplicationData"; | ||
12 | |||
13 | // The following constants must stay in sync with src\burn\engine\core.h | ||
14 | public const string BURN_BUNDLE_NAME = "WixBundleName"; | ||
15 | public const string BURN_BUNDLE_ORIGINAL_SOURCE = "WixBundleOriginalSource"; | ||
16 | public const string BURN_BUNDLE_ORIGINAL_SOURCE_FOLDER = "WixBundleOriginalSourceFolder"; | ||
17 | public const string BURN_BUNDLE_LAST_USED_SOURCE = "WixBundleLastUsedSource"; | ||
18 | } | ||
19 | } | ||
diff --git a/src/WixToolset.Data/IntermediateField.cs b/src/WixToolset.Data/IntermediateField.cs index 5b511d02..2310f447 100644 --- a/src/WixToolset.Data/IntermediateField.cs +++ b/src/WixToolset.Data/IntermediateField.cs | |||
@@ -27,6 +27,10 @@ namespace WixToolset.Data | |||
27 | 27 | ||
28 | public static explicit operator bool? (IntermediateField field) => field.AsNullableBool(); | 28 | public static explicit operator bool? (IntermediateField field) => field.AsNullableBool(); |
29 | 29 | ||
30 | public static explicit operator long(IntermediateField field) => field.AsLargeNumber(); | ||
31 | |||
32 | public static explicit operator long?(IntermediateField field) => field.AsNullableLargeNumber(); | ||
33 | |||
30 | public static explicit operator int(IntermediateField field) => field.AsNumber(); | 34 | public static explicit operator int(IntermediateField field) => field.AsNumber(); |
31 | 35 | ||
32 | public static explicit operator int? (IntermediateField field) => field.AsNullableNumber(); | 36 | public static explicit operator int? (IntermediateField field) => field.AsNullableNumber(); |
diff --git a/src/WixToolset.Data/IntermediateFieldExtensions.cs b/src/WixToolset.Data/IntermediateFieldExtensions.cs index a73a6552..5d2ddf06 100644 --- a/src/WixToolset.Data/IntermediateFieldExtensions.cs +++ b/src/WixToolset.Data/IntermediateFieldExtensions.cs | |||
@@ -20,20 +20,21 @@ namespace WixToolset.Data | |||
20 | 20 | ||
21 | switch (field.Definition.Type) | 21 | switch (field.Definition.Type) |
22 | { | 22 | { |
23 | case IntermediateFieldType.Bool: | 23 | case IntermediateFieldType.Bool: |
24 | return field.Value.AsBool(); | 24 | return field.Value.AsBool(); |
25 | 25 | ||
26 | case IntermediateFieldType.Number: | 26 | case IntermediateFieldType.LargeNumber: |
27 | return field.Value.AsNumber() != 0; | 27 | case IntermediateFieldType.Number: |
28 | return field.Value.AsLargeNumber() != 0; | ||
28 | 29 | ||
29 | case IntermediateFieldType.String: | 30 | case IntermediateFieldType.String: |
30 | return !String.IsNullOrEmpty(field.Value.AsString()); | 31 | return !String.IsNullOrEmpty(field.Value.AsString()); |
31 | 32 | ||
32 | case IntermediateFieldType.Path: | 33 | case IntermediateFieldType.Path: |
33 | return !String.IsNullOrEmpty(field.Value.AsPath()?.Path); | 34 | return !String.IsNullOrEmpty(field.Value.AsPath()?.Path); |
34 | 35 | ||
35 | default: | 36 | default: |
36 | throw new InvalidCastException($"Cannot convert field {field.Name} with type {field.Type} to boolean"); | 37 | throw new InvalidCastException($"Cannot convert field {field.Name} with type {field.Type} to boolean"); |
37 | } | 38 | } |
38 | } | 39 | } |
39 | 40 | ||
@@ -46,20 +47,68 @@ namespace WixToolset.Data | |||
46 | 47 | ||
47 | switch (field.Definition.Type) | 48 | switch (field.Definition.Type) |
48 | { | 49 | { |
49 | case IntermediateFieldType.Bool: | 50 | case IntermediateFieldType.Bool: |
50 | return field.Value.AsBool(); | 51 | return field.Value.AsBool(); |
51 | 52 | ||
52 | case IntermediateFieldType.Number: | 53 | case IntermediateFieldType.LargeNumber: |
53 | return field.Value.AsNumber() != 0; | 54 | case IntermediateFieldType.Number: |
55 | return field.Value.AsLargeNumber() != 0; | ||
54 | 56 | ||
55 | case IntermediateFieldType.String: | 57 | case IntermediateFieldType.String: |
56 | return !String.IsNullOrEmpty(field.Value.AsString()); | 58 | return !String.IsNullOrEmpty(field.Value.AsString()); |
57 | 59 | ||
58 | default: | 60 | default: |
59 | throw new InvalidCastException($"Cannot convert field {field.Name} with type {field.Type} to boolean"); | 61 | throw new InvalidCastException($"Cannot convert field {field.Name} with type {field.Type} to boolean"); |
60 | } | 62 | } |
61 | } | 63 | } |
62 | 64 | ||
65 | public static long AsLargeNumber(this IntermediateField field) | ||
66 | { | ||
67 | if (field == null || field.Value == null || field.Value.Data == null) | ||
68 | { | ||
69 | return 0; | ||
70 | } | ||
71 | |||
72 | switch (field.Definition.Type) | ||
73 | { | ||
74 | case IntermediateFieldType.Bool: | ||
75 | return field.Value.AsBool() ? 1 : 0; | ||
76 | |||
77 | case IntermediateFieldType.LargeNumber: | ||
78 | case IntermediateFieldType.Number: | ||
79 | return field.Value.AsLargeNumber(); | ||
80 | |||
81 | case IntermediateFieldType.String: | ||
82 | return Convert.ToInt64(field.Value.AsString()); | ||
83 | |||
84 | default: | ||
85 | throw new InvalidCastException($"Cannot convert field {field.Name} with type {field.Type} to large number"); | ||
86 | } | ||
87 | } | ||
88 | |||
89 | public static long? AsNullableLargeNumber(this IntermediateField field) | ||
90 | { | ||
91 | if (field == null || field.Value == null || field.Value.Data == null) | ||
92 | { | ||
93 | return null; | ||
94 | } | ||
95 | |||
96 | switch (field.Definition.Type) | ||
97 | { | ||
98 | case IntermediateFieldType.Bool: | ||
99 | return field.Value.AsBool() ? 1 : 0; | ||
100 | |||
101 | case IntermediateFieldType.LargeNumber: | ||
102 | case IntermediateFieldType.Number: | ||
103 | return field.Value.AsLargeNumber(); | ||
104 | |||
105 | case IntermediateFieldType.String: | ||
106 | return Convert.ToInt64(field.Value.AsString()); | ||
107 | |||
108 | default: | ||
109 | throw new InvalidCastException($"Cannot convert field {field.Name} with type {field.Type} to large number"); | ||
110 | } | ||
111 | } | ||
63 | 112 | ||
64 | public static int AsNumber(this IntermediateField field) | 113 | public static int AsNumber(this IntermediateField field) |
65 | { | 114 | { |
@@ -70,17 +119,18 @@ namespace WixToolset.Data | |||
70 | 119 | ||
71 | switch (field.Definition.Type) | 120 | switch (field.Definition.Type) |
72 | { | 121 | { |
73 | case IntermediateFieldType.Bool: | 122 | case IntermediateFieldType.Bool: |
74 | return field.Value.AsBool() ? 1 : 0; | 123 | return field.Value.AsBool() ? 1 : 0; |
75 | 124 | ||
76 | case IntermediateFieldType.Number: | 125 | case IntermediateFieldType.LargeNumber: |
77 | return field.Value.AsNumber(); | 126 | case IntermediateFieldType.Number: |
127 | return field.Value.AsNumber(); | ||
78 | 128 | ||
79 | case IntermediateFieldType.String: | 129 | case IntermediateFieldType.String: |
80 | return Convert.ToInt32(field.Value.AsString()); | 130 | return Convert.ToInt32(field.Value.AsString()); |
81 | 131 | ||
82 | default: | 132 | default: |
83 | throw new InvalidCastException($"Cannot convert field {field.Name} with type {field.Type} to number"); | 133 | throw new InvalidCastException($"Cannot convert field {field.Name} with type {field.Type} to number"); |
84 | } | 134 | } |
85 | } | 135 | } |
86 | 136 | ||
@@ -93,17 +143,18 @@ namespace WixToolset.Data | |||
93 | 143 | ||
94 | switch (field.Definition.Type) | 144 | switch (field.Definition.Type) |
95 | { | 145 | { |
96 | case IntermediateFieldType.Bool: | 146 | case IntermediateFieldType.Bool: |
97 | return field.Value.AsBool() ? 1 : 0; | 147 | return field.Value.AsBool() ? 1 : 0; |
98 | 148 | ||
99 | case IntermediateFieldType.Number: | 149 | case IntermediateFieldType.LargeNumber: |
100 | return field.Value.AsNumber(); | 150 | case IntermediateFieldType.Number: |
151 | return field.Value.AsNumber(); | ||
101 | 152 | ||
102 | case IntermediateFieldType.String: | 153 | case IntermediateFieldType.String: |
103 | return Convert.ToInt32(field.Value.AsString()); | 154 | return Convert.ToInt32(field.Value.AsString()); |
104 | 155 | ||
105 | default: | 156 | default: |
106 | throw new InvalidCastException($"Cannot convert field {field.Name} with type {field.Type} to number"); | 157 | throw new InvalidCastException($"Cannot convert field {field.Name} with type {field.Type} to number"); |
107 | } | 158 | } |
108 | } | 159 | } |
109 | 160 | ||
@@ -116,14 +167,14 @@ namespace WixToolset.Data | |||
116 | 167 | ||
117 | switch (field.Definition.Type) | 168 | switch (field.Definition.Type) |
118 | { | 169 | { |
119 | case IntermediateFieldType.String: | 170 | case IntermediateFieldType.String: |
120 | return new IntermediateFieldPathValue { Path = field.Value.AsString() }; | 171 | return new IntermediateFieldPathValue { Path = field.Value.AsString() }; |
121 | 172 | ||
122 | case IntermediateFieldType.Path: | 173 | case IntermediateFieldType.Path: |
123 | return field.Value.AsPath(); | 174 | return field.Value.AsPath(); |
124 | 175 | ||
125 | default: | 176 | default: |
126 | throw new InvalidCastException($"Cannot convert field {field.Name} with type {field.Type} to string"); | 177 | throw new InvalidCastException($"Cannot convert field {field.Name} with type {field.Type} to string"); |
127 | } | 178 | } |
128 | } | 179 | } |
129 | 180 | ||
@@ -136,20 +187,21 @@ namespace WixToolset.Data | |||
136 | 187 | ||
137 | switch (field.Definition.Type) | 188 | switch (field.Definition.Type) |
138 | { | 189 | { |
139 | case IntermediateFieldType.Bool: | 190 | case IntermediateFieldType.Bool: |
140 | return field.Value.AsBool() ? "true" : "false"; | 191 | return field.Value.AsBool() ? "true" : "false"; |
141 | 192 | ||
142 | case IntermediateFieldType.Number: | 193 | case IntermediateFieldType.LargeNumber: |
143 | return field.Value.AsNumber().ToString(); | 194 | case IntermediateFieldType.Number: |
195 | return field.Value.AsLargeNumber().ToString(); | ||
144 | 196 | ||
145 | case IntermediateFieldType.String: | 197 | case IntermediateFieldType.String: |
146 | return field.Value.AsString(); | 198 | return field.Value.AsString(); |
147 | 199 | ||
148 | case IntermediateFieldType.Path: | 200 | case IntermediateFieldType.Path: |
149 | return field.Value.AsPath()?.Path; | 201 | return field.Value.AsPath()?.Path; |
150 | 202 | ||
151 | default: | 203 | default: |
152 | throw new InvalidCastException($"Cannot convert field {field.Name} with type {field.Type} to string"); | 204 | throw new InvalidCastException($"Cannot convert field {field.Name} with type {field.Type} to string"); |
153 | } | 205 | } |
154 | } | 206 | } |
155 | 207 | ||
@@ -169,27 +221,27 @@ namespace WixToolset.Data | |||
169 | 221 | ||
170 | switch (field.Type) | 222 | switch (field.Type) |
171 | { | 223 | { |
172 | case IntermediateFieldType.Bool: | 224 | case IntermediateFieldType.Bool: |
173 | data = value; | 225 | data = value; |
174 | break; | 226 | break; |
175 | 227 | ||
176 | case IntermediateFieldType.LargeNumber: | 228 | case IntermediateFieldType.LargeNumber: |
177 | data = value ? (long)1 : (long)0; | 229 | data = value ? (long)1 : (long)0; |
178 | break; | 230 | break; |
179 | 231 | ||
180 | case IntermediateFieldType.Number: | 232 | case IntermediateFieldType.Number: |
181 | data = value ? 1 : 0; | 233 | data = value ? 1 : 0; |
182 | break; | 234 | break; |
183 | 235 | ||
184 | case IntermediateFieldType.Path: | 236 | case IntermediateFieldType.Path: |
185 | throw new ArgumentException($"Cannot convert bool '{value}' to a 'Path' field type.", nameof(value)); | 237 | throw new ArgumentException($"Cannot convert bool '{value}' to a 'Path' field type.", nameof(value)); |
186 | 238 | ||
187 | case IntermediateFieldType.String: | 239 | case IntermediateFieldType.String: |
188 | data = value ? "true" : "false"; | 240 | data = value ? "true" : "false"; |
189 | break; | 241 | break; |
190 | 242 | ||
191 | default: | 243 | default: |
192 | throw new ArgumentOutOfRangeException(nameof(value), $"Unknown intermediate field type: {value.GetType()}"); | 244 | throw new ArgumentOutOfRangeException(nameof(value), $"Unknown intermediate field type: {value.GetType()}"); |
193 | }; | 245 | }; |
194 | 246 | ||
195 | return AssignFieldValue(field, data); | 247 | return AssignFieldValue(field, data); |
@@ -216,27 +268,27 @@ namespace WixToolset.Data | |||
216 | 268 | ||
217 | switch (field.Type) | 269 | switch (field.Type) |
218 | { | 270 | { |
219 | case IntermediateFieldType.Bool: | 271 | case IntermediateFieldType.Bool: |
220 | data = (value != 0); | 272 | data = (value != 0); |
221 | break; | 273 | break; |
222 | 274 | ||
223 | case IntermediateFieldType.LargeNumber: | 275 | case IntermediateFieldType.LargeNumber: |
224 | data = value; | 276 | data = value; |
225 | break; | 277 | break; |
226 | 278 | ||
227 | case IntermediateFieldType.Number: | 279 | case IntermediateFieldType.Number: |
228 | data = (int)value; | 280 | data = (int)value; |
229 | break; | 281 | break; |
230 | 282 | ||
231 | case IntermediateFieldType.Path: | 283 | case IntermediateFieldType.Path: |
232 | throw new ArgumentException($"Cannot convert large number '{value}' to a 'Path' field type.", nameof(value)); | 284 | throw new ArgumentException($"Cannot convert large number '{value}' to a 'Path' field type.", nameof(value)); |
233 | 285 | ||
234 | case IntermediateFieldType.String: | 286 | case IntermediateFieldType.String: |
235 | data = value.ToString(); | 287 | data = value.ToString(); |
236 | break; | 288 | break; |
237 | 289 | ||
238 | default: | 290 | default: |
239 | throw new ArgumentOutOfRangeException(nameof(value), $"Unknown intermediate field type: {value.GetType()}"); | 291 | throw new ArgumentOutOfRangeException(nameof(value), $"Unknown intermediate field type: {value.GetType()}"); |
240 | }; | 292 | }; |
241 | 293 | ||
242 | return AssignFieldValue(field, data); | 294 | return AssignFieldValue(field, data); |
@@ -263,27 +315,27 @@ namespace WixToolset.Data | |||
263 | 315 | ||
264 | switch (field.Type) | 316 | switch (field.Type) |
265 | { | 317 | { |
266 | case IntermediateFieldType.Bool: | 318 | case IntermediateFieldType.Bool: |
267 | data = (value != 0); | 319 | data = (value != 0); |
268 | break; | 320 | break; |
269 | 321 | ||
270 | case IntermediateFieldType.LargeNumber: | 322 | case IntermediateFieldType.LargeNumber: |
271 | data = (long)value; | 323 | data = (long)value; |
272 | break; | 324 | break; |
273 | 325 | ||
274 | case IntermediateFieldType.Number: | 326 | case IntermediateFieldType.Number: |
275 | data = value; | 327 | data = value; |
276 | break; | 328 | break; |
277 | 329 | ||
278 | case IntermediateFieldType.Path: | 330 | case IntermediateFieldType.Path: |
279 | throw new ArgumentException($"Cannot convert number '{value}' to a 'Path' field type.", nameof(value)); | 331 | throw new ArgumentException($"Cannot convert number '{value}' to a 'Path' field type.", nameof(value)); |
280 | 332 | ||
281 | case IntermediateFieldType.String: | 333 | case IntermediateFieldType.String: |
282 | data = value.ToString(); | 334 | data = value.ToString(); |
283 | break; | 335 | break; |
284 | 336 | ||
285 | default: | 337 | default: |
286 | throw new ArgumentOutOfRangeException(nameof(value), $"Unknown intermediate field type: {value.GetType()}"); | 338 | throw new ArgumentOutOfRangeException(nameof(value), $"Unknown intermediate field type: {value.GetType()}"); |
287 | }; | 339 | }; |
288 | 340 | ||
289 | return AssignFieldValue(field, data); | 341 | return AssignFieldValue(field, data); |
@@ -315,25 +367,25 @@ namespace WixToolset.Data | |||
315 | { | 367 | { |
316 | switch (field.Type) | 368 | switch (field.Type) |
317 | { | 369 | { |
318 | case IntermediateFieldType.Bool: | 370 | case IntermediateFieldType.Bool: |
319 | throw new ArgumentException($"Cannot convert path '{value.Path}' to a 'bool' field type.", nameof(value)); | 371 | throw new ArgumentException($"Cannot convert path '{value.Path}' to a 'bool' field type.", nameof(value)); |
320 | 372 | ||
321 | case IntermediateFieldType.LargeNumber: | 373 | case IntermediateFieldType.LargeNumber: |
322 | throw new ArgumentException($"Cannot convert path '{value.Path}' to a 'large number' field type.", nameof(value)); | 374 | throw new ArgumentException($"Cannot convert path '{value.Path}' to a 'large number' field type.", nameof(value)); |
323 | 375 | ||
324 | case IntermediateFieldType.Number: | 376 | case IntermediateFieldType.Number: |
325 | throw new ArgumentException($"Cannot convert path '{value.Path}' to a 'number' field type.", nameof(value)); | 377 | throw new ArgumentException($"Cannot convert path '{value.Path}' to a 'number' field type.", nameof(value)); |
326 | 378 | ||
327 | case IntermediateFieldType.Path: | 379 | case IntermediateFieldType.Path: |
328 | data = value; | 380 | data = value; |
329 | break; | 381 | break; |
330 | 382 | ||
331 | case IntermediateFieldType.String: | 383 | case IntermediateFieldType.String: |
332 | data = value.Path; | 384 | data = value.Path; |
333 | break; | 385 | break; |
334 | 386 | ||
335 | default: | 387 | default: |
336 | throw new ArgumentOutOfRangeException(nameof(value), $"Unknown intermediate field type: {value.GetType()}"); | 388 | throw new ArgumentOutOfRangeException(nameof(value), $"Unknown intermediate field type: {value.GetType()}"); |
337 | }; | 389 | }; |
338 | } | 390 | } |
339 | 391 | ||
@@ -356,53 +408,53 @@ namespace WixToolset.Data | |||
356 | { | 408 | { |
357 | switch (field.Type) | 409 | switch (field.Type) |
358 | { | 410 | { |
359 | case IntermediateFieldType.Bool: | 411 | case IntermediateFieldType.Bool: |
360 | if (value.Equals("yes", StringComparison.OrdinalIgnoreCase) || value.Equals("true", StringComparison.OrdinalIgnoreCase)) | 412 | if (value.Equals("yes", StringComparison.OrdinalIgnoreCase) || value.Equals("true", StringComparison.OrdinalIgnoreCase)) |
361 | { | 413 | { |
362 | data = true; | 414 | data = true; |
363 | } | 415 | } |
364 | else if (value.Equals("no", StringComparison.OrdinalIgnoreCase) || value.Equals("false", StringComparison.OrdinalIgnoreCase)) | 416 | else if (value.Equals("no", StringComparison.OrdinalIgnoreCase) || value.Equals("false", StringComparison.OrdinalIgnoreCase)) |
365 | { | 417 | { |
366 | data = false; | 418 | data = false; |
367 | } | 419 | } |
368 | else | 420 | else |
369 | { | 421 | { |
370 | throw new ArgumentException($"Cannot convert string '{value}' to a 'bool' field type.", nameof(value)); | 422 | throw new ArgumentException($"Cannot convert string '{value}' to a 'bool' field type.", nameof(value)); |
371 | } | 423 | } |
372 | break; | 424 | break; |
373 | 425 | ||
374 | case IntermediateFieldType.LargeNumber: | 426 | case IntermediateFieldType.LargeNumber: |
375 | if (Int64.TryParse(value, out var largeNumber)) | 427 | if (Int64.TryParse(value, out var largeNumber)) |
376 | { | 428 | { |
377 | data = largeNumber; | 429 | data = largeNumber; |
378 | } | 430 | } |
379 | else | 431 | else |
380 | { | 432 | { |
381 | throw new ArgumentException($"Cannot convert string '{value}' to a 'large number' field type.", nameof(value)); | 433 | throw new ArgumentException($"Cannot convert string '{value}' to a 'large number' field type.", nameof(value)); |
382 | } | 434 | } |
383 | break; | 435 | break; |
384 | 436 | ||
385 | case IntermediateFieldType.Number: | 437 | case IntermediateFieldType.Number: |
386 | if (Int32.TryParse(value, out var number)) | 438 | if (Int32.TryParse(value, out var number)) |
387 | { | 439 | { |
388 | data = number; | 440 | data = number; |
389 | } | 441 | } |
390 | else | 442 | else |
391 | { | 443 | { |
392 | throw new ArgumentException($"Cannot convert string '{value}' to a 'number' field type.", nameof(value)); | 444 | throw new ArgumentException($"Cannot convert string '{value}' to a 'number' field type.", nameof(value)); |
393 | } | 445 | } |
394 | break; | 446 | break; |
395 | 447 | ||
396 | case IntermediateFieldType.Path: | 448 | case IntermediateFieldType.Path: |
397 | data = new IntermediateFieldPathValue { Path = value }; | 449 | data = new IntermediateFieldPathValue { Path = value }; |
398 | break; | 450 | break; |
399 | 451 | ||
400 | case IntermediateFieldType.String: | 452 | case IntermediateFieldType.String: |
401 | data = value; | 453 | data = value; |
402 | break; | 454 | break; |
403 | 455 | ||
404 | default: | 456 | default: |
405 | throw new ArgumentOutOfRangeException(nameof(value), $"Unknown intermediate field type: {value.GetType()}"); | 457 | throw new ArgumentOutOfRangeException(nameof(value), $"Unknown intermediate field type: {value.GetType()}"); |
406 | }; | 458 | }; |
407 | } | 459 | } |
408 | 460 | ||
diff --git a/src/WixToolset.Data/IntermediateFieldValueExtensions.cs b/src/WixToolset.Data/IntermediateFieldValueExtensions.cs index f9322e09..317dfc7f 100644 --- a/src/WixToolset.Data/IntermediateFieldValueExtensions.cs +++ b/src/WixToolset.Data/IntermediateFieldValueExtensions.cs | |||
@@ -45,6 +45,45 @@ namespace WixToolset.Data | |||
45 | return (bool)value.Data; | 45 | return (bool)value.Data; |
46 | } | 46 | } |
47 | 47 | ||
48 | public static long AsLargeNumber(this IntermediateFieldValue value) | ||
49 | { | ||
50 | var result = value.AsNullableLargeNumber(); | ||
51 | return result ?? 0; | ||
52 | } | ||
53 | |||
54 | public static long? AsNullableLargeNumber(this IntermediateFieldValue value) | ||
55 | { | ||
56 | if (value?.Data == null) | ||
57 | { | ||
58 | return null; | ||
59 | } | ||
60 | else if (value.Data is int n) | ||
61 | { | ||
62 | return n; | ||
63 | } | ||
64 | else if (value.Data is long l) | ||
65 | { | ||
66 | return l; | ||
67 | } | ||
68 | else if (value.Data is bool b) | ||
69 | { | ||
70 | return b ? 1 : 0; | ||
71 | } | ||
72 | else if (value.Data is string s) | ||
73 | { | ||
74 | try | ||
75 | { | ||
76 | return Convert.ToInt32(s); | ||
77 | } | ||
78 | catch (FormatException) | ||
79 | { | ||
80 | throw new WixException(ErrorMessages.UnableToConvertFieldToNumber(s)); | ||
81 | } | ||
82 | } | ||
83 | |||
84 | return (long)value.Data; | ||
85 | } | ||
86 | |||
48 | public static int AsNumber(this IntermediateFieldValue value) | 87 | public static int AsNumber(this IntermediateFieldValue value) |
49 | { | 88 | { |
50 | var result = value.AsNullableNumber(); | 89 | var result = value.AsNullableNumber(); |
diff --git a/src/WixToolset.Data/Tuples/IconTuple.cs b/src/WixToolset.Data/Tuples/IconTuple.cs index 0e8c9fd7..e9ed93b2 100644 --- a/src/WixToolset.Data/Tuples/IconTuple.cs +++ b/src/WixToolset.Data/Tuples/IconTuple.cs | |||
@@ -35,9 +35,9 @@ namespace WixToolset.Data.Tuples | |||
35 | 35 | ||
36 | public IntermediateField this[IconTupleFields index] => this.Fields[(int)index]; | 36 | public IntermediateField this[IconTupleFields index] => this.Fields[(int)index]; |
37 | 37 | ||
38 | public string Data | 38 | public IntermediateFieldPathValue Data |
39 | { | 39 | { |
40 | get => (string)this.Fields[(int)IconTupleFields.Data]; | 40 | get => this.Fields[(int)IconTupleFields.Data].AsPath(); |
41 | set => this.Set((int)IconTupleFields.Data, value); | 41 | set => this.Set((int)IconTupleFields.Data, value); |
42 | } | 42 | } |
43 | } | 43 | } |
diff --git a/src/WixToolset.Data/Tuples/MsiFileHashTuple.cs b/src/WixToolset.Data/Tuples/MsiFileHashTuple.cs index a83093e9..10aa801d 100644 --- a/src/WixToolset.Data/Tuples/MsiFileHashTuple.cs +++ b/src/WixToolset.Data/Tuples/MsiFileHashTuple.cs | |||
@@ -10,7 +10,6 @@ namespace WixToolset.Data | |||
10 | TupleDefinitionType.MsiFileHash, | 10 | TupleDefinitionType.MsiFileHash, |
11 | new[] | 11 | new[] |
12 | { | 12 | { |
13 | new IntermediateFieldDefinition(nameof(MsiFileHashTupleFields.FileRef), IntermediateFieldType.String), | ||
14 | new IntermediateFieldDefinition(nameof(MsiFileHashTupleFields.Options), IntermediateFieldType.Number), | 13 | new IntermediateFieldDefinition(nameof(MsiFileHashTupleFields.Options), IntermediateFieldType.Number), |
15 | new IntermediateFieldDefinition(nameof(MsiFileHashTupleFields.HashPart1), IntermediateFieldType.Number), | 14 | new IntermediateFieldDefinition(nameof(MsiFileHashTupleFields.HashPart1), IntermediateFieldType.Number), |
16 | new IntermediateFieldDefinition(nameof(MsiFileHashTupleFields.HashPart2), IntermediateFieldType.Number), | 15 | new IntermediateFieldDefinition(nameof(MsiFileHashTupleFields.HashPart2), IntermediateFieldType.Number), |
@@ -25,7 +24,6 @@ namespace WixToolset.Data.Tuples | |||
25 | { | 24 | { |
26 | public enum MsiFileHashTupleFields | 25 | public enum MsiFileHashTupleFields |
27 | { | 26 | { |
28 | FileRef, | ||
29 | Options, | 27 | Options, |
30 | HashPart1, | 28 | HashPart1, |
31 | HashPart2, | 29 | HashPart2, |
@@ -45,12 +43,6 @@ namespace WixToolset.Data.Tuples | |||
45 | 43 | ||
46 | public IntermediateField this[MsiFileHashTupleFields index] => this.Fields[(int)index]; | 44 | public IntermediateField this[MsiFileHashTupleFields index] => this.Fields[(int)index]; |
47 | 45 | ||
48 | public string FileRef | ||
49 | { | ||
50 | get => (string)this.Fields[(int)MsiFileHashTupleFields.FileRef]; | ||
51 | set => this.Set((int)MsiFileHashTupleFields.FileRef, value); | ||
52 | } | ||
53 | |||
54 | public int Options | 46 | public int Options |
55 | { | 47 | { |
56 | get => (int)this.Fields[(int)MsiFileHashTupleFields.Options]; | 48 | get => (int)this.Fields[(int)MsiFileHashTupleFields.Options]; |
diff --git a/src/WixToolset.Data/Tuples/ProvidesDependencyTuple.cs b/src/WixToolset.Data/Tuples/ProvidesDependencyTuple.cs new file mode 100644 index 00000000..a6337bdf --- /dev/null +++ b/src/WixToolset.Data/Tuples/ProvidesDependencyTuple.cs | |||
@@ -0,0 +1,84 @@ | |||
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.Data | ||
4 | { | ||
5 | using WixToolset.Data.Tuples; | ||
6 | |||
7 | public static partial class TupleDefinitions | ||
8 | { | ||
9 | public static readonly IntermediateTupleDefinition ProvidesDependency = new IntermediateTupleDefinition( | ||
10 | TupleDefinitionType.ProvidesDependency, | ||
11 | new[] | ||
12 | { | ||
13 | new IntermediateFieldDefinition(nameof(ProvidesDependencyTupleFields.PackageRef), IntermediateFieldType.String), | ||
14 | new IntermediateFieldDefinition(nameof(ProvidesDependencyTupleFields.Key), IntermediateFieldType.String), | ||
15 | new IntermediateFieldDefinition(nameof(ProvidesDependencyTupleFields.Version), IntermediateFieldType.String), | ||
16 | new IntermediateFieldDefinition(nameof(ProvidesDependencyTupleFields.DisplayName), IntermediateFieldType.String), | ||
17 | new IntermediateFieldDefinition(nameof(ProvidesDependencyTupleFields.Attributes), IntermediateFieldType.Number), | ||
18 | new IntermediateFieldDefinition(nameof(ProvidesDependencyTupleFields.Imported), IntermediateFieldType.Bool), | ||
19 | }, | ||
20 | typeof(ProvidesDependencyTuple)); | ||
21 | } | ||
22 | } | ||
23 | |||
24 | namespace WixToolset.Data.Tuples | ||
25 | { | ||
26 | public enum ProvidesDependencyTupleFields | ||
27 | { | ||
28 | PackageRef, | ||
29 | Key, | ||
30 | Version, | ||
31 | DisplayName, | ||
32 | Attributes, | ||
33 | Imported, | ||
34 | } | ||
35 | |||
36 | public class ProvidesDependencyTuple : IntermediateTuple | ||
37 | { | ||
38 | public ProvidesDependencyTuple() : base(TupleDefinitions.ProvidesDependency, null, null) | ||
39 | { | ||
40 | } | ||
41 | |||
42 | public ProvidesDependencyTuple(SourceLineNumber sourceLineNumber, Identifier id = null) : base(TupleDefinitions.ProvidesDependency, sourceLineNumber, id) | ||
43 | { | ||
44 | } | ||
45 | |||
46 | public IntermediateField this[ProvidesDependencyTupleFields index] => this.Fields[(int)index]; | ||
47 | |||
48 | public string PackageRef | ||
49 | { | ||
50 | get => (string)this.Fields[(int)ProvidesDependencyTupleFields.PackageRef]; | ||
51 | set => this.Set((int)ProvidesDependencyTupleFields.PackageRef, value); | ||
52 | } | ||
53 | |||
54 | public string Key | ||
55 | { | ||
56 | get => (string)this.Fields[(int)ProvidesDependencyTupleFields.Key]; | ||
57 | set => this.Set((int)ProvidesDependencyTupleFields.Key, value); | ||
58 | } | ||
59 | |||
60 | public string Version | ||
61 | { | ||
62 | get => (string)this.Fields[(int)ProvidesDependencyTupleFields.Version]; | ||
63 | set => this.Set((int)ProvidesDependencyTupleFields.Version, value); | ||
64 | } | ||
65 | |||
66 | public string DisplayName | ||
67 | { | ||
68 | get => (string)this.Fields[(int)ProvidesDependencyTupleFields.DisplayName]; | ||
69 | set => this.Set((int)ProvidesDependencyTupleFields.DisplayName, value); | ||
70 | } | ||
71 | |||
72 | public int? Attributes | ||
73 | { | ||
74 | get => (int?)this.Fields[(int)ProvidesDependencyTupleFields.Attributes]; | ||
75 | set => this.Set((int)ProvidesDependencyTupleFields.Attributes, value); | ||
76 | } | ||
77 | |||
78 | public bool Imported | ||
79 | { | ||
80 | get => (bool)this.Fields[(int)ProvidesDependencyTupleFields.Imported]; | ||
81 | set => this.Set((int)ProvidesDependencyTupleFields.Imported, value); | ||
82 | } | ||
83 | } | ||
84 | } | ||
diff --git a/src/WixToolset.Data/Tuples/TupleDefinitions.cs b/src/WixToolset.Data/Tuples/TupleDefinitions.cs index bc1cb2eb..bad8af3f 100644 --- a/src/WixToolset.Data/Tuples/TupleDefinitions.cs +++ b/src/WixToolset.Data/Tuples/TupleDefinitions.cs | |||
@@ -100,6 +100,7 @@ namespace WixToolset.Data | |||
100 | ProgId, | 100 | ProgId, |
101 | Properties, | 101 | Properties, |
102 | Property, | 102 | Property, |
103 | ProvidesDependency, | ||
103 | PublishComponent, | 104 | PublishComponent, |
104 | RadioButton, | 105 | RadioButton, |
105 | Registry, | 106 | Registry, |
@@ -144,7 +145,6 @@ namespace WixToolset.Data | |||
144 | WixBundlePatchTargetCode, | 145 | WixBundlePatchTargetCode, |
145 | WixBundlePayload, | 146 | WixBundlePayload, |
146 | WixBundlePayloadGroup, | 147 | WixBundlePayloadGroup, |
147 | WixBundleProperties, | ||
148 | WixBundleRelatedPackage, | 148 | WixBundleRelatedPackage, |
149 | WixBundleRollbackBoundary, | 149 | WixBundleRollbackBoundary, |
150 | WixBundleSlipstreamMsp, | 150 | WixBundleSlipstreamMsp, |
@@ -159,6 +159,7 @@ namespace WixToolset.Data | |||
159 | WixCustomTable, | 159 | WixCustomTable, |
160 | WixDeltaPatchFile, | 160 | WixDeltaPatchFile, |
161 | WixDeltaPatchSymbolPaths, | 161 | WixDeltaPatchSymbolPaths, |
162 | WixDependencyProvider, | ||
162 | WixEnsureTable, | 163 | WixEnsureTable, |
163 | WixFeatureGroup, | 164 | WixFeatureGroup, |
164 | WixFeatureModules, | 165 | WixFeatureModules, |
@@ -171,15 +172,12 @@ namespace WixToolset.Data | |||
171 | WixMediaTemplate, | 172 | WixMediaTemplate, |
172 | WixMerge, | 173 | WixMerge, |
173 | WixOrdering, | 174 | WixOrdering, |
174 | WixPackageFeatureInfo, | ||
175 | WixPackageProperties, | ||
176 | WixPatchBaseline, | 175 | WixPatchBaseline, |
177 | WixPatchFamilyGroup, | 176 | WixPatchFamilyGroup, |
178 | WixPatchId, | 177 | WixPatchId, |
179 | WixPatchMetadata, | 178 | WixPatchMetadata, |
180 | WixPatchRef, | 179 | WixPatchRef, |
181 | WixPatchTarget, | 180 | WixPatchTarget, |
182 | WixPayloadProperties, | ||
183 | WixProductSearch, | 181 | WixProductSearch, |
184 | WixProperty, | 182 | WixProperty, |
185 | WixRegistrySearch, | 183 | WixRegistrySearch, |
@@ -495,6 +493,9 @@ namespace WixToolset.Data | |||
495 | case TupleDefinitionType.PublishComponent: | 493 | case TupleDefinitionType.PublishComponent: |
496 | return TupleDefinitions.PublishComponent; | 494 | return TupleDefinitions.PublishComponent; |
497 | 495 | ||
496 | case TupleDefinitionType.ProvidesDependency: | ||
497 | return TupleDefinitions.ProvidesDependency; | ||
498 | |||
498 | case TupleDefinitionType.RadioButton: | 499 | case TupleDefinitionType.RadioButton: |
499 | return TupleDefinitions.RadioButton; | 500 | return TupleDefinitions.RadioButton; |
500 | 501 | ||
@@ -624,9 +625,6 @@ namespace WixToolset.Data | |||
624 | case TupleDefinitionType.WixBundlePayloadGroup: | 625 | case TupleDefinitionType.WixBundlePayloadGroup: |
625 | return TupleDefinitions.WixBundlePayloadGroup; | 626 | return TupleDefinitions.WixBundlePayloadGroup; |
626 | 627 | ||
627 | case TupleDefinitionType.WixBundleProperties: | ||
628 | return TupleDefinitions.WixBundleProperties; | ||
629 | |||
630 | case TupleDefinitionType.WixBundleRelatedPackage: | 628 | case TupleDefinitionType.WixBundleRelatedPackage: |
631 | return TupleDefinitions.WixBundleRelatedPackage; | 629 | return TupleDefinitions.WixBundleRelatedPackage; |
632 | 630 | ||
@@ -699,12 +697,6 @@ namespace WixToolset.Data | |||
699 | case TupleDefinitionType.WixOrdering: | 697 | case TupleDefinitionType.WixOrdering: |
700 | return TupleDefinitions.WixOrdering; | 698 | return TupleDefinitions.WixOrdering; |
701 | 699 | ||
702 | case TupleDefinitionType.WixPackageFeatureInfo: | ||
703 | return TupleDefinitions.WixPackageFeatureInfo; | ||
704 | |||
705 | case TupleDefinitionType.WixPackageProperties: | ||
706 | return TupleDefinitions.WixPackageProperties; | ||
707 | |||
708 | case TupleDefinitionType.WixPatchBaseline: | 700 | case TupleDefinitionType.WixPatchBaseline: |
709 | return TupleDefinitions.WixPatchBaseline; | 701 | return TupleDefinitions.WixPatchBaseline; |
710 | 702 | ||
@@ -723,9 +715,6 @@ namespace WixToolset.Data | |||
723 | case TupleDefinitionType.WixPatchTarget: | 715 | case TupleDefinitionType.WixPatchTarget: |
724 | return TupleDefinitions.WixPatchTarget; | 716 | return TupleDefinitions.WixPatchTarget; |
725 | 717 | ||
726 | case TupleDefinitionType.WixPayloadProperties: | ||
727 | return TupleDefinitions.WixPayloadProperties; | ||
728 | |||
729 | case TupleDefinitionType.WixProductSearch: | 718 | case TupleDefinitionType.WixProductSearch: |
730 | return TupleDefinitions.WixProductSearch; | 719 | return TupleDefinitions.WixProductSearch; |
731 | 720 | ||
diff --git a/src/WixToolset.Data/Tuples/WixApprovedExeForElevationTuple.cs b/src/WixToolset.Data/Tuples/WixApprovedExeForElevationTuple.cs index e2326697..07fe838b 100644 --- a/src/WixToolset.Data/Tuples/WixApprovedExeForElevationTuple.cs +++ b/src/WixToolset.Data/Tuples/WixApprovedExeForElevationTuple.cs | |||
@@ -11,7 +11,7 @@ namespace WixToolset.Data | |||
11 | new[] | 11 | new[] |
12 | { | 12 | { |
13 | new IntermediateFieldDefinition(nameof(WixApprovedExeForElevationTupleFields.Key), IntermediateFieldType.String), | 13 | new IntermediateFieldDefinition(nameof(WixApprovedExeForElevationTupleFields.Key), IntermediateFieldType.String), |
14 | new IntermediateFieldDefinition(nameof(WixApprovedExeForElevationTupleFields.Value), IntermediateFieldType.String), | 14 | new IntermediateFieldDefinition(nameof(WixApprovedExeForElevationTupleFields.ValueName), IntermediateFieldType.String), |
15 | new IntermediateFieldDefinition(nameof(WixApprovedExeForElevationTupleFields.Attributes), IntermediateFieldType.Number), | 15 | new IntermediateFieldDefinition(nameof(WixApprovedExeForElevationTupleFields.Attributes), IntermediateFieldType.Number), |
16 | }, | 16 | }, |
17 | typeof(WixApprovedExeForElevationTuple)); | 17 | typeof(WixApprovedExeForElevationTuple)); |
@@ -20,13 +20,22 @@ namespace WixToolset.Data | |||
20 | 20 | ||
21 | namespace WixToolset.Data.Tuples | 21 | namespace WixToolset.Data.Tuples |
22 | { | 22 | { |
23 | using System; | ||
24 | |||
23 | public enum WixApprovedExeForElevationTupleFields | 25 | public enum WixApprovedExeForElevationTupleFields |
24 | { | 26 | { |
25 | Key, | 27 | Key, |
26 | Value, | 28 | ValueName, |
27 | Attributes, | 29 | Attributes, |
28 | } | 30 | } |
29 | 31 | ||
32 | [Flags] | ||
33 | public enum WixApprovedExeForElevationAttributes | ||
34 | { | ||
35 | None = 0x0, | ||
36 | Win64 = 0x1, | ||
37 | } | ||
38 | |||
30 | public class WixApprovedExeForElevationTuple : IntermediateTuple | 39 | public class WixApprovedExeForElevationTuple : IntermediateTuple |
31 | { | 40 | { |
32 | public WixApprovedExeForElevationTuple() : base(TupleDefinitions.WixApprovedExeForElevation, null, null) | 41 | public WixApprovedExeForElevationTuple() : base(TupleDefinitions.WixApprovedExeForElevation, null, null) |
@@ -45,16 +54,18 @@ namespace WixToolset.Data.Tuples | |||
45 | set => this.Set((int)WixApprovedExeForElevationTupleFields.Key, value); | 54 | set => this.Set((int)WixApprovedExeForElevationTupleFields.Key, value); |
46 | } | 55 | } |
47 | 56 | ||
48 | public string Value | 57 | public string ValueName |
49 | { | 58 | { |
50 | get => (string)this.Fields[(int)WixApprovedExeForElevationTupleFields.Value]; | 59 | get => (string)this.Fields[(int)WixApprovedExeForElevationTupleFields.ValueName]; |
51 | set => this.Set((int)WixApprovedExeForElevationTupleFields.Value, value); | 60 | set => this.Set((int)WixApprovedExeForElevationTupleFields.ValueName, value); |
52 | } | 61 | } |
53 | 62 | ||
54 | public BundleApprovedExeForElevationAttributes Attributes | 63 | public WixApprovedExeForElevationAttributes Attributes |
55 | { | 64 | { |
56 | get => (BundleApprovedExeForElevationAttributes)this.Fields[(int)WixApprovedExeForElevationTupleFields.Attributes].AsNumber(); | 65 | get => (WixApprovedExeForElevationAttributes)this.Fields[(int)WixApprovedExeForElevationTupleFields.Attributes].AsNumber(); |
57 | set => this.Set((int)WixApprovedExeForElevationTupleFields.Attributes, (int)value); | 66 | set => this.Set((int)WixApprovedExeForElevationTupleFields.Attributes, (int)value); |
58 | } | 67 | } |
68 | |||
69 | public bool Win64 => (this.Attributes & WixApprovedExeForElevationAttributes.Win64) == WixApprovedExeForElevationAttributes.Win64; | ||
59 | } | 70 | } |
60 | } \ No newline at end of file | 71 | } |
diff --git a/src/WixToolset.Data/Tuples/WixBundleCatalogTuple.cs b/src/WixToolset.Data/Tuples/WixBundleCatalogTuple.cs index ca6e6b33..51c1306e 100644 --- a/src/WixToolset.Data/Tuples/WixBundleCatalogTuple.cs +++ b/src/WixToolset.Data/Tuples/WixBundleCatalogTuple.cs | |||
@@ -10,7 +10,6 @@ namespace WixToolset.Data | |||
10 | TupleDefinitionType.WixBundleCatalog, | 10 | TupleDefinitionType.WixBundleCatalog, |
11 | new[] | 11 | new[] |
12 | { | 12 | { |
13 | new IntermediateFieldDefinition(nameof(WixBundleCatalogTupleFields.WixBundleCatalog), IntermediateFieldType.String), | ||
14 | new IntermediateFieldDefinition(nameof(WixBundleCatalogTupleFields.PayloadRef), IntermediateFieldType.String), | 13 | new IntermediateFieldDefinition(nameof(WixBundleCatalogTupleFields.PayloadRef), IntermediateFieldType.String), |
15 | }, | 14 | }, |
16 | typeof(WixBundleCatalogTuple)); | 15 | typeof(WixBundleCatalogTuple)); |
@@ -21,7 +20,6 @@ namespace WixToolset.Data.Tuples | |||
21 | { | 20 | { |
22 | public enum WixBundleCatalogTupleFields | 21 | public enum WixBundleCatalogTupleFields |
23 | { | 22 | { |
24 | WixBundleCatalog, | ||
25 | PayloadRef, | 23 | PayloadRef, |
26 | } | 24 | } |
27 | 25 | ||
@@ -37,16 +35,10 @@ namespace WixToolset.Data.Tuples | |||
37 | 35 | ||
38 | public IntermediateField this[WixBundleCatalogTupleFields index] => this.Fields[(int)index]; | 36 | public IntermediateField this[WixBundleCatalogTupleFields index] => this.Fields[(int)index]; |
39 | 37 | ||
40 | public string WixBundleCatalog | ||
41 | { | ||
42 | get => (string)this.Fields[(int)WixBundleCatalogTupleFields.WixBundleCatalog]; | ||
43 | set => this.Set((int)WixBundleCatalogTupleFields.WixBundleCatalog, value); | ||
44 | } | ||
45 | |||
46 | public string PayloadRef | 38 | public string PayloadRef |
47 | { | 39 | { |
48 | get => (string)this.Fields[(int)WixBundleCatalogTupleFields.PayloadRef]; | 40 | get => (string)this.Fields[(int)WixBundleCatalogTupleFields.PayloadRef]; |
49 | set => this.Set((int)WixBundleCatalogTupleFields.PayloadRef, value); | 41 | set => this.Set((int)WixBundleCatalogTupleFields.PayloadRef, value); |
50 | } | 42 | } |
51 | } | 43 | } |
52 | } \ No newline at end of file | 44 | } |
diff --git a/src/WixToolset.Data/Tuples/WixBundleExePackageTuple.cs b/src/WixToolset.Data/Tuples/WixBundleExePackageTuple.cs index 798e2d0d..e87de26d 100644 --- a/src/WixToolset.Data/Tuples/WixBundleExePackageTuple.cs +++ b/src/WixToolset.Data/Tuples/WixBundleExePackageTuple.cs | |||
@@ -10,7 +10,6 @@ namespace WixToolset.Data | |||
10 | TupleDefinitionType.WixBundleExePackage, | 10 | TupleDefinitionType.WixBundleExePackage, |
11 | new[] | 11 | new[] |
12 | { | 12 | { |
13 | new IntermediateFieldDefinition(nameof(WixBundleExePackageTupleFields.WixBundlePackageRef), IntermediateFieldType.String), | ||
14 | new IntermediateFieldDefinition(nameof(WixBundleExePackageTupleFields.Attributes), IntermediateFieldType.Number), | 13 | new IntermediateFieldDefinition(nameof(WixBundleExePackageTupleFields.Attributes), IntermediateFieldType.Number), |
15 | new IntermediateFieldDefinition(nameof(WixBundleExePackageTupleFields.DetectCondition), IntermediateFieldType.String), | 14 | new IntermediateFieldDefinition(nameof(WixBundleExePackageTupleFields.DetectCondition), IntermediateFieldType.String), |
16 | new IntermediateFieldDefinition(nameof(WixBundleExePackageTupleFields.InstallCommand), IntermediateFieldType.String), | 15 | new IntermediateFieldDefinition(nameof(WixBundleExePackageTupleFields.InstallCommand), IntermediateFieldType.String), |
@@ -28,7 +27,6 @@ namespace WixToolset.Data.Tuples | |||
28 | 27 | ||
29 | public enum WixBundleExePackageTupleFields | 28 | public enum WixBundleExePackageTupleFields |
30 | { | 29 | { |
31 | WixBundlePackageRef, | ||
32 | Attributes, | 30 | Attributes, |
33 | DetectCondition, | 31 | DetectCondition, |
34 | InstallCommand, | 32 | InstallCommand, |
@@ -40,7 +38,7 @@ namespace WixToolset.Data.Tuples | |||
40 | [Flags] | 38 | [Flags] |
41 | public enum WixBundleExePackageAttributes | 39 | public enum WixBundleExePackageAttributes |
42 | { | 40 | { |
43 | Repairable = 0x1, | 41 | None = 0, |
44 | } | 42 | } |
45 | 43 | ||
46 | public class WixBundleExePackageTuple : IntermediateTuple | 44 | public class WixBundleExePackageTuple : IntermediateTuple |
@@ -55,12 +53,6 @@ namespace WixToolset.Data.Tuples | |||
55 | 53 | ||
56 | public IntermediateField this[WixBundleExePackageTupleFields index] => this.Fields[(int)index]; | 54 | public IntermediateField this[WixBundleExePackageTupleFields index] => this.Fields[(int)index]; |
57 | 55 | ||
58 | public string WixBundlePackageRef | ||
59 | { | ||
60 | get => (string)this.Fields[(int)WixBundleExePackageTupleFields.WixBundlePackageRef]; | ||
61 | set => this.Set((int)WixBundleExePackageTupleFields.WixBundlePackageRef, value); | ||
62 | } | ||
63 | |||
64 | public WixBundleExePackageAttributes Attributes | 56 | public WixBundleExePackageAttributes Attributes |
65 | { | 57 | { |
66 | get => (WixBundleExePackageAttributes)(int)this.Fields[(int)WixBundleExePackageTupleFields.Attributes]; | 58 | get => (WixBundleExePackageAttributes)(int)this.Fields[(int)WixBundleExePackageTupleFields.Attributes]; |
@@ -96,5 +88,7 @@ namespace WixToolset.Data.Tuples | |||
96 | get => (string)this.Fields[(int)WixBundleExePackageTupleFields.ExeProtocol]; | 88 | get => (string)this.Fields[(int)WixBundleExePackageTupleFields.ExeProtocol]; |
97 | set => this.Set((int)WixBundleExePackageTupleFields.ExeProtocol, value); | 89 | set => this.Set((int)WixBundleExePackageTupleFields.ExeProtocol, value); |
98 | } | 90 | } |
91 | |||
92 | public bool Repairable => !String.IsNullOrEmpty(this.RepairCommand); | ||
99 | } | 93 | } |
100 | } \ No newline at end of file | 94 | } |
diff --git a/src/WixToolset.Data/Tuples/WixBundleMsiFeatureTuple.cs b/src/WixToolset.Data/Tuples/WixBundleMsiFeatureTuple.cs index 7b6c635a..dab42529 100644 --- a/src/WixToolset.Data/Tuples/WixBundleMsiFeatureTuple.cs +++ b/src/WixToolset.Data/Tuples/WixBundleMsiFeatureTuple.cs | |||
@@ -10,9 +10,9 @@ namespace WixToolset.Data | |||
10 | TupleDefinitionType.WixBundleMsiFeature, | 10 | TupleDefinitionType.WixBundleMsiFeature, |
11 | new[] | 11 | new[] |
12 | { | 12 | { |
13 | new IntermediateFieldDefinition(nameof(WixBundleMsiFeatureTupleFields.WixBundlePackageRef), IntermediateFieldType.String), | 13 | new IntermediateFieldDefinition(nameof(WixBundleMsiFeatureTupleFields.PackageRef), IntermediateFieldType.String), |
14 | new IntermediateFieldDefinition(nameof(WixBundleMsiFeatureTupleFields.Name), IntermediateFieldType.String), | 14 | new IntermediateFieldDefinition(nameof(WixBundleMsiFeatureTupleFields.Name), IntermediateFieldType.String), |
15 | new IntermediateFieldDefinition(nameof(WixBundleMsiFeatureTupleFields.Size), IntermediateFieldType.Number), | 15 | new IntermediateFieldDefinition(nameof(WixBundleMsiFeatureTupleFields.Size), IntermediateFieldType.LargeNumber), |
16 | new IntermediateFieldDefinition(nameof(WixBundleMsiFeatureTupleFields.Parent), IntermediateFieldType.String), | 16 | new IntermediateFieldDefinition(nameof(WixBundleMsiFeatureTupleFields.Parent), IntermediateFieldType.String), |
17 | new IntermediateFieldDefinition(nameof(WixBundleMsiFeatureTupleFields.Title), IntermediateFieldType.String), | 17 | new IntermediateFieldDefinition(nameof(WixBundleMsiFeatureTupleFields.Title), IntermediateFieldType.String), |
18 | new IntermediateFieldDefinition(nameof(WixBundleMsiFeatureTupleFields.Description), IntermediateFieldType.String), | 18 | new IntermediateFieldDefinition(nameof(WixBundleMsiFeatureTupleFields.Description), IntermediateFieldType.String), |
@@ -29,7 +29,7 @@ namespace WixToolset.Data.Tuples | |||
29 | { | 29 | { |
30 | public enum WixBundleMsiFeatureTupleFields | 30 | public enum WixBundleMsiFeatureTupleFields |
31 | { | 31 | { |
32 | WixBundlePackageRef, | 32 | PackageRef, |
33 | Name, | 33 | Name, |
34 | Size, | 34 | Size, |
35 | Parent, | 35 | Parent, |
@@ -53,10 +53,10 @@ namespace WixToolset.Data.Tuples | |||
53 | 53 | ||
54 | public IntermediateField this[WixBundleMsiFeatureTupleFields index] => this.Fields[(int)index]; | 54 | public IntermediateField this[WixBundleMsiFeatureTupleFields index] => this.Fields[(int)index]; |
55 | 55 | ||
56 | public string WixBundlePackageRef | 56 | public string PackageRef |
57 | { | 57 | { |
58 | get => (string)this.Fields[(int)WixBundleMsiFeatureTupleFields.WixBundlePackageRef]; | 58 | get => (string)this.Fields[(int)WixBundleMsiFeatureTupleFields.PackageRef]; |
59 | set => this.Set((int)WixBundleMsiFeatureTupleFields.WixBundlePackageRef, value); | 59 | set => this.Set((int)WixBundleMsiFeatureTupleFields.PackageRef, value); |
60 | } | 60 | } |
61 | 61 | ||
62 | public string Name | 62 | public string Name |
@@ -65,9 +65,9 @@ namespace WixToolset.Data.Tuples | |||
65 | set => this.Set((int)WixBundleMsiFeatureTupleFields.Name, value); | 65 | set => this.Set((int)WixBundleMsiFeatureTupleFields.Name, value); |
66 | } | 66 | } |
67 | 67 | ||
68 | public int Size | 68 | public long Size |
69 | { | 69 | { |
70 | get => (int)this.Fields[(int)WixBundleMsiFeatureTupleFields.Size]; | 70 | get => (long)this.Fields[(int)WixBundleMsiFeatureTupleFields.Size]; |
71 | set => this.Set((int)WixBundleMsiFeatureTupleFields.Size, value); | 71 | set => this.Set((int)WixBundleMsiFeatureTupleFields.Size, value); |
72 | } | 72 | } |
73 | 73 | ||
@@ -113,4 +113,4 @@ namespace WixToolset.Data.Tuples | |||
113 | set => this.Set((int)WixBundleMsiFeatureTupleFields.Attributes, value); | 113 | set => this.Set((int)WixBundleMsiFeatureTupleFields.Attributes, value); |
114 | } | 114 | } |
115 | } | 115 | } |
116 | } \ No newline at end of file | 116 | } |
diff --git a/src/WixToolset.Data/Tuples/WixBundleMsiPackageTuple.cs b/src/WixToolset.Data/Tuples/WixBundleMsiPackageTuple.cs index a86c33d0..3a205376 100644 --- a/src/WixToolset.Data/Tuples/WixBundleMsiPackageTuple.cs +++ b/src/WixToolset.Data/Tuples/WixBundleMsiPackageTuple.cs | |||
@@ -10,7 +10,6 @@ namespace WixToolset.Data | |||
10 | TupleDefinitionType.WixBundleMsiPackage, | 10 | TupleDefinitionType.WixBundleMsiPackage, |
11 | new[] | 11 | new[] |
12 | { | 12 | { |
13 | new IntermediateFieldDefinition(nameof(WixBundleMsiPackageTupleFields.WixBundlePackageRef), IntermediateFieldType.String), | ||
14 | new IntermediateFieldDefinition(nameof(WixBundleMsiPackageTupleFields.Attributes), IntermediateFieldType.Number), | 13 | new IntermediateFieldDefinition(nameof(WixBundleMsiPackageTupleFields.Attributes), IntermediateFieldType.Number), |
15 | new IntermediateFieldDefinition(nameof(WixBundleMsiPackageTupleFields.ProductCode), IntermediateFieldType.String), | 14 | new IntermediateFieldDefinition(nameof(WixBundleMsiPackageTupleFields.ProductCode), IntermediateFieldType.String), |
16 | new IntermediateFieldDefinition(nameof(WixBundleMsiPackageTupleFields.UpgradeCode), IntermediateFieldType.String), | 15 | new IntermediateFieldDefinition(nameof(WixBundleMsiPackageTupleFields.UpgradeCode), IntermediateFieldType.String), |
@@ -29,7 +28,6 @@ namespace WixToolset.Data.Tuples | |||
29 | 28 | ||
30 | public enum WixBundleMsiPackageTupleFields | 29 | public enum WixBundleMsiPackageTupleFields |
31 | { | 30 | { |
32 | WixBundlePackageRef, | ||
33 | Attributes, | 31 | Attributes, |
34 | ProductCode, | 32 | ProductCode, |
35 | UpgradeCode, | 33 | UpgradeCode, |
@@ -45,7 +43,6 @@ namespace WixToolset.Data.Tuples | |||
45 | DisplayInternalUI = 0x1, | 43 | DisplayInternalUI = 0x1, |
46 | EnableFeatureSelection = 0x4, | 44 | EnableFeatureSelection = 0x4, |
47 | ForcePerMachine = 0x2, | 45 | ForcePerMachine = 0x2, |
48 | SuppressLooseFilePayloadGeneration = 0x8, | ||
49 | } | 46 | } |
50 | 47 | ||
51 | public class WixBundleMsiPackageTuple : IntermediateTuple | 48 | public class WixBundleMsiPackageTuple : IntermediateTuple |
@@ -60,12 +57,6 @@ namespace WixToolset.Data.Tuples | |||
60 | 57 | ||
61 | public IntermediateField this[WixBundleMsiPackageTupleFields index] => this.Fields[(int)index]; | 58 | public IntermediateField this[WixBundleMsiPackageTupleFields index] => this.Fields[(int)index]; |
62 | 59 | ||
63 | public string WixBundlePackageRef | ||
64 | { | ||
65 | get => (string)this.Fields[(int)WixBundleMsiPackageTupleFields.WixBundlePackageRef]; | ||
66 | set => this.Set((int)WixBundleMsiPackageTupleFields.WixBundlePackageRef, value); | ||
67 | } | ||
68 | |||
69 | public WixBundleMsiPackageAttributes Attributes | 60 | public WixBundleMsiPackageAttributes Attributes |
70 | { | 61 | { |
71 | get => (WixBundleMsiPackageAttributes)(int)this.Fields[(int)WixBundleMsiPackageTupleFields.Attributes]; | 62 | get => (WixBundleMsiPackageAttributes)(int)this.Fields[(int)WixBundleMsiPackageTupleFields.Attributes]; |
@@ -107,5 +98,11 @@ namespace WixToolset.Data.Tuples | |||
107 | get => (string)this.Fields[(int)WixBundleMsiPackageTupleFields.Manufacturer]; | 98 | get => (string)this.Fields[(int)WixBundleMsiPackageTupleFields.Manufacturer]; |
108 | set => this.Set((int)WixBundleMsiPackageTupleFields.Manufacturer, value); | 99 | set => this.Set((int)WixBundleMsiPackageTupleFields.Manufacturer, value); |
109 | } | 100 | } |
101 | |||
102 | public bool DisplayInternalUI => (this.Attributes & WixBundleMsiPackageAttributes.DisplayInternalUI) == WixBundleMsiPackageAttributes.DisplayInternalUI; | ||
103 | |||
104 | public bool EnableFeatureSelection => (this.Attributes & WixBundleMsiPackageAttributes.EnableFeatureSelection) == WixBundleMsiPackageAttributes.EnableFeatureSelection; | ||
105 | |||
106 | public bool ForcePerMachine => (this.Attributes & WixBundleMsiPackageAttributes.ForcePerMachine) == WixBundleMsiPackageAttributes.ForcePerMachine; | ||
110 | } | 107 | } |
111 | } \ No newline at end of file | 108 | } \ No newline at end of file |
diff --git a/src/WixToolset.Data/Tuples/WixBundleMsiPropertyTuple.cs b/src/WixToolset.Data/Tuples/WixBundleMsiPropertyTuple.cs index 2b236a24..80500f17 100644 --- a/src/WixToolset.Data/Tuples/WixBundleMsiPropertyTuple.cs +++ b/src/WixToolset.Data/Tuples/WixBundleMsiPropertyTuple.cs | |||
@@ -10,7 +10,7 @@ namespace WixToolset.Data | |||
10 | TupleDefinitionType.WixBundleMsiProperty, | 10 | TupleDefinitionType.WixBundleMsiProperty, |
11 | new[] | 11 | new[] |
12 | { | 12 | { |
13 | new IntermediateFieldDefinition(nameof(WixBundleMsiPropertyTupleFields.WixBundlePackageRef), IntermediateFieldType.String), | 13 | new IntermediateFieldDefinition(nameof(WixBundleMsiPropertyTupleFields.PackageRef), IntermediateFieldType.String), |
14 | new IntermediateFieldDefinition(nameof(WixBundleMsiPropertyTupleFields.Name), IntermediateFieldType.String), | 14 | new IntermediateFieldDefinition(nameof(WixBundleMsiPropertyTupleFields.Name), IntermediateFieldType.String), |
15 | new IntermediateFieldDefinition(nameof(WixBundleMsiPropertyTupleFields.Value), IntermediateFieldType.String), | 15 | new IntermediateFieldDefinition(nameof(WixBundleMsiPropertyTupleFields.Value), IntermediateFieldType.String), |
16 | new IntermediateFieldDefinition(nameof(WixBundleMsiPropertyTupleFields.Condition), IntermediateFieldType.String), | 16 | new IntermediateFieldDefinition(nameof(WixBundleMsiPropertyTupleFields.Condition), IntermediateFieldType.String), |
@@ -23,7 +23,7 @@ namespace WixToolset.Data.Tuples | |||
23 | { | 23 | { |
24 | public enum WixBundleMsiPropertyTupleFields | 24 | public enum WixBundleMsiPropertyTupleFields |
25 | { | 25 | { |
26 | WixBundlePackageRef, | 26 | PackageRef, |
27 | Name, | 27 | Name, |
28 | Value, | 28 | Value, |
29 | Condition, | 29 | Condition, |
@@ -41,10 +41,10 @@ namespace WixToolset.Data.Tuples | |||
41 | 41 | ||
42 | public IntermediateField this[WixBundleMsiPropertyTupleFields index] => this.Fields[(int)index]; | 42 | public IntermediateField this[WixBundleMsiPropertyTupleFields index] => this.Fields[(int)index]; |
43 | 43 | ||
44 | public string WixBundlePackageRef | 44 | public string PackageRef |
45 | { | 45 | { |
46 | get => (string)this.Fields[(int)WixBundleMsiPropertyTupleFields.WixBundlePackageRef]; | 46 | get => (string)this.Fields[(int)WixBundleMsiPropertyTupleFields.PackageRef]; |
47 | set => this.Set((int)WixBundleMsiPropertyTupleFields.WixBundlePackageRef, value); | 47 | set => this.Set((int)WixBundleMsiPropertyTupleFields.PackageRef, value); |
48 | } | 48 | } |
49 | 49 | ||
50 | public string Name | 50 | public string Name |
diff --git a/src/WixToolset.Data/Tuples/WixBundleMspPackageTuple.cs b/src/WixToolset.Data/Tuples/WixBundleMspPackageTuple.cs index 8ef38fde..6c5cb38b 100644 --- a/src/WixToolset.Data/Tuples/WixBundleMspPackageTuple.cs +++ b/src/WixToolset.Data/Tuples/WixBundleMspPackageTuple.cs | |||
@@ -10,7 +10,6 @@ namespace WixToolset.Data | |||
10 | TupleDefinitionType.WixBundleMspPackage, | 10 | TupleDefinitionType.WixBundleMspPackage, |
11 | new[] | 11 | new[] |
12 | { | 12 | { |
13 | new IntermediateFieldDefinition(nameof(WixBundleMspPackageTupleFields.WixBundlePackageRef), IntermediateFieldType.String), | ||
14 | new IntermediateFieldDefinition(nameof(WixBundleMspPackageTupleFields.Attributes), IntermediateFieldType.Number), | 13 | new IntermediateFieldDefinition(nameof(WixBundleMspPackageTupleFields.Attributes), IntermediateFieldType.Number), |
15 | new IntermediateFieldDefinition(nameof(WixBundleMspPackageTupleFields.PatchCode), IntermediateFieldType.String), | 14 | new IntermediateFieldDefinition(nameof(WixBundleMspPackageTupleFields.PatchCode), IntermediateFieldType.String), |
16 | new IntermediateFieldDefinition(nameof(WixBundleMspPackageTupleFields.Manufacturer), IntermediateFieldType.String), | 15 | new IntermediateFieldDefinition(nameof(WixBundleMspPackageTupleFields.Manufacturer), IntermediateFieldType.String), |
@@ -26,7 +25,6 @@ namespace WixToolset.Data.Tuples | |||
26 | 25 | ||
27 | public enum WixBundleMspPackageTupleFields | 26 | public enum WixBundleMspPackageTupleFields |
28 | { | 27 | { |
29 | WixBundlePackageRef, | ||
30 | Attributes, | 28 | Attributes, |
31 | PatchCode, | 29 | PatchCode, |
32 | Manufacturer, | 30 | Manufacturer, |
@@ -53,12 +51,6 @@ namespace WixToolset.Data.Tuples | |||
53 | 51 | ||
54 | public IntermediateField this[WixBundleMspPackageTupleFields index] => this.Fields[(int)index]; | 52 | public IntermediateField this[WixBundleMspPackageTupleFields index] => this.Fields[(int)index]; |
55 | 53 | ||
56 | public string WixBundlePackageRef | ||
57 | { | ||
58 | get => (string)this.Fields[(int)WixBundleMspPackageTupleFields.WixBundlePackageRef]; | ||
59 | set => this.Set((int)WixBundleMspPackageTupleFields.WixBundlePackageRef, value); | ||
60 | } | ||
61 | |||
62 | public WixBundleMspPackageAttributes Attributes | 54 | public WixBundleMspPackageAttributes Attributes |
63 | { | 55 | { |
64 | get => (WixBundleMspPackageAttributes)(int)this.Fields[(int)WixBundleMspPackageTupleFields.Attributes]; | 56 | get => (WixBundleMspPackageAttributes)(int)this.Fields[(int)WixBundleMspPackageTupleFields.Attributes]; |
@@ -82,5 +74,11 @@ namespace WixToolset.Data.Tuples | |||
82 | get => (string)this.Fields[(int)WixBundleMspPackageTupleFields.PatchXml]; | 74 | get => (string)this.Fields[(int)WixBundleMspPackageTupleFields.PatchXml]; |
83 | set => this.Set((int)WixBundleMspPackageTupleFields.PatchXml, value); | 75 | set => this.Set((int)WixBundleMspPackageTupleFields.PatchXml, value); |
84 | } | 76 | } |
77 | |||
78 | public bool DisplayInternalUI => (this.Attributes & WixBundleMspPackageAttributes.DisplayInternalUI) == WixBundleMspPackageAttributes.DisplayInternalUI; | ||
79 | |||
80 | public bool Slipstream => (this.Attributes & WixBundleMspPackageAttributes.Slipstream) == WixBundleMspPackageAttributes.Slipstream; | ||
81 | |||
82 | public bool TargetUnspecified => (this.Attributes & WixBundleMspPackageAttributes.TargetUnspecified) == WixBundleMspPackageAttributes.TargetUnspecified; | ||
85 | } | 83 | } |
86 | } \ No newline at end of file | 84 | } \ No newline at end of file |
diff --git a/src/WixToolset.Data/Tuples/WixBundleMsuPackageTuple.cs b/src/WixToolset.Data/Tuples/WixBundleMsuPackageTuple.cs index 33add8e9..5d5a4672 100644 --- a/src/WixToolset.Data/Tuples/WixBundleMsuPackageTuple.cs +++ b/src/WixToolset.Data/Tuples/WixBundleMsuPackageTuple.cs | |||
@@ -10,7 +10,6 @@ namespace WixToolset.Data | |||
10 | TupleDefinitionType.WixBundleMsuPackage, | 10 | TupleDefinitionType.WixBundleMsuPackage, |
11 | new[] | 11 | new[] |
12 | { | 12 | { |
13 | new IntermediateFieldDefinition(nameof(WixBundleMsuPackageTupleFields.WixBundlePackageRef), IntermediateFieldType.String), | ||
14 | new IntermediateFieldDefinition(nameof(WixBundleMsuPackageTupleFields.DetectCondition), IntermediateFieldType.String), | 13 | new IntermediateFieldDefinition(nameof(WixBundleMsuPackageTupleFields.DetectCondition), IntermediateFieldType.String), |
15 | new IntermediateFieldDefinition(nameof(WixBundleMsuPackageTupleFields.MsuKB), IntermediateFieldType.String), | 14 | new IntermediateFieldDefinition(nameof(WixBundleMsuPackageTupleFields.MsuKB), IntermediateFieldType.String), |
16 | }, | 15 | }, |
@@ -22,7 +21,6 @@ namespace WixToolset.Data.Tuples | |||
22 | { | 21 | { |
23 | public enum WixBundleMsuPackageTupleFields | 22 | public enum WixBundleMsuPackageTupleFields |
24 | { | 23 | { |
25 | WixBundlePackageRef, | ||
26 | DetectCondition, | 24 | DetectCondition, |
27 | MsuKB, | 25 | MsuKB, |
28 | } | 26 | } |
@@ -39,12 +37,6 @@ namespace WixToolset.Data.Tuples | |||
39 | 37 | ||
40 | public IntermediateField this[WixBundleMsuPackageTupleFields index] => this.Fields[(int)index]; | 38 | public IntermediateField this[WixBundleMsuPackageTupleFields index] => this.Fields[(int)index]; |
41 | 39 | ||
42 | public string WixBundlePackageRef | ||
43 | { | ||
44 | get => (string)this.Fields[(int)WixBundleMsuPackageTupleFields.WixBundlePackageRef]; | ||
45 | set => this.Set((int)WixBundleMsuPackageTupleFields.WixBundlePackageRef, value); | ||
46 | } | ||
47 | |||
48 | public string DetectCondition | 40 | public string DetectCondition |
49 | { | 41 | { |
50 | get => (string)this.Fields[(int)WixBundleMsuPackageTupleFields.DetectCondition]; | 42 | get => (string)this.Fields[(int)WixBundleMsuPackageTupleFields.DetectCondition]; |
diff --git a/src/WixToolset.Data/Tuples/WixBundlePackageExitCodeTuple.cs b/src/WixToolset.Data/Tuples/WixBundlePackageExitCodeTuple.cs index 880f1f73..c585011d 100644 --- a/src/WixToolset.Data/Tuples/WixBundlePackageExitCodeTuple.cs +++ b/src/WixToolset.Data/Tuples/WixBundlePackageExitCodeTuple.cs | |||
@@ -56,9 +56,9 @@ namespace WixToolset.Data.Tuples | |||
56 | set => this.Set((int)WixBundlePackageExitCodeTupleFields.ChainPackageId, value); | 56 | set => this.Set((int)WixBundlePackageExitCodeTupleFields.ChainPackageId, value); |
57 | } | 57 | } |
58 | 58 | ||
59 | public int Code | 59 | public int? Code |
60 | { | 60 | { |
61 | get => (int)this.Fields[(int)WixBundlePackageExitCodeTupleFields.Code]; | 61 | get => (int?)this.Fields[(int)WixBundlePackageExitCodeTupleFields.Code]; |
62 | set => this.Set((int)WixBundlePackageExitCodeTupleFields.Code, value); | 62 | set => this.Set((int)WixBundlePackageExitCodeTupleFields.Code, value); |
63 | } | 63 | } |
64 | 64 | ||
@@ -68,4 +68,4 @@ namespace WixToolset.Data.Tuples | |||
68 | set => this.Set((int)WixBundlePackageExitCodeTupleFields.Behavior, value.ToString()); | 68 | set => this.Set((int)WixBundlePackageExitCodeTupleFields.Behavior, value.ToString()); |
69 | } | 69 | } |
70 | } | 70 | } |
71 | } \ No newline at end of file | 71 | } |
diff --git a/src/WixToolset.Data/Tuples/WixBundlePackageTuple.cs b/src/WixToolset.Data/Tuples/WixBundlePackageTuple.cs index 07fdc2d5..d61e12d0 100644 --- a/src/WixToolset.Data/Tuples/WixBundlePackageTuple.cs +++ b/src/WixToolset.Data/Tuples/WixBundlePackageTuple.cs | |||
@@ -10,7 +10,6 @@ namespace WixToolset.Data | |||
10 | TupleDefinitionType.WixBundlePackage, | 10 | TupleDefinitionType.WixBundlePackage, |
11 | new[] | 11 | new[] |
12 | { | 12 | { |
13 | new IntermediateFieldDefinition(nameof(WixBundlePackageTupleFields.WixChainItemRef), IntermediateFieldType.String), | ||
14 | new IntermediateFieldDefinition(nameof(WixBundlePackageTupleFields.Type), IntermediateFieldType.String), | 13 | new IntermediateFieldDefinition(nameof(WixBundlePackageTupleFields.Type), IntermediateFieldType.String), |
15 | new IntermediateFieldDefinition(nameof(WixBundlePackageTupleFields.PayloadRef), IntermediateFieldType.String), | 14 | new IntermediateFieldDefinition(nameof(WixBundlePackageTupleFields.PayloadRef), IntermediateFieldType.String), |
16 | new IntermediateFieldDefinition(nameof(WixBundlePackageTupleFields.Attributes), IntermediateFieldType.Number), | 15 | new IntermediateFieldDefinition(nameof(WixBundlePackageTupleFields.Attributes), IntermediateFieldType.Number), |
@@ -22,14 +21,14 @@ namespace WixToolset.Data | |||
22 | new IntermediateFieldDefinition(nameof(WixBundlePackageTupleFields.LogPathVariable), IntermediateFieldType.String), | 21 | new IntermediateFieldDefinition(nameof(WixBundlePackageTupleFields.LogPathVariable), IntermediateFieldType.String), |
23 | new IntermediateFieldDefinition(nameof(WixBundlePackageTupleFields.RollbackLogPathVariable), IntermediateFieldType.String), | 22 | new IntermediateFieldDefinition(nameof(WixBundlePackageTupleFields.RollbackLogPathVariable), IntermediateFieldType.String), |
24 | new IntermediateFieldDefinition(nameof(WixBundlePackageTupleFields.Size), IntermediateFieldType.Number), | 23 | new IntermediateFieldDefinition(nameof(WixBundlePackageTupleFields.Size), IntermediateFieldType.Number), |
25 | new IntermediateFieldDefinition(nameof(WixBundlePackageTupleFields.InstallSize), IntermediateFieldType.Number), | 24 | new IntermediateFieldDefinition(nameof(WixBundlePackageTupleFields.InstallSize), IntermediateFieldType.LargeNumber), |
26 | new IntermediateFieldDefinition(nameof(WixBundlePackageTupleFields.Version), IntermediateFieldType.String), | 25 | new IntermediateFieldDefinition(nameof(WixBundlePackageTupleFields.Version), IntermediateFieldType.String), |
27 | new IntermediateFieldDefinition(nameof(WixBundlePackageTupleFields.Language), IntermediateFieldType.Number), | 26 | new IntermediateFieldDefinition(nameof(WixBundlePackageTupleFields.Language), IntermediateFieldType.Number), |
28 | new IntermediateFieldDefinition(nameof(WixBundlePackageTupleFields.DisplayName), IntermediateFieldType.String), | 27 | new IntermediateFieldDefinition(nameof(WixBundlePackageTupleFields.DisplayName), IntermediateFieldType.String), |
29 | new IntermediateFieldDefinition(nameof(WixBundlePackageTupleFields.Description), IntermediateFieldType.String), | 28 | new IntermediateFieldDefinition(nameof(WixBundlePackageTupleFields.Description), IntermediateFieldType.String), |
30 | new IntermediateFieldDefinition(nameof(WixBundlePackageTupleFields.RollbackBoundaryRef), IntermediateFieldType.String), | 29 | new IntermediateFieldDefinition(nameof(WixBundlePackageTupleFields.RollbackBoundaryRef), IntermediateFieldType.String), |
31 | new IntermediateFieldDefinition(nameof(WixBundlePackageTupleFields.RollbackBoundaryBackwardRef), IntermediateFieldType.String), | 30 | new IntermediateFieldDefinition(nameof(WixBundlePackageTupleFields.RollbackBoundaryBackwardRef), IntermediateFieldType.String), |
32 | new IntermediateFieldDefinition(nameof(WixBundlePackageTupleFields.Win64), IntermediateFieldType.Number), | 31 | new IntermediateFieldDefinition(nameof(WixBundlePackageTupleFields.Win64), IntermediateFieldType.Bool), |
33 | }, | 32 | }, |
34 | typeof(WixBundlePackageTuple)); | 33 | typeof(WixBundlePackageTuple)); |
35 | } | 34 | } |
@@ -41,7 +40,6 @@ namespace WixToolset.Data.Tuples | |||
41 | 40 | ||
42 | public enum WixBundlePackageTupleFields | 41 | public enum WixBundlePackageTupleFields |
43 | { | 42 | { |
44 | WixChainItemRef, | ||
45 | Type, | 43 | Type, |
46 | PayloadRef, | 44 | PayloadRef, |
47 | Attributes, | 45 | Attributes, |
@@ -79,6 +77,8 @@ namespace WixToolset.Data.Tuples | |||
79 | { | 77 | { |
80 | Permanent = 0x1, | 78 | Permanent = 0x1, |
81 | Visible = 0x2, | 79 | Visible = 0x2, |
80 | PerMachine = 0x4, | ||
81 | Win64 = 0x8, | ||
82 | } | 82 | } |
83 | 83 | ||
84 | public class WixBundlePackageTuple : IntermediateTuple | 84 | public class WixBundlePackageTuple : IntermediateTuple |
@@ -93,12 +93,6 @@ namespace WixToolset.Data.Tuples | |||
93 | 93 | ||
94 | public IntermediateField this[WixBundlePackageTupleFields index] => this.Fields[(int)index]; | 94 | public IntermediateField this[WixBundlePackageTupleFields index] => this.Fields[(int)index]; |
95 | 95 | ||
96 | public string WixChainItemRef | ||
97 | { | ||
98 | get => (string)this.Fields[(int)WixBundlePackageTupleFields.WixChainItemRef]; | ||
99 | set => this.Set((int)WixBundlePackageTupleFields.WixChainItemRef, value); | ||
100 | } | ||
101 | |||
102 | public WixBundlePackageType Type | 96 | public WixBundlePackageType Type |
103 | { | 97 | { |
104 | get => (WixBundlePackageType)Enum.Parse(typeof(WixBundlePackageType), (string)this.Fields[(int)WixBundlePackageTupleFields.Type], true); | 98 | get => (WixBundlePackageType)Enum.Parse(typeof(WixBundlePackageType), (string)this.Fields[(int)WixBundlePackageTupleFields.Type], true); |
@@ -165,9 +159,9 @@ namespace WixToolset.Data.Tuples | |||
165 | set => this.Set((int)WixBundlePackageTupleFields.Size, value); | 159 | set => this.Set((int)WixBundlePackageTupleFields.Size, value); |
166 | } | 160 | } |
167 | 161 | ||
168 | public int InstallSize | 162 | public long? InstallSize |
169 | { | 163 | { |
170 | get => (int)this.Fields[(int)WixBundlePackageTupleFields.InstallSize]; | 164 | get => (long?)this.Fields[(int)WixBundlePackageTupleFields.InstallSize]; |
171 | set => this.Set((int)WixBundlePackageTupleFields.InstallSize, value); | 165 | set => this.Set((int)WixBundlePackageTupleFields.InstallSize, value); |
172 | } | 166 | } |
173 | 167 | ||
@@ -207,10 +201,12 @@ namespace WixToolset.Data.Tuples | |||
207 | set => this.Set((int)WixBundlePackageTupleFields.RollbackBoundaryBackwardRef, value); | 201 | set => this.Set((int)WixBundlePackageTupleFields.RollbackBoundaryBackwardRef, value); |
208 | } | 202 | } |
209 | 203 | ||
210 | public int Win64 | 204 | public bool Win64 |
211 | { | 205 | { |
212 | get => (int)this.Fields[(int)WixBundlePackageTupleFields.Win64]; | 206 | get => (bool)this.Fields[(int)WixBundlePackageTupleFields.Win64]; |
213 | set => this.Set((int)WixBundlePackageTupleFields.Win64, value); | 207 | set => this.Set((int)WixBundlePackageTupleFields.Win64, value); |
214 | } | 208 | } |
209 | |||
210 | public bool Permanent => (this.Attributes & WixBundlePackageAttributes.Permanent) == WixBundlePackageAttributes.Permanent; | ||
215 | } | 211 | } |
216 | } \ No newline at end of file | 212 | } \ No newline at end of file |
diff --git a/src/WixToolset.Data/Tuples/WixBundlePatchTargetCodeTuple.cs b/src/WixToolset.Data/Tuples/WixBundlePatchTargetCodeTuple.cs index f8752067..56ca144f 100644 --- a/src/WixToolset.Data/Tuples/WixBundlePatchTargetCodeTuple.cs +++ b/src/WixToolset.Data/Tuples/WixBundlePatchTargetCodeTuple.cs | |||
@@ -10,7 +10,7 @@ namespace WixToolset.Data | |||
10 | TupleDefinitionType.WixBundlePatchTargetCode, | 10 | TupleDefinitionType.WixBundlePatchTargetCode, |
11 | new[] | 11 | new[] |
12 | { | 12 | { |
13 | new IntermediateFieldDefinition(nameof(WixBundlePatchTargetCodeTupleFields.PackageId), IntermediateFieldType.String), | 13 | new IntermediateFieldDefinition(nameof(WixBundlePatchTargetCodeTupleFields.PackageRef), IntermediateFieldType.String), |
14 | new IntermediateFieldDefinition(nameof(WixBundlePatchTargetCodeTupleFields.TargetCode), IntermediateFieldType.String), | 14 | new IntermediateFieldDefinition(nameof(WixBundlePatchTargetCodeTupleFields.TargetCode), IntermediateFieldType.String), |
15 | new IntermediateFieldDefinition(nameof(WixBundlePatchTargetCodeTupleFields.Attributes), IntermediateFieldType.Number), | 15 | new IntermediateFieldDefinition(nameof(WixBundlePatchTargetCodeTupleFields.Attributes), IntermediateFieldType.Number), |
16 | }, | 16 | }, |
@@ -20,13 +20,31 @@ namespace WixToolset.Data | |||
20 | 20 | ||
21 | namespace WixToolset.Data.Tuples | 21 | namespace WixToolset.Data.Tuples |
22 | { | 22 | { |
23 | using System; | ||
24 | |||
23 | public enum WixBundlePatchTargetCodeTupleFields | 25 | public enum WixBundlePatchTargetCodeTupleFields |
24 | { | 26 | { |
25 | PackageId, | 27 | PackageRef, |
26 | TargetCode, | 28 | TargetCode, |
27 | Attributes, | 29 | Attributes, |
28 | } | 30 | } |
29 | 31 | ||
32 | [Flags] | ||
33 | public enum WixBundlePatchTargetCodeAttributes : int | ||
34 | { | ||
35 | None = 0, | ||
36 | |||
37 | /// <summary> | ||
38 | /// The transform targets a specific ProductCode. | ||
39 | /// </summary> | ||
40 | TargetsProductCode = 1, | ||
41 | |||
42 | /// <summary> | ||
43 | /// The transform targets a specific UpgradeCode. | ||
44 | /// </summary> | ||
45 | TargetsUpgradeCode = 2, | ||
46 | } | ||
47 | |||
30 | public class WixBundlePatchTargetCodeTuple : IntermediateTuple | 48 | public class WixBundlePatchTargetCodeTuple : IntermediateTuple |
31 | { | 49 | { |
32 | public WixBundlePatchTargetCodeTuple() : base(TupleDefinitions.WixBundlePatchTargetCode, null, null) | 50 | public WixBundlePatchTargetCodeTuple() : base(TupleDefinitions.WixBundlePatchTargetCode, null, null) |
@@ -39,10 +57,10 @@ namespace WixToolset.Data.Tuples | |||
39 | 57 | ||
40 | public IntermediateField this[WixBundlePatchTargetCodeTupleFields index] => this.Fields[(int)index]; | 58 | public IntermediateField this[WixBundlePatchTargetCodeTupleFields index] => this.Fields[(int)index]; |
41 | 59 | ||
42 | public string PackageId | 60 | public string PackageRef |
43 | { | 61 | { |
44 | get => (string)this.Fields[(int)WixBundlePatchTargetCodeTupleFields.PackageId]; | 62 | get => (string)this.Fields[(int)WixBundlePatchTargetCodeTupleFields.PackageRef]; |
45 | set => this.Set((int)WixBundlePatchTargetCodeTupleFields.PackageId, value); | 63 | set => this.Set((int)WixBundlePatchTargetCodeTupleFields.PackageRef, value); |
46 | } | 64 | } |
47 | 65 | ||
48 | public string TargetCode | 66 | public string TargetCode |
@@ -51,10 +69,14 @@ namespace WixToolset.Data.Tuples | |||
51 | set => this.Set((int)WixBundlePatchTargetCodeTupleFields.TargetCode, value); | 69 | set => this.Set((int)WixBundlePatchTargetCodeTupleFields.TargetCode, value); |
52 | } | 70 | } |
53 | 71 | ||
54 | public int Attributes | 72 | public WixBundlePatchTargetCodeAttributes Attributes |
55 | { | 73 | { |
56 | get => (int)this.Fields[(int)WixBundlePatchTargetCodeTupleFields.Attributes]; | 74 | get => (WixBundlePatchTargetCodeAttributes)this.Fields[(int)WixBundlePatchTargetCodeTupleFields.Attributes].AsNumber(); |
57 | set => this.Set((int)WixBundlePatchTargetCodeTupleFields.Attributes, value); | 75 | set => this.Set((int)WixBundlePatchTargetCodeTupleFields.Attributes, (int)value); |
58 | } | 76 | } |
77 | |||
78 | public bool TargetsProductCode => (this.Attributes & WixBundlePatchTargetCodeAttributes.TargetsProductCode) == WixBundlePatchTargetCodeAttributes.TargetsProductCode; | ||
79 | |||
80 | public bool TargetsUpgradeCode => (this.Attributes & WixBundlePatchTargetCodeAttributes.TargetsUpgradeCode) == WixBundlePatchTargetCodeAttributes.TargetsUpgradeCode; | ||
59 | } | 81 | } |
60 | } \ No newline at end of file | 82 | } |
diff --git a/src/WixToolset.Data/Tuples/WixBundlePayloadTuple.cs b/src/WixToolset.Data/Tuples/WixBundlePayloadTuple.cs index 5eb4a987..049ac3b5 100644 --- a/src/WixToolset.Data/Tuples/WixBundlePayloadTuple.cs +++ b/src/WixToolset.Data/Tuples/WixBundlePayloadTuple.cs | |||
@@ -10,7 +10,6 @@ namespace WixToolset.Data | |||
10 | TupleDefinitionType.WixBundlePayload, | 10 | TupleDefinitionType.WixBundlePayload, |
11 | new[] | 11 | new[] |
12 | { | 12 | { |
13 | new IntermediateFieldDefinition(nameof(WixBundlePayloadTupleFields.WixBundlePayload), IntermediateFieldType.String), | ||
14 | new IntermediateFieldDefinition(nameof(WixBundlePayloadTupleFields.Name), IntermediateFieldType.String), | 13 | new IntermediateFieldDefinition(nameof(WixBundlePayloadTupleFields.Name), IntermediateFieldType.String), |
15 | new IntermediateFieldDefinition(nameof(WixBundlePayloadTupleFields.SourceFile), IntermediateFieldType.Path), | 14 | new IntermediateFieldDefinition(nameof(WixBundlePayloadTupleFields.SourceFile), IntermediateFieldType.Path), |
16 | new IntermediateFieldDefinition(nameof(WixBundlePayloadTupleFields.DownloadUrl), IntermediateFieldType.String), | 15 | new IntermediateFieldDefinition(nameof(WixBundlePayloadTupleFields.DownloadUrl), IntermediateFieldType.String), |
@@ -26,10 +25,10 @@ namespace WixToolset.Data | |||
26 | new IntermediateFieldDefinition(nameof(WixBundlePayloadTupleFields.Thumbprint), IntermediateFieldType.String), | 25 | new IntermediateFieldDefinition(nameof(WixBundlePayloadTupleFields.Thumbprint), IntermediateFieldType.String), |
27 | new IntermediateFieldDefinition(nameof(WixBundlePayloadTupleFields.CatalogRef), IntermediateFieldType.String), | 26 | new IntermediateFieldDefinition(nameof(WixBundlePayloadTupleFields.CatalogRef), IntermediateFieldType.String), |
28 | new IntermediateFieldDefinition(nameof(WixBundlePayloadTupleFields.ContainerRef), IntermediateFieldType.String), | 27 | new IntermediateFieldDefinition(nameof(WixBundlePayloadTupleFields.ContainerRef), IntermediateFieldType.String), |
29 | new IntermediateFieldDefinition(nameof(WixBundlePayloadTupleFields.Package), IntermediateFieldType.String), | 28 | new IntermediateFieldDefinition(nameof(WixBundlePayloadTupleFields.PackageRef), IntermediateFieldType.String), |
30 | new IntermediateFieldDefinition(nameof(WixBundlePayloadTupleFields.ContentFile), IntermediateFieldType.Bool), | 29 | new IntermediateFieldDefinition(nameof(WixBundlePayloadTupleFields.ContentFile), IntermediateFieldType.Bool), |
31 | new IntermediateFieldDefinition(nameof(WixBundlePayloadTupleFields.EmbeddedId), IntermediateFieldType.String), | 30 | new IntermediateFieldDefinition(nameof(WixBundlePayloadTupleFields.EmbeddedId), IntermediateFieldType.String), |
32 | new IntermediateFieldDefinition(nameof(WixBundlePayloadTupleFields.LayoutOnly), IntermediateFieldType.Number), | 31 | new IntermediateFieldDefinition(nameof(WixBundlePayloadTupleFields.LayoutOnly), IntermediateFieldType.Bool), |
33 | new IntermediateFieldDefinition(nameof(WixBundlePayloadTupleFields.Packaging), IntermediateFieldType.Number), | 32 | new IntermediateFieldDefinition(nameof(WixBundlePayloadTupleFields.Packaging), IntermediateFieldType.Number), |
34 | new IntermediateFieldDefinition(nameof(WixBundlePayloadTupleFields.ParentPackagePayloadRef), IntermediateFieldType.String), | 33 | new IntermediateFieldDefinition(nameof(WixBundlePayloadTupleFields.ParentPackagePayloadRef), IntermediateFieldType.String), |
35 | }, | 34 | }, |
@@ -43,7 +42,6 @@ namespace WixToolset.Data.Tuples | |||
43 | 42 | ||
44 | public enum WixBundlePayloadTupleFields | 43 | public enum WixBundlePayloadTupleFields |
45 | { | 44 | { |
46 | WixBundlePayload, | ||
47 | Name, | 45 | Name, |
48 | SourceFile, | 46 | SourceFile, |
49 | DownloadUrl, | 47 | DownloadUrl, |
@@ -59,7 +57,7 @@ namespace WixToolset.Data.Tuples | |||
59 | Thumbprint, | 57 | Thumbprint, |
60 | CatalogRef, | 58 | CatalogRef, |
61 | ContainerRef, | 59 | ContainerRef, |
62 | Package, | 60 | PackageRef, |
63 | ContentFile, | 61 | ContentFile, |
64 | EmbeddedId, | 62 | EmbeddedId, |
65 | LayoutOnly, | 63 | LayoutOnly, |
@@ -79,21 +77,15 @@ namespace WixToolset.Data.Tuples | |||
79 | 77 | ||
80 | public IntermediateField this[WixBundlePayloadTupleFields index] => this.Fields[(int)index]; | 78 | public IntermediateField this[WixBundlePayloadTupleFields index] => this.Fields[(int)index]; |
81 | 79 | ||
82 | public string WixBundlePayload | ||
83 | { | ||
84 | get => (string)this.Fields[(int)WixBundlePayloadTupleFields.WixBundlePayload]; | ||
85 | set => this.Set((int)WixBundlePayloadTupleFields.WixBundlePayload, value); | ||
86 | } | ||
87 | |||
88 | public string Name | 80 | public string Name |
89 | { | 81 | { |
90 | get => (string)this.Fields[(int)WixBundlePayloadTupleFields.Name]; | 82 | get => (string)this.Fields[(int)WixBundlePayloadTupleFields.Name]; |
91 | set => this.Set((int)WixBundlePayloadTupleFields.Name, value); | 83 | set => this.Set((int)WixBundlePayloadTupleFields.Name, value); |
92 | } | 84 | } |
93 | 85 | ||
94 | public string SourceFile | 86 | public IntermediateFieldPathValue SourceFile |
95 | { | 87 | { |
96 | get => (string)this.Fields[(int)WixBundlePayloadTupleFields.SourceFile]; | 88 | get => this.Fields[(int)WixBundlePayloadTupleFields.SourceFile].AsPath(); |
97 | set => this.Set((int)WixBundlePayloadTupleFields.SourceFile, value); | 89 | set => this.Set((int)WixBundlePayloadTupleFields.SourceFile, value); |
98 | } | 90 | } |
99 | 91 | ||
@@ -103,10 +95,10 @@ namespace WixToolset.Data.Tuples | |||
103 | set => this.Set((int)WixBundlePayloadTupleFields.DownloadUrl, value); | 95 | set => this.Set((int)WixBundlePayloadTupleFields.DownloadUrl, value); |
104 | } | 96 | } |
105 | 97 | ||
106 | public YesNoDefaultType Compressed | 98 | public bool? Compressed |
107 | { | 99 | { |
108 | get => Enum.TryParse((string)this.Fields[(int)WixBundlePayloadTupleFields.Compressed], true, out YesNoDefaultType value) ? value : YesNoDefaultType.NotSet; | 100 | get => (bool?)this.Fields[(int)WixBundlePayloadTupleFields.Compressed]; |
109 | set => this.Set((int)WixBundlePayloadTupleFields.Compressed, value.ToString().ToLowerInvariant()); | 101 | set => this.Set((int)WixBundlePayloadTupleFields.Compressed, value); |
110 | } | 102 | } |
111 | 103 | ||
112 | public string UnresolvedSourceFile | 104 | public string UnresolvedSourceFile |
@@ -175,10 +167,10 @@ namespace WixToolset.Data.Tuples | |||
175 | set => this.Set((int)WixBundlePayloadTupleFields.ContainerRef, value); | 167 | set => this.Set((int)WixBundlePayloadTupleFields.ContainerRef, value); |
176 | } | 168 | } |
177 | 169 | ||
178 | public string Package | 170 | public string PackageRef |
179 | { | 171 | { |
180 | get => (string)this.Fields[(int)WixBundlePayloadTupleFields.Package]; | 172 | get => (string)this.Fields[(int)WixBundlePayloadTupleFields.PackageRef]; |
181 | set => this.Set((int)WixBundlePayloadTupleFields.Package, value); | 173 | set => this.Set((int)WixBundlePayloadTupleFields.PackageRef, value); |
182 | } | 174 | } |
183 | 175 | ||
184 | public bool ContentFile | 176 | public bool ContentFile |
@@ -193,16 +185,16 @@ namespace WixToolset.Data.Tuples | |||
193 | set => this.Set((int)WixBundlePayloadTupleFields.EmbeddedId, value); | 185 | set => this.Set((int)WixBundlePayloadTupleFields.EmbeddedId, value); |
194 | } | 186 | } |
195 | 187 | ||
196 | public int LayoutOnly | 188 | public bool LayoutOnly |
197 | { | 189 | { |
198 | get => (int)this.Fields[(int)WixBundlePayloadTupleFields.LayoutOnly]; | 190 | get => (bool)this.Fields[(int)WixBundlePayloadTupleFields.LayoutOnly]; |
199 | set => this.Set((int)WixBundlePayloadTupleFields.LayoutOnly, value); | 191 | set => this.Set((int)WixBundlePayloadTupleFields.LayoutOnly, value); |
200 | } | 192 | } |
201 | 193 | ||
202 | public int Packaging | 194 | public PackagingType Packaging |
203 | { | 195 | { |
204 | get => (int)this.Fields[(int)WixBundlePayloadTupleFields.Packaging]; | 196 | get => (PackagingType)this.Fields[(int)WixBundlePayloadTupleFields.Packaging].AsNumber(); |
205 | set => this.Set((int)WixBundlePayloadTupleFields.Packaging, value); | 197 | set => this.Set((int)WixBundlePayloadTupleFields.Packaging, (int)value); |
206 | } | 198 | } |
207 | 199 | ||
208 | public string ParentPackagePayloadRef | 200 | public string ParentPackagePayloadRef |
@@ -211,4 +203,4 @@ namespace WixToolset.Data.Tuples | |||
211 | set => this.Set((int)WixBundlePayloadTupleFields.ParentPackagePayloadRef, value); | 203 | set => this.Set((int)WixBundlePayloadTupleFields.ParentPackagePayloadRef, value); |
212 | } | 204 | } |
213 | } | 205 | } |
214 | } \ No newline at end of file | 206 | } |
diff --git a/src/WixToolset.Data/Tuples/WixBundlePropertiesTuple.cs b/src/WixToolset.Data/Tuples/WixBundlePropertiesTuple.cs deleted file mode 100644 index ae610aac..00000000 --- a/src/WixToolset.Data/Tuples/WixBundlePropertiesTuple.cs +++ /dev/null | |||
@@ -1,84 +0,0 @@ | |||
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.Data | ||
4 | { | ||
5 | using WixToolset.Data.Tuples; | ||
6 | |||
7 | public static partial class TupleDefinitions | ||
8 | { | ||
9 | public static readonly IntermediateTupleDefinition WixBundleProperties = new IntermediateTupleDefinition( | ||
10 | TupleDefinitionType.WixBundleProperties, | ||
11 | new[] | ||
12 | { | ||
13 | new IntermediateFieldDefinition(nameof(WixBundlePropertiesTupleFields.DisplayName), IntermediateFieldType.String), | ||
14 | new IntermediateFieldDefinition(nameof(WixBundlePropertiesTupleFields.LogPathVariable), IntermediateFieldType.String), | ||
15 | new IntermediateFieldDefinition(nameof(WixBundlePropertiesTupleFields.Compressed), IntermediateFieldType.String), | ||
16 | new IntermediateFieldDefinition(nameof(WixBundlePropertiesTupleFields.BundleId), IntermediateFieldType.String), | ||
17 | new IntermediateFieldDefinition(nameof(WixBundlePropertiesTupleFields.UpgradeCode), IntermediateFieldType.String), | ||
18 | new IntermediateFieldDefinition(nameof(WixBundlePropertiesTupleFields.PerMachine), IntermediateFieldType.String), | ||
19 | }, | ||
20 | typeof(WixBundlePropertiesTuple)); | ||
21 | } | ||
22 | } | ||
23 | |||
24 | namespace WixToolset.Data.Tuples | ||
25 | { | ||
26 | public enum WixBundlePropertiesTupleFields | ||
27 | { | ||
28 | DisplayName, | ||
29 | LogPathVariable, | ||
30 | Compressed, | ||
31 | BundleId, | ||
32 | UpgradeCode, | ||
33 | PerMachine, | ||
34 | } | ||
35 | |||
36 | public class WixBundlePropertiesTuple : IntermediateTuple | ||
37 | { | ||
38 | public WixBundlePropertiesTuple() : base(TupleDefinitions.WixBundleProperties, null, null) | ||
39 | { | ||
40 | } | ||
41 | |||
42 | public WixBundlePropertiesTuple(SourceLineNumber sourceLineNumber, Identifier id = null) : base(TupleDefinitions.WixBundleProperties, sourceLineNumber, id) | ||
43 | { | ||
44 | } | ||
45 | |||
46 | public IntermediateField this[WixBundlePropertiesTupleFields index] => this.Fields[(int)index]; | ||
47 | |||
48 | public string DisplayName | ||
49 | { | ||
50 | get => (string)this.Fields[(int)WixBundlePropertiesTupleFields.DisplayName]; | ||
51 | set => this.Set((int)WixBundlePropertiesTupleFields.DisplayName, value); | ||
52 | } | ||
53 | |||
54 | public string LogPathVariable | ||
55 | { | ||
56 | get => (string)this.Fields[(int)WixBundlePropertiesTupleFields.LogPathVariable]; | ||
57 | set => this.Set((int)WixBundlePropertiesTupleFields.LogPathVariable, value); | ||
58 | } | ||
59 | |||
60 | public string Compressed | ||
61 | { | ||
62 | get => (string)this.Fields[(int)WixBundlePropertiesTupleFields.Compressed]; | ||
63 | set => this.Set((int)WixBundlePropertiesTupleFields.Compressed, value); | ||
64 | } | ||
65 | |||
66 | public string BundleId | ||
67 | { | ||
68 | get => (string)this.Fields[(int)WixBundlePropertiesTupleFields.BundleId]; | ||
69 | set => this.Set((int)WixBundlePropertiesTupleFields.BundleId, value); | ||
70 | } | ||
71 | |||
72 | public string UpgradeCode | ||
73 | { | ||
74 | get => (string)this.Fields[(int)WixBundlePropertiesTupleFields.UpgradeCode]; | ||
75 | set => this.Set((int)WixBundlePropertiesTupleFields.UpgradeCode, value); | ||
76 | } | ||
77 | |||
78 | public string PerMachine | ||
79 | { | ||
80 | get => (string)this.Fields[(int)WixBundlePropertiesTupleFields.PerMachine]; | ||
81 | set => this.Set((int)WixBundlePropertiesTupleFields.PerMachine, value); | ||
82 | } | ||
83 | } | ||
84 | } \ No newline at end of file | ||
diff --git a/src/WixToolset.Data/Tuples/WixBundleRelatedPackageTuple.cs b/src/WixToolset.Data/Tuples/WixBundleRelatedPackageTuple.cs index ef620b26..e9a087f3 100644 --- a/src/WixToolset.Data/Tuples/WixBundleRelatedPackageTuple.cs +++ b/src/WixToolset.Data/Tuples/WixBundleRelatedPackageTuple.cs | |||
@@ -10,14 +10,12 @@ namespace WixToolset.Data | |||
10 | TupleDefinitionType.WixBundleRelatedPackage, | 10 | TupleDefinitionType.WixBundleRelatedPackage, |
11 | new[] | 11 | new[] |
12 | { | 12 | { |
13 | new IntermediateFieldDefinition(nameof(WixBundleRelatedPackageTupleFields.PackageRef), IntermediateFieldType.String), | ||
13 | new IntermediateFieldDefinition(nameof(WixBundleRelatedPackageTupleFields.RelatedId), IntermediateFieldType.String), | 14 | new IntermediateFieldDefinition(nameof(WixBundleRelatedPackageTupleFields.RelatedId), IntermediateFieldType.String), |
14 | new IntermediateFieldDefinition(nameof(WixBundleRelatedPackageTupleFields.MinVersion), IntermediateFieldType.String), | 15 | new IntermediateFieldDefinition(nameof(WixBundleRelatedPackageTupleFields.MinVersion), IntermediateFieldType.String), |
15 | new IntermediateFieldDefinition(nameof(WixBundleRelatedPackageTupleFields.MaxVersion), IntermediateFieldType.String), | 16 | new IntermediateFieldDefinition(nameof(WixBundleRelatedPackageTupleFields.MaxVersion), IntermediateFieldType.String), |
16 | new IntermediateFieldDefinition(nameof(WixBundleRelatedPackageTupleFields.Languages), IntermediateFieldType.String), | 17 | new IntermediateFieldDefinition(nameof(WixBundleRelatedPackageTupleFields.Languages), IntermediateFieldType.String), |
17 | new IntermediateFieldDefinition(nameof(WixBundleRelatedPackageTupleFields.MinInclusive), IntermediateFieldType.Number), | 18 | new IntermediateFieldDefinition(nameof(WixBundleRelatedPackageTupleFields.Attributes), IntermediateFieldType.Number), |
18 | new IntermediateFieldDefinition(nameof(WixBundleRelatedPackageTupleFields.MaxInclusive), IntermediateFieldType.Number), | ||
19 | new IntermediateFieldDefinition(nameof(WixBundleRelatedPackageTupleFields.LangInclusive), IntermediateFieldType.Number), | ||
20 | new IntermediateFieldDefinition(nameof(WixBundleRelatedPackageTupleFields.OnlyDetect), IntermediateFieldType.Number), | ||
21 | }, | 19 | }, |
22 | typeof(WixBundleRelatedPackageTuple)); | 20 | typeof(WixBundleRelatedPackageTuple)); |
23 | } | 21 | } |
@@ -25,16 +23,26 @@ namespace WixToolset.Data | |||
25 | 23 | ||
26 | namespace WixToolset.Data.Tuples | 24 | namespace WixToolset.Data.Tuples |
27 | { | 25 | { |
26 | using System; | ||
27 | |||
28 | public enum WixBundleRelatedPackageTupleFields | 28 | public enum WixBundleRelatedPackageTupleFields |
29 | { | 29 | { |
30 | PackageRef, | ||
30 | RelatedId, | 31 | RelatedId, |
31 | MinVersion, | 32 | MinVersion, |
32 | MaxVersion, | 33 | MaxVersion, |
33 | Languages, | 34 | Languages, |
34 | MinInclusive, | 35 | Attributes, |
35 | MaxInclusive, | 36 | } |
36 | LangInclusive, | 37 | |
37 | OnlyDetect, | 38 | [Flags] |
39 | public enum WixBundleRelatedPackageAttributes | ||
40 | { | ||
41 | None, | ||
42 | OnlyDetect = 0x1, | ||
43 | MinInclusive = 0x2, | ||
44 | MaxInclusive = 0x4, | ||
45 | LangInclusive = 0x8, | ||
38 | } | 46 | } |
39 | 47 | ||
40 | public class WixBundleRelatedPackageTuple : IntermediateTuple | 48 | public class WixBundleRelatedPackageTuple : IntermediateTuple |
@@ -49,6 +57,12 @@ namespace WixToolset.Data.Tuples | |||
49 | 57 | ||
50 | public IntermediateField this[WixBundleRelatedPackageTupleFields index] => this.Fields[(int)index]; | 58 | public IntermediateField this[WixBundleRelatedPackageTupleFields index] => this.Fields[(int)index]; |
51 | 59 | ||
60 | public string PackageRef | ||
61 | { | ||
62 | get => (string)this.Fields[(int)WixBundleRelatedPackageTupleFields.PackageRef]; | ||
63 | set => this.Set((int)WixBundleRelatedPackageTupleFields.PackageRef, value); | ||
64 | } | ||
65 | |||
52 | public string RelatedId | 66 | public string RelatedId |
53 | { | 67 | { |
54 | get => (string)this.Fields[(int)WixBundleRelatedPackageTupleFields.RelatedId]; | 68 | get => (string)this.Fields[(int)WixBundleRelatedPackageTupleFields.RelatedId]; |
@@ -73,28 +87,18 @@ namespace WixToolset.Data.Tuples | |||
73 | set => this.Set((int)WixBundleRelatedPackageTupleFields.Languages, value); | 87 | set => this.Set((int)WixBundleRelatedPackageTupleFields.Languages, value); |
74 | } | 88 | } |
75 | 89 | ||
76 | public int MinInclusive | 90 | public WixBundleRelatedPackageAttributes Attributes |
77 | { | 91 | { |
78 | get => (int)this.Fields[(int)WixBundleRelatedPackageTupleFields.MinInclusive]; | 92 | get => (WixBundleRelatedPackageAttributes)this.Fields[(int)WixBundleRelatedPackageTupleFields.Attributes].AsNumber(); |
79 | set => this.Set((int)WixBundleRelatedPackageTupleFields.MinInclusive, value); | 93 | set => this.Set((int)WixBundleRelatedPackageTupleFields.Attributes, (int)value); |
80 | } | 94 | } |
81 | 95 | ||
82 | public int MaxInclusive | 96 | public bool MinInclusive => (this.Attributes & WixBundleRelatedPackageAttributes.MinInclusive) == WixBundleRelatedPackageAttributes.MinInclusive; |
83 | { | ||
84 | get => (int)this.Fields[(int)WixBundleRelatedPackageTupleFields.MaxInclusive]; | ||
85 | set => this.Set((int)WixBundleRelatedPackageTupleFields.MaxInclusive, value); | ||
86 | } | ||
87 | 97 | ||
88 | public int LangInclusive | 98 | public bool MaxInclusive => (this.Attributes & WixBundleRelatedPackageAttributes.MaxInclusive) == WixBundleRelatedPackageAttributes.MaxInclusive; |
89 | { | ||
90 | get => (int)this.Fields[(int)WixBundleRelatedPackageTupleFields.LangInclusive]; | ||
91 | set => this.Set((int)WixBundleRelatedPackageTupleFields.LangInclusive, value); | ||
92 | } | ||
93 | 99 | ||
94 | public int OnlyDetect | 100 | public bool OnlyDetect => (this.Attributes & WixBundleRelatedPackageAttributes.OnlyDetect) == WixBundleRelatedPackageAttributes.OnlyDetect; |
95 | { | 101 | |
96 | get => (int)this.Fields[(int)WixBundleRelatedPackageTupleFields.OnlyDetect]; | 102 | public bool LangInclusive => (this.Attributes & WixBundleRelatedPackageAttributes.LangInclusive) == WixBundleRelatedPackageAttributes.LangInclusive; |
97 | set => this.Set((int)WixBundleRelatedPackageTupleFields.OnlyDetect, value); | ||
98 | } | ||
99 | } | 103 | } |
100 | } \ No newline at end of file | 104 | } |
diff --git a/src/WixToolset.Data/Tuples/WixBundleRollbackBoundaryTuple.cs b/src/WixToolset.Data/Tuples/WixBundleRollbackBoundaryTuple.cs index a11c972d..648787f9 100644 --- a/src/WixToolset.Data/Tuples/WixBundleRollbackBoundaryTuple.cs +++ b/src/WixToolset.Data/Tuples/WixBundleRollbackBoundaryTuple.cs | |||
@@ -10,7 +10,6 @@ namespace WixToolset.Data | |||
10 | TupleDefinitionType.WixBundleRollbackBoundary, | 10 | TupleDefinitionType.WixBundleRollbackBoundary, |
11 | new[] | 11 | new[] |
12 | { | 12 | { |
13 | new IntermediateFieldDefinition(nameof(WixBundleRollbackBoundaryTupleFields.WixChainItemRef), IntermediateFieldType.String), | ||
14 | new IntermediateFieldDefinition(nameof(WixBundleRollbackBoundaryTupleFields.Vital), IntermediateFieldType.Number), | 13 | new IntermediateFieldDefinition(nameof(WixBundleRollbackBoundaryTupleFields.Vital), IntermediateFieldType.Number), |
15 | new IntermediateFieldDefinition(nameof(WixBundleRollbackBoundaryTupleFields.Transaction), IntermediateFieldType.Number), | 14 | new IntermediateFieldDefinition(nameof(WixBundleRollbackBoundaryTupleFields.Transaction), IntermediateFieldType.Number), |
16 | }, | 15 | }, |
@@ -22,7 +21,6 @@ namespace WixToolset.Data.Tuples | |||
22 | { | 21 | { |
23 | public enum WixBundleRollbackBoundaryTupleFields | 22 | public enum WixBundleRollbackBoundaryTupleFields |
24 | { | 23 | { |
25 | WixChainItemRef, | ||
26 | Vital, | 24 | Vital, |
27 | Transaction, | 25 | Transaction, |
28 | } | 26 | } |
@@ -39,12 +37,6 @@ namespace WixToolset.Data.Tuples | |||
39 | 37 | ||
40 | public IntermediateField this[WixBundleRollbackBoundaryTupleFields index] => this.Fields[(int)index]; | 38 | public IntermediateField this[WixBundleRollbackBoundaryTupleFields index] => this.Fields[(int)index]; |
41 | 39 | ||
42 | public string WixChainItemRef | ||
43 | { | ||
44 | get => (string)this.Fields[(int)WixBundleRollbackBoundaryTupleFields.WixChainItemRef]; | ||
45 | set => this.Set((int)WixBundleRollbackBoundaryTupleFields.WixChainItemRef, value); | ||
46 | } | ||
47 | |||
48 | public bool? Vital | 40 | public bool? Vital |
49 | { | 41 | { |
50 | get => (bool?)this.Fields[(int)WixBundleRollbackBoundaryTupleFields.Vital]; | 42 | get => (bool?)this.Fields[(int)WixBundleRollbackBoundaryTupleFields.Vital]; |
diff --git a/src/WixToolset.Data/Tuples/WixBundleSlipstreamMspTuple.cs b/src/WixToolset.Data/Tuples/WixBundleSlipstreamMspTuple.cs index 3a028d16..bfe8c6e1 100644 --- a/src/WixToolset.Data/Tuples/WixBundleSlipstreamMspTuple.cs +++ b/src/WixToolset.Data/Tuples/WixBundleSlipstreamMspTuple.cs | |||
@@ -10,8 +10,8 @@ namespace WixToolset.Data | |||
10 | TupleDefinitionType.WixBundleSlipstreamMsp, | 10 | TupleDefinitionType.WixBundleSlipstreamMsp, |
11 | new[] | 11 | new[] |
12 | { | 12 | { |
13 | new IntermediateFieldDefinition(nameof(WixBundleSlipstreamMspTupleFields.WixBundlePackageRef), IntermediateFieldType.String), | 13 | new IntermediateFieldDefinition(nameof(WixBundleSlipstreamMspTupleFields.TargetPackageRef), IntermediateFieldType.String), |
14 | new IntermediateFieldDefinition(nameof(WixBundleSlipstreamMspTupleFields.MspWixBundlePackageRef), IntermediateFieldType.String), | 14 | new IntermediateFieldDefinition(nameof(WixBundleSlipstreamMspTupleFields.MspPackageRef), IntermediateFieldType.String), |
15 | }, | 15 | }, |
16 | typeof(WixBundleSlipstreamMspTuple)); | 16 | typeof(WixBundleSlipstreamMspTuple)); |
17 | } | 17 | } |
@@ -21,8 +21,8 @@ namespace WixToolset.Data.Tuples | |||
21 | { | 21 | { |
22 | public enum WixBundleSlipstreamMspTupleFields | 22 | public enum WixBundleSlipstreamMspTupleFields |
23 | { | 23 | { |
24 | WixBundlePackageRef, | 24 | TargetPackageRef, |
25 | MspWixBundlePackageRef, | 25 | MspPackageRef, |
26 | } | 26 | } |
27 | 27 | ||
28 | public class WixBundleSlipstreamMspTuple : IntermediateTuple | 28 | public class WixBundleSlipstreamMspTuple : IntermediateTuple |
@@ -37,16 +37,16 @@ namespace WixToolset.Data.Tuples | |||
37 | 37 | ||
38 | public IntermediateField this[WixBundleSlipstreamMspTupleFields index] => this.Fields[(int)index]; | 38 | public IntermediateField this[WixBundleSlipstreamMspTupleFields index] => this.Fields[(int)index]; |
39 | 39 | ||
40 | public string WixBundlePackageRef | 40 | public string TargetPackageRef |
41 | { | 41 | { |
42 | get => (string)this.Fields[(int)WixBundleSlipstreamMspTupleFields.WixBundlePackageRef]; | 42 | get => (string)this.Fields[(int)WixBundleSlipstreamMspTupleFields.TargetPackageRef]; |
43 | set => this.Set((int)WixBundleSlipstreamMspTupleFields.WixBundlePackageRef, value); | 43 | set => this.Set((int)WixBundleSlipstreamMspTupleFields.TargetPackageRef, value); |
44 | } | 44 | } |
45 | 45 | ||
46 | public string MspWixBundlePackageRef | 46 | public string MspPackageRef |
47 | { | 47 | { |
48 | get => (string)this.Fields[(int)WixBundleSlipstreamMspTupleFields.MspWixBundlePackageRef]; | 48 | get => (string)this.Fields[(int)WixBundleSlipstreamMspTupleFields.MspPackageRef]; |
49 | set => this.Set((int)WixBundleSlipstreamMspTupleFields.MspWixBundlePackageRef, value); | 49 | set => this.Set((int)WixBundleSlipstreamMspTupleFields.MspPackageRef, value); |
50 | } | 50 | } |
51 | } | 51 | } |
52 | } \ No newline at end of file | 52 | } |
diff --git a/src/WixToolset.Data/Tuples/WixBundleTuple.cs b/src/WixToolset.Data/Tuples/WixBundleTuple.cs index 8f6f760a..dcaea6bc 100644 --- a/src/WixToolset.Data/Tuples/WixBundleTuple.cs +++ b/src/WixToolset.Data/Tuples/WixBundleTuple.cs | |||
@@ -10,29 +10,28 @@ namespace WixToolset.Data | |||
10 | TupleDefinitionType.WixBundle, | 10 | TupleDefinitionType.WixBundle, |
11 | new[] | 11 | new[] |
12 | { | 12 | { |
13 | new IntermediateFieldDefinition(nameof(WixBundleTupleFields.UpgradeCode), IntermediateFieldType.String), | ||
13 | new IntermediateFieldDefinition(nameof(WixBundleTupleFields.Version), IntermediateFieldType.String), | 14 | new IntermediateFieldDefinition(nameof(WixBundleTupleFields.Version), IntermediateFieldType.String), |
14 | new IntermediateFieldDefinition(nameof(WixBundleTupleFields.Copyright), IntermediateFieldType.String), | 15 | new IntermediateFieldDefinition(nameof(WixBundleTupleFields.Copyright), IntermediateFieldType.String), |
15 | new IntermediateFieldDefinition(nameof(WixBundleTupleFields.Name), IntermediateFieldType.String), | 16 | new IntermediateFieldDefinition(nameof(WixBundleTupleFields.Name), IntermediateFieldType.String), |
17 | new IntermediateFieldDefinition(nameof(WixBundleTupleFields.Manufacturer), IntermediateFieldType.String), | ||
18 | new IntermediateFieldDefinition(nameof(WixBundleTupleFields.Attributes), IntermediateFieldType.Number), | ||
16 | new IntermediateFieldDefinition(nameof(WixBundleTupleFields.AboutUrl), IntermediateFieldType.String), | 19 | new IntermediateFieldDefinition(nameof(WixBundleTupleFields.AboutUrl), IntermediateFieldType.String), |
17 | new IntermediateFieldDefinition(nameof(WixBundleTupleFields.DisableModify), IntermediateFieldType.Number), | ||
18 | new IntermediateFieldDefinition(nameof(WixBundleTupleFields.DisableRemove), IntermediateFieldType.Number), | ||
19 | new IntermediateFieldDefinition(nameof(WixBundleTupleFields.DisableRepair), IntermediateFieldType.Number), | ||
20 | new IntermediateFieldDefinition(nameof(WixBundleTupleFields.HelpTelephone), IntermediateFieldType.String), | ||
21 | new IntermediateFieldDefinition(nameof(WixBundleTupleFields.HelpUrl), IntermediateFieldType.String), | 20 | new IntermediateFieldDefinition(nameof(WixBundleTupleFields.HelpUrl), IntermediateFieldType.String), |
22 | new IntermediateFieldDefinition(nameof(WixBundleTupleFields.Manufacturer), IntermediateFieldType.String), | 21 | new IntermediateFieldDefinition(nameof(WixBundleTupleFields.HelpTelephone), IntermediateFieldType.String), |
23 | new IntermediateFieldDefinition(nameof(WixBundleTupleFields.UpdateUrl), IntermediateFieldType.String), | 22 | new IntermediateFieldDefinition(nameof(WixBundleTupleFields.UpdateUrl), IntermediateFieldType.String), |
24 | new IntermediateFieldDefinition(nameof(WixBundleTupleFields.Compressed), IntermediateFieldType.Number), | 23 | new IntermediateFieldDefinition(nameof(WixBundleTupleFields.Compressed), IntermediateFieldType.Bool), |
25 | new IntermediateFieldDefinition(nameof(WixBundleTupleFields.LogPrefixAndExtension), IntermediateFieldType.String), | 24 | new IntermediateFieldDefinition(nameof(WixBundleTupleFields.LogPathVariable), IntermediateFieldType.String), |
25 | new IntermediateFieldDefinition(nameof(WixBundleTupleFields.LogPrefix), IntermediateFieldType.String), | ||
26 | new IntermediateFieldDefinition(nameof(WixBundleTupleFields.LogExtension), IntermediateFieldType.String), | ||
26 | new IntermediateFieldDefinition(nameof(WixBundleTupleFields.IconSourceFile), IntermediateFieldType.Path), | 27 | new IntermediateFieldDefinition(nameof(WixBundleTupleFields.IconSourceFile), IntermediateFieldType.Path), |
27 | new IntermediateFieldDefinition(nameof(WixBundleTupleFields.SplashScreenSourceFile), IntermediateFieldType.Path), | 28 | new IntermediateFieldDefinition(nameof(WixBundleTupleFields.SplashScreenSourceFile), IntermediateFieldType.Path), |
28 | new IntermediateFieldDefinition(nameof(WixBundleTupleFields.Condition), IntermediateFieldType.String), | 29 | new IntermediateFieldDefinition(nameof(WixBundleTupleFields.Condition), IntermediateFieldType.String), |
29 | new IntermediateFieldDefinition(nameof(WixBundleTupleFields.Tag), IntermediateFieldType.String), | 30 | new IntermediateFieldDefinition(nameof(WixBundleTupleFields.Tag), IntermediateFieldType.String), |
30 | new IntermediateFieldDefinition(nameof(WixBundleTupleFields.Platform), IntermediateFieldType.String), | 31 | new IntermediateFieldDefinition(nameof(WixBundleTupleFields.Platform), IntermediateFieldType.String), |
31 | new IntermediateFieldDefinition(nameof(WixBundleTupleFields.ParentName), IntermediateFieldType.String), | 32 | new IntermediateFieldDefinition(nameof(WixBundleTupleFields.ParentName), IntermediateFieldType.String), |
32 | new IntermediateFieldDefinition(nameof(WixBundleTupleFields.UpgradeCode), IntermediateFieldType.String), | ||
33 | new IntermediateFieldDefinition(nameof(WixBundleTupleFields.BundleId), IntermediateFieldType.String), | 33 | new IntermediateFieldDefinition(nameof(WixBundleTupleFields.BundleId), IntermediateFieldType.String), |
34 | new IntermediateFieldDefinition(nameof(WixBundleTupleFields.ProviderKey), IntermediateFieldType.String), | 34 | new IntermediateFieldDefinition(nameof(WixBundleTupleFields.ProviderKey), IntermediateFieldType.String), |
35 | new IntermediateFieldDefinition(nameof(WixBundleTupleFields.PerMachine), IntermediateFieldType.Bool), | ||
36 | }, | 35 | }, |
37 | typeof(WixBundleTuple)); | 36 | typeof(WixBundleTuple)); |
38 | } | 37 | } |
@@ -40,30 +39,41 @@ namespace WixToolset.Data | |||
40 | 39 | ||
41 | namespace WixToolset.Data.Tuples | 40 | namespace WixToolset.Data.Tuples |
42 | { | 41 | { |
42 | using System; | ||
43 | |||
43 | public enum WixBundleTupleFields | 44 | public enum WixBundleTupleFields |
44 | { | 45 | { |
46 | UpgradeCode, | ||
45 | Version, | 47 | Version, |
46 | Copyright, | 48 | Copyright, |
47 | Name, | 49 | Name, |
50 | Manufacturer, | ||
51 | Attributes, | ||
48 | AboutUrl, | 52 | AboutUrl, |
49 | DisableModify, | ||
50 | DisableRemove, | ||
51 | DisableRepair, | ||
52 | HelpTelephone, | ||
53 | HelpUrl, | 53 | HelpUrl, |
54 | Manufacturer, | 54 | HelpTelephone, |
55 | UpdateUrl, | 55 | UpdateUrl, |
56 | Compressed, | 56 | Compressed, |
57 | LogPrefixAndExtension, | 57 | LogPathVariable, |
58 | LogPrefix, | ||
59 | LogExtension, | ||
58 | IconSourceFile, | 60 | IconSourceFile, |
59 | SplashScreenSourceFile, | 61 | SplashScreenSourceFile, |
60 | Condition, | 62 | Condition, |
61 | Tag, | 63 | Tag, |
62 | Platform, | 64 | Platform, |
63 | ParentName, | 65 | ParentName, |
64 | UpgradeCode, | ||
65 | BundleId, | 66 | BundleId, |
66 | ProviderKey, | 67 | ProviderKey, |
68 | } | ||
69 | |||
70 | [Flags] | ||
71 | public enum WixBundleAttributes | ||
72 | { | ||
73 | None, | ||
74 | DisableModify, | ||
75 | DisableRemove, | ||
76 | SingleChangeUninstallButton, | ||
67 | PerMachine, | 77 | PerMachine, |
68 | } | 78 | } |
69 | 79 | ||
@@ -79,6 +89,12 @@ namespace WixToolset.Data.Tuples | |||
79 | 89 | ||
80 | public IntermediateField this[WixBundleTupleFields index] => this.Fields[(int)index]; | 90 | public IntermediateField this[WixBundleTupleFields index] => this.Fields[(int)index]; |
81 | 91 | ||
92 | public string UpgradeCode | ||
93 | { | ||
94 | get => (string)this.Fields[(int)WixBundleTupleFields.UpgradeCode]; | ||
95 | set => this.Set((int)WixBundleTupleFields.UpgradeCode, value); | ||
96 | } | ||
97 | |||
82 | public string Version | 98 | public string Version |
83 | { | 99 | { |
84 | get => (string)this.Fields[(int)WixBundleTupleFields.Version]; | 100 | get => (string)this.Fields[(int)WixBundleTupleFields.Version]; |
@@ -97,28 +113,22 @@ namespace WixToolset.Data.Tuples | |||
97 | set => this.Set((int)WixBundleTupleFields.Name, value); | 113 | set => this.Set((int)WixBundleTupleFields.Name, value); |
98 | } | 114 | } |
99 | 115 | ||
100 | public string AboutUrl | 116 | public string Manufacturer |
101 | { | ||
102 | get => (string)this.Fields[(int)WixBundleTupleFields.AboutUrl]; | ||
103 | set => this.Set((int)WixBundleTupleFields.AboutUrl, value); | ||
104 | } | ||
105 | |||
106 | public int DisableModify | ||
107 | { | 117 | { |
108 | get => (int)this.Fields[(int)WixBundleTupleFields.DisableModify]; | 118 | get => (string)this.Fields[(int)WixBundleTupleFields.Manufacturer]; |
109 | set => this.Set((int)WixBundleTupleFields.DisableModify, value); | 119 | set => this.Set((int)WixBundleTupleFields.Manufacturer, value); |
110 | } | 120 | } |
111 | 121 | ||
112 | public int DisableRemove | 122 | public WixBundleAttributes Attributes |
113 | { | 123 | { |
114 | get => (int)this.Fields[(int)WixBundleTupleFields.DisableRemove]; | 124 | get => (WixBundleAttributes)this.Fields[(int)WixBundleTupleFields.Attributes].AsNumber(); |
115 | set => this.Set((int)WixBundleTupleFields.DisableRemove, value); | 125 | set => this.Set((int)WixBundleTupleFields.Attributes, (int)value); |
116 | } | 126 | } |
117 | 127 | ||
118 | public int DisableRepair | 128 | public string AboutUrl |
119 | { | 129 | { |
120 | get => (int)this.Fields[(int)WixBundleTupleFields.DisableRepair]; | 130 | get => (string)this.Fields[(int)WixBundleTupleFields.AboutUrl]; |
121 | set => this.Set((int)WixBundleTupleFields.DisableRepair, value); | 131 | set => this.Set((int)WixBundleTupleFields.AboutUrl, value); |
122 | } | 132 | } |
123 | 133 | ||
124 | public string HelpTelephone | 134 | public string HelpTelephone |
@@ -133,28 +143,34 @@ namespace WixToolset.Data.Tuples | |||
133 | set => this.Set((int)WixBundleTupleFields.HelpUrl, value); | 143 | set => this.Set((int)WixBundleTupleFields.HelpUrl, value); |
134 | } | 144 | } |
135 | 145 | ||
136 | public string Manufacturer | ||
137 | { | ||
138 | get => (string)this.Fields[(int)WixBundleTupleFields.Manufacturer]; | ||
139 | set => this.Set((int)WixBundleTupleFields.Manufacturer, value); | ||
140 | } | ||
141 | |||
142 | public string UpdateUrl | 146 | public string UpdateUrl |
143 | { | 147 | { |
144 | get => (string)this.Fields[(int)WixBundleTupleFields.UpdateUrl]; | 148 | get => (string)this.Fields[(int)WixBundleTupleFields.UpdateUrl]; |
145 | set => this.Set((int)WixBundleTupleFields.UpdateUrl, value); | 149 | set => this.Set((int)WixBundleTupleFields.UpdateUrl, value); |
146 | } | 150 | } |
147 | 151 | ||
148 | public int Compressed | 152 | public bool? Compressed |
149 | { | 153 | { |
150 | get => (int)this.Fields[(int)WixBundleTupleFields.Compressed]; | 154 | get => (bool?)this.Fields[(int)WixBundleTupleFields.Compressed]; |
151 | set => this.Set((int)WixBundleTupleFields.Compressed, value); | 155 | set => this.Set((int)WixBundleTupleFields.Compressed, value); |
152 | } | 156 | } |
153 | 157 | ||
154 | public string LogPrefixAndExtension | 158 | public string LogPathVariable |
155 | { | 159 | { |
156 | get => (string)this.Fields[(int)WixBundleTupleFields.LogPrefixAndExtension]; | 160 | get => (string)this.Fields[(int)WixBundleTupleFields.LogPathVariable]; |
157 | set => this.Set((int)WixBundleTupleFields.LogPrefixAndExtension, value); | 161 | set => this.Set((int)WixBundleTupleFields.LogPathVariable, value); |
162 | } | ||
163 | |||
164 | public string LogPrefix | ||
165 | { | ||
166 | get => (string)this.Fields[(int)WixBundleTupleFields.LogPrefix]; | ||
167 | set => this.Set((int)WixBundleTupleFields.LogPrefix, value); | ||
168 | } | ||
169 | |||
170 | public string LogExtension | ||
171 | { | ||
172 | get => (string)this.Fields[(int)WixBundleTupleFields.LogExtension]; | ||
173 | set => this.Set((int)WixBundleTupleFields.LogExtension, value); | ||
158 | } | 174 | } |
159 | 175 | ||
160 | public string IconSourceFile | 176 | public string IconSourceFile |
@@ -181,10 +197,10 @@ namespace WixToolset.Data.Tuples | |||
181 | set => this.Set((int)WixBundleTupleFields.Tag, value); | 197 | set => this.Set((int)WixBundleTupleFields.Tag, value); |
182 | } | 198 | } |
183 | 199 | ||
184 | public string Platform | 200 | public Platform Platform |
185 | { | 201 | { |
186 | get => (string)this.Fields[(int)WixBundleTupleFields.Platform]; | 202 | get => (Platform)this.Fields[(int)WixBundleTupleFields.Platform].AsNumber(); |
187 | set => this.Set((int)WixBundleTupleFields.Platform, value); | 203 | set => this.Set((int)WixBundleTupleFields.Platform, (int)value); |
188 | } | 204 | } |
189 | 205 | ||
190 | public string ParentName | 206 | public string ParentName |
@@ -193,12 +209,6 @@ namespace WixToolset.Data.Tuples | |||
193 | set => this.Set((int)WixBundleTupleFields.ParentName, value); | 209 | set => this.Set((int)WixBundleTupleFields.ParentName, value); |
194 | } | 210 | } |
195 | 211 | ||
196 | public string UpgradeCode | ||
197 | { | ||
198 | get => (string)this.Fields[(int)WixBundleTupleFields.UpgradeCode]; | ||
199 | set => this.Set((int)WixBundleTupleFields.UpgradeCode, value); | ||
200 | } | ||
201 | |||
202 | public string BundleId | 212 | public string BundleId |
203 | { | 213 | { |
204 | get => (string)this.Fields[(int)WixBundleTupleFields.BundleId]; | 214 | get => (string)this.Fields[(int)WixBundleTupleFields.BundleId]; |
@@ -211,10 +221,14 @@ namespace WixToolset.Data.Tuples | |||
211 | set => this.Set((int)WixBundleTupleFields.ProviderKey, value); | 221 | set => this.Set((int)WixBundleTupleFields.ProviderKey, value); |
212 | } | 222 | } |
213 | 223 | ||
214 | public bool PerMachine | 224 | public PackagingType DefaultPackagingType => (this.Compressed.HasValue && !this.Compressed.Value) ? PackagingType.External : PackagingType.Embedded; |
215 | { | 225 | |
216 | get => (bool)this.Fields[(int)WixBundleTupleFields.PerMachine]; | 226 | public bool DisableModify => (this.Attributes & WixBundleAttributes.DisableModify) == WixBundleAttributes.DisableModify; |
217 | set => this.Set((int)WixBundleTupleFields.PerMachine, value); | 227 | |
218 | } | 228 | public bool DisableRemove => (this.Attributes & WixBundleAttributes.DisableRemove) == WixBundleAttributes.DisableRemove; |
229 | |||
230 | public bool PerMachine => (this.Attributes & WixBundleAttributes.PerMachine) == WixBundleAttributes.PerMachine; | ||
231 | |||
232 | public bool SingleChangeUninstallButton => (this.Attributes & WixBundleAttributes.SingleChangeUninstallButton) == WixBundleAttributes.SingleChangeUninstallButton; | ||
219 | } | 233 | } |
220 | } \ No newline at end of file | 234 | } |
diff --git a/src/WixToolset.Data/Tuples/WixChainTuple.cs b/src/WixToolset.Data/Tuples/WixChainTuple.cs index d8bef8cc..9343ead1 100644 --- a/src/WixToolset.Data/Tuples/WixChainTuple.cs +++ b/src/WixToolset.Data/Tuples/WixChainTuple.cs | |||
@@ -51,5 +51,11 @@ namespace WixToolset.Data.Tuples | |||
51 | get => (WixChainAttributes)(int)this.Fields[(int)WixChainTupleFields.Attributes]; | 51 | get => (WixChainAttributes)(int)this.Fields[(int)WixChainTupleFields.Attributes]; |
52 | set => this.Set((int)WixChainTupleFields.Attributes, (int)value); | 52 | set => this.Set((int)WixChainTupleFields.Attributes, (int)value); |
53 | } | 53 | } |
54 | |||
55 | public bool DisableRollback => (this.Attributes & WixChainAttributes.DisableRollback) == WixChainAttributes.DisableRollback; | ||
56 | |||
57 | public bool DisableSystemRestore => (this.Attributes & WixChainAttributes.DisableSystemRestore) == WixChainAttributes.DisableSystemRestore; | ||
58 | |||
59 | public bool ParallelCache => (this.Attributes & WixChainAttributes.ParallelCache) == WixChainAttributes.ParallelCache; | ||
54 | } | 60 | } |
55 | } \ No newline at end of file | 61 | } |
diff --git a/src/WixToolset.Data/Tuples/WixComponentSearchTuple.cs b/src/WixToolset.Data/Tuples/WixComponentSearchTuple.cs index 47cccf25..de6f47b9 100644 --- a/src/WixToolset.Data/Tuples/WixComponentSearchTuple.cs +++ b/src/WixToolset.Data/Tuples/WixComponentSearchTuple.cs | |||
@@ -10,7 +10,6 @@ namespace WixToolset.Data | |||
10 | TupleDefinitionType.WixComponentSearch, | 10 | TupleDefinitionType.WixComponentSearch, |
11 | new[] | 11 | new[] |
12 | { | 12 | { |
13 | new IntermediateFieldDefinition(nameof(WixComponentSearchTupleFields.WixSearchRef), IntermediateFieldType.String), | ||
14 | new IntermediateFieldDefinition(nameof(WixComponentSearchTupleFields.Guid), IntermediateFieldType.String), | 13 | new IntermediateFieldDefinition(nameof(WixComponentSearchTupleFields.Guid), IntermediateFieldType.String), |
15 | new IntermediateFieldDefinition(nameof(WixComponentSearchTupleFields.ProductCode), IntermediateFieldType.String), | 14 | new IntermediateFieldDefinition(nameof(WixComponentSearchTupleFields.ProductCode), IntermediateFieldType.String), |
16 | new IntermediateFieldDefinition(nameof(WixComponentSearchTupleFields.Attributes), IntermediateFieldType.Number), | 15 | new IntermediateFieldDefinition(nameof(WixComponentSearchTupleFields.Attributes), IntermediateFieldType.Number), |
@@ -21,14 +20,23 @@ namespace WixToolset.Data | |||
21 | 20 | ||
22 | namespace WixToolset.Data.Tuples | 21 | namespace WixToolset.Data.Tuples |
23 | { | 22 | { |
23 | using System; | ||
24 | |||
24 | public enum WixComponentSearchTupleFields | 25 | public enum WixComponentSearchTupleFields |
25 | { | 26 | { |
26 | WixSearchRef, | ||
27 | Guid, | 27 | Guid, |
28 | ProductCode, | 28 | ProductCode, |
29 | Attributes, | 29 | Attributes, |
30 | } | 30 | } |
31 | 31 | ||
32 | [Flags] | ||
33 | public enum WixComponentSearchAttributes | ||
34 | { | ||
35 | KeyPath = 0x1, | ||
36 | State = 0x2, | ||
37 | WantDirectory = 0x4, | ||
38 | } | ||
39 | |||
32 | public class WixComponentSearchTuple : IntermediateTuple | 40 | public class WixComponentSearchTuple : IntermediateTuple |
33 | { | 41 | { |
34 | public WixComponentSearchTuple() : base(TupleDefinitions.WixComponentSearch, null, null) | 42 | public WixComponentSearchTuple() : base(TupleDefinitions.WixComponentSearch, null, null) |
@@ -41,12 +49,6 @@ namespace WixToolset.Data.Tuples | |||
41 | 49 | ||
42 | public IntermediateField this[WixComponentSearchTupleFields index] => this.Fields[(int)index]; | 50 | public IntermediateField this[WixComponentSearchTupleFields index] => this.Fields[(int)index]; |
43 | 51 | ||
44 | public string WixSearchRef | ||
45 | { | ||
46 | get => (string)this.Fields[(int)WixComponentSearchTupleFields.WixSearchRef]; | ||
47 | set => this.Set((int)WixComponentSearchTupleFields.WixSearchRef, value); | ||
48 | } | ||
49 | |||
50 | public string Guid | 52 | public string Guid |
51 | { | 53 | { |
52 | get => (string)this.Fields[(int)WixComponentSearchTupleFields.Guid]; | 54 | get => (string)this.Fields[(int)WixComponentSearchTupleFields.Guid]; |
@@ -59,10 +61,10 @@ namespace WixToolset.Data.Tuples | |||
59 | set => this.Set((int)WixComponentSearchTupleFields.ProductCode, value); | 61 | set => this.Set((int)WixComponentSearchTupleFields.ProductCode, value); |
60 | } | 62 | } |
61 | 63 | ||
62 | public int Attributes | 64 | public WixComponentSearchAttributes Attributes |
63 | { | 65 | { |
64 | get => (int)this.Fields[(int)WixComponentSearchTupleFields.Attributes]; | 66 | get => (WixComponentSearchAttributes)this.Fields[(int)WixComponentSearchTupleFields.Attributes].AsNumber(); |
65 | set => this.Set((int)WixComponentSearchTupleFields.Attributes, value); | 67 | set => this.Set((int)WixComponentSearchTupleFields.Attributes, (int)value); |
66 | } | 68 | } |
67 | } | 69 | } |
68 | } \ No newline at end of file | 70 | } |
diff --git a/src/WixToolset.Data/Tuples/WixDependencyProviderTuple.cs b/src/WixToolset.Data/Tuples/WixDependencyProviderTuple.cs new file mode 100644 index 00000000..1953594e --- /dev/null +++ b/src/WixToolset.Data/Tuples/WixDependencyProviderTuple.cs | |||
@@ -0,0 +1,87 @@ | |||
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.Data | ||
4 | { | ||
5 | using WixToolset.Data.Tuples; | ||
6 | |||
7 | public static partial class TupleDefinitions | ||
8 | { | ||
9 | public static readonly IntermediateTupleDefinition WixDependencyProvider = new IntermediateTupleDefinition( | ||
10 | TupleDefinitionType.WixDependencyProvider.ToString(), | ||
11 | new[] | ||
12 | { | ||
13 | new IntermediateFieldDefinition(nameof(WixDependencyProviderTupleFields.ComponentRef), IntermediateFieldType.String), | ||
14 | new IntermediateFieldDefinition(nameof(WixDependencyProviderTupleFields.ProviderKey), IntermediateFieldType.String), | ||
15 | new IntermediateFieldDefinition(nameof(WixDependencyProviderTupleFields.Version), IntermediateFieldType.String), | ||
16 | new IntermediateFieldDefinition(nameof(WixDependencyProviderTupleFields.DisplayName), IntermediateFieldType.String), | ||
17 | new IntermediateFieldDefinition(nameof(WixDependencyProviderTupleFields.Attributes), IntermediateFieldType.Number), | ||
18 | }, | ||
19 | typeof(WixDependencyProviderTuple)); | ||
20 | } | ||
21 | } | ||
22 | |||
23 | namespace WixToolset.Data.Tuples | ||
24 | { | ||
25 | using System; | ||
26 | using WixToolset.Data; | ||
27 | |||
28 | public enum WixDependencyProviderTupleFields | ||
29 | { | ||
30 | ComponentRef, | ||
31 | ProviderKey, | ||
32 | Version, | ||
33 | DisplayName, | ||
34 | Attributes, | ||
35 | } | ||
36 | |||
37 | [Flags] | ||
38 | public enum WixDependencyProviderAttributes | ||
39 | { | ||
40 | ProvidesAttributesBundle = 0x10000 | ||
41 | } | ||
42 | |||
43 | public class WixDependencyProviderTuple : IntermediateTuple | ||
44 | { | ||
45 | public WixDependencyProviderTuple() : base(TupleDefinitions.WixDependencyProvider, null, null) | ||
46 | { | ||
47 | } | ||
48 | |||
49 | public WixDependencyProviderTuple(SourceLineNumber sourceLineNumber, Identifier id = null) : base(TupleDefinitions.WixDependencyProvider, sourceLineNumber, id) | ||
50 | { | ||
51 | } | ||
52 | |||
53 | public IntermediateField this[WixDependencyProviderTupleFields index] => this.Fields[(int)index]; | ||
54 | |||
55 | public string ComponentRef | ||
56 | { | ||
57 | get => this.Fields[(int)WixDependencyProviderTupleFields.ComponentRef].AsString(); | ||
58 | set => this.Set((int)WixDependencyProviderTupleFields.ComponentRef, value); | ||
59 | } | ||
60 | |||
61 | public string ProviderKey | ||
62 | { | ||
63 | get => this.Fields[(int)WixDependencyProviderTupleFields.ProviderKey].AsString(); | ||
64 | set => this.Set((int)WixDependencyProviderTupleFields.ProviderKey, value); | ||
65 | } | ||
66 | |||
67 | public string Version | ||
68 | { | ||
69 | get => this.Fields[(int)WixDependencyProviderTupleFields.Version].AsString(); | ||
70 | set => this.Set((int)WixDependencyProviderTupleFields.Version, value); | ||
71 | } | ||
72 | |||
73 | public string DisplayName | ||
74 | { | ||
75 | get => this.Fields[(int)WixDependencyProviderTupleFields.DisplayName].AsString(); | ||
76 | set => this.Set((int)WixDependencyProviderTupleFields.DisplayName, value); | ||
77 | } | ||
78 | |||
79 | public WixDependencyProviderAttributes Attributes | ||
80 | { | ||
81 | get => (WixDependencyProviderAttributes)(int)this.Fields[(int)WixDependencyProviderTupleFields.Attributes]; | ||
82 | set => this.Set((int)WixDependencyProviderTupleFields.Attributes, (int)value); | ||
83 | } | ||
84 | |||
85 | public bool Bundle => (this.Attributes & WixDependencyProviderAttributes.ProvidesAttributesBundle) == WixDependencyProviderAttributes.ProvidesAttributesBundle; | ||
86 | } | ||
87 | } | ||
diff --git a/src/WixToolset.Data/Tuples/WixFileSearchTuple.cs b/src/WixToolset.Data/Tuples/WixFileSearchTuple.cs index 27c5cc83..4c0cedf3 100644 --- a/src/WixToolset.Data/Tuples/WixFileSearchTuple.cs +++ b/src/WixToolset.Data/Tuples/WixFileSearchTuple.cs | |||
@@ -10,7 +10,6 @@ namespace WixToolset.Data | |||
10 | TupleDefinitionType.WixFileSearch, | 10 | TupleDefinitionType.WixFileSearch, |
11 | new[] | 11 | new[] |
12 | { | 12 | { |
13 | new IntermediateFieldDefinition(nameof(WixFileSearchTupleFields.WixSearchRef), IntermediateFieldType.String), | ||
14 | new IntermediateFieldDefinition(nameof(WixFileSearchTupleFields.Path), IntermediateFieldType.String), | 13 | new IntermediateFieldDefinition(nameof(WixFileSearchTupleFields.Path), IntermediateFieldType.String), |
15 | new IntermediateFieldDefinition(nameof(WixFileSearchTupleFields.MinVersion), IntermediateFieldType.String), | 14 | new IntermediateFieldDefinition(nameof(WixFileSearchTupleFields.MinVersion), IntermediateFieldType.String), |
16 | new IntermediateFieldDefinition(nameof(WixFileSearchTupleFields.MaxVersion), IntermediateFieldType.String), | 15 | new IntermediateFieldDefinition(nameof(WixFileSearchTupleFields.MaxVersion), IntermediateFieldType.String), |
@@ -27,9 +26,10 @@ namespace WixToolset.Data | |||
27 | 26 | ||
28 | namespace WixToolset.Data.Tuples | 27 | namespace WixToolset.Data.Tuples |
29 | { | 28 | { |
29 | using System; | ||
30 | |||
30 | public enum WixFileSearchTupleFields | 31 | public enum WixFileSearchTupleFields |
31 | { | 32 | { |
32 | WixSearchRef, | ||
33 | Path, | 33 | Path, |
34 | MinVersion, | 34 | MinVersion, |
35 | MaxVersion, | 35 | MaxVersion, |
@@ -41,6 +41,21 @@ namespace WixToolset.Data.Tuples | |||
41 | Attributes, | 41 | Attributes, |
42 | } | 42 | } |
43 | 43 | ||
44 | [Flags] | ||
45 | public enum WixFileSearchAttributes | ||
46 | { | ||
47 | Default = 0x001, | ||
48 | MinVersionInclusive = 0x002, | ||
49 | MaxVersionInclusive = 0x004, | ||
50 | MinSizeInclusive = 0x008, | ||
51 | MaxSizeInclusive = 0x010, | ||
52 | MinDateInclusive = 0x020, | ||
53 | MaxDateInclusive = 0x040, | ||
54 | WantVersion = 0x080, | ||
55 | WantExists = 0x100, | ||
56 | IsDirectory = 0x200, | ||
57 | } | ||
58 | |||
44 | public class WixFileSearchTuple : IntermediateTuple | 59 | public class WixFileSearchTuple : IntermediateTuple |
45 | { | 60 | { |
46 | public WixFileSearchTuple() : base(TupleDefinitions.WixFileSearch, null, null) | 61 | public WixFileSearchTuple() : base(TupleDefinitions.WixFileSearch, null, null) |
@@ -53,12 +68,6 @@ namespace WixToolset.Data.Tuples | |||
53 | 68 | ||
54 | public IntermediateField this[WixFileSearchTupleFields index] => this.Fields[(int)index]; | 69 | public IntermediateField this[WixFileSearchTupleFields index] => this.Fields[(int)index]; |
55 | 70 | ||
56 | public string WixSearchRef | ||
57 | { | ||
58 | get => (string)this.Fields[(int)WixFileSearchTupleFields.WixSearchRef]; | ||
59 | set => this.Set((int)WixFileSearchTupleFields.WixSearchRef, value); | ||
60 | } | ||
61 | |||
62 | public string Path | 71 | public string Path |
63 | { | 72 | { |
64 | get => (string)this.Fields[(int)WixFileSearchTupleFields.Path]; | 73 | get => (string)this.Fields[(int)WixFileSearchTupleFields.Path]; |
@@ -107,10 +116,10 @@ namespace WixToolset.Data.Tuples | |||
107 | set => this.Set((int)WixFileSearchTupleFields.Languages, value); | 116 | set => this.Set((int)WixFileSearchTupleFields.Languages, value); |
108 | } | 117 | } |
109 | 118 | ||
110 | public int Attributes | 119 | public WixFileSearchAttributes Attributes |
111 | { | 120 | { |
112 | get => (int)this.Fields[(int)WixFileSearchTupleFields.Attributes]; | 121 | get => (WixFileSearchAttributes)this.Fields[(int)WixFileSearchTupleFields.Attributes].AsNumber(); |
113 | set => this.Set((int)WixFileSearchTupleFields.Attributes, value); | 122 | set => this.Set((int)WixFileSearchTupleFields.Attributes, (int)value); |
114 | } | 123 | } |
115 | } | 124 | } |
116 | } \ No newline at end of file | 125 | } |
diff --git a/src/WixToolset.Data/Tuples/WixPackageFeatureInfoTuple.cs b/src/WixToolset.Data/Tuples/WixPackageFeatureInfoTuple.cs deleted file mode 100644 index bcc0ad78..00000000 --- a/src/WixToolset.Data/Tuples/WixPackageFeatureInfoTuple.cs +++ /dev/null | |||
@@ -1,116 +0,0 @@ | |||
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.Data | ||
4 | { | ||
5 | using WixToolset.Data.Tuples; | ||
6 | |||
7 | public static partial class TupleDefinitions | ||
8 | { | ||
9 | public static readonly IntermediateTupleDefinition WixPackageFeatureInfo = new IntermediateTupleDefinition( | ||
10 | TupleDefinitionType.WixPackageFeatureInfo, | ||
11 | new[] | ||
12 | { | ||
13 | new IntermediateFieldDefinition(nameof(WixPackageFeatureInfoTupleFields.Package), IntermediateFieldType.String), | ||
14 | new IntermediateFieldDefinition(nameof(WixPackageFeatureInfoTupleFields.Feature), IntermediateFieldType.String), | ||
15 | new IntermediateFieldDefinition(nameof(WixPackageFeatureInfoTupleFields.Size), IntermediateFieldType.String), | ||
16 | new IntermediateFieldDefinition(nameof(WixPackageFeatureInfoTupleFields.Parent), IntermediateFieldType.String), | ||
17 | new IntermediateFieldDefinition(nameof(WixPackageFeatureInfoTupleFields.Title), IntermediateFieldType.String), | ||
18 | new IntermediateFieldDefinition(nameof(WixPackageFeatureInfoTupleFields.Description), IntermediateFieldType.String), | ||
19 | new IntermediateFieldDefinition(nameof(WixPackageFeatureInfoTupleFields.Display), IntermediateFieldType.String), | ||
20 | new IntermediateFieldDefinition(nameof(WixPackageFeatureInfoTupleFields.Level), IntermediateFieldType.String), | ||
21 | new IntermediateFieldDefinition(nameof(WixPackageFeatureInfoTupleFields.Directory), IntermediateFieldType.String), | ||
22 | new IntermediateFieldDefinition(nameof(WixPackageFeatureInfoTupleFields.Attributes), IntermediateFieldType.String), | ||
23 | }, | ||
24 | typeof(WixPackageFeatureInfoTuple)); | ||
25 | } | ||
26 | } | ||
27 | |||
28 | namespace WixToolset.Data.Tuples | ||
29 | { | ||
30 | public enum WixPackageFeatureInfoTupleFields | ||
31 | { | ||
32 | Package, | ||
33 | Feature, | ||
34 | Size, | ||
35 | Parent, | ||
36 | Title, | ||
37 | Description, | ||
38 | Display, | ||
39 | Level, | ||
40 | Directory, | ||
41 | Attributes, | ||
42 | } | ||
43 | |||
44 | public class WixPackageFeatureInfoTuple : IntermediateTuple | ||
45 | { | ||
46 | public WixPackageFeatureInfoTuple() : base(TupleDefinitions.WixPackageFeatureInfo, null, null) | ||
47 | { | ||
48 | } | ||
49 | |||
50 | public WixPackageFeatureInfoTuple(SourceLineNumber sourceLineNumber, Identifier id = null) : base(TupleDefinitions.WixPackageFeatureInfo, sourceLineNumber, id) | ||
51 | { | ||
52 | } | ||
53 | |||
54 | public IntermediateField this[WixPackageFeatureInfoTupleFields index] => this.Fields[(int)index]; | ||
55 | |||
56 | public string Package | ||
57 | { | ||
58 | get => (string)this.Fields[(int)WixPackageFeatureInfoTupleFields.Package]; | ||
59 | set => this.Set((int)WixPackageFeatureInfoTupleFields.Package, value); | ||
60 | } | ||
61 | |||
62 | public string Feature | ||
63 | { | ||
64 | get => (string)this.Fields[(int)WixPackageFeatureInfoTupleFields.Feature]; | ||
65 | set => this.Set((int)WixPackageFeatureInfoTupleFields.Feature, value); | ||
66 | } | ||
67 | |||
68 | public string Size | ||
69 | { | ||
70 | get => (string)this.Fields[(int)WixPackageFeatureInfoTupleFields.Size]; | ||
71 | set => this.Set((int)WixPackageFeatureInfoTupleFields.Size, value); | ||
72 | } | ||
73 | |||
74 | public string Parent | ||
75 | { | ||
76 | get => (string)this.Fields[(int)WixPackageFeatureInfoTupleFields.Parent]; | ||
77 | set => this.Set((int)WixPackageFeatureInfoTupleFields.Parent, value); | ||
78 | } | ||
79 | |||
80 | public string Title | ||
81 | { | ||
82 | get => (string)this.Fields[(int)WixPackageFeatureInfoTupleFields.Title]; | ||
83 | set => this.Set((int)WixPackageFeatureInfoTupleFields.Title, value); | ||
84 | } | ||
85 | |||
86 | public string Description | ||
87 | { | ||
88 | get => (string)this.Fields[(int)WixPackageFeatureInfoTupleFields.Description]; | ||
89 | set => this.Set((int)WixPackageFeatureInfoTupleFields.Description, value); | ||
90 | } | ||
91 | |||
92 | public string Display | ||
93 | { | ||
94 | get => (string)this.Fields[(int)WixPackageFeatureInfoTupleFields.Display]; | ||
95 | set => this.Set((int)WixPackageFeatureInfoTupleFields.Display, value); | ||
96 | } | ||
97 | |||
98 | public string Level | ||
99 | { | ||
100 | get => (string)this.Fields[(int)WixPackageFeatureInfoTupleFields.Level]; | ||
101 | set => this.Set((int)WixPackageFeatureInfoTupleFields.Level, value); | ||
102 | } | ||
103 | |||
104 | public string Directory | ||
105 | { | ||
106 | get => (string)this.Fields[(int)WixPackageFeatureInfoTupleFields.Directory]; | ||
107 | set => this.Set((int)WixPackageFeatureInfoTupleFields.Directory, value); | ||
108 | } | ||
109 | |||
110 | public string Attributes | ||
111 | { | ||
112 | get => (string)this.Fields[(int)WixPackageFeatureInfoTupleFields.Attributes]; | ||
113 | set => this.Set((int)WixPackageFeatureInfoTupleFields.Attributes, value); | ||
114 | } | ||
115 | } | ||
116 | } \ No newline at end of file | ||
diff --git a/src/WixToolset.Data/Tuples/WixPackagePropertiesTuple.cs b/src/WixToolset.Data/Tuples/WixPackagePropertiesTuple.cs deleted file mode 100644 index 56f6523b..00000000 --- a/src/WixToolset.Data/Tuples/WixPackagePropertiesTuple.cs +++ /dev/null | |||
@@ -1,180 +0,0 @@ | |||
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.Data | ||
4 | { | ||
5 | using WixToolset.Data.Tuples; | ||
6 | |||
7 | public static partial class TupleDefinitions | ||
8 | { | ||
9 | public static readonly IntermediateTupleDefinition WixPackageProperties = new IntermediateTupleDefinition( | ||
10 | TupleDefinitionType.WixPackageProperties, | ||
11 | new[] | ||
12 | { | ||
13 | new IntermediateFieldDefinition(nameof(WixPackagePropertiesTupleFields.Package), IntermediateFieldType.String), | ||
14 | new IntermediateFieldDefinition(nameof(WixPackagePropertiesTupleFields.Vital), IntermediateFieldType.String), | ||
15 | new IntermediateFieldDefinition(nameof(WixPackagePropertiesTupleFields.DisplayName), IntermediateFieldType.String), | ||
16 | new IntermediateFieldDefinition(nameof(WixPackagePropertiesTupleFields.Description), IntermediateFieldType.String), | ||
17 | new IntermediateFieldDefinition(nameof(WixPackagePropertiesTupleFields.DownloadSize), IntermediateFieldType.String), | ||
18 | new IntermediateFieldDefinition(nameof(WixPackagePropertiesTupleFields.PackageSize), IntermediateFieldType.String), | ||
19 | new IntermediateFieldDefinition(nameof(WixPackagePropertiesTupleFields.InstalledSize), IntermediateFieldType.String), | ||
20 | new IntermediateFieldDefinition(nameof(WixPackagePropertiesTupleFields.PackageType), IntermediateFieldType.String), | ||
21 | new IntermediateFieldDefinition(nameof(WixPackagePropertiesTupleFields.Permanent), IntermediateFieldType.String), | ||
22 | new IntermediateFieldDefinition(nameof(WixPackagePropertiesTupleFields.LogPathVariable), IntermediateFieldType.String), | ||
23 | new IntermediateFieldDefinition(nameof(WixPackagePropertiesTupleFields.RollbackLogPathVariable), IntermediateFieldType.String), | ||
24 | new IntermediateFieldDefinition(nameof(WixPackagePropertiesTupleFields.Compressed), IntermediateFieldType.String), | ||
25 | new IntermediateFieldDefinition(nameof(WixPackagePropertiesTupleFields.DisplayInternalUI), IntermediateFieldType.String), | ||
26 | new IntermediateFieldDefinition(nameof(WixPackagePropertiesTupleFields.ProductCode), IntermediateFieldType.String), | ||
27 | new IntermediateFieldDefinition(nameof(WixPackagePropertiesTupleFields.UpgradeCode), IntermediateFieldType.String), | ||
28 | new IntermediateFieldDefinition(nameof(WixPackagePropertiesTupleFields.Version), IntermediateFieldType.String), | ||
29 | new IntermediateFieldDefinition(nameof(WixPackagePropertiesTupleFields.InstallCondition), IntermediateFieldType.String), | ||
30 | new IntermediateFieldDefinition(nameof(WixPackagePropertiesTupleFields.Cache), IntermediateFieldType.String), | ||
31 | }, | ||
32 | typeof(WixPackagePropertiesTuple)); | ||
33 | } | ||
34 | } | ||
35 | |||
36 | namespace WixToolset.Data.Tuples | ||
37 | { | ||
38 | public enum WixPackagePropertiesTupleFields | ||
39 | { | ||
40 | Package, | ||
41 | Vital, | ||
42 | DisplayName, | ||
43 | Description, | ||
44 | DownloadSize, | ||
45 | PackageSize, | ||
46 | InstalledSize, | ||
47 | PackageType, | ||
48 | Permanent, | ||
49 | LogPathVariable, | ||
50 | RollbackLogPathVariable, | ||
51 | Compressed, | ||
52 | DisplayInternalUI, | ||
53 | ProductCode, | ||
54 | UpgradeCode, | ||
55 | Version, | ||
56 | InstallCondition, | ||
57 | Cache, | ||
58 | } | ||
59 | |||
60 | public class WixPackagePropertiesTuple : IntermediateTuple | ||
61 | { | ||
62 | public WixPackagePropertiesTuple() : base(TupleDefinitions.WixPackageProperties, null, null) | ||
63 | { | ||
64 | } | ||
65 | |||
66 | public WixPackagePropertiesTuple(SourceLineNumber sourceLineNumber, Identifier id = null) : base(TupleDefinitions.WixPackageProperties, sourceLineNumber, id) | ||
67 | { | ||
68 | } | ||
69 | |||
70 | public IntermediateField this[WixPackagePropertiesTupleFields index] => this.Fields[(int)index]; | ||
71 | |||
72 | public string Package | ||
73 | { | ||
74 | get => (string)this.Fields[(int)WixPackagePropertiesTupleFields.Package]; | ||
75 | set => this.Set((int)WixPackagePropertiesTupleFields.Package, value); | ||
76 | } | ||
77 | |||
78 | public string Vital | ||
79 | { | ||
80 | get => (string)this.Fields[(int)WixPackagePropertiesTupleFields.Vital]; | ||
81 | set => this.Set((int)WixPackagePropertiesTupleFields.Vital, value); | ||
82 | } | ||
83 | |||
84 | public string DisplayName | ||
85 | { | ||
86 | get => (string)this.Fields[(int)WixPackagePropertiesTupleFields.DisplayName]; | ||
87 | set => this.Set((int)WixPackagePropertiesTupleFields.DisplayName, value); | ||
88 | } | ||
89 | |||
90 | public string Description | ||
91 | { | ||
92 | get => (string)this.Fields[(int)WixPackagePropertiesTupleFields.Description]; | ||
93 | set => this.Set((int)WixPackagePropertiesTupleFields.Description, value); | ||
94 | } | ||
95 | |||
96 | public string DownloadSize | ||
97 | { | ||
98 | get => (string)this.Fields[(int)WixPackagePropertiesTupleFields.DownloadSize]; | ||
99 | set => this.Set((int)WixPackagePropertiesTupleFields.DownloadSize, value); | ||
100 | } | ||
101 | |||
102 | public string PackageSize | ||
103 | { | ||
104 | get => (string)this.Fields[(int)WixPackagePropertiesTupleFields.PackageSize]; | ||
105 | set => this.Set((int)WixPackagePropertiesTupleFields.PackageSize, value); | ||
106 | } | ||
107 | |||
108 | public string InstalledSize | ||
109 | { | ||
110 | get => (string)this.Fields[(int)WixPackagePropertiesTupleFields.InstalledSize]; | ||
111 | set => this.Set((int)WixPackagePropertiesTupleFields.InstalledSize, value); | ||
112 | } | ||
113 | |||
114 | public string PackageType | ||
115 | { | ||
116 | get => (string)this.Fields[(int)WixPackagePropertiesTupleFields.PackageType]; | ||
117 | set => this.Set((int)WixPackagePropertiesTupleFields.PackageType, value); | ||
118 | } | ||
119 | |||
120 | public string Permanent | ||
121 | { | ||
122 | get => (string)this.Fields[(int)WixPackagePropertiesTupleFields.Permanent]; | ||
123 | set => this.Set((int)WixPackagePropertiesTupleFields.Permanent, value); | ||
124 | } | ||
125 | |||
126 | public string LogPathVariable | ||
127 | { | ||
128 | get => (string)this.Fields[(int)WixPackagePropertiesTupleFields.LogPathVariable]; | ||
129 | set => this.Set((int)WixPackagePropertiesTupleFields.LogPathVariable, value); | ||
130 | } | ||
131 | |||
132 | public string RollbackLogPathVariable | ||
133 | { | ||
134 | get => (string)this.Fields[(int)WixPackagePropertiesTupleFields.RollbackLogPathVariable]; | ||
135 | set => this.Set((int)WixPackagePropertiesTupleFields.RollbackLogPathVariable, value); | ||
136 | } | ||
137 | |||
138 | public string Compressed | ||
139 | { | ||
140 | get => (string)this.Fields[(int)WixPackagePropertiesTupleFields.Compressed]; | ||
141 | set => this.Set((int)WixPackagePropertiesTupleFields.Compressed, value); | ||
142 | } | ||
143 | |||
144 | public string DisplayInternalUI | ||
145 | { | ||
146 | get => (string)this.Fields[(int)WixPackagePropertiesTupleFields.DisplayInternalUI]; | ||
147 | set => this.Set((int)WixPackagePropertiesTupleFields.DisplayInternalUI, value); | ||
148 | } | ||
149 | |||
150 | public string ProductCode | ||
151 | { | ||
152 | get => (string)this.Fields[(int)WixPackagePropertiesTupleFields.ProductCode]; | ||
153 | set => this.Set((int)WixPackagePropertiesTupleFields.ProductCode, value); | ||
154 | } | ||
155 | |||
156 | public string UpgradeCode | ||
157 | { | ||
158 | get => (string)this.Fields[(int)WixPackagePropertiesTupleFields.UpgradeCode]; | ||
159 | set => this.Set((int)WixPackagePropertiesTupleFields.UpgradeCode, value); | ||
160 | } | ||
161 | |||
162 | public string Version | ||
163 | { | ||
164 | get => (string)this.Fields[(int)WixPackagePropertiesTupleFields.Version]; | ||
165 | set => this.Set((int)WixPackagePropertiesTupleFields.Version, value); | ||
166 | } | ||
167 | |||
168 | public string InstallCondition | ||
169 | { | ||
170 | get => (string)this.Fields[(int)WixPackagePropertiesTupleFields.InstallCondition]; | ||
171 | set => this.Set((int)WixPackagePropertiesTupleFields.InstallCondition, value); | ||
172 | } | ||
173 | |||
174 | public string Cache | ||
175 | { | ||
176 | get => (string)this.Fields[(int)WixPackagePropertiesTupleFields.Cache]; | ||
177 | set => this.Set((int)WixPackagePropertiesTupleFields.Cache, value); | ||
178 | } | ||
179 | } | ||
180 | } \ No newline at end of file | ||
diff --git a/src/WixToolset.Data/Tuples/WixPayloadPropertiesTuple.cs b/src/WixToolset.Data/Tuples/WixPayloadPropertiesTuple.cs deleted file mode 100644 index c992bb4f..00000000 --- a/src/WixToolset.Data/Tuples/WixPayloadPropertiesTuple.cs +++ /dev/null | |||
@@ -1,92 +0,0 @@ | |||
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.Data | ||
4 | { | ||
5 | using WixToolset.Data.Tuples; | ||
6 | |||
7 | public static partial class TupleDefinitions | ||
8 | { | ||
9 | public static readonly IntermediateTupleDefinition WixPayloadProperties = new IntermediateTupleDefinition( | ||
10 | TupleDefinitionType.WixPayloadProperties, | ||
11 | new[] | ||
12 | { | ||
13 | new IntermediateFieldDefinition(nameof(WixPayloadPropertiesTupleFields.Payload), IntermediateFieldType.String), | ||
14 | new IntermediateFieldDefinition(nameof(WixPayloadPropertiesTupleFields.Package), IntermediateFieldType.String), | ||
15 | new IntermediateFieldDefinition(nameof(WixPayloadPropertiesTupleFields.Container), IntermediateFieldType.String), | ||
16 | new IntermediateFieldDefinition(nameof(WixPayloadPropertiesTupleFields.Name), IntermediateFieldType.String), | ||
17 | new IntermediateFieldDefinition(nameof(WixPayloadPropertiesTupleFields.Size), IntermediateFieldType.String), | ||
18 | new IntermediateFieldDefinition(nameof(WixPayloadPropertiesTupleFields.DownloadUrl), IntermediateFieldType.String), | ||
19 | new IntermediateFieldDefinition(nameof(WixPayloadPropertiesTupleFields.LayoutOnly), IntermediateFieldType.String), | ||
20 | }, | ||
21 | typeof(WixPayloadPropertiesTuple)); | ||
22 | } | ||
23 | } | ||
24 | |||
25 | namespace WixToolset.Data.Tuples | ||
26 | { | ||
27 | public enum WixPayloadPropertiesTupleFields | ||
28 | { | ||
29 | Payload, | ||
30 | Package, | ||
31 | Container, | ||
32 | Name, | ||
33 | Size, | ||
34 | DownloadUrl, | ||
35 | LayoutOnly, | ||
36 | } | ||
37 | |||
38 | public class WixPayloadPropertiesTuple : IntermediateTuple | ||
39 | { | ||
40 | public WixPayloadPropertiesTuple() : base(TupleDefinitions.WixPayloadProperties, null, null) | ||
41 | { | ||
42 | } | ||
43 | |||
44 | public WixPayloadPropertiesTuple(SourceLineNumber sourceLineNumber, Identifier id = null) : base(TupleDefinitions.WixPayloadProperties, sourceLineNumber, id) | ||
45 | { | ||
46 | } | ||
47 | |||
48 | public IntermediateField this[WixPayloadPropertiesTupleFields index] => this.Fields[(int)index]; | ||
49 | |||
50 | public string Payload | ||
51 | { | ||
52 | get => (string)this.Fields[(int)WixPayloadPropertiesTupleFields.Payload]; | ||
53 | set => this.Set((int)WixPayloadPropertiesTupleFields.Payload, value); | ||
54 | } | ||
55 | |||
56 | public string Package | ||
57 | { | ||
58 | get => (string)this.Fields[(int)WixPayloadPropertiesTupleFields.Package]; | ||
59 | set => this.Set((int)WixPayloadPropertiesTupleFields.Package, value); | ||
60 | } | ||
61 | |||
62 | public string Container | ||
63 | { | ||
64 | get => (string)this.Fields[(int)WixPayloadPropertiesTupleFields.Container]; | ||
65 | set => this.Set((int)WixPayloadPropertiesTupleFields.Container, value); | ||
66 | } | ||
67 | |||
68 | public string Name | ||
69 | { | ||
70 | get => (string)this.Fields[(int)WixPayloadPropertiesTupleFields.Name]; | ||
71 | set => this.Set((int)WixPayloadPropertiesTupleFields.Name, value); | ||
72 | } | ||
73 | |||
74 | public string Size | ||
75 | { | ||
76 | get => (string)this.Fields[(int)WixPayloadPropertiesTupleFields.Size]; | ||
77 | set => this.Set((int)WixPayloadPropertiesTupleFields.Size, value); | ||
78 | } | ||
79 | |||
80 | public string DownloadUrl | ||
81 | { | ||
82 | get => (string)this.Fields[(int)WixPayloadPropertiesTupleFields.DownloadUrl]; | ||
83 | set => this.Set((int)WixPayloadPropertiesTupleFields.DownloadUrl, value); | ||
84 | } | ||
85 | |||
86 | public string LayoutOnly | ||
87 | { | ||
88 | get => (string)this.Fields[(int)WixPayloadPropertiesTupleFields.LayoutOnly]; | ||
89 | set => this.Set((int)WixPayloadPropertiesTupleFields.LayoutOnly, value); | ||
90 | } | ||
91 | } | ||
92 | } \ No newline at end of file | ||
diff --git a/src/WixToolset.Data/Tuples/WixProductSearchTuple.cs b/src/WixToolset.Data/Tuples/WixProductSearchTuple.cs index 4a13f47d..22e96365 100644 --- a/src/WixToolset.Data/Tuples/WixProductSearchTuple.cs +++ b/src/WixToolset.Data/Tuples/WixProductSearchTuple.cs | |||
@@ -10,7 +10,6 @@ namespace WixToolset.Data | |||
10 | TupleDefinitionType.WixProductSearch, | 10 | TupleDefinitionType.WixProductSearch, |
11 | new[] | 11 | new[] |
12 | { | 12 | { |
13 | new IntermediateFieldDefinition(nameof(WixProductSearchTupleFields.WixSearchRef), IntermediateFieldType.String), | ||
14 | new IntermediateFieldDefinition(nameof(WixProductSearchTupleFields.Guid), IntermediateFieldType.String), | 13 | new IntermediateFieldDefinition(nameof(WixProductSearchTupleFields.Guid), IntermediateFieldType.String), |
15 | new IntermediateFieldDefinition(nameof(WixProductSearchTupleFields.Attributes), IntermediateFieldType.Number), | 14 | new IntermediateFieldDefinition(nameof(WixProductSearchTupleFields.Attributes), IntermediateFieldType.Number), |
16 | }, | 15 | }, |
@@ -20,13 +19,24 @@ namespace WixToolset.Data | |||
20 | 19 | ||
21 | namespace WixToolset.Data.Tuples | 20 | namespace WixToolset.Data.Tuples |
22 | { | 21 | { |
22 | using System; | ||
23 | |||
23 | public enum WixProductSearchTupleFields | 24 | public enum WixProductSearchTupleFields |
24 | { | 25 | { |
25 | WixSearchRef, | ||
26 | Guid, | 26 | Guid, |
27 | Attributes, | 27 | Attributes, |
28 | } | 28 | } |
29 | 29 | ||
30 | [Flags] | ||
31 | public enum WixProductSearchAttributes | ||
32 | { | ||
33 | Version = 0x1, | ||
34 | Language = 0x2, | ||
35 | State = 0x4, | ||
36 | Assignment = 0x8, | ||
37 | UpgradeCode = 0x10, | ||
38 | } | ||
39 | |||
30 | public class WixProductSearchTuple : IntermediateTuple | 40 | public class WixProductSearchTuple : IntermediateTuple |
31 | { | 41 | { |
32 | public WixProductSearchTuple() : base(TupleDefinitions.WixProductSearch, null, null) | 42 | public WixProductSearchTuple() : base(TupleDefinitions.WixProductSearch, null, null) |
@@ -39,22 +49,16 @@ namespace WixToolset.Data.Tuples | |||
39 | 49 | ||
40 | public IntermediateField this[WixProductSearchTupleFields index] => this.Fields[(int)index]; | 50 | public IntermediateField this[WixProductSearchTupleFields index] => this.Fields[(int)index]; |
41 | 51 | ||
42 | public string WixSearchRef | ||
43 | { | ||
44 | get => (string)this.Fields[(int)WixProductSearchTupleFields.WixSearchRef]; | ||
45 | set => this.Set((int)WixProductSearchTupleFields.WixSearchRef, value); | ||
46 | } | ||
47 | |||
48 | public string Guid | 52 | public string Guid |
49 | { | 53 | { |
50 | get => (string)this.Fields[(int)WixProductSearchTupleFields.Guid]; | 54 | get => (string)this.Fields[(int)WixProductSearchTupleFields.Guid]; |
51 | set => this.Set((int)WixProductSearchTupleFields.Guid, value); | 55 | set => this.Set((int)WixProductSearchTupleFields.Guid, value); |
52 | } | 56 | } |
53 | 57 | ||
54 | public int Attributes | 58 | public WixProductSearchAttributes Attributes |
55 | { | 59 | { |
56 | get => (int)this.Fields[(int)WixProductSearchTupleFields.Attributes]; | 60 | get => (WixProductSearchAttributes)this.Fields[(int)WixProductSearchTupleFields.Attributes].AsNumber(); |
57 | set => this.Set((int)WixProductSearchTupleFields.Attributes, value); | 61 | set => this.Set((int)WixProductSearchTupleFields.Attributes, (int)value); |
58 | } | 62 | } |
59 | } | 63 | } |
60 | } \ No newline at end of file | 64 | } |
diff --git a/src/WixToolset.Data/Tuples/WixRegistrySearchTuple.cs b/src/WixToolset.Data/Tuples/WixRegistrySearchTuple.cs index c88d6982..6bf43a00 100644 --- a/src/WixToolset.Data/Tuples/WixRegistrySearchTuple.cs +++ b/src/WixToolset.Data/Tuples/WixRegistrySearchTuple.cs | |||
@@ -10,7 +10,6 @@ namespace WixToolset.Data | |||
10 | TupleDefinitionType.WixRegistrySearch, | 10 | TupleDefinitionType.WixRegistrySearch, |
11 | new[] | 11 | new[] |
12 | { | 12 | { |
13 | new IntermediateFieldDefinition(nameof(WixRegistrySearchTupleFields.WixSearchRef), IntermediateFieldType.String), | ||
14 | new IntermediateFieldDefinition(nameof(WixRegistrySearchTupleFields.Root), IntermediateFieldType.Number), | 13 | new IntermediateFieldDefinition(nameof(WixRegistrySearchTupleFields.Root), IntermediateFieldType.Number), |
15 | new IntermediateFieldDefinition(nameof(WixRegistrySearchTupleFields.Key), IntermediateFieldType.String), | 14 | new IntermediateFieldDefinition(nameof(WixRegistrySearchTupleFields.Key), IntermediateFieldType.String), |
16 | new IntermediateFieldDefinition(nameof(WixRegistrySearchTupleFields.Value), IntermediateFieldType.String), | 15 | new IntermediateFieldDefinition(nameof(WixRegistrySearchTupleFields.Value), IntermediateFieldType.String), |
@@ -22,15 +21,27 @@ namespace WixToolset.Data | |||
22 | 21 | ||
23 | namespace WixToolset.Data.Tuples | 22 | namespace WixToolset.Data.Tuples |
24 | { | 23 | { |
24 | using System; | ||
25 | |||
25 | public enum WixRegistrySearchTupleFields | 26 | public enum WixRegistrySearchTupleFields |
26 | { | 27 | { |
27 | WixSearchRef, | ||
28 | Root, | 28 | Root, |
29 | Key, | 29 | Key, |
30 | Value, | 30 | Value, |
31 | Attributes, | 31 | Attributes, |
32 | } | 32 | } |
33 | 33 | ||
34 | [Flags] | ||
35 | public enum WixRegistrySearchAttributes | ||
36 | { | ||
37 | Raw = 0x01, | ||
38 | Compatible = 0x02, | ||
39 | ExpandEnvironmentVariables = 0x04, | ||
40 | WantValue = 0x08, | ||
41 | WantExists = 0x10, | ||
42 | Win64 = 0x20, | ||
43 | } | ||
44 | |||
34 | public class WixRegistrySearchTuple : IntermediateTuple | 45 | public class WixRegistrySearchTuple : IntermediateTuple |
35 | { | 46 | { |
36 | public WixRegistrySearchTuple() : base(TupleDefinitions.WixRegistrySearch, null, null) | 47 | public WixRegistrySearchTuple() : base(TupleDefinitions.WixRegistrySearch, null, null) |
@@ -43,16 +54,10 @@ namespace WixToolset.Data.Tuples | |||
43 | 54 | ||
44 | public IntermediateField this[WixRegistrySearchTupleFields index] => this.Fields[(int)index]; | 55 | public IntermediateField this[WixRegistrySearchTupleFields index] => this.Fields[(int)index]; |
45 | 56 | ||
46 | public string WixSearchRef | 57 | public RegistryRootType Root |
47 | { | 58 | { |
48 | get => (string)this.Fields[(int)WixRegistrySearchTupleFields.WixSearchRef]; | 59 | get => (RegistryRootType)this.Fields[(int)WixRegistrySearchTupleFields.Root].AsNumber(); |
49 | set => this.Set((int)WixRegistrySearchTupleFields.WixSearchRef, value); | 60 | set => this.Set((int)WixRegistrySearchTupleFields.Root, (int)value); |
50 | } | ||
51 | |||
52 | public int Root | ||
53 | { | ||
54 | get => (int)this.Fields[(int)WixRegistrySearchTupleFields.Root]; | ||
55 | set => this.Set((int)WixRegistrySearchTupleFields.Root, value); | ||
56 | } | 61 | } |
57 | 62 | ||
58 | public string Key | 63 | public string Key |
@@ -67,10 +72,10 @@ namespace WixToolset.Data.Tuples | |||
67 | set => this.Set((int)WixRegistrySearchTupleFields.Value, value); | 72 | set => this.Set((int)WixRegistrySearchTupleFields.Value, value); |
68 | } | 73 | } |
69 | 74 | ||
70 | public int Attributes | 75 | public WixRegistrySearchAttributes Attributes |
71 | { | 76 | { |
72 | get => (int)this.Fields[(int)WixRegistrySearchTupleFields.Attributes]; | 77 | get => (WixRegistrySearchAttributes)this.Fields[(int)WixRegistrySearchTupleFields.Attributes].AsNumber(); |
73 | set => this.Set((int)WixRegistrySearchTupleFields.Attributes, value); | 78 | set => this.Set((int)WixRegistrySearchTupleFields.Attributes, (int)value); |
74 | } | 79 | } |
75 | } | 80 | } |
76 | } \ No newline at end of file | 81 | } |
diff --git a/src/WixToolset.Data/WindowsInstaller/Rows/WixApprovedExeForElevationRow.cs b/src/WixToolset.Data/WindowsInstaller/Rows/WixApprovedExeForElevationRow.cs index b3d85c8a..28a14ddd 100644 --- a/src/WixToolset.Data/WindowsInstaller/Rows/WixApprovedExeForElevationRow.cs +++ b/src/WixToolset.Data/WindowsInstaller/Rows/WixApprovedExeForElevationRow.cs | |||
@@ -2,6 +2,8 @@ | |||
2 | 2 | ||
3 | namespace WixToolset.Data.WindowsInstaller.Rows | 3 | namespace WixToolset.Data.WindowsInstaller.Rows |
4 | { | 4 | { |
5 | using WixToolset.Data.Tuples; | ||
6 | |||
5 | /// <summary> | 7 | /// <summary> |
6 | /// Specialization of a row for the WixApprovedExeForElevation table. | 8 | /// Specialization of a row for the WixApprovedExeForElevation table. |
7 | /// </summary> | 9 | /// </summary> |
@@ -61,9 +63,9 @@ namespace WixToolset.Data.WindowsInstaller.Rows | |||
61 | /// Gets or sets the attibutes. | 63 | /// Gets or sets the attibutes. |
62 | /// </summary> | 64 | /// </summary> |
63 | /// <value>The BundleApprovedExeForElevationAttributes.</value> | 65 | /// <value>The BundleApprovedExeForElevationAttributes.</value> |
64 | public BundleApprovedExeForElevationAttributes Attributes | 66 | public WixApprovedExeForElevationAttributes Attributes |
65 | { | 67 | { |
66 | get { return (BundleApprovedExeForElevationAttributes)this.Fields[3].Data; } | 68 | get { return (WixApprovedExeForElevationAttributes)this.Fields[3].Data; } |
67 | set { this.Fields[3].Data = (int)value; } | 69 | set { this.Fields[3].Data = (int)value; } |
68 | } | 70 | } |
69 | 71 | ||
@@ -72,7 +74,7 @@ namespace WixToolset.Data.WindowsInstaller.Rows | |||
72 | /// </summary> | 74 | /// </summary> |
73 | public bool Win64 | 75 | public bool Win64 |
74 | { | 76 | { |
75 | get { return BundleApprovedExeForElevationAttributes.Win64 == (this.Attributes & BundleApprovedExeForElevationAttributes.Win64); } | 77 | get { return WixApprovedExeForElevationAttributes.Win64 == (this.Attributes & WixApprovedExeForElevationAttributes.Win64); } |
76 | } | 78 | } |
77 | } | 79 | } |
78 | } | 80 | } |
diff --git a/src/WixToolset.Data/WindowsInstaller/Rows/WixBundleExePackageRow.cs b/src/WixToolset.Data/WindowsInstaller/Rows/WixBundleExePackageRow.cs index 95fc0f54..241c1f7f 100644 --- a/src/WixToolset.Data/WindowsInstaller/Rows/WixBundleExePackageRow.cs +++ b/src/WixToolset.Data/WindowsInstaller/Rows/WixBundleExePackageRow.cs | |||
@@ -2,6 +2,7 @@ | |||
2 | 2 | ||
3 | namespace WixToolset.Data.WindowsInstaller.Rows | 3 | namespace WixToolset.Data.WindowsInstaller.Rows |
4 | { | 4 | { |
5 | using System; | ||
5 | using WixToolset.Data.Tuples; | 6 | using WixToolset.Data.Tuples; |
6 | 7 | ||
7 | /// <summary> | 8 | /// <summary> |
@@ -97,7 +98,7 @@ namespace WixToolset.Data.WindowsInstaller.Rows | |||
97 | /// </summary> | 98 | /// </summary> |
98 | public bool Repairable | 99 | public bool Repairable |
99 | { | 100 | { |
100 | get { return 0 != (this.Attributes & WixBundleExePackageAttributes.Repairable); } | 101 | get { return !String.IsNullOrEmpty(this.RepairCommand); } |
101 | } | 102 | } |
102 | } | 103 | } |
103 | } | 104 | } |
diff --git a/src/WixToolset.Data/WindowsInstaller/Rows/WixBundleMsiPackageRow.cs b/src/WixToolset.Data/WindowsInstaller/Rows/WixBundleMsiPackageRow.cs index fdd2b6cf..5f07072d 100644 --- a/src/WixToolset.Data/WindowsInstaller/Rows/WixBundleMsiPackageRow.cs +++ b/src/WixToolset.Data/WindowsInstaller/Rows/WixBundleMsiPackageRow.cs | |||
@@ -126,13 +126,5 @@ namespace WixToolset.Data.WindowsInstaller.Rows | |||
126 | { | 126 | { |
127 | get { return 0 != (this.Attributes & WixBundleMsiPackageAttributes.ForcePerMachine); } | 127 | get { return 0 != (this.Attributes & WixBundleMsiPackageAttributes.ForcePerMachine); } |
128 | } | 128 | } |
129 | |||
130 | /// <summary> | ||
131 | /// Gets the suppress loose file payload generation of a package. | ||
132 | /// </summary> | ||
133 | public bool SuppressLooseFilePayloadGeneration | ||
134 | { | ||
135 | get { return 0 != (this.Attributes & WixBundleMsiPackageAttributes.SuppressLooseFilePayloadGeneration); } | ||
136 | } | ||
137 | } | 129 | } |
138 | } | 130 | } |
diff --git a/src/WixToolset.Data/WindowsInstaller/Rows/WixBundlePatchTargetCodeRow.cs b/src/WixToolset.Data/WindowsInstaller/Rows/WixBundlePatchTargetCodeRow.cs index 6e05e4b7..84d13c43 100644 --- a/src/WixToolset.Data/WindowsInstaller/Rows/WixBundlePatchTargetCodeRow.cs +++ b/src/WixToolset.Data/WindowsInstaller/Rows/WixBundlePatchTargetCodeRow.cs | |||
@@ -3,25 +3,7 @@ | |||
3 | namespace WixToolset.Data.WindowsInstaller.Rows | 3 | namespace WixToolset.Data.WindowsInstaller.Rows |
4 | { | 4 | { |
5 | using System; | 5 | using System; |
6 | 6 | using WixToolset.Data.Tuples; | |
7 | /// <summary> | ||
8 | /// Attributes for the PatchTargetCode table. | ||
9 | /// </summary> | ||
10 | [Flags] | ||
11 | public enum WixBundlePatchTargetCodeAttributes : int | ||
12 | { | ||
13 | None = 0, | ||
14 | |||
15 | /// <summary> | ||
16 | /// The transform targets a specific ProductCode. | ||
17 | /// </summary> | ||
18 | TargetsProductCode = 1, | ||
19 | |||
20 | /// <summary> | ||
21 | /// The transform targets a specific UpgradeCode. | ||
22 | /// </summary> | ||
23 | TargetsUpgradeCode = 2, | ||
24 | } | ||
25 | 7 | ||
26 | /// <summary> | 8 | /// <summary> |
27 | /// Specialization of a row for the PatchTargetCode table. | 9 | /// Specialization of a row for the PatchTargetCode table. |