From 6bf5eabd9f862b1052743268f3fb576908d674b9 Mon Sep 17 00:00:00 2001 From: Praburaj Date: Fri, 27 Feb 2015 11:29:38 -0800 Subject: [PATCH] Hosting API review # 2 1. Moving HostingUtilities and PipelineInstance into internal namespaces. 2. Renaming some properties in IHostingEnvironment 3. Renaming IHttpContextAccessor HttpContext into Value. Addresses: https://github.com/aspnet/Hosting/issues/159 https://github.com/aspnet/Hosting/issues/157 https://github.com/aspnet/Hosting/issues/161 --- .../IHostingEnvironment.cs | 4 ++-- src/Microsoft.AspNet.Hosting/HostingEngine.cs | 1 + src/Microsoft.AspNet.Hosting/HostingEnvironment.cs | 9 +++++---- .../{ => Internal}/HostingUtilities.cs | 2 +- .../{ => Internal}/PipelineInstance.cs | 2 +- src/Microsoft.AspNet.Hosting/Server/ServerLoader.cs | 1 + src/Microsoft.AspNet.Hosting/Startup/StartupLoader.cs | 2 +- .../Microsoft.AspNet.Hosting.Tests/HostingEngineTests.cs | 2 +- .../HostingUtilitiesTests.cs | 1 + test/Microsoft.AspNet.TestHost.Tests/TestServerTests.cs | 2 +- 10 files changed, 15 insertions(+), 11 deletions(-) rename src/Microsoft.AspNet.Hosting/{ => Internal}/HostingUtilities.cs (97%) rename src/Microsoft.AspNet.Hosting/{ => Internal}/PipelineInstance.cs (96%) diff --git a/src/Microsoft.AspNet.Hosting.Interfaces/IHostingEnvironment.cs b/src/Microsoft.AspNet.Hosting.Interfaces/IHostingEnvironment.cs index c946e5d3ff..c38028a604 100644 --- a/src/Microsoft.AspNet.Hosting.Interfaces/IHostingEnvironment.cs +++ b/src/Microsoft.AspNet.Hosting.Interfaces/IHostingEnvironment.cs @@ -9,8 +9,8 @@ namespace Microsoft.AspNet.Hosting { string EnvironmentName { get; set; } - string WebRoot { get; } + string WebRootPath { get; } - IFileProvider WebRootFileProvider { get; set; } + IFileProvider WebRootFileProvider { get; } } } \ No newline at end of file diff --git a/src/Microsoft.AspNet.Hosting/HostingEngine.cs b/src/Microsoft.AspNet.Hosting/HostingEngine.cs index 930b5d1851..1970e48bef 100644 --- a/src/Microsoft.AspNet.Hosting/HostingEngine.cs +++ b/src/Microsoft.AspNet.Hosting/HostingEngine.cs @@ -6,6 +6,7 @@ using System.Collections.Generic; using System.Linq; using System.Threading; using Microsoft.AspNet.Hosting.Builder; +using Microsoft.AspNet.Hosting.Internal; using Microsoft.AspNet.Hosting.Server; using Microsoft.AspNet.Hosting.Startup; diff --git a/src/Microsoft.AspNet.Hosting/HostingEnvironment.cs b/src/Microsoft.AspNet.Hosting/HostingEnvironment.cs index 47d805f99b..03a7317453 100644 --- a/src/Microsoft.AspNet.Hosting/HostingEnvironment.cs +++ b/src/Microsoft.AspNet.Hosting/HostingEnvironment.cs @@ -3,6 +3,7 @@ using System.Collections.Generic; using Microsoft.AspNet.FileProviders; +using Microsoft.AspNet.Hosting.Internal; using Microsoft.Framework.Runtime; namespace Microsoft.AspNet.Hosting @@ -14,8 +15,8 @@ namespace Microsoft.AspNet.Hosting public HostingEnvironment(IApplicationEnvironment appEnvironment, IEnumerable configures) { EnvironmentName = DefaultEnvironmentName; - WebRoot = HostingUtilities.GetWebRoot(appEnvironment.ApplicationBasePath); - WebRootFileProvider = new PhysicalFileProvider(WebRoot); + WebRootPath = HostingUtilities.GetWebRoot(appEnvironment.ApplicationBasePath); + WebRootFileProvider = new PhysicalFileProvider(WebRootPath); foreach (var configure in configures) { configure.Configure(this); @@ -24,8 +25,8 @@ namespace Microsoft.AspNet.Hosting public string EnvironmentName { get; set; } - public string WebRoot { get; private set; } + public string WebRootPath { get; private set; } - public IFileProvider WebRootFileProvider { get; set; } + public IFileProvider WebRootFileProvider { get; private set; } } } \ No newline at end of file diff --git a/src/Microsoft.AspNet.Hosting/HostingUtilities.cs b/src/Microsoft.AspNet.Hosting/Internal/HostingUtilities.cs similarity index 97% rename from src/Microsoft.AspNet.Hosting/HostingUtilities.cs rename to src/Microsoft.AspNet.Hosting/Internal/HostingUtilities.cs index 5b90b251a2..7b48d72b8f 100644 --- a/src/Microsoft.AspNet.Hosting/HostingUtilities.cs +++ b/src/Microsoft.AspNet.Hosting/Internal/HostingUtilities.cs @@ -6,7 +6,7 @@ using System.IO; using Newtonsoft.Json; using Newtonsoft.Json.Linq; -namespace Microsoft.AspNet.Hosting +namespace Microsoft.AspNet.Hosting.Internal { public static class HostingUtilities { diff --git a/src/Microsoft.AspNet.Hosting/PipelineInstance.cs b/src/Microsoft.AspNet.Hosting/Internal/PipelineInstance.cs similarity index 96% rename from src/Microsoft.AspNet.Hosting/PipelineInstance.cs rename to src/Microsoft.AspNet.Hosting/Internal/PipelineInstance.cs index 3d14ee404c..9b8a84ca4b 100644 --- a/src/Microsoft.AspNet.Hosting/PipelineInstance.cs +++ b/src/Microsoft.AspNet.Hosting/Internal/PipelineInstance.cs @@ -7,7 +7,7 @@ using Microsoft.AspNet.Builder; using Microsoft.AspNet.FeatureModel; using Microsoft.AspNet.Hosting.Builder; -namespace Microsoft.AspNet.Hosting +namespace Microsoft.AspNet.Hosting.Internal { public class PipelineInstance : IDisposable { diff --git a/src/Microsoft.AspNet.Hosting/Server/ServerLoader.cs b/src/Microsoft.AspNet.Hosting/Server/ServerLoader.cs index 9354eff0a8..a11f8011e5 100644 --- a/src/Microsoft.AspNet.Hosting/Server/ServerLoader.cs +++ b/src/Microsoft.AspNet.Hosting/Server/ServerLoader.cs @@ -4,6 +4,7 @@ using System; using System.Linq; using System.Reflection; +using Microsoft.AspNet.Hosting.Internal; using Microsoft.Framework.DependencyInjection; namespace Microsoft.AspNet.Hosting.Server diff --git a/src/Microsoft.AspNet.Hosting/Startup/StartupLoader.cs b/src/Microsoft.AspNet.Hosting/Startup/StartupLoader.cs index f95de3279a..165e5a7da4 100644 --- a/src/Microsoft.AspNet.Hosting/Startup/StartupLoader.cs +++ b/src/Microsoft.AspNet.Hosting/Startup/StartupLoader.cs @@ -92,7 +92,7 @@ namespace Microsoft.AspNet.Hosting.Startup { if (string.IsNullOrEmpty(applicationName)) { - throw new ArgumentException("applicationName"); + throw new ArgumentException("Value cannot be null or empty.", "applicationName"); } var assembly = Assembly.Load(new AssemblyName(applicationName)); diff --git a/test/Microsoft.AspNet.Hosting.Tests/HostingEngineTests.cs b/test/Microsoft.AspNet.Hosting.Tests/HostingEngineTests.cs index 2af5628080..99be47cbf7 100644 --- a/test/Microsoft.AspNet.Hosting.Tests/HostingEngineTests.cs +++ b/test/Microsoft.AspNet.Hosting.Tests/HostingEngineTests.cs @@ -60,7 +60,7 @@ namespace Microsoft.AspNet.Hosting { var services = HostingServices.Create().BuildServiceProvider(); var env = services.GetRequiredService(); - Assert.Equal(Path.GetFullPath("testroot"), env.WebRoot); + Assert.Equal(Path.GetFullPath("testroot"), env.WebRootPath); Assert.True(env.WebRootFileProvider.GetFileInfo("TextFile.txt").Exists); } diff --git a/test/Microsoft.AspNet.Hosting.Tests/HostingUtilitiesTests.cs b/test/Microsoft.AspNet.Hosting.Tests/HostingUtilitiesTests.cs index 08daee6c9b..06cf95333b 100644 --- a/test/Microsoft.AspNet.Hosting.Tests/HostingUtilitiesTests.cs +++ b/test/Microsoft.AspNet.Hosting.Tests/HostingUtilitiesTests.cs @@ -1,6 +1,7 @@ // Copyright (c) Microsoft Open Technologies, Inc. All rights reserved. // Licensed under the Apache License, Version 2.0. See License.txt in the project root for license information. +using Microsoft.AspNet.Hosting.Internal; using Xunit; namespace Microsoft.AspNet.Hosting.Tests diff --git a/test/Microsoft.AspNet.TestHost.Tests/TestServerTests.cs b/test/Microsoft.AspNet.TestHost.Tests/TestServerTests.cs index 0a31db1b21..8d52493b27 100644 --- a/test/Microsoft.AspNet.TestHost.Tests/TestServerTests.cs +++ b/test/Microsoft.AspNet.TestHost.Tests/TestServerTests.cs @@ -75,7 +75,7 @@ namespace Microsoft.AspNet.TestHost TestServer server = TestServer.Create(app => { var env = app.ApplicationServices.GetRequiredService(); - Assert.Equal(Directory.GetCurrentDirectory(), env.WebRoot); + Assert.Equal(Directory.GetCurrentDirectory(), env.WebRootPath); }); }