Using webSockets transport as the default transport

Fixes: #213
This commit is contained in:
moozzyk 2017-02-16 10:03:29 -08:00
parent 607445fc2b
commit a13aa4de10
1 changed files with 2 additions and 3 deletions

View File

@ -44,13 +44,12 @@ namespace Microsoft.AspNetCore.Sockets.Client
public Task StartAsync() => StartAsync(transport: null, httpClient: null);
public Task StartAsync(HttpClient httpClient) => StartAsync(transport: null, httpClient: httpClient);
public Task StartAsync(ITransport transport) => StartAsync(transport, null);
public Task StartAsync(ITransport transport) => StartAsync(transport: transport, httpClient: null);
// TODO HIGH: Fix a race when the connection is being stopped/disposed when start has not finished running
public async Task StartAsync(ITransport transport, HttpClient httpClient)
{
// TODO: make transport optional
_transport = transport ?? throw new ArgumentNullException(nameof(transport));
_transport = transport ?? new WebSocketsTransport(_loggerFactory);
if (Interlocked.CompareExchange(ref _connectionState, ConnectionState.Connecting, ConnectionState.Initial)
!= ConnectionState.Initial)