Commit Graph

690 Commits

Author SHA1 Message Date
David Fowler 05d6bbb782
Flush first long poll immediately (#2032)
There was a race condition between the first poll and any other http request that was sent. 
In particular, if you called StartAsync then StopAsync it was possible for the delete to happen before the poll started leading to 400 errors. This change fixes that by making the very first poll
return immediately so that the client can use that to determine if there was an error connecting.
2018-04-17 00:49:26 -07:00
James Newton-King d35bcea0a5
Move HubException and add serialization ctor (#2049) 2018-04-17 14:10:42 +12:00
Andrew Stanton-Nurse c05c5a6b2a
React to aspnet/KestrelHttpServer#2496: make IConnectionInherentKeepAliveFeature a boolean feature (#2041) 2018-04-16 11:34:12 -07:00
David Fowler a426334018 Expose IList instead of List 2018-04-16 10:44:22 -07:00
David Fowler a5d9930802
API review changes (#2043)
- Make SerializedHubMessage and SerializedMessage
public
- Made HubConnectionStore public
- Move SendUtils and Utils to the internal folder
- Make Microsoft.AspNetCore.Http.Connections.Common/Internal public.
- Move InvocationRequest to internal folder
2018-04-16 10:31:10 -07:00
BrennanConroy 927b08f893
Cache property access (#2030) 2018-04-15 23:23:00 -07:00
James Newton-King 4f4dfe1d23
Move RedisLog to Internal namespace (#2038) 2018-04-16 18:08:26 +12:00
James Newton-King b5d5f11ef8
Rename excludedIds to excludedConnectionIds (#2037) 2018-04-16 18:03:16 +12:00
BrennanConroy 7745fd748a
Extension methods for IHubClients methods (#2016) 2018-04-15 22:43:26 -07:00
James Newton-King 0da06fb5d2
Microsoft.AspNetCore.SignalR.Redis API review (#2036) 2018-04-16 15:56:49 +12:00
James Newton-King b3a9011698
API review changes for Microsoft.AspNetCore.SignalR (#2033) 2018-04-16 15:54:42 +12:00
James Newton-King 6eac7049ba
Update text and binary formatter helpers to be shared (#2035) 2018-04-16 15:19:34 +12:00
James Newton-King 725bb33949
Lazy initialize HttpConnectionContext.Items (#2027) 2018-04-15 19:06:13 +12:00
James Newton-King ddc905c219
Add VerifyNoErrorsScope (#1972) 2018-04-15 11:12:21 +12:00
James Newton-King b9e7113c01
Move types out of .Core namespace and make method virtual (#2024) 2018-04-15 09:58:33 +12:00
James Newton-King 377ed1b834
JsonHubProtocol and MessagePackHubProtocol version fields now private (#2023) 2018-04-15 09:58:05 +12:00
James Newton-King 5a77c8be25
API review Microsoft.AspNetCore.SignalR.Internal (#2022) 2018-04-15 00:23:26 +12:00
David Fowler d6395a52bc
Send delete request after poll ends (#2020)
* Added test and fixed other test
2018-04-14 04:45:16 -07:00
David Fowler 0f8485cafc
Renamed class to match the file (#2019) 2018-04-14 04:08:26 -07:00
James Newton-King e4d0f2980e
Microsoft.AspNetCore.SignalR.Client refactor (#2000) 2018-04-14 21:09:41 +12:00
BrennanConroy 3f0a6ebc0d
API Review Dependency Injection (#2015) 2018-04-13 17:21:48 -07:00
Andrew Stanton-Nurse 1fbb940b82
Remove MSG from SignalR (#2006) 2018-04-13 17:08:02 -07:00
Andrew Stanton-Nurse c7f7f36210
API Review for Http.Connections (#2010) 2018-04-13 16:35:07 -07:00
BrennanConroy d0137a996c
Internalize Microsoft.AspNetCore.Http.Connections.Client.Internal (#2014) 2018-04-13 15:04:58 -07:00
BrennanConroy 021356bf27
Internalize classes in Http.Connections (#2013) 2018-04-13 14:57:37 -07:00
Andrew Stanton-Nurse 499d39b364
rename MsgPack assembly only (#2005) 2018-04-13 12:01:45 -07:00
BrennanConroy 0919914e56
Internalize more classes (#2004) 2018-04-13 11:28:52 -07:00
David Fowler 3e69fdc4ad
Delegate disposable to the IConnectionFactory (#1999)
- Added DisposeAsync to the IConnectionFactory. It's responsible for disposing the connection after the pipe has closed.
- Added dispose callback to WithConnectionFactory
- Don't wait for poll request to end before unwinding from the transport
- Make sure all http requests are done before returning from StopAsync in both SSE and longpolling
2018-04-13 09:16:23 -07:00
David Fowler abe139ee16
Make the protocol and messages public (#1994)
* Move types to a .Protocol namespace
2018-04-13 01:53:41 -07:00
James Newton-King 198013bfa3
Microsoft.AspNetCore.Http.Connections.Client refactors (#1995) 2018-04-13 20:13:58 +12:00
David Fowler 83dec1093a
Fixed flaky longpolling tests (#1993)
- Wait for disposal and removal of the connection
2018-04-13 00:42:31 -07:00
David Fowler 4a568e90d2
API review changes (#1992)
- Changed GetMessageBytes to return ReadOnlyMemory
- Make HandshakeProtocol.SuccessHandshakeData a readonly field
2018-04-13 00:25:02 -07:00
Mikael Mengistu 70c63fe9e8
Http.Connections.Client API Review changes (#1987) 2018-04-13 06:52:27 +00:00
Ahson Khan 0ee4a86564 Collapse AsSpan().Slice(..) into AsSpan(..) (#1991) 2018-04-12 23:15:47 -07:00
Mikael Mengistu 0053124ca4
Make Proxies Internal (#1982) 2018-04-13 00:38:16 +00:00
Mikael Mengistu df4d901ae7
Fix 5 param On extension method (#1984) 2018-04-13 00:37:13 +00:00
Andrew Stanton-Nurse 24328b8e88
fix #1281 by adding support for DELETE endpoint on server (#1925) 2018-04-12 12:39:08 -07:00
Andrew Stanton-Nurse 0992db9fd2
fix #1914 by switching RedisProtocol to MsgPack (#1968) 2018-04-12 12:10:51 -07:00
David Fowler 8b1a7e9199
API review feedback (#1974)
- Remove SetHttpContext
- Remove HttpContextFeature
- Add and implement IHttpTransportFeature on HttpConnectionContext
- Remove ConnectionMetadataNames
2018-04-12 03:50:14 -07:00
James Newton-King d4773e831c
Set default transport and application buffer sizes (#1964) 2018-04-12 18:23:00 +12:00
James Newton-King 7563ccae20
Always use TaskCreationOptions.RunContinuationsAsynchronously (#1966) 2018-04-12 18:21:20 +12:00
David Fowler 3c8c8ea8e1
React to Kestrel changes (#1969) 2018-04-11 20:29:17 -07:00
David Fowler 08f9990c39
Ensure there's a redis connection earlier 2018-04-11 15:25:38 -07:00
Mikael Mengistu b8c3273cae
Dont always copy handlers (#1945) 2018-04-11 22:19:51 +00:00
David Fowler 8cc851ff9b
Clean up timer code with custom awaitable (#1935)
- Gets rid of locks by using an event loop
2018-04-11 10:39:29 -07:00
David Fowler cb5bba36fc
Get off the event loop before dispatch (#1952) 2018-04-11 10:39:09 -07:00
James Newton-King 12b69a0fdb
Refactor HttpOptions in client (#1942)
- Rename HttpOptions to HttpConfigurationOptions
- Remove HttpConfigurationOptions from SignalR client project
- Updated client HttpConnection ctors
2018-04-11 20:20:04 +12:00
James Newton-King b30c2fecbf
SSE formatting refactor (#1916) 2018-04-11 17:13:15 +12:00
James Newton-King c83baf2b76
Remove params from message ctors (#1931) 2018-04-11 12:11:13 +12:00
Mikael Mengistu 13f7981010
Rename Callback to Configure in UseConnections (#1939) 2018-04-11 00:08:22 +00:00