diff --git a/src/Microsoft.AspNetCore.Http.Abstractions/project.json b/src/Microsoft.AspNetCore.Http.Abstractions/project.json index 54cbd3da92..1ad6d728ad 100644 --- a/src/Microsoft.AspNetCore.Http.Abstractions/project.json +++ b/src/Microsoft.AspNetCore.Http.Abstractions/project.json @@ -29,10 +29,8 @@ }, "netstandard1.3": { "dependencies": { - "System.ComponentModel": "4.0.1-*", "System.Globalization.Extensions": "4.0.1-*", "System.Linq.Expressions": "4.0.11-*", - "System.Net.WebSockets": "4.0.0-*", "System.Reflection.TypeExtensions": "4.1.0-*", "System.Runtime.InteropServices": "4.1.0-*" }, diff --git a/src/Microsoft.AspNetCore.Http.Extensions/SessionExtensions.cs b/src/Microsoft.AspNetCore.Http.Extensions/SessionExtensions.cs index 859e6c3715..fd7573fa95 100644 --- a/src/Microsoft.AspNetCore.Http.Extensions/SessionExtensions.cs +++ b/src/Microsoft.AspNetCore.Http.Extensions/SessionExtensions.cs @@ -2,7 +2,6 @@ // Licensed under the Apache License, Version 2.0. See License.txt in the project root for license information. using System.Text; -using Microsoft.AspNetCore.Http.Features; namespace Microsoft.AspNetCore.Http { diff --git a/src/Microsoft.AspNetCore.Http.Abstractions/CookieOptions.cs b/src/Microsoft.AspNetCore.Http.Features/CookieOptions.cs similarity index 100% rename from src/Microsoft.AspNetCore.Http.Abstractions/CookieOptions.cs rename to src/Microsoft.AspNetCore.Http.Features/CookieOptions.cs diff --git a/src/Microsoft.AspNetCore.Http.Abstractions/IFormCollection.cs b/src/Microsoft.AspNetCore.Http.Features/IFormCollection.cs similarity index 97% rename from src/Microsoft.AspNetCore.Http.Abstractions/IFormCollection.cs rename to src/Microsoft.AspNetCore.Http.Features/IFormCollection.cs index 668afa61a8..3c382f1c4b 100644 --- a/src/Microsoft.AspNetCore.Http.Abstractions/IFormCollection.cs +++ b/src/Microsoft.AspNetCore.Http.Features/IFormCollection.cs @@ -18,9 +18,9 @@ namespace Microsoft.AspNetCore.Http /// The number of elements contained in the . /// int Count { get; } - + /// - /// Gets an containing the keys of the + /// Gets an containing the keys of the /// . /// /// @@ -79,7 +79,7 @@ namespace Microsoft.AspNetCore.Http /// key is null. /// /// - /// has a different indexer contract than + /// has a different indexer contract than /// , as it will return StringValues.Empty for missing entries /// rather than throwing an Exception. /// diff --git a/src/Microsoft.AspNetCore.Http/Features/IFormFeature.cs b/src/Microsoft.AspNetCore.Http.Features/IFormFeature.cs similarity index 94% rename from src/Microsoft.AspNetCore.Http/Features/IFormFeature.cs rename to src/Microsoft.AspNetCore.Http.Features/IFormFeature.cs index 4ed8ba238c..f10ed47b80 100644 --- a/src/Microsoft.AspNetCore.Http/Features/IFormFeature.cs +++ b/src/Microsoft.AspNetCore.Http.Features/IFormFeature.cs @@ -4,7 +4,7 @@ using System.Threading; using System.Threading.Tasks; -namespace Microsoft.AspNetCore.Http.Features.Internal +namespace Microsoft.AspNetCore.Http.Features { public interface IFormFeature { diff --git a/src/Microsoft.AspNetCore.Http.Abstractions/IFormFile.cs b/src/Microsoft.AspNetCore.Http.Features/IFormFile.cs similarity index 100% rename from src/Microsoft.AspNetCore.Http.Abstractions/IFormFile.cs rename to src/Microsoft.AspNetCore.Http.Features/IFormFile.cs diff --git a/src/Microsoft.AspNetCore.Http.Abstractions/IFormFileCollection.cs b/src/Microsoft.AspNetCore.Http.Features/IFormFileCollection.cs similarity index 100% rename from src/Microsoft.AspNetCore.Http.Abstractions/IFormFileCollection.cs rename to src/Microsoft.AspNetCore.Http.Features/IFormFileCollection.cs diff --git a/src/Microsoft.AspNetCore.Http/Features/IItemsFeature.cs b/src/Microsoft.AspNetCore.Http.Features/IItemsFeature.cs similarity index 84% rename from src/Microsoft.AspNetCore.Http/Features/IItemsFeature.cs rename to src/Microsoft.AspNetCore.Http.Features/IItemsFeature.cs index 68f411b5c5..bea03e466c 100644 --- a/src/Microsoft.AspNetCore.Http/Features/IItemsFeature.cs +++ b/src/Microsoft.AspNetCore.Http.Features/IItemsFeature.cs @@ -3,7 +3,7 @@ using System.Collections.Generic; -namespace Microsoft.AspNetCore.Http.Features.Internal +namespace Microsoft.AspNetCore.Http.Features { public interface IItemsFeature { diff --git a/src/Microsoft.AspNetCore.Http.Abstractions/IQueryCollection.cs b/src/Microsoft.AspNetCore.Http.Features/IQueryCollection.cs similarity index 94% rename from src/Microsoft.AspNetCore.Http.Abstractions/IQueryCollection.cs rename to src/Microsoft.AspNetCore.Http.Features/IQueryCollection.cs index 48d8448b58..9df3a78024 100644 --- a/src/Microsoft.AspNetCore.Http.Abstractions/IQueryCollection.cs +++ b/src/Microsoft.AspNetCore.Http.Features/IQueryCollection.cs @@ -20,7 +20,7 @@ namespace Microsoft.AspNetCore.Http int Count { get; } /// - /// Gets an containing the keys of the + /// Gets an containing the keys of the /// . /// /// @@ -73,13 +73,14 @@ namespace Microsoft.AspNetCore.Http /// The key of the value to get. /// /// - /// The element with the specified key, or .Empty if the key is not present. + /// The element with the specified key, or . + /// Empty if the key is not present. /// /// /// key is null. /// /// - /// has a different indexer contract than + /// has a different indexer contract than /// , as it will return StringValues.Empty for missing entries /// rather than throwing an Exception. /// diff --git a/src/Microsoft.AspNetCore.Http/Features/IQueryFeature.cs b/src/Microsoft.AspNetCore.Http.Features/IQueryFeature.cs similarity index 83% rename from src/Microsoft.AspNetCore.Http/Features/IQueryFeature.cs rename to src/Microsoft.AspNetCore.Http.Features/IQueryFeature.cs index 3f89bd2b4c..4f307f8f90 100644 --- a/src/Microsoft.AspNetCore.Http/Features/IQueryFeature.cs +++ b/src/Microsoft.AspNetCore.Http.Features/IQueryFeature.cs @@ -1,7 +1,7 @@ // 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. -namespace Microsoft.AspNetCore.Http.Features.Internal +namespace Microsoft.AspNetCore.Http.Features { public interface IQueryFeature { diff --git a/src/Microsoft.AspNetCore.Http.Abstractions/IRequestCookieCollection.cs b/src/Microsoft.AspNetCore.Http.Features/IRequestCookieCollection.cs similarity index 96% rename from src/Microsoft.AspNetCore.Http.Abstractions/IRequestCookieCollection.cs rename to src/Microsoft.AspNetCore.Http.Features/IRequestCookieCollection.cs index 7fffe314fe..c1a7344cff 100644 --- a/src/Microsoft.AspNetCore.Http.Abstractions/IRequestCookieCollection.cs +++ b/src/Microsoft.AspNetCore.Http.Features/IRequestCookieCollection.cs @@ -17,9 +17,9 @@ namespace Microsoft.AspNetCore.Http /// The number of elements contained in the . /// int Count { get; } - + /// - /// Gets an containing the keys of the + /// Gets an containing the keys of the /// . /// /// @@ -27,7 +27,7 @@ namespace Microsoft.AspNetCore.Http /// that implements . /// ICollection Keys { get; } - + /// /// Determines whether the contains an element /// with the specified key. @@ -78,7 +78,7 @@ namespace Microsoft.AspNetCore.Http /// key is null. /// /// - /// has a different indexer contract than + /// has a different indexer contract than /// , as it will return String.Empty for missing entries /// rather than throwing an Exception. /// diff --git a/src/Microsoft.AspNetCore.Http/Features/IRequestCookiesFeature.cs b/src/Microsoft.AspNetCore.Http.Features/IRequestCookiesFeature.cs similarity index 83% rename from src/Microsoft.AspNetCore.Http/Features/IRequestCookiesFeature.cs rename to src/Microsoft.AspNetCore.Http.Features/IRequestCookiesFeature.cs index 58cf459a04..55ba603642 100644 --- a/src/Microsoft.AspNetCore.Http/Features/IRequestCookiesFeature.cs +++ b/src/Microsoft.AspNetCore.Http.Features/IRequestCookiesFeature.cs @@ -1,7 +1,7 @@ // 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. -namespace Microsoft.AspNetCore.Http.Features.Internal +namespace Microsoft.AspNetCore.Http.Features { public interface IRequestCookiesFeature { diff --git a/src/Microsoft.AspNetCore.Http.Abstractions/IResponseCookies.cs b/src/Microsoft.AspNetCore.Http.Features/IResponseCookies.cs similarity index 100% rename from src/Microsoft.AspNetCore.Http.Abstractions/IResponseCookies.cs rename to src/Microsoft.AspNetCore.Http.Features/IResponseCookies.cs diff --git a/src/Microsoft.AspNetCore.Http/Features/IResponseCookiesFeature.cs b/src/Microsoft.AspNetCore.Http.Features/IResponseCookiesFeature.cs similarity index 83% rename from src/Microsoft.AspNetCore.Http/Features/IResponseCookiesFeature.cs rename to src/Microsoft.AspNetCore.Http.Features/IResponseCookiesFeature.cs index 9277637217..fb5ea09258 100644 --- a/src/Microsoft.AspNetCore.Http/Features/IResponseCookiesFeature.cs +++ b/src/Microsoft.AspNetCore.Http.Features/IResponseCookiesFeature.cs @@ -1,7 +1,7 @@ // 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. -namespace Microsoft.AspNetCore.Http.Features.Internal +namespace Microsoft.AspNetCore.Http.Features { public interface IResponseCookiesFeature { diff --git a/src/Microsoft.AspNetCore.Http/Features/IServiceProvidersFeature.cs b/src/Microsoft.AspNetCore.Http.Features/IServiceProvidersFeature.cs similarity index 84% rename from src/Microsoft.AspNetCore.Http/Features/IServiceProvidersFeature.cs rename to src/Microsoft.AspNetCore.Http.Features/IServiceProvidersFeature.cs index 9816f2fe33..aed0fc91de 100644 --- a/src/Microsoft.AspNetCore.Http/Features/IServiceProvidersFeature.cs +++ b/src/Microsoft.AspNetCore.Http.Features/IServiceProvidersFeature.cs @@ -3,7 +3,7 @@ using System; -namespace Microsoft.AspNetCore.Http.Features.Internal +namespace Microsoft.AspNetCore.Http.Features { public interface IServiceProvidersFeature { diff --git a/src/Microsoft.AspNetCore.Http.Features/ISession.cs b/src/Microsoft.AspNetCore.Http.Features/ISession.cs index 05b846d814..0904703d39 100644 --- a/src/Microsoft.AspNetCore.Http.Features/ISession.cs +++ b/src/Microsoft.AspNetCore.Http.Features/ISession.cs @@ -4,7 +4,7 @@ using System.Collections.Generic; using System.Threading.Tasks; -namespace Microsoft.AspNetCore.Http.Features +namespace Microsoft.AspNetCore.Http { public interface ISession { diff --git a/src/Microsoft.AspNetCore.Http.Features/WebSocketAcceptContext.cs b/src/Microsoft.AspNetCore.Http.Features/WebSocketAcceptContext.cs index b2627f5575..5e3659d647 100644 --- a/src/Microsoft.AspNetCore.Http.Features/WebSocketAcceptContext.cs +++ b/src/Microsoft.AspNetCore.Http.Features/WebSocketAcceptContext.cs @@ -1,7 +1,7 @@ // 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. -namespace Microsoft.AspNetCore.Http.Features +namespace Microsoft.AspNetCore.Http { public class WebSocketAcceptContext { diff --git a/src/Microsoft.AspNetCore.Http.Features/project.json b/src/Microsoft.AspNetCore.Http.Features/project.json index 249c11436b..a6b8321019 100644 --- a/src/Microsoft.AspNetCore.Http.Features/project.json +++ b/src/Microsoft.AspNetCore.Http.Features/project.json @@ -21,6 +21,7 @@ "netstandard1.3": { "dependencies": { "System.Collections": "4.0.11-*", + "System.ComponentModel": "4.0.1-*", "System.Linq": "4.1.0-*", "System.Net.Primitives": "4.0.11-*", "System.Net.WebSockets": "4.0.0-*", diff --git a/src/Microsoft.AspNetCore.Owin/OwinEnvironment.cs b/src/Microsoft.AspNetCore.Owin/OwinEnvironment.cs index a69bcde215..fb0d954284 100644 --- a/src/Microsoft.AspNetCore.Owin/OwinEnvironment.cs +++ b/src/Microsoft.AspNetCore.Owin/OwinEnvironment.cs @@ -16,9 +16,9 @@ using System.Threading; using System.Threading.Tasks; using Microsoft.AspNetCore.Http; using Microsoft.AspNetCore.Http.Features; -using Microsoft.AspNetCore.Http.Features.Internal; using Microsoft.AspNetCore.Http.Features.Authentication; using Microsoft.AspNetCore.Http.Features.Authentication.Internal; +using Microsoft.AspNetCore.Http.Features.Internal; namespace Microsoft.AspNetCore.Owin { diff --git a/src/Microsoft.AspNetCore.Owin/WebSockets/OwinWebSocketAcceptAdapter.cs b/src/Microsoft.AspNetCore.Owin/WebSockets/OwinWebSocketAcceptAdapter.cs index 3cee220f46..3833f39a91 100644 --- a/src/Microsoft.AspNetCore.Owin/WebSockets/OwinWebSocketAcceptAdapter.cs +++ b/src/Microsoft.AspNetCore.Owin/WebSockets/OwinWebSocketAcceptAdapter.cs @@ -5,7 +5,7 @@ using System; using System.Collections.Generic; using System.Net.WebSockets; using System.Threading.Tasks; -using Microsoft.AspNetCore.Http.Features; +using Microsoft.AspNetCore.Http; namespace Microsoft.AspNetCore.Owin { diff --git a/src/Microsoft.AspNetCore.Owin/WebSockets/OwinWebSocketAcceptContext.cs b/src/Microsoft.AspNetCore.Owin/WebSockets/OwinWebSocketAcceptContext.cs index a891c9611f..a9fd28edba 100644 --- a/src/Microsoft.AspNetCore.Owin/WebSockets/OwinWebSocketAcceptContext.cs +++ b/src/Microsoft.AspNetCore.Owin/WebSockets/OwinWebSocketAcceptContext.cs @@ -2,7 +2,7 @@ // Licensed under the Apache License, Version 2.0. See License.txt in the project root for license information. using System.Collections.Generic; -using Microsoft.AspNetCore.Http.Features; +using Microsoft.AspNetCore.Http; namespace Microsoft.AspNetCore.Owin { diff --git a/src/Microsoft.AspNetCore.Owin/WebSockets/WebSocketAcceptAdapter.cs b/src/Microsoft.AspNetCore.Owin/WebSockets/WebSocketAcceptAdapter.cs index 41b1960cb2..a77eeb67ba 100644 --- a/src/Microsoft.AspNetCore.Owin/WebSockets/WebSocketAcceptAdapter.cs +++ b/src/Microsoft.AspNetCore.Owin/WebSockets/WebSocketAcceptAdapter.cs @@ -6,7 +6,7 @@ using System.Collections.Generic; using System.Net.WebSockets; using System.Threading; using System.Threading.Tasks; -using Microsoft.AspNetCore.Http.Features; +using Microsoft.AspNetCore.Http; namespace Microsoft.AspNetCore.Owin { diff --git a/test/Microsoft.AspNetCore.Http.Tests/DefaultHttpContextTests.cs b/test/Microsoft.AspNetCore.Http.Tests/DefaultHttpContextTests.cs index a47c97a02a..fe58c81098 100644 --- a/test/Microsoft.AspNetCore.Http.Tests/DefaultHttpContextTests.cs +++ b/test/Microsoft.AspNetCore.Http.Tests/DefaultHttpContextTests.cs @@ -8,7 +8,6 @@ using System.Net.WebSockets; using System.Reflection; using System.Security.Claims; using System.Threading.Tasks; -using Microsoft.AspNetCore.Http.Authentication.Internal; using Microsoft.AspNetCore.Http.Features; using Microsoft.AspNetCore.Http.Features.Internal; using Xunit; @@ -204,7 +203,7 @@ namespace Microsoft.AspNetCore.Http.Internal var field = type .GetFields(BindingFlags.NonPublic | BindingFlags.Instance) - .Single(f => + .Single(f => f.FieldType.GetTypeInfo().IsGenericType && f.FieldType.GetGenericTypeDefinition() == typeof(FeatureReferences<>));