From d87492c97b5ac6eec1c86c4cc8b2b45e9f8ad165 Mon Sep 17 00:00:00 2001 From: Rob Mensching Date: Wed, 24 Jun 2020 14:41:52 -0700 Subject: The Great Tuple to Symbol File Rename (tm) --- src/WixToolset.Data/Symbols/RemoveFileSymbol.cs | 76 +++++++++++++++++++++++++ 1 file changed, 76 insertions(+) create mode 100644 src/WixToolset.Data/Symbols/RemoveFileSymbol.cs (limited to 'src/WixToolset.Data/Symbols/RemoveFileSymbol.cs') diff --git a/src/WixToolset.Data/Symbols/RemoveFileSymbol.cs b/src/WixToolset.Data/Symbols/RemoveFileSymbol.cs new file mode 100644 index 00000000..a1791e54 --- /dev/null +++ b/src/WixToolset.Data/Symbols/RemoveFileSymbol.cs @@ -0,0 +1,76 @@ +// 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.Data +{ + using WixToolset.Data.Symbols; + + public static partial class SymbolDefinitions + { + public static readonly IntermediateSymbolDefinition RemoveFile = new IntermediateSymbolDefinition( + SymbolDefinitionType.RemoveFile, + new[] + { + new IntermediateFieldDefinition(nameof(RemoveFileSymbolFields.ComponentRef), IntermediateFieldType.String), + new IntermediateFieldDefinition(nameof(RemoveFileSymbolFields.FileName), IntermediateFieldType.String), + new IntermediateFieldDefinition(nameof(RemoveFileSymbolFields.DirProperty), IntermediateFieldType.String), + new IntermediateFieldDefinition(nameof(RemoveFileSymbolFields.OnInstall), IntermediateFieldType.Bool), + new IntermediateFieldDefinition(nameof(RemoveFileSymbolFields.OnUninstall), IntermediateFieldType.Bool), + }, + typeof(RemoveFileSymbol)); + } +} + +namespace WixToolset.Data.Symbols +{ + public enum RemoveFileSymbolFields + { + ComponentRef, + FileName, + DirProperty, + OnInstall, + OnUninstall, + } + + public class RemoveFileSymbol : IntermediateSymbol + { + public RemoveFileSymbol() : base(SymbolDefinitions.RemoveFile, null, null) + { + } + + public RemoveFileSymbol(SourceLineNumber sourceLineNumber, Identifier id = null) : base(SymbolDefinitions.RemoveFile, sourceLineNumber, id) + { + } + + public IntermediateField this[RemoveFileSymbolFields index] => this.Fields[(int)index]; + + public string ComponentRef + { + get => (string)this.Fields[(int)RemoveFileSymbolFields.ComponentRef]; + set => this.Set((int)RemoveFileSymbolFields.ComponentRef, value); + } + + public string FileName + { + get => (string)this.Fields[(int)RemoveFileSymbolFields.FileName]; + set => this.Set((int)RemoveFileSymbolFields.FileName, value); + } + + public string DirProperty + { + get => (string)this.Fields[(int)RemoveFileSymbolFields.DirProperty]; + set => this.Set((int)RemoveFileSymbolFields.DirProperty, value); + } + + public bool? OnInstall + { + get => (bool?)this.Fields[(int)RemoveFileSymbolFields.OnInstall]; + set => this.Set((int)RemoveFileSymbolFields.OnInstall, value); + } + + public bool? OnUninstall + { + get => (bool?)this.Fields[(int)RemoveFileSymbolFields.OnUninstall]; + set => this.Set((int)RemoveFileSymbolFields.OnUninstall, value); + } + } +} \ No newline at end of file -- cgit v1.2.3-55-g6feb