aboutsummaryrefslogtreecommitdiff
diff options
context:
space:
mode:
authorSean Hall <r.sean.hall@gmail.com>2019-01-06 20:09:31 -0600
committerSean Hall <r.sean.hall@gmail.com>2019-01-06 20:09:31 -0600
commit3ff6c0bc2c613b7db6c2732661050c94d36eeb37 (patch)
treeeef586cb72d38524daffa09a746113696333cfc2
parent8f70bee13a22cc8b8b1a76825c5051100c9bdd2f (diff)
downloadwix-3ff6c0bc2c613b7db6c2732661050c94d36eeb37.tar.gz
wix-3ff6c0bc2c613b7db6c2732661050c94d36eeb37.tar.bz2
wix-3ff6c0bc2c613b7db6c2732661050c94d36eeb37.zip
Add messages, add tuple definitions, and fix test.
-rw-r--r--src/test/WixToolsetTest.Iis/IisExtensionFixture.cs4
-rw-r--r--src/test/WixToolsetTest.Iis/TestData/UsingIis/Package.wxs4
-rw-r--r--src/test/WixToolsetTest.Iis/TestData/UsingIis/PackageComponents.wxs1
-rw-r--r--src/wixext/IIsExtensionData.cs2
-rw-r--r--src/wixext/IisErrors.cs98
-rw-r--r--src/wixext/IisWarnings.cs30
-rw-r--r--src/wixext/Tuples/CertificateHashTuple.cs55
-rw-r--r--src/wixext/Tuples/CertificateTuple.cs111
-rw-r--r--src/wixext/Tuples/IIsAppPoolTuple.cs167
-rw-r--r--src/wixext/Tuples/IIsFilterTuple.cs103
-rw-r--r--src/wixext/Tuples/IIsHttpHeaderTuple.cs95
-rw-r--r--src/wixext/Tuples/IIsMimeMapTuple.cs79
-rw-r--r--src/wixext/Tuples/IIsPropertyTuple.cs71
-rw-r--r--src/wixext/Tuples/IIsWebAddressTuple.cs87
-rw-r--r--src/wixext/Tuples/IIsWebApplicationExtensionTuple.cs79
-rw-r--r--src/wixext/Tuples/IIsWebApplicationTuple.cs135
-rw-r--r--src/wixext/Tuples/IIsWebDirPropertiesTuple.cs159
-rw-r--r--src/wixext/Tuples/IIsWebDirTuple.cs87
-rw-r--r--src/wixext/Tuples/IIsWebErrorTuple.cs87
-rw-r--r--src/wixext/Tuples/IIsWebLogTuple.cs55
-rw-r--r--src/wixext/Tuples/IIsWebServiceExtensionTuple.cs87
-rw-r--r--src/wixext/Tuples/IIsWebSiteCertificatesTuple.cs55
-rw-r--r--src/wixext/Tuples/IIsWebSiteTuple.cs143
-rw-r--r--src/wixext/Tuples/IIsWebVirtualDirTuple.cs95
-rw-r--r--src/wixext/Tuples/IisTupleDefinitions.cs107
25 files changed, 1956 insertions, 40 deletions
diff --git a/src/test/WixToolsetTest.Iis/IisExtensionFixture.cs b/src/test/WixToolsetTest.Iis/IisExtensionFixture.cs
index 2adb2e93..5aa3f866 100644
--- a/src/test/WixToolsetTest.Iis/IisExtensionFixture.cs
+++ b/src/test/WixToolsetTest.Iis/IisExtensionFixture.cs
@@ -11,7 +11,7 @@ namespace WixToolsetTest.Iis
11 public class IisExtensionFixture 11 public class IisExtensionFixture
12 { 12 {
13 [Fact] 13 [Fact]
14 public void CanBuildUsingFileShare() 14 public void CanBuildUsingIIsWebAddress()
15 { 15 {
16 var folder = TestData.Get(@"TestData\UsingIis"); 16 var folder = TestData.Get(@"TestData\UsingIis");
17 var build = new Builder(folder, typeof(IisExtensionFactory), new[] { folder }); 17 var build = new Builder(folder, typeof(IisExtensionFactory), new[] { folder });
@@ -19,7 +19,7 @@ namespace WixToolsetTest.Iis
19 var results = build.BuildAndQuery(Build, "IIsWebAddress"); 19 var results = build.BuildAndQuery(Build, "IIsWebAddress");
20 Assert.Equal(new[] 20 Assert.Equal(new[]
21 { 21 {
22 "IIsWebAddress:", 22 "IIsWebAddress:TestAddress\tTest\t\t[PORT]\t\t0",
23 }, results.OrderBy(s => s).ToArray()); 23 }, results.OrderBy(s => s).ToArray());
24 } 24 }
25 25
diff --git a/src/test/WixToolsetTest.Iis/TestData/UsingIis/Package.wxs b/src/test/WixToolsetTest.Iis/TestData/UsingIis/Package.wxs
index 68ff98fd..7ae8f082 100644
--- a/src/test/WixToolsetTest.Iis/TestData/UsingIis/Package.wxs
+++ b/src/test/WixToolsetTest.Iis/TestData/UsingIis/Package.wxs
@@ -15,7 +15,9 @@
15 <Fragment> 15 <Fragment>
16 <Directory Id="TARGETDIR" Name="SourceDir"> 16 <Directory Id="TARGETDIR" Name="SourceDir">
17 <Directory Id="ProgramFilesFolder"> 17 <Directory Id="ProgramFilesFolder">
18 <Directory Id="INSTALLFOLDER" Name="MsiPackage" /> 18 <Directory Id="INSTALLFOLDER" Name="MsiPackage">
19 <Directory Id="TestWebSiteProductDirectory" />
20 </Directory>
19 </Directory> 21 </Directory>
20 </Directory> 22 </Directory>
21 </Fragment> 23 </Fragment>
diff --git a/src/test/WixToolsetTest.Iis/TestData/UsingIis/PackageComponents.wxs b/src/test/WixToolsetTest.Iis/TestData/UsingIis/PackageComponents.wxs
index 29c6956d..03203b50 100644
--- a/src/test/WixToolsetTest.Iis/TestData/UsingIis/PackageComponents.wxs
+++ b/src/test/WixToolsetTest.Iis/TestData/UsingIis/PackageComponents.wxs
@@ -11,5 +11,6 @@
11 </iis:WebSite> 11 </iis:WebSite>
12 </Component> 12 </Component>
13 </ComponentGroup> 13 </ComponentGroup>
14 <iis:WebDirProperties Id="ReadAndExecute" />
14 </Fragment> 15 </Fragment>
15</Wix> 16</Wix>
diff --git a/src/wixext/IIsExtensionData.cs b/src/wixext/IIsExtensionData.cs
index 799ea71e..d1696a89 100644
--- a/src/wixext/IIsExtensionData.cs
+++ b/src/wixext/IIsExtensionData.cs
@@ -18,7 +18,7 @@ namespace WixToolset.Iis
18 18
19 public override bool TryGetTupleDefinitionByName(string name, out IntermediateTupleDefinition tupleDefinition) 19 public override bool TryGetTupleDefinitionByName(string name, out IntermediateTupleDefinition tupleDefinition)
20 { 20 {
21 tupleDefinition = null; 21 tupleDefinition = IisTupleDefinitions.ByName(name);
22 return tupleDefinition != null; 22 return tupleDefinition != null;
23 } 23 }
24 24
diff --git a/src/wixext/IisErrors.cs b/src/wixext/IisErrors.cs
index 874c5609..e38d7807 100644
--- a/src/wixext/IisErrors.cs
+++ b/src/wixext/IisErrors.cs
@@ -1,70 +1,96 @@
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. 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 2
3namespace WixToolset.Iis 3namespace WixToolset.Data
4{ 4{
5 using System; 5 using System;
6 using WixToolset.Data; 6 using System.Resources;
7 7
8 public static class IIsErrors 8 public static class IIsErrors
9 { 9 {
10 public static Message MimeMapExtensionMissingPeriod(SourceLineNumber sourceLineNumbers, string elementName, string attributeName, string attributeValue) 10 public static Message CannotHarvestWebSite()
11 {
12 return Message(null, Ids.CannotHarvestWebSite, "Cannot harvest website. On Windows Vista, you must install IIS 6 Management Compatibility.");
13 }
14
15 public static Message DeprecatedBinaryChildElement(SourceLineNumber sourceLineNumbers, string elementName)
11 { 16 {
12 throw new NotImplementedException(); 17 return Message(sourceLineNumbers, Ids.DeprecatedBinaryChildElement, "The {0} element contains a deprecated child Binary element. Please move the Binary element under a Fragment, Module, or Product element and set the {0}/@BinaryKey attribute to the value of the Binary/@Id attribute.", elementName);
13 } 18 }
14 19
15 public static Message IllegalAttributeWithoutComponent(SourceLineNumber sourceLineNumbers, string elementName, string attributeName) 20 public static Message IllegalAttributeWithoutComponent(SourceLineNumber sourceLineNumbers, string elementName, string attributeName)
16 { 21 {
17 throw new NotImplementedException(); 22 return Message(sourceLineNumbers, Ids.IllegalAttributeWithoutComponent, "The {0}/@{1} attribute cannot be specified unless the element has a Component as an ancestor. A {0} that does not have a Component ancestor is not installed.", elementName, attributeName);
18 } 23 }
19 24
25 public static Message IllegalCharacterInAttributeValue(SourceLineNumber sourceLineNumbers, string elementName, string attributeName, string value, Char illegalCharacter)
26 {
27 return Message(sourceLineNumbers, Ids.IllegalCharacterInAttributeValue, "The {0}/@{1} attribute's value, '{2}', is invalid. It cannot contain the character '{3}'.", elementName, attributeName, value, illegalCharacter);
28 }
29
20 public static Message IllegalElementWithoutComponent(SourceLineNumber sourceLineNumbers, string elementName) 30 public static Message IllegalElementWithoutComponent(SourceLineNumber sourceLineNumbers, string elementName)
21 { 31 {
22 throw new NotImplementedException(); 32 return Message(sourceLineNumbers, Ids.IllegalElementWithoutComponent, "The {0} element cannot be specified unless the element has a Component as an ancestor. A {0} that does not have a Component ancestor is not installed.", elementName);
23 } 33 }
24 34
25 public static Message OneOfAttributesRequiredUnderComponent(SourceLineNumber sourceLineNumbers, string elementName, string attributeName1, string attributeName2, string attributeName3, string attributeName4) 35 public static Message InsufficientPermissionHarvestWebSite()
26 { 36 {
27 throw new NotImplementedException(); 37 return Message(null, Ids.InsufficientPermissionHarvestWebSite, "Not enough permissions to harvest website. On Windows Vista, you must run Heat elevated.");
28 } 38 }
29 39
30 public static Message WebSiteAttributeUnderWebSite(SourceLineNumber sourceLineNumbers, string elementName) 40 public static Message MimeMapExtensionMissingPeriod(SourceLineNumber sourceLineNumbers, string elementName, string attributeName, string attributeValue)
31 { 41 {
32 throw new NotImplementedException(); 42 return Message(sourceLineNumbers, Ids.MimeMapExtensionMissingPeriod, "The {0}/@{1} attribute's value, '{2}', is not a valid mime map extension. It must begin with a period.", elementName, attributeName, attributeValue);
33 } 43 }
34 44
35 public static Message WebApplicationAlreadySpecified(SourceLineNumber sourceLineNumbers, string elementName) 45 public static Message OneOfAttributesRequiredUnderComponent(SourceLineNumber sourceLineNumbers, string elementName, string attributeName1, string attributeName2, string attributeName3, string attributeName4)
36 { 46 {
37 throw new NotImplementedException(); 47 return Message(sourceLineNumbers, Ids.OneOfAttributesRequiredUnderComponent, "When nested under a Component, the {0} element must have one of the following attributes specified: {1}, {2}, {3} or {4}.", elementName, attributeName1, attributeName2, attributeName3, attributeName4);
38 } 48 }
39 49
40 public static Message IllegalCharacterInAttributeValue(SourceLineNumber sourceLineNumbers, string elementName, string attributeName, string value, char illegalCharacter) 50 public static Message RequiredAttributeUnderComponent(SourceLineNumber sourceLineNumbers, string elementName, string attributeName)
41 { 51 {
42 throw new NotImplementedException(); 52 return Message(sourceLineNumbers, Ids.RequiredAttributeUnderComponent, "The {0}/@{1} attribute must be specified when the element has a Component as an ancestor.", elementName, attributeName);
43 } 53 }
44 54
45 public static Message DeprecatedBinaryChildElement(SourceLineNumber sourceLineNumbers, string elementName) 55 public static Message WebApplicationAlreadySpecified(SourceLineNumber sourceLineNumbers, string elementName)
56 {
57 return Message(sourceLineNumbers, Ids.WebApplicationAlreadySpecified, "The {0} element can have at most a single WebApplication specified. This can be either through the WebApplication attribute, or through a nested WebApplication element, but not both.", elementName);
58 }
59
60 public static Message WebSiteAttributeUnderWebSite(SourceLineNumber sourceLineNumbers, string elementName)
46 { 61 {
47 throw new NotImplementedException(); 62 return Message(sourceLineNumbers, Ids.WebSiteAttributeUnderWebSite, "The {0}/@WebSite attribute cannot be specified when the {0} element is nested under a WebSite element.", elementName);
48 } 63 }
49 64
50 public static Message WebSiteNotFound(string webSiteDescription) 65 public static Message WebSiteNotFound(string webSiteDescription)
51 { 66 {
52 throw new NotImplementedException(); 67 return Message(null, Ids.WebSiteNotFound, "The web site '{0}' could not be found. Please check that the web site exists, and that it is spelled correctly (please note, you must use the correct case).", webSiteDescription);
53 } 68 }
54 69
55 public static Message InsufficientPermissionHarvestWebSite() 70 private static Message Message(SourceLineNumber sourceLineNumber, Ids id, string format, params object[] args)
56 { 71 {
57 throw new NotImplementedException(); 72 return new Message(sourceLineNumber, MessageLevel.Error, (int)id, format, args);
58 } 73 }
59 74
60 public static Message CannotHarvestWebSite() 75 private static Message Message(SourceLineNumber sourceLineNumber, Ids id, ResourceManager resourceManager, string resourceName, params object[] args)
61 { 76 {
62 throw new NotImplementedException(); 77 return new Message(sourceLineNumber, MessageLevel.Error, (int)id, resourceManager, resourceName, args);
63 } 78 }
64 79
65 public static Message RequiredAttributeUnderComponent(SourceLineNumber sourceLineNumbers, string elementName, string attributeName) 80 public enum Ids
66 { 81 {
67 throw new NotImplementedException(); 82 MimeMapExtensionMissingPeriod = 5150,
83 IllegalAttributeWithoutComponent = 5151,
84 IllegalElementWithoutComponent = 5152,
85 OneOfAttributesRequiredUnderComponent = 5153,
86 WebSiteAttributeUnderWebSite = 5154,
87 WebApplicationAlreadySpecified = 5155,
88 IllegalCharacterInAttributeValue = 5156,
89 DeprecatedBinaryChildElement = 5157,
90 WebSiteNotFound = 5158,
91 InsufficientPermissionHarvestWebSite = 5159,
92 CannotHarvestWebSite = 5160,
93 RequiredAttributeUnderComponent = 5161,
68 } 94 }
69 } 95 }
70} \ No newline at end of file 96}
diff --git a/src/wixext/IisWarnings.cs b/src/wixext/IisWarnings.cs
new file mode 100644
index 00000000..0b833f68
--- /dev/null
+++ b/src/wixext/IisWarnings.cs
@@ -0,0 +1,30 @@
1// Copyright (c) .NET Foundation and contributors. All rights reserved. Licensed under the Microsoft Reciprocal License. See LICENSE.TXT file in the project root for full license information.
2
3namespace WixToolset.Data
4{
5 using System;
6 using System.Resources;
7
8 public static class IIsWarnings
9 {
10 public static Message EncounteredNullDirectoryForWebSite(string directory)
11 {
12 return Message(null, Ids.EncounteredNullDirectoryForWebSite, "Could not harvest website directory: {0}. Please update the output with the appropriate directory ID before using.", directory);
13 }
14
15 private static Message Message(SourceLineNumber sourceLineNumber, Ids id, string format, params object[] args)
16 {
17 return new Message(sourceLineNumber, MessageLevel.Warning, (int)id, format, args);
18 }
19
20 private static Message Message(SourceLineNumber sourceLineNumber, Ids id, ResourceManager resourceManager, string resourceName, params object[] args)
21 {
22 return new Message(sourceLineNumber, MessageLevel.Warning, (int)id, resourceManager, resourceName, args);
23 }
24
25 public enum Ids
26 {
27 EncounteredNullDirectoryForWebSite = 5400,
28 }
29 }
30}
diff --git a/src/wixext/Tuples/CertificateHashTuple.cs b/src/wixext/Tuples/CertificateHashTuple.cs
new file mode 100644
index 00000000..6df4c88c
--- /dev/null
+++ b/src/wixext/Tuples/CertificateHashTuple.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.Tuples;
7
8 public static partial class IisTupleDefinitions
9 {
10 public static readonly IntermediateTupleDefinition CertificateHash = new IntermediateTupleDefinition(
11 IisTupleDefinitionType.CertificateHash.ToString(),
12 new[]
13 {
14 new IntermediateFieldDefinition(nameof(CertificateHashTupleFields.Certificate_), IntermediateFieldType.String),
15 new IntermediateFieldDefinition(nameof(CertificateHashTupleFields.Hash), IntermediateFieldType.String),
16 },
17 typeof(CertificateHashTuple));
18 }
19}
20
21namespace WixToolset.Iis.Tuples
22{
23 using WixToolset.Data;
24
25 public enum CertificateHashTupleFields
26 {
27 Certificate_,
28 Hash,
29 }
30
31 public class CertificateHashTuple : IntermediateTuple
32 {
33 public CertificateHashTuple() : base(IisTupleDefinitions.CertificateHash, null, null)
34 {
35 }
36
37 public CertificateHashTuple(SourceLineNumber sourceLineNumber, Identifier id = null) : base(IisTupleDefinitions.CertificateHash, sourceLineNumber, id)
38 {
39 }
40
41 public IntermediateField this[CertificateHashTupleFields index] => this.Fields[(int)index];
42
43 public string Certificate_
44 {
45 get => this.Fields[(int)CertificateHashTupleFields.Certificate_].AsString();
46 set => this.Set((int)CertificateHashTupleFields.Certificate_, value);
47 }
48
49 public string Hash
50 {
51 get => this.Fields[(int)CertificateHashTupleFields.Hash].AsString();
52 set => this.Set((int)CertificateHashTupleFields.Hash, value);
53 }
54 }
55} \ No newline at end of file
diff --git a/src/wixext/Tuples/CertificateTuple.cs b/src/wixext/Tuples/CertificateTuple.cs
new file mode 100644
index 00000000..9e04b783
--- /dev/null
+++ b/src/wixext/Tuples/CertificateTuple.cs
@@ -0,0 +1,111 @@
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.Tuples;
7
8 public static partial class IisTupleDefinitions
9 {
10 public static readonly IntermediateTupleDefinition Certificate = new IntermediateTupleDefinition(
11 IisTupleDefinitionType.Certificate.ToString(),
12 new[]
13 {
14 new IntermediateFieldDefinition(nameof(CertificateTupleFields.Certificate), IntermediateFieldType.String),
15 new IntermediateFieldDefinition(nameof(CertificateTupleFields.Component_), IntermediateFieldType.String),
16 new IntermediateFieldDefinition(nameof(CertificateTupleFields.Name), IntermediateFieldType.String),
17 new IntermediateFieldDefinition(nameof(CertificateTupleFields.StoreLocation), IntermediateFieldType.Number),
18 new IntermediateFieldDefinition(nameof(CertificateTupleFields.StoreName), IntermediateFieldType.String),
19 new IntermediateFieldDefinition(nameof(CertificateTupleFields.Attributes), IntermediateFieldType.Number),
20 new IntermediateFieldDefinition(nameof(CertificateTupleFields.Binary_), IntermediateFieldType.String),
21 new IntermediateFieldDefinition(nameof(CertificateTupleFields.CertificatePath), IntermediateFieldType.String),
22 new IntermediateFieldDefinition(nameof(CertificateTupleFields.PFXPassword), IntermediateFieldType.String),
23 },
24 typeof(CertificateTuple));
25 }
26}
27
28namespace WixToolset.Iis.Tuples
29{
30 using WixToolset.Data;
31
32 public enum CertificateTupleFields
33 {
34 Certificate,
35 Component_,
36 Name,
37 StoreLocation,
38 StoreName,
39 Attributes,
40 Binary_,
41 CertificatePath,
42 PFXPassword,
43 }
44
45 public class CertificateTuple : IntermediateTuple
46 {
47 public CertificateTuple() : base(IisTupleDefinitions.Certificate, null, null)
48 {
49 }
50
51 public CertificateTuple(SourceLineNumber sourceLineNumber, Identifier id = null) : base(IisTupleDefinitions.Certificate, sourceLineNumber, id)
52 {
53 }
54
55 public IntermediateField this[CertificateTupleFields index] => this.Fields[(int)index];
56
57 public string Certificate
58 {
59 get => this.Fields[(int)CertificateTupleFields.Certificate].AsString();
60 set => this.Set((int)CertificateTupleFields.Certificate, value);
61 }
62
63 public string Component_
64 {
65 get => this.Fields[(int)CertificateTupleFields.Component_].AsString();
66 set => this.Set((int)CertificateTupleFields.Component_, value);
67 }
68
69 public string Name
70 {
71 get => this.Fields[(int)CertificateTupleFields.Name].AsString();
72 set => this.Set((int)CertificateTupleFields.Name, value);
73 }
74
75 public int StoreLocation
76 {
77 get => this.Fields[(int)CertificateTupleFields.StoreLocation].AsNumber();
78 set => this.Set((int)CertificateTupleFields.StoreLocation, value);
79 }
80
81 public string StoreName
82 {
83 get => this.Fields[(int)CertificateTupleFields.StoreName].AsString();
84 set => this.Set((int)CertificateTupleFields.StoreName, value);
85 }
86
87 public int Attributes
88 {
89 get => this.Fields[(int)CertificateTupleFields.Attributes].AsNumber();
90 set => this.Set((int)CertificateTupleFields.Attributes, value);
91 }
92
93 public string Binary_
94 {
95 get => this.Fields[(int)CertificateTupleFields.Binary_].AsString();
96 set => this.Set((int)CertificateTupleFields.Binary_, value);
97 }
98
99 public string CertificatePath
100 {
101 get => this.Fields[(int)CertificateTupleFields.CertificatePath].AsString();
102 set => this.Set((int)CertificateTupleFields.CertificatePath, value);
103 }
104
105 public string PFXPassword
106 {
107 get => this.Fields[(int)CertificateTupleFields.PFXPassword].AsString();
108 set => this.Set((int)CertificateTupleFields.PFXPassword, value);
109 }
110 }
111} \ No newline at end of file
diff --git a/src/wixext/Tuples/IIsAppPoolTuple.cs b/src/wixext/Tuples/IIsAppPoolTuple.cs
new file mode 100644
index 00000000..10a00f50
--- /dev/null
+++ b/src/wixext/Tuples/IIsAppPoolTuple.cs
@@ -0,0 +1,167 @@
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.Tuples;
7
8 public static partial class IisTupleDefinitions
9 {
10 public static readonly IntermediateTupleDefinition IIsAppPool = new IntermediateTupleDefinition(
11 IisTupleDefinitionType.IIsAppPool.ToString(),
12 new[]
13 {
14 new IntermediateFieldDefinition(nameof(IIsAppPoolTupleFields.AppPool), IntermediateFieldType.String),
15 new IntermediateFieldDefinition(nameof(IIsAppPoolTupleFields.Name), IntermediateFieldType.String),
16 new IntermediateFieldDefinition(nameof(IIsAppPoolTupleFields.Component_), IntermediateFieldType.String),
17 new IntermediateFieldDefinition(nameof(IIsAppPoolTupleFields.Attributes), IntermediateFieldType.Number),
18 new IntermediateFieldDefinition(nameof(IIsAppPoolTupleFields.User_), IntermediateFieldType.String),
19 new IntermediateFieldDefinition(nameof(IIsAppPoolTupleFields.RecycleMinutes), IntermediateFieldType.Number),
20 new IntermediateFieldDefinition(nameof(IIsAppPoolTupleFields.RecycleRequests), IntermediateFieldType.Number),
21 new IntermediateFieldDefinition(nameof(IIsAppPoolTupleFields.RecycleTimes), IntermediateFieldType.String),
22 new IntermediateFieldDefinition(nameof(IIsAppPoolTupleFields.IdleTimeout), IntermediateFieldType.Number),
23 new IntermediateFieldDefinition(nameof(IIsAppPoolTupleFields.QueueLimit), IntermediateFieldType.Number),
24 new IntermediateFieldDefinition(nameof(IIsAppPoolTupleFields.CPUMon), IntermediateFieldType.String),
25 new IntermediateFieldDefinition(nameof(IIsAppPoolTupleFields.MaxProc), IntermediateFieldType.Number),
26 new IntermediateFieldDefinition(nameof(IIsAppPoolTupleFields.VirtualMemory), IntermediateFieldType.Number),
27 new IntermediateFieldDefinition(nameof(IIsAppPoolTupleFields.PrivateMemory), IntermediateFieldType.Number),
28 new IntermediateFieldDefinition(nameof(IIsAppPoolTupleFields.ManagedRuntimeVersion), IntermediateFieldType.String),
29 new IntermediateFieldDefinition(nameof(IIsAppPoolTupleFields.ManagedPipelineMode), IntermediateFieldType.String),
30 },
31 typeof(IIsAppPoolTuple));
32 }
33}
34
35namespace WixToolset.Iis.Tuples
36{
37 using WixToolset.Data;
38
39 public enum IIsAppPoolTupleFields
40 {
41 AppPool,
42 Name,
43 Component_,
44 Attributes,
45 User_,
46 RecycleMinutes,
47 RecycleRequests,
48 RecycleTimes,
49 IdleTimeout,
50 QueueLimit,
51 CPUMon,
52 MaxProc,
53 VirtualMemory,
54 PrivateMemory,
55 ManagedRuntimeVersion,
56 ManagedPipelineMode,
57 }
58
59 public class IIsAppPoolTuple : IntermediateTuple
60 {
61 public IIsAppPoolTuple() : base(IisTupleDefinitions.IIsAppPool, null, null)
62 {
63 }
64
65 public IIsAppPoolTuple(SourceLineNumber sourceLineNumber, Identifier id = null) : base(IisTupleDefinitions.IIsAppPool, sourceLineNumber, id)
66 {
67 }
68
69 public IntermediateField this[IIsAppPoolTupleFields index] => this.Fields[(int)index];
70
71 public string AppPool
72 {
73 get => this.Fields[(int)IIsAppPoolTupleFields.AppPool].AsString();
74 set => this.Set((int)IIsAppPoolTupleFields.AppPool, value);
75 }
76
77 public string Name
78 {
79 get => this.Fields[(int)IIsAppPoolTupleFields.Name].AsString();
80 set => this.Set((int)IIsAppPoolTupleFields.Name, value);
81 }
82
83 public string Component_
84 {
85 get => this.Fields[(int)IIsAppPoolTupleFields.Component_].AsString();
86 set => this.Set((int)IIsAppPoolTupleFields.Component_, value);
87 }
88
89 public int Attributes
90 {
91 get => this.Fields[(int)IIsAppPoolTupleFields.Attributes].AsNumber();
92 set => this.Set((int)IIsAppPoolTupleFields.Attributes, value);
93 }
94
95 public string User_
96 {
97 get => this.Fields[(int)IIsAppPoolTupleFields.User_].AsString();
98 set => this.Set((int)IIsAppPoolTupleFields.User_, value);
99 }
100
101 public int RecycleMinutes
102 {
103 get => this.Fields[(int)IIsAppPoolTupleFields.RecycleMinutes].AsNumber();
104 set => this.Set((int)IIsAppPoolTupleFields.RecycleMinutes, value);
105 }
106
107 public int RecycleRequests
108 {
109 get => this.Fields[(int)IIsAppPoolTupleFields.RecycleRequests].AsNumber();
110 set => this.Set((int)IIsAppPoolTupleFields.RecycleRequests, value);
111 }
112
113 public string RecycleTimes
114 {
115 get => this.Fields[(int)IIsAppPoolTupleFields.RecycleTimes].AsString();
116 set => this.Set((int)IIsAppPoolTupleFields.RecycleTimes, value);
117 }
118
119 public int IdleTimeout
120 {
121 get => this.Fields[(int)IIsAppPoolTupleFields.IdleTimeout].AsNumber();
122 set => this.Set((int)IIsAppPoolTupleFields.IdleTimeout, value);
123 }
124
125 public int QueueLimit
126 {
127 get => this.Fields[(int)IIsAppPoolTupleFields.QueueLimit].AsNumber();
128 set => this.Set((int)IIsAppPoolTupleFields.QueueLimit, value);
129 }
130
131 public string CPUMon
132 {
133 get => this.Fields[(int)IIsAppPoolTupleFields.CPUMon].AsString();
134 set => this.Set((int)IIsAppPoolTupleFields.CPUMon, value);
135 }
136
137 public int MaxProc
138 {
139 get => this.Fields[(int)IIsAppPoolTupleFields.MaxProc].AsNumber();
140 set => this.Set((int)IIsAppPoolTupleFields.MaxProc, value);
141 }
142
143 public int VirtualMemory
144 {
145 get => this.Fields[(int)IIsAppPoolTupleFields.VirtualMemory].AsNumber();
146 set => this.Set((int)IIsAppPoolTupleFields.VirtualMemory, value);
147 }
148
149 public int PrivateMemory
150 {
151 get => this.Fields[(int)IIsAppPoolTupleFields.PrivateMemory].AsNumber();
152 set => this.Set((int)IIsAppPoolTupleFields.PrivateMemory, value);
153 }
154
155 public string ManagedRuntimeVersion
156 {
157 get => this.Fields[(int)IIsAppPoolTupleFields.ManagedRuntimeVersion].AsString();
158 set => this.Set((int)IIsAppPoolTupleFields.ManagedRuntimeVersion, value);
159 }
160
161 public string ManagedPipelineMode
162 {
163 get => this.Fields[(int)IIsAppPoolTupleFields.ManagedPipelineMode].AsString();
164 set => this.Set((int)IIsAppPoolTupleFields.ManagedPipelineMode, value);
165 }
166 }
167} \ No newline at end of file
diff --git a/src/wixext/Tuples/IIsFilterTuple.cs b/src/wixext/Tuples/IIsFilterTuple.cs
new file mode 100644
index 00000000..9c651144
--- /dev/null
+++ b/src/wixext/Tuples/IIsFilterTuple.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.Tuples;
7
8 public static partial class IisTupleDefinitions
9 {
10 public static readonly IntermediateTupleDefinition IIsFilter = new IntermediateTupleDefinition(
11 IisTupleDefinitionType.IIsFilter.ToString(),
12 new[]
13 {
14 new IntermediateFieldDefinition(nameof(IIsFilterTupleFields.Filter), IntermediateFieldType.String),
15 new IntermediateFieldDefinition(nameof(IIsFilterTupleFields.Name), IntermediateFieldType.String),
16 new IntermediateFieldDefinition(nameof(IIsFilterTupleFields.Component_), IntermediateFieldType.String),
17 new IntermediateFieldDefinition(nameof(IIsFilterTupleFields.Path), IntermediateFieldType.String),
18 new IntermediateFieldDefinition(nameof(IIsFilterTupleFields.Web_), IntermediateFieldType.String),
19 new IntermediateFieldDefinition(nameof(IIsFilterTupleFields.Description), IntermediateFieldType.String),
20 new IntermediateFieldDefinition(nameof(IIsFilterTupleFields.Flags), IntermediateFieldType.Number),
21 new IntermediateFieldDefinition(nameof(IIsFilterTupleFields.LoadOrder), IntermediateFieldType.Number),
22 },
23 typeof(IIsFilterTuple));
24 }
25}
26
27namespace WixToolset.Iis.Tuples
28{
29 using WixToolset.Data;
30
31 public enum IIsFilterTupleFields
32 {
33 Filter,
34 Name,
35 Component_,
36 Path,
37 Web_,
38 Description,
39 Flags,
40 LoadOrder,
41 }
42
43 public class IIsFilterTuple : IntermediateTuple
44 {
45 public IIsFilterTuple() : base(IisTupleDefinitions.IIsFilter, null, null)
46 {
47 }
48
49 public IIsFilterTuple(SourceLineNumber sourceLineNumber, Identifier id = null) : base(IisTupleDefinitions.IIsFilter, sourceLineNumber, id)
50 {
51 }
52
53 public IntermediateField this[IIsFilterTupleFields index] => this.Fields[(int)index];
54
55 public string Filter
56 {
57 get => this.Fields[(int)IIsFilterTupleFields.Filter].AsString();
58 set => this.Set((int)IIsFilterTupleFields.Filter, value);
59 }
60
61 public string Name
62 {
63 get => this.Fields[(int)IIsFilterTupleFields.Name].AsString();
64 set => this.Set((int)IIsFilterTupleFields.Name, value);
65 }
66
67 public string Component_
68 {
69 get => this.Fields[(int)IIsFilterTupleFields.Component_].AsString();
70 set => this.Set((int)IIsFilterTupleFields.Component_, value);
71 }
72
73 public string Path
74 {
75 get => this.Fields[(int)IIsFilterTupleFields.Path].AsString();
76 set => this.Set((int)IIsFilterTupleFields.Path, value);
77 }
78
79 public string Web_
80 {
81 get => this.Fields[(int)IIsFilterTupleFields.Web_].AsString();
82 set => this.Set((int)IIsFilterTupleFields.Web_, value);
83 }
84
85 public string Description
86 {
87 get => this.Fields[(int)IIsFilterTupleFields.Description].AsString();
88 set => this.Set((int)IIsFilterTupleFields.Description, value);
89 }
90
91 public int Flags
92 {
93 get => this.Fields[(int)IIsFilterTupleFields.Flags].AsNumber();
94 set => this.Set((int)IIsFilterTupleFields.Flags, value);
95 }
96
97 public int LoadOrder
98 {
99 get => this.Fields[(int)IIsFilterTupleFields.LoadOrder].AsNumber();
100 set => this.Set((int)IIsFilterTupleFields.LoadOrder, value);
101 }
102 }
103} \ No newline at end of file
diff --git a/src/wixext/Tuples/IIsHttpHeaderTuple.cs b/src/wixext/Tuples/IIsHttpHeaderTuple.cs
new file mode 100644
index 00000000..3d0e029c
--- /dev/null
+++ b/src/wixext/Tuples/IIsHttpHeaderTuple.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.Tuples;
7
8 public static partial class IisTupleDefinitions
9 {
10 public static readonly IntermediateTupleDefinition IIsHttpHeader = new IntermediateTupleDefinition(
11 IisTupleDefinitionType.IIsHttpHeader.ToString(),
12 new[]
13 {
14 new IntermediateFieldDefinition(nameof(IIsHttpHeaderTupleFields.HttpHeader), IntermediateFieldType.String),
15 new IntermediateFieldDefinition(nameof(IIsHttpHeaderTupleFields.ParentType), IntermediateFieldType.Number),
16 new IntermediateFieldDefinition(nameof(IIsHttpHeaderTupleFields.ParentValue), IntermediateFieldType.String),
17 new IntermediateFieldDefinition(nameof(IIsHttpHeaderTupleFields.Name), IntermediateFieldType.String),
18 new IntermediateFieldDefinition(nameof(IIsHttpHeaderTupleFields.Value), IntermediateFieldType.String),
19 new IntermediateFieldDefinition(nameof(IIsHttpHeaderTupleFields.Attributes), IntermediateFieldType.Number),
20 new IntermediateFieldDefinition(nameof(IIsHttpHeaderTupleFields.Sequence), IntermediateFieldType.Number),
21 },
22 typeof(IIsHttpHeaderTuple));
23 }
24}
25
26namespace WixToolset.Iis.Tuples
27{
28 using WixToolset.Data;
29
30 public enum IIsHttpHeaderTupleFields
31 {
32 HttpHeader,
33 ParentType,
34 ParentValue,
35 Name,
36 Value,
37 Attributes,
38 Sequence,
39 }
40
41 public class IIsHttpHeaderTuple : IntermediateTuple
42 {
43 public IIsHttpHeaderTuple() : base(IisTupleDefinitions.IIsHttpHeader, null, null)
44 {
45 }
46
47 public IIsHttpHeaderTuple(SourceLineNumber sourceLineNumber, Identifier id = null) : base(IisTupleDefinitions.IIsHttpHeader, sourceLineNumber, id)
48 {
49 }
50
51 public IntermediateField this[IIsHttpHeaderTupleFields index] => this.Fields[(int)index];
52
53 public string HttpHeader
54 {
55 get => this.Fields[(int)IIsHttpHeaderTupleFields.HttpHeader].AsString();
56 set => this.Set((int)IIsHttpHeaderTupleFields.HttpHeader, value);
57 }
58
59 public int ParentType
60 {
61 get => this.Fields[(int)IIsHttpHeaderTupleFields.ParentType].AsNumber();
62 set => this.Set((int)IIsHttpHeaderTupleFields.ParentType, value);
63 }
64
65 public string ParentValue
66 {
67 get => this.Fields[(int)IIsHttpHeaderTupleFields.ParentValue].AsString();
68 set => this.Set((int)IIsHttpHeaderTupleFields.ParentValue, value);
69 }
70
71 public string Name
72 {
73 get => this.Fields[(int)IIsHttpHeaderTupleFields.Name].AsString();
74 set => this.Set((int)IIsHttpHeaderTupleFields.Name, value);
75 }
76
77 public string Value
78 {
79 get => this.Fields[(int)IIsHttpHeaderTupleFields.Value].AsString();
80 set => this.Set((int)IIsHttpHeaderTupleFields.Value, value);
81 }
82
83 public int Attributes
84 {
85 get => this.Fields[(int)IIsHttpHeaderTupleFields.Attributes].AsNumber();
86 set => this.Set((int)IIsHttpHeaderTupleFields.Attributes, value);
87 }
88
89 public int Sequence
90 {
91 get => this.Fields[(int)IIsHttpHeaderTupleFields.Sequence].AsNumber();
92 set => this.Set((int)IIsHttpHeaderTupleFields.Sequence, value);
93 }
94 }
95} \ No newline at end of file
diff --git a/src/wixext/Tuples/IIsMimeMapTuple.cs b/src/wixext/Tuples/IIsMimeMapTuple.cs
new file mode 100644
index 00000000..c27aef21
--- /dev/null
+++ b/src/wixext/Tuples/IIsMimeMapTuple.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.Tuples;
7
8 public static partial class IisTupleDefinitions
9 {
10 public static readonly IntermediateTupleDefinition IIsMimeMap = new IntermediateTupleDefinition(
11 IisTupleDefinitionType.IIsMimeMap.ToString(),
12 new[]
13 {
14 new IntermediateFieldDefinition(nameof(IIsMimeMapTupleFields.MimeMap), IntermediateFieldType.String),
15 new IntermediateFieldDefinition(nameof(IIsMimeMapTupleFields.ParentType), IntermediateFieldType.Number),
16 new IntermediateFieldDefinition(nameof(IIsMimeMapTupleFields.ParentValue), IntermediateFieldType.String),
17 new IntermediateFieldDefinition(nameof(IIsMimeMapTupleFields.MimeType), IntermediateFieldType.String),
18 new IntermediateFieldDefinition(nameof(IIsMimeMapTupleFields.Extension), IntermediateFieldType.String),
19 },
20 typeof(IIsMimeMapTuple));
21 }
22}
23
24namespace WixToolset.Iis.Tuples
25{
26 using WixToolset.Data;
27
28 public enum IIsMimeMapTupleFields
29 {
30 MimeMap,
31 ParentType,
32 ParentValue,
33 MimeType,
34 Extension,
35 }
36
37 public class IIsMimeMapTuple : IntermediateTuple
38 {
39 public IIsMimeMapTuple() : base(IisTupleDefinitions.IIsMimeMap, null, null)
40 {
41 }
42
43 public IIsMimeMapTuple(SourceLineNumber sourceLineNumber, Identifier id = null) : base(IisTupleDefinitions.IIsMimeMap, sourceLineNumber, id)
44 {
45 }
46
47 public IntermediateField this[IIsMimeMapTupleFields index] => this.Fields[(int)index];
48
49 public string MimeMap
50 {
51 get => this.Fields[(int)IIsMimeMapTupleFields.MimeMap].AsString();
52 set => this.Set((int)IIsMimeMapTupleFields.MimeMap, value);
53 }
54
55 public int ParentType
56 {
57 get => this.Fields[(int)IIsMimeMapTupleFields.ParentType].AsNumber();
58 set => this.Set((int)IIsMimeMapTupleFields.ParentType, value);
59 }
60
61 public string ParentValue
62 {
63 get => this.Fields[(int)IIsMimeMapTupleFields.ParentValue].AsString();
64 set => this.Set((int)IIsMimeMapTupleFields.ParentValue, value);
65 }
66
67 public string MimeType
68 {
69 get => this.Fields[(int)IIsMimeMapTupleFields.MimeType].AsString();
70 set => this.Set((int)IIsMimeMapTupleFields.MimeType, value);
71 }
72
73 public string Extension
74 {
75 get => this.Fields[(int)IIsMimeMapTupleFields.Extension].AsString();
76 set => this.Set((int)IIsMimeMapTupleFields.Extension, value);
77 }
78 }
79} \ No newline at end of file
diff --git a/src/wixext/Tuples/IIsPropertyTuple.cs b/src/wixext/Tuples/IIsPropertyTuple.cs
new file mode 100644
index 00000000..b02a0b4a
--- /dev/null
+++ b/src/wixext/Tuples/IIsPropertyTuple.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.Tuples;
7
8 public static partial class IisTupleDefinitions
9 {
10 public static readonly IntermediateTupleDefinition IIsProperty = new IntermediateTupleDefinition(
11 IisTupleDefinitionType.IIsProperty.ToString(),
12 new[]
13 {
14 new IntermediateFieldDefinition(nameof(IIsPropertyTupleFields.Property), IntermediateFieldType.String),
15 new IntermediateFieldDefinition(nameof(IIsPropertyTupleFields.Component_), IntermediateFieldType.String),
16 new IntermediateFieldDefinition(nameof(IIsPropertyTupleFields.Attributes), IntermediateFieldType.Number),
17 new IntermediateFieldDefinition(nameof(IIsPropertyTupleFields.Value), IntermediateFieldType.String),
18 },
19 typeof(IIsPropertyTuple));
20 }
21}
22
23namespace WixToolset.Iis.Tuples
24{
25 using WixToolset.Data;
26
27 public enum IIsPropertyTupleFields
28 {
29 Property,
30 Component_,
31 Attributes,
32 Value,
33 }
34
35 public class IIsPropertyTuple : IntermediateTuple
36 {
37 public IIsPropertyTuple() : base(IisTupleDefinitions.IIsProperty, null, null)
38 {
39 }
40
41 public IIsPropertyTuple(SourceLineNumber sourceLineNumber, Identifier id = null) : base(IisTupleDefinitions.IIsProperty, sourceLineNumber, id)
42 {
43 }
44
45 public IntermediateField this[IIsPropertyTupleFields index] => this.Fields[(int)index];
46
47 public string Property
48 {
49 get => this.Fields[(int)IIsPropertyTupleFields.Property].AsString();
50 set => this.Set((int)IIsPropertyTupleFields.Property, value);
51 }
52
53 public string Component_
54 {
55 get => this.Fields[(int)IIsPropertyTupleFields.Component_].AsString();
56 set => this.Set((int)IIsPropertyTupleFields.Component_, value);
57 }
58
59 public int Attributes
60 {
61 get => this.Fields[(int)IIsPropertyTupleFields.Attributes].AsNumber();
62 set => this.Set((int)IIsPropertyTupleFields.Attributes, value);
63 }
64
65 public string Value
66 {
67 get => this.Fields[(int)IIsPropertyTupleFields.Value].AsString();
68 set => this.Set((int)IIsPropertyTupleFields.Value, value);
69 }
70 }
71} \ No newline at end of file
diff --git a/src/wixext/Tuples/IIsWebAddressTuple.cs b/src/wixext/Tuples/IIsWebAddressTuple.cs
new file mode 100644
index 00000000..cb50b207
--- /dev/null
+++ b/src/wixext/Tuples/IIsWebAddressTuple.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.Tuples;
7
8 public static partial class IisTupleDefinitions
9 {
10 public static readonly IntermediateTupleDefinition IIsWebAddress = new IntermediateTupleDefinition(
11 IisTupleDefinitionType.IIsWebAddress.ToString(),
12 new[]
13 {
14 new IntermediateFieldDefinition(nameof(IIsWebAddressTupleFields.Address), IntermediateFieldType.String),
15 new IntermediateFieldDefinition(nameof(IIsWebAddressTupleFields.Web_), IntermediateFieldType.String),
16 new IntermediateFieldDefinition(nameof(IIsWebAddressTupleFields.IP), IntermediateFieldType.String),
17 new IntermediateFieldDefinition(nameof(IIsWebAddressTupleFields.Port), IntermediateFieldType.String),
18 new IntermediateFieldDefinition(nameof(IIsWebAddressTupleFields.Header), IntermediateFieldType.String),
19 new IntermediateFieldDefinition(nameof(IIsWebAddressTupleFields.Secure), IntermediateFieldType.Number),
20 },
21 typeof(IIsWebAddressTuple));
22 }
23}
24
25namespace WixToolset.Iis.Tuples
26{
27 using WixToolset.Data;
28
29 public enum IIsWebAddressTupleFields
30 {
31 Address,
32 Web_,
33 IP,
34 Port,
35 Header,
36 Secure,
37 }
38
39 public class IIsWebAddressTuple : IntermediateTuple
40 {
41 public IIsWebAddressTuple() : base(IisTupleDefinitions.IIsWebAddress, null, null)
42 {
43 }
44
45 public IIsWebAddressTuple(SourceLineNumber sourceLineNumber, Identifier id = null) : base(IisTupleDefinitions.IIsWebAddress, sourceLineNumber, id)
46 {
47 }
48
49 public IntermediateField this[IIsWebAddressTupleFields index] => this.Fields[(int)index];
50
51 public string Address
52 {
53 get => this.Fields[(int)IIsWebAddressTupleFields.Address].AsString();
54 set => this.Set((int)IIsWebAddressTupleFields.Address, value);
55 }
56
57 public string Web_
58 {
59 get => this.Fields[(int)IIsWebAddressTupleFields.Web_].AsString();
60 set => this.Set((int)IIsWebAddressTupleFields.Web_, value);
61 }
62
63 public string IP
64 {
65 get => this.Fields[(int)IIsWebAddressTupleFields.IP].AsString();
66 set => this.Set((int)IIsWebAddressTupleFields.IP, value);
67 }
68
69 public string Port
70 {
71 get => this.Fields[(int)IIsWebAddressTupleFields.Port].AsString();
72 set => this.Set((int)IIsWebAddressTupleFields.Port, value);
73 }
74
75 public string Header
76 {
77 get => this.Fields[(int)IIsWebAddressTupleFields.Header].AsString();
78 set => this.Set((int)IIsWebAddressTupleFields.Header, value);
79 }
80
81 public int Secure
82 {
83 get => this.Fields[(int)IIsWebAddressTupleFields.Secure].AsNumber();
84 set => this.Set((int)IIsWebAddressTupleFields.Secure, value);
85 }
86 }
87} \ No newline at end of file
diff --git a/src/wixext/Tuples/IIsWebApplicationExtensionTuple.cs b/src/wixext/Tuples/IIsWebApplicationExtensionTuple.cs
new file mode 100644
index 00000000..5ae60f57
--- /dev/null
+++ b/src/wixext/Tuples/IIsWebApplicationExtensionTuple.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.Tuples;
7
8 public static partial class IisTupleDefinitions
9 {
10 public static readonly IntermediateTupleDefinition IIsWebApplicationExtension = new IntermediateTupleDefinition(
11 IisTupleDefinitionType.IIsWebApplicationExtension.ToString(),
12 new[]
13 {
14 new IntermediateFieldDefinition(nameof(IIsWebApplicationExtensionTupleFields.Application_), IntermediateFieldType.String),
15 new IntermediateFieldDefinition(nameof(IIsWebApplicationExtensionTupleFields.Extension), IntermediateFieldType.String),
16 new IntermediateFieldDefinition(nameof(IIsWebApplicationExtensionTupleFields.Verbs), IntermediateFieldType.String),
17 new IntermediateFieldDefinition(nameof(IIsWebApplicationExtensionTupleFields.Executable), IntermediateFieldType.String),
18 new IntermediateFieldDefinition(nameof(IIsWebApplicationExtensionTupleFields.Attributes), IntermediateFieldType.Number),
19 },
20 typeof(IIsWebApplicationExtensionTuple));
21 }
22}
23
24namespace WixToolset.Iis.Tuples
25{
26 using WixToolset.Data;
27
28 public enum IIsWebApplicationExtensionTupleFields
29 {
30 Application_,
31 Extension,
32 Verbs,
33 Executable,
34 Attributes,
35 }
36
37 public class IIsWebApplicationExtensionTuple : IntermediateTuple
38 {
39 public IIsWebApplicationExtensionTuple() : base(IisTupleDefinitions.IIsWebApplicationExtension, null, null)
40 {
41 }
42
43 public IIsWebApplicationExtensionTuple(SourceLineNumber sourceLineNumber, Identifier id = null) : base(IisTupleDefinitions.IIsWebApplicationExtension, sourceLineNumber, id)
44 {
45 }
46
47 public IntermediateField this[IIsWebApplicationExtensionTupleFields index] => this.Fields[(int)index];
48
49 public string Application_
50 {
51 get => this.Fields[(int)IIsWebApplicationExtensionTupleFields.Application_].AsString();
52 set => this.Set((int)IIsWebApplicationExtensionTupleFields.Application_, value);
53 }
54
55 public string Extension
56 {
57 get => this.Fields[(int)IIsWebApplicationExtensionTupleFields.Extension].AsString();
58 set => this.Set((int)IIsWebApplicationExtensionTupleFields.Extension, value);
59 }
60
61 public string Verbs
62 {
63 get => this.Fields[(int)IIsWebApplicationExtensionTupleFields.Verbs].AsString();
64 set => this.Set((int)IIsWebApplicationExtensionTupleFields.Verbs, value);
65 }
66
67 public string Executable
68 {
69 get => this.Fields[(int)IIsWebApplicationExtensionTupleFields.Executable].AsString();
70 set => this.Set((int)IIsWebApplicationExtensionTupleFields.Executable, value);
71 }
72
73 public int Attributes
74 {
75 get => this.Fields[(int)IIsWebApplicationExtensionTupleFields.Attributes].AsNumber();
76 set => this.Set((int)IIsWebApplicationExtensionTupleFields.Attributes, value);
77 }
78 }
79} \ No newline at end of file
diff --git a/src/wixext/Tuples/IIsWebApplicationTuple.cs b/src/wixext/Tuples/IIsWebApplicationTuple.cs
new file mode 100644
index 00000000..403969b7
--- /dev/null
+++ b/src/wixext/Tuples/IIsWebApplicationTuple.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.Tuples;
7
8 public static partial class IisTupleDefinitions
9 {
10 public static readonly IntermediateTupleDefinition IIsWebApplication = new IntermediateTupleDefinition(
11 IisTupleDefinitionType.IIsWebApplication.ToString(),
12 new[]
13 {
14 new IntermediateFieldDefinition(nameof(IIsWebApplicationTupleFields.Application), IntermediateFieldType.String),
15 new IntermediateFieldDefinition(nameof(IIsWebApplicationTupleFields.Name), IntermediateFieldType.String),
16 new IntermediateFieldDefinition(nameof(IIsWebApplicationTupleFields.Isolation), IntermediateFieldType.Number),
17 new IntermediateFieldDefinition(nameof(IIsWebApplicationTupleFields.AllowSessions), IntermediateFieldType.Number),
18 new IntermediateFieldDefinition(nameof(IIsWebApplicationTupleFields.SessionTimeout), IntermediateFieldType.Number),
19 new IntermediateFieldDefinition(nameof(IIsWebApplicationTupleFields.Buffer), IntermediateFieldType.Number),
20 new IntermediateFieldDefinition(nameof(IIsWebApplicationTupleFields.ParentPaths), IntermediateFieldType.Number),
21 new IntermediateFieldDefinition(nameof(IIsWebApplicationTupleFields.DefaultScript), IntermediateFieldType.String),
22 new IntermediateFieldDefinition(nameof(IIsWebApplicationTupleFields.ScriptTimeout), IntermediateFieldType.Number),
23 new IntermediateFieldDefinition(nameof(IIsWebApplicationTupleFields.ServerDebugging), IntermediateFieldType.Number),
24 new IntermediateFieldDefinition(nameof(IIsWebApplicationTupleFields.ClientDebugging), IntermediateFieldType.Number),
25 new IntermediateFieldDefinition(nameof(IIsWebApplicationTupleFields.AppPool_), IntermediateFieldType.String),
26 },
27 typeof(IIsWebApplicationTuple));
28 }
29}
30
31namespace WixToolset.Iis.Tuples
32{
33 using WixToolset.Data;
34
35 public enum IIsWebApplicationTupleFields
36 {
37 Application,
38 Name,
39 Isolation,
40 AllowSessions,
41 SessionTimeout,
42 Buffer,
43 ParentPaths,
44 DefaultScript,
45 ScriptTimeout,
46 ServerDebugging,
47 ClientDebugging,
48 AppPool_,
49 }
50
51 public class IIsWebApplicationTuple : IntermediateTuple
52 {
53 public IIsWebApplicationTuple() : base(IisTupleDefinitions.IIsWebApplication, null, null)
54 {
55 }
56
57 public IIsWebApplicationTuple(SourceLineNumber sourceLineNumber, Identifier id = null) : base(IisTupleDefinitions.IIsWebApplication, sourceLineNumber, id)
58 {
59 }
60
61 public IntermediateField this[IIsWebApplicationTupleFields index] => this.Fields[(int)index];
62
63 public string Application
64 {
65 get => this.Fields[(int)IIsWebApplicationTupleFields.Application].AsString();
66 set => this.Set((int)IIsWebApplicationTupleFields.Application, value);
67 }
68
69 public string Name
70 {
71 get => this.Fields[(int)IIsWebApplicationTupleFields.Name].AsString();
72 set => this.Set((int)IIsWebApplicationTupleFields.Name, value);
73 }
74
75 public int Isolation
76 {
77 get => this.Fields[(int)IIsWebApplicationTupleFields.Isolation].AsNumber();
78 set => this.Set((int)IIsWebApplicationTupleFields.Isolation, value);
79 }
80
81 public int AllowSessions
82 {
83 get => this.Fields[(int)IIsWebApplicationTupleFields.AllowSessions].AsNumber();
84 set => this.Set((int)IIsWebApplicationTupleFields.AllowSessions, value);
85 }
86
87 public int SessionTimeout
88 {
89 get => this.Fields[(int)IIsWebApplicationTupleFields.SessionTimeout].AsNumber();
90 set => this.Set((int)IIsWebApplicationTupleFields.SessionTimeout, value);
91 }
92
93 public int Buffer
94 {
95 get => this.Fields[(int)IIsWebApplicationTupleFields.Buffer].AsNumber();
96 set => this.Set((int)IIsWebApplicationTupleFields.Buffer, value);
97 }
98
99 public int ParentPaths
100 {
101 get => this.Fields[(int)IIsWebApplicationTupleFields.ParentPaths].AsNumber();
102 set => this.Set((int)IIsWebApplicationTupleFields.ParentPaths, value);
103 }
104
105 public string DefaultScript
106 {
107 get => this.Fields[(int)IIsWebApplicationTupleFields.DefaultScript].AsString();
108 set => this.Set((int)IIsWebApplicationTupleFields.DefaultScript, value);
109 }
110
111 public int ScriptTimeout
112 {
113 get => this.Fields[(int)IIsWebApplicationTupleFields.ScriptTimeout].AsNumber();
114 set => this.Set((int)IIsWebApplicationTupleFields.ScriptTimeout, value);
115 }
116
117 public int ServerDebugging
118 {
119 get => this.Fields[(int)IIsWebApplicationTupleFields.ServerDebugging].AsNumber();
120 set => this.Set((int)IIsWebApplicationTupleFields.ServerDebugging, value);
121 }
122
123 public int ClientDebugging
124 {
125 get => this.Fields[(int)IIsWebApplicationTupleFields.ClientDebugging].AsNumber();
126 set => this.Set((int)IIsWebApplicationTupleFields.ClientDebugging, value);
127 }
128
129 public string AppPool_
130 {
131 get => this.Fields[(int)IIsWebApplicationTupleFields.AppPool_].AsString();
132 set => this.Set((int)IIsWebApplicationTupleFields.AppPool_, value);
133 }
134 }
135} \ No newline at end of file
diff --git a/src/wixext/Tuples/IIsWebDirPropertiesTuple.cs b/src/wixext/Tuples/IIsWebDirPropertiesTuple.cs
new file mode 100644
index 00000000..9e723775
--- /dev/null
+++ b/src/wixext/Tuples/IIsWebDirPropertiesTuple.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.Tuples;
7
8 public static partial class IisTupleDefinitions
9 {
10 public static readonly IntermediateTupleDefinition IIsWebDirProperties = new IntermediateTupleDefinition(
11 IisTupleDefinitionType.IIsWebDirProperties.ToString(),
12 new[]
13 {
14 new IntermediateFieldDefinition(nameof(IIsWebDirPropertiesTupleFields.DirProperties), IntermediateFieldType.String),
15 new IntermediateFieldDefinition(nameof(IIsWebDirPropertiesTupleFields.Access), IntermediateFieldType.Number),
16 new IntermediateFieldDefinition(nameof(IIsWebDirPropertiesTupleFields.Authorization), IntermediateFieldType.Number),
17 new IntermediateFieldDefinition(nameof(IIsWebDirPropertiesTupleFields.AnonymousUser_), IntermediateFieldType.String),
18 new IntermediateFieldDefinition(nameof(IIsWebDirPropertiesTupleFields.IIsControlledPassword), IntermediateFieldType.Number),
19 new IntermediateFieldDefinition(nameof(IIsWebDirPropertiesTupleFields.LogVisits), IntermediateFieldType.Number),
20 new IntermediateFieldDefinition(nameof(IIsWebDirPropertiesTupleFields.Index), IntermediateFieldType.Number),
21 new IntermediateFieldDefinition(nameof(IIsWebDirPropertiesTupleFields.DefaultDoc), IntermediateFieldType.String),
22 new IntermediateFieldDefinition(nameof(IIsWebDirPropertiesTupleFields.AspDetailedError), IntermediateFieldType.Number),
23 new IntermediateFieldDefinition(nameof(IIsWebDirPropertiesTupleFields.HttpExpires), IntermediateFieldType.String),
24 new IntermediateFieldDefinition(nameof(IIsWebDirPropertiesTupleFields.CacheControlMaxAge), IntermediateFieldType.Number),
25 new IntermediateFieldDefinition(nameof(IIsWebDirPropertiesTupleFields.CacheControlCustom), IntermediateFieldType.String),
26 new IntermediateFieldDefinition(nameof(IIsWebDirPropertiesTupleFields.NoCustomError), IntermediateFieldType.Number),
27 new IntermediateFieldDefinition(nameof(IIsWebDirPropertiesTupleFields.AccessSSLFlags), IntermediateFieldType.Number),
28 new IntermediateFieldDefinition(nameof(IIsWebDirPropertiesTupleFields.AuthenticationProviders), IntermediateFieldType.String),
29 },
30 typeof(IIsWebDirPropertiesTuple));
31 }
32}
33
34namespace WixToolset.Iis.Tuples
35{
36 using WixToolset.Data;
37
38 public enum IIsWebDirPropertiesTupleFields
39 {
40 DirProperties,
41 Access,
42 Authorization,
43 AnonymousUser_,
44 IIsControlledPassword,
45 LogVisits,
46 Index,
47 DefaultDoc,
48 AspDetailedError,
49 HttpExpires,
50 CacheControlMaxAge,
51 CacheControlCustom,
52 NoCustomError,
53 AccessSSLFlags,
54 AuthenticationProviders,
55 }
56
57 public class IIsWebDirPropertiesTuple : IntermediateTuple
58 {
59 public IIsWebDirPropertiesTuple() : base(IisTupleDefinitions.IIsWebDirProperties, null, null)
60 {
61 }
62
63 public IIsWebDirPropertiesTuple(SourceLineNumber sourceLineNumber, Identifier id = null) : base(IisTupleDefinitions.IIsWebDirProperties, sourceLineNumber, id)
64 {
65 }
66
67 public IntermediateField this[IIsWebDirPropertiesTupleFields index] => this.Fields[(int)index];
68
69 public string DirProperties
70 {
71 get => this.Fields[(int)IIsWebDirPropertiesTupleFields.DirProperties].AsString();
72 set => this.Set((int)IIsWebDirPropertiesTupleFields.DirProperties, value);
73 }
74
75 public int Access
76 {
77 get => this.Fields[(int)IIsWebDirPropertiesTupleFields.Access].AsNumber();
78 set => this.Set((int)IIsWebDirPropertiesTupleFields.Access, value);
79 }
80
81 public int Authorization
82 {
83 get => this.Fields[(int)IIsWebDirPropertiesTupleFields.Authorization].AsNumber();
84 set => this.Set((int)IIsWebDirPropertiesTupleFields.Authorization, value);
85 }
86
87 public string AnonymousUser_
88 {
89 get => this.Fields[(int)IIsWebDirPropertiesTupleFields.AnonymousUser_].AsString();
90 set => this.Set((int)IIsWebDirPropertiesTupleFields.AnonymousUser_, value);
91 }
92
93 public int IIsControlledPassword
94 {
95 get => this.Fields[(int)IIsWebDirPropertiesTupleFields.IIsControlledPassword].AsNumber();
96 set => this.Set((int)IIsWebDirPropertiesTupleFields.IIsControlledPassword, value);
97 }
98
99 public int LogVisits
100 {
101 get => this.Fields[(int)IIsWebDirPropertiesTupleFields.LogVisits].AsNumber();
102 set => this.Set((int)IIsWebDirPropertiesTupleFields.LogVisits, value);
103 }
104
105 public int Index
106 {
107 get => this.Fields[(int)IIsWebDirPropertiesTupleFields.Index].AsNumber();
108 set => this.Set((int)IIsWebDirPropertiesTupleFields.Index, value);
109 }
110
111 public string DefaultDoc
112 {
113 get => this.Fields[(int)IIsWebDirPropertiesTupleFields.DefaultDoc].AsString();
114 set => this.Set((int)IIsWebDirPropertiesTupleFields.DefaultDoc, value);
115 }
116
117 public int AspDetailedError
118 {
119 get => this.Fields[(int)IIsWebDirPropertiesTupleFields.AspDetailedError].AsNumber();
120 set => this.Set((int)IIsWebDirPropertiesTupleFields.AspDetailedError, value);
121 }
122
123 public string HttpExpires
124 {
125 get => this.Fields[(int)IIsWebDirPropertiesTupleFields.HttpExpires].AsString();
126 set => this.Set((int)IIsWebDirPropertiesTupleFields.HttpExpires, value);
127 }
128
129 public int CacheControlMaxAge
130 {
131 get => this.Fields[(int)IIsWebDirPropertiesTupleFields.CacheControlMaxAge].AsNumber();
132 set => this.Set((int)IIsWebDirPropertiesTupleFields.CacheControlMaxAge, value);
133 }
134
135 public string CacheControlCustom
136 {
137 get => this.Fields[(int)IIsWebDirPropertiesTupleFields.CacheControlCustom].AsString();
138 set => this.Set((int)IIsWebDirPropertiesTupleFields.CacheControlCustom, value);
139 }
140
141 public int NoCustomError
142 {
143 get => this.Fields[(int)IIsWebDirPropertiesTupleFields.NoCustomError].AsNumber();
144 set => this.Set((int)IIsWebDirPropertiesTupleFields.NoCustomError, value);
145 }
146
147 public int AccessSSLFlags
148 {
149 get => this.Fields[(int)IIsWebDirPropertiesTupleFields.AccessSSLFlags].AsNumber();
150 set => this.Set((int)IIsWebDirPropertiesTupleFields.AccessSSLFlags, value);
151 }
152
153 public string AuthenticationProviders
154 {
155 get => this.Fields[(int)IIsWebDirPropertiesTupleFields.AuthenticationProviders].AsString();
156 set => this.Set((int)IIsWebDirPropertiesTupleFields.AuthenticationProviders, value);
157 }
158 }
159} \ No newline at end of file
diff --git a/src/wixext/Tuples/IIsWebDirTuple.cs b/src/wixext/Tuples/IIsWebDirTuple.cs
new file mode 100644
index 00000000..6e04b337
--- /dev/null
+++ b/src/wixext/Tuples/IIsWebDirTuple.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.Tuples;
7
8 public static partial class IisTupleDefinitions
9 {
10 public static readonly IntermediateTupleDefinition IIsWebDir = new IntermediateTupleDefinition(
11 IisTupleDefinitionType.IIsWebDir.ToString(),
12 new[]
13 {
14 new IntermediateFieldDefinition(nameof(IIsWebDirTupleFields.WebDir), IntermediateFieldType.String),
15 new IntermediateFieldDefinition(nameof(IIsWebDirTupleFields.Component_), IntermediateFieldType.String),
16 new IntermediateFieldDefinition(nameof(IIsWebDirTupleFields.Web_), IntermediateFieldType.String),
17 new IntermediateFieldDefinition(nameof(IIsWebDirTupleFields.Path), IntermediateFieldType.String),
18 new IntermediateFieldDefinition(nameof(IIsWebDirTupleFields.DirProperties_), IntermediateFieldType.String),
19 new IntermediateFieldDefinition(nameof(IIsWebDirTupleFields.Application_), IntermediateFieldType.String),
20 },
21 typeof(IIsWebDirTuple));
22 }
23}
24
25namespace WixToolset.Iis.Tuples
26{
27 using WixToolset.Data;
28
29 public enum IIsWebDirTupleFields
30 {
31 WebDir,
32 Component_,
33 Web_,
34 Path,
35 DirProperties_,
36 Application_,
37 }
38
39 public class IIsWebDirTuple : IntermediateTuple
40 {
41 public IIsWebDirTuple() : base(IisTupleDefinitions.IIsWebDir, null, null)
42 {
43 }
44
45 public IIsWebDirTuple(SourceLineNumber sourceLineNumber, Identifier id = null) : base(IisTupleDefinitions.IIsWebDir, sourceLineNumber, id)
46 {
47 }
48
49 public IntermediateField this[IIsWebDirTupleFields index] => this.Fields[(int)index];
50
51 public string WebDir
52 {
53 get => this.Fields[(int)IIsWebDirTupleFields.WebDir].AsString();
54 set => this.Set((int)IIsWebDirTupleFields.WebDir, value);
55 }
56
57 public string Component_
58 {
59 get => this.Fields[(int)IIsWebDirTupleFields.Component_].AsString();
60 set => this.Set((int)IIsWebDirTupleFields.Component_, value);
61 }
62
63 public string Web_
64 {
65 get => this.Fields[(int)IIsWebDirTupleFields.Web_].AsString();
66 set => this.Set((int)IIsWebDirTupleFields.Web_, value);
67 }
68
69 public string Path
70 {
71 get => this.Fields[(int)IIsWebDirTupleFields.Path].AsString();
72 set => this.Set((int)IIsWebDirTupleFields.Path, value);
73 }
74
75 public string DirProperties_
76 {
77 get => this.Fields[(int)IIsWebDirTupleFields.DirProperties_].AsString();
78 set => this.Set((int)IIsWebDirTupleFields.DirProperties_, value);
79 }
80
81 public string Application_
82 {
83 get => this.Fields[(int)IIsWebDirTupleFields.Application_].AsString();
84 set => this.Set((int)IIsWebDirTupleFields.Application_, value);
85 }
86 }
87} \ No newline at end of file
diff --git a/src/wixext/Tuples/IIsWebErrorTuple.cs b/src/wixext/Tuples/IIsWebErrorTuple.cs
new file mode 100644
index 00000000..ba6b2722
--- /dev/null
+++ b/src/wixext/Tuples/IIsWebErrorTuple.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.Tuples;
7
8 public static partial class IisTupleDefinitions
9 {
10 public static readonly IntermediateTupleDefinition IIsWebError = new IntermediateTupleDefinition(
11 IisTupleDefinitionType.IIsWebError.ToString(),
12 new[]
13 {
14 new IntermediateFieldDefinition(nameof(IIsWebErrorTupleFields.ErrorCode), IntermediateFieldType.Number),
15 new IntermediateFieldDefinition(nameof(IIsWebErrorTupleFields.SubCode), IntermediateFieldType.Number),
16 new IntermediateFieldDefinition(nameof(IIsWebErrorTupleFields.ParentType), IntermediateFieldType.Number),
17 new IntermediateFieldDefinition(nameof(IIsWebErrorTupleFields.ParentValue), IntermediateFieldType.String),
18 new IntermediateFieldDefinition(nameof(IIsWebErrorTupleFields.File), IntermediateFieldType.String),
19 new IntermediateFieldDefinition(nameof(IIsWebErrorTupleFields.URL), IntermediateFieldType.String),
20 },
21 typeof(IIsWebErrorTuple));
22 }
23}
24
25namespace WixToolset.Iis.Tuples
26{
27 using WixToolset.Data;
28
29 public enum IIsWebErrorTupleFields
30 {
31 ErrorCode,
32 SubCode,
33 ParentType,
34 ParentValue,
35 File,
36 URL,
37 }
38
39 public class IIsWebErrorTuple : IntermediateTuple
40 {
41 public IIsWebErrorTuple() : base(IisTupleDefinitions.IIsWebError, null, null)
42 {
43 }
44
45 public IIsWebErrorTuple(SourceLineNumber sourceLineNumber, Identifier id = null) : base(IisTupleDefinitions.IIsWebError, sourceLineNumber, id)
46 {
47 }
48
49 public IntermediateField this[IIsWebErrorTupleFields index] => this.Fields[(int)index];
50
51 public int ErrorCode
52 {
53 get => this.Fields[(int)IIsWebErrorTupleFields.ErrorCode].AsNumber();
54 set => this.Set((int)IIsWebErrorTupleFields.ErrorCode, value);
55 }
56
57 public int SubCode
58 {
59 get => this.Fields[(int)IIsWebErrorTupleFields.SubCode].AsNumber();
60 set => this.Set((int)IIsWebErrorTupleFields.SubCode, value);
61 }
62
63 public int ParentType
64 {
65 get => this.Fields[(int)IIsWebErrorTupleFields.ParentType].AsNumber();
66 set => this.Set((int)IIsWebErrorTupleFields.ParentType, value);
67 }
68
69 public string ParentValue
70 {
71 get => this.Fields[(int)IIsWebErrorTupleFields.ParentValue].AsString();
72 set => this.Set((int)IIsWebErrorTupleFields.ParentValue, value);
73 }
74
75 public string File
76 {
77 get => this.Fields[(int)IIsWebErrorTupleFields.File].AsString();
78 set => this.Set((int)IIsWebErrorTupleFields.File, value);
79 }
80
81 public string URL
82 {
83 get => this.Fields[(int)IIsWebErrorTupleFields.URL].AsString();
84 set => this.Set((int)IIsWebErrorTupleFields.URL, value);
85 }
86 }
87} \ No newline at end of file
diff --git a/src/wixext/Tuples/IIsWebLogTuple.cs b/src/wixext/Tuples/IIsWebLogTuple.cs
new file mode 100644
index 00000000..1dfe0862
--- /dev/null
+++ b/src/wixext/Tuples/IIsWebLogTuple.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.Tuples;
7
8 public static partial class IisTupleDefinitions
9 {
10 public static readonly IntermediateTupleDefinition IIsWebLog = new IntermediateTupleDefinition(
11 IisTupleDefinitionType.IIsWebLog.ToString(),
12 new[]
13 {
14 new IntermediateFieldDefinition(nameof(IIsWebLogTupleFields.Log), IntermediateFieldType.String),
15 new IntermediateFieldDefinition(nameof(IIsWebLogTupleFields.Format), IntermediateFieldType.String),
16 },
17 typeof(IIsWebLogTuple));
18 }
19}
20
21namespace WixToolset.Iis.Tuples
22{
23 using WixToolset.Data;
24
25 public enum IIsWebLogTupleFields
26 {
27 Log,
28 Format,
29 }
30
31 public class IIsWebLogTuple : IntermediateTuple
32 {
33 public IIsWebLogTuple() : base(IisTupleDefinitions.IIsWebLog, null, null)
34 {
35 }
36
37 public IIsWebLogTuple(SourceLineNumber sourceLineNumber, Identifier id = null) : base(IisTupleDefinitions.IIsWebLog, sourceLineNumber, id)
38 {
39 }
40
41 public IntermediateField this[IIsWebLogTupleFields index] => this.Fields[(int)index];
42
43 public string Log
44 {
45 get => this.Fields[(int)IIsWebLogTupleFields.Log].AsString();
46 set => this.Set((int)IIsWebLogTupleFields.Log, value);
47 }
48
49 public string Format
50 {
51 get => this.Fields[(int)IIsWebLogTupleFields.Format].AsString();
52 set => this.Set((int)IIsWebLogTupleFields.Format, value);
53 }
54 }
55} \ No newline at end of file
diff --git a/src/wixext/Tuples/IIsWebServiceExtensionTuple.cs b/src/wixext/Tuples/IIsWebServiceExtensionTuple.cs
new file mode 100644
index 00000000..a6fec797
--- /dev/null
+++ b/src/wixext/Tuples/IIsWebServiceExtensionTuple.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.Tuples;
7
8 public static partial class IisTupleDefinitions
9 {
10 public static readonly IntermediateTupleDefinition IIsWebServiceExtension = new IntermediateTupleDefinition(
11 IisTupleDefinitionType.IIsWebServiceExtension.ToString(),
12 new[]
13 {
14 new IntermediateFieldDefinition(nameof(IIsWebServiceExtensionTupleFields.WebServiceExtension), IntermediateFieldType.String),
15 new IntermediateFieldDefinition(nameof(IIsWebServiceExtensionTupleFields.Component_), IntermediateFieldType.String),
16 new IntermediateFieldDefinition(nameof(IIsWebServiceExtensionTupleFields.File), IntermediateFieldType.String),
17 new IntermediateFieldDefinition(nameof(IIsWebServiceExtensionTupleFields.Description), IntermediateFieldType.String),
18 new IntermediateFieldDefinition(nameof(IIsWebServiceExtensionTupleFields.Group), IntermediateFieldType.String),
19 new IntermediateFieldDefinition(nameof(IIsWebServiceExtensionTupleFields.Attributes), IntermediateFieldType.Number),
20 },
21 typeof(IIsWebServiceExtensionTuple));
22 }
23}
24
25namespace WixToolset.Iis.Tuples
26{
27 using WixToolset.Data;
28
29 public enum IIsWebServiceExtensionTupleFields
30 {
31 WebServiceExtension,
32 Component_,
33 File,
34 Description,
35 Group,
36 Attributes,
37 }
38
39 public class IIsWebServiceExtensionTuple : IntermediateTuple
40 {
41 public IIsWebServiceExtensionTuple() : base(IisTupleDefinitions.IIsWebServiceExtension, null, null)
42 {
43 }
44
45 public IIsWebServiceExtensionTuple(SourceLineNumber sourceLineNumber, Identifier id = null) : base(IisTupleDefinitions.IIsWebServiceExtension, sourceLineNumber, id)
46 {
47 }
48
49 public IntermediateField this[IIsWebServiceExtensionTupleFields index] => this.Fields[(int)index];
50
51 public string WebServiceExtension
52 {
53 get => this.Fields[(int)IIsWebServiceExtensionTupleFields.WebServiceExtension].AsString();
54 set => this.Set((int)IIsWebServiceExtensionTupleFields.WebServiceExtension, value);
55 }
56
57 public string Component_
58 {
59 get => this.Fields[(int)IIsWebServiceExtensionTupleFields.Component_].AsString();
60 set => this.Set((int)IIsWebServiceExtensionTupleFields.Component_, value);
61 }
62
63 public string File
64 {
65 get => this.Fields[(int)IIsWebServiceExtensionTupleFields.File].AsString();
66 set => this.Set((int)IIsWebServiceExtensionTupleFields.File, value);
67 }
68
69 public string Description
70 {
71 get => this.Fields[(int)IIsWebServiceExtensionTupleFields.Description].AsString();
72 set => this.Set((int)IIsWebServiceExtensionTupleFields.Description, value);
73 }
74
75 public string Group
76 {
77 get => this.Fields[(int)IIsWebServiceExtensionTupleFields.Group].AsString();
78 set => this.Set((int)IIsWebServiceExtensionTupleFields.Group, value);
79 }
80
81 public int Attributes
82 {
83 get => this.Fields[(int)IIsWebServiceExtensionTupleFields.Attributes].AsNumber();
84 set => this.Set((int)IIsWebServiceExtensionTupleFields.Attributes, value);
85 }
86 }
87} \ No newline at end of file
diff --git a/src/wixext/Tuples/IIsWebSiteCertificatesTuple.cs b/src/wixext/Tuples/IIsWebSiteCertificatesTuple.cs
new file mode 100644
index 00000000..711f745f
--- /dev/null
+++ b/src/wixext/Tuples/IIsWebSiteCertificatesTuple.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.Tuples;
7
8 public static partial class IisTupleDefinitions
9 {
10 public static readonly IntermediateTupleDefinition IIsWebSiteCertificates = new IntermediateTupleDefinition(
11 IisTupleDefinitionType.IIsWebSiteCertificates.ToString(),
12 new[]
13 {
14 new IntermediateFieldDefinition(nameof(IIsWebSiteCertificatesTupleFields.Web_), IntermediateFieldType.String),
15 new IntermediateFieldDefinition(nameof(IIsWebSiteCertificatesTupleFields.Certificate_), IntermediateFieldType.String),
16 },
17 typeof(IIsWebSiteCertificatesTuple));
18 }
19}
20
21namespace WixToolset.Iis.Tuples
22{
23 using WixToolset.Data;
24
25 public enum IIsWebSiteCertificatesTupleFields
26 {
27 Web_,
28 Certificate_,
29 }
30
31 public class IIsWebSiteCertificatesTuple : IntermediateTuple
32 {
33 public IIsWebSiteCertificatesTuple() : base(IisTupleDefinitions.IIsWebSiteCertificates, null, null)
34 {
35 }
36
37 public IIsWebSiteCertificatesTuple(SourceLineNumber sourceLineNumber, Identifier id = null) : base(IisTupleDefinitions.IIsWebSiteCertificates, sourceLineNumber, id)
38 {
39 }
40
41 public IntermediateField this[IIsWebSiteCertificatesTupleFields index] => this.Fields[(int)index];
42
43 public string Web_
44 {
45 get => this.Fields[(int)IIsWebSiteCertificatesTupleFields.Web_].AsString();
46 set => this.Set((int)IIsWebSiteCertificatesTupleFields.Web_, value);
47 }
48
49 public string Certificate_
50 {
51 get => this.Fields[(int)IIsWebSiteCertificatesTupleFields.Certificate_].AsString();
52 set => this.Set((int)IIsWebSiteCertificatesTupleFields.Certificate_, value);
53 }
54 }
55} \ No newline at end of file
diff --git a/src/wixext/Tuples/IIsWebSiteTuple.cs b/src/wixext/Tuples/IIsWebSiteTuple.cs
new file mode 100644
index 00000000..983352a5
--- /dev/null
+++ b/src/wixext/Tuples/IIsWebSiteTuple.cs
@@ -0,0 +1,143 @@
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.Tuples;
7
8 public static partial class IisTupleDefinitions
9 {
10 public static readonly IntermediateTupleDefinition IIsWebSite = new IntermediateTupleDefinition(
11 IisTupleDefinitionType.IIsWebSite.ToString(),
12 new[]
13 {
14 new IntermediateFieldDefinition(nameof(IIsWebSiteTupleFields.Web), IntermediateFieldType.String),
15 new IntermediateFieldDefinition(nameof(IIsWebSiteTupleFields.Component_), IntermediateFieldType.String),
16 new IntermediateFieldDefinition(nameof(IIsWebSiteTupleFields.Description), IntermediateFieldType.String),
17 new IntermediateFieldDefinition(nameof(IIsWebSiteTupleFields.ConnectionTimeout), IntermediateFieldType.Number),
18 new IntermediateFieldDefinition(nameof(IIsWebSiteTupleFields.Directory_), IntermediateFieldType.String),
19 new IntermediateFieldDefinition(nameof(IIsWebSiteTupleFields.State), IntermediateFieldType.Number),
20 new IntermediateFieldDefinition(nameof(IIsWebSiteTupleFields.Attributes), IntermediateFieldType.Number),
21 new IntermediateFieldDefinition(nameof(IIsWebSiteTupleFields.KeyAddress_), IntermediateFieldType.String),
22 new IntermediateFieldDefinition(nameof(IIsWebSiteTupleFields.DirProperties_), IntermediateFieldType.String),
23 new IntermediateFieldDefinition(nameof(IIsWebSiteTupleFields.Application_), IntermediateFieldType.String),
24 new IntermediateFieldDefinition(nameof(IIsWebSiteTupleFields.Sequence), IntermediateFieldType.Number),
25 new IntermediateFieldDefinition(nameof(IIsWebSiteTupleFields.Log_), IntermediateFieldType.String),
26 new IntermediateFieldDefinition(nameof(IIsWebSiteTupleFields.WebsiteId), IntermediateFieldType.String),
27 },
28 typeof(IIsWebSiteTuple));
29 }
30}
31
32namespace WixToolset.Iis.Tuples
33{
34 using WixToolset.Data;
35
36 public enum IIsWebSiteTupleFields
37 {
38 Web,
39 Component_,
40 Description,
41 ConnectionTimeout,
42 Directory_,
43 State,
44 Attributes,
45 KeyAddress_,
46 DirProperties_,
47 Application_,
48 Sequence,
49 Log_,
50 WebsiteId,
51 }
52
53 public class IIsWebSiteTuple : IntermediateTuple
54 {
55 public IIsWebSiteTuple() : base(IisTupleDefinitions.IIsWebSite, null, null)
56 {
57 }
58
59 public IIsWebSiteTuple(SourceLineNumber sourceLineNumber, Identifier id = null) : base(IisTupleDefinitions.IIsWebSite, sourceLineNumber, id)
60 {
61 }
62
63 public IntermediateField this[IIsWebSiteTupleFields index] => this.Fields[(int)index];
64
65 public string Web
66 {
67 get => this.Fields[(int)IIsWebSiteTupleFields.Web].AsString();
68 set => this.Set((int)IIsWebSiteTupleFields.Web, value);
69 }
70
71 public string Component_
72 {
73 get => this.Fields[(int)IIsWebSiteTupleFields.Component_].AsString();
74 set => this.Set((int)IIsWebSiteTupleFields.Component_, value);
75 }
76
77 public string Description
78 {
79 get => this.Fields[(int)IIsWebSiteTupleFields.Description].AsString();
80 set => this.Set((int)IIsWebSiteTupleFields.Description, value);
81 }
82
83 public int ConnectionTimeout
84 {
85 get => this.Fields[(int)IIsWebSiteTupleFields.ConnectionTimeout].AsNumber();
86 set => this.Set((int)IIsWebSiteTupleFields.ConnectionTimeout, value);
87 }
88
89 public string Directory_
90 {
91 get => this.Fields[(int)IIsWebSiteTupleFields.Directory_].AsString();
92 set => this.Set((int)IIsWebSiteTupleFields.Directory_, value);
93 }
94
95 public int State
96 {
97 get => this.Fields[(int)IIsWebSiteTupleFields.State].AsNumber();
98 set => this.Set((int)IIsWebSiteTupleFields.State, value);
99 }
100
101 public int Attributes
102 {
103 get => this.Fields[(int)IIsWebSiteTupleFields.Attributes].AsNumber();
104 set => this.Set((int)IIsWebSiteTupleFields.Attributes, value);
105 }
106
107 public string KeyAddress_
108 {
109 get => this.Fields[(int)IIsWebSiteTupleFields.KeyAddress_].AsString();
110 set => this.Set((int)IIsWebSiteTupleFields.KeyAddress_, value);
111 }
112
113 public string DirProperties_
114 {
115 get => this.Fields[(int)IIsWebSiteTupleFields.DirProperties_].AsString();
116 set => this.Set((int)IIsWebSiteTupleFields.DirProperties_, value);
117 }
118
119 public string Application_
120 {
121 get => this.Fields[(int)IIsWebSiteTupleFields.Application_].AsString();
122 set => this.Set((int)IIsWebSiteTupleFields.Application_, value);
123 }
124
125 public int Sequence
126 {
127 get => this.Fields[(int)IIsWebSiteTupleFields.Sequence].AsNumber();
128 set => this.Set((int)IIsWebSiteTupleFields.Sequence, value);
129 }
130
131 public string Log_
132 {
133 get => this.Fields[(int)IIsWebSiteTupleFields.Log_].AsString();
134 set => this.Set((int)IIsWebSiteTupleFields.Log_, value);
135 }
136
137 public string WebsiteId
138 {
139 get => this.Fields[(int)IIsWebSiteTupleFields.WebsiteId].AsString();
140 set => this.Set((int)IIsWebSiteTupleFields.WebsiteId, value);
141 }
142 }
143} \ No newline at end of file
diff --git a/src/wixext/Tuples/IIsWebVirtualDirTuple.cs b/src/wixext/Tuples/IIsWebVirtualDirTuple.cs
new file mode 100644
index 00000000..f80804af
--- /dev/null
+++ b/src/wixext/Tuples/IIsWebVirtualDirTuple.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.Tuples;
7
8 public static partial class IisTupleDefinitions
9 {
10 public static readonly IntermediateTupleDefinition IIsWebVirtualDir = new IntermediateTupleDefinition(
11 IisTupleDefinitionType.IIsWebVirtualDir.ToString(),
12 new[]
13 {
14 new IntermediateFieldDefinition(nameof(IIsWebVirtualDirTupleFields.VirtualDir), IntermediateFieldType.String),
15 new IntermediateFieldDefinition(nameof(IIsWebVirtualDirTupleFields.Component_), IntermediateFieldType.String),
16 new IntermediateFieldDefinition(nameof(IIsWebVirtualDirTupleFields.Web_), IntermediateFieldType.String),
17 new IntermediateFieldDefinition(nameof(IIsWebVirtualDirTupleFields.Alias), IntermediateFieldType.String),
18 new IntermediateFieldDefinition(nameof(IIsWebVirtualDirTupleFields.Directory_), IntermediateFieldType.String),
19 new IntermediateFieldDefinition(nameof(IIsWebVirtualDirTupleFields.DirProperties_), IntermediateFieldType.String),
20 new IntermediateFieldDefinition(nameof(IIsWebVirtualDirTupleFields.Application_), IntermediateFieldType.String),
21 },
22 typeof(IIsWebVirtualDirTuple));
23 }
24}
25
26namespace WixToolset.Iis.Tuples
27{
28 using WixToolset.Data;
29
30 public enum IIsWebVirtualDirTupleFields
31 {
32 VirtualDir,
33 Component_,
34 Web_,
35 Alias,
36 Directory_,
37 DirProperties_,
38 Application_,
39 }
40
41 public class IIsWebVirtualDirTuple : IntermediateTuple
42 {
43 public IIsWebVirtualDirTuple() : base(IisTupleDefinitions.IIsWebVirtualDir, null, null)
44 {
45 }
46
47 public IIsWebVirtualDirTuple(SourceLineNumber sourceLineNumber, Identifier id = null) : base(IisTupleDefinitions.IIsWebVirtualDir, sourceLineNumber, id)
48 {
49 }
50
51 public IntermediateField this[IIsWebVirtualDirTupleFields index] => this.Fields[(int)index];
52
53 public string VirtualDir
54 {
55 get => this.Fields[(int)IIsWebVirtualDirTupleFields.VirtualDir].AsString();
56 set => this.Set((int)IIsWebVirtualDirTupleFields.VirtualDir, value);
57 }
58
59 public string Component_
60 {
61 get => this.Fields[(int)IIsWebVirtualDirTupleFields.Component_].AsString();
62 set => this.Set((int)IIsWebVirtualDirTupleFields.Component_, value);
63 }
64
65 public string Web_
66 {
67 get => this.Fields[(int)IIsWebVirtualDirTupleFields.Web_].AsString();
68 set => this.Set((int)IIsWebVirtualDirTupleFields.Web_, value);
69 }
70
71 public string Alias
72 {
73 get => this.Fields[(int)IIsWebVirtualDirTupleFields.Alias].AsString();
74 set => this.Set((int)IIsWebVirtualDirTupleFields.Alias, value);
75 }
76
77 public string Directory_
78 {
79 get => this.Fields[(int)IIsWebVirtualDirTupleFields.Directory_].AsString();
80 set => this.Set((int)IIsWebVirtualDirTupleFields.Directory_, value);
81 }
82
83 public string DirProperties_
84 {
85 get => this.Fields[(int)IIsWebVirtualDirTupleFields.DirProperties_].AsString();
86 set => this.Set((int)IIsWebVirtualDirTupleFields.DirProperties_, value);
87 }
88
89 public string Application_
90 {
91 get => this.Fields[(int)IIsWebVirtualDirTupleFields.Application_].AsString();
92 set => this.Set((int)IIsWebVirtualDirTupleFields.Application_, value);
93 }
94 }
95} \ No newline at end of file
diff --git a/src/wixext/Tuples/IisTupleDefinitions.cs b/src/wixext/Tuples/IisTupleDefinitions.cs
new file mode 100644
index 00000000..4017fa27
--- /dev/null
+++ b/src/wixext/Tuples/IisTupleDefinitions.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 IisTupleDefinitionType
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 IisTupleDefinitions
31 {
32 public static readonly Version Version = new Version("4.0.0");
33
34 public static IntermediateTupleDefinition ByName(string name)
35 {
36 if (!Enum.TryParse(name, out IisTupleDefinitionType type))
37 {
38 return null;
39 }
40
41 return ByType(type);
42 }
43
44 public static IntermediateTupleDefinition ByType(IisTupleDefinitionType type)
45 {
46 switch (type)
47 {
48 case IisTupleDefinitionType.Certificate:
49 return IisTupleDefinitions.Certificate;
50
51 case IisTupleDefinitionType.CertificateHash:
52 return IisTupleDefinitions.CertificateHash;
53
54 case IisTupleDefinitionType.IIsAppPool:
55 return IisTupleDefinitions.IIsAppPool;
56
57 case IisTupleDefinitionType.IIsFilter:
58 return IisTupleDefinitions.IIsFilter;
59
60 case IisTupleDefinitionType.IIsHttpHeader:
61 return IisTupleDefinitions.IIsHttpHeader;
62
63 case IisTupleDefinitionType.IIsMimeMap:
64 return IisTupleDefinitions.IIsMimeMap;
65
66 case IisTupleDefinitionType.IIsProperty:
67 return IisTupleDefinitions.IIsProperty;
68
69 case IisTupleDefinitionType.IIsWebAddress:
70 return IisTupleDefinitions.IIsWebAddress;
71
72 case IisTupleDefinitionType.IIsWebApplication:
73 return IisTupleDefinitions.IIsWebApplication;
74
75 case IisTupleDefinitionType.IIsWebApplicationExtension:
76 return IisTupleDefinitions.IIsWebApplicationExtension;
77
78 case IisTupleDefinitionType.IIsWebDir:
79 return IisTupleDefinitions.IIsWebDir;
80
81 case IisTupleDefinitionType.IIsWebDirProperties:
82 return IisTupleDefinitions.IIsWebDirProperties;
83
84 case IisTupleDefinitionType.IIsWebError:
85 return IisTupleDefinitions.IIsWebError;
86
87 case IisTupleDefinitionType.IIsWebLog:
88 return IisTupleDefinitions.IIsWebLog;
89
90 case IisTupleDefinitionType.IIsWebServiceExtension:
91 return IisTupleDefinitions.IIsWebServiceExtension;
92
93 case IisTupleDefinitionType.IIsWebSite:
94 return IisTupleDefinitions.IIsWebSite;
95
96 case IisTupleDefinitionType.IIsWebSiteCertificates:
97 return IisTupleDefinitions.IIsWebSiteCertificates;
98
99 case IisTupleDefinitionType.IIsWebVirtualDir:
100 return IisTupleDefinitions.IIsWebVirtualDir;
101
102 default:
103 throw new ArgumentOutOfRangeException(nameof(type));
104 }
105 }
106 }
107}