aboutsummaryrefslogtreecommitdiff
path: root/src/ext/Iis/wixext/Symbols
diff options
context:
space:
mode:
Diffstat (limited to 'src/ext/Iis/wixext/Symbols')
-rw-r--r--src/ext/Iis/wixext/Symbols/CertificateHashSymbol.cs55
-rw-r--r--src/ext/Iis/wixext/Symbols/CertificateSymbol.cs103
-rw-r--r--src/ext/Iis/wixext/Symbols/IIsAppPoolSymbol.cs159
-rw-r--r--src/ext/Iis/wixext/Symbols/IIsFilterSymbol.cs95
-rw-r--r--src/ext/Iis/wixext/Symbols/IIsHttpHeaderSymbol.cs95
-rw-r--r--src/ext/Iis/wixext/Symbols/IIsMimeMapSymbol.cs71
-rw-r--r--src/ext/Iis/wixext/Symbols/IIsPropertySymbol.cs63
-rw-r--r--src/ext/Iis/wixext/Symbols/IIsWebAddressSymbol.cs79
-rw-r--r--src/ext/Iis/wixext/Symbols/IIsWebApplicationExtensionSymbol.cs79
-rw-r--r--src/ext/Iis/wixext/Symbols/IIsWebApplicationSymbol.cs127
-rw-r--r--src/ext/Iis/wixext/Symbols/IIsWebDirPropertiesSymbol.cs151
-rw-r--r--src/ext/Iis/wixext/Symbols/IIsWebDirSymbol.cs79
-rw-r--r--src/ext/Iis/wixext/Symbols/IIsWebErrorSymbol.cs87
-rw-r--r--src/ext/Iis/wixext/Symbols/IIsWebLogSymbol.cs47
-rw-r--r--src/ext/Iis/wixext/Symbols/IIsWebServiceExtensionSymbol.cs79
-rw-r--r--src/ext/Iis/wixext/Symbols/IIsWebSiteCertificatesSymbol.cs55
-rw-r--r--src/ext/Iis/wixext/Symbols/IIsWebSiteSymbol.cs135
-rw-r--r--src/ext/Iis/wixext/Symbols/IIsWebVirtualDirSymbol.cs87
-rw-r--r--src/ext/Iis/wixext/Symbols/IisSymbolDefinitions.cs107
19 files changed, 1753 insertions, 0 deletions
diff --git a/src/ext/Iis/wixext/Symbols/CertificateHashSymbol.cs b/src/ext/Iis/wixext/Symbols/CertificateHashSymbol.cs
new file mode 100644
index 00000000..866d474c
--- /dev/null
+++ b/src/ext/Iis/wixext/Symbols/CertificateHashSymbol.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.Iis
4{
5 using WixToolset.Data;
6 using WixToolset.Iis.Symbols;
7
8 public static partial class IisSymbolDefinitions
9 {
10 public static readonly IntermediateSymbolDefinition CertificateHash = new IntermediateSymbolDefinition(
11 IisSymbolDefinitionType.CertificateHash.ToString(),
12 new[]
13 {
14 new IntermediateFieldDefinition(nameof(CertificateHashSymbolFields.CertificateRef), IntermediateFieldType.String),
15 new IntermediateFieldDefinition(nameof(CertificateHashSymbolFields.Hash), IntermediateFieldType.String),
16 },
17 typeof(CertificateHashSymbol));
18 }
19}
20
21namespace WixToolset.Iis.Symbols
22{
23 using WixToolset.Data;
24
25 public enum CertificateHashSymbolFields
26 {
27 CertificateRef,
28 Hash,
29 }
30
31 public class CertificateHashSymbol : IntermediateSymbol
32 {
33 public CertificateHashSymbol() : base(IisSymbolDefinitions.CertificateHash, null, null)
34 {
35 }
36
37 public CertificateHashSymbol(SourceLineNumber sourceLineNumber, Identifier id = null) : base(IisSymbolDefinitions.CertificateHash, sourceLineNumber, id)
38 {
39 }
40
41 public IntermediateField this[CertificateHashSymbolFields index] => this.Fields[(int)index];
42
43 public string CertificateRef
44 {
45 get => this.Fields[(int)CertificateHashSymbolFields.CertificateRef].AsString();
46 set => this.Set((int)CertificateHashSymbolFields.CertificateRef, value);
47 }
48
49 public string Hash
50 {
51 get => this.Fields[(int)CertificateHashSymbolFields.Hash].AsString();
52 set => this.Set((int)CertificateHashSymbolFields.Hash, value);
53 }
54 }
55} \ No newline at end of file
diff --git a/src/ext/Iis/wixext/Symbols/CertificateSymbol.cs b/src/ext/Iis/wixext/Symbols/CertificateSymbol.cs
new file mode 100644
index 00000000..b80b6ba4
--- /dev/null
+++ b/src/ext/Iis/wixext/Symbols/CertificateSymbol.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.Iis
4{
5 using WixToolset.Data;
6 using WixToolset.Iis.Symbols;
7
8 public static partial class IisSymbolDefinitions
9 {
10 public static readonly IntermediateSymbolDefinition Certificate = new IntermediateSymbolDefinition(
11 IisSymbolDefinitionType.Certificate.ToString(),
12 new[]
13 {
14 new IntermediateFieldDefinition(nameof(CertificateSymbolFields.ComponentRef), IntermediateFieldType.String),
15 new IntermediateFieldDefinition(nameof(CertificateSymbolFields.Name), IntermediateFieldType.String),
16 new IntermediateFieldDefinition(nameof(CertificateSymbolFields.StoreLocation), IntermediateFieldType.Number),
17 new IntermediateFieldDefinition(nameof(CertificateSymbolFields.StoreName), IntermediateFieldType.String),
18 new IntermediateFieldDefinition(nameof(CertificateSymbolFields.Attributes), IntermediateFieldType.Number),
19 new IntermediateFieldDefinition(nameof(CertificateSymbolFields.BinaryRef), IntermediateFieldType.String),
20 new IntermediateFieldDefinition(nameof(CertificateSymbolFields.CertificatePath), IntermediateFieldType.String),
21 new IntermediateFieldDefinition(nameof(CertificateSymbolFields.PFXPassword), IntermediateFieldType.String),
22 },
23 typeof(CertificateSymbol));
24 }
25}
26
27namespace WixToolset.Iis.Symbols
28{
29 using WixToolset.Data;
30
31 public enum CertificateSymbolFields
32 {
33 ComponentRef,
34 Name,
35 StoreLocation,
36 StoreName,
37 Attributes,
38 BinaryRef,
39 CertificatePath,
40 PFXPassword,
41 }
42
43 public class CertificateSymbol : IntermediateSymbol
44 {
45 public CertificateSymbol() : base(IisSymbolDefinitions.Certificate, null, null)
46 {
47 }
48
49 public CertificateSymbol(SourceLineNumber sourceLineNumber, Identifier id = null) : base(IisSymbolDefinitions.Certificate, sourceLineNumber, id)
50 {
51 }
52
53 public IntermediateField this[CertificateSymbolFields index] => this.Fields[(int)index];
54
55 public string ComponentRef
56 {
57 get => this.Fields[(int)CertificateSymbolFields.ComponentRef].AsString();
58 set => this.Set((int)CertificateSymbolFields.ComponentRef, value);
59 }
60
61 public string Name
62 {
63 get => this.Fields[(int)CertificateSymbolFields.Name].AsString();
64 set => this.Set((int)CertificateSymbolFields.Name, value);
65 }
66
67 public int StoreLocation
68 {
69 get => this.Fields[(int)CertificateSymbolFields.StoreLocation].AsNumber();
70 set => this.Set((int)CertificateSymbolFields.StoreLocation, value);
71 }
72
73 public string StoreName
74 {
75 get => this.Fields[(int)CertificateSymbolFields.StoreName].AsString();
76 set => this.Set((int)CertificateSymbolFields.StoreName, value);
77 }
78
79 public int Attributes
80 {
81 get => this.Fields[(int)CertificateSymbolFields.Attributes].AsNumber();
82 set => this.Set((int)CertificateSymbolFields.Attributes, value);
83 }
84
85 public string BinaryRef
86 {
87 get => this.Fields[(int)CertificateSymbolFields.BinaryRef].AsString();
88 set => this.Set((int)CertificateSymbolFields.BinaryRef, value);
89 }
90
91 public string CertificatePath
92 {
93 get => this.Fields[(int)CertificateSymbolFields.CertificatePath].AsString();
94 set => this.Set((int)CertificateSymbolFields.CertificatePath, value);
95 }
96
97 public string PFXPassword
98 {
99 get => this.Fields[(int)CertificateSymbolFields.PFXPassword].AsString();
100 set => this.Set((int)CertificateSymbolFields.PFXPassword, value);
101 }
102 }
103} \ No newline at end of file
diff --git a/src/ext/Iis/wixext/Symbols/IIsAppPoolSymbol.cs b/src/ext/Iis/wixext/Symbols/IIsAppPoolSymbol.cs
new file mode 100644
index 00000000..a6fab136
--- /dev/null
+++ b/src/ext/Iis/wixext/Symbols/IIsAppPoolSymbol.cs
@@ -0,0 +1,159 @@
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.Iis
4{
5 using WixToolset.Data;
6 using WixToolset.Iis.Symbols;
7
8 public static partial class IisSymbolDefinitions
9 {
10 public static readonly IntermediateSymbolDefinition IIsAppPool = new IntermediateSymbolDefinition(
11 IisSymbolDefinitionType.IIsAppPool.ToString(),
12 new[]
13 {
14 new IntermediateFieldDefinition(nameof(IIsAppPoolSymbolFields.Name), IntermediateFieldType.String),
15 new IntermediateFieldDefinition(nameof(IIsAppPoolSymbolFields.ComponentRef), IntermediateFieldType.String),
16 new IntermediateFieldDefinition(nameof(IIsAppPoolSymbolFields.Attributes), IntermediateFieldType.Number),
17 new IntermediateFieldDefinition(nameof(IIsAppPoolSymbolFields.UserRef), IntermediateFieldType.String),
18 new IntermediateFieldDefinition(nameof(IIsAppPoolSymbolFields.RecycleMinutes), IntermediateFieldType.Number),
19 new IntermediateFieldDefinition(nameof(IIsAppPoolSymbolFields.RecycleRequests), IntermediateFieldType.Number),
20 new IntermediateFieldDefinition(nameof(IIsAppPoolSymbolFields.RecycleTimes), IntermediateFieldType.String),
21 new IntermediateFieldDefinition(nameof(IIsAppPoolSymbolFields.IdleTimeout), IntermediateFieldType.Number),
22 new IntermediateFieldDefinition(nameof(IIsAppPoolSymbolFields.QueueLimit), IntermediateFieldType.Number),
23 new IntermediateFieldDefinition(nameof(IIsAppPoolSymbolFields.CPUMon), IntermediateFieldType.String),
24 new IntermediateFieldDefinition(nameof(IIsAppPoolSymbolFields.MaxProc), IntermediateFieldType.Number),
25 new IntermediateFieldDefinition(nameof(IIsAppPoolSymbolFields.VirtualMemory), IntermediateFieldType.Number),
26 new IntermediateFieldDefinition(nameof(IIsAppPoolSymbolFields.PrivateMemory), IntermediateFieldType.Number),
27 new IntermediateFieldDefinition(nameof(IIsAppPoolSymbolFields.ManagedRuntimeVersion), IntermediateFieldType.String),
28 new IntermediateFieldDefinition(nameof(IIsAppPoolSymbolFields.ManagedPipelineMode), IntermediateFieldType.String),
29 },
30 typeof(IIsAppPoolSymbol));
31 }
32}
33
34namespace WixToolset.Iis.Symbols
35{
36 using WixToolset.Data;
37
38 public enum IIsAppPoolSymbolFields
39 {
40 Name,
41 ComponentRef,
42 Attributes,
43 UserRef,
44 RecycleMinutes,
45 RecycleRequests,
46 RecycleTimes,
47 IdleTimeout,
48 QueueLimit,
49 CPUMon,
50 MaxProc,
51 VirtualMemory,
52 PrivateMemory,
53 ManagedRuntimeVersion,
54 ManagedPipelineMode,
55 }
56
57 public class IIsAppPoolSymbol : IntermediateSymbol
58 {
59 public IIsAppPoolSymbol() : base(IisSymbolDefinitions.IIsAppPool, null, null)
60 {
61 }
62
63 public IIsAppPoolSymbol(SourceLineNumber sourceLineNumber, Identifier id = null) : base(IisSymbolDefinitions.IIsAppPool, sourceLineNumber, id)
64 {
65 }
66
67 public IntermediateField this[IIsAppPoolSymbolFields index] => this.Fields[(int)index];
68
69 public string Name
70 {
71 get => this.Fields[(int)IIsAppPoolSymbolFields.Name].AsString();
72 set => this.Set((int)IIsAppPoolSymbolFields.Name, value);
73 }
74
75 public string ComponentRef
76 {
77 get => this.Fields[(int)IIsAppPoolSymbolFields.ComponentRef].AsString();
78 set => this.Set((int)IIsAppPoolSymbolFields.ComponentRef, value);
79 }
80
81 public int Attributes
82 {
83 get => this.Fields[(int)IIsAppPoolSymbolFields.Attributes].AsNumber();
84 set => this.Set((int)IIsAppPoolSymbolFields.Attributes, value);
85 }
86
87 public string UserRef
88 {
89 get => this.Fields[(int)IIsAppPoolSymbolFields.UserRef].AsString();
90 set => this.Set((int)IIsAppPoolSymbolFields.UserRef, value);
91 }
92
93 public int? RecycleMinutes
94 {
95 get => this.Fields[(int)IIsAppPoolSymbolFields.RecycleMinutes].AsNullableNumber();
96 set => this.Set((int)IIsAppPoolSymbolFields.RecycleMinutes, value);
97 }
98
99 public int? RecycleRequests
100 {
101 get => this.Fields[(int)IIsAppPoolSymbolFields.RecycleRequests].AsNullableNumber();
102 set => this.Set((int)IIsAppPoolSymbolFields.RecycleRequests, value);
103 }
104
105 public string RecycleTimes
106 {
107 get => this.Fields[(int)IIsAppPoolSymbolFields.RecycleTimes].AsString();
108 set => this.Set((int)IIsAppPoolSymbolFields.RecycleTimes, value);
109 }
110
111 public int? IdleTimeout
112 {
113 get => this.Fields[(int)IIsAppPoolSymbolFields.IdleTimeout].AsNullableNumber();
114 set => this.Set((int)IIsAppPoolSymbolFields.IdleTimeout, value);
115 }
116
117 public int? QueueLimit
118 {
119 get => this.Fields[(int)IIsAppPoolSymbolFields.QueueLimit].AsNullableNumber();
120 set => this.Set((int)IIsAppPoolSymbolFields.QueueLimit, value);
121 }
122
123 public string CPUMon
124 {
125 get => this.Fields[(int)IIsAppPoolSymbolFields.CPUMon].AsString();
126 set => this.Set((int)IIsAppPoolSymbolFields.CPUMon, value);
127 }
128
129 public int? MaxProc
130 {
131 get => this.Fields[(int)IIsAppPoolSymbolFields.MaxProc].AsNullableNumber();
132 set => this.Set((int)IIsAppPoolSymbolFields.MaxProc, value);
133 }
134
135 public int? VirtualMemory
136 {
137 get => this.Fields[(int)IIsAppPoolSymbolFields.VirtualMemory].AsNullableNumber();
138 set => this.Set((int)IIsAppPoolSymbolFields.VirtualMemory, value);
139 }
140
141 public int? PrivateMemory
142 {
143 get => this.Fields[(int)IIsAppPoolSymbolFields.PrivateMemory].AsNullableNumber();
144 set => this.Set((int)IIsAppPoolSymbolFields.PrivateMemory, value);
145 }
146
147 public string ManagedRuntimeVersion
148 {
149 get => this.Fields[(int)IIsAppPoolSymbolFields.ManagedRuntimeVersion].AsString();
150 set => this.Set((int)IIsAppPoolSymbolFields.ManagedRuntimeVersion, value);
151 }
152
153 public string ManagedPipelineMode
154 {
155 get => this.Fields[(int)IIsAppPoolSymbolFields.ManagedPipelineMode].AsString();
156 set => this.Set((int)IIsAppPoolSymbolFields.ManagedPipelineMode, value);
157 }
158 }
159} \ No newline at end of file
diff --git a/src/ext/Iis/wixext/Symbols/IIsFilterSymbol.cs b/src/ext/Iis/wixext/Symbols/IIsFilterSymbol.cs
new file mode 100644
index 00000000..618730bf
--- /dev/null
+++ b/src/ext/Iis/wixext/Symbols/IIsFilterSymbol.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.Iis
4{
5 using WixToolset.Data;
6 using WixToolset.Iis.Symbols;
7
8 public static partial class IisSymbolDefinitions
9 {
10 public static readonly IntermediateSymbolDefinition IIsFilter = new IntermediateSymbolDefinition(
11 IisSymbolDefinitionType.IIsFilter.ToString(),
12 new[]
13 {
14 new IntermediateFieldDefinition(nameof(IIsFilterSymbolFields.Name), IntermediateFieldType.String),
15 new IntermediateFieldDefinition(nameof(IIsFilterSymbolFields.ComponentRef), IntermediateFieldType.String),
16 new IntermediateFieldDefinition(nameof(IIsFilterSymbolFields.Path), IntermediateFieldType.String),
17 new IntermediateFieldDefinition(nameof(IIsFilterSymbolFields.WebRef), IntermediateFieldType.String),
18 new IntermediateFieldDefinition(nameof(IIsFilterSymbolFields.Description), IntermediateFieldType.String),
19 new IntermediateFieldDefinition(nameof(IIsFilterSymbolFields.Flags), IntermediateFieldType.Number),
20 new IntermediateFieldDefinition(nameof(IIsFilterSymbolFields.LoadOrder), IntermediateFieldType.Number),
21 },
22 typeof(IIsFilterSymbol));
23 }
24}
25
26namespace WixToolset.Iis.Symbols
27{
28 using WixToolset.Data;
29
30 public enum IIsFilterSymbolFields
31 {
32 Name,
33 ComponentRef,
34 Path,
35 WebRef,
36 Description,
37 Flags,
38 LoadOrder,
39 }
40
41 public class IIsFilterSymbol : IntermediateSymbol
42 {
43 public IIsFilterSymbol() : base(IisSymbolDefinitions.IIsFilter, null, null)
44 {
45 }
46
47 public IIsFilterSymbol(SourceLineNumber sourceLineNumber, Identifier id = null) : base(IisSymbolDefinitions.IIsFilter, sourceLineNumber, id)
48 {
49 }
50
51 public IntermediateField this[IIsFilterSymbolFields index] => this.Fields[(int)index];
52
53 public string Name
54 {
55 get => this.Fields[(int)IIsFilterSymbolFields.Name].AsString();
56 set => this.Set((int)IIsFilterSymbolFields.Name, value);
57 }
58
59 public string ComponentRef
60 {
61 get => this.Fields[(int)IIsFilterSymbolFields.ComponentRef].AsString();
62 set => this.Set((int)IIsFilterSymbolFields.ComponentRef, value);
63 }
64
65 public string Path
66 {
67 get => this.Fields[(int)IIsFilterSymbolFields.Path].AsString();
68 set => this.Set((int)IIsFilterSymbolFields.Path, value);
69 }
70
71 public string WebRef
72 {
73 get => this.Fields[(int)IIsFilterSymbolFields.WebRef].AsString();
74 set => this.Set((int)IIsFilterSymbolFields.WebRef, value);
75 }
76
77 public string Description
78 {
79 get => this.Fields[(int)IIsFilterSymbolFields.Description].AsString();
80 set => this.Set((int)IIsFilterSymbolFields.Description, value);
81 }
82
83 public int Flags
84 {
85 get => this.Fields[(int)IIsFilterSymbolFields.Flags].AsNumber();
86 set => this.Set((int)IIsFilterSymbolFields.Flags, value);
87 }
88
89 public int? LoadOrder
90 {
91 get => this.Fields[(int)IIsFilterSymbolFields.LoadOrder].AsNullableNumber();
92 set => this.Set((int)IIsFilterSymbolFields.LoadOrder, value);
93 }
94 }
95} \ No newline at end of file
diff --git a/src/ext/Iis/wixext/Symbols/IIsHttpHeaderSymbol.cs b/src/ext/Iis/wixext/Symbols/IIsHttpHeaderSymbol.cs
new file mode 100644
index 00000000..3ab2bf59
--- /dev/null
+++ b/src/ext/Iis/wixext/Symbols/IIsHttpHeaderSymbol.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.Iis
4{
5 using WixToolset.Data;
6 using WixToolset.Iis.Symbols;
7
8 public static partial class IisSymbolDefinitions
9 {
10 public static readonly IntermediateSymbolDefinition IIsHttpHeader = new IntermediateSymbolDefinition(
11 IisSymbolDefinitionType.IIsHttpHeader.ToString(),
12 new[]
13 {
14 new IntermediateFieldDefinition(nameof(IIsHttpHeaderSymbolFields.HttpHeader), IntermediateFieldType.String),
15 new IntermediateFieldDefinition(nameof(IIsHttpHeaderSymbolFields.ParentType), IntermediateFieldType.Number),
16 new IntermediateFieldDefinition(nameof(IIsHttpHeaderSymbolFields.ParentValue), IntermediateFieldType.String),
17 new IntermediateFieldDefinition(nameof(IIsHttpHeaderSymbolFields.Name), IntermediateFieldType.String),
18 new IntermediateFieldDefinition(nameof(IIsHttpHeaderSymbolFields.Value), IntermediateFieldType.String),
19 new IntermediateFieldDefinition(nameof(IIsHttpHeaderSymbolFields.Attributes), IntermediateFieldType.Number),
20 new IntermediateFieldDefinition(nameof(IIsHttpHeaderSymbolFields.Sequence), IntermediateFieldType.Number),
21 },
22 typeof(IIsHttpHeaderSymbol));
23 }
24}
25
26namespace WixToolset.Iis.Symbols
27{
28 using WixToolset.Data;
29
30 public enum IIsHttpHeaderSymbolFields
31 {
32 HttpHeader,
33 ParentType,
34 ParentValue,
35 Name,
36 Value,
37 Attributes,
38 Sequence,
39 }
40
41 public class IIsHttpHeaderSymbol : IntermediateSymbol
42 {
43 public IIsHttpHeaderSymbol() : base(IisSymbolDefinitions.IIsHttpHeader, null, null)
44 {
45 }
46
47 public IIsHttpHeaderSymbol(SourceLineNumber sourceLineNumber, Identifier id = null) : base(IisSymbolDefinitions.IIsHttpHeader, sourceLineNumber, id)
48 {
49 }
50
51 public IntermediateField this[IIsHttpHeaderSymbolFields index] => this.Fields[(int)index];
52
53 public string HttpHeader
54 {
55 get => this.Fields[(int)IIsHttpHeaderSymbolFields.HttpHeader].AsString();
56 set => this.Set((int)IIsHttpHeaderSymbolFields.HttpHeader, value);
57 }
58
59 public int ParentType
60 {
61 get => this.Fields[(int)IIsHttpHeaderSymbolFields.ParentType].AsNumber();
62 set => this.Set((int)IIsHttpHeaderSymbolFields.ParentType, value);
63 }
64
65 public string ParentValue
66 {
67 get => this.Fields[(int)IIsHttpHeaderSymbolFields.ParentValue].AsString();
68 set => this.Set((int)IIsHttpHeaderSymbolFields.ParentValue, value);
69 }
70
71 public string Name
72 {
73 get => this.Fields[(int)IIsHttpHeaderSymbolFields.Name].AsString();
74 set => this.Set((int)IIsHttpHeaderSymbolFields.Name, value);
75 }
76
77 public string Value
78 {
79 get => this.Fields[(int)IIsHttpHeaderSymbolFields.Value].AsString();
80 set => this.Set((int)IIsHttpHeaderSymbolFields.Value, value);
81 }
82
83 public int Attributes
84 {
85 get => this.Fields[(int)IIsHttpHeaderSymbolFields.Attributes].AsNumber();
86 set => this.Set((int)IIsHttpHeaderSymbolFields.Attributes, value);
87 }
88
89 public int? Sequence
90 {
91 get => this.Fields[(int)IIsHttpHeaderSymbolFields.Sequence].AsNullableNumber();
92 set => this.Set((int)IIsHttpHeaderSymbolFields.Sequence, value);
93 }
94 }
95} \ No newline at end of file
diff --git a/src/ext/Iis/wixext/Symbols/IIsMimeMapSymbol.cs b/src/ext/Iis/wixext/Symbols/IIsMimeMapSymbol.cs
new file mode 100644
index 00000000..4af6f81c
--- /dev/null
+++ b/src/ext/Iis/wixext/Symbols/IIsMimeMapSymbol.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.Iis
4{
5 using WixToolset.Data;
6 using WixToolset.Iis.Symbols;
7
8 public static partial class IisSymbolDefinitions
9 {
10 public static readonly IntermediateSymbolDefinition IIsMimeMap = new IntermediateSymbolDefinition(
11 IisSymbolDefinitionType.IIsMimeMap.ToString(),
12 new[]
13 {
14 new IntermediateFieldDefinition(nameof(IIsMimeMapSymbolFields.ParentType), IntermediateFieldType.Number),
15 new IntermediateFieldDefinition(nameof(IIsMimeMapSymbolFields.ParentValue), IntermediateFieldType.String),
16 new IntermediateFieldDefinition(nameof(IIsMimeMapSymbolFields.MimeType), IntermediateFieldType.String),
17 new IntermediateFieldDefinition(nameof(IIsMimeMapSymbolFields.Extension), IntermediateFieldType.String),
18 },
19 typeof(IIsMimeMapSymbol));
20 }
21}
22
23namespace WixToolset.Iis.Symbols
24{
25 using WixToolset.Data;
26
27 public enum IIsMimeMapSymbolFields
28 {
29 ParentType,
30 ParentValue,
31 MimeType,
32 Extension,
33 }
34
35 public class IIsMimeMapSymbol : IntermediateSymbol
36 {
37 public IIsMimeMapSymbol() : base(IisSymbolDefinitions.IIsMimeMap, null, null)
38 {
39 }
40
41 public IIsMimeMapSymbol(SourceLineNumber sourceLineNumber, Identifier id = null) : base(IisSymbolDefinitions.IIsMimeMap, sourceLineNumber, id)
42 {
43 }
44
45 public IntermediateField this[IIsMimeMapSymbolFields index] => this.Fields[(int)index];
46
47 public int ParentType
48 {
49 get => this.Fields[(int)IIsMimeMapSymbolFields.ParentType].AsNumber();
50 set => this.Set((int)IIsMimeMapSymbolFields.ParentType, value);
51 }
52
53 public string ParentValue
54 {
55 get => this.Fields[(int)IIsMimeMapSymbolFields.ParentValue].AsString();
56 set => this.Set((int)IIsMimeMapSymbolFields.ParentValue, value);
57 }
58
59 public string MimeType
60 {
61 get => this.Fields[(int)IIsMimeMapSymbolFields.MimeType].AsString();
62 set => this.Set((int)IIsMimeMapSymbolFields.MimeType, value);
63 }
64
65 public string Extension
66 {
67 get => this.Fields[(int)IIsMimeMapSymbolFields.Extension].AsString();
68 set => this.Set((int)IIsMimeMapSymbolFields.Extension, value);
69 }
70 }
71} \ No newline at end of file
diff --git a/src/ext/Iis/wixext/Symbols/IIsPropertySymbol.cs b/src/ext/Iis/wixext/Symbols/IIsPropertySymbol.cs
new file mode 100644
index 00000000..9cf67014
--- /dev/null
+++ b/src/ext/Iis/wixext/Symbols/IIsPropertySymbol.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.Iis
4{
5 using WixToolset.Data;
6 using WixToolset.Iis.Symbols;
7
8 public static partial class IisSymbolDefinitions
9 {
10 public static readonly IntermediateSymbolDefinition IIsProperty = new IntermediateSymbolDefinition(
11 IisSymbolDefinitionType.IIsProperty.ToString(),
12 new[]
13 {
14 new IntermediateFieldDefinition(nameof(IIsPropertySymbolFields.ComponentRef), IntermediateFieldType.String),
15 new IntermediateFieldDefinition(nameof(IIsPropertySymbolFields.Attributes), IntermediateFieldType.Number),
16 new IntermediateFieldDefinition(nameof(IIsPropertySymbolFields.Value), IntermediateFieldType.String),
17 },
18 typeof(IIsPropertySymbol));
19 }
20}
21
22namespace WixToolset.Iis.Symbols
23{
24 using WixToolset.Data;
25
26 public enum IIsPropertySymbolFields
27 {
28 ComponentRef,
29 Attributes,
30 Value,
31 }
32
33 public class IIsPropertySymbol : IntermediateSymbol
34 {
35 public IIsPropertySymbol() : base(IisSymbolDefinitions.IIsProperty, null, null)
36 {
37 }
38
39 public IIsPropertySymbol(SourceLineNumber sourceLineNumber, Identifier id = null) : base(IisSymbolDefinitions.IIsProperty, sourceLineNumber, id)
40 {
41 }
42
43 public IntermediateField this[IIsPropertySymbolFields index] => this.Fields[(int)index];
44
45 public string ComponentRef
46 {
47 get => this.Fields[(int)IIsPropertySymbolFields.ComponentRef].AsString();
48 set => this.Set((int)IIsPropertySymbolFields.ComponentRef, value);
49 }
50
51 public int Attributes
52 {
53 get => this.Fields[(int)IIsPropertySymbolFields.Attributes].AsNumber();
54 set => this.Set((int)IIsPropertySymbolFields.Attributes, value);
55 }
56
57 public string Value
58 {
59 get => this.Fields[(int)IIsPropertySymbolFields.Value].AsString();
60 set => this.Set((int)IIsPropertySymbolFields.Value, value);
61 }
62 }
63} \ No newline at end of file
diff --git a/src/ext/Iis/wixext/Symbols/IIsWebAddressSymbol.cs b/src/ext/Iis/wixext/Symbols/IIsWebAddressSymbol.cs
new file mode 100644
index 00000000..7111718a
--- /dev/null
+++ b/src/ext/Iis/wixext/Symbols/IIsWebAddressSymbol.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.Iis
4{
5 using WixToolset.Data;
6 using WixToolset.Iis.Symbols;
7
8 public static partial class IisSymbolDefinitions
9 {
10 public static readonly IntermediateSymbolDefinition IIsWebAddress = new IntermediateSymbolDefinition(
11 IisSymbolDefinitionType.IIsWebAddress.ToString(),
12 new[]
13 {
14 new IntermediateFieldDefinition(nameof(IIsWebAddressSymbolFields.WebRef), IntermediateFieldType.String),
15 new IntermediateFieldDefinition(nameof(IIsWebAddressSymbolFields.IP), IntermediateFieldType.String),
16 new IntermediateFieldDefinition(nameof(IIsWebAddressSymbolFields.Port), IntermediateFieldType.String),
17 new IntermediateFieldDefinition(nameof(IIsWebAddressSymbolFields.Header), IntermediateFieldType.String),
18 new IntermediateFieldDefinition(nameof(IIsWebAddressSymbolFields.Secure), IntermediateFieldType.Number),
19 },
20 typeof(IIsWebAddressSymbol));
21 }
22}
23
24namespace WixToolset.Iis.Symbols
25{
26 using WixToolset.Data;
27
28 public enum IIsWebAddressSymbolFields
29 {
30 WebRef,
31 IP,
32 Port,
33 Header,
34 Secure,
35 }
36
37 public class IIsWebAddressSymbol : IntermediateSymbol
38 {
39 public IIsWebAddressSymbol() : base(IisSymbolDefinitions.IIsWebAddress, null, null)
40 {
41 }
42
43 public IIsWebAddressSymbol(SourceLineNumber sourceLineNumber, Identifier id = null) : base(IisSymbolDefinitions.IIsWebAddress, sourceLineNumber, id)
44 {
45 }
46
47 public IntermediateField this[IIsWebAddressSymbolFields index] => this.Fields[(int)index];
48
49 public string WebRef
50 {
51 get => this.Fields[(int)IIsWebAddressSymbolFields.WebRef].AsString();
52 set => this.Set((int)IIsWebAddressSymbolFields.WebRef, value);
53 }
54
55 public string IP
56 {
57 get => this.Fields[(int)IIsWebAddressSymbolFields.IP].AsString();
58 set => this.Set((int)IIsWebAddressSymbolFields.IP, value);
59 }
60
61 public string Port
62 {
63 get => this.Fields[(int)IIsWebAddressSymbolFields.Port].AsString();
64 set => this.Set((int)IIsWebAddressSymbolFields.Port, value);
65 }
66
67 public string Header
68 {
69 get => this.Fields[(int)IIsWebAddressSymbolFields.Header].AsString();
70 set => this.Set((int)IIsWebAddressSymbolFields.Header, value);
71 }
72
73 public int? Secure
74 {
75 get => this.Fields[(int)IIsWebAddressSymbolFields.Secure].AsNullableNumber();
76 set => this.Set((int)IIsWebAddressSymbolFields.Secure, value);
77 }
78 }
79} \ No newline at end of file
diff --git a/src/ext/Iis/wixext/Symbols/IIsWebApplicationExtensionSymbol.cs b/src/ext/Iis/wixext/Symbols/IIsWebApplicationExtensionSymbol.cs
new file mode 100644
index 00000000..4283d702
--- /dev/null
+++ b/src/ext/Iis/wixext/Symbols/IIsWebApplicationExtensionSymbol.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.Iis
4{
5 using WixToolset.Data;
6 using WixToolset.Iis.Symbols;
7
8 public static partial class IisSymbolDefinitions
9 {
10 public static readonly IntermediateSymbolDefinition IIsWebApplicationExtension = new IntermediateSymbolDefinition(
11 IisSymbolDefinitionType.IIsWebApplicationExtension.ToString(),
12 new[]
13 {
14 new IntermediateFieldDefinition(nameof(IIsWebApplicationExtensionSymbolFields.ApplicationRef), IntermediateFieldType.String),
15 new IntermediateFieldDefinition(nameof(IIsWebApplicationExtensionSymbolFields.Extension), IntermediateFieldType.String),
16 new IntermediateFieldDefinition(nameof(IIsWebApplicationExtensionSymbolFields.Verbs), IntermediateFieldType.String),
17 new IntermediateFieldDefinition(nameof(IIsWebApplicationExtensionSymbolFields.Executable), IntermediateFieldType.String),
18 new IntermediateFieldDefinition(nameof(IIsWebApplicationExtensionSymbolFields.Attributes), IntermediateFieldType.Number),
19 },
20 typeof(IIsWebApplicationExtensionSymbol));
21 }
22}
23
24namespace WixToolset.Iis.Symbols
25{
26 using WixToolset.Data;
27
28 public enum IIsWebApplicationExtensionSymbolFields
29 {
30 ApplicationRef,
31 Extension,
32 Verbs,
33 Executable,
34 Attributes,
35 }
36
37 public class IIsWebApplicationExtensionSymbol : IntermediateSymbol
38 {
39 public IIsWebApplicationExtensionSymbol() : base(IisSymbolDefinitions.IIsWebApplicationExtension, null, null)
40 {
41 }
42
43 public IIsWebApplicationExtensionSymbol(SourceLineNumber sourceLineNumber, Identifier id = null) : base(IisSymbolDefinitions.IIsWebApplicationExtension, sourceLineNumber, id)
44 {
45 }
46
47 public IntermediateField this[IIsWebApplicationExtensionSymbolFields index] => this.Fields[(int)index];
48
49 public string ApplicationRef
50 {
51 get => this.Fields[(int)IIsWebApplicationExtensionSymbolFields.ApplicationRef].AsString();
52 set => this.Set((int)IIsWebApplicationExtensionSymbolFields.ApplicationRef, value);
53 }
54
55 public string Extension
56 {
57 get => this.Fields[(int)IIsWebApplicationExtensionSymbolFields.Extension].AsString();
58 set => this.Set((int)IIsWebApplicationExtensionSymbolFields.Extension, value);
59 }
60
61 public string Verbs
62 {
63 get => this.Fields[(int)IIsWebApplicationExtensionSymbolFields.Verbs].AsString();
64 set => this.Set((int)IIsWebApplicationExtensionSymbolFields.Verbs, value);
65 }
66
67 public string Executable
68 {
69 get => this.Fields[(int)IIsWebApplicationExtensionSymbolFields.Executable].AsString();
70 set => this.Set((int)IIsWebApplicationExtensionSymbolFields.Executable, value);
71 }
72
73 public int Attributes
74 {
75 get => this.Fields[(int)IIsWebApplicationExtensionSymbolFields.Attributes].AsNumber();
76 set => this.Set((int)IIsWebApplicationExtensionSymbolFields.Attributes, value);
77 }
78 }
79} \ No newline at end of file
diff --git a/src/ext/Iis/wixext/Symbols/IIsWebApplicationSymbol.cs b/src/ext/Iis/wixext/Symbols/IIsWebApplicationSymbol.cs
new file mode 100644
index 00000000..2f6f87de
--- /dev/null
+++ b/src/ext/Iis/wixext/Symbols/IIsWebApplicationSymbol.cs
@@ -0,0 +1,127 @@
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.Iis
4{
5 using WixToolset.Data;
6 using WixToolset.Iis.Symbols;
7
8 public static partial class IisSymbolDefinitions
9 {
10 public static readonly IntermediateSymbolDefinition IIsWebApplication = new IntermediateSymbolDefinition(
11 IisSymbolDefinitionType.IIsWebApplication.ToString(),
12 new[]
13 {
14 new IntermediateFieldDefinition(nameof(IIsWebApplicationSymbolFields.Name), IntermediateFieldType.String),
15 new IntermediateFieldDefinition(nameof(IIsWebApplicationSymbolFields.Isolation), IntermediateFieldType.Number),
16 new IntermediateFieldDefinition(nameof(IIsWebApplicationSymbolFields.AllowSessions), IntermediateFieldType.Number),
17 new IntermediateFieldDefinition(nameof(IIsWebApplicationSymbolFields.SessionTimeout), IntermediateFieldType.Number),
18 new IntermediateFieldDefinition(nameof(IIsWebApplicationSymbolFields.Buffer), IntermediateFieldType.Number),
19 new IntermediateFieldDefinition(nameof(IIsWebApplicationSymbolFields.ParentPaths), IntermediateFieldType.Number),
20 new IntermediateFieldDefinition(nameof(IIsWebApplicationSymbolFields.DefaultScript), IntermediateFieldType.String),
21 new IntermediateFieldDefinition(nameof(IIsWebApplicationSymbolFields.ScriptTimeout), IntermediateFieldType.Number),
22 new IntermediateFieldDefinition(nameof(IIsWebApplicationSymbolFields.ServerDebugging), IntermediateFieldType.Number),
23 new IntermediateFieldDefinition(nameof(IIsWebApplicationSymbolFields.ClientDebugging), IntermediateFieldType.Number),
24 new IntermediateFieldDefinition(nameof(IIsWebApplicationSymbolFields.AppPoolRef), IntermediateFieldType.String),
25 },
26 typeof(IIsWebApplicationSymbol));
27 }
28}
29
30namespace WixToolset.Iis.Symbols
31{
32 using WixToolset.Data;
33
34 public enum IIsWebApplicationSymbolFields
35 {
36 Name,
37 Isolation,
38 AllowSessions,
39 SessionTimeout,
40 Buffer,
41 ParentPaths,
42 DefaultScript,
43 ScriptTimeout,
44 ServerDebugging,
45 ClientDebugging,
46 AppPoolRef,
47 }
48
49 public class IIsWebApplicationSymbol : IntermediateSymbol
50 {
51 public IIsWebApplicationSymbol() : base(IisSymbolDefinitions.IIsWebApplication, null, null)
52 {
53 }
54
55 public IIsWebApplicationSymbol(SourceLineNumber sourceLineNumber, Identifier id = null) : base(IisSymbolDefinitions.IIsWebApplication, sourceLineNumber, id)
56 {
57 }
58
59 public IntermediateField this[IIsWebApplicationSymbolFields index] => this.Fields[(int)index];
60
61 public string Name
62 {
63 get => this.Fields[(int)IIsWebApplicationSymbolFields.Name].AsString();
64 set => this.Set((int)IIsWebApplicationSymbolFields.Name, value);
65 }
66
67 public int Isolation
68 {
69 get => this.Fields[(int)IIsWebApplicationSymbolFields.Isolation].AsNumber();
70 set => this.Set((int)IIsWebApplicationSymbolFields.Isolation, value);
71 }
72
73 public int? AllowSessions
74 {
75 get => this.Fields[(int)IIsWebApplicationSymbolFields.AllowSessions].AsNullableNumber();
76 set => this.Set((int)IIsWebApplicationSymbolFields.AllowSessions, value);
77 }
78
79 public int? SessionTimeout
80 {
81 get => this.Fields[(int)IIsWebApplicationSymbolFields.SessionTimeout].AsNullableNumber();
82 set => this.Set((int)IIsWebApplicationSymbolFields.SessionTimeout, value);
83 }
84
85 public int? Buffer
86 {
87 get => this.Fields[(int)IIsWebApplicationSymbolFields.Buffer].AsNullableNumber();
88 set => this.Set((int)IIsWebApplicationSymbolFields.Buffer, value);
89 }
90
91 public int? ParentPaths
92 {
93 get => this.Fields[(int)IIsWebApplicationSymbolFields.ParentPaths].AsNullableNumber();
94 set => this.Set((int)IIsWebApplicationSymbolFields.ParentPaths, value);
95 }
96
97 public string DefaultScript
98 {
99 get => this.Fields[(int)IIsWebApplicationSymbolFields.DefaultScript].AsString();
100 set => this.Set((int)IIsWebApplicationSymbolFields.DefaultScript, value);
101 }
102
103 public int? ScriptTimeout
104 {
105 get => this.Fields[(int)IIsWebApplicationSymbolFields.ScriptTimeout].AsNullableNumber();
106 set => this.Set((int)IIsWebApplicationSymbolFields.ScriptTimeout, value);
107 }
108
109 public int? ServerDebugging
110 {
111 get => this.Fields[(int)IIsWebApplicationSymbolFields.ServerDebugging].AsNullableNumber();
112 set => this.Set((int)IIsWebApplicationSymbolFields.ServerDebugging, value);
113 }
114
115 public int? ClientDebugging
116 {
117 get => this.Fields[(int)IIsWebApplicationSymbolFields.ClientDebugging].AsNullableNumber();
118 set => this.Set((int)IIsWebApplicationSymbolFields.ClientDebugging, value);
119 }
120
121 public string AppPoolRef
122 {
123 get => this.Fields[(int)IIsWebApplicationSymbolFields.AppPoolRef].AsString();
124 set => this.Set((int)IIsWebApplicationSymbolFields.AppPoolRef, value);
125 }
126 }
127} \ No newline at end of file
diff --git a/src/ext/Iis/wixext/Symbols/IIsWebDirPropertiesSymbol.cs b/src/ext/Iis/wixext/Symbols/IIsWebDirPropertiesSymbol.cs
new file mode 100644
index 00000000..42d2dead
--- /dev/null
+++ b/src/ext/Iis/wixext/Symbols/IIsWebDirPropertiesSymbol.cs
@@ -0,0 +1,151 @@
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.Iis
4{
5 using WixToolset.Data;
6 using WixToolset.Iis.Symbols;
7
8 public static partial class IisSymbolDefinitions
9 {
10 public static readonly IntermediateSymbolDefinition IIsWebDirProperties = new IntermediateSymbolDefinition(
11 IisSymbolDefinitionType.IIsWebDirProperties.ToString(),
12 new[]
13 {
14 new IntermediateFieldDefinition(nameof(IIsWebDirPropertiesSymbolFields.Access), IntermediateFieldType.Number),
15 new IntermediateFieldDefinition(nameof(IIsWebDirPropertiesSymbolFields.Authorization), IntermediateFieldType.Number),
16 new IntermediateFieldDefinition(nameof(IIsWebDirPropertiesSymbolFields.AnonymousUserRef), IntermediateFieldType.String),
17 new IntermediateFieldDefinition(nameof(IIsWebDirPropertiesSymbolFields.IIsControlledPassword), IntermediateFieldType.Number),
18 new IntermediateFieldDefinition(nameof(IIsWebDirPropertiesSymbolFields.LogVisits), IntermediateFieldType.Number),
19 new IntermediateFieldDefinition(nameof(IIsWebDirPropertiesSymbolFields.Index), IntermediateFieldType.Number),
20 new IntermediateFieldDefinition(nameof(IIsWebDirPropertiesSymbolFields.DefaultDoc), IntermediateFieldType.String),
21 new IntermediateFieldDefinition(nameof(IIsWebDirPropertiesSymbolFields.AspDetailedError), IntermediateFieldType.Number),
22 new IntermediateFieldDefinition(nameof(IIsWebDirPropertiesSymbolFields.HttpExpires), IntermediateFieldType.String),
23 new IntermediateFieldDefinition(nameof(IIsWebDirPropertiesSymbolFields.CacheControlMaxAge), IntermediateFieldType.Number),
24 new IntermediateFieldDefinition(nameof(IIsWebDirPropertiesSymbolFields.CacheControlCustom), IntermediateFieldType.String),
25 new IntermediateFieldDefinition(nameof(IIsWebDirPropertiesSymbolFields.NoCustomError), IntermediateFieldType.Number),
26 new IntermediateFieldDefinition(nameof(IIsWebDirPropertiesSymbolFields.AccessSSLFlags), IntermediateFieldType.Number),
27 new IntermediateFieldDefinition(nameof(IIsWebDirPropertiesSymbolFields.AuthenticationProviders), IntermediateFieldType.String),
28 },
29 typeof(IIsWebDirPropertiesSymbol));
30 }
31}
32
33namespace WixToolset.Iis.Symbols
34{
35 using WixToolset.Data;
36
37 public enum IIsWebDirPropertiesSymbolFields
38 {
39 Access,
40 Authorization,
41 AnonymousUserRef,
42 IIsControlledPassword,
43 LogVisits,
44 Index,
45 DefaultDoc,
46 AspDetailedError,
47 HttpExpires,
48 CacheControlMaxAge,
49 CacheControlCustom,
50 NoCustomError,
51 AccessSSLFlags,
52 AuthenticationProviders,
53 }
54
55 public class IIsWebDirPropertiesSymbol : IntermediateSymbol
56 {
57 public IIsWebDirPropertiesSymbol() : base(IisSymbolDefinitions.IIsWebDirProperties, null, null)
58 {
59 }
60
61 public IIsWebDirPropertiesSymbol(SourceLineNumber sourceLineNumber, Identifier id = null) : base(IisSymbolDefinitions.IIsWebDirProperties, sourceLineNumber, id)
62 {
63 }
64
65 public IntermediateField this[IIsWebDirPropertiesSymbolFields index] => this.Fields[(int)index];
66
67 public int? Access
68 {
69 get => this.Fields[(int)IIsWebDirPropertiesSymbolFields.Access].AsNullableNumber();
70 set => this.Set((int)IIsWebDirPropertiesSymbolFields.Access, value);
71 }
72
73 public int? Authorization
74 {
75 get => this.Fields[(int)IIsWebDirPropertiesSymbolFields.Authorization].AsNullableNumber();
76 set => this.Set((int)IIsWebDirPropertiesSymbolFields.Authorization, value);
77 }
78
79 public string AnonymousUserRef
80 {
81 get => this.Fields[(int)IIsWebDirPropertiesSymbolFields.AnonymousUserRef].AsString();
82 set => this.Set((int)IIsWebDirPropertiesSymbolFields.AnonymousUserRef, value);
83 }
84
85 public int? IIsControlledPassword
86 {
87 get => this.Fields[(int)IIsWebDirPropertiesSymbolFields.IIsControlledPassword].AsNullableNumber();
88 set => this.Set((int)IIsWebDirPropertiesSymbolFields.IIsControlledPassword, value);
89 }
90
91 public int? LogVisits
92 {
93 get => this.Fields[(int)IIsWebDirPropertiesSymbolFields.LogVisits].AsNullableNumber();
94 set => this.Set((int)IIsWebDirPropertiesSymbolFields.LogVisits, value);
95 }
96
97 public int? Index
98 {
99 get => this.Fields[(int)IIsWebDirPropertiesSymbolFields.Index].AsNullableNumber();
100 set => this.Set((int)IIsWebDirPropertiesSymbolFields.Index, value);
101 }
102
103 public string DefaultDoc
104 {
105 get => this.Fields[(int)IIsWebDirPropertiesSymbolFields.DefaultDoc].AsString();
106 set => this.Set((int)IIsWebDirPropertiesSymbolFields.DefaultDoc, value);
107 }
108
109 public int? AspDetailedError
110 {
111 get => this.Fields[(int)IIsWebDirPropertiesSymbolFields.AspDetailedError].AsNullableNumber();
112 set => this.Set((int)IIsWebDirPropertiesSymbolFields.AspDetailedError, value);
113 }
114
115 public string HttpExpires
116 {
117 get => this.Fields[(int)IIsWebDirPropertiesSymbolFields.HttpExpires].AsString();
118 set => this.Set((int)IIsWebDirPropertiesSymbolFields.HttpExpires, value);
119 }
120
121 public int? CacheControlMaxAge
122 {
123 get => this.Fields[(int)IIsWebDirPropertiesSymbolFields.CacheControlMaxAge].AsNullableNumber();
124 set => this.Set((int)IIsWebDirPropertiesSymbolFields.CacheControlMaxAge, value);
125 }
126
127 public string CacheControlCustom
128 {
129 get => this.Fields[(int)IIsWebDirPropertiesSymbolFields.CacheControlCustom].AsString();
130 set => this.Set((int)IIsWebDirPropertiesSymbolFields.CacheControlCustom, value);
131 }
132
133 public int? NoCustomError
134 {
135 get => this.Fields[(int)IIsWebDirPropertiesSymbolFields.NoCustomError].AsNullableNumber();
136 set => this.Set((int)IIsWebDirPropertiesSymbolFields.NoCustomError, value);
137 }
138
139 public int? AccessSSLFlags
140 {
141 get => this.Fields[(int)IIsWebDirPropertiesSymbolFields.AccessSSLFlags].AsNullableNumber();
142 set => this.Set((int)IIsWebDirPropertiesSymbolFields.AccessSSLFlags, value);
143 }
144
145 public string AuthenticationProviders
146 {
147 get => this.Fields[(int)IIsWebDirPropertiesSymbolFields.AuthenticationProviders].AsString();
148 set => this.Set((int)IIsWebDirPropertiesSymbolFields.AuthenticationProviders, value);
149 }
150 }
151} \ No newline at end of file
diff --git a/src/ext/Iis/wixext/Symbols/IIsWebDirSymbol.cs b/src/ext/Iis/wixext/Symbols/IIsWebDirSymbol.cs
new file mode 100644
index 00000000..7f257f14
--- /dev/null
+++ b/src/ext/Iis/wixext/Symbols/IIsWebDirSymbol.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.Iis
4{
5 using WixToolset.Data;
6 using WixToolset.Iis.Symbols;
7
8 public static partial class IisSymbolDefinitions
9 {
10 public static readonly IntermediateSymbolDefinition IIsWebDir = new IntermediateSymbolDefinition(
11 IisSymbolDefinitionType.IIsWebDir.ToString(),
12 new[]
13 {
14 new IntermediateFieldDefinition(nameof(IIsWebDirSymbolFields.ComponentRef), IntermediateFieldType.String),
15 new IntermediateFieldDefinition(nameof(IIsWebDirSymbolFields.WebRef), IntermediateFieldType.String),
16 new IntermediateFieldDefinition(nameof(IIsWebDirSymbolFields.Path), IntermediateFieldType.String),
17 new IntermediateFieldDefinition(nameof(IIsWebDirSymbolFields.DirPropertiesRef), IntermediateFieldType.String),
18 new IntermediateFieldDefinition(nameof(IIsWebDirSymbolFields.ApplicationRef), IntermediateFieldType.String),
19 },
20 typeof(IIsWebDirSymbol));
21 }
22}
23
24namespace WixToolset.Iis.Symbols
25{
26 using WixToolset.Data;
27
28 public enum IIsWebDirSymbolFields
29 {
30 ComponentRef,
31 WebRef,
32 Path,
33 DirPropertiesRef,
34 ApplicationRef,
35 }
36
37 public class IIsWebDirSymbol : IntermediateSymbol
38 {
39 public IIsWebDirSymbol() : base(IisSymbolDefinitions.IIsWebDir, null, null)
40 {
41 }
42
43 public IIsWebDirSymbol(SourceLineNumber sourceLineNumber, Identifier id = null) : base(IisSymbolDefinitions.IIsWebDir, sourceLineNumber, id)
44 {
45 }
46
47 public IntermediateField this[IIsWebDirSymbolFields index] => this.Fields[(int)index];
48
49 public string ComponentRef
50 {
51 get => this.Fields[(int)IIsWebDirSymbolFields.ComponentRef].AsString();
52 set => this.Set((int)IIsWebDirSymbolFields.ComponentRef, value);
53 }
54
55 public string WebRef
56 {
57 get => this.Fields[(int)IIsWebDirSymbolFields.WebRef].AsString();
58 set => this.Set((int)IIsWebDirSymbolFields.WebRef, value);
59 }
60
61 public string Path
62 {
63 get => this.Fields[(int)IIsWebDirSymbolFields.Path].AsString();
64 set => this.Set((int)IIsWebDirSymbolFields.Path, value);
65 }
66
67 public string DirPropertiesRef
68 {
69 get => this.Fields[(int)IIsWebDirSymbolFields.DirPropertiesRef].AsString();
70 set => this.Set((int)IIsWebDirSymbolFields.DirPropertiesRef, value);
71 }
72
73 public string ApplicationRef
74 {
75 get => this.Fields[(int)IIsWebDirSymbolFields.ApplicationRef].AsString();
76 set => this.Set((int)IIsWebDirSymbolFields.ApplicationRef, value);
77 }
78 }
79} \ No newline at end of file
diff --git a/src/ext/Iis/wixext/Symbols/IIsWebErrorSymbol.cs b/src/ext/Iis/wixext/Symbols/IIsWebErrorSymbol.cs
new file mode 100644
index 00000000..f8488fed
--- /dev/null
+++ b/src/ext/Iis/wixext/Symbols/IIsWebErrorSymbol.cs
@@ -0,0 +1,87 @@
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.Iis
4{
5 using WixToolset.Data;
6 using WixToolset.Iis.Symbols;
7
8 public static partial class IisSymbolDefinitions
9 {
10 public static readonly IntermediateSymbolDefinition IIsWebError = new IntermediateSymbolDefinition(
11 IisSymbolDefinitionType.IIsWebError.ToString(),
12 new[]
13 {
14 new IntermediateFieldDefinition(nameof(IIsWebErrorSymbolFields.ErrorCode), IntermediateFieldType.Number),
15 new IntermediateFieldDefinition(nameof(IIsWebErrorSymbolFields.SubCode), IntermediateFieldType.Number),
16 new IntermediateFieldDefinition(nameof(IIsWebErrorSymbolFields.ParentType), IntermediateFieldType.Number),
17 new IntermediateFieldDefinition(nameof(IIsWebErrorSymbolFields.ParentValue), IntermediateFieldType.String),
18 new IntermediateFieldDefinition(nameof(IIsWebErrorSymbolFields.File), IntermediateFieldType.String),
19 new IntermediateFieldDefinition(nameof(IIsWebErrorSymbolFields.URL), IntermediateFieldType.String),
20 },
21 typeof(IIsWebErrorSymbol));
22 }
23}
24
25namespace WixToolset.Iis.Symbols
26{
27 using WixToolset.Data;
28
29 public enum IIsWebErrorSymbolFields
30 {
31 ErrorCode,
32 SubCode,
33 ParentType,
34 ParentValue,
35 File,
36 URL,
37 }
38
39 public class IIsWebErrorSymbol : IntermediateSymbol
40 {
41 public IIsWebErrorSymbol() : base(IisSymbolDefinitions.IIsWebError, null, null)
42 {
43 }
44
45 public IIsWebErrorSymbol(SourceLineNumber sourceLineNumber, Identifier id = null) : base(IisSymbolDefinitions.IIsWebError, sourceLineNumber, id)
46 {
47 }
48
49 public IntermediateField this[IIsWebErrorSymbolFields index] => this.Fields[(int)index];
50
51 public int ErrorCode
52 {
53 get => this.Fields[(int)IIsWebErrorSymbolFields.ErrorCode].AsNumber();
54 set => this.Set((int)IIsWebErrorSymbolFields.ErrorCode, value);
55 }
56
57 public int SubCode
58 {
59 get => this.Fields[(int)IIsWebErrorSymbolFields.SubCode].AsNumber();
60 set => this.Set((int)IIsWebErrorSymbolFields.SubCode, value);
61 }
62
63 public int ParentType
64 {
65 get => this.Fields[(int)IIsWebErrorSymbolFields.ParentType].AsNumber();
66 set => this.Set((int)IIsWebErrorSymbolFields.ParentType, value);
67 }
68
69 public string ParentValue
70 {
71 get => this.Fields[(int)IIsWebErrorSymbolFields.ParentValue].AsString();
72 set => this.Set((int)IIsWebErrorSymbolFields.ParentValue, value);
73 }
74
75 public string File
76 {
77 get => this.Fields[(int)IIsWebErrorSymbolFields.File].AsString();
78 set => this.Set((int)IIsWebErrorSymbolFields.File, value);
79 }
80
81 public string URL
82 {
83 get => this.Fields[(int)IIsWebErrorSymbolFields.URL].AsString();
84 set => this.Set((int)IIsWebErrorSymbolFields.URL, value);
85 }
86 }
87} \ No newline at end of file
diff --git a/src/ext/Iis/wixext/Symbols/IIsWebLogSymbol.cs b/src/ext/Iis/wixext/Symbols/IIsWebLogSymbol.cs
new file mode 100644
index 00000000..409dc673
--- /dev/null
+++ b/src/ext/Iis/wixext/Symbols/IIsWebLogSymbol.cs
@@ -0,0 +1,47 @@
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.Iis
4{
5 using WixToolset.Data;
6 using WixToolset.Iis.Symbols;
7
8 public static partial class IisSymbolDefinitions
9 {
10 public static readonly IntermediateSymbolDefinition IIsWebLog = new IntermediateSymbolDefinition(
11 IisSymbolDefinitionType.IIsWebLog.ToString(),
12 new[]
13 {
14 new IntermediateFieldDefinition(nameof(IIsWebLogSymbolFields.Format), IntermediateFieldType.String),
15 },
16 typeof(IIsWebLogSymbol));
17 }
18}
19
20namespace WixToolset.Iis.Symbols
21{
22 using WixToolset.Data;
23
24 public enum IIsWebLogSymbolFields
25 {
26 Format,
27 }
28
29 public class IIsWebLogSymbol : IntermediateSymbol
30 {
31 public IIsWebLogSymbol() : base(IisSymbolDefinitions.IIsWebLog, null, null)
32 {
33 }
34
35 public IIsWebLogSymbol(SourceLineNumber sourceLineNumber, Identifier id = null) : base(IisSymbolDefinitions.IIsWebLog, sourceLineNumber, id)
36 {
37 }
38
39 public IntermediateField this[IIsWebLogSymbolFields index] => this.Fields[(int)index];
40
41 public string Format
42 {
43 get => this.Fields[(int)IIsWebLogSymbolFields.Format].AsString();
44 set => this.Set((int)IIsWebLogSymbolFields.Format, value);
45 }
46 }
47} \ No newline at end of file
diff --git a/src/ext/Iis/wixext/Symbols/IIsWebServiceExtensionSymbol.cs b/src/ext/Iis/wixext/Symbols/IIsWebServiceExtensionSymbol.cs
new file mode 100644
index 00000000..44922357
--- /dev/null
+++ b/src/ext/Iis/wixext/Symbols/IIsWebServiceExtensionSymbol.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.Iis
4{
5 using WixToolset.Data;
6 using WixToolset.Iis.Symbols;
7
8 public static partial class IisSymbolDefinitions
9 {
10 public static readonly IntermediateSymbolDefinition IIsWebServiceExtension = new IntermediateSymbolDefinition(
11 IisSymbolDefinitionType.IIsWebServiceExtension.ToString(),
12 new[]
13 {
14 new IntermediateFieldDefinition(nameof(IIsWebServiceExtensionSymbolFields.ComponentRef), IntermediateFieldType.String),
15 new IntermediateFieldDefinition(nameof(IIsWebServiceExtensionSymbolFields.File), IntermediateFieldType.String),
16 new IntermediateFieldDefinition(nameof(IIsWebServiceExtensionSymbolFields.Description), IntermediateFieldType.String),
17 new IntermediateFieldDefinition(nameof(IIsWebServiceExtensionSymbolFields.Group), IntermediateFieldType.String),
18 new IntermediateFieldDefinition(nameof(IIsWebServiceExtensionSymbolFields.Attributes), IntermediateFieldType.Number),
19 },
20 typeof(IIsWebServiceExtensionSymbol));
21 }
22}
23
24namespace WixToolset.Iis.Symbols
25{
26 using WixToolset.Data;
27
28 public enum IIsWebServiceExtensionSymbolFields
29 {
30 ComponentRef,
31 File,
32 Description,
33 Group,
34 Attributes,
35 }
36
37 public class IIsWebServiceExtensionSymbol : IntermediateSymbol
38 {
39 public IIsWebServiceExtensionSymbol() : base(IisSymbolDefinitions.IIsWebServiceExtension, null, null)
40 {
41 }
42
43 public IIsWebServiceExtensionSymbol(SourceLineNumber sourceLineNumber, Identifier id = null) : base(IisSymbolDefinitions.IIsWebServiceExtension, sourceLineNumber, id)
44 {
45 }
46
47 public IntermediateField this[IIsWebServiceExtensionSymbolFields index] => this.Fields[(int)index];
48
49 public string ComponentRef
50 {
51 get => this.Fields[(int)IIsWebServiceExtensionSymbolFields.ComponentRef].AsString();
52 set => this.Set((int)IIsWebServiceExtensionSymbolFields.ComponentRef, value);
53 }
54
55 public string File
56 {
57 get => this.Fields[(int)IIsWebServiceExtensionSymbolFields.File].AsString();
58 set => this.Set((int)IIsWebServiceExtensionSymbolFields.File, value);
59 }
60
61 public string Description
62 {
63 get => this.Fields[(int)IIsWebServiceExtensionSymbolFields.Description].AsString();
64 set => this.Set((int)IIsWebServiceExtensionSymbolFields.Description, value);
65 }
66
67 public string Group
68 {
69 get => this.Fields[(int)IIsWebServiceExtensionSymbolFields.Group].AsString();
70 set => this.Set((int)IIsWebServiceExtensionSymbolFields.Group, value);
71 }
72
73 public int Attributes
74 {
75 get => this.Fields[(int)IIsWebServiceExtensionSymbolFields.Attributes].AsNumber();
76 set => this.Set((int)IIsWebServiceExtensionSymbolFields.Attributes, value);
77 }
78 }
79} \ No newline at end of file
diff --git a/src/ext/Iis/wixext/Symbols/IIsWebSiteCertificatesSymbol.cs b/src/ext/Iis/wixext/Symbols/IIsWebSiteCertificatesSymbol.cs
new file mode 100644
index 00000000..851ce556
--- /dev/null
+++ b/src/ext/Iis/wixext/Symbols/IIsWebSiteCertificatesSymbol.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.Iis
4{
5 using WixToolset.Data;
6 using WixToolset.Iis.Symbols;
7
8 public static partial class IisSymbolDefinitions
9 {
10 public static readonly IntermediateSymbolDefinition IIsWebSiteCertificates = new IntermediateSymbolDefinition(
11 IisSymbolDefinitionType.IIsWebSiteCertificates.ToString(),
12 new[]
13 {
14 new IntermediateFieldDefinition(nameof(IIsWebSiteCertificatesSymbolFields.WebRef), IntermediateFieldType.String),
15 new IntermediateFieldDefinition(nameof(IIsWebSiteCertificatesSymbolFields.CertificateRef), IntermediateFieldType.String),
16 },
17 typeof(IIsWebSiteCertificatesSymbol));
18 }
19}
20
21namespace WixToolset.Iis.Symbols
22{
23 using WixToolset.Data;
24
25 public enum IIsWebSiteCertificatesSymbolFields
26 {
27 WebRef,
28 CertificateRef,
29 }
30
31 public class IIsWebSiteCertificatesSymbol : IntermediateSymbol
32 {
33 public IIsWebSiteCertificatesSymbol() : base(IisSymbolDefinitions.IIsWebSiteCertificates, null, null)
34 {
35 }
36
37 public IIsWebSiteCertificatesSymbol(SourceLineNumber sourceLineNumber, Identifier id = null) : base(IisSymbolDefinitions.IIsWebSiteCertificates, sourceLineNumber, id)
38 {
39 }
40
41 public IntermediateField this[IIsWebSiteCertificatesSymbolFields index] => this.Fields[(int)index];
42
43 public string WebRef
44 {
45 get => this.Fields[(int)IIsWebSiteCertificatesSymbolFields.WebRef].AsString();
46 set => this.Set((int)IIsWebSiteCertificatesSymbolFields.WebRef, value);
47 }
48
49 public string CertificateRef
50 {
51 get => this.Fields[(int)IIsWebSiteCertificatesSymbolFields.CertificateRef].AsString();
52 set => this.Set((int)IIsWebSiteCertificatesSymbolFields.CertificateRef, value);
53 }
54 }
55} \ No newline at end of file
diff --git a/src/ext/Iis/wixext/Symbols/IIsWebSiteSymbol.cs b/src/ext/Iis/wixext/Symbols/IIsWebSiteSymbol.cs
new file mode 100644
index 00000000..ceba2ea0
--- /dev/null
+++ b/src/ext/Iis/wixext/Symbols/IIsWebSiteSymbol.cs
@@ -0,0 +1,135 @@
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.Iis
4{
5 using WixToolset.Data;
6 using WixToolset.Iis.Symbols;
7
8 public static partial class IisSymbolDefinitions
9 {
10 public static readonly IntermediateSymbolDefinition IIsWebSite = new IntermediateSymbolDefinition(
11 IisSymbolDefinitionType.IIsWebSite.ToString(),
12 new[]
13 {
14 new IntermediateFieldDefinition(nameof(IIsWebSiteSymbolFields.ComponentRef), IntermediateFieldType.String),
15 new IntermediateFieldDefinition(nameof(IIsWebSiteSymbolFields.Description), IntermediateFieldType.String),
16 new IntermediateFieldDefinition(nameof(IIsWebSiteSymbolFields.ConnectionTimeout), IntermediateFieldType.Number),
17 new IntermediateFieldDefinition(nameof(IIsWebSiteSymbolFields.DirectoryRef), IntermediateFieldType.String),
18 new IntermediateFieldDefinition(nameof(IIsWebSiteSymbolFields.State), IntermediateFieldType.Number),
19 new IntermediateFieldDefinition(nameof(IIsWebSiteSymbolFields.Attributes), IntermediateFieldType.Number),
20 new IntermediateFieldDefinition(nameof(IIsWebSiteSymbolFields.KeyAddressRef), IntermediateFieldType.String),
21 new IntermediateFieldDefinition(nameof(IIsWebSiteSymbolFields.DirPropertiesRef), IntermediateFieldType.String),
22 new IntermediateFieldDefinition(nameof(IIsWebSiteSymbolFields.ApplicationRef), IntermediateFieldType.String),
23 new IntermediateFieldDefinition(nameof(IIsWebSiteSymbolFields.Sequence), IntermediateFieldType.Number),
24 new IntermediateFieldDefinition(nameof(IIsWebSiteSymbolFields.LogRef), IntermediateFieldType.String),
25 new IntermediateFieldDefinition(nameof(IIsWebSiteSymbolFields.WebsiteId), IntermediateFieldType.String),
26 },
27 typeof(IIsWebSiteSymbol));
28 }
29}
30
31namespace WixToolset.Iis.Symbols
32{
33 using WixToolset.Data;
34
35 public enum IIsWebSiteSymbolFields
36 {
37 ComponentRef,
38 Description,
39 ConnectionTimeout,
40 DirectoryRef,
41 State,
42 Attributes,
43 KeyAddressRef,
44 DirPropertiesRef,
45 ApplicationRef,
46 Sequence,
47 LogRef,
48 WebsiteId,
49 }
50
51 public class IIsWebSiteSymbol : IntermediateSymbol
52 {
53 public IIsWebSiteSymbol() : base(IisSymbolDefinitions.IIsWebSite, null, null)
54 {
55 }
56
57 public IIsWebSiteSymbol(SourceLineNumber sourceLineNumber, Identifier id = null) : base(IisSymbolDefinitions.IIsWebSite, sourceLineNumber, id)
58 {
59 }
60
61 public IntermediateField this[IIsWebSiteSymbolFields index] => this.Fields[(int)index];
62
63 public string ComponentRef
64 {
65 get => this.Fields[(int)IIsWebSiteSymbolFields.ComponentRef].AsString();
66 set => this.Set((int)IIsWebSiteSymbolFields.ComponentRef, value);
67 }
68
69 public string Description
70 {
71 get => this.Fields[(int)IIsWebSiteSymbolFields.Description].AsString();
72 set => this.Set((int)IIsWebSiteSymbolFields.Description, value);
73 }
74
75 public int? ConnectionTimeout
76 {
77 get => this.Fields[(int)IIsWebSiteSymbolFields.ConnectionTimeout].AsNullableNumber();
78 set => this.Set((int)IIsWebSiteSymbolFields.ConnectionTimeout, value);
79 }
80
81 public string DirectoryRef
82 {
83 get => this.Fields[(int)IIsWebSiteSymbolFields.DirectoryRef].AsString();
84 set => this.Set((int)IIsWebSiteSymbolFields.DirectoryRef, value);
85 }
86
87 public int? State
88 {
89 get => this.Fields[(int)IIsWebSiteSymbolFields.State].AsNullableNumber();
90 set => this.Set((int)IIsWebSiteSymbolFields.State, value);
91 }
92
93 public int Attributes
94 {
95 get => this.Fields[(int)IIsWebSiteSymbolFields.Attributes].AsNumber();
96 set => this.Set((int)IIsWebSiteSymbolFields.Attributes, value);
97 }
98
99 public string KeyAddressRef
100 {
101 get => this.Fields[(int)IIsWebSiteSymbolFields.KeyAddressRef].AsString();
102 set => this.Set((int)IIsWebSiteSymbolFields.KeyAddressRef, value);
103 }
104
105 public string DirPropertiesRef
106 {
107 get => this.Fields[(int)IIsWebSiteSymbolFields.DirPropertiesRef].AsString();
108 set => this.Set((int)IIsWebSiteSymbolFields.DirPropertiesRef, value);
109 }
110
111 public string ApplicationRef
112 {
113 get => this.Fields[(int)IIsWebSiteSymbolFields.ApplicationRef].AsString();
114 set => this.Set((int)IIsWebSiteSymbolFields.ApplicationRef, value);
115 }
116
117 public int? Sequence
118 {
119 get => this.Fields[(int)IIsWebSiteSymbolFields.Sequence].AsNullableNumber();
120 set => this.Set((int)IIsWebSiteSymbolFields.Sequence, value);
121 }
122
123 public string LogRef
124 {
125 get => this.Fields[(int)IIsWebSiteSymbolFields.LogRef].AsString();
126 set => this.Set((int)IIsWebSiteSymbolFields.LogRef, value);
127 }
128
129 public string WebsiteId
130 {
131 get => this.Fields[(int)IIsWebSiteSymbolFields.WebsiteId].AsString();
132 set => this.Set((int)IIsWebSiteSymbolFields.WebsiteId, value);
133 }
134 }
135} \ No newline at end of file
diff --git a/src/ext/Iis/wixext/Symbols/IIsWebVirtualDirSymbol.cs b/src/ext/Iis/wixext/Symbols/IIsWebVirtualDirSymbol.cs
new file mode 100644
index 00000000..bfc29e84
--- /dev/null
+++ b/src/ext/Iis/wixext/Symbols/IIsWebVirtualDirSymbol.cs
@@ -0,0 +1,87 @@
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.Iis
4{
5 using WixToolset.Data;
6 using WixToolset.Iis.Symbols;
7
8 public static partial class IisSymbolDefinitions
9 {
10 public static readonly IntermediateSymbolDefinition IIsWebVirtualDir = new IntermediateSymbolDefinition(
11 IisSymbolDefinitionType.IIsWebVirtualDir.ToString(),
12 new[]
13 {
14 new IntermediateFieldDefinition(nameof(IIsWebVirtualDirSymbolFields.ComponentRef), IntermediateFieldType.String),
15 new IntermediateFieldDefinition(nameof(IIsWebVirtualDirSymbolFields.WebRef), IntermediateFieldType.String),
16 new IntermediateFieldDefinition(nameof(IIsWebVirtualDirSymbolFields.Alias), IntermediateFieldType.String),
17 new IntermediateFieldDefinition(nameof(IIsWebVirtualDirSymbolFields.DirectoryRef), IntermediateFieldType.String),
18 new IntermediateFieldDefinition(nameof(IIsWebVirtualDirSymbolFields.DirPropertiesRef), IntermediateFieldType.String),
19 new IntermediateFieldDefinition(nameof(IIsWebVirtualDirSymbolFields.ApplicationRef), IntermediateFieldType.String),
20 },
21 typeof(IIsWebVirtualDirSymbol));
22 }
23}
24
25namespace WixToolset.Iis.Symbols
26{
27 using WixToolset.Data;
28
29 public enum IIsWebVirtualDirSymbolFields
30 {
31 ComponentRef,
32 WebRef,
33 Alias,
34 DirectoryRef,
35 DirPropertiesRef,
36 ApplicationRef,
37 }
38
39 public class IIsWebVirtualDirSymbol : IntermediateSymbol
40 {
41 public IIsWebVirtualDirSymbol() : base(IisSymbolDefinitions.IIsWebVirtualDir, null, null)
42 {
43 }
44
45 public IIsWebVirtualDirSymbol(SourceLineNumber sourceLineNumber, Identifier id = null) : base(IisSymbolDefinitions.IIsWebVirtualDir, sourceLineNumber, id)
46 {
47 }
48
49 public IntermediateField this[IIsWebVirtualDirSymbolFields index] => this.Fields[(int)index];
50
51 public string ComponentRef
52 {
53 get => this.Fields[(int)IIsWebVirtualDirSymbolFields.ComponentRef].AsString();
54 set => this.Set((int)IIsWebVirtualDirSymbolFields.ComponentRef, value);
55 }
56
57 public string WebRef
58 {
59 get => this.Fields[(int)IIsWebVirtualDirSymbolFields.WebRef].AsString();
60 set => this.Set((int)IIsWebVirtualDirSymbolFields.WebRef, value);
61 }
62
63 public string Alias
64 {
65 get => this.Fields[(int)IIsWebVirtualDirSymbolFields.Alias].AsString();
66 set => this.Set((int)IIsWebVirtualDirSymbolFields.Alias, value);
67 }
68
69 public string DirectoryRef
70 {
71 get => this.Fields[(int)IIsWebVirtualDirSymbolFields.DirectoryRef].AsString();
72 set => this.Set((int)IIsWebVirtualDirSymbolFields.DirectoryRef, value);
73 }
74
75 public string DirPropertiesRef
76 {
77 get => this.Fields[(int)IIsWebVirtualDirSymbolFields.DirPropertiesRef].AsString();
78 set => this.Set((int)IIsWebVirtualDirSymbolFields.DirPropertiesRef, value);
79 }
80
81 public string ApplicationRef
82 {
83 get => this.Fields[(int)IIsWebVirtualDirSymbolFields.ApplicationRef].AsString();
84 set => this.Set((int)IIsWebVirtualDirSymbolFields.ApplicationRef, value);
85 }
86 }
87} \ No newline at end of file
diff --git a/src/ext/Iis/wixext/Symbols/IisSymbolDefinitions.cs b/src/ext/Iis/wixext/Symbols/IisSymbolDefinitions.cs
new file mode 100644
index 00000000..d6ed80a2
--- /dev/null
+++ b/src/ext/Iis/wixext/Symbols/IisSymbolDefinitions.cs
@@ -0,0 +1,107 @@
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.Iis
4{
5 using System;
6 using WixToolset.Data;
7
8 public enum IisSymbolDefinitionType
9 {
10 Certificate,
11 CertificateHash,
12 IIsAppPool,
13 IIsFilter,
14 IIsHttpHeader,
15 IIsMimeMap,
16 IIsProperty,
17 IIsWebAddress,
18 IIsWebApplication,
19 IIsWebApplicationExtension,
20 IIsWebDir,
21 IIsWebDirProperties,
22 IIsWebError,
23 IIsWebLog,
24 IIsWebServiceExtension,
25 IIsWebSite,
26 IIsWebSiteCertificates,
27 IIsWebVirtualDir,
28 }
29
30 public static partial class IisSymbolDefinitions
31 {
32 public static readonly Version Version = new Version("4.0.0");
33
34 public static IntermediateSymbolDefinition ByName(string name)
35 {
36 if (!Enum.TryParse(name, out IisSymbolDefinitionType type))
37 {
38 return null;
39 }
40
41 return ByType(type);
42 }
43
44 public static IntermediateSymbolDefinition ByType(IisSymbolDefinitionType type)
45 {
46 switch (type)
47 {
48 case IisSymbolDefinitionType.Certificate:
49 return IisSymbolDefinitions.Certificate;
50
51 case IisSymbolDefinitionType.CertificateHash:
52 return IisSymbolDefinitions.CertificateHash;
53
54 case IisSymbolDefinitionType.IIsAppPool:
55 return IisSymbolDefinitions.IIsAppPool;
56
57 case IisSymbolDefinitionType.IIsFilter:
58 return IisSymbolDefinitions.IIsFilter;
59
60 case IisSymbolDefinitionType.IIsHttpHeader:
61 return IisSymbolDefinitions.IIsHttpHeader;
62
63 case IisSymbolDefinitionType.IIsMimeMap:
64 return IisSymbolDefinitions.IIsMimeMap;
65
66 case IisSymbolDefinitionType.IIsProperty:
67 return IisSymbolDefinitions.IIsProperty;
68
69 case IisSymbolDefinitionType.IIsWebAddress:
70 return IisSymbolDefinitions.IIsWebAddress;
71
72 case IisSymbolDefinitionType.IIsWebApplication:
73 return IisSymbolDefinitions.IIsWebApplication;
74
75 case IisSymbolDefinitionType.IIsWebApplicationExtension:
76 return IisSymbolDefinitions.IIsWebApplicationExtension;
77
78 case IisSymbolDefinitionType.IIsWebDir:
79 return IisSymbolDefinitions.IIsWebDir;
80
81 case IisSymbolDefinitionType.IIsWebDirProperties:
82 return IisSymbolDefinitions.IIsWebDirProperties;
83
84 case IisSymbolDefinitionType.IIsWebError:
85 return IisSymbolDefinitions.IIsWebError;
86
87 case IisSymbolDefinitionType.IIsWebLog:
88 return IisSymbolDefinitions.IIsWebLog;
89
90 case IisSymbolDefinitionType.IIsWebServiceExtension:
91 return IisSymbolDefinitions.IIsWebServiceExtension;
92
93 case IisSymbolDefinitionType.IIsWebSite:
94 return IisSymbolDefinitions.IIsWebSite;
95
96 case IisSymbolDefinitionType.IIsWebSiteCertificates:
97 return IisSymbolDefinitions.IIsWebSiteCertificates;
98
99 case IisSymbolDefinitionType.IIsWebVirtualDir:
100 return IisSymbolDefinitions.IIsWebVirtualDir;
101
102 default:
103 throw new ArgumentOutOfRangeException(nameof(type));
104 }
105 }
106 }
107}