From 49eab4172692fbcab08425b90ac8d7f801b32af7 Mon Sep 17 00:00:00 2001 From: Ajay Bhargav Baaskaran Date: Thu, 6 Jul 2017 19:01:28 -0700 Subject: [PATCH] Made CodeTargetBuilder an abstract class --- .../CodeGeneration/CodeTarget.cs | 8 ++++---- .../CodeGeneration/CodeTargetBuilder.cs | 18 ++++++++++++++++++ .../CodeGeneration/DefaultCodeTargetBuilder.cs | 10 +++++----- .../CodeGeneration/ICodeTargetBuilder.cs | 18 ------------------ .../DocumentClassifierPassBase.cs | 2 +- .../CodeGeneration/CodeTargetTest.cs | 2 +- .../DocumentClassifierPassBaseTest.cs | 4 ++-- 7 files changed, 31 insertions(+), 31 deletions(-) create mode 100644 src/Microsoft.AspNetCore.Razor.Language/CodeGeneration/CodeTargetBuilder.cs delete mode 100644 src/Microsoft.AspNetCore.Razor.Language/CodeGeneration/ICodeTargetBuilder.cs diff --git a/src/Microsoft.AspNetCore.Razor.Language/CodeGeneration/CodeTarget.cs b/src/Microsoft.AspNetCore.Razor.Language/CodeGeneration/CodeTarget.cs index 5e75789a5b..ba8ba8b48c 100644 --- a/src/Microsoft.AspNetCore.Razor.Language/CodeGeneration/CodeTarget.cs +++ b/src/Microsoft.AspNetCore.Razor.Language/CodeGeneration/CodeTarget.cs @@ -25,7 +25,7 @@ namespace Microsoft.AspNetCore.Razor.Language.CodeGeneration public static CodeTarget CreateDefault( RazorCodeDocument codeDocument, RazorCodeGenerationOptions options, - Action configure) + Action configure) { if (codeDocument == null) { @@ -59,7 +59,7 @@ namespace Microsoft.AspNetCore.Razor.Language.CodeGeneration public static CodeTarget CreateEmpty( RazorCodeDocument codeDocument, RazorCodeGenerationOptions options, - Action configure) + Action configure) { if (codeDocument == null) { @@ -76,12 +76,12 @@ namespace Microsoft.AspNetCore.Razor.Language.CodeGeneration return builder.Build(); } - internal static void AddDesignTimeDefaults(ICodeTargetBuilder builder) + internal static void AddDesignTimeDefaults(CodeTargetBuilder builder) { } - internal static void AddRuntimeDefaults(ICodeTargetBuilder builder) + internal static void AddRuntimeDefaults(CodeTargetBuilder builder) { } diff --git a/src/Microsoft.AspNetCore.Razor.Language/CodeGeneration/CodeTargetBuilder.cs b/src/Microsoft.AspNetCore.Razor.Language/CodeGeneration/CodeTargetBuilder.cs new file mode 100644 index 0000000000..de9daf2ea6 --- /dev/null +++ b/src/Microsoft.AspNetCore.Razor.Language/CodeGeneration/CodeTargetBuilder.cs @@ -0,0 +1,18 @@ +// Copyright (c) .NET Foundation. All rights reserved. +// Licensed under the Apache License, Version 2.0. See License.txt in the project root for license information. + +using System.Collections.Generic; + +namespace Microsoft.AspNetCore.Razor.Language.CodeGeneration +{ + public abstract class CodeTargetBuilder + { + public abstract RazorCodeDocument CodeDocument { get; } + + public abstract RazorCodeGenerationOptions Options { get; } + + public abstract ICollection TargetExtensions { get; } + + public abstract CodeTarget Build(); + } +} diff --git a/src/Microsoft.AspNetCore.Razor.Language/CodeGeneration/DefaultCodeTargetBuilder.cs b/src/Microsoft.AspNetCore.Razor.Language/CodeGeneration/DefaultCodeTargetBuilder.cs index 84168507ff..8ae23bddf4 100644 --- a/src/Microsoft.AspNetCore.Razor.Language/CodeGeneration/DefaultCodeTargetBuilder.cs +++ b/src/Microsoft.AspNetCore.Razor.Language/CodeGeneration/DefaultCodeTargetBuilder.cs @@ -6,7 +6,7 @@ using System.Collections.Generic; namespace Microsoft.AspNetCore.Razor.Language.CodeGeneration { - internal class DefaultCodeTargetBuilder : ICodeTargetBuilder + internal class DefaultCodeTargetBuilder : CodeTargetBuilder { public DefaultCodeTargetBuilder(RazorCodeDocument codeDocument, RazorCodeGenerationOptions options) { @@ -16,13 +16,13 @@ namespace Microsoft.AspNetCore.Razor.Language.CodeGeneration TargetExtensions = new List(); } - public RazorCodeDocument CodeDocument { get; } + public override RazorCodeDocument CodeDocument { get; } - public RazorCodeGenerationOptions Options { get; } + public override RazorCodeGenerationOptions Options { get; } - public ICollection TargetExtensions { get; } + public override ICollection TargetExtensions { get; } - public CodeTarget Build() + public override CodeTarget Build() { return new DefaultCodeTarget(Options, TargetExtensions); } diff --git a/src/Microsoft.AspNetCore.Razor.Language/CodeGeneration/ICodeTargetBuilder.cs b/src/Microsoft.AspNetCore.Razor.Language/CodeGeneration/ICodeTargetBuilder.cs deleted file mode 100644 index e85779a88a..0000000000 --- a/src/Microsoft.AspNetCore.Razor.Language/CodeGeneration/ICodeTargetBuilder.cs +++ /dev/null @@ -1,18 +0,0 @@ -// Copyright (c) .NET Foundation. All rights reserved. -// Licensed under the Apache License, Version 2.0. See License.txt in the project root for license information. - -using System.Collections.Generic; - -namespace Microsoft.AspNetCore.Razor.Language.CodeGeneration -{ - public interface ICodeTargetBuilder - { - RazorCodeDocument CodeDocument { get; } - - RazorCodeGenerationOptions Options { get; } - - ICollection TargetExtensions { get; } - - CodeTarget Build(); - } -} diff --git a/src/Microsoft.AspNetCore.Razor.Language/DocumentClassifierPassBase.cs b/src/Microsoft.AspNetCore.Razor.Language/DocumentClassifierPassBase.cs index 0e1f7f01ed..b72c90dd2f 100644 --- a/src/Microsoft.AspNetCore.Razor.Language/DocumentClassifierPassBase.cs +++ b/src/Microsoft.AspNetCore.Razor.Language/DocumentClassifierPassBase.cs @@ -93,7 +93,7 @@ namespace Microsoft.AspNetCore.Razor.Language }); } - protected virtual void ConfigureTarget(ICodeTargetBuilder builder) + protected virtual void ConfigureTarget(CodeTargetBuilder builder) { // Intentionally empty. } diff --git a/test/Microsoft.AspNetCore.Razor.Language.Test/CodeGeneration/CodeTargetTest.cs b/test/Microsoft.AspNetCore.Razor.Language.Test/CodeGeneration/CodeTargetTest.cs index 3554864d1f..7626e3369a 100644 --- a/test/Microsoft.AspNetCore.Razor.Language.Test/CodeGeneration/CodeTargetTest.cs +++ b/test/Microsoft.AspNetCore.Razor.Language.Test/CodeGeneration/CodeTargetTest.cs @@ -27,7 +27,7 @@ namespace Microsoft.AspNetCore.Razor.Language.CodeGeneration { // Arrange var wasCalled = false; - Action @delegate = (b) => { wasCalled = true; }; + Action @delegate = (b) => { wasCalled = true; }; var codeDocument = TestRazorCodeDocument.CreateEmpty(); var options = RazorCodeGenerationOptions.CreateDefault(); diff --git a/test/Microsoft.AspNetCore.Razor.Language.Test/DocumentClassifierPassBaseTest.cs b/test/Microsoft.AspNetCore.Razor.Language.Test/DocumentClassifierPassBaseTest.cs index b8b6b59c47..18270dcbf6 100644 --- a/test/Microsoft.AspNetCore.Razor.Language.Test/DocumentClassifierPassBaseTest.cs +++ b/test/Microsoft.AspNetCore.Razor.Language.Test/DocumentClassifierPassBaseTest.cs @@ -248,7 +248,7 @@ namespace Microsoft.AspNetCore.Razor.Language public bool ShouldMatch { get; set; } = true; - public Action CodeTargetCallback { get; set; } + public Action CodeTargetCallback { get; set; } public string Namespace { get; set; } @@ -274,7 +274,7 @@ namespace Microsoft.AspNetCore.Razor.Language @method.MethodName = Method; } - protected override void ConfigureTarget(ICodeTargetBuilder builder) + protected override void ConfigureTarget(CodeTargetBuilder builder) { CodeTargetCallback?.Invoke(builder); }