| File: Macros\GuidMacroConfig.cs | Web Access |
| Project: src\sdk\src\TemplateEngine\Microsoft.TemplateEngine.Orchestrator.RunnableProjects\Microsoft.TemplateEngine.Orchestrator.RunnableProjects.csproj (Microsoft.TemplateEngine.Orchestrator.RunnableProjects) |
// Licensed to the .NET Foundation under one or more agreements. // The .NET Foundation licenses this file to you under the MIT license. using Microsoft.TemplateEngine.Orchestrator.RunnableProjects.Abstractions; namespace Microsoft.TemplateEngine.Orchestrator.RunnableProjects.Macros { //needs better validation if formats are correct internal class GuidMacroConfig : BaseMacroConfig<GuidMacro, GuidMacroConfig> { internal const string DefaultFormats = "ndbpxNDPBX"; internal const string UpperCaseDenominator = "-uc-"; internal const string LowerCaseDenominator = "-lc-"; private static readonly GuidMacro DefaultMacro = new(); internal GuidMacroConfig(string variableName, string? dataType, string? format, string? defaultFormat) : base(DefaultMacro, variableName, dataType) { if (!string.IsNullOrEmpty(format)) { Format = format!; } if (!string.IsNullOrEmpty(defaultFormat)) { DefaultFormat = defaultFormat!; } } internal GuidMacroConfig(GuidMacro macro, IGeneratedSymbolConfig generatedSymbolConfig) : base(macro, generatedSymbolConfig.VariableName, generatedSymbolConfig.DataType) { string? configuredFormat = GetOptionalParameterValue(generatedSymbolConfig, "format"); if (!string.IsNullOrEmpty(configuredFormat)) { Format = configuredFormat!; } string? configuredDefaultFormat = GetOptionalParameterValue(generatedSymbolConfig, "defaultFormat"); if (!string.IsNullOrEmpty(configuredDefaultFormat)) { DefaultFormat = configuredDefaultFormat!; } } internal string DefaultFormat { get; } = "D"; internal string Format { get; } = DefaultFormats; } }