diff options
| author | Sean Hall <r.sean.hall@gmail.com> | 2020-04-05 21:01:32 +1000 |
|---|---|---|
| committer | Sean Hall <r.sean.hall@gmail.com> | 2020-04-05 21:48:37 +1000 |
| commit | ba3a735e21086722c64caa001d618e5505a2e656 (patch) | |
| tree | 46eb62b56152b2a5d19998f4bca157742cfc4b4d /src | |
| parent | 98eb2a20bb786ec2d2ee4b9bb02e33477d0215c2 (diff) | |
| download | wix-ba3a735e21086722c64caa001d618e5505a2e656.tar.gz wix-ba3a735e21086722c64caa001d618e5505a2e656.tar.bz2 wix-ba3a735e21086722c64caa001d618e5505a2e656.zip | |
Modernize IIsCompiler and tuples.
Diffstat (limited to 'src')
24 files changed, 807 insertions, 848 deletions
diff --git a/src/test/WixToolsetTest.Iis/WixToolsetTest.Iis.csproj b/src/test/WixToolsetTest.Iis/WixToolsetTest.Iis.csproj index 66e4edc6..49ed89bc 100644 --- a/src/test/WixToolsetTest.Iis/WixToolsetTest.Iis.csproj +++ b/src/test/WixToolsetTest.Iis/WixToolsetTest.Iis.csproj | |||
| @@ -3,7 +3,7 @@ | |||
| 3 | 3 | ||
| 4 | <Project Sdk="Microsoft.NET.Sdk"> | 4 | <Project Sdk="Microsoft.NET.Sdk"> |
| 5 | <PropertyGroup> | 5 | <PropertyGroup> |
| 6 | <TargetFramework>netcoreapp2.1</TargetFramework> | 6 | <TargetFramework>netcoreapp3.1</TargetFramework> |
| 7 | <IsPackable>false</IsPackable> | 7 | <IsPackable>false</IsPackable> |
| 8 | </PropertyGroup> | 8 | </PropertyGroup> |
| 9 | 9 | ||
diff --git a/src/wixext/IIsCompiler.cs b/src/wixext/IIsCompiler.cs index e28435b6..f84f8f0a 100644 --- a/src/wixext/IIsCompiler.cs +++ b/src/wixext/IIsCompiler.cs | |||
| @@ -8,6 +8,7 @@ namespace WixToolset.Iis | |||
| 8 | using System.Xml.Linq; | 8 | using System.Xml.Linq; |
| 9 | using WixToolset.Data; | 9 | using WixToolset.Data; |
| 10 | using WixToolset.Extensibility; | 10 | using WixToolset.Extensibility; |
| 11 | using WixToolset.Iis.Tuples; | ||
| 11 | 12 | ||
| 12 | /// <summary> | 13 | /// <summary> |
| 13 | /// The compiler for the WiX Toolset Internet Information Services Extension. | 14 | /// The compiler for the WiX Toolset Internet Information Services Extension. |
| @@ -64,8 +65,8 @@ namespace WixToolset.Iis | |||
| 64 | switch (parentElement.Name.LocalName) | 65 | switch (parentElement.Name.LocalName) |
| 65 | { | 66 | { |
| 66 | case "Component": | 67 | case "Component": |
| 67 | string componentId = context["ComponentId"]; | 68 | var componentId = context["ComponentId"]; |
| 68 | string directoryId = context["DirectoryId"]; | 69 | var directoryId = context["DirectoryId"]; |
| 69 | 70 | ||
| 70 | switch (element.Name.LocalName) | 71 | switch (element.Name.LocalName) |
| 71 | { | 72 | { |
| @@ -110,7 +111,7 @@ namespace WixToolset.Iis | |||
| 110 | this.ParseWebAppPoolElement(intermediate, section, element, null); | 111 | this.ParseWebAppPoolElement(intermediate, section, element, null); |
| 111 | break; | 112 | break; |
| 112 | case "WebDirProperties": | 113 | case "WebDirProperties": |
| 113 | this.ParseWebDirPropertiesElement(intermediate, section, element); | 114 | this.ParseWebDirPropertiesElement(intermediate, section, element, null); |
| 114 | break; | 115 | break; |
| 115 | case "WebLog": | 116 | case "WebLog": |
| 116 | this.ParseWebLogElement(intermediate, section, element); | 117 | this.ParseWebLogElement(intermediate, section, element); |
| @@ -136,7 +137,7 @@ namespace WixToolset.Iis | |||
| 136 | /// <param name="componentId">Identifier for parent component.</param> | 137 | /// <param name="componentId">Identifier for parent component.</param> |
| 137 | private void ParseCertificateElement(Intermediate intermediate, IntermediateSection section, XElement element, string componentId) | 138 | private void ParseCertificateElement(Intermediate intermediate, IntermediateSection section, XElement element, string componentId) |
| 138 | { | 139 | { |
| 139 | SourceLineNumber sourceLineNumbers = this.ParseHelper.GetSourceLineNumbers(element); | 140 | var sourceLineNumbers = this.ParseHelper.GetSourceLineNumbers(element); |
| 140 | Identifier id = null; | 141 | Identifier id = null; |
| 141 | int attributes = 0; | 142 | int attributes = 0; |
| 142 | string binaryKey = null; | 143 | string binaryKey = null; |
| @@ -146,7 +147,7 @@ namespace WixToolset.Iis | |||
| 146 | int storeLocation = 0; | 147 | int storeLocation = 0; |
| 147 | string storeName = null; | 148 | string storeName = null; |
| 148 | 149 | ||
| 149 | foreach (XAttribute attrib in element.Attributes()) | 150 | foreach (var attrib in element.Attributes()) |
| 150 | { | 151 | { |
| 151 | if (String.IsNullOrEmpty(attrib.Name.NamespaceName) || this.Namespace == attrib.Name.Namespace) | 152 | if (String.IsNullOrEmpty(attrib.Name.NamespaceName) || this.Namespace == attrib.Name.Namespace) |
| 152 | { | 153 | { |
| @@ -158,7 +159,7 @@ namespace WixToolset.Iis | |||
| 158 | case "BinaryKey": | 159 | case "BinaryKey": |
| 159 | attributes |= 2; // SCA_CERT_ATTRIBUTE_BINARYDATA | 160 | attributes |= 2; // SCA_CERT_ATTRIBUTE_BINARYDATA |
| 160 | binaryKey = this.ParseHelper.GetAttributeIdentifierValue(sourceLineNumbers, attrib); | 161 | binaryKey = this.ParseHelper.GetAttributeIdentifierValue(sourceLineNumbers, attrib); |
| 161 | this.ParseHelper.CreateSimpleReference(section, sourceLineNumbers, "Binary", binaryKey); | 162 | this.ParseHelper.CreateSimpleReference(section, sourceLineNumbers, TupleDefinitions.Binary, binaryKey); |
| 162 | break; | 163 | break; |
| 163 | case "CertificatePath": | 164 | case "CertificatePath": |
| 164 | certificatePath = this.ParseHelper.GetAttributeValue(sourceLineNumbers, attrib); | 165 | certificatePath = this.ParseHelper.GetAttributeValue(sourceLineNumbers, attrib); |
| @@ -190,7 +191,7 @@ namespace WixToolset.Iis | |||
| 190 | } | 191 | } |
| 191 | break; | 192 | break; |
| 192 | case "StoreLocation": | 193 | case "StoreLocation": |
| 193 | string storeLocationValue = this.ParseHelper.GetAttributeValue(sourceLineNumbers, attrib); | 194 | var storeLocationValue = this.ParseHelper.GetAttributeValue(sourceLineNumbers, attrib); |
| 194 | if (0 < storeLocationValue.Length) | 195 | if (0 < storeLocationValue.Length) |
| 195 | { | 196 | { |
| 196 | switch (storeLocationValue) | 197 | switch (storeLocationValue) |
| @@ -209,7 +210,7 @@ namespace WixToolset.Iis | |||
| 209 | } | 210 | } |
| 210 | break; | 211 | break; |
| 211 | case "StoreName": | 212 | case "StoreName": |
| 212 | string storeNameValue = this.ParseHelper.GetAttributeValue(sourceLineNumbers, attrib); | 213 | var storeNameValue = this.ParseHelper.GetAttributeValue(sourceLineNumbers, attrib); |
| 213 | if (0 < storeNameValue.Length) | 214 | if (0 < storeNameValue.Length) |
| 214 | { | 215 | { |
| 215 | switch (storeNameValue) | 216 | switch (storeNameValue) |
| @@ -256,7 +257,7 @@ namespace WixToolset.Iis | |||
| 256 | 257 | ||
| 257 | if (null == id) | 258 | if (null == id) |
| 258 | { | 259 | { |
| 259 | this.Messaging.Write(ErrorMessages.ExpectedAttribute(sourceLineNumbers, element.Name.LocalName, "Id")); | 260 | id = this.ParseHelper.CreateIdentifier("crt", componentId, binaryKey, certificatePath); |
| 260 | } | 261 | } |
| 261 | 262 | ||
| 262 | if (null == name) | 263 | if (null == name) |
| @@ -286,21 +287,23 @@ namespace WixToolset.Iis | |||
| 286 | this.ParseHelper.ParseForExtensionElements(this.Context.Extensions, intermediate, section, element); | 287 | this.ParseHelper.ParseForExtensionElements(this.Context.Extensions, intermediate, section, element); |
| 287 | 288 | ||
| 288 | // Reference InstallCertificates and UninstallCertificates since nothing will happen without them | 289 | // Reference InstallCertificates and UninstallCertificates since nothing will happen without them |
| 289 | this.ParseHelper.CreateSimpleReference(section, sourceLineNumbers, "CustomAction", "InstallCertificates"); | 290 | this.ParseHelper.CreateSimpleReference(section, sourceLineNumbers, TupleDefinitions.CustomAction, "InstallCertificates"); |
| 290 | this.ParseHelper.CreateSimpleReference(section, sourceLineNumbers, "CustomAction", "UninstallCertificates"); | 291 | this.ParseHelper.CreateSimpleReference(section, sourceLineNumbers, TupleDefinitions.CustomAction, "UninstallCertificates"); |
| 291 | this.ParseHelper.EnsureTable(section, sourceLineNumbers, "CertificateHash"); // Certificate CustomActions require the CertificateHash table | 292 | this.ParseHelper.EnsureTable(section, sourceLineNumbers, IisTableDefinitions.CertificateHash); // Certificate CustomActions require the CertificateHash table |
| 292 | 293 | ||
| 293 | if (!this.Messaging.EncounteredError) | 294 | if (!this.Messaging.EncounteredError) |
| 294 | { | 295 | { |
| 295 | var row = this.ParseHelper.CreateRow(section, sourceLineNumbers, "Certificate", id); | 296 | section.AddTuple(new CertificateTuple(sourceLineNumbers, id) |
| 296 | row.Set(1, componentId); | 297 | { |
| 297 | row.Set(2, name); | 298 | ComponentRef = componentId, |
| 298 | row.Set(3, storeLocation); | 299 | Name = name, |
| 299 | row.Set(4, storeName); | 300 | StoreLocation = storeLocation, |
| 300 | row.Set(5, attributes); | 301 | StoreName = storeName, |
| 301 | row.Set(6, binaryKey); | 302 | Attributes = attributes, |
| 302 | row.Set(7, certificatePath); | 303 | BinaryRef = binaryKey, |
| 303 | row.Set(8, pfxPassword); | 304 | CertificatePath = certificatePath, |
| 305 | PFXPassword = pfxPassword, | ||
| 306 | }); | ||
| 304 | } | 307 | } |
| 305 | } | 308 | } |
| 306 | 309 | ||
| @@ -311,10 +314,10 @@ namespace WixToolset.Iis | |||
| 311 | /// <param name="webId">Identifier for parent web site.</param> | 314 | /// <param name="webId">Identifier for parent web site.</param> |
| 312 | private void ParseCertificateRefElement(Intermediate intermediate, IntermediateSection section, XElement element, string webId) | 315 | private void ParseCertificateRefElement(Intermediate intermediate, IntermediateSection section, XElement element, string webId) |
| 313 | { | 316 | { |
| 314 | SourceLineNumber sourceLineNumbers = this.ParseHelper.GetSourceLineNumbers(element); | 317 | var sourceLineNumbers = this.ParseHelper.GetSourceLineNumbers(element); |
| 315 | Identifier id = null; | 318 | Identifier id = null; |
| 316 | 319 | ||
| 317 | foreach (XAttribute attrib in element.Attributes()) | 320 | foreach (var attrib in element.Attributes()) |
| 318 | { | 321 | { |
| 319 | if (String.IsNullOrEmpty(attrib.Name.NamespaceName) || this.Namespace == attrib.Name.Namespace) | 322 | if (String.IsNullOrEmpty(attrib.Name.NamespaceName) || this.Namespace == attrib.Name.Namespace) |
| 320 | { | 323 | { |
| @@ -322,7 +325,7 @@ namespace WixToolset.Iis | |||
| 322 | { | 325 | { |
| 323 | case "Id": | 326 | case "Id": |
| 324 | id = this.ParseHelper.GetAttributeIdentifier(sourceLineNumbers, attrib); | 327 | id = this.ParseHelper.GetAttributeIdentifier(sourceLineNumbers, attrib); |
| 325 | this.ParseHelper.CreateSimpleReference(section, sourceLineNumbers, "Certificate", id.Id); | 328 | this.ParseHelper.CreateSimpleReference(section, sourceLineNumbers, IisTupleDefinitions.Certificate, id.Id); |
| 326 | break; | 329 | break; |
| 327 | default: | 330 | default: |
| 328 | this.ParseHelper.UnexpectedAttribute(element, attrib); | 331 | this.ParseHelper.UnexpectedAttribute(element, attrib); |
| @@ -337,18 +340,20 @@ namespace WixToolset.Iis | |||
| 337 | 340 | ||
| 338 | if (null == id) | 341 | if (null == id) |
| 339 | { | 342 | { |
| 340 | this.Messaging.Write(ErrorMessages.ExpectedAttribute(sourceLineNumbers, element.Name.LocalName, "Id")); | 343 | id = this.ParseHelper.CreateIdentifier("wsc", webId); |
| 341 | } | 344 | } |
| 342 | 345 | ||
| 343 | this.ParseHelper.ParseForExtensionElements(this.Context.Extensions, intermediate, section, element); | 346 | this.ParseHelper.ParseForExtensionElements(this.Context.Extensions, intermediate, section, element); |
| 344 | 347 | ||
| 345 | if (!this.Messaging.EncounteredError) | 348 | if (!this.Messaging.EncounteredError) |
| 346 | { | 349 | { |
| 347 | this.ParseHelper.CreateSimpleReference(section, sourceLineNumbers, "Certificate", id.Id); | 350 | this.ParseHelper.CreateSimpleReference(section, sourceLineNumbers, IisTupleDefinitions.Certificate, id.Id); |
| 348 | 351 | ||
| 349 | var row = this.ParseHelper.CreateRow(section, sourceLineNumbers, "IIsWebSiteCertificates"); | 352 | section.AddTuple(new IIsWebSiteCertificatesTuple(sourceLineNumbers) |
| 350 | row.Set(0, webId); | 353 | { |
| 351 | row.Set(1, id.Id); | 354 | WebRef = webId, |
| 355 | CertificateRef = id.Id, | ||
| 356 | }); | ||
| 352 | } | 357 | } |
| 353 | } | 358 | } |
| 354 | 359 | ||
| @@ -360,12 +365,12 @@ namespace WixToolset.Iis | |||
| 360 | /// <param name="parentType">Type that parentId refers to.</param> | 365 | /// <param name="parentType">Type that parentId refers to.</param> |
| 361 | private void ParseMimeMapElement(Intermediate intermediate, IntermediateSection section, XElement element, string parentId, MimeMapParentType parentType) | 366 | private void ParseMimeMapElement(Intermediate intermediate, IntermediateSection section, XElement element, string parentId, MimeMapParentType parentType) |
| 362 | { | 367 | { |
| 363 | SourceLineNumber sourceLineNumbers = this.ParseHelper.GetSourceLineNumbers(element); | 368 | var sourceLineNumbers = this.ParseHelper.GetSourceLineNumbers(element); |
| 364 | Identifier id = null; | 369 | Identifier id = null; |
| 365 | string extension = null; | 370 | string extension = null; |
| 366 | string type = null; | 371 | string type = null; |
| 367 | 372 | ||
| 368 | foreach (XAttribute attrib in element.Attributes()) | 373 | foreach (var attrib in element.Attributes()) |
| 369 | { | 374 | { |
| 370 | if (String.IsNullOrEmpty(attrib.Name.NamespaceName) || this.Namespace == attrib.Name.Namespace) | 375 | if (String.IsNullOrEmpty(attrib.Name.NamespaceName) || this.Namespace == attrib.Name.Namespace) |
| 371 | { | 376 | { |
| @@ -393,7 +398,7 @@ namespace WixToolset.Iis | |||
| 393 | 398 | ||
| 394 | if (null == id) | 399 | if (null == id) |
| 395 | { | 400 | { |
| 396 | this.Messaging.Write(ErrorMessages.ExpectedAttribute(sourceLineNumbers, element.Name.LocalName, "Id")); | 401 | id = this.ParseHelper.CreateIdentifier("imm", parentId, type, extension); |
| 397 | } | 402 | } |
| 398 | 403 | ||
| 399 | if (null == extension) | 404 | if (null == extension) |
| @@ -417,11 +422,13 @@ namespace WixToolset.Iis | |||
| 417 | 422 | ||
| 418 | if (!this.Messaging.EncounteredError) | 423 | if (!this.Messaging.EncounteredError) |
| 419 | { | 424 | { |
| 420 | var row = this.ParseHelper.CreateRow(section, sourceLineNumbers, "IIsMimeMap", id); | 425 | section.AddTuple(new IIsMimeMapTuple(sourceLineNumbers, id) |
| 421 | row.Set(1, (int)parentType); | 426 | { |
| 422 | row.Set(2, parentId); | 427 | ParentType = (int)parentType, |
| 423 | row.Set(3, type); | 428 | ParentValue = parentId, |
| 424 | row.Set(4, extension); | 429 | MimeType = type, |
| 430 | Extension = extension, | ||
| 431 | }); | ||
| 425 | } | 432 | } |
| 426 | } | 433 | } |
| 427 | 434 | ||
| @@ -432,10 +439,10 @@ namespace WixToolset.Iis | |||
| 432 | /// <returns>Recycle time value.</returns> | 439 | /// <returns>Recycle time value.</returns> |
| 433 | private string ParseRecycleTimeElement(Intermediate intermediate, IntermediateSection section, XElement element) | 440 | private string ParseRecycleTimeElement(Intermediate intermediate, IntermediateSection section, XElement element) |
| 434 | { | 441 | { |
| 435 | SourceLineNumber sourceLineNumbers = this.ParseHelper.GetSourceLineNumbers(element); | 442 | var sourceLineNumbers = this.ParseHelper.GetSourceLineNumbers(element); |
| 436 | string value = null; | 443 | string value = null; |
| 437 | 444 | ||
| 438 | foreach (XAttribute attrib in element.Attributes()) | 445 | foreach (var attrib in element.Attributes()) |
| 439 | { | 446 | { |
| 440 | if (String.IsNullOrEmpty(attrib.Name.NamespaceName) || this.Namespace == attrib.Name.Namespace) | 447 | if (String.IsNullOrEmpty(attrib.Name.NamespaceName) || this.Namespace == attrib.Name.Namespace) |
| 441 | { | 448 | { |
| @@ -473,14 +480,14 @@ namespace WixToolset.Iis | |||
| 473 | /// <returns>Identifier for web address.</returns> | 480 | /// <returns>Identifier for web address.</returns> |
| 474 | private string ParseWebAddressElement(Intermediate intermediate, IntermediateSection section, XElement element, string parentWeb) | 481 | private string ParseWebAddressElement(Intermediate intermediate, IntermediateSection section, XElement element, string parentWeb) |
| 475 | { | 482 | { |
| 476 | SourceLineNumber sourceLineNumbers = this.ParseHelper.GetSourceLineNumbers(element); | 483 | var sourceLineNumbers = this.ParseHelper.GetSourceLineNumbers(element); |
| 477 | Identifier id = null; | 484 | Identifier id = null; |
| 478 | string header = null; | 485 | string header = null; |
| 479 | string ip = null; | 486 | string ip = null; |
| 480 | string port = null; | 487 | string port = null; |
| 481 | bool secure = false; | 488 | var secure = false; |
| 482 | 489 | ||
| 483 | foreach (XAttribute attrib in element.Attributes()) | 490 | foreach (var attrib in element.Attributes()) |
| 484 | { | 491 | { |
| 485 | if (String.IsNullOrEmpty(attrib.Name.NamespaceName) || this.Namespace == attrib.Name.Namespace) | 492 | if (String.IsNullOrEmpty(attrib.Name.NamespaceName) || this.Namespace == attrib.Name.Namespace) |
| 486 | { | 493 | { |
| @@ -514,7 +521,7 @@ namespace WixToolset.Iis | |||
| 514 | 521 | ||
| 515 | if (null == id) | 522 | if (null == id) |
| 516 | { | 523 | { |
| 517 | this.Messaging.Write(ErrorMessages.ExpectedAttribute(sourceLineNumbers, element.Name.LocalName, "Id")); | 524 | id = this.ParseHelper.CreateIdentifier("iwa", parentWeb, ip, port); |
| 518 | } | 525 | } |
| 519 | 526 | ||
| 520 | if (null == port) | 527 | if (null == port) |
| @@ -526,12 +533,14 @@ namespace WixToolset.Iis | |||
| 526 | 533 | ||
| 527 | if (!this.Messaging.EncounteredError) | 534 | if (!this.Messaging.EncounteredError) |
| 528 | { | 535 | { |
| 529 | var row = this.ParseHelper.CreateRow(section, sourceLineNumbers, "IIsWebAddress", id); | 536 | section.AddTuple(new IIsWebAddressTuple(sourceLineNumbers, id) |
| 530 | row.Set(1, parentWeb); | 537 | { |
| 531 | row.Set(2, ip); | 538 | WebRef = parentWeb, |
| 532 | row.Set(3, port); | 539 | IP = ip, |
| 533 | row.Set(4, header); | 540 | Port = port, |
| 534 | row.Set(5, secure ? 1 : 0); | 541 | Header = header, |
| 542 | Secure = secure ? 1 : 0, | ||
| 543 | }); | ||
| 535 | } | 544 | } |
| 536 | 545 | ||
| 537 | return id?.Id; | 546 | return id?.Id; |
| @@ -544,21 +553,21 @@ namespace WixToolset.Iis | |||
| 544 | /// <returns>Identifier for web application.</returns> | 553 | /// <returns>Identifier for web application.</returns> |
| 545 | private string ParseWebApplicationElement(Intermediate intermediate, IntermediateSection section, XElement element) | 554 | private string ParseWebApplicationElement(Intermediate intermediate, IntermediateSection section, XElement element) |
| 546 | { | 555 | { |
| 547 | SourceLineNumber sourceLineNumbers = this.ParseHelper.GetSourceLineNumbers(element); | 556 | var sourceLineNumbers = this.ParseHelper.GetSourceLineNumbers(element); |
| 548 | Identifier id = null; | 557 | Identifier id = null; |
| 549 | YesNoDefaultType allowSessions = YesNoDefaultType.Default; | 558 | var allowSessions = YesNoDefaultType.Default; |
| 550 | string appPool = null; | 559 | string appPool = null; |
| 551 | YesNoDefaultType buffer = YesNoDefaultType.Default; | 560 | var buffer = YesNoDefaultType.Default; |
| 552 | YesNoDefaultType clientDebugging = YesNoDefaultType.Default; | 561 | var clientDebugging = YesNoDefaultType.Default; |
| 553 | string defaultScript = null; | 562 | string defaultScript = null; |
| 554 | int isolation = 0; | 563 | int isolation = 0; |
| 555 | string name = null; | 564 | string name = null; |
| 556 | YesNoDefaultType parentPaths = YesNoDefaultType.Default; | 565 | var parentPaths = YesNoDefaultType.Default; |
| 557 | int scriptTimeout = CompilerConstants.IntegerNotSet; | 566 | var scriptTimeout = CompilerConstants.IntegerNotSet; |
| 558 | int sessionTimeout = CompilerConstants.IntegerNotSet; | 567 | var sessionTimeout = CompilerConstants.IntegerNotSet; |
| 559 | YesNoDefaultType serverDebugging = YesNoDefaultType.Default; | 568 | var serverDebugging = YesNoDefaultType.Default; |
| 560 | 569 | ||
| 561 | foreach (XAttribute attrib in element.Attributes()) | 570 | foreach (var attrib in element.Attributes()) |
| 562 | { | 571 | { |
| 563 | if (String.IsNullOrEmpty(attrib.Name.NamespaceName) || this.Namespace == attrib.Name.Namespace) | 572 | if (String.IsNullOrEmpty(attrib.Name.NamespaceName) || this.Namespace == attrib.Name.Namespace) |
| 564 | { | 573 | { |
| @@ -630,7 +639,7 @@ namespace WixToolset.Iis | |||
| 630 | break; | 639 | break; |
| 631 | case "WebAppPool": | 640 | case "WebAppPool": |
| 632 | appPool = this.ParseHelper.GetAttributeIdentifierValue(sourceLineNumbers, attrib); | 641 | appPool = this.ParseHelper.GetAttributeIdentifierValue(sourceLineNumbers, attrib); |
| 633 | this.ParseHelper.CreateSimpleReference(section, sourceLineNumbers, "IIsAppPool", appPool); | 642 | this.ParseHelper.CreateSimpleReference(section, sourceLineNumbers, IisTupleDefinitions.IIsAppPool, appPool); |
| 634 | break; | 643 | break; |
| 635 | default: | 644 | default: |
| 636 | this.ParseHelper.UnexpectedAttribute(element, attrib); | 645 | this.ParseHelper.UnexpectedAttribute(element, attrib); |
| @@ -645,7 +654,7 @@ namespace WixToolset.Iis | |||
| 645 | 654 | ||
| 646 | if (null == id) | 655 | if (null == id) |
| 647 | { | 656 | { |
| 648 | this.Messaging.Write(ErrorMessages.ExpectedAttribute(sourceLineNumbers, element.Name.LocalName, "Id")); | 657 | id = this.ParseHelper.CreateIdentifier("wap", name, appPool); |
| 649 | } | 658 | } |
| 650 | 659 | ||
| 651 | if (null == name) | 660 | if (null == name) |
| @@ -657,11 +666,10 @@ namespace WixToolset.Iis | |||
| 657 | this.Messaging.Write(IIsErrors.IllegalCharacterInAttributeValue(sourceLineNumbers, element.Name.LocalName, "Name", name, '\\')); | 666 | this.Messaging.Write(IIsErrors.IllegalCharacterInAttributeValue(sourceLineNumbers, element.Name.LocalName, "Name", name, '\\')); |
| 658 | } | 667 | } |
| 659 | 668 | ||
| 660 | foreach (XElement child in element.Elements()) | 669 | foreach (var child in element.Elements()) |
| 661 | { | 670 | { |
| 662 | if (this.Namespace == child.Name.Namespace) | 671 | if (this.Namespace == child.Name.Namespace) |
| 663 | { | 672 | { |
| 664 | SourceLineNumber childSourceLineNumbers = this.ParseHelper.GetSourceLineNumbers(child); | ||
| 665 | switch (child.Name.LocalName) | 673 | switch (child.Name.LocalName) |
| 666 | { | 674 | { |
| 667 | case "WebApplicationExtension": | 675 | case "WebApplicationExtension": |
| @@ -680,44 +688,48 @@ namespace WixToolset.Iis | |||
| 680 | 688 | ||
| 681 | if (!this.Messaging.EncounteredError) | 689 | if (!this.Messaging.EncounteredError) |
| 682 | { | 690 | { |
| 683 | var row = this.ParseHelper.CreateRow(section, sourceLineNumbers, "IIsWebApplication", id); | 691 | var tuple = section.AddTuple(new IIsWebApplicationTuple(sourceLineNumbers, id) |
| 684 | row.Set(1, name); | 692 | { |
| 685 | row.Set(2, isolation); | 693 | Name = name, |
| 694 | Isolation = isolation, | ||
| 695 | DefaultScript = defaultScript, | ||
| 696 | AppPoolRef = appPool, | ||
| 697 | }); | ||
| 698 | |||
| 686 | if (YesNoDefaultType.Default != allowSessions) | 699 | if (YesNoDefaultType.Default != allowSessions) |
| 687 | { | 700 | { |
| 688 | row.Set(3, YesNoDefaultType.Yes == allowSessions ? 1 : 0); | 701 | tuple.AllowSessions = YesNoDefaultType.Yes == allowSessions ? 1 : 0; |
| 689 | } | 702 | } |
| 690 | 703 | ||
| 691 | if (CompilerConstants.IntegerNotSet != sessionTimeout) | 704 | if (CompilerConstants.IntegerNotSet != sessionTimeout) |
| 692 | { | 705 | { |
| 693 | row.Set(4, sessionTimeout); | 706 | tuple.SessionTimeout = sessionTimeout; |
| 694 | } | 707 | } |
| 695 | 708 | ||
| 696 | if (YesNoDefaultType.Default != buffer) | 709 | if (YesNoDefaultType.Default != buffer) |
| 697 | { | 710 | { |
| 698 | row.Set(5, YesNoDefaultType.Yes == buffer ? 1 : 0); | 711 | tuple.Buffer = YesNoDefaultType.Yes == buffer ? 1 : 0; |
| 699 | } | 712 | } |
| 700 | 713 | ||
| 701 | if (YesNoDefaultType.Default != parentPaths) | 714 | if (YesNoDefaultType.Default != parentPaths) |
| 702 | { | 715 | { |
| 703 | row.Set(6, YesNoDefaultType.Yes == parentPaths ? 1 : 0); | 716 | tuple.ParentPaths = YesNoDefaultType.Yes == parentPaths ? 1 : 0; |
| 704 | } | 717 | } |
| 705 | row.Set(7, defaultScript); | 718 | |
| 706 | if (CompilerConstants.IntegerNotSet != scriptTimeout) | 719 | if (CompilerConstants.IntegerNotSet != scriptTimeout) |
| 707 | { | 720 | { |
| 708 | row.Set(8, scriptTimeout); | 721 | tuple.ScriptTimeout = scriptTimeout; |
| 709 | } | 722 | } |
| 710 | 723 | ||
| 711 | if (YesNoDefaultType.Default != serverDebugging) | 724 | if (YesNoDefaultType.Default != serverDebugging) |
| 712 | { | 725 | { |
| 713 | row.Set(9, YesNoDefaultType.Yes == serverDebugging ? 1 : 0); | 726 | tuple.ServerDebugging = YesNoDefaultType.Yes == serverDebugging ? 1 : 0; |
| 714 | } | 727 | } |
| 715 | 728 | ||
| 716 | if (YesNoDefaultType.Default != clientDebugging) | 729 | if (YesNoDefaultType.Default != clientDebugging) |
| 717 | { | 730 | { |
| 718 | row.Set(10, YesNoDefaultType.Yes == clientDebugging ? 1 : 0); | 731 | tuple.ClientDebugging = YesNoDefaultType.Yes == clientDebugging ? 1 : 0; |
| 719 | } | 732 | } |
| 720 | row.Set(11, appPool); | ||
| 721 | } | 733 | } |
| 722 | 734 | ||
| 723 | return id?.Id; | 735 | return id?.Id; |
| @@ -730,13 +742,13 @@ namespace WixToolset.Iis | |||
| 730 | /// <param name="application">Identifier for parent web application.</param> | 742 | /// <param name="application">Identifier for parent web application.</param> |
| 731 | private void ParseWebApplicationExtensionElement(Intermediate intermediate, IntermediateSection section, XElement element, string application) | 743 | private void ParseWebApplicationExtensionElement(Intermediate intermediate, IntermediateSection section, XElement element, string application) |
| 732 | { | 744 | { |
| 733 | SourceLineNumber sourceLineNumbers = this.ParseHelper.GetSourceLineNumbers(element); | 745 | var sourceLineNumbers = this.ParseHelper.GetSourceLineNumbers(element); |
| 734 | int attributes = 0; | 746 | int attributes = 0; |
| 735 | string executable = null; | 747 | string executable = null; |
| 736 | string extension = null; | 748 | string extension = null; |
| 737 | string verbs = null; | 749 | string verbs = null; |
| 738 | 750 | ||
| 739 | foreach (XAttribute attrib in element.Attributes()) | 751 | foreach (var attrib in element.Attributes()) |
| 740 | { | 752 | { |
| 741 | if (String.IsNullOrEmpty(attrib.Name.NamespaceName) || this.Namespace == attrib.Name.Namespace) | 753 | if (String.IsNullOrEmpty(attrib.Name.NamespaceName) || this.Namespace == attrib.Name.Namespace) |
| 742 | { | 754 | { |
| @@ -786,14 +798,17 @@ namespace WixToolset.Iis | |||
| 786 | 798 | ||
| 787 | if (!this.Messaging.EncounteredError) | 799 | if (!this.Messaging.EncounteredError) |
| 788 | { | 800 | { |
| 789 | var row = this.ParseHelper.CreateRow(section, sourceLineNumbers, "IIsWebApplicationExtension"); | 801 | var tuple = section.AddTuple(new IIsWebApplicationExtensionTuple(sourceLineNumbers) |
| 790 | row.Set(0, application); | 802 | { |
| 791 | row.Set(1, extension); | 803 | ApplicationRef = application, |
| 792 | row.Set(2, verbs); | 804 | Extension = extension, |
| 793 | row.Set(3, executable); | 805 | Verbs = verbs, |
| 806 | Executable = executable, | ||
| 807 | }); | ||
| 808 | |||
| 794 | if (0 < attributes) | 809 | if (0 < attributes) |
| 795 | { | 810 | { |
| 796 | row.Set(4, attributes); | 811 | tuple.Attributes = attributes; |
| 797 | } | 812 | } |
| 798 | } | 813 | } |
| 799 | } | 814 | } |
| @@ -805,27 +820,27 @@ namespace WixToolset.Iis | |||
| 805 | /// <param name="componentId">Optional identifier of parent component.</param> | 820 | /// <param name="componentId">Optional identifier of parent component.</param> |
| 806 | private void ParseWebAppPoolElement(Intermediate intermediate, IntermediateSection section, XElement element, string componentId) | 821 | private void ParseWebAppPoolElement(Intermediate intermediate, IntermediateSection section, XElement element, string componentId) |
| 807 | { | 822 | { |
| 808 | SourceLineNumber sourceLineNumbers = this.ParseHelper.GetSourceLineNumbers(element); | 823 | var sourceLineNumbers = this.ParseHelper.GetSourceLineNumbers(element); |
| 809 | Identifier id = null; | 824 | Identifier id = null; |
| 810 | int attributes = 0; | 825 | int attributes = 0; |
| 811 | int cpuAction = CompilerConstants.IntegerNotSet; | 826 | var cpuAction = CompilerConstants.IntegerNotSet; |
| 812 | string cpuMon = null; | 827 | string cpuMon = null; |
| 813 | int idleTimeout = CompilerConstants.IntegerNotSet; | 828 | var idleTimeout = CompilerConstants.IntegerNotSet; |
| 814 | int maxCpuUsage = 0; | 829 | int maxCpuUsage = 0; |
| 815 | int maxWorkerProcs = CompilerConstants.IntegerNotSet; | 830 | var maxWorkerProcs = CompilerConstants.IntegerNotSet; |
| 816 | string managedRuntimeVersion = null; | 831 | string managedRuntimeVersion = null; |
| 817 | string managedPipelineMode = null; | 832 | string managedPipelineMode = null; |
| 818 | string name = null; | 833 | string name = null; |
| 819 | int privateMemory = CompilerConstants.IntegerNotSet; | 834 | var privateMemory = CompilerConstants.IntegerNotSet; |
| 820 | int queueLimit = CompilerConstants.IntegerNotSet; | 835 | var queueLimit = CompilerConstants.IntegerNotSet; |
| 821 | int recycleMinutes = CompilerConstants.IntegerNotSet; | 836 | var recycleMinutes = CompilerConstants.IntegerNotSet; |
| 822 | int recycleRequests = CompilerConstants.IntegerNotSet; | 837 | var recycleRequests = CompilerConstants.IntegerNotSet; |
| 823 | string recycleTimes = null; | 838 | string recycleTimes = null; |
| 824 | int refreshCpu = CompilerConstants.IntegerNotSet; | 839 | var refreshCpu = CompilerConstants.IntegerNotSet; |
| 825 | string user = null; | 840 | string user = null; |
| 826 | int virtualMemory = CompilerConstants.IntegerNotSet; | 841 | var virtualMemory = CompilerConstants.IntegerNotSet; |
| 827 | 842 | ||
| 828 | foreach (XAttribute attrib in element.Attributes()) | 843 | foreach (var attrib in element.Attributes()) |
| 829 | { | 844 | { |
| 830 | if (String.IsNullOrEmpty(attrib.Name.NamespaceName) || this.Namespace == attrib.Name.Namespace) | 845 | if (String.IsNullOrEmpty(attrib.Name.NamespaceName) || this.Namespace == attrib.Name.Namespace) |
| 831 | { | 846 | { |
| @@ -840,7 +855,7 @@ namespace WixToolset.Iis | |||
| 840 | this.Messaging.Write(IIsErrors.IllegalAttributeWithoutComponent(sourceLineNumbers, element.Name.LocalName, attrib.Name.LocalName)); | 855 | this.Messaging.Write(IIsErrors.IllegalAttributeWithoutComponent(sourceLineNumbers, element.Name.LocalName, attrib.Name.LocalName)); |
| 841 | } | 856 | } |
| 842 | 857 | ||
| 843 | string cpuActionValue = this.ParseHelper.GetAttributeValue(sourceLineNumbers, attrib); | 858 | var cpuActionValue = this.ParseHelper.GetAttributeValue(sourceLineNumbers, attrib); |
| 844 | if (0 < cpuActionValue.Length) | 859 | if (0 < cpuActionValue.Length) |
| 845 | { | 860 | { |
| 846 | switch (cpuActionValue) | 861 | switch (cpuActionValue) |
| @@ -863,7 +878,7 @@ namespace WixToolset.Iis | |||
| 863 | this.Messaging.Write(IIsErrors.IllegalAttributeWithoutComponent(sourceLineNumbers, element.Name.LocalName, attrib.Name.LocalName)); | 878 | this.Messaging.Write(IIsErrors.IllegalAttributeWithoutComponent(sourceLineNumbers, element.Name.LocalName, attrib.Name.LocalName)); |
| 864 | } | 879 | } |
| 865 | 880 | ||
| 866 | string identityValue = this.ParseHelper.GetAttributeValue(sourceLineNumbers, attrib); | 881 | var identityValue = this.ParseHelper.GetAttributeValue(sourceLineNumbers, attrib); |
| 867 | if (0 < identityValue.Length) | 882 | if (0 < identityValue.Length) |
| 868 | { | 883 | { |
| 869 | switch (identityValue) | 884 | switch (identityValue) |
| @@ -1029,7 +1044,7 @@ namespace WixToolset.Iis | |||
| 1029 | 1044 | ||
| 1030 | if (null == id) | 1045 | if (null == id) |
| 1031 | { | 1046 | { |
| 1032 | this.Messaging.Write(ErrorMessages.ExpectedAttribute(sourceLineNumbers, element.Name.LocalName, "Id")); | 1047 | id = this.ParseHelper.CreateIdentifier("iap", name, componentId, user); |
| 1033 | } | 1048 | } |
| 1034 | 1049 | ||
| 1035 | if (null == name) | 1050 | if (null == name) |
| @@ -1057,7 +1072,7 @@ namespace WixToolset.Iis | |||
| 1057 | } | 1072 | } |
| 1058 | } | 1073 | } |
| 1059 | 1074 | ||
| 1060 | foreach (XElement child in element.Elements()) | 1075 | foreach (var child in element.Elements()) |
| 1061 | { | 1076 | { |
| 1062 | if (this.Namespace == child.Name.Namespace) | 1077 | if (this.Namespace == child.Name.Namespace) |
| 1063 | { | 1078 | { |
| @@ -1066,7 +1081,7 @@ namespace WixToolset.Iis | |||
| 1066 | case "RecycleTime": | 1081 | case "RecycleTime": |
| 1067 | if (null == componentId) | 1082 | if (null == componentId) |
| 1068 | { | 1083 | { |
| 1069 | SourceLineNumber childSourceLineNumbers = this.ParseHelper.GetSourceLineNumbers(child); | 1084 | var childSourceLineNumbers = this.ParseHelper.GetSourceLineNumbers(child); |
| 1070 | this.Messaging.Write(IIsErrors.IllegalElementWithoutComponent(childSourceLineNumbers, element.Name.LocalName)); | 1085 | this.Messaging.Write(IIsErrors.IllegalElementWithoutComponent(childSourceLineNumbers, element.Name.LocalName)); |
| 1071 | } | 1086 | } |
| 1072 | 1087 | ||
| @@ -1093,52 +1108,57 @@ namespace WixToolset.Iis | |||
| 1093 | if (null != componentId) | 1108 | if (null != componentId) |
| 1094 | { | 1109 | { |
| 1095 | // Reference ConfigureIIs since nothing will happen without it | 1110 | // Reference ConfigureIIs since nothing will happen without it |
| 1096 | this.ParseHelper.CreateSimpleReference(section, sourceLineNumbers, "CustomAction", "ConfigureIIs"); | 1111 | this.AddReferenceToConfigureIIs(section, sourceLineNumbers); |
| 1097 | } | 1112 | } |
| 1098 | 1113 | ||
| 1099 | if (!this.Messaging.EncounteredError) | 1114 | if (!this.Messaging.EncounteredError) |
| 1100 | { | 1115 | { |
| 1101 | var row = this.ParseHelper.CreateRow(section, sourceLineNumbers, "IIsAppPool", id); | 1116 | var tuple = section.AddTuple(new IIsAppPoolTuple(sourceLineNumbers, id) |
| 1102 | row.Set(1, name); | 1117 | { |
| 1103 | row.Set(2, componentId); | 1118 | Name = name, |
| 1104 | row.Set(3, attributes); | 1119 | ComponentRef = componentId, |
| 1105 | row.Set(4, user); | 1120 | Attributes = attributes, |
| 1121 | UserRef = user, | ||
| 1122 | RecycleTimes = recycleTimes, | ||
| 1123 | CPUMon = cpuMon, | ||
| 1124 | ManagedRuntimeVersion = managedRuntimeVersion, | ||
| 1125 | ManagedPipelineMode = managedPipelineMode, | ||
| 1126 | }); | ||
| 1127 | |||
| 1106 | if (CompilerConstants.IntegerNotSet != recycleMinutes) | 1128 | if (CompilerConstants.IntegerNotSet != recycleMinutes) |
| 1107 | { | 1129 | { |
| 1108 | row.Set(5, recycleMinutes); | 1130 | tuple.RecycleMinutes = recycleMinutes; |
| 1109 | } | 1131 | } |
| 1110 | 1132 | ||
| 1111 | if (CompilerConstants.IntegerNotSet != recycleRequests) | 1133 | if (CompilerConstants.IntegerNotSet != recycleRequests) |
| 1112 | { | 1134 | { |
| 1113 | row.Set(6, recycleRequests); | 1135 | tuple.RecycleRequests = recycleRequests; |
| 1114 | } | 1136 | } |
| 1115 | row.Set(7, recycleTimes); | 1137 | |
| 1116 | if (CompilerConstants.IntegerNotSet != idleTimeout) | 1138 | if (CompilerConstants.IntegerNotSet != idleTimeout) |
| 1117 | { | 1139 | { |
| 1118 | row.Set(8, idleTimeout); | 1140 | tuple.IdleTimeout = idleTimeout; |
| 1119 | } | 1141 | } |
| 1120 | 1142 | ||
| 1121 | if (CompilerConstants.IntegerNotSet != queueLimit) | 1143 | if (CompilerConstants.IntegerNotSet != queueLimit) |
| 1122 | { | 1144 | { |
| 1123 | row.Set(9, queueLimit); | 1145 | tuple.QueueLimit = queueLimit; |
| 1124 | } | 1146 | } |
| 1125 | row.Set(10, cpuMon); | 1147 | |
| 1126 | if (CompilerConstants.IntegerNotSet != maxWorkerProcs) | 1148 | if (CompilerConstants.IntegerNotSet != maxWorkerProcs) |
| 1127 | { | 1149 | { |
| 1128 | row.Set(11, maxWorkerProcs); | 1150 | tuple.MaxProc = maxWorkerProcs; |
| 1129 | } | 1151 | } |
| 1130 | 1152 | ||
| 1131 | if (CompilerConstants.IntegerNotSet != virtualMemory) | 1153 | if (CompilerConstants.IntegerNotSet != virtualMemory) |
| 1132 | { | 1154 | { |
| 1133 | row.Set(12, virtualMemory); | 1155 | tuple.VirtualMemory = virtualMemory; |
| 1134 | } | 1156 | } |
| 1135 | 1157 | ||
| 1136 | if (CompilerConstants.IntegerNotSet != privateMemory) | 1158 | if (CompilerConstants.IntegerNotSet != privateMemory) |
| 1137 | { | 1159 | { |
| 1138 | row.Set(13, privateMemory); | 1160 | tuple.PrivateMemory = privateMemory; |
| 1139 | } | 1161 | } |
| 1140 | row.Set(14, managedRuntimeVersion); | ||
| 1141 | row.Set(15, managedPipelineMode); | ||
| 1142 | } | 1162 | } |
| 1143 | } | 1163 | } |
| 1144 | 1164 | ||
| @@ -1150,13 +1170,13 @@ namespace WixToolset.Iis | |||
| 1150 | /// <param name="parentWeb">Optional identifier for parent web site.</param> | 1170 | /// <param name="parentWeb">Optional identifier for parent web site.</param> |
| 1151 | private void ParseWebDirElement(Intermediate intermediate, IntermediateSection section, XElement element, string componentId, string parentWeb) | 1171 | private void ParseWebDirElement(Intermediate intermediate, IntermediateSection section, XElement element, string componentId, string parentWeb) |
| 1152 | { | 1172 | { |
| 1153 | SourceLineNumber sourceLineNumbers = this.ParseHelper.GetSourceLineNumbers(element); | 1173 | var sourceLineNumbers = this.ParseHelper.GetSourceLineNumbers(element); |
| 1154 | Identifier id = null; | 1174 | Identifier id = null; |
| 1155 | string dirProperties = null; | 1175 | string dirProperties = null; |
| 1156 | string path = null; | 1176 | string path = null; |
| 1157 | string application = null; | 1177 | string application = null; |
| 1158 | 1178 | ||
| 1159 | foreach (XAttribute attrib in element.Attributes()) | 1179 | foreach (var attrib in element.Attributes()) |
| 1160 | { | 1180 | { |
| 1161 | if (String.IsNullOrEmpty(attrib.Name.NamespaceName) || this.Namespace == attrib.Name.Namespace) | 1181 | if (String.IsNullOrEmpty(attrib.Name.NamespaceName) || this.Namespace == attrib.Name.Namespace) |
| 1162 | { | 1182 | { |
| @@ -1181,7 +1201,7 @@ namespace WixToolset.Iis | |||
| 1181 | } | 1201 | } |
| 1182 | 1202 | ||
| 1183 | parentWeb = this.ParseHelper.GetAttributeIdentifierValue(sourceLineNumbers, attrib); | 1203 | parentWeb = this.ParseHelper.GetAttributeIdentifierValue(sourceLineNumbers, attrib); |
| 1184 | this.ParseHelper.CreateSimpleReference(section, sourceLineNumbers, "IIsWebSite", parentWeb); | 1204 | this.ParseHelper.CreateSimpleReference(section, sourceLineNumbers, IisTupleDefinitions.IIsWebSite, parentWeb); |
| 1185 | break; | 1205 | break; |
| 1186 | default: | 1206 | default: |
| 1187 | this.ParseHelper.UnexpectedAttribute(element, attrib); | 1207 | this.ParseHelper.UnexpectedAttribute(element, attrib); |
| @@ -1196,7 +1216,7 @@ namespace WixToolset.Iis | |||
| 1196 | 1216 | ||
| 1197 | if (null == id) | 1217 | if (null == id) |
| 1198 | { | 1218 | { |
| 1199 | this.Messaging.Write(ErrorMessages.ExpectedAttribute(sourceLineNumbers, element.Name.LocalName, "Id")); | 1219 | id = this.ParseHelper.CreateIdentifier("iwd", componentId, parentWeb, dirProperties, application); |
| 1200 | } | 1220 | } |
| 1201 | 1221 | ||
| 1202 | if (null == path) | 1222 | if (null == path) |
| @@ -1209,11 +1229,11 @@ namespace WixToolset.Iis | |||
| 1209 | this.Messaging.Write(ErrorMessages.ExpectedAttribute(sourceLineNumbers, element.Name.LocalName, "WebSite")); | 1229 | this.Messaging.Write(ErrorMessages.ExpectedAttribute(sourceLineNumbers, element.Name.LocalName, "WebSite")); |
| 1210 | } | 1230 | } |
| 1211 | 1231 | ||
| 1212 | foreach (XElement child in element.Elements()) | 1232 | foreach (var child in element.Elements()) |
| 1213 | { | 1233 | { |
| 1214 | if (this.Namespace == child.Name.Namespace) | 1234 | if (this.Namespace == child.Name.Namespace) |
| 1215 | { | 1235 | { |
| 1216 | SourceLineNumber childSourceLineNumbers = this.ParseHelper.GetSourceLineNumbers(child); | 1236 | var childSourceLineNumbers = this.ParseHelper.GetSourceLineNumbers(child); |
| 1217 | switch (child.Name.LocalName) | 1237 | switch (child.Name.LocalName) |
| 1218 | { | 1238 | { |
| 1219 | case "WebApplication": | 1239 | case "WebApplication": |
| @@ -1230,7 +1250,7 @@ namespace WixToolset.Iis | |||
| 1230 | this.Messaging.Write(IIsErrors.IllegalElementWithoutComponent(childSourceLineNumbers, child.Name.LocalName)); | 1250 | this.Messaging.Write(IIsErrors.IllegalElementWithoutComponent(childSourceLineNumbers, child.Name.LocalName)); |
| 1231 | } | 1251 | } |
| 1232 | 1252 | ||
| 1233 | string childWebDirProperties = this.ParseWebDirPropertiesElement(intermediate, section, child); | 1253 | string childWebDirProperties = this.ParseWebDirPropertiesElement(intermediate, section, child, componentId); |
| 1234 | if (null == dirProperties) | 1254 | if (null == dirProperties) |
| 1235 | { | 1255 | { |
| 1236 | dirProperties = childWebDirProperties; | 1256 | dirProperties = childWebDirProperties; |
| @@ -1258,22 +1278,24 @@ namespace WixToolset.Iis | |||
| 1258 | 1278 | ||
| 1259 | if (null != application) | 1279 | if (null != application) |
| 1260 | { | 1280 | { |
| 1261 | this.ParseHelper.CreateSimpleReference(section, sourceLineNumbers, "IIsWebApplication", application); | 1281 | this.ParseHelper.CreateSimpleReference(section, sourceLineNumbers, IisTupleDefinitions.IIsWebApplication, application); |
| 1262 | } | 1282 | } |
| 1263 | 1283 | ||
| 1264 | this.ParseHelper.CreateSimpleReference(section, sourceLineNumbers, "IIsWebDirProperties", dirProperties); | 1284 | this.ParseHelper.CreateSimpleReference(section, sourceLineNumbers, IisTupleDefinitions.IIsWebDirProperties, dirProperties); |
| 1265 | 1285 | ||
| 1266 | // Reference ConfigureIIs since nothing will happen without it | 1286 | // Reference ConfigureIIs since nothing will happen without it |
| 1267 | this.ParseHelper.CreateSimpleReference(section, sourceLineNumbers, "CustomAction", "ConfigureIIs"); | 1287 | this.AddReferenceToConfigureIIs(section, sourceLineNumbers); |
| 1268 | 1288 | ||
| 1269 | if (!this.Messaging.EncounteredError) | 1289 | if (!this.Messaging.EncounteredError) |
| 1270 | { | 1290 | { |
| 1271 | var row = this.ParseHelper.CreateRow(section, sourceLineNumbers, "IIsWebDir", id); | 1291 | section.AddTuple(new IIsWebDirTuple(sourceLineNumbers, id) |
| 1272 | row.Set(1, componentId); | 1292 | { |
| 1273 | row.Set(2, parentWeb); | 1293 | ComponentRef = componentId, |
| 1274 | row.Set(3, path); | 1294 | WebRef = parentWeb, |
| 1275 | row.Set(4, dirProperties); | 1295 | Path = path, |
| 1276 | row.Set(5, application); | 1296 | DirPropertiesRef = dirProperties, |
| 1297 | ApplicationRef = application, | ||
| 1298 | }); | ||
| 1277 | } | 1299 | } |
| 1278 | } | 1300 | } |
| 1279 | 1301 | ||
| @@ -1282,29 +1304,29 @@ namespace WixToolset.Iis | |||
| 1282 | /// </summary> | 1304 | /// </summary> |
| 1283 | /// <param name="element">Element to parse.</param> | 1305 | /// <param name="element">Element to parse.</param> |
| 1284 | /// <returns>The identifier for this WebDirProperties.</returns> | 1306 | /// <returns>The identifier for this WebDirProperties.</returns> |
| 1285 | private string ParseWebDirPropertiesElement(Intermediate intermediate, IntermediateSection section, XElement element) | 1307 | private string ParseWebDirPropertiesElement(Intermediate intermediate, IntermediateSection section, XElement element, string componentId) |
| 1286 | { | 1308 | { |
| 1287 | SourceLineNumber sourceLineNumbers = this.ParseHelper.GetSourceLineNumbers(element); | 1309 | var sourceLineNumbers = this.ParseHelper.GetSourceLineNumbers(element); |
| 1288 | Identifier id = null; | 1310 | Identifier id = null; |
| 1289 | int access = 0; | 1311 | int access = 0; |
| 1290 | bool accessSet = false; | 1312 | var accessSet = false; |
| 1291 | int accessSSLFlags = 0; | 1313 | int accessSSLFlags = 0; |
| 1292 | bool accessSSLFlagsSet = false; | 1314 | var accessSSLFlagsSet = false; |
| 1293 | string anonymousUser = null; | 1315 | string anonymousUser = null; |
| 1294 | YesNoType aspDetailedError = YesNoType.NotSet; | 1316 | var aspDetailedError = YesNoType.NotSet; |
| 1295 | string authenticationProviders = null; | 1317 | string authenticationProviders = null; |
| 1296 | int authorization = 0; | 1318 | int authorization = 0; |
| 1297 | bool authorizationSet = false; | 1319 | var authorizationSet = false; |
| 1298 | string cacheControlCustom = null; | 1320 | string cacheControlCustom = null; |
| 1299 | long cacheControlMaxAge = CompilerConstants.LongNotSet; | 1321 | var cacheControlMaxAge = CompilerConstants.LongNotSet; |
| 1300 | string defaultDocuments = null; | 1322 | string defaultDocuments = null; |
| 1301 | string httpExpires = null; | 1323 | string httpExpires = null; |
| 1302 | bool iisControlledPassword = false; | 1324 | var iisControlledPassword = false; |
| 1303 | YesNoType index = YesNoType.NotSet; | 1325 | var index = YesNoType.NotSet; |
| 1304 | YesNoType logVisits = YesNoType.NotSet; | 1326 | var logVisits = YesNoType.NotSet; |
| 1305 | YesNoType notCustomError = YesNoType.NotSet; | 1327 | var notCustomError = YesNoType.NotSet; |
| 1306 | 1328 | ||
| 1307 | foreach (XAttribute attrib in element.Attributes()) | 1329 | foreach (var attrib in element.Attributes()) |
| 1308 | { | 1330 | { |
| 1309 | if (String.IsNullOrEmpty(attrib.Name.NamespaceName) || this.Namespace == attrib.Name.Namespace) | 1331 | if (String.IsNullOrEmpty(attrib.Name.NamespaceName) || this.Namespace == attrib.Name.Namespace) |
| 1310 | { | 1332 | { |
| @@ -1520,58 +1542,73 @@ namespace WixToolset.Iis | |||
| 1520 | 1542 | ||
| 1521 | if (null == id) | 1543 | if (null == id) |
| 1522 | { | 1544 | { |
| 1523 | this.Messaging.Write(ErrorMessages.ExpectedAttribute(sourceLineNumbers, element.Name.LocalName, "Id")); | 1545 | if (null == componentId) |
| 1546 | { | ||
| 1547 | this.Messaging.Write(ErrorMessages.ExpectedAttribute(sourceLineNumbers, element.Name.LocalName, "Id")); | ||
| 1548 | id = Identifier.Invalid; | ||
| 1549 | } | ||
| 1550 | else | ||
| 1551 | { | ||
| 1552 | id = this.ParseHelper.CreateIdentifier("wdp", componentId); | ||
| 1553 | } | ||
| 1524 | } | 1554 | } |
| 1525 | 1555 | ||
| 1526 | this.ParseHelper.ParseForExtensionElements(this.Context.Extensions, intermediate, section, element); | 1556 | this.ParseHelper.ParseForExtensionElements(this.Context.Extensions, intermediate, section, element); |
| 1527 | 1557 | ||
| 1528 | if (!this.Messaging.EncounteredError) | 1558 | if (!this.Messaging.EncounteredError) |
| 1529 | { | 1559 | { |
| 1530 | var row = this.ParseHelper.CreateRow(section, sourceLineNumbers, "IIsWebDirProperties", id); | 1560 | var tuple = section.AddTuple(new IIsWebDirPropertiesTuple(sourceLineNumbers, id) |
| 1561 | { | ||
| 1562 | AnonymousUserRef = anonymousUser, | ||
| 1563 | IIsControlledPassword = iisControlledPassword ? 1 : 0, | ||
| 1564 | DefaultDoc = defaultDocuments, | ||
| 1565 | HttpExpires = httpExpires, | ||
| 1566 | CacheControlCustom = cacheControlCustom, | ||
| 1567 | }); | ||
| 1568 | |||
| 1531 | if (accessSet) | 1569 | if (accessSet) |
| 1532 | { | 1570 | { |
| 1533 | row.Set(1, access); | 1571 | tuple.Access = access; |
| 1534 | } | 1572 | } |
| 1535 | 1573 | ||
| 1536 | if (authorizationSet) | 1574 | if (authorizationSet) |
| 1537 | { | 1575 | { |
| 1538 | row.Set(2, authorization); | 1576 | tuple.Authorization = authorization; |
| 1539 | } | 1577 | } |
| 1540 | row.Set(3, anonymousUser); | 1578 | |
| 1541 | row.Set(4, iisControlledPassword ? 1 : 0); | ||
| 1542 | if (YesNoType.NotSet != logVisits) | 1579 | if (YesNoType.NotSet != logVisits) |
| 1543 | { | 1580 | { |
| 1544 | row.Set(5, YesNoType.Yes == logVisits ? 1 : 0); | 1581 | tuple.LogVisits = YesNoType.Yes == logVisits ? 1 : 0; |
| 1545 | } | 1582 | } |
| 1546 | 1583 | ||
| 1547 | if (YesNoType.NotSet != index) | 1584 | if (YesNoType.NotSet != index) |
| 1548 | { | 1585 | { |
| 1549 | row.Set(6, YesNoType.Yes == index ? 1 : 0); | 1586 | tuple.Index = YesNoType.Yes == index ? 1 : 0; |
| 1550 | } | 1587 | } |
| 1551 | row.Set(7, defaultDocuments); | 1588 | |
| 1552 | if (YesNoType.NotSet != aspDetailedError) | 1589 | if (YesNoType.NotSet != aspDetailedError) |
| 1553 | { | 1590 | { |
| 1554 | row.Set(8, YesNoType.Yes == aspDetailedError ? 1 : 0); | 1591 | tuple.AspDetailedError = YesNoType.Yes == aspDetailedError ? 1 : 0; |
| 1555 | } | 1592 | } |
| 1556 | row.Set(9, httpExpires); | 1593 | |
| 1557 | if (CompilerConstants.LongNotSet != cacheControlMaxAge) | 1594 | if (CompilerConstants.LongNotSet != cacheControlMaxAge) |
| 1558 | { | 1595 | { |
| 1559 | row.Set(10, unchecked((int)cacheControlMaxAge)); | 1596 | tuple.CacheControlMaxAge = unchecked((int)cacheControlMaxAge); |
| 1560 | } | 1597 | } |
| 1561 | row.Set(11, cacheControlCustom); | 1598 | |
| 1562 | if (YesNoType.NotSet != notCustomError) | 1599 | if (YesNoType.NotSet != notCustomError) |
| 1563 | { | 1600 | { |
| 1564 | row.Set(12, YesNoType.Yes == notCustomError ? 1 : 0); | 1601 | tuple.NoCustomError = YesNoType.Yes == notCustomError ? 1 : 0; |
| 1565 | } | 1602 | } |
| 1566 | 1603 | ||
| 1567 | if (accessSSLFlagsSet) | 1604 | if (accessSSLFlagsSet) |
| 1568 | { | 1605 | { |
| 1569 | row.Set(13, accessSSLFlags); | 1606 | tuple.AccessSSLFlags = accessSSLFlags; |
| 1570 | } | 1607 | } |
| 1571 | 1608 | ||
| 1572 | if (null != authenticationProviders) | 1609 | if (null != authenticationProviders) |
| 1573 | { | 1610 | { |
| 1574 | row.Set(14, authenticationProviders); | 1611 | tuple.AuthenticationProviders = authenticationProviders; |
| 1575 | } | 1612 | } |
| 1576 | } | 1613 | } |
| 1577 | 1614 | ||
| @@ -1586,13 +1623,13 @@ namespace WixToolset.Iis | |||
| 1586 | /// <param name="parent">Id of the parent.</param> | 1623 | /// <param name="parent">Id of the parent.</param> |
| 1587 | private void ParseWebErrorElement(Intermediate intermediate, IntermediateSection section, XElement element, WebErrorParentType parentType, string parent) | 1624 | private void ParseWebErrorElement(Intermediate intermediate, IntermediateSection section, XElement element, WebErrorParentType parentType, string parent) |
| 1588 | { | 1625 | { |
| 1589 | SourceLineNumber sourceLineNumbers = this.ParseHelper.GetSourceLineNumbers(element); | 1626 | var sourceLineNumbers = this.ParseHelper.GetSourceLineNumbers(element); |
| 1590 | int errorCode = CompilerConstants.IntegerNotSet; | 1627 | var errorCode = CompilerConstants.IntegerNotSet; |
| 1591 | string file = null; | 1628 | string file = null; |
| 1592 | string url = null; | 1629 | string url = null; |
| 1593 | int subCode = CompilerConstants.IntegerNotSet; | 1630 | var subCode = CompilerConstants.IntegerNotSet; |
| 1594 | 1631 | ||
| 1595 | foreach (XAttribute attrib in element.Attributes()) | 1632 | foreach (var attrib in element.Attributes()) |
| 1596 | { | 1633 | { |
| 1597 | if (String.IsNullOrEmpty(attrib.Name.NamespaceName) || this.Namespace == attrib.Name.Namespace) | 1634 | if (String.IsNullOrEmpty(attrib.Name.NamespaceName) || this.Namespace == attrib.Name.Namespace) |
| 1598 | { | 1635 | { |
| @@ -1641,17 +1678,19 @@ namespace WixToolset.Iis | |||
| 1641 | this.ParseHelper.ParseForExtensionElements(this.Context.Extensions, intermediate, section, element); | 1678 | this.ParseHelper.ParseForExtensionElements(this.Context.Extensions, intermediate, section, element); |
| 1642 | 1679 | ||
| 1643 | // Reference ConfigureIIs since nothing will happen without it | 1680 | // Reference ConfigureIIs since nothing will happen without it |
| 1644 | this.ParseHelper.CreateSimpleReference(section, sourceLineNumbers, "CustomAction", "ConfigureIIs"); | 1681 | this.AddReferenceToConfigureIIs(section, sourceLineNumbers); |
| 1645 | 1682 | ||
| 1646 | if (!this.Messaging.EncounteredError) | 1683 | if (!this.Messaging.EncounteredError) |
| 1647 | { | 1684 | { |
| 1648 | var row = this.ParseHelper.CreateRow(section, sourceLineNumbers, "IIsWebError"); | 1685 | section.AddTuple(new IIsWebErrorTuple(sourceLineNumbers) |
| 1649 | row.Set(0, errorCode); | 1686 | { |
| 1650 | row.Set(1, subCode); | 1687 | ErrorCode = errorCode, |
| 1651 | row.Set(2, (int)parentType); | 1688 | SubCode = subCode, |
| 1652 | row.Set(3, parent); | 1689 | ParentType = (int)parentType, |
| 1653 | row.Set(4, file); | 1690 | ParentValue = parent, |
| 1654 | row.Set(5, url); | 1691 | File = file, |
| 1692 | URL = url, | ||
| 1693 | }); | ||
| 1655 | } | 1694 | } |
| 1656 | } | 1695 | } |
| 1657 | 1696 | ||
| @@ -1663,15 +1702,15 @@ namespace WixToolset.Iis | |||
| 1663 | /// <param name="parentWeb">Optional identifier of parent web site.</param> | 1702 | /// <param name="parentWeb">Optional identifier of parent web site.</param> |
| 1664 | private void ParseWebFilterElement(Intermediate intermediate, IntermediateSection section, XElement element, string componentId, string parentWeb) | 1703 | private void ParseWebFilterElement(Intermediate intermediate, IntermediateSection section, XElement element, string componentId, string parentWeb) |
| 1665 | { | 1704 | { |
| 1666 | SourceLineNumber sourceLineNumbers = this.ParseHelper.GetSourceLineNumbers(element); | 1705 | var sourceLineNumbers = this.ParseHelper.GetSourceLineNumbers(element); |
| 1667 | Identifier id = null; | 1706 | Identifier id = null; |
| 1668 | string description = null; | 1707 | string description = null; |
| 1669 | int flags = 0; | 1708 | int flags = 0; |
| 1670 | int loadOrder = CompilerConstants.IntegerNotSet; | 1709 | var loadOrder = CompilerConstants.IntegerNotSet; |
| 1671 | string name = null; | 1710 | string name = null; |
| 1672 | string path = null; | 1711 | string path = null; |
| 1673 | 1712 | ||
| 1674 | foreach (XAttribute attrib in element.Attributes()) | 1713 | foreach (var attrib in element.Attributes()) |
| 1675 | { | 1714 | { |
| 1676 | if (String.IsNullOrEmpty(attrib.Name.NamespaceName) || this.Namespace == attrib.Name.Namespace) | 1715 | if (String.IsNullOrEmpty(attrib.Name.NamespaceName) || this.Namespace == attrib.Name.Namespace) |
| 1677 | { | 1716 | { |
| @@ -1717,7 +1756,7 @@ namespace WixToolset.Iis | |||
| 1717 | } | 1756 | } |
| 1718 | 1757 | ||
| 1719 | parentWeb = this.ParseHelper.GetAttributeIdentifierValue(sourceLineNumbers, attrib); | 1758 | parentWeb = this.ParseHelper.GetAttributeIdentifierValue(sourceLineNumbers, attrib); |
| 1720 | this.ParseHelper.CreateSimpleReference(section, sourceLineNumbers, "IIsWebSite", parentWeb); | 1759 | this.ParseHelper.CreateSimpleReference(section, sourceLineNumbers, IisTupleDefinitions.IIsWebSite, parentWeb); |
| 1721 | break; | 1760 | break; |
| 1722 | default: | 1761 | default: |
| 1723 | this.ParseHelper.UnexpectedAttribute(element, attrib); | 1762 | this.ParseHelper.UnexpectedAttribute(element, attrib); |
| @@ -1732,7 +1771,7 @@ namespace WixToolset.Iis | |||
| 1732 | 1771 | ||
| 1733 | if (null == id) | 1772 | if (null == id) |
| 1734 | { | 1773 | { |
| 1735 | this.Messaging.Write(ErrorMessages.ExpectedAttribute(sourceLineNumbers, element.Name.LocalName, "Id")); | 1774 | id = this.ParseHelper.CreateIdentifier("ifl", name, componentId, path, parentWeb); |
| 1736 | } | 1775 | } |
| 1737 | 1776 | ||
| 1738 | if (null == name) | 1777 | if (null == name) |
| @@ -1748,20 +1787,23 @@ namespace WixToolset.Iis | |||
| 1748 | this.ParseHelper.ParseForExtensionElements(this.Context.Extensions, intermediate, section, element); | 1787 | this.ParseHelper.ParseForExtensionElements(this.Context.Extensions, intermediate, section, element); |
| 1749 | 1788 | ||
| 1750 | // Reference ConfigureIIs since nothing will happen without it | 1789 | // Reference ConfigureIIs since nothing will happen without it |
| 1751 | this.ParseHelper.CreateSimpleReference(section, sourceLineNumbers, "CustomAction", "ConfigureIIs"); | 1790 | this.AddReferenceToConfigureIIs(section, sourceLineNumbers); |
| 1752 | 1791 | ||
| 1753 | if (!this.Messaging.EncounteredError) | 1792 | if (!this.Messaging.EncounteredError) |
| 1754 | { | 1793 | { |
| 1755 | var row = this.ParseHelper.CreateRow(section, sourceLineNumbers, "IIsFilter", id); | 1794 | var tuple = section.AddTuple(new IIsFilterTuple(sourceLineNumbers, id) |
| 1756 | row.Set(1, name); | 1795 | { |
| 1757 | row.Set(2, componentId); | 1796 | Name = name, |
| 1758 | row.Set(3, path); | 1797 | ComponentRef = componentId, |
| 1759 | row.Set(4, parentWeb); | 1798 | Path = path, |
| 1760 | row.Set(5, description); | 1799 | WebRef = parentWeb, |
| 1761 | row.Set(6, flags); | 1800 | Description = description, |
| 1801 | Flags = flags, | ||
| 1802 | }); | ||
| 1803 | |||
| 1762 | if (CompilerConstants.IntegerNotSet != loadOrder) | 1804 | if (CompilerConstants.IntegerNotSet != loadOrder) |
| 1763 | { | 1805 | { |
| 1764 | row.Set(7, loadOrder); | 1806 | tuple.LoadOrder = loadOrder; |
| 1765 | } | 1807 | } |
| 1766 | } | 1808 | } |
| 1767 | } | 1809 | } |
| @@ -1772,11 +1814,11 @@ namespace WixToolset.Iis | |||
| 1772 | /// <param name="element">Node to be parsed.</param> | 1814 | /// <param name="element">Node to be parsed.</param> |
| 1773 | private void ParseWebLogElement(Intermediate intermediate, IntermediateSection section, XElement element) | 1815 | private void ParseWebLogElement(Intermediate intermediate, IntermediateSection section, XElement element) |
| 1774 | { | 1816 | { |
| 1775 | SourceLineNumber sourceLineNumbers = this.ParseHelper.GetSourceLineNumbers(element); | 1817 | var sourceLineNumbers = this.ParseHelper.GetSourceLineNumbers(element); |
| 1776 | Identifier id = null; | 1818 | Identifier id = null; |
| 1777 | string type = null; | 1819 | string type = null; |
| 1778 | 1820 | ||
| 1779 | foreach (XAttribute attrib in element.Attributes()) | 1821 | foreach (var attrib in element.Attributes()) |
| 1780 | { | 1822 | { |
| 1781 | if (String.IsNullOrEmpty(attrib.Name.NamespaceName) || this.Namespace == attrib.Name.Namespace) | 1823 | if (String.IsNullOrEmpty(attrib.Name.NamespaceName) || this.Namespace == attrib.Name.Namespace) |
| 1782 | { | 1824 | { |
| @@ -1786,7 +1828,7 @@ namespace WixToolset.Iis | |||
| 1786 | id = this.ParseHelper.GetAttributeIdentifier(sourceLineNumbers, attrib); | 1828 | id = this.ParseHelper.GetAttributeIdentifier(sourceLineNumbers, attrib); |
| 1787 | break; | 1829 | break; |
| 1788 | case "Type": | 1830 | case "Type": |
| 1789 | string typeValue = this.ParseHelper.GetAttributeValue(sourceLineNumbers, attrib); | 1831 | var typeValue = this.ParseHelper.GetAttributeValue(sourceLineNumbers, attrib); |
| 1790 | if (0 < typeValue.Length) | 1832 | if (0 < typeValue.Length) |
| 1791 | { | 1833 | { |
| 1792 | switch (typeValue) | 1834 | switch (typeValue) |
| @@ -1837,8 +1879,10 @@ namespace WixToolset.Iis | |||
| 1837 | 1879 | ||
| 1838 | if (!this.Messaging.EncounteredError) | 1880 | if (!this.Messaging.EncounteredError) |
| 1839 | { | 1881 | { |
| 1840 | var row = this.ParseHelper.CreateRow(section, sourceLineNumbers, "IIsWebLog", id); | 1882 | section.AddTuple(new IIsWebLogTuple(sourceLineNumbers, id) |
| 1841 | row.Set(1, type); | 1883 | { |
| 1884 | Format = type, | ||
| 1885 | }); | ||
| 1842 | } | 1886 | } |
| 1843 | } | 1887 | } |
| 1844 | 1888 | ||
| @@ -1849,11 +1893,11 @@ namespace WixToolset.Iis | |||
| 1849 | /// <param name="componentId">Identifier for parent component.</param> | 1893 | /// <param name="componentId">Identifier for parent component.</param> |
| 1850 | private void ParseWebPropertyElement(Intermediate intermediate, IntermediateSection section, XElement element, string componentId) | 1894 | private void ParseWebPropertyElement(Intermediate intermediate, IntermediateSection section, XElement element, string componentId) |
| 1851 | { | 1895 | { |
| 1852 | SourceLineNumber sourceLineNumbers = this.ParseHelper.GetSourceLineNumbers(element); | 1896 | var sourceLineNumbers = this.ParseHelper.GetSourceLineNumbers(element); |
| 1853 | Identifier id = null; | 1897 | Identifier id = null; |
| 1854 | string value = null; | 1898 | string value = null; |
| 1855 | 1899 | ||
| 1856 | foreach (XAttribute attrib in element.Attributes()) | 1900 | foreach (var attrib in element.Attributes()) |
| 1857 | { | 1901 | { |
| 1858 | if (String.IsNullOrEmpty(attrib.Name.NamespaceName) || this.Namespace == attrib.Name.Namespace) | 1902 | if (String.IsNullOrEmpty(attrib.Name.NamespaceName) || this.Namespace == attrib.Name.Namespace) |
| 1859 | { | 1903 | { |
| @@ -1902,14 +1946,16 @@ namespace WixToolset.Iis | |||
| 1902 | this.ParseHelper.ParseForExtensionElements(this.Context.Extensions, intermediate, section, element); | 1946 | this.ParseHelper.ParseForExtensionElements(this.Context.Extensions, intermediate, section, element); |
| 1903 | 1947 | ||
| 1904 | // Reference ConfigureIIs since nothing will happen without it | 1948 | // Reference ConfigureIIs since nothing will happen without it |
| 1905 | this.ParseHelper.CreateSimpleReference(section, sourceLineNumbers, "CustomAction", "ConfigureIIs"); | 1949 | this.AddReferenceToConfigureIIs(section, sourceLineNumbers); |
| 1906 | 1950 | ||
| 1907 | if (!this.Messaging.EncounteredError) | 1951 | if (!this.Messaging.EncounteredError) |
| 1908 | { | 1952 | { |
| 1909 | var row = this.ParseHelper.CreateRow(section, sourceLineNumbers, "IIsProperty", id); | 1953 | section.AddTuple(new IIsPropertyTuple(sourceLineNumbers, id) |
| 1910 | row.Set(1, componentId); | 1954 | { |
| 1911 | row.Set(2, 0); | 1955 | ComponentRef = componentId, |
| 1912 | row.Set(3, value); | 1956 | Attributes = 0, |
| 1957 | Value = value, | ||
| 1958 | }); | ||
| 1913 | } | 1959 | } |
| 1914 | } | 1960 | } |
| 1915 | 1961 | ||
| @@ -1920,7 +1966,7 @@ namespace WixToolset.Iis | |||
| 1920 | /// <param name="componentId">Identifier for parent component.</param> | 1966 | /// <param name="componentId">Identifier for parent component.</param> |
| 1921 | private void ParseWebServiceExtensionElement(Intermediate intermediate, IntermediateSection section, XElement element, string componentId) | 1967 | private void ParseWebServiceExtensionElement(Intermediate intermediate, IntermediateSection section, XElement element, string componentId) |
| 1922 | { | 1968 | { |
| 1923 | SourceLineNumber sourceLineNumbers = this.ParseHelper.GetSourceLineNumbers(element); | 1969 | var sourceLineNumbers = this.ParseHelper.GetSourceLineNumbers(element); |
| 1924 | Identifier id = null; | 1970 | Identifier id = null; |
| 1925 | int attributes = 0; | 1971 | int attributes = 0; |
| 1926 | string description = null; | 1972 | string description = null; |
| @@ -1978,7 +2024,7 @@ namespace WixToolset.Iis | |||
| 1978 | 2024 | ||
| 1979 | if (null == id) | 2025 | if (null == id) |
| 1980 | { | 2026 | { |
| 1981 | this.Messaging.Write(ErrorMessages.ExpectedAttribute(sourceLineNumbers, element.Name.LocalName, "Id")); | 2027 | id = this.ParseHelper.CreateIdentifier("iwe", componentId, file); |
| 1982 | } | 2028 | } |
| 1983 | 2029 | ||
| 1984 | if (null == file) | 2030 | if (null == file) |
| @@ -1989,16 +2035,18 @@ namespace WixToolset.Iis | |||
| 1989 | this.ParseHelper.ParseForExtensionElements(this.Context.Extensions, intermediate, section, element); | 2035 | this.ParseHelper.ParseForExtensionElements(this.Context.Extensions, intermediate, section, element); |
| 1990 | 2036 | ||
| 1991 | // Reference ConfigureIIs since nothing will happen without it | 2037 | // Reference ConfigureIIs since nothing will happen without it |
| 1992 | this.ParseHelper.CreateSimpleReference(section, sourceLineNumbers, "CustomAction", "ConfigureIIs"); | 2038 | this.AddReferenceToConfigureIIs(section, sourceLineNumbers); |
| 1993 | 2039 | ||
| 1994 | if (!this.Messaging.EncounteredError) | 2040 | if (!this.Messaging.EncounteredError) |
| 1995 | { | 2041 | { |
| 1996 | var row = this.ParseHelper.CreateRow(section, sourceLineNumbers, "IIsWebServiceExtension", id); | 2042 | section.AddTuple(new IIsWebServiceExtensionTuple(sourceLineNumbers, id) |
| 1997 | row.Set(1, componentId); | 2043 | { |
| 1998 | row.Set(2, file); | 2044 | ComponentRef = componentId, |
| 1999 | row.Set(3, description); | 2045 | File = file, |
| 2000 | row.Set(4, group); | 2046 | Description = description, |
| 2001 | row.Set(5, attributes); | 2047 | Group = group, |
| 2048 | Attributes = attributes, | ||
| 2049 | }); | ||
| 2002 | } | 2050 | } |
| 2003 | } | 2051 | } |
| 2004 | 2052 | ||
| @@ -2009,21 +2057,21 @@ namespace WixToolset.Iis | |||
| 2009 | /// <param name="componentId">Optional identifier of parent component.</param> | 2057 | /// <param name="componentId">Optional identifier of parent component.</param> |
| 2010 | private void ParseWebSiteElement(Intermediate intermediate, IntermediateSection section, XElement element, string componentId) | 2058 | private void ParseWebSiteElement(Intermediate intermediate, IntermediateSection section, XElement element, string componentId) |
| 2011 | { | 2059 | { |
| 2012 | SourceLineNumber sourceLineNumbers = this.ParseHelper.GetSourceLineNumbers(element); | 2060 | var sourceLineNumbers = this.ParseHelper.GetSourceLineNumbers(element); |
| 2013 | Identifier id = null; | 2061 | Identifier id = null; |
| 2014 | string application = null; | 2062 | string application = null; |
| 2015 | int attributes = 0; | 2063 | int attributes = 0; |
| 2016 | int connectionTimeout = CompilerConstants.IntegerNotSet; | 2064 | var connectionTimeout = CompilerConstants.IntegerNotSet; |
| 2017 | string description = null; | 2065 | string description = null; |
| 2018 | string directory = null; | 2066 | string directory = null; |
| 2019 | string dirProperties = null; | 2067 | string dirProperties = null; |
| 2020 | string keyAddress = null; | 2068 | string keyAddress = null; |
| 2021 | string log = null; | 2069 | string log = null; |
| 2022 | string siteId = null; | 2070 | string siteId = null; |
| 2023 | int sequence = CompilerConstants.IntegerNotSet; | 2071 | var sequence = CompilerConstants.IntegerNotSet; |
| 2024 | int state = CompilerConstants.IntegerNotSet; | 2072 | var state = CompilerConstants.IntegerNotSet; |
| 2025 | 2073 | ||
| 2026 | foreach (XAttribute attrib in element.Attributes()) | 2074 | foreach (var attrib in element.Attributes()) |
| 2027 | { | 2075 | { |
| 2028 | if (String.IsNullOrEmpty(attrib.Name.NamespaceName) || this.Namespace == attrib.Name.Namespace) | 2076 | if (String.IsNullOrEmpty(attrib.Name.NamespaceName) || this.Namespace == attrib.Name.Namespace) |
| 2029 | { | 2077 | { |
| @@ -2070,7 +2118,7 @@ namespace WixToolset.Iis | |||
| 2070 | break; | 2118 | break; |
| 2071 | case "Directory": | 2119 | case "Directory": |
| 2072 | directory = this.ParseHelper.GetAttributeIdentifierValue(sourceLineNumbers, attrib); | 2120 | directory = this.ParseHelper.GetAttributeIdentifierValue(sourceLineNumbers, attrib); |
| 2073 | this.ParseHelper.CreateSimpleReference(section, sourceLineNumbers, "Directory", directory); | 2121 | this.ParseHelper.CreateSimpleReference(section, sourceLineNumbers, TupleDefinitions.Directory, directory); |
| 2074 | break; | 2122 | break; |
| 2075 | case "DirProperties": | 2123 | case "DirProperties": |
| 2076 | if (null == componentId) | 2124 | if (null == componentId) |
| @@ -2121,7 +2169,7 @@ namespace WixToolset.Iis | |||
| 2121 | } | 2169 | } |
| 2122 | 2170 | ||
| 2123 | log = this.ParseHelper.GetAttributeIdentifierValue(sourceLineNumbers, attrib); | 2171 | log = this.ParseHelper.GetAttributeIdentifierValue(sourceLineNumbers, attrib); |
| 2124 | this.ParseHelper.CreateSimpleReference(section, sourceLineNumbers, "IIsWebLog", log); | 2172 | this.ParseHelper.CreateSimpleReference(section, sourceLineNumbers, IisTupleDefinitions.IIsWebLog, log); |
| 2125 | break; | 2173 | break; |
| 2126 | default: | 2174 | default: |
| 2127 | this.ParseHelper.UnexpectedAttribute(element, attrib); | 2175 | this.ParseHelper.UnexpectedAttribute(element, attrib); |
| @@ -2136,7 +2184,7 @@ namespace WixToolset.Iis | |||
| 2136 | 2184 | ||
| 2137 | if (null == id) | 2185 | if (null == id) |
| 2138 | { | 2186 | { |
| 2139 | this.Messaging.Write(ErrorMessages.ExpectedAttribute(sourceLineNumbers, element.Name.LocalName, "Id")); | 2187 | id = this.ParseHelper.CreateIdentifier("iws", description, componentId, siteId, application); |
| 2140 | } | 2188 | } |
| 2141 | 2189 | ||
| 2142 | if (null == description) | 2190 | if (null == description) |
| @@ -2149,11 +2197,11 @@ namespace WixToolset.Iis | |||
| 2149 | this.Messaging.Write(IIsErrors.RequiredAttributeUnderComponent(sourceLineNumbers, element.Name.LocalName, "Directory")); | 2197 | this.Messaging.Write(IIsErrors.RequiredAttributeUnderComponent(sourceLineNumbers, element.Name.LocalName, "Directory")); |
| 2150 | } | 2198 | } |
| 2151 | 2199 | ||
| 2152 | foreach (XElement child in element.Elements()) | 2200 | foreach (var child in element.Elements()) |
| 2153 | { | 2201 | { |
| 2154 | if (this.Namespace == child.Name.Namespace) | 2202 | if (this.Namespace == child.Name.Namespace) |
| 2155 | { | 2203 | { |
| 2156 | SourceLineNumber childSourceLineNumbers = this.ParseHelper.GetSourceLineNumbers(child); | 2204 | var childSourceLineNumbers = this.ParseHelper.GetSourceLineNumbers(child); |
| 2157 | switch (child.Name.LocalName) | 2205 | switch (child.Name.LocalName) |
| 2158 | { | 2206 | { |
| 2159 | case "CertificateRef": | 2207 | case "CertificateRef": |
| @@ -2206,7 +2254,7 @@ namespace WixToolset.Iis | |||
| 2206 | this.Messaging.Write(IIsErrors.IllegalElementWithoutComponent(childSourceLineNumbers, child.Name.LocalName)); | 2254 | this.Messaging.Write(IIsErrors.IllegalElementWithoutComponent(childSourceLineNumbers, child.Name.LocalName)); |
| 2207 | } | 2255 | } |
| 2208 | 2256 | ||
| 2209 | string childWebDirProperties = this.ParseWebDirPropertiesElement(intermediate, section, child); | 2257 | string childWebDirProperties = this.ParseWebDirPropertiesElement(intermediate, section, child, componentId); |
| 2210 | if (null == dirProperties) | 2258 | if (null == dirProperties) |
| 2211 | { | 2259 | { |
| 2212 | dirProperties = childWebDirProperties; | 2260 | dirProperties = childWebDirProperties; |
| @@ -2262,48 +2310,53 @@ namespace WixToolset.Iis | |||
| 2262 | 2310 | ||
| 2263 | if (null != application) | 2311 | if (null != application) |
| 2264 | { | 2312 | { |
| 2265 | this.ParseHelper.CreateSimpleReference(section, sourceLineNumbers, "IIsWebApplication", application); | 2313 | this.ParseHelper.CreateSimpleReference(section, sourceLineNumbers, IisTupleDefinitions.IIsWebApplication, application); |
| 2266 | } | 2314 | } |
| 2267 | 2315 | ||
| 2268 | if (null != dirProperties) | 2316 | if (null != dirProperties) |
| 2269 | { | 2317 | { |
| 2270 | this.ParseHelper.CreateSimpleReference(section, sourceLineNumbers, "IIsWebDirProperties", dirProperties); | 2318 | this.ParseHelper.CreateSimpleReference(section, sourceLineNumbers, IisTupleDefinitions.IIsWebDirProperties, dirProperties); |
| 2271 | } | 2319 | } |
| 2272 | 2320 | ||
| 2273 | if (null != componentId) | 2321 | if (null != componentId) |
| 2274 | { | 2322 | { |
| 2275 | // Reference ConfigureIIs since nothing will happen without it | 2323 | // Reference ConfigureIIs since nothing will happen without it |
| 2276 | this.ParseHelper.CreateSimpleReference(section, sourceLineNumbers, "CustomAction", "ConfigureIIs"); | 2324 | this.AddReferenceToConfigureIIs(section, sourceLineNumbers); |
| 2277 | } | 2325 | } |
| 2278 | 2326 | ||
| 2279 | if (!this.Messaging.EncounteredError) | 2327 | if (!this.Messaging.EncounteredError) |
| 2280 | { | 2328 | { |
| 2281 | var row = this.ParseHelper.CreateRow(section, sourceLineNumbers, "IIsWebSite", id); | 2329 | var tuple = section.AddTuple(new IIsWebSiteTuple(sourceLineNumbers, id) |
| 2282 | row.Set(1, componentId); | 2330 | { |
| 2283 | row.Set(2, description); | 2331 | ComponentRef = componentId, |
| 2332 | Description = description, | ||
| 2333 | DirectoryRef = directory, | ||
| 2334 | KeyAddressRef = keyAddress, | ||
| 2335 | DirPropertiesRef = dirProperties, | ||
| 2336 | ApplicationRef = application, | ||
| 2337 | LogRef = log, | ||
| 2338 | WebsiteId = siteId, | ||
| 2339 | }); | ||
| 2340 | |||
| 2284 | if (CompilerConstants.IntegerNotSet != connectionTimeout) | 2341 | if (CompilerConstants.IntegerNotSet != connectionTimeout) |
| 2285 | { | 2342 | { |
| 2286 | row.Set(3, connectionTimeout); | 2343 | tuple.ConnectionTimeout = connectionTimeout; |
| 2287 | } | 2344 | } |
| 2288 | row.Set(4, directory); | 2345 | |
| 2289 | if (CompilerConstants.IntegerNotSet != state) | 2346 | if (CompilerConstants.IntegerNotSet != state) |
| 2290 | { | 2347 | { |
| 2291 | row.Set(5, state); | 2348 | tuple.State = state; |
| 2292 | } | 2349 | } |
| 2293 | 2350 | ||
| 2294 | if (0 != attributes) | 2351 | if (0 != attributes) |
| 2295 | { | 2352 | { |
| 2296 | row.Set(6, attributes); | 2353 | tuple.Attributes = attributes; |
| 2297 | } | 2354 | } |
| 2298 | row.Set(7, keyAddress); | 2355 | |
| 2299 | row.Set(8, dirProperties); | ||
| 2300 | row.Set(9, application); | ||
| 2301 | if (CompilerConstants.IntegerNotSet != sequence) | 2356 | if (CompilerConstants.IntegerNotSet != sequence) |
| 2302 | { | 2357 | { |
| 2303 | row.Set(10, sequence); | 2358 | tuple.Sequence = sequence; |
| 2304 | } | 2359 | } |
| 2305 | row.Set(11, log); | ||
| 2306 | row.Set(12, siteId); | ||
| 2307 | } | 2360 | } |
| 2308 | } | 2361 | } |
| 2309 | 2362 | ||
| @@ -2315,12 +2368,12 @@ namespace WixToolset.Iis | |||
| 2315 | /// <param name="parent">Id of the parent.</param> | 2368 | /// <param name="parent">Id of the parent.</param> |
| 2316 | private void ParseHttpHeaderElement(Intermediate intermediate, IntermediateSection section, XElement element, HttpHeaderParentType parentType, string parent) | 2369 | private void ParseHttpHeaderElement(Intermediate intermediate, IntermediateSection section, XElement element, HttpHeaderParentType parentType, string parent) |
| 2317 | { | 2370 | { |
| 2318 | SourceLineNumber sourceLineNumbers = this.ParseHelper.GetSourceLineNumbers(element); | 2371 | var sourceLineNumbers = this.ParseHelper.GetSourceLineNumbers(element); |
| 2319 | Identifier id = null; | 2372 | Identifier id = null; |
| 2320 | string headerName = null; | 2373 | string headerName = null; |
| 2321 | string headerValue = null; | 2374 | string headerValue = null; |
| 2322 | 2375 | ||
| 2323 | foreach (XAttribute attrib in element.Attributes()) | 2376 | foreach (var attrib in element.Attributes()) |
| 2324 | { | 2377 | { |
| 2325 | if (String.IsNullOrEmpty(attrib.Name.NamespaceName) || this.Namespace == attrib.Name.Namespace) | 2378 | if (String.IsNullOrEmpty(attrib.Name.NamespaceName) || this.Namespace == attrib.Name.Namespace) |
| 2326 | { | 2379 | { |
| @@ -2358,15 +2411,20 @@ namespace WixToolset.Iis | |||
| 2358 | this.ParseHelper.ParseForExtensionElements(this.Context.Extensions, intermediate, section, element); | 2411 | this.ParseHelper.ParseForExtensionElements(this.Context.Extensions, intermediate, section, element); |
| 2359 | 2412 | ||
| 2360 | // Reference ConfigureIIs since nothing will happen without it | 2413 | // Reference ConfigureIIs since nothing will happen without it |
| 2361 | this.ParseHelper.CreateSimpleReference(section, sourceLineNumbers, "CustomAction", "ConfigureIIs"); | 2414 | this.AddReferenceToConfigureIIs(section, sourceLineNumbers); |
| 2362 | 2415 | ||
| 2363 | var row = this.ParseHelper.CreateRow(section, sourceLineNumbers, "IIsHttpHeader", id); | 2416 | if (!this.Messaging.EncounteredError) |
| 2364 | row.Set(1, (int)parentType); | 2417 | { |
| 2365 | row.Set(2, parent); | 2418 | section.AddTuple(new IIsHttpHeaderTuple(sourceLineNumbers, id) |
| 2366 | row.Set(3, headerName); | 2419 | { |
| 2367 | row.Set(4, headerValue); | 2420 | HttpHeader = id.Id, |
| 2368 | row.Set(5, 0); | 2421 | ParentType = (int)parentType, |
| 2369 | //row.Set(6, null); | 2422 | ParentValue = parent, |
| 2423 | Name = headerName, | ||
| 2424 | Value = headerValue, | ||
| 2425 | Attributes = 0, | ||
| 2426 | }); | ||
| 2427 | } | ||
| 2370 | } | 2428 | } |
| 2371 | 2429 | ||
| 2372 | /// <summary> | 2430 | /// <summary> |
| @@ -2378,14 +2436,14 @@ namespace WixToolset.Iis | |||
| 2378 | /// <param name="parentAlias">Alias of the parent web site.</param> | 2436 | /// <param name="parentAlias">Alias of the parent web site.</param> |
| 2379 | private void ParseWebVirtualDirElement(Intermediate intermediate, IntermediateSection section, XElement element, string componentId, string parentWeb, string parentAlias) | 2437 | private void ParseWebVirtualDirElement(Intermediate intermediate, IntermediateSection section, XElement element, string componentId, string parentWeb, string parentAlias) |
| 2380 | { | 2438 | { |
| 2381 | SourceLineNumber sourceLineNumbers = this.ParseHelper.GetSourceLineNumbers(element); | 2439 | var sourceLineNumbers = this.ParseHelper.GetSourceLineNumbers(element); |
| 2382 | Identifier id = null; | 2440 | Identifier id = null; |
| 2383 | string alias = null; | 2441 | string alias = null; |
| 2384 | string application = null; | 2442 | string application = null; |
| 2385 | string directory = null; | 2443 | string directory = null; |
| 2386 | string dirProperties = null; | 2444 | string dirProperties = null; |
| 2387 | 2445 | ||
| 2388 | foreach (XAttribute attrib in element.Attributes()) | 2446 | foreach (var attrib in element.Attributes()) |
| 2389 | { | 2447 | { |
| 2390 | if (String.IsNullOrEmpty(attrib.Name.NamespaceName) || this.Namespace == attrib.Name.Namespace) | 2448 | if (String.IsNullOrEmpty(attrib.Name.NamespaceName) || this.Namespace == attrib.Name.Namespace) |
| 2391 | { | 2449 | { |
| @@ -2399,7 +2457,7 @@ namespace WixToolset.Iis | |||
| 2399 | break; | 2457 | break; |
| 2400 | case "Directory": | 2458 | case "Directory": |
| 2401 | directory = this.ParseHelper.GetAttributeIdentifierValue(sourceLineNumbers, attrib); | 2459 | directory = this.ParseHelper.GetAttributeIdentifierValue(sourceLineNumbers, attrib); |
| 2402 | this.ParseHelper.CreateSimpleReference(section, sourceLineNumbers, "Directory", directory); | 2460 | this.ParseHelper.CreateSimpleReference(section, sourceLineNumbers, TupleDefinitions.Directory, directory); |
| 2403 | break; | 2461 | break; |
| 2404 | case "DirProperties": | 2462 | case "DirProperties": |
| 2405 | dirProperties = this.ParseHelper.GetAttributeValue(sourceLineNumbers, attrib); | 2463 | dirProperties = this.ParseHelper.GetAttributeValue(sourceLineNumbers, attrib); |
| @@ -2414,7 +2472,7 @@ namespace WixToolset.Iis | |||
| 2414 | } | 2472 | } |
| 2415 | 2473 | ||
| 2416 | parentWeb = this.ParseHelper.GetAttributeIdentifierValue(sourceLineNumbers, attrib); | 2474 | parentWeb = this.ParseHelper.GetAttributeIdentifierValue(sourceLineNumbers, attrib); |
| 2417 | this.ParseHelper.CreateSimpleReference(section, sourceLineNumbers, "IIsWebSite", parentWeb); | 2475 | this.ParseHelper.CreateSimpleReference(section, sourceLineNumbers, IisTupleDefinitions.IIsWebSite, parentWeb); |
| 2418 | break; | 2476 | break; |
| 2419 | default: | 2477 | default: |
| 2420 | this.ParseHelper.UnexpectedAttribute(element, attrib); | 2478 | this.ParseHelper.UnexpectedAttribute(element, attrib); |
| @@ -2429,7 +2487,7 @@ namespace WixToolset.Iis | |||
| 2429 | 2487 | ||
| 2430 | if (null == id) | 2488 | if (null == id) |
| 2431 | { | 2489 | { |
| 2432 | this.Messaging.Write(ErrorMessages.ExpectedAttribute(sourceLineNumbers, element.Name.LocalName, "Id")); | 2490 | id = this.ParseHelper.CreateIdentifier("wvd", alias, directory, dirProperties, application, parentWeb); |
| 2433 | } | 2491 | } |
| 2434 | 2492 | ||
| 2435 | if (null == alias) | 2493 | if (null == alias) |
| @@ -2461,11 +2519,11 @@ namespace WixToolset.Iis | |||
| 2461 | alias = String.Concat(parentAlias, "/", alias); | 2519 | alias = String.Concat(parentAlias, "/", alias); |
| 2462 | } | 2520 | } |
| 2463 | 2521 | ||
| 2464 | foreach (XElement child in element.Elements()) | 2522 | foreach (var child in element.Elements()) |
| 2465 | { | 2523 | { |
| 2466 | if (this.Namespace == child.Name.Namespace) | 2524 | if (this.Namespace == child.Name.Namespace) |
| 2467 | { | 2525 | { |
| 2468 | SourceLineNumber childSourceLineNumbers = this.ParseHelper.GetSourceLineNumbers(child); | 2526 | var childSourceLineNumbers = this.ParseHelper.GetSourceLineNumbers(child); |
| 2469 | switch (child.Name.LocalName) | 2527 | switch (child.Name.LocalName) |
| 2470 | { | 2528 | { |
| 2471 | case "WebApplication": | 2529 | case "WebApplication": |
| @@ -2482,7 +2540,7 @@ namespace WixToolset.Iis | |||
| 2482 | this.Messaging.Write(IIsErrors.IllegalElementWithoutComponent(childSourceLineNumbers, child.Name.LocalName)); | 2540 | this.Messaging.Write(IIsErrors.IllegalElementWithoutComponent(childSourceLineNumbers, child.Name.LocalName)); |
| 2483 | } | 2541 | } |
| 2484 | 2542 | ||
| 2485 | string childWebDirProperties = this.ParseWebDirPropertiesElement(intermediate, section, child); | 2543 | string childWebDirProperties = this.ParseWebDirPropertiesElement(intermediate, section, child, componentId); |
| 2486 | if (null == dirProperties) | 2544 | if (null == dirProperties) |
| 2487 | { | 2545 | { |
| 2488 | dirProperties = childWebDirProperties; | 2546 | dirProperties = childWebDirProperties; |
| @@ -2518,27 +2576,34 @@ namespace WixToolset.Iis | |||
| 2518 | 2576 | ||
| 2519 | if (null != dirProperties) | 2577 | if (null != dirProperties) |
| 2520 | { | 2578 | { |
| 2521 | this.ParseHelper.CreateSimpleReference(section, sourceLineNumbers, "IIsWebDirProperties", dirProperties); | 2579 | this.ParseHelper.CreateSimpleReference(section, sourceLineNumbers, IisTupleDefinitions.IIsWebDirProperties, dirProperties); |
| 2522 | } | 2580 | } |
| 2523 | 2581 | ||
| 2524 | if (null != application) | 2582 | if (null != application) |
| 2525 | { | 2583 | { |
| 2526 | this.ParseHelper.CreateSimpleReference(section, sourceLineNumbers, "IIsWebApplication", application); | 2584 | this.ParseHelper.CreateSimpleReference(section, sourceLineNumbers, IisTupleDefinitions.IIsWebApplication, application); |
| 2527 | } | 2585 | } |
| 2528 | 2586 | ||
| 2529 | // Reference ConfigureIIs since nothing will happen without it | 2587 | // Reference ConfigureIIs since nothing will happen without it |
| 2530 | this.ParseHelper.CreateSimpleReference(section, sourceLineNumbers, "CustomAction", "ConfigureIIs"); | 2588 | this.AddReferenceToConfigureIIs(section, sourceLineNumbers); |
| 2531 | 2589 | ||
| 2532 | if (!this.Messaging.EncounteredError) | 2590 | if (!this.Messaging.EncounteredError) |
| 2533 | { | 2591 | { |
| 2534 | var row = this.ParseHelper.CreateRow(section, sourceLineNumbers, "IIsWebVirtualDir", id); | 2592 | section.AddTuple(new IIsWebVirtualDirTuple(sourceLineNumbers, id) |
| 2535 | row.Set(1, componentId); | 2593 | { |
| 2536 | row.Set(2, parentWeb); | 2594 | ComponentRef = componentId, |
| 2537 | row.Set(3, alias); | 2595 | WebRef = parentWeb, |
| 2538 | row.Set(4, directory); | 2596 | Alias = alias, |
| 2539 | row.Set(5, dirProperties); | 2597 | DirectoryRef = directory, |
| 2540 | row.Set(6, application); | 2598 | DirPropertiesRef = dirProperties, |
| 2599 | ApplicationRef = application, | ||
| 2600 | }); | ||
| 2541 | } | 2601 | } |
| 2542 | } | 2602 | } |
| 2603 | |||
| 2604 | private void AddReferenceToConfigureIIs(IntermediateSection section, SourceLineNumber sourceLineNumbers) | ||
| 2605 | { | ||
| 2606 | this.ParseHelper.CreateSimpleReference(section, sourceLineNumbers, TupleDefinitions.CustomAction, "ConfigureIIs"); | ||
| 2607 | } | ||
| 2543 | } | 2608 | } |
| 2544 | } | 2609 | } |
diff --git a/src/wixext/IisTableDefinitions.cs b/src/wixext/IisTableDefinitions.cs new file mode 100644 index 00000000..eebfd26a --- /dev/null +++ b/src/wixext/IisTableDefinitions.cs | |||
| @@ -0,0 +1,324 @@ | |||
| 1 | // Copyright (c) .NET Foundation and contributors. All rights reserved. Licensed under the Microsoft Reciprocal License. See LICENSE.TXT file in the project root for full license information. | ||
| 2 | |||
| 3 | namespace WixToolset.Iis | ||
| 4 | { | ||
| 5 | using WixToolset.Data.WindowsInstaller; | ||
| 6 | |||
| 7 | public static class IisTableDefinitions | ||
| 8 | { | ||
| 9 | public static readonly TableDefinition Certificate = new TableDefinition( | ||
| 10 | "Certificate", | ||
| 11 | new[] | ||
| 12 | { | ||
| 13 | new ColumnDefinition("Certificate", ColumnType.String, 72, primaryKey: true, nullable: false, ColumnCategory.Identifier, keyColumn: 1, description: "Identifier for the certificate in the package.", modularizeType: ColumnModularizeType.Column), | ||
| 14 | new ColumnDefinition("Component_", ColumnType.String, 72, primaryKey: false, nullable: false, ColumnCategory.Identifier, description: "Foreign key into the Component table used to determine install state", modularizeType: ColumnModularizeType.Column), | ||
| 15 | new ColumnDefinition("Name", ColumnType.String, 255, primaryKey: false, nullable: false, ColumnCategory.Formatted, description: "Name to be used for the Certificate."), | ||
| 16 | new ColumnDefinition("StoreLocation", ColumnType.Number, 2, primaryKey: false, nullable: false, ColumnCategory.Unknown, minValue: 1, maxValue: 2, description: "Location of the target certificate store (CurrentUser == 1, LocalMachine == 2)"), | ||
| 17 | new ColumnDefinition("StoreName", ColumnType.String, 64, primaryKey: false, nullable: false, ColumnCategory.Formatted, description: "Name of the target certificate store"), | ||
| 18 | new ColumnDefinition("Attributes", ColumnType.Number, 4, primaryKey: false, nullable: false, ColumnCategory.Unknown, minValue: 0, maxValue: 2147483647, description: "Attributes of the certificate"), | ||
| 19 | new ColumnDefinition("Binary_", ColumnType.String, 72, primaryKey: false, nullable: true, ColumnCategory.Identifier, keyTable: "Binary", keyColumn: 1, description: "Identifier to Binary table containing certificate.", modularizeType: ColumnModularizeType.Column), | ||
| 20 | new ColumnDefinition("CertificatePath", ColumnType.String, 0, primaryKey: false, nullable: true, ColumnCategory.Formatted, description: "Property to path of certificate.", modularizeType: ColumnModularizeType.Property), | ||
| 21 | new ColumnDefinition("PFXPassword", ColumnType.String, 0, primaryKey: false, nullable: true, ColumnCategory.Formatted, description: "Hidden property to a pfx password", modularizeType: ColumnModularizeType.Property), | ||
| 22 | }, | ||
| 23 | tupleDefinitionName: "Certificate", | ||
| 24 | tupleIdIsPrimaryKey: true | ||
| 25 | ); | ||
| 26 | |||
| 27 | public static readonly TableDefinition CertificateHash = new TableDefinition( | ||
| 28 | "CertificateHash", | ||
| 29 | new[] | ||
| 30 | { | ||
| 31 | new ColumnDefinition("Certificate_", ColumnType.String, 72, primaryKey: true, nullable: false, ColumnCategory.Identifier, keyColumn: 1, description: "Foreign key to certificate in Certificate table.", modularizeType: ColumnModularizeType.Column), | ||
| 32 | new ColumnDefinition("Hash", ColumnType.String, 0, primaryKey: false, nullable: true, ColumnCategory.Text, description: "Base64 encoded SHA1 hash of certificate populated at run-time."), | ||
| 33 | }, | ||
| 34 | tupleDefinitionName: "CertificateHash", | ||
| 35 | tupleIdIsPrimaryKey: false | ||
| 36 | ); | ||
| 37 | |||
| 38 | public static readonly TableDefinition IIsWebSiteCertificates = new TableDefinition( | ||
| 39 | "IIsWebSiteCertificates", | ||
| 40 | new[] | ||
| 41 | { | ||
| 42 | new ColumnDefinition("Web_", ColumnType.String, 72, primaryKey: true, nullable: false, ColumnCategory.Identifier, keyTable: "IIsWebSite", keyColumn: 1, description: "The index into the IIsWebSite table.", modularizeType: ColumnModularizeType.Column), | ||
| 43 | new ColumnDefinition("Certificate_", ColumnType.String, 72, primaryKey: true, nullable: false, ColumnCategory.Text, keyTable: "Certificate", keyColumn: 1, description: "The index into the Certificate table.", modularizeType: ColumnModularizeType.Column), | ||
| 44 | }, | ||
| 45 | tupleDefinitionName: "IIsWebSiteCertificates", | ||
| 46 | tupleIdIsPrimaryKey: false | ||
| 47 | ); | ||
| 48 | |||
| 49 | public static readonly TableDefinition IIsAppPool = new TableDefinition( | ||
| 50 | "IIsAppPool", | ||
| 51 | new[] | ||
| 52 | { | ||
| 53 | new ColumnDefinition("AppPool", ColumnType.String, 72, primaryKey: true, nullable: false, ColumnCategory.Identifier, description: "Primary key, non-localized token for apppool", modularizeType: ColumnModularizeType.Column), | ||
| 54 | new ColumnDefinition("Name", ColumnType.String, 72, primaryKey: false, nullable: false, ColumnCategory.Formatted, description: "Name to be used for the IIs AppPool.", modularizeType: ColumnModularizeType.Property), | ||
| 55 | new ColumnDefinition("Component_", ColumnType.String, 72, primaryKey: false, nullable: true, ColumnCategory.Identifier, keyTable: "Component", keyColumn: 1, description: "Foreign key referencing Component that controls the app pool", modularizeType: ColumnModularizeType.Column), | ||
| 56 | new ColumnDefinition("Attributes", ColumnType.Number, 2, primaryKey: false, nullable: false, ColumnCategory.Unknown, description: "Attributes of the AppPool"), | ||
| 57 | new ColumnDefinition("User_", ColumnType.String, 72, primaryKey: false, nullable: true, ColumnCategory.Identifier, keyTable: "User", keyColumn: 1, description: "User account to run the app pool as", modularizeType: ColumnModularizeType.Column), | ||
| 58 | new ColumnDefinition("RecycleMinutes", ColumnType.Number, 2, primaryKey: false, nullable: true, ColumnCategory.Unknown, description: "Number of minutes between recycling app pool"), | ||
| 59 | new ColumnDefinition("RecycleRequests", ColumnType.Number, 2, primaryKey: false, nullable: true, ColumnCategory.Unknown, description: "Number of requests between recycling app pool"), | ||
| 60 | new ColumnDefinition("RecycleTimes", ColumnType.String, 72, primaryKey: false, nullable: true, ColumnCategory.Unknown, description: "Times to recycle app pool (comma delimited - i.e. 1:45,13:30)"), | ||
| 61 | new ColumnDefinition("IdleTimeout", ColumnType.Number, 2, primaryKey: false, nullable: true, ColumnCategory.Unknown, description: "Amount of idle time before shutting down"), | ||
| 62 | new ColumnDefinition("QueueLimit", ColumnType.Number, 2, primaryKey: false, nullable: true, ColumnCategory.Unknown, description: "Reject requests after queue gets how large"), | ||
| 63 | new ColumnDefinition("CPUMon", ColumnType.String, 72, primaryKey: false, nullable: true, ColumnCategory.Unknown, description: "CPUMon is a comma delimeted list of the following format: <percent CPU usage>,<refress minutes>,<Action>. The values for Action are 1 (Shutdown) and 0 (No Action)."), | ||
| 64 | new ColumnDefinition("MaxProc", ColumnType.Number, 2, primaryKey: false, nullable: true, ColumnCategory.Unknown, description: "Maximum number of processes to use"), | ||
| 65 | new ColumnDefinition("VirtualMemory", ColumnType.Number, 4, primaryKey: false, nullable: true, ColumnCategory.Unknown, description: "Amount of virtual memory (in KB) that a worker process can use before the worker process recycles. The maximum value supported for this field is 4,294,967 KB."), | ||
| 66 | new ColumnDefinition("PrivateMemory", ColumnType.Number, 4, primaryKey: false, nullable: true, ColumnCategory.Unknown, description: "Amount of private memory (in KB) that a worker process can use before the worker process recycles. The maximum value supported for this field is 4,294,967 KB."), | ||
| 67 | new ColumnDefinition("ManagedRuntimeVersion", ColumnType.String, 72, primaryKey: false, nullable: true, ColumnCategory.Unknown, description: "Specifies the .NET Framework version to be used by the application pool."), | ||
| 68 | new ColumnDefinition("ManagedPipelineMode", ColumnType.String, 72, primaryKey: false, nullable: true, ColumnCategory.Unknown, description: "Specifies the request-processing mode that is used to process requests for managed content."), | ||
| 69 | }, | ||
| 70 | tupleDefinitionName: "IIsAppPool", | ||
| 71 | tupleIdIsPrimaryKey: true | ||
| 72 | ); | ||
| 73 | |||
| 74 | public static readonly TableDefinition IIsMimeMap = new TableDefinition( | ||
| 75 | "IIsMimeMap", | ||
| 76 | new[] | ||
| 77 | { | ||
| 78 | new ColumnDefinition("MimeMap", ColumnType.String, 72, primaryKey: true, nullable: false, ColumnCategory.Identifier, description: "Primary key, non-localized token for Mime Map definitions", modularizeType: ColumnModularizeType.Column), | ||
| 79 | new ColumnDefinition("ParentType", ColumnType.Number, 2, primaryKey: false, nullable: false, ColumnCategory.Unknown, possibilities: "1;2", description: "Type of parent: 1=vdir 2=website"), | ||
| 80 | new ColumnDefinition("ParentValue", ColumnType.String, 72, primaryKey: false, nullable: false, ColumnCategory.Identifier, description: "Name of the parent value.", modularizeType: ColumnModularizeType.Column), | ||
| 81 | new ColumnDefinition("MimeType", ColumnType.String, 72, primaryKey: false, nullable: false, ColumnCategory.Text, description: "Mime-type covered by the MimeMap."), | ||
| 82 | new ColumnDefinition("Extension", ColumnType.String, 72, primaryKey: false, nullable: false, ColumnCategory.Text, description: "Extension covered by the MimeMap."), | ||
| 83 | }, | ||
| 84 | tupleDefinitionName: "IIsMimeMap", | ||
| 85 | tupleIdIsPrimaryKey: true | ||
| 86 | ); | ||
| 87 | |||
| 88 | public static readonly TableDefinition IIsProperty = new TableDefinition( | ||
| 89 | "IIsProperty", | ||
| 90 | new[] | ||
| 91 | { | ||
| 92 | new ColumnDefinition("Property", ColumnType.String, 72, primaryKey: true, nullable: false, ColumnCategory.Identifier, description: "Unique name of the IIsProperty"), | ||
| 93 | new ColumnDefinition("Component_", ColumnType.String, 72, primaryKey: false, nullable: false, ColumnCategory.Identifier, keyTable: "Component", keyColumn: 1, description: "Component that the property is linked to", modularizeType: ColumnModularizeType.Column), | ||
| 94 | new ColumnDefinition("Attributes", ColumnType.Number, 2, primaryKey: false, nullable: false, ColumnCategory.Unknown, description: "Attributes of the IIsProperty (unused)"), | ||
| 95 | new ColumnDefinition("Value", ColumnType.String, 72, primaryKey: false, nullable: true, ColumnCategory.Unknown, description: "Value of the IIsProperty"), | ||
| 96 | }, | ||
| 97 | tupleDefinitionName: "IIsProperty", | ||
| 98 | tupleIdIsPrimaryKey: true | ||
| 99 | ); | ||
| 100 | |||
| 101 | public static readonly TableDefinition IIsWebDirProperties = new TableDefinition( | ||
| 102 | "IIsWebDirProperties", | ||
| 103 | new[] | ||
| 104 | { | ||
| 105 | new ColumnDefinition("DirProperties", ColumnType.String, 72, primaryKey: true, nullable: false, ColumnCategory.Identifier, description: "Primary key, non-localized token for Web Properties", modularizeType: ColumnModularizeType.Column), | ||
| 106 | new ColumnDefinition("Access", ColumnType.Number, 2, primaryKey: false, nullable: true, ColumnCategory.Unknown, description: "Access rights to the web server"), | ||
| 107 | new ColumnDefinition("Authorization", ColumnType.Number, 2, primaryKey: false, nullable: true, ColumnCategory.Unknown, description: "Authorization policy to web server (anonymous access, NTLM, etc)"), | ||
| 108 | new ColumnDefinition("AnonymousUser_", ColumnType.String, 72, primaryKey: false, nullable: true, ColumnCategory.Identifier, keyTable: "User", keyColumn: 1, description: "Foreign key, User used to log into database", modularizeType: ColumnModularizeType.Column), | ||
| 109 | new ColumnDefinition("IIsControlledPassword", ColumnType.Number, 2, primaryKey: false, nullable: true, ColumnCategory.Unknown, possibilities: "0;1", description: "Specifies whether IIs is allowed to set the AnonymousUser_ password"), | ||
| 110 | new ColumnDefinition("LogVisits", ColumnType.Number, 2, primaryKey: false, nullable: true, ColumnCategory.Unknown, possibilities: "0;1", description: "Specifies whether IIs tracks all access to the directory"), | ||
| 111 | new ColumnDefinition("Index", ColumnType.Number, 2, primaryKey: false, nullable: true, ColumnCategory.Unknown, possibilities: "0;1", description: "Specifies whether IIs searches the directory"), | ||
| 112 | new ColumnDefinition("DefaultDoc", ColumnType.String, 255, primaryKey: false, nullable: true, ColumnCategory.Text, description: "Comma delimited list of file names to act as a default document"), | ||
| 113 | new ColumnDefinition("AspDetailedError", ColumnType.Number, 2, primaryKey: false, nullable: true, ColumnCategory.Unknown, possibilities: "0;1", description: "Specifies whether detailed ASP errors are sent to browser"), | ||
| 114 | new ColumnDefinition("HttpExpires", ColumnType.String, 255, primaryKey: false, nullable: true, ColumnCategory.Text, description: "Value to set the HttpExpires attribute to for a Web Dir in the metabase"), | ||
| 115 | new ColumnDefinition("CacheControlMaxAge", ColumnType.Number, 4, primaryKey: false, nullable: true, ColumnCategory.Unknown, description: "Integer value specifying the cache control maximum age value."), | ||
| 116 | new ColumnDefinition("CacheControlCustom", ColumnType.String, 255, primaryKey: false, nullable: true, ColumnCategory.Text, description: "Custom HTTP 1.1 cache control directives."), | ||
| 117 | new ColumnDefinition("NoCustomError", ColumnType.Number, 2, primaryKey: false, nullable: true, ColumnCategory.Unknown, possibilities: "0;1", description: "Specifies whether IIs will return custom errors for this directory."), | ||
| 118 | new ColumnDefinition("AccessSSLFlags", ColumnType.Number, 2, primaryKey: false, nullable: true, ColumnCategory.Unknown, description: "Specifies AccessSSLFlags IIS metabase property."), | ||
| 119 | new ColumnDefinition("AuthenticationProviders", ColumnType.String, 255, primaryKey: false, nullable: true, ColumnCategory.Text, description: "Comma delimited list, in order of precedence, of Windows authentication providers that IIS will attempt to use: NTLM, Kerberos, Negotiate, and others."), | ||
| 120 | }, | ||
| 121 | tupleDefinitionName: "IIsWebDirProperties", | ||
| 122 | tupleIdIsPrimaryKey: true | ||
| 123 | ); | ||
| 124 | |||
| 125 | public static readonly TableDefinition IIsWebAddress = new TableDefinition( | ||
| 126 | "IIsWebAddress", | ||
| 127 | new[] | ||
| 128 | { | ||
| 129 | new ColumnDefinition("Address", ColumnType.String, 72, primaryKey: true, nullable: false, ColumnCategory.Identifier, description: "Primary key, non-localized token", modularizeType: ColumnModularizeType.Column), | ||
| 130 | new ColumnDefinition("Web_", ColumnType.String, 72, primaryKey: false, nullable: false, ColumnCategory.Identifier, keyTable: "IIsWebSite", keyColumn: 1, description: "Foreign key referencing Web that uses the address.", modularizeType: ColumnModularizeType.Column), | ||
| 131 | new ColumnDefinition("IP", ColumnType.String, 255, primaryKey: false, nullable: true, ColumnCategory.Text, description: "String representing IP address (#.#.#.#) or NT machine name (fooserver)", modularizeType: ColumnModularizeType.Property), | ||
| 132 | new ColumnDefinition("Port", ColumnType.String, 72, primaryKey: false, nullable: false, ColumnCategory.Formatted, description: "Port web site listens on", modularizeType: ColumnModularizeType.Property), | ||
| 133 | new ColumnDefinition("Header", ColumnType.String, 255, primaryKey: false, nullable: true, ColumnCategory.Text, description: "Special header information for the web site"), | ||
| 134 | new ColumnDefinition("Secure", ColumnType.Number, 2, primaryKey: false, nullable: true, ColumnCategory.Unknown, possibilities: "0;1", description: "Specifies whether SSL is used to communicate with web site"), | ||
| 135 | }, | ||
| 136 | tupleDefinitionName: "IIsWebAddress", | ||
| 137 | tupleIdIsPrimaryKey: true | ||
| 138 | ); | ||
| 139 | |||
| 140 | public static readonly TableDefinition IIsWebSite = new TableDefinition( | ||
| 141 | "IIsWebSite", | ||
| 142 | new[] | ||
| 143 | { | ||
| 144 | new ColumnDefinition("Web", ColumnType.String, 72, primaryKey: true, nullable: false, ColumnCategory.Identifier, description: "Primary key, non-localized token", modularizeType: ColumnModularizeType.Column), | ||
| 145 | new ColumnDefinition("Component_", ColumnType.String, 72, primaryKey: false, nullable: true, ColumnCategory.Identifier, keyTable: "Component", keyColumn: 1, description: "Foreign key referencing Component that controls the web site", modularizeType: ColumnModularizeType.Column), | ||
| 146 | new ColumnDefinition("Description", ColumnType.String, 255, primaryKey: false, nullable: true, ColumnCategory.Formatted, description: "Description displayed in IIS MMC applet"), | ||
| 147 | new ColumnDefinition("ConnectionTimeout", ColumnType.Number, 2, primaryKey: false, nullable: true, ColumnCategory.Unknown, description: "Time connection is maintained without activity (in seconds)"), | ||
| 148 | new ColumnDefinition("Directory_", ColumnType.String, 72, primaryKey: false, nullable: true, ColumnCategory.Identifier, keyTable: "Directory", keyColumn: 1, description: "Foreign key referencing directory that the web site points at", modularizeType: ColumnModularizeType.Column), | ||
| 149 | new ColumnDefinition("State", ColumnType.Number, 2, primaryKey: false, nullable: true, ColumnCategory.Unknown, possibilities: "0;1;2", description: "Sets intial state of web site"), | ||
| 150 | new ColumnDefinition("Attributes", ColumnType.Number, 2, primaryKey: false, nullable: true, ColumnCategory.Unknown, possibilities: "2", description: "Control the install behavior of web site"), | ||
| 151 | new ColumnDefinition("KeyAddress_", ColumnType.String, 72, primaryKey: false, nullable: false, ColumnCategory.Identifier, keyTable: "IIsWebAddress", keyColumn: 1, description: "Foreign key referencing primary address for the web site", modularizeType: ColumnModularizeType.Column), | ||
| 152 | new ColumnDefinition("DirProperties_", ColumnType.String, 72, primaryKey: false, nullable: true, ColumnCategory.Identifier, keyTable: "IIsWebDirProperties", keyColumn: 1, description: "Foreign key referencing possible security information for the web site", modularizeType: ColumnModularizeType.Column), | ||
| 153 | new ColumnDefinition("Application_", ColumnType.String, 72, primaryKey: false, nullable: true, ColumnCategory.Identifier, keyTable: "IIsWebApplication", keyColumn: 1, description: "Foreign key referencing possible ASP application for the web site.", modularizeType: ColumnModularizeType.Column), | ||
| 154 | new ColumnDefinition("Sequence", ColumnType.Number, 2, primaryKey: false, nullable: true, ColumnCategory.Unknown, description: "Allows ordering of web site install"), | ||
| 155 | new ColumnDefinition("Log_", ColumnType.String, 72, primaryKey: false, nullable: true, ColumnCategory.Unknown, keyTable: "IIsWebLog", keyColumn: 1, description: "Foreign key reference to IIsWebLog data", modularizeType: ColumnModularizeType.Column), | ||
| 156 | new ColumnDefinition("Id", ColumnType.String, 74, primaryKey: false, nullable: true, ColumnCategory.Formatted, description: "Optional number or formatted value that resolves to number that acts as the WebSite Id."), | ||
| 157 | }, | ||
| 158 | tupleDefinitionName: "IIsWebSite", | ||
| 159 | tupleIdIsPrimaryKey: true | ||
| 160 | ); | ||
| 161 | |||
| 162 | public static readonly TableDefinition IIsWebApplication = new TableDefinition( | ||
| 163 | "IIsWebApplication", | ||
| 164 | new[] | ||
| 165 | { | ||
| 166 | new ColumnDefinition("Application", ColumnType.String, 72, primaryKey: true, nullable: false, ColumnCategory.Identifier, description: "Primary key, non-localized token for ASP Application", modularizeType: ColumnModularizeType.Column), | ||
| 167 | new ColumnDefinition("Name", ColumnType.Localized, 255, primaryKey: false, nullable: false, ColumnCategory.Formatted, description: "Name of application in IIS MMC applet", modularizeType: ColumnModularizeType.Property), | ||
| 168 | new ColumnDefinition("Isolation", ColumnType.Number, 2, primaryKey: false, nullable: false, ColumnCategory.Unknown, possibilities: "0;1;2", description: "Isolation level for ASP Application: 0 == Low, 2 == Medium, 1 == High"), | ||
| 169 | new ColumnDefinition("AllowSessions", ColumnType.Number, 2, primaryKey: false, nullable: true, ColumnCategory.Unknown, possibilities: "0;1", description: "Specifies whether application may maintain session state"), | ||
| 170 | new ColumnDefinition("SessionTimeout", ColumnType.Number, 2, primaryKey: false, nullable: true, ColumnCategory.Unknown, description: "Time session state is maintained without user interaction"), | ||
| 171 | new ColumnDefinition("Buffer", ColumnType.Number, 2, primaryKey: false, nullable: true, ColumnCategory.Unknown, possibilities: "0;1", description: "Specifies whether application buffers its output"), | ||
| 172 | new ColumnDefinition("ParentPaths", ColumnType.Number, 2, primaryKey: false, nullable: true, ColumnCategory.Unknown, possibilities: "0;1", description: "What is this for anyway?"), | ||
| 173 | new ColumnDefinition("DefaultScript", ColumnType.String, 26, primaryKey: false, nullable: true, ColumnCategory.Text, possibilities: "VBScript;JScript", description: "Default scripting language for ASP applications"), | ||
| 174 | new ColumnDefinition("ScriptTimeout", ColumnType.Number, 2, primaryKey: false, nullable: true, ColumnCategory.Unknown, description: "Time ASP application page is permitted to process"), | ||
| 175 | new ColumnDefinition("ServerDebugging", ColumnType.Number, 2, primaryKey: false, nullable: true, ColumnCategory.Unknown, possibilities: "0;1", description: "Specifies whether to allow ASP server-side script debugging"), | ||
| 176 | new ColumnDefinition("ClientDebugging", ColumnType.Number, 2, primaryKey: false, nullable: true, ColumnCategory.Unknown, possibilities: "0;1", description: "Specifies whether to allow ASP client-side script debugging"), | ||
| 177 | new ColumnDefinition("AppPool_", ColumnType.String, 72, primaryKey: false, nullable: true, ColumnCategory.Identifier, keyTable: "IIsAppPool", keyColumn: 1, description: "App Pool this application should run under", modularizeType: ColumnModularizeType.Column), | ||
| 178 | }, | ||
| 179 | tupleDefinitionName: "IIsWebApplication", | ||
| 180 | tupleIdIsPrimaryKey: true | ||
| 181 | ); | ||
| 182 | |||
| 183 | public static readonly TableDefinition IIsWebApplicationExtension = new TableDefinition( | ||
| 184 | "IIsWebApplicationExtension", | ||
| 185 | new[] | ||
| 186 | { | ||
| 187 | new ColumnDefinition("Application_", ColumnType.String, 72, primaryKey: true, nullable: false, ColumnCategory.Identifier, keyTable: "IIsWebApplication", keyColumn: 1, description: "Foreign key referencing possible ASP application for the web site", modularizeType: ColumnModularizeType.Column), | ||
| 188 | new ColumnDefinition("Extension", ColumnType.String, 255, primaryKey: true, nullable: true, ColumnCategory.Text, description: "Primary key, Extension that should be registered for this ASP application"), | ||
| 189 | new ColumnDefinition("Verbs", ColumnType.String, 255, primaryKey: false, nullable: true, ColumnCategory.Text, description: "Comma delimited list of HTTP verbs the extension should be registered with"), | ||
| 190 | new ColumnDefinition("Executable", ColumnType.String, 255, primaryKey: false, nullable: false, ColumnCategory.Formatted, description: "Path to extension (usually file property: [#file])", modularizeType: ColumnModularizeType.Property), | ||
| 191 | new ColumnDefinition("Attributes", ColumnType.Number, 2, primaryKey: false, nullable: true, ColumnCategory.Unknown, possibilities: "1;4;5", description: "Attributes for extension: 1 == Script, 4 == Check Path Info"), | ||
| 192 | }, | ||
| 193 | tupleDefinitionName: "IIsWebApplicationExtension", | ||
| 194 | tupleIdIsPrimaryKey: false | ||
| 195 | ); | ||
| 196 | |||
| 197 | public static readonly TableDefinition IIsFilter = new TableDefinition( | ||
| 198 | "IIsFilter", | ||
| 199 | new[] | ||
| 200 | { | ||
| 201 | new ColumnDefinition("Filter", ColumnType.String, 72, primaryKey: true, nullable: false, ColumnCategory.Identifier, description: "Primary key, non-localized token", modularizeType: ColumnModularizeType.Column), | ||
| 202 | new ColumnDefinition("Name", ColumnType.String, 72, primaryKey: false, nullable: false, ColumnCategory.Unknown, description: "Name of the ISAPI Filter in IIS"), | ||
| 203 | new ColumnDefinition("Component_", ColumnType.String, 72, primaryKey: false, nullable: false, ColumnCategory.Identifier, keyTable: "Component", keyColumn: 1, description: "Foreign key referencing Component that controls the filter", modularizeType: ColumnModularizeType.Column), | ||
| 204 | new ColumnDefinition("Path", ColumnType.String, 255, primaryKey: false, nullable: true, ColumnCategory.Formatted, description: "Path to filter (usually file property: [#file])", modularizeType: ColumnModularizeType.Property), | ||
| 205 | new ColumnDefinition("Web_", ColumnType.String, 72, primaryKey: false, nullable: true, ColumnCategory.Identifier, keyTable: "IIsWebSite", keyColumn: 1, description: "Foreign key referencing web site that loads the filter (NULL == global filter", modularizeType: ColumnModularizeType.Column), | ||
| 206 | new ColumnDefinition("Description", ColumnType.String, 255, primaryKey: false, nullable: true, ColumnCategory.Formatted, description: "Description displayed in IIS MMC applet"), | ||
| 207 | new ColumnDefinition("Flags", ColumnType.Number, 4, primaryKey: false, nullable: false, ColumnCategory.Unknown, minValue: 0, maxValue: 2147483647, description: "What do all these numbers mean?"), | ||
| 208 | new ColumnDefinition("LoadOrder", ColumnType.Number, 2, primaryKey: false, nullable: true, ColumnCategory.Unknown, description: "-1 == last in order, 0 == first in order, # == place in order"), | ||
| 209 | }, | ||
| 210 | tupleDefinitionName: "IIsFilter", | ||
| 211 | tupleIdIsPrimaryKey: true | ||
| 212 | ); | ||
| 213 | |||
| 214 | public static readonly TableDefinition IIsWebDir = new TableDefinition( | ||
| 215 | "IIsWebDir", | ||
| 216 | new[] | ||
| 217 | { | ||
| 218 | new ColumnDefinition("WebDir", ColumnType.String, 72, primaryKey: true, nullable: false, ColumnCategory.Identifier, description: "Primary key, non-localized token", modularizeType: ColumnModularizeType.Column), | ||
| 219 | new ColumnDefinition("Component_", ColumnType.String, 72, primaryKey: false, nullable: false, ColumnCategory.Identifier, keyTable: "Component", keyColumn: 1, description: "Foreign key referencing Component that controls the virtual directory", modularizeType: ColumnModularizeType.Column), | ||
| 220 | new ColumnDefinition("Web_", ColumnType.String, 72, primaryKey: false, nullable: false, ColumnCategory.Identifier, keyTable: "IIsWebSite", keyColumn: 1, description: "Foreign key referencing web site that controls the virtual directory", modularizeType: ColumnModularizeType.Column), | ||
| 221 | new ColumnDefinition("Path", ColumnType.String, 255, primaryKey: false, nullable: false, ColumnCategory.Formatted, description: "Name of web directory displayed in IIS MMC applet", modularizeType: ColumnModularizeType.Property), | ||
| 222 | new ColumnDefinition("DirProperties_", ColumnType.String, 72, primaryKey: false, nullable: true, ColumnCategory.Identifier, keyTable: "IIsWebDirProperties", keyColumn: 1, description: "Foreign key referencing possible security information for the virtual directory", modularizeType: ColumnModularizeType.Column), | ||
| 223 | new ColumnDefinition("Application_", ColumnType.String, 72, primaryKey: false, nullable: true, ColumnCategory.Identifier, keyTable: "IIsWebApplication", keyColumn: 1, description: "Foreign key referencing possible ASP application for the virtual directory. This column is currently unused, but maintained for compatibility reasons.", modularizeType: ColumnModularizeType.Column), | ||
| 224 | }, | ||
| 225 | tupleDefinitionName: "IIsWebDir", | ||
| 226 | tupleIdIsPrimaryKey: true | ||
| 227 | ); | ||
| 228 | |||
| 229 | public static readonly TableDefinition IIsWebError = new TableDefinition( | ||
| 230 | "IIsWebError", | ||
| 231 | new[] | ||
| 232 | { | ||
| 233 | new ColumnDefinition("ErrorCode", ColumnType.Number, 2, primaryKey: true, nullable: false, ColumnCategory.Unknown, minValue: 400, maxValue: 599, description: "HTTP status code indicating error."), | ||
| 234 | new ColumnDefinition("SubCode", ColumnType.Number, 4, primaryKey: true, nullable: false, ColumnCategory.Unknown, description: "HTTP sub-status code indicating error."), | ||
| 235 | new ColumnDefinition("ParentType", ColumnType.Number, 2, primaryKey: true, nullable: false, ColumnCategory.Unknown, possibilities: "1;2", description: "Type of parent: 1=vdir, 2=web"), | ||
| 236 | new ColumnDefinition("ParentValue", ColumnType.String, 72, primaryKey: true, nullable: false, ColumnCategory.Identifier, description: "Name of the parent value.", modularizeType: ColumnModularizeType.Column), | ||
| 237 | new ColumnDefinition("File", ColumnType.String, 255, primaryKey: false, nullable: true, ColumnCategory.Formatted, description: "Path to file for this custom error (usually file property: [#file]). Must be null if URL is not null."), | ||
| 238 | new ColumnDefinition("URL", ColumnType.String, 255, primaryKey: false, nullable: true, ColumnCategory.Formatted, description: "URL for this custom error. Must be null if File is not null."), | ||
| 239 | }, | ||
| 240 | tupleDefinitionName: "IIsWebError", | ||
| 241 | tupleIdIsPrimaryKey: false | ||
| 242 | ); | ||
| 243 | |||
| 244 | public static readonly TableDefinition IIsHttpHeader = new TableDefinition( | ||
| 245 | "IIsHttpHeader", | ||
| 246 | new[] | ||
| 247 | { | ||
| 248 | new ColumnDefinition("HttpHeader", ColumnType.String, 72, primaryKey: true, nullable: false, ColumnCategory.Identifier, description: "Primary key, non-localized token", modularizeType: ColumnModularizeType.Column), | ||
| 249 | new ColumnDefinition("ParentType", ColumnType.Number, 2, primaryKey: true, nullable: false, ColumnCategory.Unknown, possibilities: "1;2", description: "Type of parent: 1=vdir, 2=web"), | ||
| 250 | new ColumnDefinition("ParentValue", ColumnType.String, 72, primaryKey: true, nullable: false, ColumnCategory.Identifier, description: "Name of the parent value.", modularizeType: ColumnModularizeType.Column), | ||
| 251 | new ColumnDefinition("Name", ColumnType.String, 255, primaryKey: false, nullable: false, ColumnCategory.Text, description: "Name of the HTTP Header"), | ||
| 252 | new ColumnDefinition("Value", ColumnType.String, 255, primaryKey: false, nullable: true, ColumnCategory.Formatted, description: "URL for this custom error. Must be null if File is not null."), | ||
| 253 | new ColumnDefinition("Attributes", ColumnType.Number, 2, primaryKey: false, nullable: false, ColumnCategory.Unknown, minValue: 0, maxValue: 0, description: "Attributes for HTTP Header: none"), | ||
| 254 | new ColumnDefinition("Sequence", ColumnType.Number, 2, primaryKey: false, nullable: true, ColumnCategory.Unknown, description: "Order to add the HTTP Headers."), | ||
| 255 | }, | ||
| 256 | tupleDefinitionName: "IIsHttpHeader", | ||
| 257 | tupleIdIsPrimaryKey: false | ||
| 258 | ); | ||
| 259 | |||
| 260 | public static readonly TableDefinition IIsWebServiceExtension = new TableDefinition( | ||
| 261 | "IIsWebServiceExtension", | ||
| 262 | new[] | ||
| 263 | { | ||
| 264 | new ColumnDefinition("WebServiceExtension", ColumnType.String, 72, primaryKey: true, nullable: false, ColumnCategory.Identifier, description: "Primary key, non-localized token", modularizeType: ColumnModularizeType.Column), | ||
| 265 | new ColumnDefinition("Component_", ColumnType.String, 72, primaryKey: false, nullable: false, ColumnCategory.Identifier, keyTable: "Component", keyColumn: 1, description: "Foreign key referencing Component that controls the WebServiceExtension handler", modularizeType: ColumnModularizeType.Column), | ||
| 266 | new ColumnDefinition("File", ColumnType.String, 255, primaryKey: false, nullable: false, ColumnCategory.Formatted, description: "Path to handler (usually file property: [#file])", modularizeType: ColumnModularizeType.Property), | ||
| 267 | new ColumnDefinition("Description", ColumnType.Localized, 255, primaryKey: false, nullable: true, ColumnCategory.Formatted, description: "Description displayed in WebServiceExtension Wizard", modularizeType: ColumnModularizeType.Property), | ||
| 268 | new ColumnDefinition("Group", ColumnType.String, 255, primaryKey: false, nullable: true, ColumnCategory.Formatted, description: "String used to identify groups of extensions.", modularizeType: ColumnModularizeType.Property), | ||
| 269 | new ColumnDefinition("Attributes", ColumnType.Number, 1, primaryKey: false, nullable: false, ColumnCategory.Unknown, minValue: 0, maxValue: 3, description: "Attributes for WebServiceExtension: 1 = Allow, 2 = UIDeletable"), | ||
| 270 | }, | ||
| 271 | tupleDefinitionName: "IIsWebServiceExtension", | ||
| 272 | tupleIdIsPrimaryKey: true | ||
| 273 | ); | ||
| 274 | |||
| 275 | public static readonly TableDefinition IIsWebVirtualDir = new TableDefinition( | ||
| 276 | "IIsWebVirtualDir", | ||
| 277 | new[] | ||
| 278 | { | ||
| 279 | new ColumnDefinition("VirtualDir", ColumnType.String, 72, primaryKey: true, nullable: false, ColumnCategory.Identifier, description: "Primary key, non-localized token", modularizeType: ColumnModularizeType.Column), | ||
| 280 | new ColumnDefinition("Component_", ColumnType.String, 72, primaryKey: false, nullable: false, ColumnCategory.Identifier, keyTable: "Component", keyColumn: 1, description: "Foreign key referencing Component that controls the virtual directory", modularizeType: ColumnModularizeType.Column), | ||
| 281 | new ColumnDefinition("Web_", ColumnType.String, 72, primaryKey: false, nullable: false, ColumnCategory.Identifier, keyTable: "IIsWebSite", keyColumn: 1, description: "Foreign key referencing web site that controls the virtual directory", modularizeType: ColumnModularizeType.Column), | ||
| 282 | new ColumnDefinition("Alias", ColumnType.String, 255, primaryKey: false, nullable: false, ColumnCategory.Formatted, description: "Name of virtual directory displayed in IIS MMC applet", modularizeType: ColumnModularizeType.Property), | ||
| 283 | new ColumnDefinition("Directory_", ColumnType.String, 72, primaryKey: false, nullable: false, ColumnCategory.Identifier, keyTable: "Directory", keyColumn: 1, description: "Foreign key referencing directory that the virtual directory points at", modularizeType: ColumnModularizeType.Column), | ||
| 284 | new ColumnDefinition("DirProperties_", ColumnType.String, 72, primaryKey: false, nullable: true, ColumnCategory.Identifier, keyTable: "IIsWebDirProperties", keyColumn: 1, description: "Foreign key referencing possible security information for the virtual directory", modularizeType: ColumnModularizeType.Column), | ||
| 285 | new ColumnDefinition("Application_", ColumnType.String, 72, primaryKey: false, nullable: true, ColumnCategory.Identifier, keyTable: "IIsWebApplication", keyColumn: 1, description: "Foreign key referencing possible ASP application for the virtual directory", modularizeType: ColumnModularizeType.Column), | ||
| 286 | }, | ||
| 287 | tupleDefinitionName: "IIsWebVirtualDir", | ||
| 288 | tupleIdIsPrimaryKey: true | ||
| 289 | ); | ||
| 290 | |||
| 291 | public static readonly TableDefinition IIsWebLog = new TableDefinition( | ||
| 292 | "IIsWebLog", | ||
| 293 | new[] | ||
| 294 | { | ||
| 295 | new ColumnDefinition("Log", ColumnType.String, 72, primaryKey: true, nullable: false, ColumnCategory.Identifier, description: "Primary key, non-localized token", modularizeType: ColumnModularizeType.Column), | ||
| 296 | new ColumnDefinition("Format", ColumnType.String, 255, primaryKey: false, nullable: false, ColumnCategory.Text, description: "Type of log format"), | ||
| 297 | }, | ||
| 298 | tupleDefinitionName: "IIsWebLog", | ||
| 299 | tupleIdIsPrimaryKey: true | ||
| 300 | ); | ||
| 301 | |||
| 302 | public static readonly TableDefinition[] All = new[] | ||
| 303 | { | ||
| 304 | Certificate, | ||
| 305 | CertificateHash, | ||
| 306 | IIsWebSiteCertificates, | ||
| 307 | IIsAppPool, | ||
| 308 | IIsMimeMap, | ||
| 309 | IIsProperty, | ||
| 310 | IIsWebDirProperties, | ||
| 311 | IIsWebAddress, | ||
| 312 | IIsWebSite, | ||
| 313 | IIsWebApplication, | ||
| 314 | IIsWebApplicationExtension, | ||
| 315 | IIsFilter, | ||
| 316 | IIsWebDir, | ||
| 317 | IIsWebError, | ||
| 318 | IIsHttpHeader, | ||
| 319 | IIsWebServiceExtension, | ||
| 320 | IIsWebVirtualDir, | ||
| 321 | IIsWebLog, | ||
| 322 | }; | ||
| 323 | } | ||
| 324 | } | ||
diff --git a/src/wixext/IisWindowsInstallerBackendBinderExtension.cs b/src/wixext/IisWindowsInstallerBackendBinderExtension.cs index 50571c34..29d34a09 100644 --- a/src/wixext/IisWindowsInstallerBackendBinderExtension.cs +++ b/src/wixext/IisWindowsInstallerBackendBinderExtension.cs | |||
| @@ -1,34 +1,13 @@ | |||
| 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 | ||
| 3 | namespace WixToolset.Iis | 3 | namespace WixToolset.Iis |
| 4 | { | 4 | { |
| 5 | using System.Collections.Generic; | 5 | using System.Collections.Generic; |
| 6 | using System.Linq; | ||
| 7 | using System.Xml; | ||
| 8 | using WixToolset.Data; | ||
| 9 | using WixToolset.Data.WindowsInstaller; | 6 | using WixToolset.Data.WindowsInstaller; |
| 10 | using WixToolset.Extensibility; | 7 | using WixToolset.Extensibility; |
| 11 | 8 | ||
| 12 | public class IisWindowsInstallerBackendBinderExtension : BaseWindowsInstallerBackendBinderExtension | 9 | public class IisWindowsInstallerBackendBinderExtension : BaseWindowsInstallerBackendBinderExtension |
| 13 | { | 10 | { |
| 14 | private static readonly TableDefinition[] Tables = LoadTables(); | 11 | public override IEnumerable<TableDefinition> TableDefinitions => IisTableDefinitions.All; |
| 15 | |||
| 16 | public override IEnumerable<TableDefinition> TableDefinitions { get => Tables; } | ||
| 17 | |||
| 18 | public override bool TryAddTupleToOutput(IntermediateTuple tuple, WindowsInstallerData output) | ||
| 19 | { | ||
| 20 | var columnZeroIsId = tuple.Id != null; | ||
| 21 | return this.BackendHelper.TryAddTupleToOutputMatchingTableDefinitions(tuple, output, this.TableDefinitions, columnZeroIsId); | ||
| 22 | } | ||
| 23 | |||
| 24 | private static TableDefinition[] LoadTables() | ||
| 25 | { | ||
| 26 | using (var resourceStream = typeof(IisWindowsInstallerBackendBinderExtension).Assembly.GetManifestResourceStream("WixToolset.Iis.tables.xml")) | ||
| 27 | using (var reader = XmlReader.Create(resourceStream)) | ||
| 28 | { | ||
| 29 | var tables = TableDefinitionCollection.Load(reader); | ||
| 30 | return tables.ToArray(); | ||
| 31 | } | ||
| 32 | } | ||
| 33 | } | 12 | } |
| 34 | } | 13 | } |
diff --git a/src/wixext/Tuples/CertificateHashTuple.cs b/src/wixext/Tuples/CertificateHashTuple.cs index 6df4c88c..11f0592f 100644 --- a/src/wixext/Tuples/CertificateHashTuple.cs +++ b/src/wixext/Tuples/CertificateHashTuple.cs | |||
| @@ -11,7 +11,7 @@ namespace WixToolset.Iis | |||
| 11 | IisTupleDefinitionType.CertificateHash.ToString(), | 11 | IisTupleDefinitionType.CertificateHash.ToString(), |
| 12 | new[] | 12 | new[] |
| 13 | { | 13 | { |
| 14 | new IntermediateFieldDefinition(nameof(CertificateHashTupleFields.Certificate_), IntermediateFieldType.String), | 14 | new IntermediateFieldDefinition(nameof(CertificateHashTupleFields.CertificateRef), IntermediateFieldType.String), |
| 15 | new IntermediateFieldDefinition(nameof(CertificateHashTupleFields.Hash), IntermediateFieldType.String), | 15 | new IntermediateFieldDefinition(nameof(CertificateHashTupleFields.Hash), IntermediateFieldType.String), |
| 16 | }, | 16 | }, |
| 17 | typeof(CertificateHashTuple)); | 17 | typeof(CertificateHashTuple)); |
| @@ -24,7 +24,7 @@ namespace WixToolset.Iis.Tuples | |||
| 24 | 24 | ||
| 25 | public enum CertificateHashTupleFields | 25 | public enum CertificateHashTupleFields |
| 26 | { | 26 | { |
| 27 | Certificate_, | 27 | CertificateRef, |
| 28 | Hash, | 28 | Hash, |
| 29 | } | 29 | } |
| 30 | 30 | ||
| @@ -40,10 +40,10 @@ namespace WixToolset.Iis.Tuples | |||
| 40 | 40 | ||
| 41 | public IntermediateField this[CertificateHashTupleFields index] => this.Fields[(int)index]; | 41 | public IntermediateField this[CertificateHashTupleFields index] => this.Fields[(int)index]; |
| 42 | 42 | ||
| 43 | public string Certificate_ | 43 | public string CertificateRef |
| 44 | { | 44 | { |
| 45 | get => this.Fields[(int)CertificateHashTupleFields.Certificate_].AsString(); | 45 | get => this.Fields[(int)CertificateHashTupleFields.CertificateRef].AsString(); |
| 46 | set => this.Set((int)CertificateHashTupleFields.Certificate_, value); | 46 | set => this.Set((int)CertificateHashTupleFields.CertificateRef, value); |
| 47 | } | 47 | } |
| 48 | 48 | ||
| 49 | public string Hash | 49 | public string Hash |
diff --git a/src/wixext/Tuples/CertificateTuple.cs b/src/wixext/Tuples/CertificateTuple.cs index 9e04b783..480a3569 100644 --- a/src/wixext/Tuples/CertificateTuple.cs +++ b/src/wixext/Tuples/CertificateTuple.cs | |||
| @@ -11,13 +11,12 @@ namespace WixToolset.Iis | |||
| 11 | IisTupleDefinitionType.Certificate.ToString(), | 11 | IisTupleDefinitionType.Certificate.ToString(), |
| 12 | new[] | 12 | new[] |
| 13 | { | 13 | { |
| 14 | new IntermediateFieldDefinition(nameof(CertificateTupleFields.Certificate), IntermediateFieldType.String), | 14 | new IntermediateFieldDefinition(nameof(CertificateTupleFields.ComponentRef), IntermediateFieldType.String), |
| 15 | new IntermediateFieldDefinition(nameof(CertificateTupleFields.Component_), IntermediateFieldType.String), | ||
| 16 | new IntermediateFieldDefinition(nameof(CertificateTupleFields.Name), IntermediateFieldType.String), | 15 | new IntermediateFieldDefinition(nameof(CertificateTupleFields.Name), IntermediateFieldType.String), |
| 17 | new IntermediateFieldDefinition(nameof(CertificateTupleFields.StoreLocation), IntermediateFieldType.Number), | 16 | new IntermediateFieldDefinition(nameof(CertificateTupleFields.StoreLocation), IntermediateFieldType.Number), |
| 18 | new IntermediateFieldDefinition(nameof(CertificateTupleFields.StoreName), IntermediateFieldType.String), | 17 | new IntermediateFieldDefinition(nameof(CertificateTupleFields.StoreName), IntermediateFieldType.String), |
| 19 | new IntermediateFieldDefinition(nameof(CertificateTupleFields.Attributes), IntermediateFieldType.Number), | 18 | new IntermediateFieldDefinition(nameof(CertificateTupleFields.Attributes), IntermediateFieldType.Number), |
| 20 | new IntermediateFieldDefinition(nameof(CertificateTupleFields.Binary_), IntermediateFieldType.String), | 19 | new IntermediateFieldDefinition(nameof(CertificateTupleFields.BinaryRef), IntermediateFieldType.String), |
| 21 | new IntermediateFieldDefinition(nameof(CertificateTupleFields.CertificatePath), IntermediateFieldType.String), | 20 | new IntermediateFieldDefinition(nameof(CertificateTupleFields.CertificatePath), IntermediateFieldType.String), |
| 22 | new IntermediateFieldDefinition(nameof(CertificateTupleFields.PFXPassword), IntermediateFieldType.String), | 21 | new IntermediateFieldDefinition(nameof(CertificateTupleFields.PFXPassword), IntermediateFieldType.String), |
| 23 | }, | 22 | }, |
| @@ -31,13 +30,12 @@ namespace WixToolset.Iis.Tuples | |||
| 31 | 30 | ||
| 32 | public enum CertificateTupleFields | 31 | public enum CertificateTupleFields |
| 33 | { | 32 | { |
| 34 | Certificate, | 33 | ComponentRef, |
| 35 | Component_, | ||
| 36 | Name, | 34 | Name, |
| 37 | StoreLocation, | 35 | StoreLocation, |
| 38 | StoreName, | 36 | StoreName, |
| 39 | Attributes, | 37 | Attributes, |
| 40 | Binary_, | 38 | BinaryRef, |
| 41 | CertificatePath, | 39 | CertificatePath, |
| 42 | PFXPassword, | 40 | PFXPassword, |
| 43 | } | 41 | } |
| @@ -54,16 +52,10 @@ namespace WixToolset.Iis.Tuples | |||
| 54 | 52 | ||
| 55 | public IntermediateField this[CertificateTupleFields index] => this.Fields[(int)index]; | 53 | public IntermediateField this[CertificateTupleFields index] => this.Fields[(int)index]; |
| 56 | 54 | ||
| 57 | public string Certificate | 55 | public string ComponentRef |
| 58 | { | 56 | { |
| 59 | get => this.Fields[(int)CertificateTupleFields.Certificate].AsString(); | 57 | get => this.Fields[(int)CertificateTupleFields.ComponentRef].AsString(); |
| 60 | set => this.Set((int)CertificateTupleFields.Certificate, value); | 58 | set => this.Set((int)CertificateTupleFields.ComponentRef, 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 | } | 59 | } |
| 68 | 60 | ||
| 69 | public string Name | 61 | public string Name |
| @@ -90,10 +82,10 @@ namespace WixToolset.Iis.Tuples | |||
| 90 | set => this.Set((int)CertificateTupleFields.Attributes, value); | 82 | set => this.Set((int)CertificateTupleFields.Attributes, value); |
| 91 | } | 83 | } |
| 92 | 84 | ||
| 93 | public string Binary_ | 85 | public string BinaryRef |
| 94 | { | 86 | { |
| 95 | get => this.Fields[(int)CertificateTupleFields.Binary_].AsString(); | 87 | get => this.Fields[(int)CertificateTupleFields.BinaryRef].AsString(); |
| 96 | set => this.Set((int)CertificateTupleFields.Binary_, value); | 88 | set => this.Set((int)CertificateTupleFields.BinaryRef, value); |
| 97 | } | 89 | } |
| 98 | 90 | ||
| 99 | public string CertificatePath | 91 | public string CertificatePath |
diff --git a/src/wixext/Tuples/IIsAppPoolTuple.cs b/src/wixext/Tuples/IIsAppPoolTuple.cs index 10a00f50..d14ec7ad 100644 --- a/src/wixext/Tuples/IIsAppPoolTuple.cs +++ b/src/wixext/Tuples/IIsAppPoolTuple.cs | |||
| @@ -11,11 +11,10 @@ namespace WixToolset.Iis | |||
| 11 | IisTupleDefinitionType.IIsAppPool.ToString(), | 11 | IisTupleDefinitionType.IIsAppPool.ToString(), |
| 12 | new[] | 12 | new[] |
| 13 | { | 13 | { |
| 14 | new IntermediateFieldDefinition(nameof(IIsAppPoolTupleFields.AppPool), IntermediateFieldType.String), | ||
| 15 | new IntermediateFieldDefinition(nameof(IIsAppPoolTupleFields.Name), IntermediateFieldType.String), | 14 | new IntermediateFieldDefinition(nameof(IIsAppPoolTupleFields.Name), IntermediateFieldType.String), |
| 16 | new IntermediateFieldDefinition(nameof(IIsAppPoolTupleFields.Component_), IntermediateFieldType.String), | 15 | new IntermediateFieldDefinition(nameof(IIsAppPoolTupleFields.ComponentRef), IntermediateFieldType.String), |
| 17 | new IntermediateFieldDefinition(nameof(IIsAppPoolTupleFields.Attributes), IntermediateFieldType.Number), | 16 | new IntermediateFieldDefinition(nameof(IIsAppPoolTupleFields.Attributes), IntermediateFieldType.Number), |
| 18 | new IntermediateFieldDefinition(nameof(IIsAppPoolTupleFields.User_), IntermediateFieldType.String), | 17 | new IntermediateFieldDefinition(nameof(IIsAppPoolTupleFields.UserRef), IntermediateFieldType.String), |
| 19 | new IntermediateFieldDefinition(nameof(IIsAppPoolTupleFields.RecycleMinutes), IntermediateFieldType.Number), | 18 | new IntermediateFieldDefinition(nameof(IIsAppPoolTupleFields.RecycleMinutes), IntermediateFieldType.Number), |
| 20 | new IntermediateFieldDefinition(nameof(IIsAppPoolTupleFields.RecycleRequests), IntermediateFieldType.Number), | 19 | new IntermediateFieldDefinition(nameof(IIsAppPoolTupleFields.RecycleRequests), IntermediateFieldType.Number), |
| 21 | new IntermediateFieldDefinition(nameof(IIsAppPoolTupleFields.RecycleTimes), IntermediateFieldType.String), | 20 | new IntermediateFieldDefinition(nameof(IIsAppPoolTupleFields.RecycleTimes), IntermediateFieldType.String), |
| @@ -38,11 +37,10 @@ namespace WixToolset.Iis.Tuples | |||
| 38 | 37 | ||
| 39 | public enum IIsAppPoolTupleFields | 38 | public enum IIsAppPoolTupleFields |
| 40 | { | 39 | { |
| 41 | AppPool, | ||
| 42 | Name, | 40 | Name, |
| 43 | Component_, | 41 | ComponentRef, |
| 44 | Attributes, | 42 | Attributes, |
| 45 | User_, | 43 | UserRef, |
| 46 | RecycleMinutes, | 44 | RecycleMinutes, |
| 47 | RecycleRequests, | 45 | RecycleRequests, |
| 48 | RecycleTimes, | 46 | RecycleTimes, |
| @@ -68,22 +66,16 @@ namespace WixToolset.Iis.Tuples | |||
| 68 | 66 | ||
| 69 | public IntermediateField this[IIsAppPoolTupleFields index] => this.Fields[(int)index]; | 67 | public IntermediateField this[IIsAppPoolTupleFields index] => this.Fields[(int)index]; |
| 70 | 68 | ||
| 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 | 69 | public string Name |
| 78 | { | 70 | { |
| 79 | get => this.Fields[(int)IIsAppPoolTupleFields.Name].AsString(); | 71 | get => this.Fields[(int)IIsAppPoolTupleFields.Name].AsString(); |
| 80 | set => this.Set((int)IIsAppPoolTupleFields.Name, value); | 72 | set => this.Set((int)IIsAppPoolTupleFields.Name, value); |
| 81 | } | 73 | } |
| 82 | 74 | ||
| 83 | public string Component_ | 75 | public string ComponentRef |
| 84 | { | 76 | { |
| 85 | get => this.Fields[(int)IIsAppPoolTupleFields.Component_].AsString(); | 77 | get => this.Fields[(int)IIsAppPoolTupleFields.ComponentRef].AsString(); |
| 86 | set => this.Set((int)IIsAppPoolTupleFields.Component_, value); | 78 | set => this.Set((int)IIsAppPoolTupleFields.ComponentRef, value); |
| 87 | } | 79 | } |
| 88 | 80 | ||
| 89 | public int Attributes | 81 | public int Attributes |
| @@ -92,10 +84,10 @@ namespace WixToolset.Iis.Tuples | |||
| 92 | set => this.Set((int)IIsAppPoolTupleFields.Attributes, value); | 84 | set => this.Set((int)IIsAppPoolTupleFields.Attributes, value); |
| 93 | } | 85 | } |
| 94 | 86 | ||
| 95 | public string User_ | 87 | public string UserRef |
| 96 | { | 88 | { |
| 97 | get => this.Fields[(int)IIsAppPoolTupleFields.User_].AsString(); | 89 | get => this.Fields[(int)IIsAppPoolTupleFields.UserRef].AsString(); |
| 98 | set => this.Set((int)IIsAppPoolTupleFields.User_, value); | 90 | set => this.Set((int)IIsAppPoolTupleFields.UserRef, value); |
| 99 | } | 91 | } |
| 100 | 92 | ||
| 101 | public int RecycleMinutes | 93 | public int RecycleMinutes |
diff --git a/src/wixext/Tuples/IIsFilterTuple.cs b/src/wixext/Tuples/IIsFilterTuple.cs index 9c651144..5dda8878 100644 --- a/src/wixext/Tuples/IIsFilterTuple.cs +++ b/src/wixext/Tuples/IIsFilterTuple.cs | |||
| @@ -11,11 +11,10 @@ namespace WixToolset.Iis | |||
| 11 | IisTupleDefinitionType.IIsFilter.ToString(), | 11 | IisTupleDefinitionType.IIsFilter.ToString(), |
| 12 | new[] | 12 | new[] |
| 13 | { | 13 | { |
| 14 | new IntermediateFieldDefinition(nameof(IIsFilterTupleFields.Filter), IntermediateFieldType.String), | ||
| 15 | new IntermediateFieldDefinition(nameof(IIsFilterTupleFields.Name), IntermediateFieldType.String), | 14 | new IntermediateFieldDefinition(nameof(IIsFilterTupleFields.Name), IntermediateFieldType.String), |
| 16 | new IntermediateFieldDefinition(nameof(IIsFilterTupleFields.Component_), IntermediateFieldType.String), | 15 | new IntermediateFieldDefinition(nameof(IIsFilterTupleFields.ComponentRef), IntermediateFieldType.String), |
| 17 | new IntermediateFieldDefinition(nameof(IIsFilterTupleFields.Path), IntermediateFieldType.String), | 16 | new IntermediateFieldDefinition(nameof(IIsFilterTupleFields.Path), IntermediateFieldType.String), |
| 18 | new IntermediateFieldDefinition(nameof(IIsFilterTupleFields.Web_), IntermediateFieldType.String), | 17 | new IntermediateFieldDefinition(nameof(IIsFilterTupleFields.WebRef), IntermediateFieldType.String), |
| 19 | new IntermediateFieldDefinition(nameof(IIsFilterTupleFields.Description), IntermediateFieldType.String), | 18 | new IntermediateFieldDefinition(nameof(IIsFilterTupleFields.Description), IntermediateFieldType.String), |
| 20 | new IntermediateFieldDefinition(nameof(IIsFilterTupleFields.Flags), IntermediateFieldType.Number), | 19 | new IntermediateFieldDefinition(nameof(IIsFilterTupleFields.Flags), IntermediateFieldType.Number), |
| 21 | new IntermediateFieldDefinition(nameof(IIsFilterTupleFields.LoadOrder), IntermediateFieldType.Number), | 20 | new IntermediateFieldDefinition(nameof(IIsFilterTupleFields.LoadOrder), IntermediateFieldType.Number), |
| @@ -30,11 +29,10 @@ namespace WixToolset.Iis.Tuples | |||
| 30 | 29 | ||
| 31 | public enum IIsFilterTupleFields | 30 | public enum IIsFilterTupleFields |
| 32 | { | 31 | { |
| 33 | Filter, | ||
| 34 | Name, | 32 | Name, |
| 35 | Component_, | 33 | ComponentRef, |
| 36 | Path, | 34 | Path, |
| 37 | Web_, | 35 | WebRef, |
| 38 | Description, | 36 | Description, |
| 39 | Flags, | 37 | Flags, |
| 40 | LoadOrder, | 38 | LoadOrder, |
| @@ -52,22 +50,16 @@ namespace WixToolset.Iis.Tuples | |||
| 52 | 50 | ||
| 53 | public IntermediateField this[IIsFilterTupleFields index] => this.Fields[(int)index]; | 51 | public IntermediateField this[IIsFilterTupleFields index] => this.Fields[(int)index]; |
| 54 | 52 | ||
| 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 | 53 | public string Name |
| 62 | { | 54 | { |
| 63 | get => this.Fields[(int)IIsFilterTupleFields.Name].AsString(); | 55 | get => this.Fields[(int)IIsFilterTupleFields.Name].AsString(); |
| 64 | set => this.Set((int)IIsFilterTupleFields.Name, value); | 56 | set => this.Set((int)IIsFilterTupleFields.Name, value); |
| 65 | } | 57 | } |
| 66 | 58 | ||
| 67 | public string Component_ | 59 | public string ComponentRef |
| 68 | { | 60 | { |
| 69 | get => this.Fields[(int)IIsFilterTupleFields.Component_].AsString(); | 61 | get => this.Fields[(int)IIsFilterTupleFields.ComponentRef].AsString(); |
| 70 | set => this.Set((int)IIsFilterTupleFields.Component_, value); | 62 | set => this.Set((int)IIsFilterTupleFields.ComponentRef, value); |
| 71 | } | 63 | } |
| 72 | 64 | ||
| 73 | public string Path | 65 | public string Path |
| @@ -76,10 +68,10 @@ namespace WixToolset.Iis.Tuples | |||
| 76 | set => this.Set((int)IIsFilterTupleFields.Path, value); | 68 | set => this.Set((int)IIsFilterTupleFields.Path, value); |
| 77 | } | 69 | } |
| 78 | 70 | ||
| 79 | public string Web_ | 71 | public string WebRef |
| 80 | { | 72 | { |
| 81 | get => this.Fields[(int)IIsFilterTupleFields.Web_].AsString(); | 73 | get => this.Fields[(int)IIsFilterTupleFields.WebRef].AsString(); |
| 82 | set => this.Set((int)IIsFilterTupleFields.Web_, value); | 74 | set => this.Set((int)IIsFilterTupleFields.WebRef, value); |
| 83 | } | 75 | } |
| 84 | 76 | ||
| 85 | public string Description | 77 | public string Description |
diff --git a/src/wixext/Tuples/IIsMimeMapTuple.cs b/src/wixext/Tuples/IIsMimeMapTuple.cs index c27aef21..f1a825b0 100644 --- a/src/wixext/Tuples/IIsMimeMapTuple.cs +++ b/src/wixext/Tuples/IIsMimeMapTuple.cs | |||
| @@ -11,7 +11,6 @@ namespace WixToolset.Iis | |||
| 11 | IisTupleDefinitionType.IIsMimeMap.ToString(), | 11 | IisTupleDefinitionType.IIsMimeMap.ToString(), |
| 12 | new[] | 12 | new[] |
| 13 | { | 13 | { |
| 14 | new IntermediateFieldDefinition(nameof(IIsMimeMapTupleFields.MimeMap), IntermediateFieldType.String), | ||
| 15 | new IntermediateFieldDefinition(nameof(IIsMimeMapTupleFields.ParentType), IntermediateFieldType.Number), | 14 | new IntermediateFieldDefinition(nameof(IIsMimeMapTupleFields.ParentType), IntermediateFieldType.Number), |
| 16 | new IntermediateFieldDefinition(nameof(IIsMimeMapTupleFields.ParentValue), IntermediateFieldType.String), | 15 | new IntermediateFieldDefinition(nameof(IIsMimeMapTupleFields.ParentValue), IntermediateFieldType.String), |
| 17 | new IntermediateFieldDefinition(nameof(IIsMimeMapTupleFields.MimeType), IntermediateFieldType.String), | 16 | new IntermediateFieldDefinition(nameof(IIsMimeMapTupleFields.MimeType), IntermediateFieldType.String), |
| @@ -27,7 +26,6 @@ namespace WixToolset.Iis.Tuples | |||
| 27 | 26 | ||
| 28 | public enum IIsMimeMapTupleFields | 27 | public enum IIsMimeMapTupleFields |
| 29 | { | 28 | { |
| 30 | MimeMap, | ||
| 31 | ParentType, | 29 | ParentType, |
| 32 | ParentValue, | 30 | ParentValue, |
| 33 | MimeType, | 31 | MimeType, |
| @@ -46,12 +44,6 @@ namespace WixToolset.Iis.Tuples | |||
| 46 | 44 | ||
| 47 | public IntermediateField this[IIsMimeMapTupleFields index] => this.Fields[(int)index]; | 45 | public IntermediateField this[IIsMimeMapTupleFields index] => this.Fields[(int)index]; |
| 48 | 46 | ||
| 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 | 47 | public int ParentType |
| 56 | { | 48 | { |
| 57 | get => this.Fields[(int)IIsMimeMapTupleFields.ParentType].AsNumber(); | 49 | get => this.Fields[(int)IIsMimeMapTupleFields.ParentType].AsNumber(); |
diff --git a/src/wixext/Tuples/IIsPropertyTuple.cs b/src/wixext/Tuples/IIsPropertyTuple.cs index b02a0b4a..28e882bf 100644 --- a/src/wixext/Tuples/IIsPropertyTuple.cs +++ b/src/wixext/Tuples/IIsPropertyTuple.cs | |||
| @@ -11,8 +11,7 @@ namespace WixToolset.Iis | |||
| 11 | IisTupleDefinitionType.IIsProperty.ToString(), | 11 | IisTupleDefinitionType.IIsProperty.ToString(), |
| 12 | new[] | 12 | new[] |
| 13 | { | 13 | { |
| 14 | new IntermediateFieldDefinition(nameof(IIsPropertyTupleFields.Property), IntermediateFieldType.String), | 14 | new IntermediateFieldDefinition(nameof(IIsPropertyTupleFields.ComponentRef), IntermediateFieldType.String), |
| 15 | new IntermediateFieldDefinition(nameof(IIsPropertyTupleFields.Component_), IntermediateFieldType.String), | ||
| 16 | new IntermediateFieldDefinition(nameof(IIsPropertyTupleFields.Attributes), IntermediateFieldType.Number), | 15 | new IntermediateFieldDefinition(nameof(IIsPropertyTupleFields.Attributes), IntermediateFieldType.Number), |
| 17 | new IntermediateFieldDefinition(nameof(IIsPropertyTupleFields.Value), IntermediateFieldType.String), | 16 | new IntermediateFieldDefinition(nameof(IIsPropertyTupleFields.Value), IntermediateFieldType.String), |
| 18 | }, | 17 | }, |
| @@ -26,8 +25,7 @@ namespace WixToolset.Iis.Tuples | |||
| 26 | 25 | ||
| 27 | public enum IIsPropertyTupleFields | 26 | public enum IIsPropertyTupleFields |
| 28 | { | 27 | { |
| 29 | Property, | 28 | ComponentRef, |
| 30 | Component_, | ||
| 31 | Attributes, | 29 | Attributes, |
| 32 | Value, | 30 | Value, |
| 33 | } | 31 | } |
| @@ -44,16 +42,10 @@ namespace WixToolset.Iis.Tuples | |||
| 44 | 42 | ||
| 45 | public IntermediateField this[IIsPropertyTupleFields index] => this.Fields[(int)index]; | 43 | public IntermediateField this[IIsPropertyTupleFields index] => this.Fields[(int)index]; |
| 46 | 44 | ||
| 47 | public string Property | 45 | public string ComponentRef |
| 48 | { | 46 | { |
| 49 | get => this.Fields[(int)IIsPropertyTupleFields.Property].AsString(); | 47 | get => this.Fields[(int)IIsPropertyTupleFields.ComponentRef].AsString(); |
| 50 | set => this.Set((int)IIsPropertyTupleFields.Property, value); | 48 | set => this.Set((int)IIsPropertyTupleFields.ComponentRef, 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 | } | 49 | } |
| 58 | 50 | ||
| 59 | public int Attributes | 51 | public int Attributes |
diff --git a/src/wixext/Tuples/IIsWebAddressTuple.cs b/src/wixext/Tuples/IIsWebAddressTuple.cs index cb50b207..603f62cb 100644 --- a/src/wixext/Tuples/IIsWebAddressTuple.cs +++ b/src/wixext/Tuples/IIsWebAddressTuple.cs | |||
| @@ -11,8 +11,7 @@ namespace WixToolset.Iis | |||
| 11 | IisTupleDefinitionType.IIsWebAddress.ToString(), | 11 | IisTupleDefinitionType.IIsWebAddress.ToString(), |
| 12 | new[] | 12 | new[] |
| 13 | { | 13 | { |
| 14 | new IntermediateFieldDefinition(nameof(IIsWebAddressTupleFields.Address), IntermediateFieldType.String), | 14 | new IntermediateFieldDefinition(nameof(IIsWebAddressTupleFields.WebRef), IntermediateFieldType.String), |
| 15 | new IntermediateFieldDefinition(nameof(IIsWebAddressTupleFields.Web_), IntermediateFieldType.String), | ||
| 16 | new IntermediateFieldDefinition(nameof(IIsWebAddressTupleFields.IP), IntermediateFieldType.String), | 15 | new IntermediateFieldDefinition(nameof(IIsWebAddressTupleFields.IP), IntermediateFieldType.String), |
| 17 | new IntermediateFieldDefinition(nameof(IIsWebAddressTupleFields.Port), IntermediateFieldType.String), | 16 | new IntermediateFieldDefinition(nameof(IIsWebAddressTupleFields.Port), IntermediateFieldType.String), |
| 18 | new IntermediateFieldDefinition(nameof(IIsWebAddressTupleFields.Header), IntermediateFieldType.String), | 17 | new IntermediateFieldDefinition(nameof(IIsWebAddressTupleFields.Header), IntermediateFieldType.String), |
| @@ -28,8 +27,7 @@ namespace WixToolset.Iis.Tuples | |||
| 28 | 27 | ||
| 29 | public enum IIsWebAddressTupleFields | 28 | public enum IIsWebAddressTupleFields |
| 30 | { | 29 | { |
| 31 | Address, | 30 | WebRef, |
| 32 | Web_, | ||
| 33 | IP, | 31 | IP, |
| 34 | Port, | 32 | Port, |
| 35 | Header, | 33 | Header, |
| @@ -48,16 +46,10 @@ namespace WixToolset.Iis.Tuples | |||
| 48 | 46 | ||
| 49 | public IntermediateField this[IIsWebAddressTupleFields index] => this.Fields[(int)index]; | 47 | public IntermediateField this[IIsWebAddressTupleFields index] => this.Fields[(int)index]; |
| 50 | 48 | ||
| 51 | public string Address | 49 | public string WebRef |
| 52 | { | 50 | { |
| 53 | get => this.Fields[(int)IIsWebAddressTupleFields.Address].AsString(); | 51 | get => this.Fields[(int)IIsWebAddressTupleFields.WebRef].AsString(); |
| 54 | set => this.Set((int)IIsWebAddressTupleFields.Address, value); | 52 | set => this.Set((int)IIsWebAddressTupleFields.WebRef, 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 | } | 53 | } |
| 62 | 54 | ||
| 63 | public string IP | 55 | public string IP |
diff --git a/src/wixext/Tuples/IIsWebApplicationExtensionTuple.cs b/src/wixext/Tuples/IIsWebApplicationExtensionTuple.cs index 5ae60f57..8ab78dad 100644 --- a/src/wixext/Tuples/IIsWebApplicationExtensionTuple.cs +++ b/src/wixext/Tuples/IIsWebApplicationExtensionTuple.cs | |||
| @@ -11,7 +11,7 @@ namespace WixToolset.Iis | |||
| 11 | IisTupleDefinitionType.IIsWebApplicationExtension.ToString(), | 11 | IisTupleDefinitionType.IIsWebApplicationExtension.ToString(), |
| 12 | new[] | 12 | new[] |
| 13 | { | 13 | { |
| 14 | new IntermediateFieldDefinition(nameof(IIsWebApplicationExtensionTupleFields.Application_), IntermediateFieldType.String), | 14 | new IntermediateFieldDefinition(nameof(IIsWebApplicationExtensionTupleFields.ApplicationRef), IntermediateFieldType.String), |
| 15 | new IntermediateFieldDefinition(nameof(IIsWebApplicationExtensionTupleFields.Extension), IntermediateFieldType.String), | 15 | new IntermediateFieldDefinition(nameof(IIsWebApplicationExtensionTupleFields.Extension), IntermediateFieldType.String), |
| 16 | new IntermediateFieldDefinition(nameof(IIsWebApplicationExtensionTupleFields.Verbs), IntermediateFieldType.String), | 16 | new IntermediateFieldDefinition(nameof(IIsWebApplicationExtensionTupleFields.Verbs), IntermediateFieldType.String), |
| 17 | new IntermediateFieldDefinition(nameof(IIsWebApplicationExtensionTupleFields.Executable), IntermediateFieldType.String), | 17 | new IntermediateFieldDefinition(nameof(IIsWebApplicationExtensionTupleFields.Executable), IntermediateFieldType.String), |
| @@ -27,7 +27,7 @@ namespace WixToolset.Iis.Tuples | |||
| 27 | 27 | ||
| 28 | public enum IIsWebApplicationExtensionTupleFields | 28 | public enum IIsWebApplicationExtensionTupleFields |
| 29 | { | 29 | { |
| 30 | Application_, | 30 | ApplicationRef, |
| 31 | Extension, | 31 | Extension, |
| 32 | Verbs, | 32 | Verbs, |
| 33 | Executable, | 33 | Executable, |
| @@ -46,10 +46,10 @@ namespace WixToolset.Iis.Tuples | |||
| 46 | 46 | ||
| 47 | public IntermediateField this[IIsWebApplicationExtensionTupleFields index] => this.Fields[(int)index]; | 47 | public IntermediateField this[IIsWebApplicationExtensionTupleFields index] => this.Fields[(int)index]; |
| 48 | 48 | ||
| 49 | public string Application_ | 49 | public string ApplicationRef |
| 50 | { | 50 | { |
| 51 | get => this.Fields[(int)IIsWebApplicationExtensionTupleFields.Application_].AsString(); | 51 | get => this.Fields[(int)IIsWebApplicationExtensionTupleFields.ApplicationRef].AsString(); |
| 52 | set => this.Set((int)IIsWebApplicationExtensionTupleFields.Application_, value); | 52 | set => this.Set((int)IIsWebApplicationExtensionTupleFields.ApplicationRef, value); |
| 53 | } | 53 | } |
| 54 | 54 | ||
| 55 | public string Extension | 55 | public string Extension |
diff --git a/src/wixext/Tuples/IIsWebApplicationTuple.cs b/src/wixext/Tuples/IIsWebApplicationTuple.cs index 403969b7..6af3a2f7 100644 --- a/src/wixext/Tuples/IIsWebApplicationTuple.cs +++ b/src/wixext/Tuples/IIsWebApplicationTuple.cs | |||
| @@ -11,7 +11,6 @@ namespace WixToolset.Iis | |||
| 11 | IisTupleDefinitionType.IIsWebApplication.ToString(), | 11 | IisTupleDefinitionType.IIsWebApplication.ToString(), |
| 12 | new[] | 12 | new[] |
| 13 | { | 13 | { |
| 14 | new IntermediateFieldDefinition(nameof(IIsWebApplicationTupleFields.Application), IntermediateFieldType.String), | ||
| 15 | new IntermediateFieldDefinition(nameof(IIsWebApplicationTupleFields.Name), IntermediateFieldType.String), | 14 | new IntermediateFieldDefinition(nameof(IIsWebApplicationTupleFields.Name), IntermediateFieldType.String), |
| 16 | new IntermediateFieldDefinition(nameof(IIsWebApplicationTupleFields.Isolation), IntermediateFieldType.Number), | 15 | new IntermediateFieldDefinition(nameof(IIsWebApplicationTupleFields.Isolation), IntermediateFieldType.Number), |
| 17 | new IntermediateFieldDefinition(nameof(IIsWebApplicationTupleFields.AllowSessions), IntermediateFieldType.Number), | 16 | new IntermediateFieldDefinition(nameof(IIsWebApplicationTupleFields.AllowSessions), IntermediateFieldType.Number), |
| @@ -22,7 +21,7 @@ namespace WixToolset.Iis | |||
| 22 | new IntermediateFieldDefinition(nameof(IIsWebApplicationTupleFields.ScriptTimeout), IntermediateFieldType.Number), | 21 | new IntermediateFieldDefinition(nameof(IIsWebApplicationTupleFields.ScriptTimeout), IntermediateFieldType.Number), |
| 23 | new IntermediateFieldDefinition(nameof(IIsWebApplicationTupleFields.ServerDebugging), IntermediateFieldType.Number), | 22 | new IntermediateFieldDefinition(nameof(IIsWebApplicationTupleFields.ServerDebugging), IntermediateFieldType.Number), |
| 24 | new IntermediateFieldDefinition(nameof(IIsWebApplicationTupleFields.ClientDebugging), IntermediateFieldType.Number), | 23 | new IntermediateFieldDefinition(nameof(IIsWebApplicationTupleFields.ClientDebugging), IntermediateFieldType.Number), |
| 25 | new IntermediateFieldDefinition(nameof(IIsWebApplicationTupleFields.AppPool_), IntermediateFieldType.String), | 24 | new IntermediateFieldDefinition(nameof(IIsWebApplicationTupleFields.AppPoolRef), IntermediateFieldType.String), |
| 26 | }, | 25 | }, |
| 27 | typeof(IIsWebApplicationTuple)); | 26 | typeof(IIsWebApplicationTuple)); |
| 28 | } | 27 | } |
| @@ -34,7 +33,6 @@ namespace WixToolset.Iis.Tuples | |||
| 34 | 33 | ||
| 35 | public enum IIsWebApplicationTupleFields | 34 | public enum IIsWebApplicationTupleFields |
| 36 | { | 35 | { |
| 37 | Application, | ||
| 38 | Name, | 36 | Name, |
| 39 | Isolation, | 37 | Isolation, |
| 40 | AllowSessions, | 38 | AllowSessions, |
| @@ -45,7 +43,7 @@ namespace WixToolset.Iis.Tuples | |||
| 45 | ScriptTimeout, | 43 | ScriptTimeout, |
| 46 | ServerDebugging, | 44 | ServerDebugging, |
| 47 | ClientDebugging, | 45 | ClientDebugging, |
| 48 | AppPool_, | 46 | AppPoolRef, |
| 49 | } | 47 | } |
| 50 | 48 | ||
| 51 | public class IIsWebApplicationTuple : IntermediateTuple | 49 | public class IIsWebApplicationTuple : IntermediateTuple |
| @@ -60,12 +58,6 @@ namespace WixToolset.Iis.Tuples | |||
| 60 | 58 | ||
| 61 | public IntermediateField this[IIsWebApplicationTupleFields index] => this.Fields[(int)index]; | 59 | public IntermediateField this[IIsWebApplicationTupleFields index] => this.Fields[(int)index]; |
| 62 | 60 | ||
| 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 | 61 | public string Name |
| 70 | { | 62 | { |
| 71 | get => this.Fields[(int)IIsWebApplicationTupleFields.Name].AsString(); | 63 | get => this.Fields[(int)IIsWebApplicationTupleFields.Name].AsString(); |
| @@ -126,10 +118,10 @@ namespace WixToolset.Iis.Tuples | |||
| 126 | set => this.Set((int)IIsWebApplicationTupleFields.ClientDebugging, value); | 118 | set => this.Set((int)IIsWebApplicationTupleFields.ClientDebugging, value); |
| 127 | } | 119 | } |
| 128 | 120 | ||
| 129 | public string AppPool_ | 121 | public string AppPoolRef |
| 130 | { | 122 | { |
| 131 | get => this.Fields[(int)IIsWebApplicationTupleFields.AppPool_].AsString(); | 123 | get => this.Fields[(int)IIsWebApplicationTupleFields.AppPoolRef].AsString(); |
| 132 | set => this.Set((int)IIsWebApplicationTupleFields.AppPool_, value); | 124 | set => this.Set((int)IIsWebApplicationTupleFields.AppPoolRef, value); |
| 133 | } | 125 | } |
| 134 | } | 126 | } |
| 135 | } \ No newline at end of file | 127 | } \ No newline at end of file |
diff --git a/src/wixext/Tuples/IIsWebDirPropertiesTuple.cs b/src/wixext/Tuples/IIsWebDirPropertiesTuple.cs index 9e723775..1c7cd8bf 100644 --- a/src/wixext/Tuples/IIsWebDirPropertiesTuple.cs +++ b/src/wixext/Tuples/IIsWebDirPropertiesTuple.cs | |||
| @@ -11,10 +11,9 @@ namespace WixToolset.Iis | |||
| 11 | IisTupleDefinitionType.IIsWebDirProperties.ToString(), | 11 | IisTupleDefinitionType.IIsWebDirProperties.ToString(), |
| 12 | new[] | 12 | new[] |
| 13 | { | 13 | { |
| 14 | new IntermediateFieldDefinition(nameof(IIsWebDirPropertiesTupleFields.DirProperties), IntermediateFieldType.String), | ||
| 15 | new IntermediateFieldDefinition(nameof(IIsWebDirPropertiesTupleFields.Access), IntermediateFieldType.Number), | 14 | new IntermediateFieldDefinition(nameof(IIsWebDirPropertiesTupleFields.Access), IntermediateFieldType.Number), |
| 16 | new IntermediateFieldDefinition(nameof(IIsWebDirPropertiesTupleFields.Authorization), IntermediateFieldType.Number), | 15 | new IntermediateFieldDefinition(nameof(IIsWebDirPropertiesTupleFields.Authorization), IntermediateFieldType.Number), |
| 17 | new IntermediateFieldDefinition(nameof(IIsWebDirPropertiesTupleFields.AnonymousUser_), IntermediateFieldType.String), | 16 | new IntermediateFieldDefinition(nameof(IIsWebDirPropertiesTupleFields.AnonymousUserRef), IntermediateFieldType.String), |
| 18 | new IntermediateFieldDefinition(nameof(IIsWebDirPropertiesTupleFields.IIsControlledPassword), IntermediateFieldType.Number), | 17 | new IntermediateFieldDefinition(nameof(IIsWebDirPropertiesTupleFields.IIsControlledPassword), IntermediateFieldType.Number), |
| 19 | new IntermediateFieldDefinition(nameof(IIsWebDirPropertiesTupleFields.LogVisits), IntermediateFieldType.Number), | 18 | new IntermediateFieldDefinition(nameof(IIsWebDirPropertiesTupleFields.LogVisits), IntermediateFieldType.Number), |
| 20 | new IntermediateFieldDefinition(nameof(IIsWebDirPropertiesTupleFields.Index), IntermediateFieldType.Number), | 19 | new IntermediateFieldDefinition(nameof(IIsWebDirPropertiesTupleFields.Index), IntermediateFieldType.Number), |
| @@ -37,10 +36,9 @@ namespace WixToolset.Iis.Tuples | |||
| 37 | 36 | ||
| 38 | public enum IIsWebDirPropertiesTupleFields | 37 | public enum IIsWebDirPropertiesTupleFields |
| 39 | { | 38 | { |
| 40 | DirProperties, | ||
| 41 | Access, | 39 | Access, |
| 42 | Authorization, | 40 | Authorization, |
| 43 | AnonymousUser_, | 41 | AnonymousUserRef, |
| 44 | IIsControlledPassword, | 42 | IIsControlledPassword, |
| 45 | LogVisits, | 43 | LogVisits, |
| 46 | Index, | 44 | Index, |
| @@ -66,12 +64,6 @@ namespace WixToolset.Iis.Tuples | |||
| 66 | 64 | ||
| 67 | public IntermediateField this[IIsWebDirPropertiesTupleFields index] => this.Fields[(int)index]; | 65 | public IntermediateField this[IIsWebDirPropertiesTupleFields index] => this.Fields[(int)index]; |
| 68 | 66 | ||
| 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 | 67 | public int Access |
| 76 | { | 68 | { |
| 77 | get => this.Fields[(int)IIsWebDirPropertiesTupleFields.Access].AsNumber(); | 69 | get => this.Fields[(int)IIsWebDirPropertiesTupleFields.Access].AsNumber(); |
| @@ -84,10 +76,10 @@ namespace WixToolset.Iis.Tuples | |||
| 84 | set => this.Set((int)IIsWebDirPropertiesTupleFields.Authorization, value); | 76 | set => this.Set((int)IIsWebDirPropertiesTupleFields.Authorization, value); |
| 85 | } | 77 | } |
| 86 | 78 | ||
| 87 | public string AnonymousUser_ | 79 | public string AnonymousUserRef |
| 88 | { | 80 | { |
| 89 | get => this.Fields[(int)IIsWebDirPropertiesTupleFields.AnonymousUser_].AsString(); | 81 | get => this.Fields[(int)IIsWebDirPropertiesTupleFields.AnonymousUserRef].AsString(); |
| 90 | set => this.Set((int)IIsWebDirPropertiesTupleFields.AnonymousUser_, value); | 82 | set => this.Set((int)IIsWebDirPropertiesTupleFields.AnonymousUserRef, value); |
| 91 | } | 83 | } |
| 92 | 84 | ||
| 93 | public int IIsControlledPassword | 85 | public int IIsControlledPassword |
diff --git a/src/wixext/Tuples/IIsWebDirTuple.cs b/src/wixext/Tuples/IIsWebDirTuple.cs index 6e04b337..471fe223 100644 --- a/src/wixext/Tuples/IIsWebDirTuple.cs +++ b/src/wixext/Tuples/IIsWebDirTuple.cs | |||
| @@ -11,12 +11,11 @@ namespace WixToolset.Iis | |||
| 11 | IisTupleDefinitionType.IIsWebDir.ToString(), | 11 | IisTupleDefinitionType.IIsWebDir.ToString(), |
| 12 | new[] | 12 | new[] |
| 13 | { | 13 | { |
| 14 | new IntermediateFieldDefinition(nameof(IIsWebDirTupleFields.WebDir), IntermediateFieldType.String), | 14 | new IntermediateFieldDefinition(nameof(IIsWebDirTupleFields.ComponentRef), IntermediateFieldType.String), |
| 15 | new IntermediateFieldDefinition(nameof(IIsWebDirTupleFields.Component_), IntermediateFieldType.String), | 15 | new IntermediateFieldDefinition(nameof(IIsWebDirTupleFields.WebRef), IntermediateFieldType.String), |
| 16 | new IntermediateFieldDefinition(nameof(IIsWebDirTupleFields.Web_), IntermediateFieldType.String), | ||
| 17 | new IntermediateFieldDefinition(nameof(IIsWebDirTupleFields.Path), IntermediateFieldType.String), | 16 | new IntermediateFieldDefinition(nameof(IIsWebDirTupleFields.Path), IntermediateFieldType.String), |
| 18 | new IntermediateFieldDefinition(nameof(IIsWebDirTupleFields.DirProperties_), IntermediateFieldType.String), | 17 | new IntermediateFieldDefinition(nameof(IIsWebDirTupleFields.DirPropertiesRef), IntermediateFieldType.String), |
| 19 | new IntermediateFieldDefinition(nameof(IIsWebDirTupleFields.Application_), IntermediateFieldType.String), | 18 | new IntermediateFieldDefinition(nameof(IIsWebDirTupleFields.ApplicationRef), IntermediateFieldType.String), |
| 20 | }, | 19 | }, |
| 21 | typeof(IIsWebDirTuple)); | 20 | typeof(IIsWebDirTuple)); |
| 22 | } | 21 | } |
| @@ -28,12 +27,11 @@ namespace WixToolset.Iis.Tuples | |||
| 28 | 27 | ||
| 29 | public enum IIsWebDirTupleFields | 28 | public enum IIsWebDirTupleFields |
| 30 | { | 29 | { |
| 31 | WebDir, | 30 | ComponentRef, |
| 32 | Component_, | 31 | WebRef, |
| 33 | Web_, | ||
| 34 | Path, | 32 | Path, |
| 35 | DirProperties_, | 33 | DirPropertiesRef, |
| 36 | Application_, | 34 | ApplicationRef, |
| 37 | } | 35 | } |
| 38 | 36 | ||
| 39 | public class IIsWebDirTuple : IntermediateTuple | 37 | public class IIsWebDirTuple : IntermediateTuple |
| @@ -48,22 +46,16 @@ namespace WixToolset.Iis.Tuples | |||
| 48 | 46 | ||
| 49 | public IntermediateField this[IIsWebDirTupleFields index] => this.Fields[(int)index]; | 47 | public IntermediateField this[IIsWebDirTupleFields index] => this.Fields[(int)index]; |
| 50 | 48 | ||
| 51 | public string WebDir | 49 | public string ComponentRef |
| 52 | { | 50 | { |
| 53 | get => this.Fields[(int)IIsWebDirTupleFields.WebDir].AsString(); | 51 | get => this.Fields[(int)IIsWebDirTupleFields.ComponentRef].AsString(); |
| 54 | set => this.Set((int)IIsWebDirTupleFields.WebDir, value); | 52 | set => this.Set((int)IIsWebDirTupleFields.ComponentRef, value); |
| 55 | } | 53 | } |
| 56 | 54 | ||
| 57 | public string Component_ | 55 | public string WebRef |
| 58 | { | 56 | { |
| 59 | get => this.Fields[(int)IIsWebDirTupleFields.Component_].AsString(); | 57 | get => this.Fields[(int)IIsWebDirTupleFields.WebRef].AsString(); |
| 60 | set => this.Set((int)IIsWebDirTupleFields.Component_, value); | 58 | set => this.Set((int)IIsWebDirTupleFields.WebRef, 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 | } | 59 | } |
| 68 | 60 | ||
| 69 | public string Path | 61 | public string Path |
| @@ -72,16 +64,16 @@ namespace WixToolset.Iis.Tuples | |||
| 72 | set => this.Set((int)IIsWebDirTupleFields.Path, value); | 64 | set => this.Set((int)IIsWebDirTupleFields.Path, value); |
| 73 | } | 65 | } |
| 74 | 66 | ||
| 75 | public string DirProperties_ | 67 | public string DirPropertiesRef |
| 76 | { | 68 | { |
| 77 | get => this.Fields[(int)IIsWebDirTupleFields.DirProperties_].AsString(); | 69 | get => this.Fields[(int)IIsWebDirTupleFields.DirPropertiesRef].AsString(); |
| 78 | set => this.Set((int)IIsWebDirTupleFields.DirProperties_, value); | 70 | set => this.Set((int)IIsWebDirTupleFields.DirPropertiesRef, value); |
| 79 | } | 71 | } |
| 80 | 72 | ||
| 81 | public string Application_ | 73 | public string ApplicationRef |
| 82 | { | 74 | { |
| 83 | get => this.Fields[(int)IIsWebDirTupleFields.Application_].AsString(); | 75 | get => this.Fields[(int)IIsWebDirTupleFields.ApplicationRef].AsString(); |
| 84 | set => this.Set((int)IIsWebDirTupleFields.Application_, value); | 76 | set => this.Set((int)IIsWebDirTupleFields.ApplicationRef, value); |
| 85 | } | 77 | } |
| 86 | } | 78 | } |
| 87 | } \ No newline at end of file | 79 | } \ No newline at end of file |
diff --git a/src/wixext/Tuples/IIsWebLogTuple.cs b/src/wixext/Tuples/IIsWebLogTuple.cs index 1dfe0862..ec912ac5 100644 --- a/src/wixext/Tuples/IIsWebLogTuple.cs +++ b/src/wixext/Tuples/IIsWebLogTuple.cs | |||
| @@ -11,7 +11,6 @@ namespace WixToolset.Iis | |||
| 11 | IisTupleDefinitionType.IIsWebLog.ToString(), | 11 | IisTupleDefinitionType.IIsWebLog.ToString(), |
| 12 | new[] | 12 | new[] |
| 13 | { | 13 | { |
| 14 | new IntermediateFieldDefinition(nameof(IIsWebLogTupleFields.Log), IntermediateFieldType.String), | ||
| 15 | new IntermediateFieldDefinition(nameof(IIsWebLogTupleFields.Format), IntermediateFieldType.String), | 14 | new IntermediateFieldDefinition(nameof(IIsWebLogTupleFields.Format), IntermediateFieldType.String), |
| 16 | }, | 15 | }, |
| 17 | typeof(IIsWebLogTuple)); | 16 | typeof(IIsWebLogTuple)); |
| @@ -24,7 +23,6 @@ namespace WixToolset.Iis.Tuples | |||
| 24 | 23 | ||
| 25 | public enum IIsWebLogTupleFields | 24 | public enum IIsWebLogTupleFields |
| 26 | { | 25 | { |
| 27 | Log, | ||
| 28 | Format, | 26 | Format, |
| 29 | } | 27 | } |
| 30 | 28 | ||
| @@ -40,12 +38,6 @@ namespace WixToolset.Iis.Tuples | |||
| 40 | 38 | ||
| 41 | public IntermediateField this[IIsWebLogTupleFields index] => this.Fields[(int)index]; | 39 | public IntermediateField this[IIsWebLogTupleFields index] => this.Fields[(int)index]; |
| 42 | 40 | ||
| 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 | 41 | public string Format |
| 50 | { | 42 | { |
| 51 | get => this.Fields[(int)IIsWebLogTupleFields.Format].AsString(); | 43 | get => this.Fields[(int)IIsWebLogTupleFields.Format].AsString(); |
diff --git a/src/wixext/Tuples/IIsWebServiceExtensionTuple.cs b/src/wixext/Tuples/IIsWebServiceExtensionTuple.cs index a6fec797..82d9c82a 100644 --- a/src/wixext/Tuples/IIsWebServiceExtensionTuple.cs +++ b/src/wixext/Tuples/IIsWebServiceExtensionTuple.cs | |||
| @@ -11,8 +11,7 @@ namespace WixToolset.Iis | |||
| 11 | IisTupleDefinitionType.IIsWebServiceExtension.ToString(), | 11 | IisTupleDefinitionType.IIsWebServiceExtension.ToString(), |
| 12 | new[] | 12 | new[] |
| 13 | { | 13 | { |
| 14 | new IntermediateFieldDefinition(nameof(IIsWebServiceExtensionTupleFields.WebServiceExtension), IntermediateFieldType.String), | 14 | new IntermediateFieldDefinition(nameof(IIsWebServiceExtensionTupleFields.ComponentRef), IntermediateFieldType.String), |
| 15 | new IntermediateFieldDefinition(nameof(IIsWebServiceExtensionTupleFields.Component_), IntermediateFieldType.String), | ||
| 16 | new IntermediateFieldDefinition(nameof(IIsWebServiceExtensionTupleFields.File), IntermediateFieldType.String), | 15 | new IntermediateFieldDefinition(nameof(IIsWebServiceExtensionTupleFields.File), IntermediateFieldType.String), |
| 17 | new IntermediateFieldDefinition(nameof(IIsWebServiceExtensionTupleFields.Description), IntermediateFieldType.String), | 16 | new IntermediateFieldDefinition(nameof(IIsWebServiceExtensionTupleFields.Description), IntermediateFieldType.String), |
| 18 | new IntermediateFieldDefinition(nameof(IIsWebServiceExtensionTupleFields.Group), IntermediateFieldType.String), | 17 | new IntermediateFieldDefinition(nameof(IIsWebServiceExtensionTupleFields.Group), IntermediateFieldType.String), |
| @@ -28,8 +27,7 @@ namespace WixToolset.Iis.Tuples | |||
| 28 | 27 | ||
| 29 | public enum IIsWebServiceExtensionTupleFields | 28 | public enum IIsWebServiceExtensionTupleFields |
| 30 | { | 29 | { |
| 31 | WebServiceExtension, | 30 | ComponentRef, |
| 32 | Component_, | ||
| 33 | File, | 31 | File, |
| 34 | Description, | 32 | Description, |
| 35 | Group, | 33 | Group, |
| @@ -48,16 +46,10 @@ namespace WixToolset.Iis.Tuples | |||
| 48 | 46 | ||
| 49 | public IntermediateField this[IIsWebServiceExtensionTupleFields index] => this.Fields[(int)index]; | 47 | public IntermediateField this[IIsWebServiceExtensionTupleFields index] => this.Fields[(int)index]; |
| 50 | 48 | ||
| 51 | public string WebServiceExtension | 49 | public string ComponentRef |
| 52 | { | 50 | { |
| 53 | get => this.Fields[(int)IIsWebServiceExtensionTupleFields.WebServiceExtension].AsString(); | 51 | get => this.Fields[(int)IIsWebServiceExtensionTupleFields.ComponentRef].AsString(); |
| 54 | set => this.Set((int)IIsWebServiceExtensionTupleFields.WebServiceExtension, value); | 52 | set => this.Set((int)IIsWebServiceExtensionTupleFields.ComponentRef, 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 | } | 53 | } |
| 62 | 54 | ||
| 63 | public string File | 55 | public string File |
diff --git a/src/wixext/Tuples/IIsWebSiteCertificatesTuple.cs b/src/wixext/Tuples/IIsWebSiteCertificatesTuple.cs index 711f745f..7e4879d7 100644 --- a/src/wixext/Tuples/IIsWebSiteCertificatesTuple.cs +++ b/src/wixext/Tuples/IIsWebSiteCertificatesTuple.cs | |||
| @@ -11,8 +11,8 @@ namespace WixToolset.Iis | |||
| 11 | IisTupleDefinitionType.IIsWebSiteCertificates.ToString(), | 11 | IisTupleDefinitionType.IIsWebSiteCertificates.ToString(), |
| 12 | new[] | 12 | new[] |
| 13 | { | 13 | { |
| 14 | new IntermediateFieldDefinition(nameof(IIsWebSiteCertificatesTupleFields.Web_), IntermediateFieldType.String), | 14 | new IntermediateFieldDefinition(nameof(IIsWebSiteCertificatesTupleFields.WebRef), IntermediateFieldType.String), |
| 15 | new IntermediateFieldDefinition(nameof(IIsWebSiteCertificatesTupleFields.Certificate_), IntermediateFieldType.String), | 15 | new IntermediateFieldDefinition(nameof(IIsWebSiteCertificatesTupleFields.CertificateRef), IntermediateFieldType.String), |
| 16 | }, | 16 | }, |
| 17 | typeof(IIsWebSiteCertificatesTuple)); | 17 | typeof(IIsWebSiteCertificatesTuple)); |
| 18 | } | 18 | } |
| @@ -24,8 +24,8 @@ namespace WixToolset.Iis.Tuples | |||
| 24 | 24 | ||
| 25 | public enum IIsWebSiteCertificatesTupleFields | 25 | public enum IIsWebSiteCertificatesTupleFields |
| 26 | { | 26 | { |
| 27 | Web_, | 27 | WebRef, |
| 28 | Certificate_, | 28 | CertificateRef, |
| 29 | } | 29 | } |
| 30 | 30 | ||
| 31 | public class IIsWebSiteCertificatesTuple : IntermediateTuple | 31 | public class IIsWebSiteCertificatesTuple : IntermediateTuple |
| @@ -40,16 +40,16 @@ namespace WixToolset.Iis.Tuples | |||
| 40 | 40 | ||
| 41 | public IntermediateField this[IIsWebSiteCertificatesTupleFields index] => this.Fields[(int)index]; | 41 | public IntermediateField this[IIsWebSiteCertificatesTupleFields index] => this.Fields[(int)index]; |
| 42 | 42 | ||
| 43 | public string Web_ | 43 | public string WebRef |
| 44 | { | 44 | { |
| 45 | get => this.Fields[(int)IIsWebSiteCertificatesTupleFields.Web_].AsString(); | 45 | get => this.Fields[(int)IIsWebSiteCertificatesTupleFields.WebRef].AsString(); |
| 46 | set => this.Set((int)IIsWebSiteCertificatesTupleFields.Web_, value); | 46 | set => this.Set((int)IIsWebSiteCertificatesTupleFields.WebRef, value); |
| 47 | } | 47 | } |
| 48 | 48 | ||
| 49 | public string Certificate_ | 49 | public string CertificateRef |
| 50 | { | 50 | { |
| 51 | get => this.Fields[(int)IIsWebSiteCertificatesTupleFields.Certificate_].AsString(); | 51 | get => this.Fields[(int)IIsWebSiteCertificatesTupleFields.CertificateRef].AsString(); |
| 52 | set => this.Set((int)IIsWebSiteCertificatesTupleFields.Certificate_, value); | 52 | set => this.Set((int)IIsWebSiteCertificatesTupleFields.CertificateRef, value); |
| 53 | } | 53 | } |
| 54 | } | 54 | } |
| 55 | } \ No newline at end of file | 55 | } \ No newline at end of file |
diff --git a/src/wixext/Tuples/IIsWebSiteTuple.cs b/src/wixext/Tuples/IIsWebSiteTuple.cs index 983352a5..610f1c59 100644 --- a/src/wixext/Tuples/IIsWebSiteTuple.cs +++ b/src/wixext/Tuples/IIsWebSiteTuple.cs | |||
| @@ -11,18 +11,17 @@ namespace WixToolset.Iis | |||
| 11 | IisTupleDefinitionType.IIsWebSite.ToString(), | 11 | IisTupleDefinitionType.IIsWebSite.ToString(), |
| 12 | new[] | 12 | new[] |
| 13 | { | 13 | { |
| 14 | new IntermediateFieldDefinition(nameof(IIsWebSiteTupleFields.Web), IntermediateFieldType.String), | 14 | new IntermediateFieldDefinition(nameof(IIsWebSiteTupleFields.ComponentRef), IntermediateFieldType.String), |
| 15 | new IntermediateFieldDefinition(nameof(IIsWebSiteTupleFields.Component_), IntermediateFieldType.String), | ||
| 16 | new IntermediateFieldDefinition(nameof(IIsWebSiteTupleFields.Description), IntermediateFieldType.String), | 15 | new IntermediateFieldDefinition(nameof(IIsWebSiteTupleFields.Description), IntermediateFieldType.String), |
| 17 | new IntermediateFieldDefinition(nameof(IIsWebSiteTupleFields.ConnectionTimeout), IntermediateFieldType.Number), | 16 | new IntermediateFieldDefinition(nameof(IIsWebSiteTupleFields.ConnectionTimeout), IntermediateFieldType.Number), |
| 18 | new IntermediateFieldDefinition(nameof(IIsWebSiteTupleFields.Directory_), IntermediateFieldType.String), | 17 | new IntermediateFieldDefinition(nameof(IIsWebSiteTupleFields.DirectoryRef), IntermediateFieldType.String), |
| 19 | new IntermediateFieldDefinition(nameof(IIsWebSiteTupleFields.State), IntermediateFieldType.Number), | 18 | new IntermediateFieldDefinition(nameof(IIsWebSiteTupleFields.State), IntermediateFieldType.Number), |
| 20 | new IntermediateFieldDefinition(nameof(IIsWebSiteTupleFields.Attributes), IntermediateFieldType.Number), | 19 | new IntermediateFieldDefinition(nameof(IIsWebSiteTupleFields.Attributes), IntermediateFieldType.Number), |
| 21 | new IntermediateFieldDefinition(nameof(IIsWebSiteTupleFields.KeyAddress_), IntermediateFieldType.String), | 20 | new IntermediateFieldDefinition(nameof(IIsWebSiteTupleFields.KeyAddressRef), IntermediateFieldType.String), |
| 22 | new IntermediateFieldDefinition(nameof(IIsWebSiteTupleFields.DirProperties_), IntermediateFieldType.String), | 21 | new IntermediateFieldDefinition(nameof(IIsWebSiteTupleFields.DirPropertiesRef), IntermediateFieldType.String), |
| 23 | new IntermediateFieldDefinition(nameof(IIsWebSiteTupleFields.Application_), IntermediateFieldType.String), | 22 | new IntermediateFieldDefinition(nameof(IIsWebSiteTupleFields.ApplicationRef), IntermediateFieldType.String), |
| 24 | new IntermediateFieldDefinition(nameof(IIsWebSiteTupleFields.Sequence), IntermediateFieldType.Number), | 23 | new IntermediateFieldDefinition(nameof(IIsWebSiteTupleFields.Sequence), IntermediateFieldType.Number), |
| 25 | new IntermediateFieldDefinition(nameof(IIsWebSiteTupleFields.Log_), IntermediateFieldType.String), | 24 | new IntermediateFieldDefinition(nameof(IIsWebSiteTupleFields.LogRef), IntermediateFieldType.String), |
| 26 | new IntermediateFieldDefinition(nameof(IIsWebSiteTupleFields.WebsiteId), IntermediateFieldType.String), | 25 | new IntermediateFieldDefinition(nameof(IIsWebSiteTupleFields.WebsiteId), IntermediateFieldType.String), |
| 27 | }, | 26 | }, |
| 28 | typeof(IIsWebSiteTuple)); | 27 | typeof(IIsWebSiteTuple)); |
| @@ -35,18 +34,17 @@ namespace WixToolset.Iis.Tuples | |||
| 35 | 34 | ||
| 36 | public enum IIsWebSiteTupleFields | 35 | public enum IIsWebSiteTupleFields |
| 37 | { | 36 | { |
| 38 | Web, | 37 | ComponentRef, |
| 39 | Component_, | ||
| 40 | Description, | 38 | Description, |
| 41 | ConnectionTimeout, | 39 | ConnectionTimeout, |
| 42 | Directory_, | 40 | DirectoryRef, |
| 43 | State, | 41 | State, |
| 44 | Attributes, | 42 | Attributes, |
| 45 | KeyAddress_, | 43 | KeyAddressRef, |
| 46 | DirProperties_, | 44 | DirPropertiesRef, |
| 47 | Application_, | 45 | ApplicationRef, |
| 48 | Sequence, | 46 | Sequence, |
| 49 | Log_, | 47 | LogRef, |
| 50 | WebsiteId, | 48 | WebsiteId, |
| 51 | } | 49 | } |
| 52 | 50 | ||
| @@ -62,16 +60,10 @@ namespace WixToolset.Iis.Tuples | |||
| 62 | 60 | ||
| 63 | public IntermediateField this[IIsWebSiteTupleFields index] => this.Fields[(int)index]; | 61 | public IntermediateField this[IIsWebSiteTupleFields index] => this.Fields[(int)index]; |
| 64 | 62 | ||
| 65 | public string Web | 63 | public string ComponentRef |
| 66 | { | 64 | { |
| 67 | get => this.Fields[(int)IIsWebSiteTupleFields.Web].AsString(); | 65 | get => this.Fields[(int)IIsWebSiteTupleFields.ComponentRef].AsString(); |
| 68 | set => this.Set((int)IIsWebSiteTupleFields.Web, value); | 66 | set => this.Set((int)IIsWebSiteTupleFields.ComponentRef, 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 | } | 67 | } |
| 76 | 68 | ||
| 77 | public string Description | 69 | public string Description |
| @@ -86,10 +78,10 @@ namespace WixToolset.Iis.Tuples | |||
| 86 | set => this.Set((int)IIsWebSiteTupleFields.ConnectionTimeout, value); | 78 | set => this.Set((int)IIsWebSiteTupleFields.ConnectionTimeout, value); |
| 87 | } | 79 | } |
| 88 | 80 | ||
| 89 | public string Directory_ | 81 | public string DirectoryRef |
| 90 | { | 82 | { |
| 91 | get => this.Fields[(int)IIsWebSiteTupleFields.Directory_].AsString(); | 83 | get => this.Fields[(int)IIsWebSiteTupleFields.DirectoryRef].AsString(); |
| 92 | set => this.Set((int)IIsWebSiteTupleFields.Directory_, value); | 84 | set => this.Set((int)IIsWebSiteTupleFields.DirectoryRef, value); |
| 93 | } | 85 | } |
| 94 | 86 | ||
| 95 | public int State | 87 | public int State |
| @@ -104,22 +96,22 @@ namespace WixToolset.Iis.Tuples | |||
| 104 | set => this.Set((int)IIsWebSiteTupleFields.Attributes, value); | 96 | set => this.Set((int)IIsWebSiteTupleFields.Attributes, value); |
| 105 | } | 97 | } |
| 106 | 98 | ||
| 107 | public string KeyAddress_ | 99 | public string KeyAddressRef |
| 108 | { | 100 | { |
| 109 | get => this.Fields[(int)IIsWebSiteTupleFields.KeyAddress_].AsString(); | 101 | get => this.Fields[(int)IIsWebSiteTupleFields.KeyAddressRef].AsString(); |
| 110 | set => this.Set((int)IIsWebSiteTupleFields.KeyAddress_, value); | 102 | set => this.Set((int)IIsWebSiteTupleFields.KeyAddressRef, value); |
| 111 | } | 103 | } |
| 112 | 104 | ||
| 113 | public string DirProperties_ | 105 | public string DirPropertiesRef |
| 114 | { | 106 | { |
| 115 | get => this.Fields[(int)IIsWebSiteTupleFields.DirProperties_].AsString(); | 107 | get => this.Fields[(int)IIsWebSiteTupleFields.DirPropertiesRef].AsString(); |
| 116 | set => this.Set((int)IIsWebSiteTupleFields.DirProperties_, value); | 108 | set => this.Set((int)IIsWebSiteTupleFields.DirPropertiesRef, value); |
| 117 | } | 109 | } |
| 118 | 110 | ||
| 119 | public string Application_ | 111 | public string ApplicationRef |
| 120 | { | 112 | { |
| 121 | get => this.Fields[(int)IIsWebSiteTupleFields.Application_].AsString(); | 113 | get => this.Fields[(int)IIsWebSiteTupleFields.ApplicationRef].AsString(); |
| 122 | set => this.Set((int)IIsWebSiteTupleFields.Application_, value); | 114 | set => this.Set((int)IIsWebSiteTupleFields.ApplicationRef, value); |
| 123 | } | 115 | } |
| 124 | 116 | ||
| 125 | public int Sequence | 117 | public int Sequence |
| @@ -128,10 +120,10 @@ namespace WixToolset.Iis.Tuples | |||
| 128 | set => this.Set((int)IIsWebSiteTupleFields.Sequence, value); | 120 | set => this.Set((int)IIsWebSiteTupleFields.Sequence, value); |
| 129 | } | 121 | } |
| 130 | 122 | ||
| 131 | public string Log_ | 123 | public string LogRef |
| 132 | { | 124 | { |
| 133 | get => this.Fields[(int)IIsWebSiteTupleFields.Log_].AsString(); | 125 | get => this.Fields[(int)IIsWebSiteTupleFields.LogRef].AsString(); |
| 134 | set => this.Set((int)IIsWebSiteTupleFields.Log_, value); | 126 | set => this.Set((int)IIsWebSiteTupleFields.LogRef, value); |
| 135 | } | 127 | } |
| 136 | 128 | ||
| 137 | public string WebsiteId | 129 | public string WebsiteId |
diff --git a/src/wixext/Tuples/IIsWebVirtualDirTuple.cs b/src/wixext/Tuples/IIsWebVirtualDirTuple.cs index f80804af..3a624b80 100644 --- a/src/wixext/Tuples/IIsWebVirtualDirTuple.cs +++ b/src/wixext/Tuples/IIsWebVirtualDirTuple.cs | |||
| @@ -11,13 +11,12 @@ namespace WixToolset.Iis | |||
| 11 | IisTupleDefinitionType.IIsWebVirtualDir.ToString(), | 11 | IisTupleDefinitionType.IIsWebVirtualDir.ToString(), |
| 12 | new[] | 12 | new[] |
| 13 | { | 13 | { |
| 14 | new IntermediateFieldDefinition(nameof(IIsWebVirtualDirTupleFields.VirtualDir), IntermediateFieldType.String), | 14 | new IntermediateFieldDefinition(nameof(IIsWebVirtualDirTupleFields.ComponentRef), IntermediateFieldType.String), |
| 15 | new IntermediateFieldDefinition(nameof(IIsWebVirtualDirTupleFields.Component_), IntermediateFieldType.String), | 15 | new IntermediateFieldDefinition(nameof(IIsWebVirtualDirTupleFields.WebRef), IntermediateFieldType.String), |
| 16 | new IntermediateFieldDefinition(nameof(IIsWebVirtualDirTupleFields.Web_), IntermediateFieldType.String), | ||
| 17 | new IntermediateFieldDefinition(nameof(IIsWebVirtualDirTupleFields.Alias), IntermediateFieldType.String), | 16 | new IntermediateFieldDefinition(nameof(IIsWebVirtualDirTupleFields.Alias), IntermediateFieldType.String), |
| 18 | new IntermediateFieldDefinition(nameof(IIsWebVirtualDirTupleFields.Directory_), IntermediateFieldType.String), | 17 | new IntermediateFieldDefinition(nameof(IIsWebVirtualDirTupleFields.DirectoryRef), IntermediateFieldType.String), |
| 19 | new IntermediateFieldDefinition(nameof(IIsWebVirtualDirTupleFields.DirProperties_), IntermediateFieldType.String), | 18 | new IntermediateFieldDefinition(nameof(IIsWebVirtualDirTupleFields.DirPropertiesRef), IntermediateFieldType.String), |
| 20 | new IntermediateFieldDefinition(nameof(IIsWebVirtualDirTupleFields.Application_), IntermediateFieldType.String), | 19 | new IntermediateFieldDefinition(nameof(IIsWebVirtualDirTupleFields.ApplicationRef), IntermediateFieldType.String), |
| 21 | }, | 20 | }, |
| 22 | typeof(IIsWebVirtualDirTuple)); | 21 | typeof(IIsWebVirtualDirTuple)); |
| 23 | } | 22 | } |
| @@ -29,13 +28,12 @@ namespace WixToolset.Iis.Tuples | |||
| 29 | 28 | ||
| 30 | public enum IIsWebVirtualDirTupleFields | 29 | public enum IIsWebVirtualDirTupleFields |
| 31 | { | 30 | { |
| 32 | VirtualDir, | 31 | ComponentRef, |
| 33 | Component_, | 32 | WebRef, |
| 34 | Web_, | ||
| 35 | Alias, | 33 | Alias, |
| 36 | Directory_, | 34 | DirectoryRef, |
| 37 | DirProperties_, | 35 | DirPropertiesRef, |
| 38 | Application_, | 36 | ApplicationRef, |
| 39 | } | 37 | } |
| 40 | 38 | ||
| 41 | public class IIsWebVirtualDirTuple : IntermediateTuple | 39 | public class IIsWebVirtualDirTuple : IntermediateTuple |
| @@ -50,22 +48,16 @@ namespace WixToolset.Iis.Tuples | |||
| 50 | 48 | ||
| 51 | public IntermediateField this[IIsWebVirtualDirTupleFields index] => this.Fields[(int)index]; | 49 | public IntermediateField this[IIsWebVirtualDirTupleFields index] => this.Fields[(int)index]; |
| 52 | 50 | ||
| 53 | public string VirtualDir | 51 | public string ComponentRef |
| 54 | { | 52 | { |
| 55 | get => this.Fields[(int)IIsWebVirtualDirTupleFields.VirtualDir].AsString(); | 53 | get => this.Fields[(int)IIsWebVirtualDirTupleFields.ComponentRef].AsString(); |
| 56 | set => this.Set((int)IIsWebVirtualDirTupleFields.VirtualDir, value); | 54 | set => this.Set((int)IIsWebVirtualDirTupleFields.ComponentRef, value); |
| 57 | } | 55 | } |
| 58 | 56 | ||
| 59 | public string Component_ | 57 | public string WebRef |
| 60 | { | 58 | { |
| 61 | get => this.Fields[(int)IIsWebVirtualDirTupleFields.Component_].AsString(); | 59 | get => this.Fields[(int)IIsWebVirtualDirTupleFields.WebRef].AsString(); |
| 62 | set => this.Set((int)IIsWebVirtualDirTupleFields.Component_, value); | 60 | set => this.Set((int)IIsWebVirtualDirTupleFields.WebRef, 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 | } | 61 | } |
| 70 | 62 | ||
| 71 | public string Alias | 63 | public string Alias |
| @@ -74,22 +66,22 @@ namespace WixToolset.Iis.Tuples | |||
| 74 | set => this.Set((int)IIsWebVirtualDirTupleFields.Alias, value); | 66 | set => this.Set((int)IIsWebVirtualDirTupleFields.Alias, value); |
| 75 | } | 67 | } |
| 76 | 68 | ||
| 77 | public string Directory_ | 69 | public string DirectoryRef |
| 78 | { | 70 | { |
| 79 | get => this.Fields[(int)IIsWebVirtualDirTupleFields.Directory_].AsString(); | 71 | get => this.Fields[(int)IIsWebVirtualDirTupleFields.DirectoryRef].AsString(); |
| 80 | set => this.Set((int)IIsWebVirtualDirTupleFields.Directory_, value); | 72 | set => this.Set((int)IIsWebVirtualDirTupleFields.DirectoryRef, value); |
| 81 | } | 73 | } |
| 82 | 74 | ||
| 83 | public string DirProperties_ | 75 | public string DirPropertiesRef |
| 84 | { | 76 | { |
| 85 | get => this.Fields[(int)IIsWebVirtualDirTupleFields.DirProperties_].AsString(); | 77 | get => this.Fields[(int)IIsWebVirtualDirTupleFields.DirPropertiesRef].AsString(); |
| 86 | set => this.Set((int)IIsWebVirtualDirTupleFields.DirProperties_, value); | 78 | set => this.Set((int)IIsWebVirtualDirTupleFields.DirPropertiesRef, value); |
| 87 | } | 79 | } |
| 88 | 80 | ||
| 89 | public string Application_ | 81 | public string ApplicationRef |
| 90 | { | 82 | { |
| 91 | get => this.Fields[(int)IIsWebVirtualDirTupleFields.Application_].AsString(); | 83 | get => this.Fields[(int)IIsWebVirtualDirTupleFields.ApplicationRef].AsString(); |
| 92 | set => this.Set((int)IIsWebVirtualDirTupleFields.Application_, value); | 84 | set => this.Set((int)IIsWebVirtualDirTupleFields.ApplicationRef, value); |
| 93 | } | 85 | } |
| 94 | } | 86 | } |
| 95 | } \ No newline at end of file | 87 | } \ No newline at end of file |
diff --git a/src/wixext/WixToolset.Iis.wixext.csproj b/src/wixext/WixToolset.Iis.wixext.csproj index 103d3c18..54ada521 100644 --- a/src/wixext/WixToolset.Iis.wixext.csproj +++ b/src/wixext/WixToolset.Iis.wixext.csproj | |||
| @@ -14,7 +14,6 @@ | |||
| 14 | <ItemGroup> | 14 | <ItemGroup> |
| 15 | <Content Include="$(MSBuildThisFileName).targets" /> | 15 | <Content Include="$(MSBuildThisFileName).targets" /> |
| 16 | <Content Include="iis.xsd" PackagePath="tools" /> | 16 | <Content Include="iis.xsd" PackagePath="tools" /> |
| 17 | <EmbeddedResource Include="tables.xml" /> | ||
| 18 | <EmbeddedResource Include="$(OutputPath)..\iis.wixlib" /> | 17 | <EmbeddedResource Include="$(OutputPath)..\iis.wixlib" /> |
| 19 | </ItemGroup> | 18 | </ItemGroup> |
| 20 | 19 | ||
diff --git a/src/wixext/tables.xml b/src/wixext/tables.xml deleted file mode 100644 index 2aef6f13..00000000 --- a/src/wixext/tables.xml +++ /dev/null | |||
| @@ -1,304 +0,0 @@ | |||
| 1 | <?xml version="1.0" encoding="utf-8" ?> | ||
| 2 | <!-- 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. --> | ||
| 3 | |||
| 4 | |||
| 5 | <tableDefinitions xmlns="http://wixtoolset.org/schemas/v4/wi/tables"> | ||
| 6 | <tableDefinition name="Certificate" createSymbols="yes"> | ||
| 7 | <columnDefinition name="Certificate" type="string" length="72" primaryKey="yes" modularize="column" | ||
| 8 | keyColumn="1" category="identifier" description="Identifier for the certificate in the package."/> | ||
| 9 | <columnDefinition name="Component_" type="string" length="72" modularize="column" | ||
| 10 | category="identifier" description="Foreign key into the Component table used to determine install state"/> | ||
| 11 | <columnDefinition name="Name" type="string" length="255" | ||
| 12 | category="formatted" description="Name to be used for the Certificate."/> | ||
| 13 | <columnDefinition name="StoreLocation" type="number" length="2" | ||
| 14 | minValue="1" maxValue="2" description="Location of the target certificate store (CurrentUser == 1, LocalMachine == 2)"/> | ||
| 15 | <columnDefinition name="StoreName" type="string" length="64" | ||
| 16 | category="formatted" description="Name of the target certificate store"/> | ||
| 17 | <columnDefinition name="Attributes" type="number" length="4" | ||
| 18 | minValue="0" maxValue="2147483647" description="Attributes of the certificate"/> | ||
| 19 | <columnDefinition name="Binary_" type="string" length="72" nullable="yes" modularize="column" | ||
| 20 | keyTable="Binary" keyColumn="1" category="identifier" description="Identifier to Binary table containing certificate."/> | ||
| 21 | <columnDefinition name="CertificatePath" type="string" length="0" nullable="yes" modularize="property" | ||
| 22 | category="formatted" description="Property to path of certificate."/> | ||
| 23 | <columnDefinition name="PFXPassword" type="string" length="0" nullable="yes" modularize="property" | ||
| 24 | category="formatted" description="Hidden property to a pfx password"/> | ||
| 25 | </tableDefinition> | ||
| 26 | <tableDefinition name="CertificateHash" createSymbols="yes"> | ||
| 27 | <columnDefinition name="Certificate_" type="string" length="72" primaryKey="yes" modularize="column" | ||
| 28 | keyColumn="1" category="identifier" description="Foreign key to certificate in Certificate table."/> | ||
| 29 | <columnDefinition name="Hash" type="string" length="0" nullable="yes" | ||
| 30 | category="text" description="Base64 encoded SHA1 hash of certificate populated at run-time."/> | ||
| 31 | </tableDefinition> | ||
| 32 | <tableDefinition name="IIsWebSiteCertificates"> | ||
| 33 | <columnDefinition name="Web_" type="string" length="72" primaryKey="yes" modularize="column" | ||
| 34 | keyTable="IIsWebSite" keyColumn="1" category="identifier" description="The index into the IIsWebSite table."/> | ||
| 35 | <columnDefinition name="Certificate_" type="string" length="72" primaryKey="yes" modularize="column" | ||
| 36 | keyTable="Certificate" keyColumn="1" category="text" description="The index into the Certificate table."/> | ||
| 37 | </tableDefinition> | ||
| 38 | <tableDefinition name="IIsAppPool" createSymbols="yes"> | ||
| 39 | <columnDefinition name="AppPool" type="string" length="72" primaryKey="yes" modularize="column" | ||
| 40 | category="identifier" description="Primary key, non-localized token for apppool"/> | ||
| 41 | <columnDefinition name="Name" type="string" length="72" modularize="property" | ||
| 42 | category="formatted" description="Name to be used for the IIs AppPool."/> | ||
| 43 | <columnDefinition name="Component_" type="string" length="72" modularize="column" nullable="yes" | ||
| 44 | keyTable="Component" keyColumn="1" category="identifier" description="Foreign key referencing Component that controls the app pool"/> | ||
| 45 | <columnDefinition name="Attributes" type="number" length="2" | ||
| 46 | description="Attributes of the AppPool"/> | ||
| 47 | <columnDefinition name="User_" type="string" length="72" nullable="yes" modularize="column" | ||
| 48 | keyTable="User" keyColumn="1" category="identifier" description="User account to run the app pool as"/> | ||
| 49 | <columnDefinition name="RecycleMinutes" type="number" length="2" nullable="yes" | ||
| 50 | description="Number of minutes between recycling app pool"/> | ||
| 51 | <columnDefinition name="RecycleRequests" type="number" length="2" nullable="yes" | ||
| 52 | description="Number of requests between recycling app pool"/> | ||
| 53 | <columnDefinition name="RecycleTimes" type="string" length="72" nullable="yes" | ||
| 54 | description="Times to recycle app pool (comma delimited - i.e. 1:45,13:30)"/> | ||
| 55 | <columnDefinition name="IdleTimeout" type="number" length="2" nullable="yes" | ||
| 56 | description="Amount of idle time before shutting down"/> | ||
| 57 | <columnDefinition name="QueueLimit" type="number" length="2" nullable="yes" | ||
| 58 | description="Reject requests after queue gets how large"/> | ||
| 59 | <columnDefinition name="CPUMon" type="string" length="72" nullable="yes" | ||
| 60 | description="CPUMon is a comma delimeted list of the following format: <percent CPU usage>,<refress minutes>,<Action>. The values for Action are 1 (Shutdown) and 0 (No Action)."/> | ||
| 61 | <columnDefinition name="MaxProc" type="number" length="2" nullable="yes" | ||
| 62 | description="Maximum number of processes to use"/> | ||
| 63 | <columnDefinition name="VirtualMemory" type="number" length="4" nullable="yes" | ||
| 64 | description="Amount of virtual memory (in KB) that a worker process can use before the worker process recycles. The maximum value supported for this field is 4,294,967 KB."/> | ||
| 65 | <columnDefinition name="PrivateMemory" type="number" length="4" nullable="yes" | ||
| 66 | description="Amount of private memory (in KB) that a worker process can use before the worker process recycles. The maximum value supported for this field is 4,294,967 KB."/> | ||
| 67 | <columnDefinition name="ManagedRuntimeVersion" type="string" length="72" nullable="yes" | ||
| 68 | description="Specifies the .NET Framework version to be used by the application pool."/> | ||
| 69 | <columnDefinition name="ManagedPipelineMode" type="string" length="72" nullable="yes" | ||
| 70 | description="Specifies the request-processing mode that is used to process requests for managed content."/> | ||
| 71 | </tableDefinition> | ||
| 72 | <tableDefinition name="IIsMimeMap"> | ||
| 73 | <columnDefinition name="MimeMap" type="string" length="72" primaryKey="yes" modularize="column" | ||
| 74 | category="identifier" description="Primary key, non-localized token for Mime Map definitions"/> | ||
| 75 | <columnDefinition name="ParentType" type="number" length="2" | ||
| 76 | set="1;2" description="Type of parent: 1=vdir 2=website"/> | ||
| 77 | <columnDefinition name="ParentValue" type="string" length="72" modularize="column" | ||
| 78 | category="identifier" description="Name of the parent value."/> | ||
| 79 | <columnDefinition name="MimeType" type="string" length="72" | ||
| 80 | category="text" description="Mime-type covered by the MimeMap."/> | ||
| 81 | <columnDefinition name="Extension" type="string" length="72" | ||
| 82 | category="text" description="Extension covered by the MimeMap."/> | ||
| 83 | </tableDefinition> | ||
| 84 | <tableDefinition name="IIsProperty"> | ||
| 85 | <columnDefinition name="Property" type="string" length="72" primaryKey="yes" | ||
| 86 | category="identifier" description="Unique name of the IIsProperty"/> | ||
| 87 | <columnDefinition name="Component_" type="string" length="72" modularize="column" | ||
| 88 | keyTable="Component" keyColumn="1" category="identifier" description="Component that the property is linked to" /> | ||
| 89 | <columnDefinition name="Attributes" type="number" length="2" | ||
| 90 | description="Attributes of the IIsProperty (unused)"/> | ||
| 91 | <columnDefinition name="Value" type="string" length="72" nullable="yes" | ||
| 92 | description="Value of the IIsProperty"/> | ||
| 93 | </tableDefinition> | ||
| 94 | <tableDefinition name="IIsWebDirProperties" createSymbols="yes"> | ||
| 95 | <columnDefinition name="DirProperties" type="string" length="72" primaryKey="yes" modularize="column" | ||
| 96 | category="identifier" description="Primary key, non-localized token for Web Properties"/> | ||
| 97 | <columnDefinition name="Access" type="number" length="2" nullable="yes" | ||
| 98 | description="Access rights to the web server"/> | ||
| 99 | <columnDefinition name="Authorization" type="number" length="2" nullable="yes" | ||
| 100 | description="Authorization policy to web server (anonymous access, NTLM, etc)"/> | ||
| 101 | <columnDefinition name="AnonymousUser_" type="string" length="72" nullable="yes" modularize="column" | ||
| 102 | keyTable="User" keyColumn="1" category="identifier" description="Foreign key, User used to log into database"/> | ||
| 103 | <columnDefinition name="IIsControlledPassword" type="number" length="2" nullable="yes" | ||
| 104 | set="0;1" description="Specifies whether IIs is allowed to set the AnonymousUser_ password"/> | ||
| 105 | <columnDefinition name="LogVisits" type="number" length="2" nullable="yes" | ||
| 106 | set="0;1" description="Specifies whether IIs tracks all access to the directory"/> | ||
| 107 | <columnDefinition name="Index" type="number" length="2" nullable="yes" | ||
| 108 | set="0;1" description="Specifies whether IIs searches the directory"/> | ||
| 109 | <columnDefinition name="DefaultDoc" type="string" length="255" nullable="yes" | ||
| 110 | category="text" description="Comma delimited list of file names to act as a default document"/> | ||
| 111 | <columnDefinition name="AspDetailedError" type="number" length="2" nullable="yes" | ||
| 112 | set="0;1" description="Specifies whether detailed ASP errors are sent to browser"/> | ||
| 113 | <columnDefinition name="HttpExpires" type="string" length="255" nullable="yes" escapeIdtCharacters="yes" | ||
| 114 | category="text" description="Value to set the HttpExpires attribute to for a Web Dir in the metabase"/> | ||
| 115 | <columnDefinition name="CacheControlMaxAge" type="number" length="4" nullable="yes" | ||
| 116 | description="Integer value specifying the cache control maximum age value."/> | ||
| 117 | <columnDefinition name="CacheControlCustom" type="string" length="255" nullable="yes" escapeIdtCharacters="yes" | ||
| 118 | category="text" description="Custom HTTP 1.1 cache control directives."/> | ||
| 119 | <columnDefinition name="NoCustomError" type="number" length="2" nullable="yes" | ||
| 120 | set="0;1" description="Specifies whether IIs will return custom errors for this directory."/> | ||
| 121 | <columnDefinition name="AccessSSLFlags" type="number" length="2" nullable="yes" | ||
| 122 | description="Specifies AccessSSLFlags IIS metabase property."/> | ||
| 123 | <columnDefinition name="AuthenticationProviders" type="string" length="255" nullable="yes" | ||
| 124 | category="text" description="Comma delimited list, in order of precedence, of Windows authentication providers that IIS will attempt to use: NTLM, Kerberos, Negotiate, and others."/> | ||
| 125 | </tableDefinition> | ||
| 126 | <tableDefinition name="IIsWebAddress" createSymbols="yes"> | ||
| 127 | <columnDefinition name="Address" type="string" length="72" primaryKey="yes" modularize="column" | ||
| 128 | category="identifier" description="Primary key, non-localized token"/> | ||
| 129 | <columnDefinition name="Web_" type="string" length="72" modularize="column" | ||
| 130 | keyTable="IIsWebSite" keyColumn="1" category="identifier" description="Foreign key referencing Web that uses the address."/> | ||
| 131 | <columnDefinition name="IP" type="string" length="255" nullable="yes" modularize="property" | ||
| 132 | category="text" description="String representing IP address (#.#.#.#) or NT machine name (fooserver)"/> | ||
| 133 | <columnDefinition name="Port" type="string" length="72" modularize="property" | ||
| 134 | category="formatted" description="Port web site listens on"/> | ||
| 135 | <columnDefinition name="Header" type="string" length="255" nullable="yes" | ||
| 136 | category="text" description="Special header information for the web site"/> | ||
| 137 | <columnDefinition name="Secure" type="number" length="2" nullable="yes" | ||
| 138 | set="0;1" description="Specifies whether SSL is used to communicate with web site"/> | ||
| 139 | </tableDefinition> | ||
| 140 | <tableDefinition name="IIsWebSite" createSymbols="yes"> | ||
| 141 | <columnDefinition name="Web" type="string" length="72" primaryKey="yes" modularize="column" | ||
| 142 | category="identifier" description="Primary key, non-localized token"/> | ||
| 143 | <columnDefinition name="Component_" type="string" length="72" nullable="yes" modularize="column" | ||
| 144 | keyTable="Component" keyColumn="1" category="identifier" description="Foreign key referencing Component that controls the web site"/> | ||
| 145 | <columnDefinition name="Description" type="string" length="255" nullable="yes" | ||
| 146 | category="formatted" description="Description displayed in IIS MMC applet"/> | ||
| 147 | <columnDefinition name="ConnectionTimeout" type="number" length="2" nullable="yes" | ||
| 148 | description="Time connection is maintained without activity (in seconds)"/> | ||
| 149 | <columnDefinition name="Directory_" type="string" length="72" nullable="yes" modularize="column" | ||
| 150 | keyTable="Directory" keyColumn="1" category="identifier" description="Foreign key referencing directory that the web site points at"/> | ||
| 151 | <columnDefinition name="State" type="number" length="2" nullable="yes" | ||
| 152 | set="0;1;2" description="Sets intial state of web site"/> | ||
| 153 | <columnDefinition name="Attributes" type="number" length="2" nullable="yes" | ||
| 154 | set="2" description="Control the install behavior of web site"/> | ||
| 155 | <columnDefinition name="KeyAddress_" type="string" length="72" modularize="column" | ||
| 156 | keyTable="IIsWebAddress" keyColumn="1" category="identifier" description="Foreign key referencing primary address for the web site"/> | ||
| 157 | <columnDefinition name="DirProperties_" type="string" length="72" nullable="yes" modularize="column" | ||
| 158 | keyTable="IIsWebDirProperties" keyColumn="1" category="identifier" description="Foreign key referencing possible security information for the web site"/> | ||
| 159 | <columnDefinition name="Application_" type="string" length="72" nullable="yes" modularize="column" | ||
| 160 | keyTable="IIsWebApplication" keyColumn="1" category="identifier" description="Foreign key referencing possible ASP application for the web site."/> | ||
| 161 | <columnDefinition name="Sequence" type="number" length="2" nullable="yes" | ||
| 162 | description="Allows ordering of web site install"/> | ||
| 163 | <columnDefinition name="Log_" type="string" length="72" nullable="yes" modularize="column" | ||
| 164 | keyTable="IIsWebLog" keyColumn="1" description="Foreign key reference to IIsWebLog data"/> | ||
| 165 | <columnDefinition name="Id" type="string" length="74" nullable="yes" | ||
| 166 | category="formatted" description="Optional number or formatted value that resolves to number that acts as the WebSite Id."/> | ||
| 167 | </tableDefinition> | ||
| 168 | <tableDefinition name="IIsWebApplication" createSymbols="yes"> | ||
| 169 | <columnDefinition name="Application" type="string" length="72" primaryKey="yes" modularize="column" | ||
| 170 | category="identifier" description="Primary key, non-localized token for ASP Application"/> | ||
| 171 | <columnDefinition name="Name" type="localized" length="255" modularize="property" | ||
| 172 | category="formatted" description="Name of application in IIS MMC applet"/> | ||
| 173 | <columnDefinition name="Isolation" type="number" length="2" | ||
| 174 | set="0;1;2" description="Isolation level for ASP Application: 0 == Low, 2 == Medium, 1 == High"/> | ||
| 175 | <columnDefinition name="AllowSessions" type="number" length="2" nullable="yes" | ||
| 176 | set="0;1" description="Specifies whether application may maintain session state"/> | ||
| 177 | <columnDefinition name="SessionTimeout" type="number" length="2" nullable="yes" | ||
| 178 | description="Time session state is maintained without user interaction"/> | ||
| 179 | <columnDefinition name="Buffer" type="number" length="2" nullable="yes" | ||
| 180 | set="0;1" description="Specifies whether application buffers its output"/> | ||
| 181 | <columnDefinition name="ParentPaths" type="number" length="2" nullable="yes" | ||
| 182 | set="0;1" description="What is this for anyway?"/> | ||
| 183 | <columnDefinition name="DefaultScript" type="string" length="26" nullable="yes" | ||
| 184 | category="text" set="VBScript;JScript" description="Default scripting language for ASP applications"/> | ||
| 185 | <columnDefinition name="ScriptTimeout" type="number" length="2" nullable="yes" | ||
| 186 | description="Time ASP application page is permitted to process"/> | ||
| 187 | <columnDefinition name="ServerDebugging" type="number" length="2" nullable="yes" | ||
| 188 | set="0;1" description="Specifies whether to allow ASP server-side script debugging"/> | ||
| 189 | <columnDefinition name="ClientDebugging" type="number" length="2" nullable="yes" | ||
| 190 | set="0;1" description="Specifies whether to allow ASP client-side script debugging"/> | ||
| 191 | <columnDefinition name="AppPool_" type="string" length="72" nullable="yes" modularize="column" | ||
| 192 | keyTable="IIsAppPool" keyColumn="1" category="identifier" description="App Pool this application should run under"/> | ||
| 193 | </tableDefinition> | ||
| 194 | <tableDefinition name="IIsWebApplicationExtension" createSymbols="yes"> | ||
| 195 | <columnDefinition name="Application_" type="string" length="72" primaryKey="yes" modularize="column" | ||
| 196 | keyTable="IIsWebApplication" keyColumn="1" category="identifier" description="Foreign key referencing possible ASP application for the web site"/> | ||
| 197 | <columnDefinition name="Extension" type="string" length="255" primaryKey="yes" nullable="yes" | ||
| 198 | category="text" description="Primary key, Extension that should be registered for this ASP application"/> | ||
| 199 | <columnDefinition name="Verbs" type="string" length="255" nullable="yes" | ||
| 200 | category="text" description="Comma delimited list of HTTP verbs the extension should be registered with"/> | ||
| 201 | <columnDefinition name="Executable" type="string" length="255" modularize="property" | ||
| 202 | category="formatted" description="Path to extension (usually file property: [#file])"/> | ||
| 203 | <columnDefinition name="Attributes" type="number" length="2" nullable="yes" | ||
| 204 | set="1;4;5" description="Attributes for extension: 1 == Script, 4 == Check Path Info"/> | ||
| 205 | </tableDefinition> | ||
| 206 | <tableDefinition name="IIsFilter" createSymbols="yes"> | ||
| 207 | <columnDefinition name="Filter" type="string" length="72" primaryKey="yes" modularize="column" | ||
| 208 | category="identifier" description="Primary key, non-localized token"/> | ||
| 209 | <columnDefinition name="Name" type="string" length="72" | ||
| 210 | description="Name of the ISAPI Filter in IIS"/> | ||
| 211 | <columnDefinition name="Component_" type="string" length="72" modularize="column" | ||
| 212 | keyTable="Component" keyColumn="1" category="identifier" description="Foreign key referencing Component that controls the filter"/> | ||
| 213 | <columnDefinition name="Path" type="string" length="255" nullable="yes" modularize="property" | ||
| 214 | category="formatted" description="Path to filter (usually file property: [#file])"/> | ||
| 215 | <columnDefinition name="Web_" type="string" length="72" nullable="yes" modularize="column" | ||
| 216 | keyTable="IIsWebSite" keyColumn="1" category="identifier" description="Foreign key referencing web site that loads the filter (NULL == global filter"/> | ||
| 217 | <columnDefinition name="Description" type="string" length="255" nullable="yes" | ||
| 218 | category="formatted" description="Description displayed in IIS MMC applet"/> | ||
| 219 | <columnDefinition name="Flags" type="number" length="4" | ||
| 220 | minValue="0" maxValue="2147483647" description="What do all these numbers mean?"/> | ||
| 221 | <columnDefinition name="LoadOrder" type="number" length="2" nullable="yes" | ||
| 222 | description="-1 == last in order, 0 == first in order, # == place in order"/> | ||
| 223 | </tableDefinition> | ||
| 224 | <tableDefinition name="IIsWebDir" createSymbols="yes"> | ||
| 225 | <columnDefinition name="WebDir" type="string" length="72" primaryKey="yes" modularize="column" | ||
| 226 | category="identifier" description="Primary key, non-localized token"/> | ||
| 227 | <columnDefinition name="Component_" type="string" length="72" modularize="column" | ||
| 228 | keyTable="Component" keyColumn="1" category="identifier" description="Foreign key referencing Component that controls the virtual directory"/> | ||
| 229 | <columnDefinition name="Web_" type="string" length="72" modularize="column" | ||
| 230 | keyTable="IIsWebSite" keyColumn="1" category="identifier" description="Foreign key referencing web site that controls the virtual directory"/> | ||
| 231 | <columnDefinition name="Path" type="string" length="255" modularize="property" | ||
| 232 | category="formatted" description="Name of web directory displayed in IIS MMC applet"/> | ||
| 233 | <columnDefinition name="DirProperties_" type="string" length="72" nullable="yes" modularize="column" | ||
| 234 | keyTable="IIsWebDirProperties" keyColumn="1" category="identifier" description="Foreign key referencing possible security information for the virtual directory"/> | ||
| 235 | <columnDefinition name="Application_" type="string" length="72" nullable="yes" modularize="column" | ||
| 236 | keyTable="IIsWebApplication" keyColumn="1" category="identifier" description="Foreign key referencing possible ASP application for the virtual directory. This column is currently unused, but maintained for compatibility reasons."/> | ||
| 237 | </tableDefinition> | ||
| 238 | <tableDefinition name="IIsWebError"> | ||
| 239 | <columnDefinition name="ErrorCode" type="number" length="2" primaryKey="yes" | ||
| 240 | minValue="400" maxValue="599" description="HTTP status code indicating error."/> | ||
| 241 | <columnDefinition name="SubCode" type="number" length="4" primaryKey="yes" | ||
| 242 | description="HTTP sub-status code indicating error."/> | ||
| 243 | <columnDefinition name="ParentType" type="number" length="2" primaryKey="yes" | ||
| 244 | set="1;2" description="Type of parent: 1=vdir, 2=web"/> | ||
| 245 | <columnDefinition name="ParentValue" type="string" length="72" modularize="column" primaryKey="yes" | ||
| 246 | category="identifier" description="Name of the parent value."/> | ||
| 247 | <columnDefinition name="File" type="string" length="255" nullable="yes" | ||
| 248 | category="formatted" description="Path to file for this custom error (usually file property: [#file]). Must be null if URL is not null."/> | ||
| 249 | <columnDefinition name="URL" type="string" length="255" nullable="yes" | ||
| 250 | category="formatted" description="URL for this custom error. Must be null if File is not null."/> | ||
| 251 | </tableDefinition> | ||
| 252 | <tableDefinition name="IIsHttpHeader" createSymbols="yes"> | ||
| 253 | <columnDefinition name="HttpHeader" type="string" length="72" primaryKey="yes" modularize="column" | ||
| 254 | category="identifier" description="Primary key, non-localized token"/> | ||
| 255 | <columnDefinition name="ParentType" type="number" length="2" primaryKey="yes" | ||
| 256 | set="1;2" description="Type of parent: 1=vdir, 2=web"/> | ||
| 257 | <columnDefinition name="ParentValue" type="string" length="72" primaryKey="yes" modularize="column" | ||
| 258 | category="identifier" description="Name of the parent value."/> | ||
| 259 | <columnDefinition name="Name" type="string" length="255" | ||
| 260 | category="text" description="Name of the HTTP Header"/> | ||
| 261 | <columnDefinition name="Value" type="string" length="255" nullable="yes" | ||
| 262 | category="formatted" description="URL for this custom error. Must be null if File is not null."/> | ||
| 263 | <columnDefinition name="Attributes" type="number" length="2" | ||
| 264 | minValue="0" maxValue="0" description="Attributes for HTTP Header: none"/> | ||
| 265 | <columnDefinition name="Sequence" type="number" length="2" nullable="yes" | ||
| 266 | description="Order to add the HTTP Headers."/> | ||
| 267 | </tableDefinition> | ||
| 268 | <tableDefinition name="IIsWebServiceExtension" createSymbols="yes"> | ||
| 269 | <columnDefinition name="WebServiceExtension" type="string" length="72" primaryKey="yes" modularize="column" | ||
| 270 | category="identifier" description="Primary key, non-localized token"/> | ||
| 271 | <columnDefinition name="Component_" type="string" length="72" modularize="column" | ||
| 272 | keyTable="Component" keyColumn="1" category="identifier" description="Foreign key referencing Component that controls the WebServiceExtension handler"/> | ||
| 273 | <columnDefinition name="File" type="string" length="255" modularize="property" | ||
| 274 | category="formatted" description="Path to handler (usually file property: [#file])"/> | ||
| 275 | <columnDefinition name="Description" type="localized" length="255" nullable="yes" modularize="property" escapeIdtCharacters="yes" | ||
| 276 | category="formatted" description="Description displayed in WebServiceExtension Wizard"/> | ||
| 277 | <columnDefinition name="Group" type="string" length="255" nullable="yes" modularize="property" | ||
| 278 | category="formatted" description="String used to identify groups of extensions."/> | ||
| 279 | <columnDefinition name="Attributes" type="number" length="1" | ||
| 280 | minValue="0" maxValue="3" description="Attributes for WebServiceExtension: 1 = Allow, 2 = UIDeletable"/> | ||
| 281 | </tableDefinition> | ||
| 282 | <tableDefinition name="IIsWebVirtualDir" createSymbols="yes"> | ||
| 283 | <columnDefinition name="VirtualDir" type="string" length="72" primaryKey="yes" modularize="column" | ||
| 284 | category="identifier" description="Primary key, non-localized token"/> | ||
| 285 | <columnDefinition name="Component_" type="string" length="72" modularize="column" | ||
| 286 | keyTable="Component" keyColumn="1" category="identifier" description="Foreign key referencing Component that controls the virtual directory"/> | ||
| 287 | <columnDefinition name="Web_" type="string" length="72" modularize="column" | ||
| 288 | keyTable="IIsWebSite" keyColumn="1" category="identifier" description="Foreign key referencing web site that controls the virtual directory"/> | ||
| 289 | <columnDefinition name="Alias" type="string" length="255" modularize="property" | ||
| 290 | category="formatted" description="Name of virtual directory displayed in IIS MMC applet"/> | ||
| 291 | <columnDefinition name="Directory_" type="string" length="72" modularize="column" | ||
| 292 | keyTable="Directory" keyColumn="1" category="identifier" description="Foreign key referencing directory that the virtual directory points at"/> | ||
| 293 | <columnDefinition name="DirProperties_" type="string" length="72" nullable="yes" modularize="column" | ||
| 294 | keyTable="IIsWebDirProperties" keyColumn="1" category="identifier" description="Foreign key referencing possible security information for the virtual directory"/> | ||
| 295 | <columnDefinition name="Application_" type="string" length="72" nullable="yes" modularize="column" | ||
| 296 | keyTable="IIsWebApplication" keyColumn="1" category="identifier" description="Foreign key referencing possible ASP application for the virtual directory"/> | ||
| 297 | </tableDefinition> | ||
| 298 | <tableDefinition name="IIsWebLog" createSymbols="yes"> | ||
| 299 | <columnDefinition name="Log" type="string" length="72" primaryKey="yes" modularize="column" | ||
| 300 | category="identifier" description="Primary key, non-localized token"/> | ||
| 301 | <columnDefinition name="Format" type="string" length="255" | ||
| 302 | category="text" description="Type of log format"/> | ||
| 303 | </tableDefinition> | ||
| 304 | </tableDefinitions> | ||
diff --git a/src/wixlib/iis.wixproj b/src/wixlib/iis.wixproj index c270ab5c..79403583 100644 --- a/src/wixlib/iis.wixproj +++ b/src/wixlib/iis.wixproj | |||
| @@ -1,7 +1,7 @@ | |||
| 1 | <?xml version="1.0" encoding="utf-8"?> | 1 | <?xml version="1.0" encoding="utf-8"?> |
| 2 | <!-- 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 | <!-- 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. --> |
| 3 | <Project DefaultTargets="Build" InitialTargets="EnsureWixToolsetInstalled" xmlns="http://schemas.microsoft.com/developer/msbuild/2003" ToolsVersion="15.0"> | 3 | <Project DefaultTargets="Build" InitialTargets="EnsureWixToolsetInstalled" xmlns="http://schemas.microsoft.com/developer/msbuild/2003" ToolsVersion="15.0"> |
| 4 | <Import Project="..\..\packages\WixToolset.MSBuild.4.0.0-build-0080\build\WixToolset.MSBuild.props" Condition="Exists('..\..\packages\WixToolset.MSBuild.4.0.0-build-0080\build\WixToolset.MSBuild.props')" /> | 4 | <Import Project="..\..\packages\WixToolset.MSBuild.4.0.0-build-0083\build\WixToolset.MSBuild.props" Condition="Exists('..\..\packages\WixToolset.MSBuild.4.0.0-build-0083\build\WixToolset.MSBuild.props')" /> |
| 5 | <Import Project="..\FindLocalWix.props" /> | 5 | <Import Project="..\FindLocalWix.props" /> |
| 6 | <PropertyGroup> | 6 | <PropertyGroup> |
| 7 | <ProjectGuid>{92FE99D2-355D-4F52-A7C1-10EECB4A5BB1}</ProjectGuid> | 7 | <ProjectGuid>{92FE99D2-355D-4F52-A7C1-10EECB4A5BB1}</ProjectGuid> |
| @@ -38,7 +38,7 @@ | |||
| 38 | <ErrorText>This project references NuGet package(s) that are missing on this computer. Use NuGet Package Restore to download them. For more information, see http://go.microsoft.com/fwlink/?LinkID=322105. The missing file is {0}.</ErrorText> | 38 | <ErrorText>This project references NuGet package(s) that are missing on this computer. Use NuGet Package Restore to download them. For more information, see http://go.microsoft.com/fwlink/?LinkID=322105. The missing file is {0}.</ErrorText> |
| 39 | </PropertyGroup> | 39 | </PropertyGroup> |
| 40 | <Error Condition="!Exists('..\..\packages\Nerdbank.GitVersioning.2.1.65\build\Nerdbank.GitVersioning.targets')" Text="$([System.String]::Format('$(ErrorText)', '..\..\packages\Nerdbank.GitVersioning.2.1.65\build\Nerdbank.GitVersioning.targets'))" /> | 40 | <Error Condition="!Exists('..\..\packages\Nerdbank.GitVersioning.2.1.65\build\Nerdbank.GitVersioning.targets')" Text="$([System.String]::Format('$(ErrorText)', '..\..\packages\Nerdbank.GitVersioning.2.1.65\build\Nerdbank.GitVersioning.targets'))" /> |
| 41 | <Error Condition="!Exists('..\..\packages\WixToolset.MSBuild.4.0.0-build-0080\build\WixToolset.MSBuild.props')" Text="$([System.String]::Format('$(ErrorText)', '..\..\packages\WixToolset.MSBuild.4.0.0-build-0080\build\WixToolset.MSBuild.props'))" /> | 41 | <Error Condition="!Exists('..\..\packages\WixToolset.MSBuild.4.0.0-build-0083\build\WixToolset.MSBuild.props')" Text="$([System.String]::Format('$(ErrorText)', '..\..\packages\WixToolset.MSBuild.4.0.0-build-0083\build\WixToolset.MSBuild.props'))" /> |
| 42 | </Target> | 42 | </Target> |
| 43 | <Import Project="..\..\packages\Nerdbank.GitVersioning.2.1.65\build\Nerdbank.GitVersioning.targets" Condition="Exists('..\..\packages\Nerdbank.GitVersioning.2.1.65\build\Nerdbank.GitVersioning.targets')" /> | 43 | <Import Project="..\..\packages\Nerdbank.GitVersioning.2.1.65\build\Nerdbank.GitVersioning.targets" Condition="Exists('..\..\packages\Nerdbank.GitVersioning.2.1.65\build\Nerdbank.GitVersioning.targets')" /> |
| 44 | </Project> \ No newline at end of file | 44 | </Project> \ No newline at end of file |
diff --git a/src/wixlib/packages.config b/src/wixlib/packages.config index 25b4e6a9..d73f4d3a 100644 --- a/src/wixlib/packages.config +++ b/src/wixlib/packages.config | |||
| @@ -1,5 +1,5 @@ | |||
| 1 | <?xml version="1.0" encoding="utf-8"?> | 1 | <?xml version="1.0" encoding="utf-8"?> |
| 2 | <packages> | 2 | <packages> |
| 3 | <package id="Nerdbank.GitVersioning" version="2.1.65" developmentDependency="true" targetFramework="net40" /> | 3 | <package id="Nerdbank.GitVersioning" version="2.1.65" developmentDependency="true" targetFramework="net40" /> |
| 4 | <package id="WixToolset.MSBuild" version="4.0.0-build-0080" developmentDependency="true" targetFramework="net40" /> | 4 | <package id="WixToolset.MSBuild" version="4.0.0-build-0083" developmentDependency="true" targetFramework="net40" /> |
| 5 | </packages> \ No newline at end of file | 5 | </packages> \ No newline at end of file |
