Add User to Connection

This commit is contained in:
David Fowler 2016-10-03 02:08:31 -07:00
parent 8e66d63577
commit 99d7aea78c
2 changed files with 5 additions and 1 deletions

View File

@ -1,6 +1,7 @@
using System;
using System.Collections.Generic;
using System.Linq;
using System.Security.Claims;
using System.Threading.Tasks;
using Channels;
@ -9,6 +10,7 @@ namespace Microsoft.AspNetCore.Sockets
public class Connection
{
public string ConnectionId { get; set; }
public ClaimsPrincipal User { get; set; }
public IChannel Channel { get; set; }
public IDictionary<string, string> Metadata { get; } = new Dictionary<string, string>();
}

View File

@ -52,6 +52,7 @@ namespace Microsoft.AspNetCore.Sockets
{
// Get the connection state for the current http context
var connectionState = GetOrCreateConnection(context);
connectionState.Connection.User = context.User;
connectionState.Connection.Metadata["transport"] = "sse";
var sse = new ServerSentEvents(connectionState.Connection);
@ -76,6 +77,7 @@ namespace Microsoft.AspNetCore.Sockets
{
// Get the connection state for the current http context
var connectionState = GetOrCreateConnection(context);
connectionState.Connection.User = context.User;
connectionState.Connection.Metadata["transport"] = "websockets";
var ws = new WebSockets(connectionState.Connection);
@ -126,7 +128,7 @@ namespace Microsoft.AspNetCore.Sockets
if (isNewConnection)
{
connectionState.Connection.Metadata["transport"] = "poll";
connectionState.Connection.User = context.User;
// REVIEW: We should await this task after disposing the connection
var ignore = endpoint.OnConnected(connectionState.Connection);
}