Consolidate ProvidesDependencySymbol into WixDependencyProviderSymbol
Part of wixtoolset/issues#6388
Rob Mensching committed
Mar 23, 2021 at 12:18 UTC
f7de7f52a790e989a42fc48935dc61c93f3f4137
3 files changed
+9
-93
src/WixToolset.Data/Symbols/ProvidesDependencySymbol.cs
deleted
-84
@@ -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.Symbols;
6
-
7
- public static partial class SymbolDefinitions
8
- {
9
- public static readonly IntermediateSymbolDefinition ProvidesDependency = new IntermediateSymbolDefinition(
10
- SymbolDefinitionType.ProvidesDependency,
11
- new[]
12
- {
13
- new IntermediateFieldDefinition(nameof(ProvidesDependencySymbolFields.PackageRef), IntermediateFieldType.String),
14
- new IntermediateFieldDefinition(nameof(ProvidesDependencySymbolFields.Key), IntermediateFieldType.String),
15
- new IntermediateFieldDefinition(nameof(ProvidesDependencySymbolFields.Version), IntermediateFieldType.String),
16
- new IntermediateFieldDefinition(nameof(ProvidesDependencySymbolFields.DisplayName), IntermediateFieldType.String),
17
- new IntermediateFieldDefinition(nameof(ProvidesDependencySymbolFields.Attributes), IntermediateFieldType.Number),
18
- new IntermediateFieldDefinition(nameof(ProvidesDependencySymbolFields.Imported), IntermediateFieldType.Bool),
19
- },
20
- typeof(ProvidesDependencySymbol));
21
- }
22
-}
23
-
24
-namespace WixToolset.Data.Symbols
25
-{
26
- public enum ProvidesDependencySymbolFields
27
- {
28
- PackageRef,
29
- Key,
30
- Version,
31
- DisplayName,
32
- Attributes,
33
- Imported,
34
- }
35
-
36
- public class ProvidesDependencySymbol : IntermediateSymbol
37
- {
38
- public ProvidesDependencySymbol() : base(SymbolDefinitions.ProvidesDependency, null, null)
39
- {
40
- }
41
-
42
- public ProvidesDependencySymbol(SourceLineNumber sourceLineNumber, Identifier id = null) : base(SymbolDefinitions.ProvidesDependency, sourceLineNumber, id)
43
- {
44
- }
45
-
46
- public IntermediateField this[ProvidesDependencySymbolFields index] => this.Fields[(int)index];
47
-
48
- public string PackageRef
49
- {
50
- get => (string)this.Fields[(int)ProvidesDependencySymbolFields.PackageRef];
51
- set => this.Set((int)ProvidesDependencySymbolFields.PackageRef, value);
52
- }
53
-
54
- public string Key
55
- {
56
- get => (string)this.Fields[(int)ProvidesDependencySymbolFields.Key];
57
- set => this.Set((int)ProvidesDependencySymbolFields.Key, value);
58
- }
59
-
60
- public string Version
61
- {
62
- get => (string)this.Fields[(int)ProvidesDependencySymbolFields.Version];
63
- set => this.Set((int)ProvidesDependencySymbolFields.Version, value);
64
- }
65
-
66
- public string DisplayName
67
- {
68
- get => (string)this.Fields[(int)ProvidesDependencySymbolFields.DisplayName];
69
- set => this.Set((int)ProvidesDependencySymbolFields.DisplayName, value);
70
- }
71
-
72
- public int? Attributes
73
- {
74
- get => (int?)this.Fields[(int)ProvidesDependencySymbolFields.Attributes];
75
- set => this.Set((int)ProvidesDependencySymbolFields.Attributes, value);
76
- }
77
-
78
- public bool Imported
79
- {
80
- get => (bool)this.Fields[(int)ProvidesDependencySymbolFields.Imported];
81
- set => this.Set((int)ProvidesDependencySymbolFields.Imported, value);
82
- }
83
- }
84
-}
src/WixToolset.Data/Symbols/SymbolDefinitions.cs
-3
@@ -461,9 +461,6 @@ namespace WixToolset.Data
461
case SymbolDefinitionType.Property:
462
return SymbolDefinitions.Property;
463
464
- case SymbolDefinitionType.ProvidesDependency:
465
- return SymbolDefinitions.ProvidesDependency;
466
-
464
case SymbolDefinitionType.PublishComponent:
465
return SymbolDefinitions.PublishComponent;
466
src/WixToolset.Data/Symbols/WixDependencyProviderSymbol.cs
+9
-6
@@ -10,7 +10,7 @@ namespace WixToolset.Data
10
SymbolDefinitionType.WixDependencyProvider,
11
new[]
12
{
13
- new IntermediateFieldDefinition(nameof(WixDependencyProviderSymbolFields.ComponentRef), IntermediateFieldType.String),
13
+ new IntermediateFieldDefinition(nameof(WixDependencyProviderSymbolFields.ParentRef), IntermediateFieldType.String),
14
new IntermediateFieldDefinition(nameof(WixDependencyProviderSymbolFields.ProviderKey), IntermediateFieldType.String),
15
new IntermediateFieldDefinition(nameof(WixDependencyProviderSymbolFields.Version), IntermediateFieldType.String),
16
new IntermediateFieldDefinition(nameof(WixDependencyProviderSymbolFields.DisplayName), IntermediateFieldType.String),
@@ -27,7 +27,7 @@ namespace WixToolset.Data.Symbols
27
28
public enum WixDependencyProviderSymbolFields
29
{
30
- ComponentRef,
30
+ ParentRef,
31
ProviderKey,
32
Version,
33
DisplayName,
@@ -37,7 +37,8 @@ namespace WixToolset.Data.Symbols
37
[Flags]
38
public enum WixDependencyProviderAttributes
39
{
40
- ProvidesAttributesBundle = 0x10000
40
+ ProvidesAttributesBundle = 0x10000,
41
+ ProvidesAttributesImported = 0x20000
42
}
43
44
public class WixDependencyProviderSymbol : IntermediateSymbol
@@ -52,10 +53,10 @@ namespace WixToolset.Data.Symbols
53
54
public IntermediateField this[WixDependencyProviderSymbolFields index] => this.Fields[(int)index];
55
55
- public string ComponentRef
56
+ public string ParentRef
57
{
57
- get => this.Fields[(int)WixDependencyProviderSymbolFields.ComponentRef].AsString();
58
- set => this.Set((int)WixDependencyProviderSymbolFields.ComponentRef, value);
58
+ get => this.Fields[(int)WixDependencyProviderSymbolFields.ParentRef].AsString();
59
+ set => this.Set((int)WixDependencyProviderSymbolFields.ParentRef, value);
60
}
61
62
public string ProviderKey
@@ -83,5 +84,7 @@ namespace WixToolset.Data.Symbols
84
}
85
86
public bool Bundle => (this.Attributes & WixDependencyProviderAttributes.ProvidesAttributesBundle) == WixDependencyProviderAttributes.ProvidesAttributesBundle;
87
+
88
+ public bool Imported => (this.Attributes & WixDependencyProviderAttributes.ProvidesAttributesImported) == WixDependencyProviderAttributes.ProvidesAttributesImported;
89
}
90
}