aboutsummaryrefslogtreecommitdiff
path: root/src/wixext/Symbols
diff options
context:
space:
mode:
authorRob Mensching <rob@firegiant.com>2020-06-26 10:37:57 -0700
committerRob Mensching <rob@firegiant.com>2020-06-26 10:37:57 -0700
commit851a26c4af0b2da5c9cf22bc4be0ac3895cb11a8 (patch)
treeb476bb564a917f1eedd11b855df963890c9ee311 /src/wixext/Symbols
parent238d3caad2d0595c6276fdf7565d45466ce0fe72 (diff)
downloadwix-851a26c4af0b2da5c9cf22bc4be0ac3895cb11a8.tar.gz
wix-851a26c4af0b2da5c9cf22bc4be0ac3895cb11a8.tar.bz2
wix-851a26c4af0b2da5c9cf22bc4be0ac3895cb11a8.zip
The Great Tuple to Symbol File Rename (tm)
Diffstat (limited to 'src/wixext/Symbols')
-rw-r--r--src/wixext/Symbols/EventManifestSymbol.cs55
-rw-r--r--src/wixext/Symbols/FileSharePermissionsSymbol.cs63
-rw-r--r--src/wixext/Symbols/FileShareSymbol.cs71
-rw-r--r--src/wixext/Symbols/GroupSymbol.cs63
-rw-r--r--src/wixext/Symbols/PerfmonManifestSymbol.cs63
-rw-r--r--src/wixext/Symbols/PerfmonSymbol.cs63
-rw-r--r--src/wixext/Symbols/PerformanceCategorySymbol.cs71
-rw-r--r--src/wixext/Symbols/SecureObjectsSymbol.cs95
-rw-r--r--src/wixext/Symbols/ServiceConfigSymbol.cs119
-rw-r--r--src/wixext/Symbols/UserGroupSymbol.cs55
-rw-r--r--src/wixext/Symbols/UserSymbol.cs79
-rw-r--r--src/wixext/Symbols/UtilSymbolDefinitions.cs121
-rw-r--r--src/wixext/Symbols/WixCloseApplicationSymbol.cs103
-rw-r--r--src/wixext/Symbols/WixDetectSHA2SupportSymbol.cs33
-rw-r--r--src/wixext/Symbols/WixFormatFilesSymbol.cs55
-rw-r--r--src/wixext/Symbols/WixInternetShortcutSymbol.cs95
-rw-r--r--src/wixext/Symbols/WixRemoveFolderExSymbol.cs63
-rw-r--r--src/wixext/Symbols/WixRestartResourceSymbol.cs63
-rw-r--r--src/wixext/Symbols/WixTouchFileSymbol.cs63
-rw-r--r--src/wixext/Symbols/XmlConfigSymbol.cs103
-rw-r--r--src/wixext/Symbols/XmlFileSymbol.cs95
21 files changed, 1591 insertions, 0 deletions
diff --git a/src/wixext/Symbols/EventManifestSymbol.cs b/src/wixext/Symbols/EventManifestSymbol.cs
new file mode 100644
index 00000000..ccd3c899
--- /dev/null
+++ b/src/wixext/Symbols/EventManifestSymbol.cs
@@ -0,0 +1,55 @@
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.Util
4{
5 using WixToolset.Data;
6 using WixToolset.Util.Symbols;
7
8 public static partial class UtilSymbolDefinitions
9 {
10 public static readonly IntermediateSymbolDefinition EventManifest = new IntermediateSymbolDefinition(
11 UtilSymbolDefinitionType.EventManifest.ToString(),
12 new[]
13 {
14 new IntermediateFieldDefinition(nameof(EventManifestSymbolFields.ComponentRef), IntermediateFieldType.String),
15 new IntermediateFieldDefinition(nameof(EventManifestSymbolFields.File), IntermediateFieldType.String),
16 },
17 typeof(EventManifestSymbol));
18 }
19}
20
21namespace WixToolset.Util.Symbols
22{
23 using WixToolset.Data;
24
25 public enum EventManifestSymbolFields
26 {
27 ComponentRef,
28 File,
29 }
30
31 public class EventManifestSymbol : IntermediateSymbol
32 {
33 public EventManifestSymbol() : base(UtilSymbolDefinitions.EventManifest, null, null)
34 {
35 }
36
37 public EventManifestSymbol(SourceLineNumber sourceLineNumber, Identifier id = null) : base(UtilSymbolDefinitions.EventManifest, sourceLineNumber, id)
38 {
39 }
40
41 public IntermediateField this[EventManifestSymbolFields index] => this.Fields[(int)index];
42
43 public string ComponentRef
44 {
45 get => this.Fields[(int)EventManifestSymbolFields.ComponentRef].AsString();
46 set => this.Set((int)EventManifestSymbolFields.ComponentRef, value);
47 }
48
49 public string File
50 {
51 get => this.Fields[(int)EventManifestSymbolFields.File].AsString();
52 set => this.Set((int)EventManifestSymbolFields.File, value);
53 }
54 }
55} \ No newline at end of file
diff --git a/src/wixext/Symbols/FileSharePermissionsSymbol.cs b/src/wixext/Symbols/FileSharePermissionsSymbol.cs
new file mode 100644
index 00000000..3db92f22
--- /dev/null
+++ b/src/wixext/Symbols/FileSharePermissionsSymbol.cs
@@ -0,0 +1,63 @@
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.Util
4{
5 using WixToolset.Data;
6 using WixToolset.Util.Symbols;
7
8 public static partial class UtilSymbolDefinitions
9 {
10 public static readonly IntermediateSymbolDefinition FileSharePermissions = new IntermediateSymbolDefinition(
11 UtilSymbolDefinitionType.FileSharePermissions.ToString(),
12 new[]
13 {
14 new IntermediateFieldDefinition(nameof(FileSharePermissionsSymbolFields.FileShareRef), IntermediateFieldType.String),
15 new IntermediateFieldDefinition(nameof(FileSharePermissionsSymbolFields.UserRef), IntermediateFieldType.String),
16 new IntermediateFieldDefinition(nameof(FileSharePermissionsSymbolFields.Permissions), IntermediateFieldType.Number),
17 },
18 typeof(FileSharePermissionsSymbol));
19 }
20}
21
22namespace WixToolset.Util.Symbols
23{
24 using WixToolset.Data;
25
26 public enum FileSharePermissionsSymbolFields
27 {
28 FileShareRef,
29 UserRef,
30 Permissions,
31 }
32
33 public class FileSharePermissionsSymbol : IntermediateSymbol
34 {
35 public FileSharePermissionsSymbol() : base(UtilSymbolDefinitions.FileSharePermissions, null, null)
36 {
37 }
38
39 public FileSharePermissionsSymbol(SourceLineNumber sourceLineNumber, Identifier id = null) : base(UtilSymbolDefinitions.FileSharePermissions, sourceLineNumber, id)
40 {
41 }
42
43 public IntermediateField this[FileSharePermissionsSymbolFields index] => this.Fields[(int)index];
44
45 public string FileShareRef
46 {
47 get => this.Fields[(int)FileSharePermissionsSymbolFields.FileShareRef].AsString();
48 set => this.Set((int)FileSharePermissionsSymbolFields.FileShareRef, value);
49 }
50
51 public string UserRef
52 {
53 get => this.Fields[(int)FileSharePermissionsSymbolFields.UserRef].AsString();
54 set => this.Set((int)FileSharePermissionsSymbolFields.UserRef, value);
55 }
56
57 public int Permissions
58 {
59 get => this.Fields[(int)FileSharePermissionsSymbolFields.Permissions].AsNumber();
60 set => this.Set((int)FileSharePermissionsSymbolFields.Permissions, value);
61 }
62 }
63} \ No newline at end of file
diff --git a/src/wixext/Symbols/FileShareSymbol.cs b/src/wixext/Symbols/FileShareSymbol.cs
new file mode 100644
index 00000000..c956ff42
--- /dev/null
+++ b/src/wixext/Symbols/FileShareSymbol.cs
@@ -0,0 +1,71 @@
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.Util
4{
5 using WixToolset.Data;
6 using WixToolset.Util.Symbols;
7
8 public static partial class UtilSymbolDefinitions
9 {
10 public static readonly IntermediateSymbolDefinition FileShare = new IntermediateSymbolDefinition(
11 UtilSymbolDefinitionType.FileShare.ToString(),
12 new[]
13 {
14 new IntermediateFieldDefinition(nameof(FileShareSymbolFields.ShareName), IntermediateFieldType.String),
15 new IntermediateFieldDefinition(nameof(FileShareSymbolFields.ComponentRef), IntermediateFieldType.String),
16 new IntermediateFieldDefinition(nameof(FileShareSymbolFields.Description), IntermediateFieldType.String),
17 new IntermediateFieldDefinition(nameof(FileShareSymbolFields.DirectoryRef), IntermediateFieldType.String),
18 },
19 typeof(FileShareSymbol));
20 }
21}
22
23namespace WixToolset.Util.Symbols
24{
25 using WixToolset.Data;
26
27 public enum FileShareSymbolFields
28 {
29 ShareName,
30 ComponentRef,
31 Description,
32 DirectoryRef,
33 }
34
35 public class FileShareSymbol : IntermediateSymbol
36 {
37 public FileShareSymbol() : base(UtilSymbolDefinitions.FileShare, null, null)
38 {
39 }
40
41 public FileShareSymbol(SourceLineNumber sourceLineNumber, Identifier id = null) : base(UtilSymbolDefinitions.FileShare, sourceLineNumber, id)
42 {
43 }
44
45 public IntermediateField this[FileShareSymbolFields index] => this.Fields[(int)index];
46
47 public string ShareName
48 {
49 get => this.Fields[(int)FileShareSymbolFields.ShareName].AsString();
50 set => this.Set((int)FileShareSymbolFields.ShareName, value);
51 }
52
53 public string ComponentRef
54 {
55 get => this.Fields[(int)FileShareSymbolFields.ComponentRef].AsString();
56 set => this.Set((int)FileShareSymbolFields.ComponentRef, value);
57 }
58
59 public string Description
60 {
61 get => this.Fields[(int)FileShareSymbolFields.Description].AsString();
62 set => this.Set((int)FileShareSymbolFields.Description, value);
63 }
64
65 public string DirectoryRef
66 {
67 get => this.Fields[(int)FileShareSymbolFields.DirectoryRef].AsString();
68 set => this.Set((int)FileShareSymbolFields.DirectoryRef, value);
69 }
70 }
71} \ No newline at end of file
diff --git a/src/wixext/Symbols/GroupSymbol.cs b/src/wixext/Symbols/GroupSymbol.cs
new file mode 100644
index 00000000..b378db44
--- /dev/null
+++ b/src/wixext/Symbols/GroupSymbol.cs
@@ -0,0 +1,63 @@
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.Util
4{
5 using WixToolset.Data;
6 using WixToolset.Util.Symbols;
7
8 public static partial class UtilSymbolDefinitions
9 {
10 public static readonly IntermediateSymbolDefinition Group = new IntermediateSymbolDefinition(
11 UtilSymbolDefinitionType.Group.ToString(),
12 new[]
13 {
14 new IntermediateFieldDefinition(nameof(GroupSymbolFields.ComponentRef), IntermediateFieldType.String),
15 new IntermediateFieldDefinition(nameof(GroupSymbolFields.Name), IntermediateFieldType.String),
16 new IntermediateFieldDefinition(nameof(GroupSymbolFields.Domain), IntermediateFieldType.String),
17 },
18 typeof(GroupSymbol));
19 }
20}
21
22namespace WixToolset.Util.Symbols
23{
24 using WixToolset.Data;
25
26 public enum GroupSymbolFields
27 {
28 ComponentRef,
29 Name,
30 Domain,
31 }
32
33 public class GroupSymbol : IntermediateSymbol
34 {
35 public GroupSymbol() : base(UtilSymbolDefinitions.Group, null, null)
36 {
37 }
38
39 public GroupSymbol(SourceLineNumber sourceLineNumber, Identifier id = null) : base(UtilSymbolDefinitions.Group, sourceLineNumber, id)
40 {
41 }
42
43 public IntermediateField this[GroupSymbolFields index] => this.Fields[(int)index];
44
45 public string ComponentRef
46 {
47 get => this.Fields[(int)GroupSymbolFields.ComponentRef].AsString();
48 set => this.Set((int)GroupSymbolFields.ComponentRef, value);
49 }
50
51 public string Name
52 {
53 get => this.Fields[(int)GroupSymbolFields.Name].AsString();
54 set => this.Set((int)GroupSymbolFields.Name, value);
55 }
56
57 public string Domain
58 {
59 get => this.Fields[(int)GroupSymbolFields.Domain].AsString();
60 set => this.Set((int)GroupSymbolFields.Domain, value);
61 }
62 }
63} \ No newline at end of file
diff --git a/src/wixext/Symbols/PerfmonManifestSymbol.cs b/src/wixext/Symbols/PerfmonManifestSymbol.cs
new file mode 100644
index 00000000..03fef14e
--- /dev/null
+++ b/src/wixext/Symbols/PerfmonManifestSymbol.cs
@@ -0,0 +1,63 @@
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.Util
4{
5 using WixToolset.Data;
6 using WixToolset.Util.Symbols;
7
8 public static partial class UtilSymbolDefinitions
9 {
10 public static readonly IntermediateSymbolDefinition PerfmonManifest = new IntermediateSymbolDefinition(
11 UtilSymbolDefinitionType.PerfmonManifest.ToString(),
12 new[]
13 {
14 new IntermediateFieldDefinition(nameof(PerfmonManifestSymbolFields.ComponentRef), IntermediateFieldType.String),
15 new IntermediateFieldDefinition(nameof(PerfmonManifestSymbolFields.File), IntermediateFieldType.String),
16 new IntermediateFieldDefinition(nameof(PerfmonManifestSymbolFields.ResourceFileDirectory), IntermediateFieldType.String),
17 },
18 typeof(PerfmonManifestSymbol));
19 }
20}
21
22namespace WixToolset.Util.Symbols
23{
24 using WixToolset.Data;
25
26 public enum PerfmonManifestSymbolFields
27 {
28 ComponentRef,
29 File,
30 ResourceFileDirectory,
31 }
32
33 public class PerfmonManifestSymbol : IntermediateSymbol
34 {
35 public PerfmonManifestSymbol() : base(UtilSymbolDefinitions.PerfmonManifest, null, null)
36 {
37 }
38
39 public PerfmonManifestSymbol(SourceLineNumber sourceLineNumber, Identifier id = null) : base(UtilSymbolDefinitions.PerfmonManifest, sourceLineNumber, id)
40 {
41 }
42
43 public IntermediateField this[PerfmonManifestSymbolFields index] => this.Fields[(int)index];
44
45 public string ComponentRef
46 {
47 get => this.Fields[(int)PerfmonManifestSymbolFields.ComponentRef].AsString();
48 set => this.Set((int)PerfmonManifestSymbolFields.ComponentRef, value);
49 }
50
51 public string File
52 {
53 get => this.Fields[(int)PerfmonManifestSymbolFields.File].AsString();
54 set => this.Set((int)PerfmonManifestSymbolFields.File, value);
55 }
56
57 public string ResourceFileDirectory
58 {
59 get => this.Fields[(int)PerfmonManifestSymbolFields.ResourceFileDirectory].AsString();
60 set => this.Set((int)PerfmonManifestSymbolFields.ResourceFileDirectory, value);
61 }
62 }
63} \ No newline at end of file
diff --git a/src/wixext/Symbols/PerfmonSymbol.cs b/src/wixext/Symbols/PerfmonSymbol.cs
new file mode 100644
index 00000000..6784ebd1
--- /dev/null
+++ b/src/wixext/Symbols/PerfmonSymbol.cs
@@ -0,0 +1,63 @@
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.Util
4{
5 using WixToolset.Data;
6 using WixToolset.Util.Symbols;
7
8 public static partial class UtilSymbolDefinitions
9 {
10 public static readonly IntermediateSymbolDefinition Perfmon = new IntermediateSymbolDefinition(
11 UtilSymbolDefinitionType.Perfmon.ToString(),
12 new[]
13 {
14 new IntermediateFieldDefinition(nameof(PerfmonSymbolFields.ComponentRef), IntermediateFieldType.String),
15 new IntermediateFieldDefinition(nameof(PerfmonSymbolFields.File), IntermediateFieldType.String),
16 new IntermediateFieldDefinition(nameof(PerfmonSymbolFields.Name), IntermediateFieldType.String),
17 },
18 typeof(PerfmonSymbol));
19 }
20}
21
22namespace WixToolset.Util.Symbols
23{
24 using WixToolset.Data;
25
26 public enum PerfmonSymbolFields
27 {
28 ComponentRef,
29 File,
30 Name,
31 }
32
33 public class PerfmonSymbol : IntermediateSymbol
34 {
35 public PerfmonSymbol() : base(UtilSymbolDefinitions.Perfmon, null, null)
36 {
37 }
38
39 public PerfmonSymbol(SourceLineNumber sourceLineNumber, Identifier id = null) : base(UtilSymbolDefinitions.Perfmon, sourceLineNumber, id)
40 {
41 }
42
43 public IntermediateField this[PerfmonSymbolFields index] => this.Fields[(int)index];
44
45 public string ComponentRef
46 {
47 get => this.Fields[(int)PerfmonSymbolFields.ComponentRef].AsString();
48 set => this.Set((int)PerfmonSymbolFields.ComponentRef, value);
49 }
50
51 public string File
52 {
53 get => this.Fields[(int)PerfmonSymbolFields.File].AsString();
54 set => this.Set((int)PerfmonSymbolFields.File, value);
55 }
56
57 public string Name
58 {
59 get => this.Fields[(int)PerfmonSymbolFields.Name].AsString();
60 set => this.Set((int)PerfmonSymbolFields.Name, value);
61 }
62 }
63} \ No newline at end of file
diff --git a/src/wixext/Symbols/PerformanceCategorySymbol.cs b/src/wixext/Symbols/PerformanceCategorySymbol.cs
new file mode 100644
index 00000000..5ecf388c
--- /dev/null
+++ b/src/wixext/Symbols/PerformanceCategorySymbol.cs
@@ -0,0 +1,71 @@
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.Util
4{
5 using WixToolset.Data;
6 using WixToolset.Util.Symbols;
7
8 public static partial class UtilSymbolDefinitions
9 {
10 public static readonly IntermediateSymbolDefinition PerformanceCategory = new IntermediateSymbolDefinition(
11 UtilSymbolDefinitionType.PerformanceCategory.ToString(),
12 new[]
13 {
14 new IntermediateFieldDefinition(nameof(PerformanceCategorySymbolFields.ComponentRef), IntermediateFieldType.String),
15 new IntermediateFieldDefinition(nameof(PerformanceCategorySymbolFields.Name), IntermediateFieldType.String),
16 new IntermediateFieldDefinition(nameof(PerformanceCategorySymbolFields.IniData), IntermediateFieldType.String),
17 new IntermediateFieldDefinition(nameof(PerformanceCategorySymbolFields.ConstantData), IntermediateFieldType.String),
18 },
19 typeof(PerformanceCategorySymbol));
20 }
21}
22
23namespace WixToolset.Util.Symbols
24{
25 using WixToolset.Data;
26
27 public enum PerformanceCategorySymbolFields
28 {
29 ComponentRef,
30 Name,
31 IniData,
32 ConstantData,
33 }
34
35 public class PerformanceCategorySymbol : IntermediateSymbol
36 {
37 public PerformanceCategorySymbol() : base(UtilSymbolDefinitions.PerformanceCategory, null, null)
38 {
39 }
40
41 public PerformanceCategorySymbol(SourceLineNumber sourceLineNumber, Identifier id = null) : base(UtilSymbolDefinitions.PerformanceCategory, sourceLineNumber, id)
42 {
43 }
44
45 public IntermediateField this[PerformanceCategorySymbolFields index] => this.Fields[(int)index];
46
47 public string ComponentRef
48 {
49 get => this.Fields[(int)PerformanceCategorySymbolFields.ComponentRef].AsString();
50 set => this.Set((int)PerformanceCategorySymbolFields.ComponentRef, value);
51 }
52
53 public string Name
54 {
55 get => this.Fields[(int)PerformanceCategorySymbolFields.Name].AsString();
56 set => this.Set((int)PerformanceCategorySymbolFields.Name, value);
57 }
58
59 public string IniData
60 {
61 get => this.Fields[(int)PerformanceCategorySymbolFields.IniData].AsString();
62 set => this.Set((int)PerformanceCategorySymbolFields.IniData, value);
63 }
64
65 public string ConstantData
66 {
67 get => this.Fields[(int)PerformanceCategorySymbolFields.ConstantData].AsString();
68 set => this.Set((int)PerformanceCategorySymbolFields.ConstantData, value);
69 }
70 }
71} \ No newline at end of file
diff --git a/src/wixext/Symbols/SecureObjectsSymbol.cs b/src/wixext/Symbols/SecureObjectsSymbol.cs
new file mode 100644
index 00000000..b90df521
--- /dev/null
+++ b/src/wixext/Symbols/SecureObjectsSymbol.cs
@@ -0,0 +1,95 @@
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.Util
4{
5 using WixToolset.Data;
6 using WixToolset.Util.Symbols;
7
8 public static partial class UtilSymbolDefinitions
9 {
10 public static readonly IntermediateSymbolDefinition SecureObjects = new IntermediateSymbolDefinition(
11 UtilSymbolDefinitionType.SecureObjects.ToString(),
12 new[]
13 {
14 new IntermediateFieldDefinition(nameof(SecureObjectsSymbolFields.SecureObject), IntermediateFieldType.String),
15 new IntermediateFieldDefinition(nameof(SecureObjectsSymbolFields.Table), IntermediateFieldType.String),
16 new IntermediateFieldDefinition(nameof(SecureObjectsSymbolFields.Domain), IntermediateFieldType.String),
17 new IntermediateFieldDefinition(nameof(SecureObjectsSymbolFields.User), IntermediateFieldType.String),
18 new IntermediateFieldDefinition(nameof(SecureObjectsSymbolFields.Attributes), IntermediateFieldType.Number),
19 new IntermediateFieldDefinition(nameof(SecureObjectsSymbolFields.Permission), IntermediateFieldType.Number),
20 new IntermediateFieldDefinition(nameof(SecureObjectsSymbolFields.ComponentRef), IntermediateFieldType.String),
21 },
22 typeof(SecureObjectsSymbol));
23 }
24}
25
26namespace WixToolset.Util.Symbols
27{
28 using WixToolset.Data;
29
30 public enum SecureObjectsSymbolFields
31 {
32 SecureObject,
33 Table,
34 Domain,
35 User,
36 Attributes,
37 Permission,
38 ComponentRef,
39 }
40
41 public class SecureObjectsSymbol : IntermediateSymbol
42 {
43 public SecureObjectsSymbol() : base(UtilSymbolDefinitions.SecureObjects, null, null)
44 {
45 }
46
47 public SecureObjectsSymbol(SourceLineNumber sourceLineNumber, Identifier id = null) : base(UtilSymbolDefinitions.SecureObjects, sourceLineNumber, id)
48 {
49 }
50
51 public IntermediateField this[SecureObjectsSymbolFields index] => this.Fields[(int)index];
52
53 public string SecureObject
54 {
55 get => this.Fields[(int)SecureObjectsSymbolFields.SecureObject].AsString();
56 set => this.Set((int)SecureObjectsSymbolFields.SecureObject, value);
57 }
58
59 public string Table
60 {
61 get => this.Fields[(int)SecureObjectsSymbolFields.Table].AsString();
62 set => this.Set((int)SecureObjectsSymbolFields.Table, value);
63 }
64
65 public string Domain
66 {
67 get => this.Fields[(int)SecureObjectsSymbolFields.Domain].AsString();
68 set => this.Set((int)SecureObjectsSymbolFields.Domain, value);
69 }
70
71 public string User
72 {
73 get => this.Fields[(int)SecureObjectsSymbolFields.User].AsString();
74 set => this.Set((int)SecureObjectsSymbolFields.User, value);
75 }
76
77 public int Attributes
78 {
79 get => this.Fields[(int)SecureObjectsSymbolFields.Attributes].AsNumber();
80 set => this.Set((int)SecureObjectsSymbolFields.Attributes, value);
81 }
82
83 public int? Permission
84 {
85 get => this.Fields[(int)SecureObjectsSymbolFields.Permission].AsNullableNumber();
86 set => this.Set((int)SecureObjectsSymbolFields.Permission, value);
87 }
88
89 public string ComponentRef
90 {
91 get => this.Fields[(int)SecureObjectsSymbolFields.ComponentRef].AsString();
92 set => this.Set((int)SecureObjectsSymbolFields.ComponentRef, value);
93 }
94 }
95} \ No newline at end of file
diff --git a/src/wixext/Symbols/ServiceConfigSymbol.cs b/src/wixext/Symbols/ServiceConfigSymbol.cs
new file mode 100644
index 00000000..3a877f9b
--- /dev/null
+++ b/src/wixext/Symbols/ServiceConfigSymbol.cs
@@ -0,0 +1,119 @@
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.Util
4{
5 using WixToolset.Data;
6 using WixToolset.Util.Symbols;
7
8 public static partial class UtilSymbolDefinitions
9 {
10 public static readonly IntermediateSymbolDefinition ServiceConfig = new IntermediateSymbolDefinition(
11 UtilSymbolDefinitionType.ServiceConfig.ToString(),
12 new[]
13 {
14 new IntermediateFieldDefinition(nameof(ServiceConfigSymbolFields.ServiceName), IntermediateFieldType.String),
15 new IntermediateFieldDefinition(nameof(ServiceConfigSymbolFields.ComponentRef), IntermediateFieldType.String),
16 new IntermediateFieldDefinition(nameof(ServiceConfigSymbolFields.NewService), IntermediateFieldType.Number),
17 new IntermediateFieldDefinition(nameof(ServiceConfigSymbolFields.FirstFailureActionType), IntermediateFieldType.String),
18 new IntermediateFieldDefinition(nameof(ServiceConfigSymbolFields.SecondFailureActionType), IntermediateFieldType.String),
19 new IntermediateFieldDefinition(nameof(ServiceConfigSymbolFields.ThirdFailureActionType), IntermediateFieldType.String),
20 new IntermediateFieldDefinition(nameof(ServiceConfigSymbolFields.ResetPeriodInDays), IntermediateFieldType.Number),
21 new IntermediateFieldDefinition(nameof(ServiceConfigSymbolFields.RestartServiceDelayInSeconds), IntermediateFieldType.Number),
22 new IntermediateFieldDefinition(nameof(ServiceConfigSymbolFields.ProgramCommandLine), IntermediateFieldType.String),
23 new IntermediateFieldDefinition(nameof(ServiceConfigSymbolFields.RebootMessage), IntermediateFieldType.String),
24 },
25 typeof(ServiceConfigSymbol));
26 }
27}
28
29namespace WixToolset.Util.Symbols
30{
31 using WixToolset.Data;
32
33 public enum ServiceConfigSymbolFields
34 {
35 ServiceName,
36 ComponentRef,
37 NewService,
38 FirstFailureActionType,
39 SecondFailureActionType,
40 ThirdFailureActionType,
41 ResetPeriodInDays,
42 RestartServiceDelayInSeconds,
43 ProgramCommandLine,
44 RebootMessage,
45 }
46
47 public class ServiceConfigSymbol : IntermediateSymbol
48 {
49 public ServiceConfigSymbol() : base(UtilSymbolDefinitions.ServiceConfig, null, null)
50 {
51 }
52
53 public ServiceConfigSymbol(SourceLineNumber sourceLineNumber, Identifier id = null) : base(UtilSymbolDefinitions.ServiceConfig, sourceLineNumber, id)
54 {
55 }
56
57 public IntermediateField this[ServiceConfigSymbolFields index] => this.Fields[(int)index];
58
59 public string ServiceName
60 {
61 get => this.Fields[(int)ServiceConfigSymbolFields.ServiceName].AsString();
62 set => this.Set((int)ServiceConfigSymbolFields.ServiceName, value);
63 }
64
65 public string ComponentRef
66 {
67 get => this.Fields[(int)ServiceConfigSymbolFields.ComponentRef].AsString();
68 set => this.Set((int)ServiceConfigSymbolFields.ComponentRef, value);
69 }
70
71 public int NewService
72 {
73 get => this.Fields[(int)ServiceConfigSymbolFields.NewService].AsNumber();
74 set => this.Set((int)ServiceConfigSymbolFields.NewService, value);
75 }
76
77 public string FirstFailureActionType
78 {
79 get => this.Fields[(int)ServiceConfigSymbolFields.FirstFailureActionType].AsString();
80 set => this.Set((int)ServiceConfigSymbolFields.FirstFailureActionType, value);
81 }
82
83 public string SecondFailureActionType
84 {
85 get => this.Fields[(int)ServiceConfigSymbolFields.SecondFailureActionType].AsString();
86 set => this.Set((int)ServiceConfigSymbolFields.SecondFailureActionType, value);
87 }
88
89 public string ThirdFailureActionType
90 {
91 get => this.Fields[(int)ServiceConfigSymbolFields.ThirdFailureActionType].AsString();
92 set => this.Set((int)ServiceConfigSymbolFields.ThirdFailureActionType, value);
93 }
94
95 public int? ResetPeriodInDays
96 {
97 get => this.Fields[(int)ServiceConfigSymbolFields.ResetPeriodInDays].AsNullableNumber();
98 set => this.Set((int)ServiceConfigSymbolFields.ResetPeriodInDays, value);
99 }
100
101 public int? RestartServiceDelayInSeconds
102 {
103 get => this.Fields[(int)ServiceConfigSymbolFields.RestartServiceDelayInSeconds].AsNullableNumber();
104 set => this.Set((int)ServiceConfigSymbolFields.RestartServiceDelayInSeconds, value);
105 }
106
107 public string ProgramCommandLine
108 {
109 get => this.Fields[(int)ServiceConfigSymbolFields.ProgramCommandLine].AsString();
110 set => this.Set((int)ServiceConfigSymbolFields.ProgramCommandLine, value);
111 }
112
113 public string RebootMessage
114 {
115 get => this.Fields[(int)ServiceConfigSymbolFields.RebootMessage].AsString();
116 set => this.Set((int)ServiceConfigSymbolFields.RebootMessage, value);
117 }
118 }
119} \ No newline at end of file
diff --git a/src/wixext/Symbols/UserGroupSymbol.cs b/src/wixext/Symbols/UserGroupSymbol.cs
new file mode 100644
index 00000000..c8f3998e
--- /dev/null
+++ b/src/wixext/Symbols/UserGroupSymbol.cs
@@ -0,0 +1,55 @@
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.Util
4{
5 using WixToolset.Data;
6 using WixToolset.Util.Symbols;
7
8 public static partial class UtilSymbolDefinitions
9 {
10 public static readonly IntermediateSymbolDefinition UserGroup = new IntermediateSymbolDefinition(
11 UtilSymbolDefinitionType.UserGroup.ToString(),
12 new[]
13 {
14 new IntermediateFieldDefinition(nameof(UserGroupSymbolFields.UserRef), IntermediateFieldType.String),
15 new IntermediateFieldDefinition(nameof(UserGroupSymbolFields.GroupRef), IntermediateFieldType.String),
16 },
17 typeof(UserGroupSymbol));
18 }
19}
20
21namespace WixToolset.Util.Symbols
22{
23 using WixToolset.Data;
24
25 public enum UserGroupSymbolFields
26 {
27 UserRef,
28 GroupRef,
29 }
30
31 public class UserGroupSymbol : IntermediateSymbol
32 {
33 public UserGroupSymbol() : base(UtilSymbolDefinitions.UserGroup, null, null)
34 {
35 }
36
37 public UserGroupSymbol(SourceLineNumber sourceLineNumber, Identifier id = null) : base(UtilSymbolDefinitions.UserGroup, sourceLineNumber, id)
38 {
39 }
40
41 public IntermediateField this[UserGroupSymbolFields index] => this.Fields[(int)index];
42
43 public string UserRef
44 {
45 get => this.Fields[(int)UserGroupSymbolFields.UserRef].AsString();
46 set => this.Set((int)UserGroupSymbolFields.UserRef, value);
47 }
48
49 public string GroupRef
50 {
51 get => this.Fields[(int)UserGroupSymbolFields.GroupRef].AsString();
52 set => this.Set((int)UserGroupSymbolFields.GroupRef, value);
53 }
54 }
55} \ No newline at end of file
diff --git a/src/wixext/Symbols/UserSymbol.cs b/src/wixext/Symbols/UserSymbol.cs
new file mode 100644
index 00000000..5f00064b
--- /dev/null
+++ b/src/wixext/Symbols/UserSymbol.cs
@@ -0,0 +1,79 @@
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.Util
4{
5 using WixToolset.Data;
6 using WixToolset.Util.Symbols;
7
8 public static partial class UtilSymbolDefinitions
9 {
10 public static readonly IntermediateSymbolDefinition User = new IntermediateSymbolDefinition(
11 UtilSymbolDefinitionType.User.ToString(),
12 new[]
13 {
14 new IntermediateFieldDefinition(nameof(UserSymbolFields.ComponentRef), IntermediateFieldType.String),
15 new IntermediateFieldDefinition(nameof(UserSymbolFields.Name), IntermediateFieldType.String),
16 new IntermediateFieldDefinition(nameof(UserSymbolFields.Domain), IntermediateFieldType.String),
17 new IntermediateFieldDefinition(nameof(UserSymbolFields.Password), IntermediateFieldType.String),
18 new IntermediateFieldDefinition(nameof(UserSymbolFields.Attributes), IntermediateFieldType.Number),
19 },
20 typeof(UserSymbol));
21 }
22}
23
24namespace WixToolset.Util.Symbols
25{
26 using WixToolset.Data;
27
28 public enum UserSymbolFields
29 {
30 ComponentRef,
31 Name,
32 Domain,
33 Password,
34 Attributes,
35 }
36
37 public class UserSymbol : IntermediateSymbol
38 {
39 public UserSymbol() : base(UtilSymbolDefinitions.User, null, null)
40 {
41 }
42
43 public UserSymbol(SourceLineNumber sourceLineNumber, Identifier id = null) : base(UtilSymbolDefinitions.User, sourceLineNumber, id)
44 {
45 }
46
47 public IntermediateField this[UserSymbolFields index] => this.Fields[(int)index];
48
49 public string ComponentRef
50 {
51 get => this.Fields[(int)UserSymbolFields.ComponentRef].AsString();
52 set => this.Set((int)UserSymbolFields.ComponentRef, value);
53 }
54
55 public string Name
56 {
57 get => this.Fields[(int)UserSymbolFields.Name].AsString();
58 set => this.Set((int)UserSymbolFields.Name, value);
59 }
60
61 public string Domain
62 {
63 get => this.Fields[(int)UserSymbolFields.Domain].AsString();
64 set => this.Set((int)UserSymbolFields.Domain, value);
65 }
66
67 public string Password
68 {
69 get => this.Fields[(int)UserSymbolFields.Password].AsString();
70 set => this.Set((int)UserSymbolFields.Password, value);
71 }
72
73 public int Attributes
74 {
75 get => this.Fields[(int)UserSymbolFields.Attributes].AsNumber();
76 set => this.Set((int)UserSymbolFields.Attributes, value);
77 }
78 }
79} \ No newline at end of file
diff --git a/src/wixext/Symbols/UtilSymbolDefinitions.cs b/src/wixext/Symbols/UtilSymbolDefinitions.cs
new file mode 100644
index 00000000..ae9c4c81
--- /dev/null
+++ b/src/wixext/Symbols/UtilSymbolDefinitions.cs
@@ -0,0 +1,121 @@
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.Util
4{
5 using System;
6 using WixToolset.Data;
7 using WixToolset.Data.Burn;
8
9 public enum UtilSymbolDefinitionType
10 {
11 EventManifest,
12 FileShare,
13 FileSharePermissions,
14 Group,
15 Perfmon,
16 PerfmonManifest,
17 PerformanceCategory,
18 SecureObjects,
19 ServiceConfig,
20 User,
21 UserGroup,
22 WixCloseApplication,
23 WixDetectSHA2Support,
24 WixFormatFiles,
25 WixInternetShortcut,
26 WixRemoveFolderEx,
27 WixRestartResource,
28 WixTouchFile,
29 XmlConfig,
30 XmlFile,
31 }
32
33 public static partial class UtilSymbolDefinitions
34 {
35 public static readonly Version Version = new Version("4.0.0");
36
37 public static IntermediateSymbolDefinition ByName(string name)
38 {
39 if (!Enum.TryParse(name, out UtilSymbolDefinitionType type))
40 {
41 return null;
42 }
43
44 return ByType(type);
45 }
46
47 public static IntermediateSymbolDefinition ByType(UtilSymbolDefinitionType type)
48 {
49 switch (type)
50 {
51 case UtilSymbolDefinitionType.EventManifest:
52 return UtilSymbolDefinitions.EventManifest;
53
54 case UtilSymbolDefinitionType.FileShare:
55 return UtilSymbolDefinitions.FileShare;
56
57 case UtilSymbolDefinitionType.FileSharePermissions:
58 return UtilSymbolDefinitions.FileSharePermissions;
59
60 case UtilSymbolDefinitionType.Group:
61 return UtilSymbolDefinitions.Group;
62
63 case UtilSymbolDefinitionType.Perfmon:
64 return UtilSymbolDefinitions.Perfmon;
65
66 case UtilSymbolDefinitionType.PerfmonManifest:
67 return UtilSymbolDefinitions.PerfmonManifest;
68
69 case UtilSymbolDefinitionType.PerformanceCategory:
70 return UtilSymbolDefinitions.PerformanceCategory;
71
72 case UtilSymbolDefinitionType.SecureObjects:
73 return UtilSymbolDefinitions.SecureObjects;
74
75 case UtilSymbolDefinitionType.ServiceConfig:
76 return UtilSymbolDefinitions.ServiceConfig;
77
78 case UtilSymbolDefinitionType.User:
79 return UtilSymbolDefinitions.User;
80
81 case UtilSymbolDefinitionType.UserGroup:
82 return UtilSymbolDefinitions.UserGroup;
83
84 case UtilSymbolDefinitionType.WixCloseApplication:
85 return UtilSymbolDefinitions.WixCloseApplication;
86
87 case UtilSymbolDefinitionType.WixDetectSHA2Support:
88 return UtilSymbolDefinitions.WixDetectSHA2Support;
89
90 case UtilSymbolDefinitionType.WixFormatFiles:
91 return UtilSymbolDefinitions.WixFormatFiles;
92
93 case UtilSymbolDefinitionType.WixInternetShortcut:
94 return UtilSymbolDefinitions.WixInternetShortcut;
95
96 case UtilSymbolDefinitionType.WixRemoveFolderEx:
97 return UtilSymbolDefinitions.WixRemoveFolderEx;
98
99 case UtilSymbolDefinitionType.WixRestartResource:
100 return UtilSymbolDefinitions.WixRestartResource;
101
102 case UtilSymbolDefinitionType.WixTouchFile:
103 return UtilSymbolDefinitions.WixTouchFile;
104
105 case UtilSymbolDefinitionType.XmlConfig:
106 return UtilSymbolDefinitions.XmlConfig;
107
108 case UtilSymbolDefinitionType.XmlFile:
109 return UtilSymbolDefinitions.XmlFile;
110
111 default:
112 throw new ArgumentOutOfRangeException(nameof(type));
113 }
114 }
115
116 static UtilSymbolDefinitions()
117 {
118 WixDetectSHA2Support.AddTag(BurnConstants.BundleExtensionSearchSymbolDefinitionTag);
119 }
120 }
121}
diff --git a/src/wixext/Symbols/WixCloseApplicationSymbol.cs b/src/wixext/Symbols/WixCloseApplicationSymbol.cs
new file mode 100644
index 00000000..0738e3e4
--- /dev/null
+++ b/src/wixext/Symbols/WixCloseApplicationSymbol.cs
@@ -0,0 +1,103 @@
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.Util
4{
5 using WixToolset.Data;
6 using WixToolset.Util.Symbols;
7
8 public static partial class UtilSymbolDefinitions
9 {
10 public static readonly IntermediateSymbolDefinition WixCloseApplication = new IntermediateSymbolDefinition(
11 UtilSymbolDefinitionType.WixCloseApplication.ToString(),
12 new[]
13 {
14 new IntermediateFieldDefinition(nameof(WixCloseApplicationSymbolFields.Target), IntermediateFieldType.String),
15 new IntermediateFieldDefinition(nameof(WixCloseApplicationSymbolFields.Description), IntermediateFieldType.String),
16 new IntermediateFieldDefinition(nameof(WixCloseApplicationSymbolFields.Condition), IntermediateFieldType.String),
17 new IntermediateFieldDefinition(nameof(WixCloseApplicationSymbolFields.Attributes), IntermediateFieldType.Number),
18 new IntermediateFieldDefinition(nameof(WixCloseApplicationSymbolFields.Sequence), IntermediateFieldType.Number),
19 new IntermediateFieldDefinition(nameof(WixCloseApplicationSymbolFields.Property), IntermediateFieldType.String),
20 new IntermediateFieldDefinition(nameof(WixCloseApplicationSymbolFields.TerminateExitCode), IntermediateFieldType.Number),
21 new IntermediateFieldDefinition(nameof(WixCloseApplicationSymbolFields.Timeout), IntermediateFieldType.Number),
22 },
23 typeof(WixCloseApplicationSymbol));
24 }
25}
26
27namespace WixToolset.Util.Symbols
28{
29 using WixToolset.Data;
30
31 public enum WixCloseApplicationSymbolFields
32 {
33 Target,
34 Description,
35 Condition,
36 Attributes,
37 Sequence,
38 Property,
39 TerminateExitCode,
40 Timeout,
41 }
42
43 public class WixCloseApplicationSymbol : IntermediateSymbol
44 {
45 public WixCloseApplicationSymbol() : base(UtilSymbolDefinitions.WixCloseApplication, null, null)
46 {
47 }
48
49 public WixCloseApplicationSymbol(SourceLineNumber sourceLineNumber, Identifier id = null) : base(UtilSymbolDefinitions.WixCloseApplication, sourceLineNumber, id)
50 {
51 }
52
53 public IntermediateField this[WixCloseApplicationSymbolFields index] => this.Fields[(int)index];
54
55 public string Target
56 {
57 get => this.Fields[(int)WixCloseApplicationSymbolFields.Target].AsString();
58 set => this.Set((int)WixCloseApplicationSymbolFields.Target, value);
59 }
60
61 public string Description
62 {
63 get => this.Fields[(int)WixCloseApplicationSymbolFields.Description].AsString();
64 set => this.Set((int)WixCloseApplicationSymbolFields.Description, value);
65 }
66
67 public string Condition
68 {
69 get => this.Fields[(int)WixCloseApplicationSymbolFields.Condition].AsString();
70 set => this.Set((int)WixCloseApplicationSymbolFields.Condition, value);
71 }
72
73 public int Attributes
74 {
75 get => this.Fields[(int)WixCloseApplicationSymbolFields.Attributes].AsNumber();
76 set => this.Set((int)WixCloseApplicationSymbolFields.Attributes, value);
77 }
78
79 public int? Sequence
80 {
81 get => this.Fields[(int)WixCloseApplicationSymbolFields.Sequence].AsNullableNumber();
82 set => this.Set((int)WixCloseApplicationSymbolFields.Sequence, value);
83 }
84
85 public string Property
86 {
87 get => this.Fields[(int)WixCloseApplicationSymbolFields.Property].AsString();
88 set => this.Set((int)WixCloseApplicationSymbolFields.Property, value);
89 }
90
91 public int? TerminateExitCode
92 {
93 get => this.Fields[(int)WixCloseApplicationSymbolFields.TerminateExitCode].AsNullableNumber();
94 set => this.Set((int)WixCloseApplicationSymbolFields.TerminateExitCode, value);
95 }
96
97 public int? Timeout
98 {
99 get => this.Fields[(int)WixCloseApplicationSymbolFields.Timeout].AsNullableNumber();
100 set => this.Set((int)WixCloseApplicationSymbolFields.Timeout, value);
101 }
102 }
103} \ No newline at end of file
diff --git a/src/wixext/Symbols/WixDetectSHA2SupportSymbol.cs b/src/wixext/Symbols/WixDetectSHA2SupportSymbol.cs
new file mode 100644
index 00000000..b518ba3b
--- /dev/null
+++ b/src/wixext/Symbols/WixDetectSHA2SupportSymbol.cs
@@ -0,0 +1,33 @@
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.Util
4{
5 using WixToolset.Data;
6 using WixToolset.Util.Symbols;
7
8 public static partial class UtilSymbolDefinitions
9 {
10 public static readonly IntermediateSymbolDefinition WixDetectSHA2Support = new IntermediateSymbolDefinition(
11 UtilSymbolDefinitionType.WixDetectSHA2Support.ToString(),
12 new IntermediateFieldDefinition[0],
13 typeof(WixDetectSHA2SupportSymbol));
14 }
15}
16
17namespace WixToolset.Util.Symbols
18{
19 using WixToolset.Data;
20
21 public class WixDetectSHA2SupportSymbol : IntermediateSymbol
22 {
23 public WixDetectSHA2SupportSymbol() : base(UtilSymbolDefinitions.WixDetectSHA2Support, null, null)
24 {
25 }
26
27 public WixDetectSHA2SupportSymbol(SourceLineNumber sourceLineNumber, Identifier id = null) : base(UtilSymbolDefinitions.WixDetectSHA2Support, sourceLineNumber, id)
28 {
29 }
30
31 public IntermediateField this[GroupSymbolFields index] => this.Fields[(int)index];
32 }
33}
diff --git a/src/wixext/Symbols/WixFormatFilesSymbol.cs b/src/wixext/Symbols/WixFormatFilesSymbol.cs
new file mode 100644
index 00000000..38a9b8ff
--- /dev/null
+++ b/src/wixext/Symbols/WixFormatFilesSymbol.cs
@@ -0,0 +1,55 @@
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.Util
4{
5 using WixToolset.Data;
6 using WixToolset.Util.Symbols;
7
8 public static partial class UtilSymbolDefinitions
9 {
10 public static readonly IntermediateSymbolDefinition WixFormatFiles = new IntermediateSymbolDefinition(
11 UtilSymbolDefinitionType.WixFormatFiles.ToString(),
12 new[]
13 {
14 new IntermediateFieldDefinition(nameof(WixFormatFilesSymbolFields.BinaryRef), IntermediateFieldType.String),
15 new IntermediateFieldDefinition(nameof(WixFormatFilesSymbolFields.FileRef), IntermediateFieldType.String),
16 },
17 typeof(WixFormatFilesSymbol));
18 }
19}
20
21namespace WixToolset.Util.Symbols
22{
23 using WixToolset.Data;
24
25 public enum WixFormatFilesSymbolFields
26 {
27 BinaryRef,
28 FileRef,
29 }
30
31 public class WixFormatFilesSymbol : IntermediateSymbol
32 {
33 public WixFormatFilesSymbol() : base(UtilSymbolDefinitions.WixFormatFiles, null, null)
34 {
35 }
36
37 public WixFormatFilesSymbol(SourceLineNumber sourceLineNumber, Identifier id = null) : base(UtilSymbolDefinitions.WixFormatFiles, sourceLineNumber, id)
38 {
39 }
40
41 public IntermediateField this[WixFormatFilesSymbolFields index] => this.Fields[(int)index];
42
43 public string BinaryRef
44 {
45 get => this.Fields[(int)WixFormatFilesSymbolFields.BinaryRef].AsString();
46 set => this.Set((int)WixFormatFilesSymbolFields.BinaryRef, value);
47 }
48
49 public string FileRef
50 {
51 get => this.Fields[(int)WixFormatFilesSymbolFields.FileRef].AsString();
52 set => this.Set((int)WixFormatFilesSymbolFields.FileRef, value);
53 }
54 }
55} \ No newline at end of file
diff --git a/src/wixext/Symbols/WixInternetShortcutSymbol.cs b/src/wixext/Symbols/WixInternetShortcutSymbol.cs
new file mode 100644
index 00000000..e8265e02
--- /dev/null
+++ b/src/wixext/Symbols/WixInternetShortcutSymbol.cs
@@ -0,0 +1,95 @@
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.Util
4{
5 using WixToolset.Data;
6 using WixToolset.Util.Symbols;
7
8 public static partial class UtilSymbolDefinitions
9 {
10 public static readonly IntermediateSymbolDefinition WixInternetShortcut = new IntermediateSymbolDefinition(
11 UtilSymbolDefinitionType.WixInternetShortcut.ToString(),
12 new[]
13 {
14 new IntermediateFieldDefinition(nameof(WixInternetShortcutSymbolFields.ComponentRef), IntermediateFieldType.String),
15 new IntermediateFieldDefinition(nameof(WixInternetShortcutSymbolFields.DirectoryRef), IntermediateFieldType.String),
16 new IntermediateFieldDefinition(nameof(WixInternetShortcutSymbolFields.Name), IntermediateFieldType.String),
17 new IntermediateFieldDefinition(nameof(WixInternetShortcutSymbolFields.Target), IntermediateFieldType.String),
18 new IntermediateFieldDefinition(nameof(WixInternetShortcutSymbolFields.Attributes), IntermediateFieldType.Number),
19 new IntermediateFieldDefinition(nameof(WixInternetShortcutSymbolFields.IconFile), IntermediateFieldType.String),
20 new IntermediateFieldDefinition(nameof(WixInternetShortcutSymbolFields.IconIndex), IntermediateFieldType.Number),
21 },
22 typeof(WixInternetShortcutSymbol));
23 }
24}
25
26namespace WixToolset.Util.Symbols
27{
28 using WixToolset.Data;
29
30 public enum WixInternetShortcutSymbolFields
31 {
32 ComponentRef,
33 DirectoryRef,
34 Name,
35 Target,
36 Attributes,
37 IconFile,
38 IconIndex,
39 }
40
41 public class WixInternetShortcutSymbol : IntermediateSymbol
42 {
43 public WixInternetShortcutSymbol() : base(UtilSymbolDefinitions.WixInternetShortcut, null, null)
44 {
45 }
46
47 public WixInternetShortcutSymbol(SourceLineNumber sourceLineNumber, Identifier id = null) : base(UtilSymbolDefinitions.WixInternetShortcut, sourceLineNumber, id)
48 {
49 }
50
51 public IntermediateField this[WixInternetShortcutSymbolFields index] => this.Fields[(int)index];
52
53 public string ComponentRef
54 {
55 get => this.Fields[(int)WixInternetShortcutSymbolFields.ComponentRef].AsString();
56 set => this.Set((int)WixInternetShortcutSymbolFields.ComponentRef, value);
57 }
58
59 public string DirectoryRef
60 {
61 get => this.Fields[(int)WixInternetShortcutSymbolFields.DirectoryRef].AsString();
62 set => this.Set((int)WixInternetShortcutSymbolFields.DirectoryRef, value);
63 }
64
65 public string Name
66 {
67 get => this.Fields[(int)WixInternetShortcutSymbolFields.Name].AsString();
68 set => this.Set((int)WixInternetShortcutSymbolFields.Name, value);
69 }
70
71 public string Target
72 {
73 get => this.Fields[(int)WixInternetShortcutSymbolFields.Target].AsString();
74 set => this.Set((int)WixInternetShortcutSymbolFields.Target, value);
75 }
76
77 public int Attributes
78 {
79 get => this.Fields[(int)WixInternetShortcutSymbolFields.Attributes].AsNumber();
80 set => this.Set((int)WixInternetShortcutSymbolFields.Attributes, value);
81 }
82
83 public string IconFile
84 {
85 get => this.Fields[(int)WixInternetShortcutSymbolFields.IconFile].AsString();
86 set => this.Set((int)WixInternetShortcutSymbolFields.IconFile, value);
87 }
88
89 public int? IconIndex
90 {
91 get => this.Fields[(int)WixInternetShortcutSymbolFields.IconIndex].AsNullableNumber();
92 set => this.Set((int)WixInternetShortcutSymbolFields.IconIndex, value);
93 }
94 }
95} \ No newline at end of file
diff --git a/src/wixext/Symbols/WixRemoveFolderExSymbol.cs b/src/wixext/Symbols/WixRemoveFolderExSymbol.cs
new file mode 100644
index 00000000..0c50ab8e
--- /dev/null
+++ b/src/wixext/Symbols/WixRemoveFolderExSymbol.cs
@@ -0,0 +1,63 @@
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.Util
4{
5 using WixToolset.Data;
6 using WixToolset.Util.Symbols;
7
8 public static partial class UtilSymbolDefinitions
9 {
10 public static readonly IntermediateSymbolDefinition WixRemoveFolderEx = new IntermediateSymbolDefinition(
11 UtilSymbolDefinitionType.WixRemoveFolderEx.ToString(),
12 new[]
13 {
14 new IntermediateFieldDefinition(nameof(WixRemoveFolderExSymbolFields.ComponentRef), IntermediateFieldType.String),
15 new IntermediateFieldDefinition(nameof(WixRemoveFolderExSymbolFields.Property), IntermediateFieldType.String),
16 new IntermediateFieldDefinition(nameof(WixRemoveFolderExSymbolFields.InstallMode), IntermediateFieldType.Number),
17 },
18 typeof(WixRemoveFolderExSymbol));
19 }
20}
21
22namespace WixToolset.Util.Symbols
23{
24 using WixToolset.Data;
25
26 public enum WixRemoveFolderExSymbolFields
27 {
28 ComponentRef,
29 Property,
30 InstallMode,
31 }
32
33 public class WixRemoveFolderExSymbol : IntermediateSymbol
34 {
35 public WixRemoveFolderExSymbol() : base(UtilSymbolDefinitions.WixRemoveFolderEx, null, null)
36 {
37 }
38
39 public WixRemoveFolderExSymbol(SourceLineNumber sourceLineNumber, Identifier id = null) : base(UtilSymbolDefinitions.WixRemoveFolderEx, sourceLineNumber, id)
40 {
41 }
42
43 public IntermediateField this[WixRemoveFolderExSymbolFields index] => this.Fields[(int)index];
44
45 public string ComponentRef
46 {
47 get => this.Fields[(int)WixRemoveFolderExSymbolFields.ComponentRef].AsString();
48 set => this.Set((int)WixRemoveFolderExSymbolFields.ComponentRef, value);
49 }
50
51 public string Property
52 {
53 get => this.Fields[(int)WixRemoveFolderExSymbolFields.Property].AsString();
54 set => this.Set((int)WixRemoveFolderExSymbolFields.Property, value);
55 }
56
57 public int InstallMode
58 {
59 get => this.Fields[(int)WixRemoveFolderExSymbolFields.InstallMode].AsNumber();
60 set => this.Set((int)WixRemoveFolderExSymbolFields.InstallMode, value);
61 }
62 }
63} \ No newline at end of file
diff --git a/src/wixext/Symbols/WixRestartResourceSymbol.cs b/src/wixext/Symbols/WixRestartResourceSymbol.cs
new file mode 100644
index 00000000..7f76f1b8
--- /dev/null
+++ b/src/wixext/Symbols/WixRestartResourceSymbol.cs
@@ -0,0 +1,63 @@
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.Util
4{
5 using WixToolset.Data;
6 using WixToolset.Util.Symbols;
7
8 public static partial class UtilSymbolDefinitions
9 {
10 public static readonly IntermediateSymbolDefinition WixRestartResource = new IntermediateSymbolDefinition(
11 UtilSymbolDefinitionType.WixRestartResource.ToString(),
12 new[]
13 {
14 new IntermediateFieldDefinition(nameof(WixRestartResourceSymbolFields.ComponentRef), IntermediateFieldType.String),
15 new IntermediateFieldDefinition(nameof(WixRestartResourceSymbolFields.Resource), IntermediateFieldType.String),
16 new IntermediateFieldDefinition(nameof(WixRestartResourceSymbolFields.Attributes), IntermediateFieldType.Number),
17 },
18 typeof(WixRestartResourceSymbol));
19 }
20}
21
22namespace WixToolset.Util.Symbols
23{
24 using WixToolset.Data;
25
26 public enum WixRestartResourceSymbolFields
27 {
28 ComponentRef,
29 Resource,
30 Attributes,
31 }
32
33 public class WixRestartResourceSymbol : IntermediateSymbol
34 {
35 public WixRestartResourceSymbol() : base(UtilSymbolDefinitions.WixRestartResource, null, null)
36 {
37 }
38
39 public WixRestartResourceSymbol(SourceLineNumber sourceLineNumber, Identifier id = null) : base(UtilSymbolDefinitions.WixRestartResource, sourceLineNumber, id)
40 {
41 }
42
43 public IntermediateField this[WixRestartResourceSymbolFields index] => this.Fields[(int)index];
44
45 public string ComponentRef
46 {
47 get => this.Fields[(int)WixRestartResourceSymbolFields.ComponentRef].AsString();
48 set => this.Set((int)WixRestartResourceSymbolFields.ComponentRef, value);
49 }
50
51 public string Resource
52 {
53 get => this.Fields[(int)WixRestartResourceSymbolFields.Resource].AsString();
54 set => this.Set((int)WixRestartResourceSymbolFields.Resource, value);
55 }
56
57 public int Attributes
58 {
59 get => this.Fields[(int)WixRestartResourceSymbolFields.Attributes].AsNumber();
60 set => this.Set((int)WixRestartResourceSymbolFields.Attributes, value);
61 }
62 }
63} \ No newline at end of file
diff --git a/src/wixext/Symbols/WixTouchFileSymbol.cs b/src/wixext/Symbols/WixTouchFileSymbol.cs
new file mode 100644
index 00000000..447c21ba
--- /dev/null
+++ b/src/wixext/Symbols/WixTouchFileSymbol.cs
@@ -0,0 +1,63 @@
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.Util
4{
5 using WixToolset.Data;
6 using WixToolset.Util.Symbols;
7
8 public static partial class UtilSymbolDefinitions
9 {
10 public static readonly IntermediateSymbolDefinition WixTouchFile = new IntermediateSymbolDefinition(
11 UtilSymbolDefinitionType.WixTouchFile.ToString(),
12 new[]
13 {
14 new IntermediateFieldDefinition(nameof(WixTouchFileSymbolFields.ComponentRef), IntermediateFieldType.String),
15 new IntermediateFieldDefinition(nameof(WixTouchFileSymbolFields.Path), IntermediateFieldType.String),
16 new IntermediateFieldDefinition(nameof(WixTouchFileSymbolFields.Attributes), IntermediateFieldType.Number),
17 },
18 typeof(WixTouchFileSymbol));
19 }
20}
21
22namespace WixToolset.Util.Symbols
23{
24 using WixToolset.Data;
25
26 public enum WixTouchFileSymbolFields
27 {
28 ComponentRef,
29 Path,
30 Attributes,
31 }
32
33 public class WixTouchFileSymbol : IntermediateSymbol
34 {
35 public WixTouchFileSymbol() : base(UtilSymbolDefinitions.WixTouchFile, null, null)
36 {
37 }
38
39 public WixTouchFileSymbol(SourceLineNumber sourceLineNumber, Identifier id = null) : base(UtilSymbolDefinitions.WixTouchFile, sourceLineNumber, id)
40 {
41 }
42
43 public IntermediateField this[WixTouchFileSymbolFields index] => this.Fields[(int)index];
44
45 public string ComponentRef
46 {
47 get => this.Fields[(int)WixTouchFileSymbolFields.ComponentRef].AsString();
48 set => this.Set((int)WixTouchFileSymbolFields.ComponentRef, value);
49 }
50
51 public string Path
52 {
53 get => this.Fields[(int)WixTouchFileSymbolFields.Path].AsString();
54 set => this.Set((int)WixTouchFileSymbolFields.Path, value);
55 }
56
57 public int Attributes
58 {
59 get => this.Fields[(int)WixTouchFileSymbolFields.Attributes].AsNumber();
60 set => this.Set((int)WixTouchFileSymbolFields.Attributes, value);
61 }
62 }
63} \ No newline at end of file
diff --git a/src/wixext/Symbols/XmlConfigSymbol.cs b/src/wixext/Symbols/XmlConfigSymbol.cs
new file mode 100644
index 00000000..ca1cf047
--- /dev/null
+++ b/src/wixext/Symbols/XmlConfigSymbol.cs
@@ -0,0 +1,103 @@
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.Util
4{
5 using WixToolset.Data;
6 using WixToolset.Util.Symbols;
7
8 public static partial class UtilSymbolDefinitions
9 {
10 public static readonly IntermediateSymbolDefinition XmlConfig = new IntermediateSymbolDefinition(
11 UtilSymbolDefinitionType.XmlConfig.ToString(),
12 new[]
13 {
14 new IntermediateFieldDefinition(nameof(XmlConfigSymbolFields.File), IntermediateFieldType.String),
15 new IntermediateFieldDefinition(nameof(XmlConfigSymbolFields.ElementPath), IntermediateFieldType.String),
16 new IntermediateFieldDefinition(nameof(XmlConfigSymbolFields.VerifyPath), IntermediateFieldType.String),
17 new IntermediateFieldDefinition(nameof(XmlConfigSymbolFields.Name), IntermediateFieldType.String),
18 new IntermediateFieldDefinition(nameof(XmlConfigSymbolFields.Value), IntermediateFieldType.String),
19 new IntermediateFieldDefinition(nameof(XmlConfigSymbolFields.Flags), IntermediateFieldType.Number),
20 new IntermediateFieldDefinition(nameof(XmlConfigSymbolFields.ComponentRef), IntermediateFieldType.String),
21 new IntermediateFieldDefinition(nameof(XmlConfigSymbolFields.Sequence), IntermediateFieldType.Number),
22 },
23 typeof(XmlConfigSymbol));
24 }
25}
26
27namespace WixToolset.Util.Symbols
28{
29 using WixToolset.Data;
30
31 public enum XmlConfigSymbolFields
32 {
33 File,
34 ElementPath,
35 VerifyPath,
36 Name,
37 Value,
38 Flags,
39 ComponentRef,
40 Sequence,
41 }
42
43 public class XmlConfigSymbol : IntermediateSymbol
44 {
45 public XmlConfigSymbol() : base(UtilSymbolDefinitions.XmlConfig, null, null)
46 {
47 }
48
49 public XmlConfigSymbol(SourceLineNumber sourceLineNumber, Identifier id = null) : base(UtilSymbolDefinitions.XmlConfig, sourceLineNumber, id)
50 {
51 }
52
53 public IntermediateField this[XmlConfigSymbolFields index] => this.Fields[(int)index];
54
55 public string File
56 {
57 get => this.Fields[(int)XmlConfigSymbolFields.File].AsString();
58 set => this.Set((int)XmlConfigSymbolFields.File, value);
59 }
60
61 public string ElementPath
62 {
63 get => this.Fields[(int)XmlConfigSymbolFields.ElementPath].AsString();
64 set => this.Set((int)XmlConfigSymbolFields.ElementPath, value);
65 }
66
67 public string VerifyPath
68 {
69 get => this.Fields[(int)XmlConfigSymbolFields.VerifyPath].AsString();
70 set => this.Set((int)XmlConfigSymbolFields.VerifyPath, value);
71 }
72
73 public string Name
74 {
75 get => this.Fields[(int)XmlConfigSymbolFields.Name].AsString();
76 set => this.Set((int)XmlConfigSymbolFields.Name, value);
77 }
78
79 public string Value
80 {
81 get => this.Fields[(int)XmlConfigSymbolFields.Value].AsString();
82 set => this.Set((int)XmlConfigSymbolFields.Value, value);
83 }
84
85 public int Flags
86 {
87 get => this.Fields[(int)XmlConfigSymbolFields.Flags].AsNumber();
88 set => this.Set((int)XmlConfigSymbolFields.Flags, value);
89 }
90
91 public string ComponentRef
92 {
93 get => this.Fields[(int)XmlConfigSymbolFields.ComponentRef].AsString();
94 set => this.Set((int)XmlConfigSymbolFields.ComponentRef, value);
95 }
96
97 public int? Sequence
98 {
99 get => this.Fields[(int)XmlConfigSymbolFields.Sequence].AsNullableNumber();
100 set => this.Set((int)XmlConfigSymbolFields.Sequence, value);
101 }
102 }
103} \ No newline at end of file
diff --git a/src/wixext/Symbols/XmlFileSymbol.cs b/src/wixext/Symbols/XmlFileSymbol.cs
new file mode 100644
index 00000000..7d5d991b
--- /dev/null
+++ b/src/wixext/Symbols/XmlFileSymbol.cs
@@ -0,0 +1,95 @@
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.Util
4{
5 using WixToolset.Data;
6 using WixToolset.Util.Symbols;
7
8 public static partial class UtilSymbolDefinitions
9 {
10 public static readonly IntermediateSymbolDefinition XmlFile = new IntermediateSymbolDefinition(
11 UtilSymbolDefinitionType.XmlFile.ToString(),
12 new[]
13 {
14 new IntermediateFieldDefinition(nameof(XmlFileSymbolFields.File), IntermediateFieldType.String),
15 new IntermediateFieldDefinition(nameof(XmlFileSymbolFields.ElementPath), IntermediateFieldType.String),
16 new IntermediateFieldDefinition(nameof(XmlFileSymbolFields.Name), IntermediateFieldType.String),
17 new IntermediateFieldDefinition(nameof(XmlFileSymbolFields.Value), IntermediateFieldType.String),
18 new IntermediateFieldDefinition(nameof(XmlFileSymbolFields.Flags), IntermediateFieldType.Number),
19 new IntermediateFieldDefinition(nameof(XmlFileSymbolFields.ComponentRef), IntermediateFieldType.String),
20 new IntermediateFieldDefinition(nameof(XmlFileSymbolFields.Sequence), IntermediateFieldType.Number),
21 },
22 typeof(XmlFileSymbol));
23 }
24}
25
26namespace WixToolset.Util.Symbols
27{
28 using WixToolset.Data;
29
30 public enum XmlFileSymbolFields
31 {
32 File,
33 ElementPath,
34 Name,
35 Value,
36 Flags,
37 ComponentRef,
38 Sequence,
39 }
40
41 public class XmlFileSymbol : IntermediateSymbol
42 {
43 public XmlFileSymbol() : base(UtilSymbolDefinitions.XmlFile, null, null)
44 {
45 }
46
47 public XmlFileSymbol(SourceLineNumber sourceLineNumber, Identifier id = null) : base(UtilSymbolDefinitions.XmlFile, sourceLineNumber, id)
48 {
49 }
50
51 public IntermediateField this[XmlFileSymbolFields index] => this.Fields[(int)index];
52
53 public string File
54 {
55 get => this.Fields[(int)XmlFileSymbolFields.File].AsString();
56 set => this.Set((int)XmlFileSymbolFields.File, value);
57 }
58
59 public string ElementPath
60 {
61 get => this.Fields[(int)XmlFileSymbolFields.ElementPath].AsString();
62 set => this.Set((int)XmlFileSymbolFields.ElementPath, value);
63 }
64
65 public string Name
66 {
67 get => this.Fields[(int)XmlFileSymbolFields.Name].AsString();
68 set => this.Set((int)XmlFileSymbolFields.Name, value);
69 }
70
71 public string Value
72 {
73 get => this.Fields[(int)XmlFileSymbolFields.Value].AsString();
74 set => this.Set((int)XmlFileSymbolFields.Value, value);
75 }
76
77 public int Flags
78 {
79 get => this.Fields[(int)XmlFileSymbolFields.Flags].AsNumber();
80 set => this.Set((int)XmlFileSymbolFields.Flags, value);
81 }
82
83 public string ComponentRef
84 {
85 get => this.Fields[(int)XmlFileSymbolFields.ComponentRef].AsString();
86 set => this.Set((int)XmlFileSymbolFields.ComponentRef, value);
87 }
88
89 public int? Sequence
90 {
91 get => this.Fields[(int)XmlFileSymbolFields.Sequence].AsNullableNumber();
92 set => this.Set((int)XmlFileSymbolFields.Sequence, value);
93 }
94 }
95} \ No newline at end of file