Commit Graph

321 Commits

Author SHA1 Message Date
Pawel Kadluczka 1ae4d3e042 Fixing typos (#519) 2017-06-06 16:55:10 -07:00
BrennanConroy 4c4be7ed6f Add support for Hub Authorize Attribute (#532) 2017-06-06 15:46:08 -07:00
David Fowler 38efde7b50 Merge transport and hub protocols (#517)
* Merge transport and hub protocols
- This change merges the transport and hub protocols into a single protocol. The
idea being that sockets in a purely streaming layer that sends frames from the underlying
transport. This makes things like TCP possible and doesn't impose a framing layer at the lowest
level. This will make it possible to build servers like kestrel on top of the TCP layer.
- The Message was removed from the lowest layer of the stack and pushed into the hubs layer. Hub invocations
are framed with what was before the transport protocol. Connections also need to state upfront if they support
binary or not. This will determine how data will be serialized to the specific connection.
- Changed the SSE parser and writer to be strictly SSE without any of the transport protocol specific
information.
- To ensure we aren't using types in the wrong layers
- Moved protocol logic into SignalR
- Socket.Abstractions is now the root of the universe, Sockets.Common will likely be removed
or turned into Sockets.Common.Http.
- Move SSE parser to Sockets.Client and SSE writer into Sockets.Http
- Moved tests into the appropriate test projects
- Updated the spec
2017-06-05 09:45:40 -10:00
David Fowler b77f50a99a Merge DefaultConnectionContext with ConnectionState (#514)
* Merge DefaultConnectionContext with ConnectionState
- Removed ConnectionState as a result
2017-06-03 12:14:01 -10:00
David Fowler cad9f2f671 Use RX in streaming sample 2017-06-03 11:45:36 -07:00
David Fowler 42e2715a95 Removed EndOfMessage from Message (#513)
* Removed EndOfMessage from Message
- The webSockets transport no longer supports partial payloads so
this feature is now gone.
2017-06-03 08:32:28 -10:00
David Fowler 72423ee203 Removed custom websocket implementation (#507)
- Use the default websocket middleware
- Rewrote TestWebSocketConnectionFeature to use Channels instead of pipes
2017-06-03 06:53:39 -10:00
Pavel Krymets 12fb3de3a6 React to AddConfiguration argument change 2017-06-02 15:03:55 -07:00
Andrew Stanton-Nurse 263dd0e4fe Fix #324 by adding streaming support to the server (#461) 2017-05-31 09:10:20 -07:00
Mikael Mengistu b862d35b10 Update Targets (#486) 2017-05-26 20:00:12 -04:00
Hao Kung 3f36fa5986 Fix sample 2017-05-24 12:56:54 -07:00
Brice Lambson 4e7110e442 React to EF API changes 2017-05-24 12:14:56 -07:00
BrennanConroy 2edc77cd9b React to EF API changes 2017-05-24 11:23:02 -07:00
David Fowler d55ebfeee0 Split http and non-http layers (#487)
* Split http and non-http layers
- This change introduces Microsoft.AspNetCore.SignalR.Http
and Microsoft.AspNetCore.Sockets.Http which expose extension methods
on IAppBuilder for wiring up a sockets and signalr pipeline.
2017-05-24 07:09:46 -07:00
Hao Kung a31c693178 React to identity 2017-05-23 14:11:26 -07:00
David Fowler 9d9a52119e Progress towards splitting the layers (#473)
* Progress towards splitting the layers
- This is based on the work anurse did in anurse/endpoint-middleware-spike to
introduce a connection middleware pipeline that mimics much of our http
pipeline. The intent is that this layer will be generic enough to build both
SignalR and Kestrel on top of but we're not there yet. This change makes incremental
progress towards splitting apart sockets and http so that we can add the tcp transport
without breaking everything all at once.
- Created Microsoft.AspNetCore.Sockets.Abstractions where the primitives for
sockets live. That includes, ConnectionContext (formerly Connection), EndPoint,
ISocketBuilder, SocketDelegate, etc.
- ConnectionContext isn't in it's final form as yet, it still very closely mirrors
the original Connection object we had so that tests continue to pass.
- The HttpConnectionDispatcher doesn't know about EndPoint anymore, it just cares
about invoking the SocketDelegate.
- EndPointOptions has been removed as part of this change as it coupled http specific configuration
to the end point type. There's a new HttpSocketOptions that needs to be passed into MapSocket calls.
- Updated the tests to deal with the API changes.
2017-05-23 02:43:32 -07:00
David Fowler 87c4da41e8 Disabling hosting startup
- VS injects a bad version of AppInsights because it doesn't
check the shared framework version in use. Since we constantly
are on the bleeding edge, we get out of sync frequently. This
change disables them from running.
2017-05-21 16:46:47 -07:00
David Fowler 2aabce48b4 Remove custom routing and path matching from HttpConnectionDispatcher (#471)
- We're now using the routing system in a very vanilla way now that
we're not using the URL space as part of the protocol.
- Removed the path argument from the HttpConnectionDispatcher (simplifies code and removes duplication from tests)
2017-05-20 00:34:29 -07:00
David Fowler 240a88f7af Make the http end points more resty (#470)
- Use HTTP verbs to describe functionality for endpoints
- Updated TransportProtocols.md
2017-05-19 23:37:17 -07:00
Pawel Kadluczka 4bb9721d39 Adding strongly typed Invoke and On overloads
See: #311
2017-05-19 09:47:16 -07:00
Pawel Kadluczka 8b455ecae7 Fixing `dotnet ef database update`
Currently it is impossible to create database for the chat sample - `dotnet ef` commands fail with: "No parameterless constructor was found on 'ApplicationDbContext'. Either add a parameterless constructor to 'Application
DbContext' or add an implementation of 'IDbContextFactory<ApplicationDbContext>' in the same assembly as 'ApplicationDbC
ontext'." - adding IDbContextFactory implementation to fix this

Also disabling Redis presence in favor of in-memory presence
2017-05-15 14:57:07 -07:00
Pawel Kadluczka 06e3a08ac0 Multi-server 2017-05-11 22:42:14 -07:00
Pawel Kadluczka 7300413d0c Storing user lists per server 2017-05-11 22:42:14 -07:00
Pawel Kadluczka 5d32407f24 More structural way of storing users 2017-05-11 22:42:14 -07:00
Pavel Krymets 67ecd4746e Remove unnecessary package references (#446) 2017-05-10 15:14:26 -07:00
Andrew Stanton-Nurse 991c1d8517 Implement new Hub Protocol (Part Deux) (#390)
* convert to new protocol
* removed InvocationDescriptorRegistry because we're not yet sure about custom protocols
* update SocialWeather sample
* Moving ts client to using new protocol
* make the functional tests a little easier to run on ctrl-f5
2017-05-09 12:24:58 -07:00
Pawel Kadluczka d73b490b69 Fixing SocialWeather sample 2017-05-08 12:49:57 -07:00
Andrew Stanton-Nurse ca9a44afc3 Merge branch 'rel/2.0.0-preview1' into dev 2017-05-04 14:11:16 -07:00
Mikael Mengistu 7f64811ccd Change targets (#437)
Target netcoreapp2.0
2017-05-04 14:05:58 -07:00
BrennanConroy e96096e760 Merge branch 'rel/2.0.0-preview1' into dev 2017-05-03 10:39:46 -07:00
BrennanConroy 0a3c7001d4 React to Logging API changes (#433) 2017-05-03 10:39:29 -07:00
Pawel Kadluczka cf2d6ce697 Redis presence manager 2017-05-01 16:35:27 -07:00
Pawel Kadluczka 7713124bd8 Making PresenceHubLifetimeManager a wrapper 2017-05-01 16:35:27 -07:00
Pawel Kadluczka 7f3baf5ce6 Splitting PresenceManager 2017-05-01 16:35:26 -07:00
moozzyk 19b390c5ab Redis based scaleout presence 2017-05-01 16:35:26 -07:00
Pawel Kadluczka 632c8abf77 Single server presence 2017-05-01 16:35:25 -07:00
Viktor Kotsiuban 963fcd41ed Add functionality to track online users 2017-05-01 16:35:25 -07:00
Nate McMaster 15afda7abf Revert "Temporarily disable DotNetCliToolReference in samples until aspnet/Universe#506 is resolved"
This reverts commit ee66a1706f.
2017-04-28 11:52:11 -07:00
moozzyk 82f99a1424 Work around for a Firefox bug
Firefox won't fire EventSource open event until it receives some data. The workaround is to send an empty comment when starting ServerSentEvent transport.

Fixes: #352
2017-04-27 10:34:47 -07:00
Nate McMaster ee66a1706f Temporarily disable DotNetCliToolReference in samples until aspnet/Universe#506 is resolved 2017-04-25 11:29:39 -07:00
Hao Kung fc51c4ffa6 Add inject 2017-04-19 21:14:36 -07:00
Hao Kung 62abf9431f Add using to sample 2017-04-19 19:46:25 -07:00
Hao Kung 27e90edc1c SignalR => Auth 2.0 2017-04-19 18:51:24 -07:00
Andrew Stanton-Nurse 2d278009b2 clean up client sample (#392) 2017-04-18 12:41:23 -07:00
BrennanConroy 9993fd96da Use policy names in EndPointOptions (#340) 2017-04-11 12:35:31 -07:00
moozzyk 04719dee82 Adding transport factory 2017-04-11 09:16:36 -07:00
moozzyk 841ceb24b6 Fixing start/stop race in the TS client 2017-04-07 07:59:43 -07:00
John Luo 370df2d6d9 Remove cyclic dependencies 2017-04-05 19:14:01 -07:00
moozzyk ebb2ce8fc9 Converting transport type from string to enum 2017-04-04 14:00:56 -07:00
BrennanConroy 6130003193 Convert to netcoreapp2.0 (#338)
* Converted samples and test projects to run on netcoreapp2.0
2017-03-25 09:37:39 -07:00
moozzyk 70e4ec9a06 Introducing the IConnection interface
Unifying events
2017-03-23 16:07:35 -07:00
Pawel Kadluczka 2ab3d42630 Removing site.js (#330) 2017-03-21 16:10:19 -07:00
David Fowler 63ce7f6160 Supported transports (#294)
Supported transport spike
- Allow turning transports on or off per end point with a flags enum
- Added `TransportType` to Sockets.Common
- Added tests
2017-03-20 12:23:00 -07:00
Mikael Mengistu 9659c73e05 Fix the client raw sample to use user input (#321) 2017-03-20 11:31:44 -07:00
Nate McMaster c89ba8c1ec Consolidate dependency versions to one file 2017-03-15 19:34:12 -07:00
Nate McMaster 209e2c8e23
React to aspnet/DotNetTools#272 2017-03-14 12:51:33 -07:00
Pawel Kadluczka a00ec445ef Moving TS client to a dedicated subfolder (#274) 2017-03-09 09:42:59 -08:00
Andrew Stanton-Nurse 78dfd278c1 Integrating new transport protocols (#257) 2017-03-07 10:46:36 -08:00
Pawel Kadluczka 0162c19ccf MSBuildifying gulpified node (#237)
- Creating an MSBuild project for the TS client
- Adding project references to the TS client project from projects that need the client - (ensures the correct targets dependency graph and prevents building the client multiple times and related races)
- Removing gulp tasks from individual projects (allows containing npm only in the TS client source and node tests)
- Using incremental compilation to build the TS client only when inputs change (prevents building the client multiple times or when not needed at all)
- Removing `npm install` from all the projects (takes up to 10 seconds even if there is nothing to restore) - npm packages will still be installed when running full build (if needed) or need to be installed manually
2017-03-01 15:13:22 -08:00
BrennanConroy 485f9595e2 EndPoint options and injection 2017-03-01 14:38:50 -08:00
Nate McMaster ef6cd8d204 Switch dotnet-bundle to BuildBundlerMinifier (#259) 2017-03-01 13:21:53 -08:00
Nate McMaster af5e7da478 Remove workarounds and unify dependency versions 2017-02-23 17:09:07 -08:00
Andrew Stanton-Nurse 667095661b convert the samples to use the official client (#234) 2017-02-23 10:56:20 -08:00
Andrew Stanton-Nurse 9767dbd5c1 fix #209 by converting to byte[] (#229)
* fix #209 by converting to byte[]
2017-02-22 11:50:37 -08:00
moozzyk 7a4746868a Removing Dispose from Transport, Connection and HubConnection
Converting StopAsync to DisposeAsync
2017-02-21 13:36:54 -08:00
moozzyk 76bd114a2f Preventing from building ts client multiple times 2017-02-21 11:54:39 -08:00
Pawel Kadluczka b1dafc2f34 Fixing build warning (#208)
13:40:19.336     1>Startup.cs(30,17): warning CS0618: 'ConfigurationExtensions.AddUserSecrets(IConfigurationBuilder)' is obsolete: 'This method is obsolete and will be removed in a future version. The recommended alternative is .AddUserSecrets(string userSecretsId) or .AddUserSecrets<TStartup>().' [C:\Source\SignalR-Core\samples\ChatSample\ChatSample.csproj] [C:\Source\SignalR-Core\.build\makefile.proj]
2017-02-15 16:32:49 -08:00
Nate McMaster f684fcb574 Downgrade to stable packages 2017-02-15 14:23:11 -08:00
moozzyk a3e847e6cc De-statificying HubConnection
Wiring and raising events correctly
2017-02-15 12:15:35 -08:00
moozzyk d4fbdd055a Raising Received event 2017-02-15 12:15:35 -08:00
moozzyk 3ba95b98af Converting static ConnectAsync to instance StartAsync 2017-02-15 12:15:34 -08:00
Andrew Stanton-Nurse a728e1da41 Text Protocol Formatter (#187) 2017-02-14 16:00:51 -08:00
Pawel Kadluczka 0c8df245de Hiding Channels (#183)
Hiding Channels
2017-02-09 10:31:07 -08:00
Andrew Stanton-Nurse b711128ec2 update MSBuild settings to make samples runnable (#180) 2017-02-07 09:39:21 -08:00
Nate McMaster 7281bf90c0 Upgrade to VS 2017 (#176) 2017-02-02 12:54:23 -08:00
Mikael Mengistu 5def499323 Added Sockets.Common and connection level testing (#173)
*Moved IChannelConnection, ChannelConnection, Format and Message to the new Sockets.Common project.

* Adding Connection level tests.
2017-01-31 14:59:21 -08:00
moozzyk c997ea8165 Converting pipelines to channels 2017-01-26 08:04:58 -08:00
Pranav K 354daa2ded Remove references to RazorTooling from ChatSample 2017-01-20 12:28:38 -08:00
Nate McMaster 3acdb58f57 React to aspnet/Scaffolding#383 2017-01-19 20:45:38 -08:00
Andrew Stanton-Nurse 464077866c rename getid to negotiate (#124)
* rename getid to negotiate
* also change SSE and Long Polling to require a pre-established connection
* disallow changing transports mid-connection; return a 400 response if the user attempts to do so
2017-01-17 15:45:29 -08:00
BrennanConroy 3d5fc9493a Remove format from connect and only use it in /send 2017-01-17 11:32:27 -08:00
BrennanConroy b3df10b638 Use connections format 2017-01-11 10:07:15 -08:00
David Fowler cd9ed9228a Remove streaming transport as a top level API (#110)
- Remove Streaming* classes from Sockets. The main
API will be channels based and streaming transports
will use the PipelineChannel (formerly FramingChannel) to
access messages.
- Added WriteAsync and ReadAsync to Connection and hid
the IChannelConnection from public API.
- Also fixed the fact that unknown methods caused server side
exceptions.
- Changed the consumption pattern to WaitToReadAsync/TryRead to avoid
exceptions.
- React to API changes
2017-01-11 04:01:49 -08:00
BrennanConroy a9dfd83ff4 Fix EF.Tools version 2017-01-10 14:54:35 -08:00
moozzyk b18606ec8d Fixing chat sample - it was still using fully qualified hub method name 2017-01-10 11:41:47 -08:00
Andrew Stanton-Nurse d281cb72ea add "messaging" endpoints and transports
* Need a separate set of primitives to handle messaging
* Using Channels (not Pipelines!) to provide the data flow for messaging
* All transports are now "message" based transports
* Added an adaptor to convert message-based transports to serve
streaming endpoints
2017-01-09 16:01:08 -08:00
moozzyk fa0219f75e Updating Social Weather sample to 1.2.0 2017-01-09 08:36:05 -08:00
Chris R 80c5f9be0e Remove unused WebListener reference 2017-01-03 22:08:24 -08:00
moozzyk 8022afd3a2 Handling exceptions thrown on the server side
Addresses: #62
2016-12-26 22:39:48 -08:00
Pranav K 1492b41af0 Updating to 4.4 CoreFx packages 2016-12-21 22:57:01 -08:00
Nate McMaster 06b3ed4413 React to aspnet/DotNetTools#211 2016-12-16 17:13:10 -08:00
Mikael Mengistu c665eef66b Update SocketsSample to use correct method names 2016-12-15 19:26:40 -05:00
Mikael Mengistu e1d9aa2dd4 Early version of the .NET Client 2016-12-14 10:04:48 -08:00
moozzyk e6b34fdce3 Renaming RpcConnection to HubConnection 2016-11-29 16:03:56 -08:00
moozzyk 2039a18971 Introducing modules for the ts client 2016-11-29 12:35:33 -08:00
David Fowler 1b59fc6f80 DI enabled Microsoft.AspNetCore.Sockets (#47)
* DI enabled Microsoft.AspNetCore.Sockets
- Added AddSockets extension method to IServiceCollection
- Inject IApplicationLifetime into ConnectionManager to handle
graceful shutdown and added test.
- Call AddSockets from AddSignalR

* PR feedback
- Added AddSignalR overload that takes Action<SignalROptions>
2016-11-26 23:09:38 -08:00
Pranav K 59bd827458 * Remove dotnet-corefxlab feed
* Fix SocialWeather so that it restores as part of test runs.
2016-11-21 10:01:32 -08:00
Mikael Mengistu 1a29ddb9de Fix EF dependencies in chat sample 2016-11-17 16:16:43 -08:00
David Fowler 4aa65cf0bf Updated to new System.IO.Pipelines package instead of Channels 2016-11-15 21:46:18 -08:00
moozzyk 357f5f85bb Minor cleanup 2016-11-15 10:39:55 -08:00
Pawel Kadluczka b865716841 Displaying actual date 2016-11-15 10:39:54 -08:00
moozzyk 81ddada76b Moving Pipe formatter to a subfolder 2016-11-15 10:39:52 -08:00
moozzyk f3dfb62af9 Adding protobuf formatter 2016-11-15 10:39:51 -08:00
Pawel Kadluczka 7d67629245 Adding pipe formatter + some clean up 2016-11-15 10:39:48 -08:00
Pawel Kadluczka b5cef59448 Fixing
- infinite loop when a client disconnects
- enum values serialization

Replacing reports div with a table
2016-11-15 10:39:46 -08:00
Pawel Kadluczka 08cd20f1a0 Fixing namespace 2016-11-15 10:39:45 -08:00
Pawel Kadluczka 41c4211c6b Renaming folder 2016-11-15 10:39:44 -08:00
Pawel Kadluczka 098347adde Making UI functional 2016-11-15 10:39:42 -08:00
Pawel Kadluczka 04fede0436 Adding pluggable formatters 2016-11-15 10:39:41 -08:00
moozzyk 1694f2b791 WIP 2016-11-15 10:39:40 -08:00
moozzyk 325c909dff Removing transport fallback in the client 2016-11-14 14:42:53 -08:00
Pranav K 51d4e11e6f Fix more versions 2016-11-11 09:17:22 -08:00
BrennanConroy af80d4493e Remove Database EnsureCreated 2016-11-09 14:13:15 -08:00
BrennanConroy cb0aa63a43 UserName and minor fixups for ChatSample 2016-11-09 10:55:23 -08:00
David Fowler 47a5f2ad07 Remove site.min.css from source control to reduce noise 2016-11-08 01:02:24 -08:00
David Fowler 9c592dac50 Builds on non windows 2016-11-08 00:47:09 -08:00
Andrew Stanton-Nurse d299cc9186 apply license headers 2016-11-07 12:00:04 -08:00
David Fowler 9c10b89fa8 Small tweaks to sample
- Fix redis issues with removing while
- Use string interpolation in the Chat hub
2016-11-04 01:50:55 -07:00
David Fowler 6b3d9bd96d Added group messaging to the sample
- Clean up some boiler plate
- Renamed Add/Remove on GroupManager to AddAsync and RemoveAsync
2016-11-04 01:28:49 -07:00
David Fowler b114e4e9fd Get rid of RpcEndpoint and samples
- Merge RpcEndpoint and HubEndPoint, still need to move discovery of hub
methods to another class.
2016-11-03 00:17:01 -07:00
David Fowler 7db1eb8f25 Add Async suffix to everything 2016-11-02 22:02:29 -07:00
David Fowler a175609bb1 Start transport before endpoint 2016-11-02 21:28:05 -07:00
David Fowler b6f15338eb Cleanup and shuffling things
- Moved the InvocationAdapterRegistry registration to SignalROptions
- Moved the JsonNetInvocationAdapter to Microsoft.AspNetCore.SignalR
- Remove dead JavaScript code
2016-11-02 20:54:58 -07:00
David Fowler 8dd61250f4 Fix the projects
- Fixed dependencies
- Fixed NS dependency
2016-11-02 18:50:57 -07:00
BrennanConroy 019bb460ec Clean up and TS client 2016-11-02 18:35:12 -07:00
BrennanConroy 5434d437e9 Added ChatSample 2016-11-02 17:33:48 -07:00
moozzyk 3065c8db93 minor fixes 2016-11-02 17:09:11 -07:00
moozzyk 2bbca5e7fe Adding error handling
Fixing SSE transport on the server
2016-11-02 17:09:11 -07:00
moozzyk ce17f0d19a Adding transport selection
Fixing serverSentEvents transport
Updating the client 'app'
2016-11-02 17:09:11 -07:00
moozzyk 466c8d9db9 Adding ServerSentEvents 2016-11-02 17:09:11 -07:00
moozzyk 181053e876 Adding longpolling 2016-11-02 17:09:11 -07:00
moozzyk 6859d33536 ts-client WebSockets + JSON 2016-11-02 17:09:11 -07:00
David Fowler 0f863be588 Renamed JsonInvocationAdapter to JsonNetInvocationAdapter 2016-11-02 08:54:42 -07:00
David Fowler 9e7513a7bd Added UseSignalR 2016-11-02 03:20:44 -07:00
David Fowler 377711f68c Changes to redis and groups
- Made group add and removal async as they may be backed by a network
connection
- Added ISignalRBuilder and a pattern similar to mvc for doing extension methods off
AddSignalR
- Added RedisOptions
2016-11-02 02:29:04 -07:00
David Fowler 40039afd4f Make a SignalR project and SignalR.Redis project
- Moved RPC into SignalR for now since we don't have a middle layer yet.
- Fixed up name spaces
2016-11-02 01:49:05 -07:00
David Fowler 915ebbda6b Get rid of pub sub abstraction and add redis impl 2016-11-02 01:21:51 -07:00
David Fowler 4221db3890 Some cleanup and error checking
- Dispose hubs after invoke
2016-11-01 23:27:49 -07:00
David Fowler 53858495dc Hubs are more fleshed out (#11)
- `HubEndPoint<T>` : `RpcEndPoint<T>` where T is the Hub type. Optimizing for a single hub per connection here.
- Hubs get OnConnectedAsync and OnDisconnectedAsync methods that are invoked at the right time and with the right scope.
- Introduced HubLifetimeManager<THub> (naming TBD) which is the center of the universe for Hub behaviors.
2016-11-01 23:15:31 -07:00
David Fowler 50e5827414 Add HubCallerContext to Hub
- Flow the connection id and user of the caller to the Hub
2016-10-28 10:25:38 -07:00
David Fowler e59865a11d Small tweaks
- Fixed errros in JS
- Style change in HubEndpoint
2016-10-28 09:41:45 -07:00
moozzyk ffc0a048e3 Addressing review comments 2016-10-27 09:30:20 -07:00
moozzyk ca2a471691 Fixing NRE when a client closes connection 2016-10-27 09:30:20 -07:00
moozzyk fd10deba6c Removing formatters 2016-10-27 09:30:19 -07:00
moozzyk a854b13754 Handling custom protobuf types 2016-10-27 09:30:18 -07:00
moozzyk e1869d29a4 fixing single client invocation 2016-10-27 09:30:17 -07:00
moozzyk 5d41b218f0 Fixing line protocol 2016-10-27 09:30:15 -07:00
moozzyk a8c831bad6 Very hacky protobuff support 2016-10-27 09:30:06 -07:00
moozzyk e893f0c6d7 Fixing after rebase 2016-10-25 16:37:24 -07:00
moozzyk fb387ed03d Decoupling formatters from endpoints
Moving formatters out from Sockets
2016-10-25 16:37:23 -07:00
moozzyk 8b905907fe Typed formatters 2016-10-25 16:37:22 -07:00
moozzyk f64c986b5d Adding support to non-Json hub invocation 2016-10-25 16:37:21 -07:00
David Fowler cf68c18dd2 Do async reads 2016-10-09 02:34:42 -07:00
David Fowler 08bba972c1 React to channel API changes 2016-10-07 16:18:23 -07:00
DamianEdwards d0196914ff JS code style fixes 2016-10-05 14:50:50 -07:00
DamianEdwards c641a43f38 Fixing @davidfowl's shitty web code. 2016-10-05 10:27:48 -07:00
David Fowler 3f5e340b9f Committed launch settings 2016-10-04 17:28:21 -07:00
David Fowler e5e8d1bee3 Decouple the dispatcher from routing for easier testing 2016-10-04 00:12:07 -07:00
David Fowler 1647432ef6 Added Connection property to EndPoint
- Exposes a list of connections for user code to act on
- The connection list is thread safe (uses a concurrent dictionary under the hood)
- Removed the Bus and just used the connection list in the samples
2016-10-03 22:58:56 -07:00
David Fowler 8e66d63577 Code cleanup (somewhat)
- Transports have be drastically simplified due to channels
- Make sure tasks don't leak
2016-10-03 01:52:18 -07:00
David Fowler 1a5138e972 Added hub sample 2016-10-02 03:23:23 -07:00
David Fowler 58e58b7fb7 Added JSON RPC demo 2016-10-02 01:51:43 -07:00
David Fowler 9ee33bf01f Add transport connection metadata 2016-10-01 23:49:07 -07:00
David Fowler 58d08c07d0 Added connect and disconnect messages 2016-10-01 19:43:34 -07:00
David Fowler 613ac2d6c3 Fix long polling 2016-10-01 15:48:15 -07:00
David Fowler d646e3666f Made a thin websocket like wrapper around the client API 2016-10-01 14:27:50 -07:00
David Fowler 540784e525 Added .NET WebSocket sample 2016-10-01 13:59:35 -07:00
David Fowler 5c9729fe4f Move sse to sse specific page 2016-10-01 12:47:35 -07:00
David Fowler 2a369f40f6 Small fixes
- Pass the Connection to each IHttpTransport
- FlushAsync after writing for WebListener
- Add metadata to Connection
- Added WebListener dependency
2016-10-01 11:52:50 -07:00
David Fowler 9f5ef70164 Added support for websockets
- Upgraded to ASP.NET Core 1.1 preview
2016-10-01 10:26:49 -07:00
David Fowler c3753c4f0e Renamed the project and split into class library and sample 2016-10-01 00:43:33 -07:00