@joebigelow / wix / commits / 0e1b0401

The Great Tuple to Symbol Rename (tm)

Rob Mensching committed Jun 25, 2020 at 15:37 UTC 0e1b04018fc918d1a1c09a49363cb321cd68fe60
11 files changed +313 -313
WixToolset.Converters.sln
+2 -2
@@ -5,13 +5,13 @@ VisualStudioVersion = 15.0.26124.0
5 MinimumVisualStudioVersion = 15.0.26124.0
6 Project("{9A19103F-16F7-4668-BE54-9A1E7A4F7556}") = "WixToolset.Converters", "src\WixToolset.Converters\WixToolset.Converters.csproj", "{6FAF6385-6598-4B89-972B-C31AFCA14538}"
7 EndProject
8 -Project("{9A19103F-16F7-4668-BE54-9A1E7A4F7556}") = "WixToolset.Converters.Tupleizer", "src\WixToolset.Converters.Tupleizer\WixToolset.Converters.Tupleizer.csproj", "{F051BCAF-698C-41D5-8427-164537CE5C5C}"
8 +Project("{9A19103F-16F7-4668-BE54-9A1E7A4F7556}") = "WixToolset.Converters.Symbolizer", "src\WixToolset.Converters.Symbolizer\WixToolset.Converters.Symbolizer.csproj", "{F051BCAF-698C-41D5-8427-164537CE5C5C}"
9 EndProject
10 Project("{2150E333-8FDC-42A3-9474-1A3956D46DE8}") = "Test", "Test", "{1B16A6C1-2B5D-4F9A-9DD5-FBC89B3CE31E}"
11 EndProject
12 Project("{9A19103F-16F7-4668-BE54-9A1E7A4F7556}") = "WixToolsetTest.Converters", "src\test\WixToolsetTest.Converters\WixToolsetTest.Converters.csproj", "{485C5038-97E1-4729-A54D-848CC69569FD}"
13 EndProject
14 -Project("{9A19103F-16F7-4668-BE54-9A1E7A4F7556}") = "WixToolsetTest.Converters.Tupleizer", "src\test\WixToolsetTest.Converters.Tupleizer\WixToolsetTest.Converters.Tupleizer.csproj", "{9DB36DB1-24A1-47A7-9E57-D48A2E33C13C}"
14 +Project("{9A19103F-16F7-4668-BE54-9A1E7A4F7556}") = "WixToolsetTest.Converters.Symbolizer", "src\test\WixToolsetTest.Converters.Symbolizer\WixToolsetTest.Converters.Symbolizer.csproj", "{9DB36DB1-24A1-47A7-9E57-D48A2E33C13C}"
15 EndProject
16 Global
17 GlobalSection(SolutionConfigurationPlatforms) = preSolution
appveyor.cmd
+2 -2
@@ -3,10 +3,10 @@
3 @set _P=%~dp0build\Release\publish
4
5 dotnet pack -c Release src\WixToolset.Converters || exit /b
6 -dotnet pack -c Release src\WixToolset.Converters.Tupleizer || exit /b
6 +dotnet pack -c Release src\WixToolset.Converters.Symbolizer || exit /b
7
8 dotnet build -c Release src\test\WixToolsetTest.Converters || exit /b
9 -dotnet build -c Release src\test\WixToolsetTest.Converters.Tupleizer || exit /b
9 +dotnet build -c Release src\test\WixToolsetTest.Converters.Symbolizer || exit /b
10
11 @popd
12 @endlocal
src/WixToolset.Converters.Symbolizer/ConvertTuples.cs renamed
+109 -109
@@ -1,16 +1,16 @@
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.Converters.Tupleizer
3 +namespace WixToolset.Converters.Symbolizer
4 {
5 using System;
6 using System.Collections.Generic;
7 using System.Linq;
8 using WixToolset.Data;
9 - using WixToolset.Data.Tuples;
9 + using WixToolset.Data.Symbols;
10 using WixToolset.Data.WindowsInstaller;
11 using Wix3 = Microsoft.Tools.WindowsInstallerXml;
12
13 - public static class ConvertTuples
13 + public static class ConvertSymbols
14 {
15 public static Intermediate ConvertFile(string path)
16 {
@@ -34,10 +34,10 @@ namespace WixToolset.Converters.Tupleizer
34 {
35 foreach (Wix3.Row row in table.Rows)
36 {
37 - var tuple = GenerateTupleFromRow(row, wixMediaByDiskId, componentsById, fontsById, bindPathsById, selfRegById, wixFileById, wixDirectoryById);
38 - if (tuple != null)
37 + var symbol = GenerateSymbolFromRow(row, wixMediaByDiskId, componentsById, fontsById, bindPathsById, selfRegById, wixFileById, wixDirectoryById);
38 + if (symbol != null)
39 {
40 - section.Tuples.Add(tuple);
40 + section.Symbols.Add(symbol);
41 }
42 }
43 }
@@ -77,31 +77,31 @@ namespace WixToolset.Converters.Tupleizer
77 return byId;
78 }
79
80 - private static IntermediateTuple GenerateTupleFromRow(Wix3.Row row, Dictionary<int, Wix3.WixMediaRow> wixMediaByDiskId, Dictionary<string, Wix3.Row> componentsById, Dictionary<string, Wix3.Row> fontsById, Dictionary<string, Wix3.Row> bindPathsById, Dictionary<string, Wix3.Row> selfRegById, Dictionary<string, Wix3.Row> wixFileById, Dictionary<string, Wix3.Row> wixDirectoryById)
80 + private static IntermediateSymbol GenerateSymbolFromRow(Wix3.Row row, Dictionary<int, Wix3.WixMediaRow> wixMediaByDiskId, Dictionary<string, Wix3.Row> componentsById, Dictionary<string, Wix3.Row> fontsById, Dictionary<string, Wix3.Row> bindPathsById, Dictionary<string, Wix3.Row> selfRegById, Dictionary<string, Wix3.Row> wixFileById, Dictionary<string, Wix3.Row> wixDirectoryById)
81 {
82 var name = row.Table.Name;
83 switch (name)
84 {
85 case "_SummaryInformation":
86 - return DefaultTupleFromRow(typeof(SummaryInformationTuple), row, columnZeroIsId: false);
86 + return DefaultSymbolFromRow(typeof(SummaryInformationSymbol), row, columnZeroIsId: false);
87 case "ActionText":
88 - return DefaultTupleFromRow(typeof(ActionTextTuple), row, columnZeroIsId: false);
88 + return DefaultSymbolFromRow(typeof(ActionTextSymbol), row, columnZeroIsId: false);
89 case "AppId":
90 - return DefaultTupleFromRow(typeof(AppIdTuple), row, columnZeroIsId: false);
90 + return DefaultSymbolFromRow(typeof(AppIdSymbol), row, columnZeroIsId: false);
91 case "AppSearch":
92 - return DefaultTupleFromRow(typeof(AppSearchTuple), row, columnZeroIsId: false);
92 + return DefaultSymbolFromRow(typeof(AppSearchSymbol), row, columnZeroIsId: false);
93 case "Billboard":
94 - return DefaultTupleFromRow(typeof(BillboardTuple), row, columnZeroIsId: true);
94 + return DefaultSymbolFromRow(typeof(BillboardSymbol), row, columnZeroIsId: true);
95 case "Binary":
96 - return DefaultTupleFromRow(typeof(BinaryTuple), row, columnZeroIsId: true);
96 + return DefaultSymbolFromRow(typeof(BinarySymbol), row, columnZeroIsId: true);
97 case "BindPath":
98 return null;
99 case "CCPSearch":
100 - return DefaultTupleFromRow(typeof(CCPSearchTuple), row, columnZeroIsId: true);
100 + return DefaultSymbolFromRow(typeof(CCPSearchSymbol), row, columnZeroIsId: true);
101 case "Class":
102 - return DefaultTupleFromRow(typeof(ClassTuple), row, columnZeroIsId: false);
102 + return DefaultSymbolFromRow(typeof(ClassSymbol), row, columnZeroIsId: false);
103 case "CompLocator":
104 - return DefaultTupleFromRow(typeof(CompLocatorTuple), row, columnZeroIsId: false);
104 + return DefaultSymbolFromRow(typeof(CompLocatorSymbol), row, columnZeroIsId: false);
105 case "Component":
106 {
107 var attributes = FieldAsNullableInt(row, 3);
@@ -127,7 +127,7 @@ namespace WixToolset.Converters.Tupleizer
127 keyPathType = ComponentKeyPathType.OdbcDataSource;
128 }
129
130 - return new ComponentTuple(SourceLineNumber4(row.SourceLineNumbers), new Identifier(AccessModifier.Public, FieldAsString(row, 0)))
130 + return new ComponentSymbol(SourceLineNumber4(row.SourceLineNumbers), new Identifier(AccessModifier.Public, FieldAsString(row, 0)))
131 {
132 ComponentId = FieldAsString(row, 1),
133 DirectoryRef = FieldAsString(row, 2),
@@ -147,9 +147,9 @@ namespace WixToolset.Converters.Tupleizer
147 }
148
149 case "Condition":
150 - return DefaultTupleFromRow(typeof(ConditionTuple), row, columnZeroIsId: false);
150 + return DefaultSymbolFromRow(typeof(ConditionSymbol), row, columnZeroIsId: false);
151 case "CreateFolder":
152 - return DefaultTupleFromRow(typeof(CreateFolderTuple), row, columnZeroIsId: false);
152 + return DefaultSymbolFromRow(typeof(CreateFolderSymbol), row, columnZeroIsId: false);
153 case "CustomAction":
154 {
155 var caType = FieldAsInt(row, 1);
@@ -157,7 +157,7 @@ namespace WixToolset.Converters.Tupleizer
157 var sourceType = DetermineCustomActionSourceType(caType);
158 var targetType = DetermineCustomActionTargetType(caType);
159
160 - return new CustomActionTuple(SourceLineNumber4(row.SourceLineNumbers), new Identifier(AccessModifier.Public, FieldAsString(row, 0)))
160 + return new CustomActionSymbol(SourceLineNumber4(row.SourceLineNumbers), new Identifier(AccessModifier.Public, FieldAsString(row, 0)))
161 {
162 ExecutionType = executionType,
163 SourceType = sourceType,
@@ -178,7 +178,7 @@ namespace WixToolset.Converters.Tupleizer
178 var id = FieldAsString(row, 0);
179 var splits = SplitDefaultDir(FieldAsString(row, 2));
180
181 - var tuple = new DirectoryTuple(SourceLineNumber4(row.SourceLineNumbers), new Identifier(AccessModifier.Public, id))
181 + var symbol = new DirectorySymbol(SourceLineNumber4(row.SourceLineNumbers), new Identifier(AccessModifier.Public, id))
182 {
183 ParentDirectoryRef = FieldAsString(row, 1),
184 Name = splits[0],
@@ -189,19 +189,19 @@ namespace WixToolset.Converters.Tupleizer
189
190 if (wixDirectoryById.TryGetValue(id, out var wixDirectoryRow))
191 {
192 - tuple.ComponentGuidGenerationSeed = FieldAsString(wixDirectoryRow, 1);
192 + symbol.ComponentGuidGenerationSeed = FieldAsString(wixDirectoryRow, 1);
193 }
194
195 - return tuple;
195 + return symbol;
196 }
197 case "DrLocator":
198 - return DefaultTupleFromRow(typeof(DrLocatorTuple), row, columnZeroIsId: false);
198 + return DefaultSymbolFromRow(typeof(DrLocatorSymbol), row, columnZeroIsId: false);
199 case "DuplicateFile":
200 - return DefaultTupleFromRow(typeof(DuplicateFileTuple), row, columnZeroIsId: true);
200 + return DefaultSymbolFromRow(typeof(DuplicateFileSymbol), row, columnZeroIsId: true);
201 case "Error":
202 - return DefaultTupleFromRow(typeof(ErrorTuple), row, columnZeroIsId: false);
202 + return DefaultSymbolFromRow(typeof(ErrorSymbol), row, columnZeroIsId: false);
203 case "Extension":
204 - return DefaultTupleFromRow(typeof(ExtensionTuple), row, columnZeroIsId: false);
204 + return DefaultSymbolFromRow(typeof(ExtensionSymbol), row, columnZeroIsId: false);
205 case "Feature":
206 {
207 var attributes = FieldAsInt(row, 7);
@@ -215,7 +215,7 @@ namespace WixToolset.Converters.Tupleizer
215 installDefault = FeatureInstallDefault.Source;
216 }
217
218 - return new FeatureTuple(SourceLineNumber4(row.SourceLineNumbers), new Identifier(AccessModifier.Public, FieldAsString(row, 0)))
218 + return new FeatureSymbol(SourceLineNumber4(row.SourceLineNumbers), new Identifier(AccessModifier.Public, FieldAsString(row, 0)))
219 {
220 ParentFeatureRef = FieldAsString(row, 1),
221 Title = FieldAsString(row, 2),
@@ -231,71 +231,71 @@ namespace WixToolset.Converters.Tupleizer
231 }
232
233 case "FeatureComponents":
234 - return DefaultTupleFromRow(typeof(FeatureComponentsTuple), row, columnZeroIsId: false);
234 + return DefaultSymbolFromRow(typeof(FeatureComponentsSymbol), row, columnZeroIsId: false);
235 case "File":
236 {
237 var attributes = FieldAsNullableInt(row, 6);
238
239 - FileTupleAttributes tupleAttributes = 0;
240 - tupleAttributes |= (attributes & WindowsInstallerConstants.MsidbFileAttributesReadOnly) == WindowsInstallerConstants.MsidbFileAttributesReadOnly ? FileTupleAttributes.ReadOnly : 0;
241 - tupleAttributes |= (attributes & WindowsInstallerConstants.MsidbFileAttributesHidden) == WindowsInstallerConstants.MsidbFileAttributesHidden ? FileTupleAttributes.Hidden : 0;
242 - tupleAttributes |= (attributes & WindowsInstallerConstants.MsidbFileAttributesSystem) == WindowsInstallerConstants.MsidbFileAttributesSystem ? FileTupleAttributes.System : 0;
243 - tupleAttributes |= (attributes & WindowsInstallerConstants.MsidbFileAttributesVital) == WindowsInstallerConstants.MsidbFileAttributesVital ? FileTupleAttributes.Vital : 0;
244 - tupleAttributes |= (attributes & WindowsInstallerConstants.MsidbFileAttributesChecksum) == WindowsInstallerConstants.MsidbFileAttributesChecksum ? FileTupleAttributes.Checksum : 0;
245 - tupleAttributes |= (attributes & WindowsInstallerConstants.MsidbFileAttributesNoncompressed) == WindowsInstallerConstants.MsidbFileAttributesNoncompressed ? FileTupleAttributes.Uncompressed : 0;
246 - tupleAttributes |= (attributes & WindowsInstallerConstants.MsidbFileAttributesCompressed) == WindowsInstallerConstants.MsidbFileAttributesCompressed ? FileTupleAttributes.Compressed : 0;
239 + FileSymbolAttributes symbolAttributes = 0;
240 + symbolAttributes |= (attributes & WindowsInstallerConstants.MsidbFileAttributesReadOnly) == WindowsInstallerConstants.MsidbFileAttributesReadOnly ? FileSymbolAttributes.ReadOnly : 0;
241 + symbolAttributes |= (attributes & WindowsInstallerConstants.MsidbFileAttributesHidden) == WindowsInstallerConstants.MsidbFileAttributesHidden ? FileSymbolAttributes.Hidden : 0;
242 + symbolAttributes |= (attributes & WindowsInstallerConstants.MsidbFileAttributesSystem) == WindowsInstallerConstants.MsidbFileAttributesSystem ? FileSymbolAttributes.System : 0;
243 + symbolAttributes |= (attributes & WindowsInstallerConstants.MsidbFileAttributesVital) == WindowsInstallerConstants.MsidbFileAttributesVital ? FileSymbolAttributes.Vital : 0;
244 + symbolAttributes |= (attributes & WindowsInstallerConstants.MsidbFileAttributesChecksum) == WindowsInstallerConstants.MsidbFileAttributesChecksum ? FileSymbolAttributes.Checksum : 0;
245 + symbolAttributes |= (attributes & WindowsInstallerConstants.MsidbFileAttributesNoncompressed) == WindowsInstallerConstants.MsidbFileAttributesNoncompressed ? FileSymbolAttributes.Uncompressed : 0;
246 + symbolAttributes |= (attributes & WindowsInstallerConstants.MsidbFileAttributesCompressed) == WindowsInstallerConstants.MsidbFileAttributesCompressed ? FileSymbolAttributes.Compressed : 0;
247
248 var id = FieldAsString(row, 0);
249
250 - var tuple = new FileTuple(SourceLineNumber4(row.SourceLineNumbers), new Identifier(AccessModifier.Public, id))
250 + var symbol = new FileSymbol(SourceLineNumber4(row.SourceLineNumbers), new Identifier(AccessModifier.Public, id))
251 {
252 ComponentRef = FieldAsString(row, 1),
253 Name = FieldAsString(row, 2),
254 FileSize = FieldAsInt(row, 3),
255 Version = FieldAsString(row, 4),
256 Language = FieldAsString(row, 5),
257 - Attributes = tupleAttributes
257 + Attributes = symbolAttributes
258 };
259
260 if (bindPathsById.TryGetValue(id, out var bindPathRow))
261 {
262 - tuple.BindPath = FieldAsString(bindPathRow, 1) ?? String.Empty;
262 + symbol.BindPath = FieldAsString(bindPathRow, 1) ?? String.Empty;
263 }
264
265 if (fontsById.TryGetValue(id, out var fontRow))
266 {
267 - tuple.FontTitle = FieldAsString(fontRow, 1) ?? String.Empty;
267 + symbol.FontTitle = FieldAsString(fontRow, 1) ?? String.Empty;
268 }
269
270 if (selfRegById.TryGetValue(id, out var selfRegRow))
271 {
272 - tuple.SelfRegCost = FieldAsNullableInt(selfRegRow, 1) ?? 0;
272 + symbol.SelfRegCost = FieldAsNullableInt(selfRegRow, 1) ?? 0;
273 }
274
275 if (wixFileById.TryGetValue(id, out var wixFileRow))
276 {
277 - tuple.DirectoryRef = FieldAsString(wixFileRow, 4);
278 - tuple.DiskId = FieldAsNullableInt(wixFileRow, 5) ?? 0;
279 - tuple.Source = new IntermediateFieldPathValue { Path = FieldAsString(wixFileRow, 6) };
280 - tuple.PatchGroup = FieldAsInt(wixFileRow, 8);
281 - tuple.Attributes |= FieldAsInt(wixFileRow, 9) != 0 ? FileTupleAttributes.GeneratedShortFileName : 0;
282 - tuple.PatchAttributes = (PatchAttributeType)FieldAsInt(wixFileRow, 10);
277 + symbol.DirectoryRef = FieldAsString(wixFileRow, 4);
278 + symbol.DiskId = FieldAsNullableInt(wixFileRow, 5) ?? 0;
279 + symbol.Source = new IntermediateFieldPathValue { Path = FieldAsString(wixFileRow, 6) };
280 + symbol.PatchGroup = FieldAsInt(wixFileRow, 8);
281 + symbol.Attributes |= FieldAsInt(wixFileRow, 9) != 0 ? FileSymbolAttributes.GeneratedShortFileName : 0;
282 + symbol.PatchAttributes = (PatchAttributeType)FieldAsInt(wixFileRow, 10);
283 }
284
285 - return tuple;
285 + return symbol;
286 }
287 case "Font":
288 return null;
289 case "Icon":
290 - return DefaultTupleFromRow(typeof(IconTuple), row, columnZeroIsId: true);
290 + return DefaultSymbolFromRow(typeof(IconSymbol), row, columnZeroIsId: true);
291 case "IniLocator":
292 - return DefaultTupleFromRow(typeof(IniLocatorTuple), row, columnZeroIsId: false);
292 + return DefaultSymbolFromRow(typeof(IniLocatorSymbol), row, columnZeroIsId: false);
293 case "LockPermissions":
294 - return DefaultTupleFromRow(typeof(LockPermissionsTuple), row, columnZeroIsId: false);
294 + return DefaultSymbolFromRow(typeof(LockPermissionsSymbol), row, columnZeroIsId: false);
295 case "Media":
296 {
297 var diskId = FieldAsInt(row, 0);
298 - var tuple = new MediaTuple(SourceLineNumber4(row.SourceLineNumbers), new Identifier(AccessModifier.Public, diskId))
298 + var symbol = new MediaSymbol(SourceLineNumber4(row.SourceLineNumbers), new Identifier(AccessModifier.Public, diskId))
299 {
300 DiskId = diskId,
301 LastSequence = FieldAsNullableInt(row, 1),
@@ -309,24 +309,24 @@ namespace WixToolset.Converters.Tupleizer
309 {
310 var compressionLevel = FieldAsString(wixMediaRow, 1);
311
312 - tuple.CompressionLevel = String.IsNullOrEmpty(compressionLevel) ? null : (CompressionLevel?)Enum.Parse(typeof(CompressionLevel), compressionLevel, true);
313 - tuple.Layout = wixMediaRow.Layout;
312 + symbol.CompressionLevel = String.IsNullOrEmpty(compressionLevel) ? null : (CompressionLevel?)Enum.Parse(typeof(CompressionLevel), compressionLevel, true);
313 + symbol.Layout = wixMediaRow.Layout;
314 }
315
316 - return tuple;
316 + return symbol;
317 }
318 case "MIME":
319 - return DefaultTupleFromRow(typeof(MIMETuple), row, columnZeroIsId: false);
319 + return DefaultSymbolFromRow(typeof(MIMESymbol), row, columnZeroIsId: false);
320 case "ModuleIgnoreTable":
321 - return DefaultTupleFromRow(typeof(ModuleIgnoreTableTuple), row, columnZeroIsId: true);
321 + return DefaultSymbolFromRow(typeof(ModuleIgnoreTableSymbol), row, columnZeroIsId: true);
322 case "MoveFile":
323 - return DefaultTupleFromRow(typeof(MoveFileTuple), row, columnZeroIsId: true);
323 + return DefaultSymbolFromRow(typeof(MoveFileSymbol), row, columnZeroIsId: true);
324 case "MsiAssembly":
325 {
326 var componentId = FieldAsString(row, 0);
327 if (componentsById.TryGetValue(componentId, out var componentRow))
328 {
329 - return new AssemblyTuple(SourceLineNumber4(row.SourceLineNumbers), new Identifier(AccessModifier.Public, FieldAsString(componentRow, 5)))
329 + return new AssemblySymbol(SourceLineNumber4(row.SourceLineNumbers), new Identifier(AccessModifier.Public, FieldAsString(componentRow, 5)))
330 {
331 ComponentRef = componentId,
332 FeatureRef = FieldAsString(row, 1),
@@ -339,21 +339,21 @@ namespace WixToolset.Converters.Tupleizer
339 return null;
340 }
341 case "MsiLockPermissionsEx":
342 - return DefaultTupleFromRow(typeof(MsiLockPermissionsExTuple), row, columnZeroIsId: true);
342 + return DefaultSymbolFromRow(typeof(MsiLockPermissionsExSymbol), row, columnZeroIsId: true);
343 case "MsiShortcutProperty":
344 - return DefaultTupleFromRow(typeof(MsiShortcutPropertyTuple), row, columnZeroIsId: true);
344 + return DefaultSymbolFromRow(typeof(MsiShortcutPropertySymbol), row, columnZeroIsId: true);
345 case "ODBCDataSource":
346 - return DefaultTupleFromRow(typeof(ODBCDataSourceTuple), row, columnZeroIsId: true);
346 + return DefaultSymbolFromRow(typeof(ODBCDataSourceSymbol), row, columnZeroIsId: true);
347 case "ODBCDriver":
348 - return DefaultTupleFromRow(typeof(ODBCDriverTuple), row, columnZeroIsId: true);
348 + return DefaultSymbolFromRow(typeof(ODBCDriverSymbol), row, columnZeroIsId: true);
349 case "ODBCTranslator":
350 - return DefaultTupleFromRow(typeof(ODBCTranslatorTuple), row, columnZeroIsId: true);
350 + return DefaultSymbolFromRow(typeof(ODBCTranslatorSymbol), row, columnZeroIsId: true);
351 case "ProgId":
352 - return DefaultTupleFromRow(typeof(ProgIdTuple), row, columnZeroIsId: false);
352 + return DefaultSymbolFromRow(typeof(ProgIdSymbol), row, columnZeroIsId: false);
353 case "Property":
354 - return DefaultTupleFromRow(typeof(PropertyTuple), row, columnZeroIsId: true);
354 + return DefaultSymbolFromRow(typeof(PropertySymbol), row, columnZeroIsId: true);
355 case "PublishComponent":
356 - return DefaultTupleFromRow(typeof(PublishComponentTuple), row, columnZeroIsId: false);
356 + return DefaultSymbolFromRow(typeof(PublishComponentSymbol), row, columnZeroIsId: false);
357 case "Registry":
358 {
359 var value = FieldAsString(row, 4);
@@ -397,7 +397,7 @@ namespace WixToolset.Converters.Tupleizer
397 }
398 }
399
400 - return new RegistryTuple(SourceLineNumber4(row.SourceLineNumbers), new Identifier(AccessModifier.Public, FieldAsString(row, 0)))
400 + return new RegistrySymbol(SourceLineNumber4(row.SourceLineNumbers), new Identifier(AccessModifier.Public, FieldAsString(row, 0)))
401 {
402 Root = (RegistryRootType)FieldAsInt(row, 1),
403 Key = FieldAsString(row, 2),
@@ -412,7 +412,7 @@ namespace WixToolset.Converters.Tupleizer
412 {
413 var type = FieldAsInt(row, 4);
414
415 - return new RegLocatorTuple(SourceLineNumber4(row.SourceLineNumbers), new Identifier(AccessModifier.Public, FieldAsString(row, 0)))
415 + return new RegLocatorSymbol(SourceLineNumber4(row.SourceLineNumbers), new Identifier(AccessModifier.Public, FieldAsString(row, 0)))
416 {
417 Root = (RegistryRootType)FieldAsInt(row, 1),
418 Key = FieldAsString(row, 2),
@@ -424,7 +424,7 @@ namespace WixToolset.Converters.Tupleizer
424 case "RemoveFile":
425 {
426 var installMode = FieldAsInt(row, 4);
427 - return new RemoveFileTuple(SourceLineNumber4(row.SourceLineNumbers), new Identifier(AccessModifier.Public, FieldAsString(row, 0)))
427 + return new RemoveFileSymbol(SourceLineNumber4(row.SourceLineNumbers), new Identifier(AccessModifier.Public, FieldAsString(row, 0)))
428 {
429 ComponentRef = FieldAsString(row, 1),
430 FileName = FieldAsString(row, 2),
@@ -435,7 +435,7 @@ namespace WixToolset.Converters.Tupleizer
435 }
436 case "RemoveRegistry":
437 {
438 - return new RemoveRegistryTuple(SourceLineNumber4(row.SourceLineNumbers), new Identifier(AccessModifier.Public, FieldAsString(row, 0)))
438 + return new RemoveRegistrySymbol(SourceLineNumber4(row.SourceLineNumbers), new Identifier(AccessModifier.Public, FieldAsString(row, 0)))
439 {
440 Action = RemoveRegistryActionType.RemoveOnInstall,
441 Root = (RegistryRootType)FieldAsInt(row, 1),
@@ -446,14 +446,14 @@ namespace WixToolset.Converters.Tupleizer
446 }
447
448 case "ReserveCost":
449 - return DefaultTupleFromRow(typeof(ReserveCostTuple), row, columnZeroIsId: true);
449 + return DefaultSymbolFromRow(typeof(ReserveCostSymbol), row, columnZeroIsId: true);
450 case "SelfReg":
451 return null;
452 case "ServiceControl":
453 {
454 var events = FieldAsInt(row, 2);
455 var wait = FieldAsNullableInt(row, 4);
456 - return new ServiceControlTuple(SourceLineNumber4(row.SourceLineNumbers), new Identifier(AccessModifier.Public, FieldAsString(row, 0)))
456 + return new ServiceControlSymbol(SourceLineNumber4(row.SourceLineNumbers), new Identifier(AccessModifier.Public, FieldAsString(row, 0)))
457 {
458 Name = FieldAsString(row, 1),
459 Arguments = FieldAsString(row, 3),
@@ -469,12 +469,12 @@ namespace WixToolset.Converters.Tupleizer
469 }
470
471 case "ServiceInstall":
472 - return DefaultTupleFromRow(typeof(ServiceInstallTuple), row, columnZeroIsId: true);
472 + return DefaultSymbolFromRow(typeof(ServiceInstallSymbol), row, columnZeroIsId: true);
473 case "Shortcut":
474 {
475 var splitName = FieldAsString(row, 2).Split('|');
476
477 - return new ShortcutTuple(SourceLineNumber4(row.SourceLineNumbers), new Identifier(AccessModifier.Public, FieldAsString(row, 0)))
477 + return new ShortcutSymbol(SourceLineNumber4(row.SourceLineNumbers), new Identifier(AccessModifier.Public, FieldAsString(row, 0)))
478 {
479 DirectoryRef = FieldAsString(row, 1),
480 Name = splitName.Length > 1 ? splitName[1] : splitName[0],
@@ -495,13 +495,13 @@ namespace WixToolset.Converters.Tupleizer
495 };
496 }
497 case "Signature":
498 - return DefaultTupleFromRow(typeof(SignatureTuple), row, columnZeroIsId: true);
498 + return DefaultSymbolFromRow(typeof(SignatureSymbol), row, columnZeroIsId: true);
499 case "UIText":
500 - return DefaultTupleFromRow(typeof(UITextTuple), row, columnZeroIsId: true);
500 + return DefaultSymbolFromRow(typeof(UITextSymbol), row, columnZeroIsId: true);
501 case "Upgrade":
502 {
503 var attributes = FieldAsInt(row, 4);
504 - return new UpgradeTuple(SourceLineNumber4(row.SourceLineNumbers), new Identifier(AccessModifier.Public, FieldAsString(row, 0)))
504 + return new UpgradeSymbol(SourceLineNumber4(row.SourceLineNumbers), new Identifier(AccessModifier.Public, FieldAsString(row, 0)))
505 {
506 UpgradeCode = FieldAsString(row, 0),
507 VersionMin = FieldAsString(row, 1),
@@ -518,11 +518,11 @@ namespace WixToolset.Converters.Tupleizer
518 };
519 }
520 case "Verb":
521 - return DefaultTupleFromRow(typeof(VerbTuple), row, columnZeroIsId: false);
521 + return DefaultSymbolFromRow(typeof(VerbSymbol), row, columnZeroIsId: false);
522 case "WixAction":
523 {
524 var sequenceTable = FieldAsString(row, 0);
525 - return new WixActionTuple(SourceLineNumber4(row.SourceLineNumbers))
525 + return new WixActionSymbol(SourceLineNumber4(row.SourceLineNumbers))
526 {
527 SequenceTable = (SequenceTable)Enum.Parse(typeof(SequenceTable), sequenceTable == "AdvtExecuteSequence" ? nameof(SequenceTable.AdvertiseExecuteSequence) : sequenceTable),
528 Action = FieldAsString(row, 1),
@@ -534,31 +534,31 @@ namespace WixToolset.Converters.Tupleizer
534 };
535 }
536 case "WixBootstrapperApplication":
537 - return DefaultTupleFromRow(typeof(WixBootstrapperApplicationTuple), row, columnZeroIsId: true);
537 + return DefaultSymbolFromRow(typeof(WixBootstrapperApplicationSymbol), row, columnZeroIsId: true);
538 case "WixBundleContainer":
539 - return DefaultTupleFromRow(typeof(WixBundleContainerTuple), row, columnZeroIsId: true);
539 + return DefaultSymbolFromRow(typeof(WixBundleContainerSymbol), row, columnZeroIsId: true);
540 case "WixBundleVariable":
541 - return DefaultTupleFromRow(typeof(WixBundleVariableTuple), row, columnZeroIsId: true);
541 + return DefaultSymbolFromRow(typeof(WixBundleVariableSymbol), row, columnZeroIsId: true);
542 case "WixChainItem":
543 - return DefaultTupleFromRow(typeof(WixChainItemTuple), row, columnZeroIsId: true);
543 + return DefaultSymbolFromRow(typeof(WixChainItemSymbol), row, columnZeroIsId: true);
544 case "WixCustomTable":
545 - return DefaultTupleFromRow(typeof(WixCustomTableTuple), row, columnZeroIsId: true);
545 + return DefaultSymbolFromRow(typeof(WixCustomTableSymbol), row, columnZeroIsId: true);
546 case "WixDirectory":
547 return null;
548 case "WixFile":
549 return null;
550 case "WixInstanceTransforms":
551 - return DefaultTupleFromRow(typeof(WixInstanceTransformsTuple), row, columnZeroIsId: true);
551 + return DefaultSymbolFromRow(typeof(WixInstanceTransformsSymbol), row, columnZeroIsId: true);
552 case "WixMedia":
553 return null;
554 case "WixMerge":
555 - return DefaultTupleFromRow(typeof(WixMergeTuple), row, columnZeroIsId: true);
555 + return DefaultSymbolFromRow(typeof(WixMergeSymbol), row, columnZeroIsId: true);
556 case "WixPatchBaseline":
557 - return DefaultTupleFromRow(typeof(WixPatchBaselineTuple), row, columnZeroIsId: true);
557 + return DefaultSymbolFromRow(typeof(WixPatchBaselineSymbol), row, columnZeroIsId: true);
558 case "WixProperty":
559 {
560 var attributes = FieldAsInt(row, 1);
561 - return new WixPropertyTuple(SourceLineNumber4(row.SourceLineNumbers))
561 + return new WixPropertySymbol(SourceLineNumber4(row.SourceLineNumbers))
562 {
563 PropertyRef = FieldAsString(row, 0),
564 Admin = (attributes & 0x1) == 0x1,
@@ -567,13 +567,13 @@ namespace WixToolset.Converters.Tupleizer
567 };
568 }
569 case "WixSuppressModularization":
570 - return DefaultTupleFromRow(typeof(WixSuppressModularizationTuple), row, columnZeroIsId: true);
570 + return DefaultSymbolFromRow(typeof(WixSuppressModularizationSymbol), row, columnZeroIsId: true);
571 case "WixUI":
572 - return DefaultTupleFromRow(typeof(WixUITuple), row, columnZeroIsId: true);
572 + return DefaultSymbolFromRow(typeof(WixUISymbol), row, columnZeroIsId: true);
573 case "WixVariable":
574 - return DefaultTupleFromRow(typeof(WixVariableTuple), row, columnZeroIsId: true);
574 + return DefaultSymbolFromRow(typeof(WixVariableSymbol), row, columnZeroIsId: true);
575 default:
576 - return GenericTupleFromCustomRow(row, columnZeroIsId: false);
576 + return GenericSymbolFromCustomRow(row, columnZeroIsId: false);
577 }
578 }
579
@@ -674,35 +674,35 @@ namespace WixToolset.Converters.Tupleizer
674 }
675 }
676
677 - private static IntermediateTuple DefaultTupleFromRow(Type tupleType, Wix3.Row row, bool columnZeroIsId)
677 + private static IntermediateSymbol DefaultSymbolFromRow(Type symbolType, Wix3.Row row, bool columnZeroIsId)
678 {
679 - var tuple = Activator.CreateInstance(tupleType) as IntermediateTuple;
679 + var symbol = Activator.CreateInstance(symbolType) as IntermediateSymbol;
680
681 - SetTupleFieldsFromRow(row, tuple, columnZeroIsId);
681 + SetSymbolFieldsFromRow(row, symbol, columnZeroIsId);
682
683 - tuple.SourceLineNumbers = SourceLineNumber4(row.SourceLineNumbers);
684 - return tuple;
683 + symbol.SourceLineNumbers = SourceLineNumber4(row.SourceLineNumbers);
684 + return symbol;
685 }
686
687 - private static IntermediateTuple GenericTupleFromCustomRow(Wix3.Row row, bool columnZeroIsId)
687 + private static IntermediateSymbol GenericSymbolFromCustomRow(Wix3.Row row, bool columnZeroIsId)
688 {
689 var columnDefinitions = row.Table.Definition.Columns.Cast<Wix3.ColumnDefinition>();
690 var fieldDefinitions = columnDefinitions.Select(columnDefinition =>
691 new IntermediateFieldDefinition(columnDefinition.Name, ColumnType3ToIntermediateFieldType4(columnDefinition.Type))).ToArray();
692 - var tupleDefinition = new IntermediateTupleDefinition(row.Table.Name, fieldDefinitions, null);
693 - var tuple = new IntermediateTuple(tupleDefinition, SourceLineNumber4(row.SourceLineNumbers));
692 + var symbolDefinition = new IntermediateSymbolDefinition(row.Table.Name, fieldDefinitions, null);
693 + var symbol = new IntermediateSymbol(symbolDefinition, SourceLineNumber4(row.SourceLineNumbers));
694
695 - SetTupleFieldsFromRow(row, tuple, columnZeroIsId);
695 + SetSymbolFieldsFromRow(row, symbol, columnZeroIsId);
696
697 - return tuple;
697 + return symbol;
698 }
699
700 - private static void SetTupleFieldsFromRow(Wix3.Row row, IntermediateTuple tuple, bool columnZeroIsId)
700 + private static void SetSymbolFieldsFromRow(Wix3.Row row, IntermediateSymbol symbol, bool columnZeroIsId)
701 {
702 int offset = 0;
703 if (columnZeroIsId)
704 {
705 - tuple.Id = GetIdentifierForRow(row);
705 + symbol.Id = GetIdentifierForRow(row);
706 offset = 1;
707 }
708
@@ -715,15 +715,15 @@ namespace WixToolset.Converters.Tupleizer
715 case Wix3.ColumnType.Localized:
716 case Wix3.ColumnType.Object:
717 case Wix3.ColumnType.Preserved:
718 - tuple.Set(i - offset, FieldAsString(row, i));
718 + symbol.Set(i - offset, FieldAsString(row, i));
719 break;
720 case Wix3.ColumnType.Number:
721 int? nullableValue = FieldAsNullableInt(row, i);
722 // TODO: Consider whether null values should be coerced to their default value when
723 // a column is not nullable. For now, just pass through the null.
724 //int value = FieldAsInt(row, i);
725 - //tuple.Set(i - offset, column.IsNullable ? nullableValue : value);
726 - tuple.Set(i - offset, nullableValue);
725 + //symbol.Set(i - offset, column.IsNullable ? nullableValue : value);
726 + symbol.Set(i - offset, nullableValue);
727 break;
728 case Wix3.ColumnType.Unknown:
729 break;
src/WixToolset.Converters.Symbolizer/WixToolset.Converters.Symbolizer.csproj renamed
+1 -1
@@ -5,7 +5,7 @@
5
6 <PropertyGroup>
7 <TargetFrameworks>netstandard2.0;net461;net472</TargetFrameworks>
8 - <Description>Tupleizer</Description>
8 + <Description>Symbolizer</Description>
9 <Title>WiX Toolset Converters Tuplizer</Title>
10 <DebugType>embedded</DebugType>
11 <PublishRepositoryUrl>true</PublishRepositoryUrl>
src/test/WixToolsetTest.Converters.Symbolizer/ConvertTuplesFixture.cs renamed
+185 -185
@@ -1,6 +1,6 @@
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 WixToolsetTest.Converters.Tupleizer
3 +namespace WixToolsetTest.Converters.Symbolizer
4 {
5 using System;
6 using System.Collections.Generic;
@@ -8,13 +8,13 @@ namespace WixToolsetTest.Converters.Tupleizer
8 using System.Linq;
9 using WixBuildTools.TestSupport;
10 using Wix3 = Microsoft.Tools.WindowsInstallerXml;
11 - using WixToolset.Converters.Tupleizer;
11 + using WixToolset.Converters.Symbolizer;
12 using WixToolset.Data;
13 using WixToolset.Data.WindowsInstaller;
14 - using WixToolset.Data.Tuples;
14 + using WixToolset.Data.Symbols;
15 using Xunit;
16
17 - public class ConvertTuplesFixture
17 + public class ConvertSymbolsFixture
18 {
19 [Fact]
20 public void CanLoadWixoutAndConvertToIntermediate()
@@ -28,7 +28,7 @@ namespace WixToolsetTest.Converters.Tupleizer
28
29 var path = Path.Combine(dataFolder, "test.wixout");
30
31 - var intermediate = ConvertTuples.ConvertFile(path);
31 + var intermediate = ConvertSymbols.ConvertFile(path);
32
33 Assert.NotNull(intermediate);
34 Assert.Single(intermediate.Sections);
@@ -54,12 +54,12 @@ namespace WixToolsetTest.Converters.Tupleizer
54 .OrderBy(s => s)
55 .ToArray();
56
57 - var tuples = intermediate.Sections.SelectMany(s => s.Tuples);
57 + var symbols = intermediate.Sections.SelectMany(s => s.Symbols);
58
59 - var assemblyTuplesByFileId = tuples.OfType<AssemblyTuple>().ToDictionary(a => a.Id.Id);
59 + var assemblySymbolsByFileId = symbols.OfType<AssemblySymbol>().ToDictionary(a => a.Id.Id);
60
61 - var wix4Dump = tuples
62 - .SelectMany(tuple => TupleToStrings(tuple, assemblyTuplesByFileId))
61 + var wix4Dump = symbols
62 + .SelectMany(symbol => SymbolToStrings(symbol, assemblySymbolsByFileId))
63 .OrderBy(s => s)
64 .ToArray();
65
@@ -100,7 +100,7 @@ namespace WixToolsetTest.Converters.Tupleizer
100 {
101 string fields = null;
102
103 - // Massage output to match WiX v3 rows and v4 tuples.
103 + // Massage output to match WiX v3 rows and v4 symbols.
104 //
105 switch (row.Table.Name)
106 {
@@ -177,199 +177,199 @@ namespace WixToolsetTest.Converters.Tupleizer
177 }
178 }
179
180 - private static IEnumerable<string> TupleToStrings(IntermediateTuple tuple, Dictionary<string, AssemblyTuple> assemblyTuplesByFileId)
180 + private static IEnumerable<string> SymbolToStrings(IntermediateSymbol symbol, Dictionary<string, AssemblySymbol> assemblySymbolsByFileId)
181 {
182 - var name = tuple.Definition.Type == TupleDefinitionType.SummaryInformation ? "_SummaryInformation" : tuple.Definition.Name;
183 - var id = tuple.Id?.Id ?? String.Empty;
182 + var name = symbol.Definition.Type == SymbolDefinitionType.SummaryInformation ? "_SummaryInformation" : symbol.Definition.Name;
183 + var id = symbol.Id?.Id ?? String.Empty;
184
185 string fields;
186 - switch (tuple.Definition.Name)
186 + switch (symbol.Definition.Name)
187 {
188 - // Massage output to match WiX v3 rows and v4 tuples.
188 + // Massage output to match WiX v3 rows and v4 symbols.
189 //
190 case "Component":
191 {
192 - var componentTuple = (ComponentTuple)tuple;
193 - var attributes = ComponentLocation.Either == componentTuple.Location ? WindowsInstallerConstants.MsidbComponentAttributesOptional : 0;
194 - attributes |= ComponentLocation.SourceOnly == componentTuple.Location ? WindowsInstallerConstants.MsidbComponentAttributesSourceOnly : 0;
195 - attributes |= ComponentKeyPathType.Registry == componentTuple.KeyPathType ? WindowsInstallerConstants.MsidbComponentAttributesRegistryKeyPath : 0;
196 - attributes |= ComponentKeyPathType.OdbcDataSource == componentTuple.KeyPathType ? WindowsInstallerConstants.MsidbComponentAttributesODBCDataSource : 0;
197 - attributes |= componentTuple.DisableRegistryReflection ? WindowsInstallerConstants.MsidbComponentAttributesDisableRegistryReflection : 0;
198 - attributes |= componentTuple.NeverOverwrite ? WindowsInstallerConstants.MsidbComponentAttributesNeverOverwrite : 0;
199 - attributes |= componentTuple.Permanent ? WindowsInstallerConstants.MsidbComponentAttributesPermanent : 0;
200 - attributes |= componentTuple.SharedDllRefCount ? WindowsInstallerConstants.MsidbComponentAttributesSharedDllRefCount : 0;
201 - attributes |= componentTuple.Shared ? WindowsInstallerConstants.MsidbComponentAttributesShared : 0;
202 - attributes |= componentTuple.Transitive ? WindowsInstallerConstants.MsidbComponentAttributesTransitive : 0;
203 - attributes |= componentTuple.UninstallWhenSuperseded ? WindowsInstallerConstants.MsidbComponentAttributes64bit : 0;
204 - attributes |= componentTuple.Win64 ? WindowsInstallerConstants.MsidbComponentAttributes64bit : 0;
192 + var componentSymbol = (ComponentSymbol)symbol;
193 + var attributes = ComponentLocation.Either == componentSymbol.Location ? WindowsInstallerConstants.MsidbComponentAttributesOptional : 0;
194 + attributes |= ComponentLocation.SourceOnly == componentSymbol.Location ? WindowsInstallerConstants.MsidbComponentAttributesSourceOnly : 0;
195 + attributes |= ComponentKeyPathType.Registry == componentSymbol.KeyPathType ? WindowsInstallerConstants.MsidbComponentAttributesRegistryKeyPath : 0;
196 + attributes |= ComponentKeyPathType.OdbcDataSource == componentSymbol.KeyPathType ? WindowsInstallerConstants.MsidbComponentAttributesODBCDataSource : 0;
197 + attributes |= componentSymbol.DisableRegistryReflection ? WindowsInstallerConstants.MsidbComponentAttributesDisableRegistryReflection : 0;
198 + attributes |= componentSymbol.NeverOverwrite ? WindowsInstallerConstants.MsidbComponentAttributesNeverOverwrite : 0;
199 + attributes |= componentSymbol.Permanent ? WindowsInstallerConstants.MsidbComponentAttributesPermanent : 0;
200 + attributes |= componentSymbol.SharedDllRefCount ? WindowsInstallerConstants.MsidbComponentAttributesSharedDllRefCount : 0;
201 + attributes |= componentSymbol.Shared ? WindowsInstallerConstants.MsidbComponentAttributesShared : 0;
202 + attributes |= componentSymbol.Transitive ? WindowsInstallerConstants.MsidbComponentAttributesTransitive : 0;
203 + attributes |= componentSymbol.UninstallWhenSuperseded ? WindowsInstallerConstants.MsidbComponentAttributes64bit : 0;
204 + attributes |= componentSymbol.Win64 ? WindowsInstallerConstants.MsidbComponentAttributes64bit : 0;
205
206 fields = String.Join(",",
207 - componentTuple.ComponentId,
208 - componentTuple.DirectoryRef,
207 + componentSymbol.ComponentId,
208 + componentSymbol.DirectoryRef,
209 attributes.ToString(),
210 - componentTuple.Condition,
211 - componentTuple.KeyPath
210 + componentSymbol.Condition,
211 + componentSymbol.KeyPath
212 );
213 break;
214 }
215 case "CustomAction":
216 {
217 - var customActionTuple = (CustomActionTuple)tuple;
218 - var type = customActionTuple.Win64 ? WindowsInstallerConstants.MsidbCustomActionType64BitScript : 0;
219 - type |= customActionTuple.TSAware ? WindowsInstallerConstants.MsidbCustomActionTypeTSAware : 0;
220 - type |= customActionTuple.Impersonate ? 0 : WindowsInstallerConstants.MsidbCustomActionTypeNoImpersonate;
221 - type |= customActionTuple.IgnoreResult ? WindowsInstallerConstants.MsidbCustomActionTypeContinue : 0;
222 - type |= customActionTuple.Hidden ? WindowsInstallerConstants.MsidbCustomActionTypeHideTarget : 0;
223 - type |= customActionTuple.Async ? WindowsInstallerConstants.MsidbCustomActionTypeAsync : 0;
224 - type |= CustomActionExecutionType.FirstSequence == customActionTuple.ExecutionType ? WindowsInstallerConstants.MsidbCustomActionTypeFirstSequence : 0;
225 - type |= CustomActionExecutionType.OncePerProcess == customActionTuple.ExecutionType ? WindowsInstallerConstants.MsidbCustomActionTypeOncePerProcess : 0;
226 - type |= CustomActionExecutionType.ClientRepeat == customActionTuple.ExecutionType ? WindowsInstallerConstants.MsidbCustomActionTypeClientRepeat : 0;
227 - type |= CustomActionExecutionType.Deferred == customActionTuple.ExecutionType ? WindowsInstallerConstants.MsidbCustomActionTypeInScript : 0;
228 - type |= CustomActionExecutionType.Rollback == customActionTuple.ExecutionType ? WindowsInstallerConstants.MsidbCustomActionTypeInScript | WindowsInstallerConstants.MsidbCustomActionTypeRollback : 0;
229 - type |= CustomActionExecutionType.Commit == customActionTuple.ExecutionType ? WindowsInstallerConstants.MsidbCustomActionTypeInScript | WindowsInstallerConstants.MsidbCustomActionTypeCommit : 0;
230 - type |= CustomActionSourceType.File == customActionTuple.SourceType ? WindowsInstallerConstants.MsidbCustomActionTypeSourceFile : 0;
231 - type |= CustomActionSourceType.Directory == customActionTuple.SourceType ? WindowsInstallerConstants.MsidbCustomActionTypeDirectory : 0;
232 - type |= CustomActionSourceType.Property == customActionTuple.SourceType ? WindowsInstallerConstants.MsidbCustomActionTypeProperty : 0;
233 - type |= CustomActionTargetType.Dll == customActionTuple.TargetType ? WindowsInstallerConstants.MsidbCustomActionTypeDll : 0;
234 - type |= CustomActionTargetType.Exe == customActionTuple.TargetType ? WindowsInstallerConstants.MsidbCustomActionTypeExe : 0;
235 - type |= CustomActionTargetType.TextData == customActionTuple.TargetType ? WindowsInstallerConstants.MsidbCustomActionTypeTextData : 0;
236 - type |= CustomActionTargetType.JScript == customActionTuple.TargetType ? WindowsInstallerConstants.MsidbCustomActionTypeJScript : 0;
237 - type |= CustomActionTargetType.VBScript == customActionTuple.TargetType ? WindowsInstallerConstants.MsidbCustomActionTypeVBScript : 0;
217 + var customActionSymbol = (CustomActionSymbol)symbol;
218 + var type = customActionSymbol.Win64 ? WindowsInstallerConstants.MsidbCustomActionType64BitScript : 0;
219 + type |= customActionSymbol.TSAware ? WindowsInstallerConstants.MsidbCustomActionTypeTSAware : 0;
220 + type |= customActionSymbol.Impersonate ? 0 : WindowsInstallerConstants.MsidbCustomActionTypeNoImpersonate;
221 + type |= customActionSymbol.IgnoreResult ? WindowsInstallerConstants.MsidbCustomActionTypeContinue : 0;
222 + type |= customActionSymbol.Hidden ? WindowsInstallerConstants.MsidbCustomActionTypeHideTarget : 0;
223 + type |= customActionSymbol.Async ? WindowsInstallerConstants.MsidbCustomActionTypeAsync : 0;
224 + type |= CustomActionExecutionType.FirstSequence == customActionSymbol.ExecutionType ? WindowsInstallerConstants.MsidbCustomActionTypeFirstSequence : 0;
225 + type |= CustomActionExecutionType.OncePerProcess == customActionSymbol.ExecutionType ? WindowsInstallerConstants.MsidbCustomActionTypeOncePerProcess : 0;
226 + type |= CustomActionExecutionType.ClientRepeat == customActionSymbol.ExecutionType ? WindowsInstallerConstants.MsidbCustomActionTypeClientRepeat : 0;
227 + type |= CustomActionExecutionType.Deferred == customActionSymbol.ExecutionType ? WindowsInstallerConstants.MsidbCustomActionTypeInScript : 0;
228 + type |= CustomActionExecutionType.Rollback == customActionSymbol.ExecutionType ? WindowsInstallerConstants.MsidbCustomActionTypeInScript | WindowsInstallerConstants.MsidbCustomActionTypeRollback : 0;
229 + type |= CustomActionExecutionType.Commit == customActionSymbol.ExecutionType ? WindowsInstallerConstants.MsidbCustomActionTypeInScript | WindowsInstallerConstants.MsidbCustomActionTypeCommit : 0;
230 + type |= CustomActionSourceType.File == customActionSymbol.SourceType ? WindowsInstallerConstants.MsidbCustomActionTypeSourceFile : 0;
231 + type |= CustomActionSourceType.Directory == customActionSymbol.SourceType ? WindowsInstallerConstants.MsidbCustomActionTypeDirectory : 0;
232 + type |= CustomActionSourceType.Property == customActionSymbol.SourceType ? WindowsInstallerConstants.MsidbCustomActionTypeProperty : 0;
233 + type |= CustomActionTargetType.Dll == customActionSymbol.TargetType ? WindowsInstallerConstants.MsidbCustomActionTypeDll : 0;
234 + type |= CustomActionTargetType.Exe == customActionSymbol.TargetType ? WindowsInstallerConstants.MsidbCustomActionTypeExe : 0;
235 + type |= CustomActionTargetType.TextData == customActionSymbol.TargetType ? WindowsInstallerConstants.MsidbCustomActionTypeTextData : 0;
236 + type |= CustomActionTargetType.JScript == customActionSymbol.TargetType ? WindowsInstallerConstants.MsidbCustomActionTypeJScript : 0;
237 + type |= CustomActionTargetType.VBScript == customActionSymbol.TargetType ? WindowsInstallerConstants.MsidbCustomActionTypeVBScript : 0;
238
239 fields = String.Join(",",
240 type.ToString(),
241 - customActionTuple.Source,
242 - customActionTuple.Target,
243 - customActionTuple.PatchUninstall ? WindowsInstallerConstants.MsidbCustomActionTypePatchUninstall.ToString() : null
241 + customActionSymbol.Source,
242 + customActionSymbol.Target,
243 + customActionSymbol.PatchUninstall ? WindowsInstallerConstants.MsidbCustomActionTypePatchUninstall.ToString() : null
244 );
245 break;
246 }
247 case "Directory":
248 {
249 - var directoryTuple = (DirectoryTuple)tuple;
249 + var directorySymbol = (DirectorySymbol)symbol;
250
251 - if (!String.IsNullOrEmpty(directoryTuple.ComponentGuidGenerationSeed))
251 + if (!String.IsNullOrEmpty(directorySymbol.ComponentGuidGenerationSeed))
252 {
253 - yield return $"WixDirectory:{directoryTuple.Id.Id},{directoryTuple.ComponentGuidGenerationSeed}";
253 + yield return $"WixDirectory:{directorySymbol.Id.Id},{directorySymbol.ComponentGuidGenerationSeed}";
254 }
255
256 - fields = String.Join(",", directoryTuple.ParentDirectoryRef, directoryTuple.Name, directoryTuple.ShortName, directoryTuple.SourceName, directoryTuple.SourceShortName);
256 + fields = String.Join(",", directorySymbol.ParentDirectoryRef, directorySymbol.Name, directorySymbol.ShortName, directorySymbol.SourceName, directorySymbol.SourceShortName);
257 break;
258 }
259 case "Feature":
260 {
261 - var featureTuple = (FeatureTuple)tuple;
262 - var attributes = featureTuple.DisallowAbsent ? WindowsInstallerConstants.MsidbFeatureAttributesUIDisallowAbsent : 0;
263 - attributes |= featureTuple.DisallowAdvertise ? WindowsInstallerConstants.MsidbFeatureAttributesDisallowAdvertise : 0;
264 - attributes |= FeatureInstallDefault.FollowParent == featureTuple.InstallDefault ? WindowsInstallerConstants.MsidbFeatureAttributesFollowParent : 0;
265 - attributes |= FeatureInstallDefault.Source == featureTuple.InstallDefault ? WindowsInstallerConstants.MsidbFeatureAttributesFavorSource : 0;
266 - attributes |= FeatureTypicalDefault.Advertise == featureTuple.TypicalDefault ? WindowsInstallerConstants.MsidbFeatureAttributesFavorAdvertise : 0;
261 + var featureSymbol = (FeatureSymbol)symbol;
262 + var attributes = featureSymbol.DisallowAbsent ? WindowsInstallerConstants.MsidbFeatureAttributesUIDisallowAbsent : 0;
263 + attributes |= featureSymbol.DisallowAdvertise ? WindowsInstallerConstants.MsidbFeatureAttributesDisallowAdvertise : 0;
264 + attributes |= FeatureInstallDefault.FollowParent == featureSymbol.InstallDefault ? WindowsInstallerConstants.MsidbFeatureAttributesFollowParent : 0;
265 + attributes |= FeatureInstallDefault.Source == featureSymbol.InstallDefault ? WindowsInstallerConstants.MsidbFeatureAttributesFavorSource : 0;
266 + attributes |= FeatureTypicalDefault.Advertise == featureSymbol.TypicalDefault ? WindowsInstallerConstants.MsidbFeatureAttributesFavorAdvertise : 0;
267
268 fields = String.Join(",",
269 - featureTuple.ParentFeatureRef,
270 - featureTuple.Title,
271 - featureTuple.Description,
272 - featureTuple.Display.ToString(),
273 - featureTuple.Level.ToString(),
274 - featureTuple.DirectoryRef,
269 + featureSymbol.ParentFeatureRef,
270 + featureSymbol.Title,
271 + featureSymbol.Description,
272 + featureSymbol.Display.ToString(),
273 + featureSymbol.Level.ToString(),
274 + featureSymbol.DirectoryRef,
275 attributes.ToString());
276 break;
277 }
278 case "File":
279 {
280 - var fileTuple = (FileTuple)tuple;
280 + var fileSymbol = (FileSymbol)symbol;
281
282 - if (fileTuple.BindPath != null)
282 + if (fileSymbol.BindPath != null)
283 {
284 - yield return $"BindImage:{fileTuple.Id.Id},{fileTuple.BindPath}";
284 + yield return $"BindImage:{fileSymbol.Id.Id},{fileSymbol.BindPath}";
285 }
286
287 - if (fileTuple.FontTitle != null)
287 + if (fileSymbol.FontTitle != null)
288 {
289 - yield return $"Font:{fileTuple.Id.Id},{fileTuple.FontTitle}";
289 + yield return $"Font:{fileSymbol.Id.Id},{fileSymbol.FontTitle}";
290 }
291
292 - if (fileTuple.SelfRegCost.HasValue)
292 + if (fileSymbol.SelfRegCost.HasValue)
293 {
294 - yield return $"SelfReg:{fileTuple.Id.Id},{fileTuple.SelfRegCost}";
294 + yield return $"SelfReg:{fileSymbol.Id.Id},{fileSymbol.SelfRegCost}";
295 }
296
297 int? assemblyAttributes = null;
298 - if (assemblyTuplesByFileId.TryGetValue(fileTuple.Id.Id, out var assemblyTuple))
298 + if (assemblySymbolsByFileId.TryGetValue(fileSymbol.Id.Id, out var assemblySymbol))
299 {
300 - if (assemblyTuple.Type == AssemblyType.DotNetAssembly)
300 + if (assemblySymbol.Type == AssemblyType.DotNetAssembly)
301 {
302 assemblyAttributes = 0;
303 }
304 - else if (assemblyTuple.Type == AssemblyType.Win32Assembly)
304 + else if (assemblySymbol.Type == AssemblyType.Win32Assembly)
305 {
306 assemblyAttributes = 1;
307 }
308 }
309
310 yield return "WixFile:" + String.Join(",",
311 - fileTuple.Id.Id,
311 + fileSymbol.Id.Id,
312 assemblyAttributes,
313 - assemblyTuple?.ManifestFileRef,
314 - assemblyTuple?.ApplicationFileRef,
315 - fileTuple.DirectoryRef,
316 - fileTuple.DiskId,
317 - fileTuple.Source.Path,
313 + assemblySymbol?.ManifestFileRef,
314 + assemblySymbol?.ApplicationFileRef,
315 + fileSymbol.DirectoryRef,
316 + fileSymbol.DiskId,
317 + fileSymbol.Source.Path,
318 null, // assembly processor arch
319 - fileTuple.PatchGroup,
320 - (fileTuple.Attributes & FileTupleAttributes.GeneratedShortFileName) != 0 ? 1 : 0,
321 - (int)fileTuple.PatchAttributes,
322 - fileTuple.RetainLengths,
323 - fileTuple.IgnoreOffsets,
324 - fileTuple.IgnoreLengths,
325 - fileTuple.RetainOffsets
319 + fileSymbol.PatchGroup,
320 + (fileSymbol.Attributes & FileSymbolAttributes.GeneratedShortFileName) != 0 ? 1 : 0,
321 + (int)fileSymbol.PatchAttributes,
322 + fileSymbol.RetainLengths,
323 + fileSymbol.IgnoreOffsets,
324 + fileSymbol.IgnoreLengths,
325 + fileSymbol.RetainOffsets
326 );
327
328 var fileAttributes = 0;
329 - fileAttributes |= (fileTuple.Attributes & FileTupleAttributes.ReadOnly) != 0 ? WindowsInstallerConstants.MsidbFileAttributesReadOnly : 0;
330 - fileAttributes |= (fileTuple.Attributes & FileTupleAttributes.Hidden) != 0 ? WindowsInstallerConstants.MsidbFileAttributesHidden : 0;
331 - fileAttributes |= (fileTuple.Attributes & FileTupleAttributes.System) != 0 ? WindowsInstallerConstants.MsidbFileAttributesSystem : 0;
332 - fileAttributes |= (fileTuple.Attributes & FileTupleAttributes.Vital) != 0 ? WindowsInstallerConstants.MsidbFileAttributesVital : 0;
333 - fileAttributes |= (fileTuple.Attributes & FileTupleAttributes.Checksum) != 0 ? WindowsInstallerConstants.MsidbFileAttributesChecksum : 0;
334 - fileAttributes |= (fileTuple.Attributes & FileTupleAttributes.Compressed) != 0 ? WindowsInstallerConstants.MsidbFileAttributesCompressed : 0;
335 - fileAttributes |= (fileTuple.Attributes & FileTupleAttributes.Uncompressed) != 0 ? WindowsInstallerConstants.MsidbFileAttributesNoncompressed : 0;
329 + fileAttributes |= (fileSymbol.Attributes & FileSymbolAttributes.ReadOnly) != 0 ? WindowsInstallerConstants.MsidbFileAttributesReadOnly : 0;
330 + fileAttributes |= (fileSymbol.Attributes & FileSymbolAttributes.Hidden) != 0 ? WindowsInstallerConstants.MsidbFileAttributesHidden : 0;
331 + fileAttributes |= (fileSymbol.Attributes & FileSymbolAttributes.System) != 0 ? WindowsInstallerConstants.MsidbFileAttributesSystem : 0;
332 + fileAttributes |= (fileSymbol.Attributes & FileSymbolAttributes.Vital) != 0 ? WindowsInstallerConstants.MsidbFileAttributesVital : 0;
333 + fileAttributes |= (fileSymbol.Attributes & FileSymbolAttributes.Checksum) != 0 ? WindowsInstallerConstants.MsidbFileAttributesChecksum : 0;
334 + fileAttributes |= (fileSymbol.Attributes & FileSymbolAttributes.Compressed) != 0 ? WindowsInstallerConstants.MsidbFileAttributesCompressed : 0;
335 + fileAttributes |= (fileSymbol.Attributes & FileSymbolAttributes.Uncompressed) != 0 ? WindowsInstallerConstants.MsidbFileAttributesNoncompressed : 0;
336
337 fields = String.Join(",",
338 - fileTuple.ComponentRef,
339 - fileTuple.Name,
340 - fileTuple.FileSize.ToString(),
341 - fileTuple.Version,
342 - fileTuple.Language,
338 + fileSymbol.ComponentRef,
339 + fileSymbol.Name,
340 + fileSymbol.FileSize.ToString(),
341 + fileSymbol.Version,
342 + fileSymbol.Language,
343 fileAttributes);
344 break;
345 }
346
347 case "Media":
348 - fields = String.Join(",", tuple.Fields.Skip(1).Select(SafeConvertField));
348 + fields = String.Join(",", symbol.Fields.Skip(1).Select(SafeConvertField));
349 break;
350
351 case "Assembly":
352 {
353 - var assemblyTuple = (AssemblyTuple)tuple;
353 + var assemblySymbol = (AssemblySymbol)symbol;
354
355 id = null;
356 name = "MsiAssembly";
357 - fields = String.Join(",", assemblyTuple.ComponentRef, assemblyTuple.FeatureRef, assemblyTuple.ManifestFileRef, assemblyTuple.ApplicationFileRef, assemblyTuple.Type == AssemblyType.Win32Assembly ? 1 : 0);
357 + fields = String.Join(",", assemblySymbol.ComponentRef, assemblySymbol.FeatureRef, assemblySymbol.ManifestFileRef, assemblySymbol.ApplicationFileRef, assemblySymbol.Type == AssemblyType.Win32Assembly ? 1 : 0);
358 break;
359 }
360 case "RegLocator":
361 {
362 - var locatorTuple = (RegLocatorTuple)tuple;
362 + var locatorSymbol = (RegLocatorSymbol)symbol;
363
364 - fields = String.Join(",", (int)locatorTuple.Root, locatorTuple.Key, locatorTuple.Name, (int)locatorTuple.Type, locatorTuple.Win64);
364 + fields = String.Join(",", (int)locatorSymbol.Root, locatorSymbol.Key, locatorSymbol.Name, (int)locatorSymbol.Type, locatorSymbol.Win64);
365 break;
366 }
367 case "Registry":
368 {
369 - var registryTuple = (RegistryTuple)tuple;
370 - var value = registryTuple.Value;
369 + var registrySymbol = (RegistrySymbol)symbol;
370 + var value = registrySymbol.Value;
371
372 - switch (registryTuple.ValueType)
372 + switch (registrySymbol.ValueType)
373 {
374 case RegistryValueType.Binary:
375 value = String.Concat("#x", value);
@@ -381,7 +381,7 @@ namespace WixToolsetTest.Converters.Tupleizer
381 value = String.Concat("#", value);
382 break;
383 case RegistryValueType.MultiString:
384 - switch (registryTuple.ValueAction)
384 + switch (registrySymbol.ValueAction)
385 {
386 case RegistryValueActionType.Append:
387 value = String.Concat("[~]", value);
@@ -408,145 +408,145 @@ namespace WixToolsetTest.Converters.Tupleizer
408 }
409
410 fields = String.Join(",",
411 - ((int)registryTuple.Root).ToString(),
412 - registryTuple.Key,
413 - registryTuple.Name,
411 + ((int)registrySymbol.Root).ToString(),
412 + registrySymbol.Key,
413 + registrySymbol.Name,
414 value,
415 - registryTuple.ComponentRef
415 + registrySymbol.ComponentRef
416 );
417 break;
418 }
419
420 case "RemoveRegistry":
421 {
422 - var removeRegistryTuple = (RemoveRegistryTuple)tuple;
422 + var removeRegistrySymbol = (RemoveRegistrySymbol)symbol;
423 fields = String.Join(",",
424 - ((int)removeRegistryTuple.Root).ToString(),
425 - removeRegistryTuple.Key,
426 - removeRegistryTuple.Name,
427 - removeRegistryTuple.ComponentRef
424 + ((int)removeRegistrySymbol.Root).ToString(),
425 + removeRegistrySymbol.Key,
426 + removeRegistrySymbol.Name,
427 + removeRegistrySymbol.ComponentRef
428 );
429 break;
430 }
431
432 case "ServiceControl":
433 {
434 - var serviceControlTuple = (ServiceControlTuple)tuple;
434 + var serviceControlSymbol = (ServiceControlSymbol)symbol;
435
436 - var events = serviceControlTuple.InstallRemove ? WindowsInstallerConstants.MsidbServiceControlEventDelete : 0;
437 - events |= serviceControlTuple.UninstallRemove ? WindowsInstallerConstants.MsidbServiceControlEventUninstallDelete : 0;
438 - events |= serviceControlTuple.InstallStart ? WindowsInstallerConstants.MsidbServiceControlEventStart : 0;
439 - events |= serviceControlTuple.UninstallStart ? WindowsInstallerConstants.MsidbServiceControlEventUninstallStart : 0;
440 - events |= serviceControlTuple.InstallStop ? WindowsInstallerConstants.MsidbServiceControlEventStop : 0;
441 - events |= serviceControlTuple.UninstallStop ? WindowsInstallerConstants.MsidbServiceControlEventUninstallStop : 0;
436 + var events = serviceControlSymbol.InstallRemove ? WindowsInstallerConstants.MsidbServiceControlEventDelete : 0;
437 + events |= serviceControlSymbol.UninstallRemove ? WindowsInstallerConstants.MsidbServiceControlEventUninstallDelete : 0;
438 + events |= serviceControlSymbol.InstallStart ? WindowsInstallerConstants.MsidbServiceControlEventStart : 0;
439 + events |= serviceControlSymbol.UninstallStart ? WindowsInstallerConstants.MsidbServiceControlEventUninstallStart : 0;
440 + events |= serviceControlSymbol.InstallStop ? WindowsInstallerConstants.MsidbServiceControlEventStop : 0;
441 + events |= serviceControlSymbol.UninstallStop ? WindowsInstallerConstants.MsidbServiceControlEventUninstallStop : 0;
442
443 fields = String.Join(",",
444 - serviceControlTuple.Name,
444 + serviceControlSymbol.Name,
445 events.ToString(),
446 - serviceControlTuple.Arguments,
447 - serviceControlTuple.Wait == true ? "1" : "0",
448 - serviceControlTuple.ComponentRef
446 + serviceControlSymbol.Arguments,
447 + serviceControlSymbol.Wait == true ? "1" : "0",
448 + serviceControlSymbol.ComponentRef
449 );
450 break;
451 }
452
453 case "ServiceInstall":
454 {
455 - var serviceInstallTuple = (ServiceInstallTuple)tuple;
455 + var serviceInstallSymbol = (ServiceInstallSymbol)symbol;
456
457 - var errorControl = (int)serviceInstallTuple.ErrorControl;
458 - errorControl |= serviceInstallTuple.Vital ? WindowsInstallerConstants.MsidbServiceInstallErrorControlVital : 0;
457 + var errorControl = (int)serviceInstallSymbol.ErrorControl;
458 + errorControl |= serviceInstallSymbol.Vital ? WindowsInstallerConstants.MsidbServiceInstallErrorControlVital : 0;
459
460 - var serviceType = (int)serviceInstallTuple.ServiceType;
461 - serviceType |= serviceInstallTuple.Interactive ? WindowsInstallerConstants.MsidbServiceInstallInteractive : 0;
460 + var serviceType = (int)serviceInstallSymbol.ServiceType;
461 + serviceType |= serviceInstallSymbol.Interactive ? WindowsInstallerConstants.MsidbServiceInstallInteractive : 0;
462
463 fields = String.Join(",",
464 - serviceInstallTuple.Name,
465 - serviceInstallTuple.DisplayName,
464 + serviceInstallSymbol.Name,
465 + serviceInstallSymbol.DisplayName,
466 serviceType.ToString(),
467 - ((int)serviceInstallTuple.StartType).ToString(),
467 + ((int)serviceInstallSymbol.StartType).ToString(),
468 errorControl.ToString(),
469 - serviceInstallTuple.LoadOrderGroup,
470 - serviceInstallTuple.Dependencies,
471 - serviceInstallTuple.StartName,
472 - serviceInstallTuple.Password,
473 - serviceInstallTuple.Arguments,
474 - serviceInstallTuple.ComponentRef,
475 - serviceInstallTuple.Description
469 + serviceInstallSymbol.LoadOrderGroup,
470 + serviceInstallSymbol.Dependencies,
471 + serviceInstallSymbol.StartName,
472 + serviceInstallSymbol.Password,
473 + serviceInstallSymbol.Arguments,
474 + serviceInstallSymbol.ComponentRef,
475 + serviceInstallSymbol.Description
476 );
477 break;
478 }
479
480 case "Upgrade":
481 {
482 - var upgradeTuple = (UpgradeTuple)tuple;
482 + var upgradeSymbol = (UpgradeSymbol)symbol;
483
484 - var attributes = upgradeTuple.MigrateFeatures ? WindowsInstallerConstants.MsidbUpgradeAttributesMigrateFeatures : 0;
485 - attributes |= upgradeTuple.OnlyDetect ? WindowsInstallerConstants.MsidbUpgradeAttributesOnlyDetect : 0;
486 - attributes |= upgradeTuple.IgnoreRemoveFailures ? WindowsInstallerConstants.MsidbUpgradeAttributesIgnoreRemoveFailure : 0;
487 - attributes |= upgradeTuple.VersionMinInclusive ? WindowsInstallerConstants.MsidbUpgradeAttributesVersionMinInclusive : 0;
488 - attributes |= upgradeTuple.VersionMaxInclusive ? WindowsInstallerConstants.MsidbUpgradeAttributesVersionMaxInclusive : 0;
489 - attributes |= upgradeTuple.ExcludeLanguages ? WindowsInstallerConstants.MsidbUpgradeAttributesLanguagesExclusive : 0;
484 + var attributes = upgradeSymbol.MigrateFeatures ? WindowsInstallerConstants.MsidbUpgradeAttributesMigrateFeatures : 0;
485 + attributes |= upgradeSymbol.OnlyDetect ? WindowsInstallerConstants.MsidbUpgradeAttributesOnlyDetect : 0;
486 + attributes |= upgradeSymbol.IgnoreRemoveFailures ? WindowsInstallerConstants.MsidbUpgradeAttributesIgnoreRemoveFailure : 0;
487 + attributes |= upgradeSymbol.VersionMinInclusive ? WindowsInstallerConstants.MsidbUpgradeAttributesVersionMinInclusive : 0;
488 + attributes |= upgradeSymbol.VersionMaxInclusive ? WindowsInstallerConstants.MsidbUpgradeAttributesVersionMaxInclusive : 0;
489 + attributes |= upgradeSymbol.ExcludeLanguages ? WindowsInstallerConstants.MsidbUpgradeAttributesLanguagesExclusive : 0;
490
491 fields = String.Join(",",
492 - upgradeTuple.VersionMin,
493 - upgradeTuple.VersionMax,
494 - upgradeTuple.Language,
492 + upgradeSymbol.VersionMin,
493 + upgradeSymbol.VersionMax,
494 + upgradeSymbol.Language,
495 attributes.ToString(),
496 - upgradeTuple.Remove,
497 - upgradeTuple.ActionProperty
496 + upgradeSymbol.Remove,
497 + upgradeSymbol.ActionProperty
498 );
499 break;
500 }
501
502 case "WixAction":
503 {
504 - var wixActionTuple = (WixActionTuple)tuple;
505 - var data = wixActionTuple.Fields[(int)WixActionTupleFields.SequenceTable].AsObject();
506 - var sequenceTableAsInt = data is string ? (int)SequenceStringToSequenceTable(data) : (int)wixActionTuple.SequenceTable;
504 + var wixActionSymbol = (WixActionSymbol)symbol;
505 + var data = wixActionSymbol.Fields[(int)WixActionSymbolFields.SequenceTable].AsObject();
506 + var sequenceTableAsInt = data is string ? (int)SequenceStringToSequenceTable(data) : (int)wixActionSymbol.SequenceTable;
507
508 fields = String.Join(",",
509 sequenceTableAsInt,
510 - wixActionTuple.Action,
511 - wixActionTuple.Condition,
512 - wixActionTuple.Sequence?.ToString() ?? String.Empty,
513 - wixActionTuple.Before,
514 - wixActionTuple.After,
515 - wixActionTuple.Overridable == true ? "1" : "0"
510 + wixActionSymbol.Action,
511 + wixActionSymbol.Condition,
512 + wixActionSymbol.Sequence?.ToString() ?? String.Empty,
513 + wixActionSymbol.Before,
514 + wixActionSymbol.After,
515 + wixActionSymbol.Overridable == true ? "1" : "0"
516 );
517 break;
518 }
519
520 case "WixComplexReference":
521 {
522 - var wixComplexReferenceTuple = (WixComplexReferenceTuple)tuple;
522 + var wixComplexReferenceSymbol = (WixComplexReferenceSymbol)symbol;
523 fields = String.Join(",",
524 - wixComplexReferenceTuple.Parent,
525 - (int)wixComplexReferenceTuple.ParentType,
526 - wixComplexReferenceTuple.ParentLanguage,
527 - wixComplexReferenceTuple.Child,
528 - (int)wixComplexReferenceTuple.ChildType,
529 - wixComplexReferenceTuple.IsPrimary ? "1" : "0"
524 + wixComplexReferenceSymbol.Parent,
525 + (int)wixComplexReferenceSymbol.ParentType,
526 + wixComplexReferenceSymbol.ParentLanguage,
527 + wixComplexReferenceSymbol.Child,
528 + (int)wixComplexReferenceSymbol.ChildType,
529 + wixComplexReferenceSymbol.IsPrimary ? "1" : "0"
530 );
531 break;
532 }
533
534 case "WixProperty":
535 {
536 - var wixPropertyTuple = (WixPropertyTuple)tuple;
537 - var attributes = wixPropertyTuple.Admin ? 0x1 : 0;
538 - attributes |= wixPropertyTuple.Hidden ? 0x2 : 0;
539 - attributes |= wixPropertyTuple.Secure ? 0x4 : 0;
536 + var wixPropertySymbol = (WixPropertySymbol)symbol;
537 + var attributes = wixPropertySymbol.Admin ? 0x1 : 0;
538 + attributes |= wixPropertySymbol.Hidden ? 0x2 : 0;
539 + attributes |= wixPropertySymbol.Secure ? 0x4 : 0;
540
541 fields = String.Join(",",
542 - wixPropertyTuple.PropertyRef,
542 + wixPropertySymbol.PropertyRef,
543 attributes.ToString()
544 );
545 break;
546 }
547
548 default:
549 - fields = String.Join(",", tuple.Fields.Select(SafeConvertField));
549 + fields = String.Join(",", symbol.Fields.Select(SafeConvertField));
550 break;
551 }
552
src/test/WixToolsetTest.Converters.Symbolizer/TestData/Integration/test.wixout renamed
src/test/WixToolsetTest.Converters.Symbolizer/TestData/Integration/test.wixproj renamed
+1 -1
@@ -6,7 +6,7 @@
6 <ProductVersion>3.10</ProductVersion>
7 <ProjectGuid>d59f1c1e-9238-49fa-bfa2-ec1d9c2dda1d</ProjectGuid>
8 <SchemaVersion>2.0</SchemaVersion>
9 - <OutputName>TupleizerWixout</OutputName>
9 + <OutputName>SymbolizerWixout</OutputName>
10 <OutputType>Package</OutputType>
11 </PropertyGroup>
12 <PropertyGroup Condition=" '$(Configuration)|$(Platform)' == 'Debug|x86' ">
src/test/WixToolsetTest.Converters.Symbolizer/TestData/Integration/test.wxs renamed
+3 -3
@@ -1,12 +1,12 @@
1 <?xml version="1.0" encoding="UTF-8"?>
2 <Wix xmlns="http://schemas.microsoft.com/wix/2006/wi">
3 - <Product Id="*" Name="TupleizerWixout" Language="1033" Version="1.0.0.0" Manufacturer="FireGiant" UpgradeCode="14a02d7f-9b32-4c92-b1f1-da518bf4e32a">
3 + <Product Id="*" Name="SymbolizerWixout" Language="1033" Version="1.0.0.0" Manufacturer="FireGiant" UpgradeCode="14a02d7f-9b32-4c92-b1f1-da518bf4e32a">
4 <Package InstallerVersion="200" Compressed="yes" InstallScope="perMachine" />
5
6 <MajorUpgrade DowngradeErrorMessage="A newer version of [ProductName] is already installed." AllowSameVersionUpgrades="yes" IgnoreRemoveFailure="yes" />
7 <MediaTemplate />
8
9 - <Feature Id="ProductFeature" Title="TupleizerWixout" Level="1">
9 + <Feature Id="ProductFeature" Title="SymbolizerWixout" Level="1">
10 <Feature Id="ChildFeature">
11 <ComponentGroupRef Id="ProductComponents" />
12 </Feature>
@@ -20,7 +20,7 @@
20 <Fragment>
21 <Directory Id="TARGETDIR" Name="SourceDir">
22 <Directory Id="ProgramFilesFolder">
23 - <Directory Id="INSTALLFOLDER" Name="TupleizerWixout" />
23 + <Directory Id="INSTALLFOLDER" Name="SymbolizerWixout" />
24 </Directory>
25 </Directory>
26 </Fragment>
src/test/WixToolsetTest.Converters.Symbolizer/WixToolsetTest.Converters.Symbolizer.csproj renamed
+1 -1
@@ -13,7 +13,7 @@
13 </ItemGroup>
14
15 <ItemGroup>
16 - <ProjectReference Include="..\..\WixToolset.Converters.Tupleizer\WixToolset.Converters.Tupleizer.csproj" />
16 + <ProjectReference Include="..\..\WixToolset.Converters.Symbolizer\WixToolset.Converters.Symbolizer.csproj" />
17 </ItemGroup>
18
19 <ItemGroup>
src/test/WixToolsetTest.Converters.Symbolizer/WixToolsetTest.Converters.Symbolizer.v3.ncrunchproject new
+9
@@ -0,0 +1,9 @@
1 +<ProjectConfiguration>
2 + <Settings>
3 + <IgnoredTests>
4 + <NamedTestSelector>
5 + <TestName>WixToolsetTest.Converters.Symbolizer.ConvertSymbolsFixture.CanLoadWixoutAndConvertToIntermediate</TestName>
6 + </NamedTestSelector>
7 + </IgnoredTests>
8 + </Settings>
9 +</ProjectConfiguration>
\ No newline at end of file
src/test/WixToolsetTest.Converters.Tupleizer/WixToolsetTest.Converters.Tupleizer.v3.ncrunchproject deleted
-9
@@ -1,9 +0,0 @@
1 -<ProjectConfiguration>
2 - <Settings>
3 - <IgnoredTests>
4 - <NamedTestSelector>
5 - <TestName>WixToolsetTest.Converters.Tupleizer.ConvertTuplesFixture.CanLoadWixoutAndConvertToIntermediate</TestName>
6 - </NamedTestSelector>
7 - </IgnoredTests>
8 - </Settings>
9 -</ProjectConfiguration>
\ No newline at end of file