aboutsummaryrefslogtreecommitdiff
path: root/src
diff options
context:
space:
mode:
authorRob Mensching <rob@firegiant.com>2021-03-23 12:18:42 -0700
committerRob Mensching <rob@firegiant.com>2021-03-23 13:51:04 -0700
commitf7de7f52a790e989a42fc48935dc61c93f3f4137 (patch)
treebd3ecbe91d4a925f45c3c6f2848c55d5d12a9645 /src
parentf2b9979b1d1922cf3f45d4317fda224f192ae533 (diff)
downloadwix-f7de7f52a790e989a42fc48935dc61c93f3f4137.tar.gz
wix-f7de7f52a790e989a42fc48935dc61c93f3f4137.tar.bz2
wix-f7de7f52a790e989a42fc48935dc61c93f3f4137.zip
Consolidate ProvidesDependencySymbol into WixDependencyProviderSymbol
Part of wixtoolset/issues#6388
Diffstat (limited to 'src')
-rw-r--r--src/WixToolset.Data/Symbols/ProvidesDependencySymbol.cs84
-rw-r--r--src/WixToolset.Data/Symbols/SymbolDefinitions.cs3
-rw-r--r--src/WixToolset.Data/Symbols/WixDependencyProviderSymbol.cs15
3 files changed, 9 insertions, 93 deletions
diff --git a/src/WixToolset.Data/Symbols/ProvidesDependencySymbol.cs b/src/WixToolset.Data/Symbols/ProvidesDependencySymbol.cs
deleted file mode 100644
index 8d8cb02b..00000000
--- a/src/WixToolset.Data/Symbols/ProvidesDependencySymbol.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
3namespace 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
24namespace 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}
diff --git a/src/WixToolset.Data/Symbols/SymbolDefinitions.cs b/src/WixToolset.Data/Symbols/SymbolDefinitions.cs
index 9bb8bcfb..54deb87f 100644
--- a/src/WixToolset.Data/Symbols/SymbolDefinitions.cs
+++ b/src/WixToolset.Data/Symbols/SymbolDefinitions.cs
@@ -461,9 +461,6 @@ namespace WixToolset.Data
461 case SymbolDefinitionType.Property: 461 case SymbolDefinitionType.Property:
462 return SymbolDefinitions.Property; 462 return SymbolDefinitions.Property;
463 463
464 case SymbolDefinitionType.ProvidesDependency:
465 return SymbolDefinitions.ProvidesDependency;
466
467 case SymbolDefinitionType.PublishComponent: 464 case SymbolDefinitionType.PublishComponent:
468 return SymbolDefinitions.PublishComponent; 465 return SymbolDefinitions.PublishComponent;
469 466
diff --git a/src/WixToolset.Data/Symbols/WixDependencyProviderSymbol.cs b/src/WixToolset.Data/Symbols/WixDependencyProviderSymbol.cs
index a4604a9c..0212bfab 100644
--- a/src/WixToolset.Data/Symbols/WixDependencyProviderSymbol.cs
+++ b/src/WixToolset.Data/Symbols/WixDependencyProviderSymbol.cs
@@ -10,7 +10,7 @@ namespace WixToolset.Data
10 SymbolDefinitionType.WixDependencyProvider, 10 SymbolDefinitionType.WixDependencyProvider,
11 new[] 11 new[]
12 { 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), 14 new IntermediateFieldDefinition(nameof(WixDependencyProviderSymbolFields.ProviderKey), IntermediateFieldType.String),
15 new IntermediateFieldDefinition(nameof(WixDependencyProviderSymbolFields.Version), IntermediateFieldType.String), 15 new IntermediateFieldDefinition(nameof(WixDependencyProviderSymbolFields.Version), IntermediateFieldType.String),
16 new IntermediateFieldDefinition(nameof(WixDependencyProviderSymbolFields.DisplayName), IntermediateFieldType.String), 16 new IntermediateFieldDefinition(nameof(WixDependencyProviderSymbolFields.DisplayName), IntermediateFieldType.String),
@@ -27,7 +27,7 @@ namespace WixToolset.Data.Symbols
27 27
28 public enum WixDependencyProviderSymbolFields 28 public enum WixDependencyProviderSymbolFields
29 { 29 {
30 ComponentRef, 30 ParentRef,
31 ProviderKey, 31 ProviderKey,
32 Version, 32 Version,
33 DisplayName, 33 DisplayName,
@@ -37,7 +37,8 @@ namespace WixToolset.Data.Symbols
37 [Flags] 37 [Flags]
38 public enum WixDependencyProviderAttributes 38 public enum WixDependencyProviderAttributes
39 { 39 {
40 ProvidesAttributesBundle = 0x10000 40 ProvidesAttributesBundle = 0x10000,
41 ProvidesAttributesImported = 0x20000
41 } 42 }
42 43
43 public class WixDependencyProviderSymbol : IntermediateSymbol 44 public class WixDependencyProviderSymbol : IntermediateSymbol
@@ -52,10 +53,10 @@ namespace WixToolset.Data.Symbols
52 53
53 public IntermediateField this[WixDependencyProviderSymbolFields index] => this.Fields[(int)index]; 54 public IntermediateField this[WixDependencyProviderSymbolFields index] => this.Fields[(int)index];
54 55
55 public string ComponentRef 56 public string ParentRef
56 { 57 {
57 get => this.Fields[(int)WixDependencyProviderSymbolFields.ComponentRef].AsString(); 58 get => this.Fields[(int)WixDependencyProviderSymbolFields.ParentRef].AsString();
58 set => this.Set((int)WixDependencyProviderSymbolFields.ComponentRef, value); 59 set => this.Set((int)WixDependencyProviderSymbolFields.ParentRef, value);
59 } 60 }
60 61
61 public string ProviderKey 62 public string ProviderKey
@@ -83,5 +84,7 @@ namespace WixToolset.Data.Symbols
83 } 84 }
84 85
85 public bool Bundle => (this.Attributes & WixDependencyProviderAttributes.ProvidesAttributesBundle) == WixDependencyProviderAttributes.ProvidesAttributesBundle; 86 public bool Bundle => (this.Attributes & WixDependencyProviderAttributes.ProvidesAttributesBundle) == WixDependencyProviderAttributes.ProvidesAttributesBundle;
87
88 public bool Imported => (this.Attributes & WixDependencyProviderAttributes.ProvidesAttributesImported) == WixDependencyProviderAttributes.ProvidesAttributesImported;
86 } 89 }
87} 90}