C# Class Microsoft.AspNet.SignalR.PersistentConnection

Represents a connection between client and server.
Show file Open project: SignalR/SignalR

Private Properties

Property Type Description
AppendGroupPrefixes IList
CreateConnection Connection
FailResponse System.Threading.Tasks.Task
GetDefaultSignals IList
GetTransport ITransport
GetUserIdentity string
IsNegotiationRequest bool
IsPingRequest bool
IsStartRequest bool
ProcessNegotiationRequest System.Threading.Tasks.Task
ProcessPingRequest System.Threading.Tasks.Task
ProcessRequestPostGroupRead System.Threading.Tasks.Task
ProcessStartRequest System.Threading.Tasks.Task
SendJsonResponse System.Threading.Tasks.Task
TryGetConnectionId bool
VerifyGroups IList

Public Methods

Method Description
Authorize ( IRequest request ) : bool
Initialize ( IDependencyResolver resolver ) : void
ProcessRequest ( Microsoft.AspNet.SignalR.HostContext context ) : System.Threading.Tasks.Task

Handles all requests for PersistentConnections.

ProcessRequest ( object>.IDictionary environment ) : System.Threading.Tasks.Task

OWIN entry point.

Protected Methods

Method Description
AuthorizeRequest ( IRequest request ) : bool

Called before every request and gives the user a authorize the user.

GetSignals ( string userId, string connectionId ) : IList

Returns the signals used in the PersistentConnection.

OnConnected ( IRequest request, string connectionId ) : System.Threading.Tasks.Task

Called when a new connection is made.

OnDisconnected ( IRequest request, string connectionId, bool stopCalled ) : System.Threading.Tasks.Task

Called when a connection disconnects gracefully or due to a timeout.

OnReceived ( IRequest request, string connectionId, string data ) : System.Threading.Tasks.Task

Called when data is received from a connection.

OnReconnected ( IRequest request, string connectionId ) : System.Threading.Tasks.Task

Called when a connection reconnects after a timeout.

OnRejoiningGroups ( IRequest request, IList groups, string connectionId ) : IList

Called when a connection reconnects after a timeout to determine which groups should be rejoined.

Private Methods

Method Description
AppendGroupPrefixes ( Microsoft.AspNet.SignalR.HostContext context, string connectionId, string groupsToken ) : IList
CreateConnection ( string connectionId, IList signals, IList groups ) : Connection
FailResponse ( IResponse response, string message, int statusCode = 400 ) : System.Threading.Tasks.Task
GetDefaultSignals ( string userId, string connectionId ) : IList
GetTransport ( Microsoft.AspNet.SignalR.HostContext context ) : ITransport
GetUserIdentity ( Microsoft.AspNet.SignalR.HostContext context ) : string
IsNegotiationRequest ( IRequest request ) : bool
IsPingRequest ( IRequest request ) : bool
IsStartRequest ( IRequest request ) : bool
ProcessNegotiationRequest ( Microsoft.AspNet.SignalR.HostContext context ) : System.Threading.Tasks.Task
ProcessPingRequest ( Microsoft.AspNet.SignalR.HostContext context ) : System.Threading.Tasks.Task
ProcessRequestPostGroupRead ( Microsoft.AspNet.SignalR.HostContext context, string groupsToken ) : System.Threading.Tasks.Task
ProcessStartRequest ( Microsoft.AspNet.SignalR.HostContext context, string connectionId ) : System.Threading.Tasks.Task
SendJsonResponse ( Microsoft.AspNet.SignalR.HostContext context, string jsonPayload ) : System.Threading.Tasks.Task
TryGetConnectionId ( Microsoft.AspNet.SignalR.HostContext context, string connectionToken, string &connectionId, string &message, int &statusCode ) : bool
VerifyGroups ( string connectionId, string groupsToken ) : IList

Method Details

Authorize() public method

public Authorize ( IRequest request ) : bool
request IRequest
return bool

AuthorizeRequest() protected method

Called before every request and gives the user a authorize the user.
protected AuthorizeRequest ( IRequest request ) : bool
request IRequest The for the current connection.
return bool

GetSignals() protected method

Returns the signals used in the PersistentConnection.
protected GetSignals ( string userId, string connectionId ) : IList
userId string The user id for the current connection.
connectionId string The id of the incoming connection.
return IList

Initialize() public method

public Initialize ( IDependencyResolver resolver ) : void
resolver IDependencyResolver
return void

OnConnected() protected method

Called when a new connection is made.
protected OnConnected ( IRequest request, string connectionId ) : System.Threading.Tasks.Task
request IRequest The for the current connection.
connectionId string The id of the connecting client.
return System.Threading.Tasks.Task

OnDisconnected() protected method

Called when a connection disconnects gracefully or due to a timeout.
protected OnDisconnected ( IRequest request, string connectionId, bool stopCalled ) : System.Threading.Tasks.Task
request IRequest The for the current connection.
connectionId string The id of the disconnected connection.
stopCalled bool /// true, if stop was called on the client closing the connection gracefully; /// false, if the connection has been lost for longer than the /// . /// Timeouts can occur in scaleout when clients reconnect with another server. ///
return System.Threading.Tasks.Task

OnReceived() protected method

Called when data is received from a connection.
protected OnReceived ( IRequest request, string connectionId, string data ) : System.Threading.Tasks.Task
request IRequest The for the current connection.
connectionId string The id of the connection sending the data.
data string The payload sent to the connection.
return System.Threading.Tasks.Task

OnReconnected() protected method

Called when a connection reconnects after a timeout.
protected OnReconnected ( IRequest request, string connectionId ) : System.Threading.Tasks.Task
request IRequest The for the current connection.
connectionId string The id of the re-connecting client.
return System.Threading.Tasks.Task

OnRejoiningGroups() protected method

Called when a connection reconnects after a timeout to determine which groups should be rejoined.
protected OnRejoiningGroups ( IRequest request, IList groups, string connectionId ) : IList
request IRequest The for the current connection.
groups IList The groups the calling connection claims to be part of.
connectionId string The id of the reconnecting client.
return IList

ProcessRequest() public method

Handles all requests for PersistentConnections.
/// Thrown if connection wasn't initialized. /// Thrown if the transport wasn't specified. /// Thrown if the connection id wasn't specified. ///
public ProcessRequest ( Microsoft.AspNet.SignalR.HostContext context ) : System.Threading.Tasks.Task
context Microsoft.AspNet.SignalR.HostContext The for the current request.
return System.Threading.Tasks.Task

ProcessRequest() public method

OWIN entry point.
public ProcessRequest ( object>.IDictionary environment ) : System.Threading.Tasks.Task
environment object>.IDictionary
return System.Threading.Tasks.Task