aboutsummaryrefslogtreecommitdiff
path: root/src/wixext/Tuples
diff options
context:
space:
mode:
authorSean Hall <r.sean.hall@gmail.com>2020-04-09 09:01:29 +1000
committerSean Hall <r.sean.hall@gmail.com>2020-04-09 10:40:30 +1000
commit2427be20a103957f204b753db45ee89ad636bb08 (patch)
tree54255a5359048e35bf5e51a35b0700fbd47484de /src/wixext/Tuples
parent608f2f6fd9728a630ee5793bb7f24d5b6efeb5d1 (diff)
downloadwix-2427be20a103957f204b753db45ee89ad636bb08.tar.gz
wix-2427be20a103957f204b753db45ee89ad636bb08.tar.bz2
wix-2427be20a103957f204b753db45ee89ad636bb08.zip
Modernize FirewallCompiler and tuples.
Diffstat (limited to 'src/wixext/Tuples')
-rw-r--r--src/wixext/Tuples/FirewallTupleDefinitions.cs43
-rw-r--r--src/wixext/Tuples/WixFirewallExceptionTuple.cs25
2 files changed, 51 insertions, 17 deletions
diff --git a/src/wixext/Tuples/FirewallTupleDefinitions.cs b/src/wixext/Tuples/FirewallTupleDefinitions.cs
index df595c18..2710380e 100644
--- a/src/wixext/Tuples/FirewallTupleDefinitions.cs
+++ b/src/wixext/Tuples/FirewallTupleDefinitions.cs
@@ -1,30 +1,39 @@
1// Copyright (c) .NET Foundation and contributors. All rights reserved. Licensed under the Microsoft Reciprocal License. See LICENSE.TXT file in the project root for full license information. 1// Copyright (c) .NET Foundation and contributors. All rights reserved. Licensed under the Microsoft Reciprocal License. See LICENSE.TXT file in the project root for full license information.
2 2
3namespace WixToolset.Firewall.Tuples 3namespace WixToolset.Firewall
4{ 4{
5 using System;
5 using WixToolset.Data; 6 using WixToolset.Data;
6 7
7 public static class FirewallTupleDefinitionNames 8 public enum FirewallTupleDefinitionType
8 { 9 {
9 public static string WixFirewallException { get; } = "WixFirewallException"; 10 WixFirewallException,
10 } 11 }
11 12
12 public static partial class FirewallTupleDefinitions 13 public static partial class FirewallTupleDefinitions
13 { 14 {
14 public static readonly IntermediateTupleDefinition WixFirewallException = new IntermediateTupleDefinition( 15 public static readonly Version Version = new Version("4.0.0");
15 FirewallTupleDefinitionNames.WixFirewallException, 16
16 new[] 17 public static IntermediateTupleDefinition ByName(string name)
18 {
19 if (!Enum.TryParse(name, out FirewallTupleDefinitionType type))
17 { 20 {
18 new IntermediateFieldDefinition(nameof(WixFirewallExceptionTupleFields.Name), IntermediateFieldType.String), 21 return null;
19 new IntermediateFieldDefinition(nameof(WixFirewallExceptionTupleFields.RemoteAddresses), IntermediateFieldType.String), 22 }
20 new IntermediateFieldDefinition(nameof(WixFirewallExceptionTupleFields.Port), IntermediateFieldType.String), 23
21 new IntermediateFieldDefinition(nameof(WixFirewallExceptionTupleFields.Protocol), IntermediateFieldType.Number), 24 return ByType(type);
22 new IntermediateFieldDefinition(nameof(WixFirewallExceptionTupleFields.Program), IntermediateFieldType.String), 25 }
23 new IntermediateFieldDefinition(nameof(WixFirewallExceptionTupleFields.Attributes), IntermediateFieldType.Number), 26
24 new IntermediateFieldDefinition(nameof(WixFirewallExceptionTupleFields.Profile), IntermediateFieldType.Number), 27 public static IntermediateTupleDefinition ByType(FirewallTupleDefinitionType type)
25 new IntermediateFieldDefinition(nameof(WixFirewallExceptionTupleFields.ComponentRef), IntermediateFieldType.String), 28 {
26 new IntermediateFieldDefinition(nameof(WixFirewallExceptionTupleFields.Description), IntermediateFieldType.String), 29 switch (type)
27 }, 30 {
28 typeof(WixFirewallExceptionTuple)); 31 case FirewallTupleDefinitionType.WixFirewallException:
32 return FirewallTupleDefinitions.WixFirewallException;
33
34 default:
35 throw new ArgumentOutOfRangeException(nameof(type));
36 }
37 }
29 } 38 }
30} 39}
diff --git a/src/wixext/Tuples/WixFirewallExceptionTuple.cs b/src/wixext/Tuples/WixFirewallExceptionTuple.cs
index 3c7cda3a..d08b9e45 100644
--- a/src/wixext/Tuples/WixFirewallExceptionTuple.cs
+++ b/src/wixext/Tuples/WixFirewallExceptionTuple.cs
@@ -1,5 +1,30 @@
1// Copyright (c) .NET Foundation and contributors. All rights reserved. Licensed under the Microsoft Reciprocal License. See LICENSE.TXT file in the project root for full license information. 1// Copyright (c) .NET Foundation and contributors. All rights reserved. Licensed under the Microsoft Reciprocal License. See LICENSE.TXT file in the project root for full license information.
2 2
3namespace WixToolset.Firewall
4{
5 using WixToolset.Data;
6 using WixToolset.Firewall.Tuples;
7
8 public static partial class FirewallTupleDefinitions
9 {
10 public static readonly IntermediateTupleDefinition WixFirewallException = new IntermediateTupleDefinition(
11 FirewallTupleDefinitionType.WixFirewallException.ToString(),
12 new[]
13 {
14 new IntermediateFieldDefinition(nameof(WixFirewallExceptionTupleFields.Name), IntermediateFieldType.String),
15 new IntermediateFieldDefinition(nameof(WixFirewallExceptionTupleFields.RemoteAddresses), IntermediateFieldType.String),
16 new IntermediateFieldDefinition(nameof(WixFirewallExceptionTupleFields.Port), IntermediateFieldType.String),
17 new IntermediateFieldDefinition(nameof(WixFirewallExceptionTupleFields.Protocol), IntermediateFieldType.Number),
18 new IntermediateFieldDefinition(nameof(WixFirewallExceptionTupleFields.Program), IntermediateFieldType.String),
19 new IntermediateFieldDefinition(nameof(WixFirewallExceptionTupleFields.Attributes), IntermediateFieldType.Number),
20 new IntermediateFieldDefinition(nameof(WixFirewallExceptionTupleFields.Profile), IntermediateFieldType.Number),
21 new IntermediateFieldDefinition(nameof(WixFirewallExceptionTupleFields.ComponentRef), IntermediateFieldType.String),
22 new IntermediateFieldDefinition(nameof(WixFirewallExceptionTupleFields.Description), IntermediateFieldType.String),
23 },
24 typeof(WixFirewallExceptionTuple));
25 }
26}
27
3namespace WixToolset.Firewall.Tuples 28namespace WixToolset.Firewall.Tuples
4{ 29{
5 using WixToolset.Data; 30 using WixToolset.Data;