Several HttpClient/ManagedHandler fixes to better support ClientWebSocket
authorStephen Toub <stoub@microsoft.com>
Wed, 27 Sep 2017 20:53:53 +0000 (16:53 -0400)
committerStephen Toub <stoub@microsoft.com>
Fri, 29 Sep 2017 01:08:26 +0000 (21:08 -0400)
commit761b5f11900becb1155abd4a9d0f03b564f227ed
tree155dace4fb99e7d9d762964e8b75f8df28837760
parent6ca3d41d4970770aaca447e78d7149f571cf281a
Several HttpClient/ManagedHandler fixes to better support ClientWebSocket

- Allow ws:// and wss:// schemes
- Add an HttpContentDuplexStream base class to parallel the existing HttpContentReadStream and HttpContentWriteStream base classes
- Move more shared functionality down to the base HttpContentStream class
- Make ConnectionCloseStream duplex instead of read-only

Commit migrated from https://github.com/dotnet/corefx/commit/9438b0a760b1ef827729662186e107abccb7524d
13 files changed:
src/libraries/System.Net.Http/src/System.Net.Http.csproj
src/libraries/System.Net.Http/src/System/Net/Http/HttpUtilities.cs
src/libraries/System.Net.Http/src/System/Net/Http/Managed/AutoRedirectHandler.cs
src/libraries/System.Net.Http/src/System/Net/Http/Managed/ConnectionCloseStream.cs [moved from src/libraries/System.Net.Http/src/System/Net/Http/Managed/ConnectionCloseReadStream.cs with 57% similarity]
src/libraries/System.Net.Http/src/System/Net/Http/Managed/HttpConnection.cs
src/libraries/System.Net.Http/src/System/Net/Http/Managed/HttpConnectionContent.cs
src/libraries/System.Net.Http/src/System/Net/Http/Managed/HttpConnectionHandler.cs
src/libraries/System.Net.Http/src/System/Net/Http/Managed/HttpConnectionKey.cs
src/libraries/System.Net.Http/src/System/Net/Http/Managed/HttpContentDuplexStream.cs [new file with mode: 0644]
src/libraries/System.Net.Http/src/System/Net/Http/Managed/HttpContentReadStream.cs
src/libraries/System.Net.Http/src/System/Net/Http/Managed/HttpContentStream.cs
src/libraries/System.Net.Http/src/System/Net/Http/Managed/HttpContentWriteStream.cs
src/libraries/System.Net.Http/src/System/Net/Http/Managed/HttpProxyConnectionHandler.cs