diff options
Diffstat (limited to 'src/WixToolset.Data/Tuples/WixBundlePackageTuple.cs')
-rw-r--r-- | src/WixToolset.Data/Tuples/WixBundlePackageTuple.cs | 216 |
1 files changed, 216 insertions, 0 deletions
diff --git a/src/WixToolset.Data/Tuples/WixBundlePackageTuple.cs b/src/WixToolset.Data/Tuples/WixBundlePackageTuple.cs new file mode 100644 index 00000000..e0eedce1 --- /dev/null +++ b/src/WixToolset.Data/Tuples/WixBundlePackageTuple.cs | |||
@@ -0,0 +1,216 @@ | |||
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 WixBundlePackage = new IntermediateTupleDefinition( | ||
10 | TupleDefinitionType.WixBundlePackage, | ||
11 | new[] | ||
12 | { | ||
13 | new IntermediateFieldDefinition(nameof(WixBundlePackageTupleFields.WixChainItem_), IntermediateFieldType.String), | ||
14 | new IntermediateFieldDefinition(nameof(WixBundlePackageTupleFields.Type), IntermediateFieldType.String), | ||
15 | new IntermediateFieldDefinition(nameof(WixBundlePackageTupleFields.Payload_), IntermediateFieldType.String), | ||
16 | new IntermediateFieldDefinition(nameof(WixBundlePackageTupleFields.Attributes), IntermediateFieldType.Number), | ||
17 | new IntermediateFieldDefinition(nameof(WixBundlePackageTupleFields.InstallCondition), IntermediateFieldType.String), | ||
18 | new IntermediateFieldDefinition(nameof(WixBundlePackageTupleFields.Cache), IntermediateFieldType.Number), | ||
19 | new IntermediateFieldDefinition(nameof(WixBundlePackageTupleFields.CacheId), IntermediateFieldType.String), | ||
20 | new IntermediateFieldDefinition(nameof(WixBundlePackageTupleFields.Vital), IntermediateFieldType.Bool), | ||
21 | new IntermediateFieldDefinition(nameof(WixBundlePackageTupleFields.PerMachine), IntermediateFieldType.Bool), | ||
22 | new IntermediateFieldDefinition(nameof(WixBundlePackageTupleFields.LogPathVariable), IntermediateFieldType.String), | ||
23 | new IntermediateFieldDefinition(nameof(WixBundlePackageTupleFields.RollbackLogPathVariable), IntermediateFieldType.String), | ||
24 | new IntermediateFieldDefinition(nameof(WixBundlePackageTupleFields.Size), IntermediateFieldType.Number), | ||
25 | new IntermediateFieldDefinition(nameof(WixBundlePackageTupleFields.InstallSize), IntermediateFieldType.Number), | ||
26 | new IntermediateFieldDefinition(nameof(WixBundlePackageTupleFields.Version), IntermediateFieldType.String), | ||
27 | new IntermediateFieldDefinition(nameof(WixBundlePackageTupleFields.Language), IntermediateFieldType.Number), | ||
28 | new IntermediateFieldDefinition(nameof(WixBundlePackageTupleFields.DisplayName), IntermediateFieldType.String), | ||
29 | new IntermediateFieldDefinition(nameof(WixBundlePackageTupleFields.Description), IntermediateFieldType.String), | ||
30 | new IntermediateFieldDefinition(nameof(WixBundlePackageTupleFields.RollbackBoundary_), IntermediateFieldType.String), | ||
31 | new IntermediateFieldDefinition(nameof(WixBundlePackageTupleFields.RollbackBoundaryBackward_), IntermediateFieldType.String), | ||
32 | new IntermediateFieldDefinition(nameof(WixBundlePackageTupleFields.x64), IntermediateFieldType.Number), | ||
33 | }, | ||
34 | typeof(WixBundlePackageTuple)); | ||
35 | } | ||
36 | } | ||
37 | |||
38 | namespace WixToolset.Data.Tuples | ||
39 | { | ||
40 | using System; | ||
41 | |||
42 | public enum WixBundlePackageTupleFields | ||
43 | { | ||
44 | WixChainItem_, | ||
45 | Type, | ||
46 | Payload_, | ||
47 | Attributes, | ||
48 | InstallCondition, | ||
49 | Cache, | ||
50 | CacheId, | ||
51 | Vital, | ||
52 | PerMachine, | ||
53 | LogPathVariable, | ||
54 | RollbackLogPathVariable, | ||
55 | Size, | ||
56 | InstallSize, | ||
57 | Version, | ||
58 | Language, | ||
59 | DisplayName, | ||
60 | Description, | ||
61 | RollbackBoundary_, | ||
62 | RollbackBoundaryBackward_, | ||
63 | x64, | ||
64 | } | ||
65 | |||
66 | /// <summary> | ||
67 | /// Types of bundle packages. | ||
68 | /// </summary> | ||
69 | public enum WixBundlePackageType | ||
70 | { | ||
71 | Exe, | ||
72 | Msi, | ||
73 | Msp, | ||
74 | Msu, | ||
75 | } | ||
76 | |||
77 | [Flags] | ||
78 | public enum WixBundlePackageAttributes | ||
79 | { | ||
80 | Permanent = 0x1, | ||
81 | Visible = 0x2, | ||
82 | } | ||
83 | |||
84 | public class WixBundlePackageTuple : IntermediateTuple | ||
85 | { | ||
86 | public WixBundlePackageTuple() : base(TupleDefinitions.WixBundlePackage, null, null) | ||
87 | { | ||
88 | } | ||
89 | |||
90 | public WixBundlePackageTuple(SourceLineNumber sourceLineNumber, Identifier id = null) : base(TupleDefinitions.WixBundlePackage, sourceLineNumber, id) | ||
91 | { | ||
92 | } | ||
93 | |||
94 | public IntermediateField this[WixBundlePackageTupleFields index] => this.Fields[(int)index]; | ||
95 | |||
96 | public string WixChainItem_ | ||
97 | { | ||
98 | get => (string)this.Fields[(int)WixBundlePackageTupleFields.WixChainItem_]?.Value; | ||
99 | set => this.Set((int)WixBundlePackageTupleFields.WixChainItem_, value); | ||
100 | } | ||
101 | |||
102 | public WixBundlePackageType Type | ||
103 | { | ||
104 | get => (WixBundlePackageType)Enum.Parse(typeof(WixBundlePackageType), (string)this.Fields[(int)WixBundlePackageTupleFields.Type]?.Value, true); | ||
105 | set => this.Set((int)WixBundlePackageTupleFields.Type, value.ToString()); | ||
106 | } | ||
107 | |||
108 | public string Payload_ | ||
109 | { | ||
110 | get => (string)this.Fields[(int)WixBundlePackageTupleFields.Payload_]?.Value; | ||
111 | set => this.Set((int)WixBundlePackageTupleFields.Payload_, value); | ||
112 | } | ||
113 | |||
114 | public WixBundlePackageAttributes Attributes | ||
115 | { | ||
116 | get => (WixBundlePackageAttributes)(int)this.Fields[(int)WixBundlePackageTupleFields.Attributes]?.Value; | ||
117 | set => this.Set((int)WixBundlePackageTupleFields.Attributes, (int)value); | ||
118 | } | ||
119 | |||
120 | public string InstallCondition | ||
121 | { | ||
122 | get => (string)this.Fields[(int)WixBundlePackageTupleFields.InstallCondition]?.Value; | ||
123 | set => this.Set((int)WixBundlePackageTupleFields.InstallCondition, value); | ||
124 | } | ||
125 | |||
126 | public YesNoAlwaysType Cache | ||
127 | { | ||
128 | get => Enum.TryParse((string)this.Fields[(int)WixBundlePackageTupleFields.Cache]?.Value, true, out YesNoAlwaysType value) ? value : YesNoAlwaysType.NotSet; | ||
129 | set => this.Set((int)WixBundlePackageTupleFields.Cache, value); | ||
130 | } | ||
131 | |||
132 | public string CacheId | ||
133 | { | ||
134 | get => (string)this.Fields[(int)WixBundlePackageTupleFields.CacheId]?.Value; | ||
135 | set => this.Set((int)WixBundlePackageTupleFields.CacheId, value); | ||
136 | } | ||
137 | |||
138 | public bool? Vital | ||
139 | { | ||
140 | get => (bool?)this.Fields[(int)WixBundlePackageTupleFields.Vital]?.Value; | ||
141 | set => this.Set((int)WixBundlePackageTupleFields.Vital, value); | ||
142 | } | ||
143 | |||
144 | public YesNoDefaultType PerMachine | ||
145 | { | ||
146 | get => Enum.TryParse((string)this.Fields[(int)WixBundlePackageTupleFields.PerMachine]?.Value, true, out YesNoDefaultType value) ? value : YesNoDefaultType.NotSet; | ||
147 | set => this.Set((int)WixBundlePackageTupleFields.PerMachine, value); | ||
148 | } | ||
149 | |||
150 | public string LogPathVariable | ||
151 | { | ||
152 | get => (string)this.Fields[(int)WixBundlePackageTupleFields.LogPathVariable]?.Value; | ||
153 | set => this.Set((int)WixBundlePackageTupleFields.LogPathVariable, value); | ||
154 | } | ||
155 | |||
156 | public string RollbackLogPathVariable | ||
157 | { | ||
158 | get => (string)this.Fields[(int)WixBundlePackageTupleFields.RollbackLogPathVariable]?.Value; | ||
159 | set => this.Set((int)WixBundlePackageTupleFields.RollbackLogPathVariable, value); | ||
160 | } | ||
161 | |||
162 | public int Size | ||
163 | { | ||
164 | get => (int)this.Fields[(int)WixBundlePackageTupleFields.Size]?.Value; | ||
165 | set => this.Set((int)WixBundlePackageTupleFields.Size, value); | ||
166 | } | ||
167 | |||
168 | public int InstallSize | ||
169 | { | ||
170 | get => (int)this.Fields[(int)WixBundlePackageTupleFields.InstallSize]?.Value; | ||
171 | set => this.Set((int)WixBundlePackageTupleFields.InstallSize, value); | ||
172 | } | ||
173 | |||
174 | public string Version | ||
175 | { | ||
176 | get => (string)this.Fields[(int)WixBundlePackageTupleFields.Version]?.Value; | ||
177 | set => this.Set((int)WixBundlePackageTupleFields.Version, value); | ||
178 | } | ||
179 | |||
180 | public int Language | ||
181 | { | ||
182 | get => (int)this.Fields[(int)WixBundlePackageTupleFields.Language]?.Value; | ||
183 | set => this.Set((int)WixBundlePackageTupleFields.Language, value); | ||
184 | } | ||
185 | |||
186 | public string DisplayName | ||
187 | { | ||
188 | get => (string)this.Fields[(int)WixBundlePackageTupleFields.DisplayName]?.Value; | ||
189 | set => this.Set((int)WixBundlePackageTupleFields.DisplayName, value); | ||
190 | } | ||
191 | |||
192 | public string Description | ||
193 | { | ||
194 | get => (string)this.Fields[(int)WixBundlePackageTupleFields.Description]?.Value; | ||
195 | set => this.Set((int)WixBundlePackageTupleFields.Description, value); | ||
196 | } | ||
197 | |||
198 | public string RollbackBoundary_ | ||
199 | { | ||
200 | get => (string)this.Fields[(int)WixBundlePackageTupleFields.RollbackBoundary_]?.Value; | ||
201 | set => this.Set((int)WixBundlePackageTupleFields.RollbackBoundary_, value); | ||
202 | } | ||
203 | |||
204 | public string RollbackBoundaryBackward_ | ||
205 | { | ||
206 | get => (string)this.Fields[(int)WixBundlePackageTupleFields.RollbackBoundaryBackward_]?.Value; | ||
207 | set => this.Set((int)WixBundlePackageTupleFields.RollbackBoundaryBackward_, value); | ||
208 | } | ||
209 | |||
210 | public int x64 | ||
211 | { | ||
212 | get => (int)this.Fields[(int)WixBundlePackageTupleFields.x64]?.Value; | ||
213 | set => this.Set((int)WixBundlePackageTupleFields.x64, value); | ||
214 | } | ||
215 | } | ||
216 | } \ No newline at end of file | ||