From d77dca43e87e8711b19910a8fd49138f939bf0a4 Mon Sep 17 00:00:00 2001 From: Rob Mensching Date: Tue, 4 May 2021 22:48:58 -0700 Subject: Move Msmq.wixext into ext --- .../Msmq/wixext/Symbols/MsmqSymbolDefinitions.cs | 47 ++++++++++++++++++++++ 1 file changed, 47 insertions(+) create mode 100644 src/ext/Msmq/wixext/Symbols/MsmqSymbolDefinitions.cs (limited to 'src/ext/Msmq/wixext/Symbols/MsmqSymbolDefinitions.cs') diff --git a/src/ext/Msmq/wixext/Symbols/MsmqSymbolDefinitions.cs b/src/ext/Msmq/wixext/Symbols/MsmqSymbolDefinitions.cs new file mode 100644 index 00000000..229417fe --- /dev/null +++ b/src/ext/Msmq/wixext/Symbols/MsmqSymbolDefinitions.cs @@ -0,0 +1,47 @@ +// 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. + +namespace WixToolset.Msmq +{ + using System; + using WixToolset.Data; + + public enum MsmqSymbolDefinitionType + { + MessageQueue, + MessageQueueGroupPermission, + MessageQueueUserPermission, + } + + public static partial class MsmqSymbolDefinitions + { + public static readonly Version Version = new Version("4.0.0"); + + public static IntermediateSymbolDefinition ByName(string name) + { + if (!Enum.TryParse(name, out MsmqSymbolDefinitionType type)) + { + return null; + } + + return ByType(type); + } + + public static IntermediateSymbolDefinition ByType(MsmqSymbolDefinitionType type) + { + switch (type) + { + case MsmqSymbolDefinitionType.MessageQueue: + return MsmqSymbolDefinitions.MessageQueue; + + case MsmqSymbolDefinitionType.MessageQueueGroupPermission: + return MsmqSymbolDefinitions.MessageQueueGroupPermission; + + case MsmqSymbolDefinitionType.MessageQueueUserPermission: + return MsmqSymbolDefinitions.MessageQueueUserPermission; + + default: + throw new ArgumentOutOfRangeException(nameof(type)); + } + } + } +} -- cgit v1.2.3-55-g6feb