C# Class AK.F1.Timing.Server.Proxy.ProxySessionManager

A AK.F1.Timing.Server.ISocketHandler which creates and manages a AK.F1.Timing.Server.Proxy.ProxySession for each connected client. Connected client are first sent all historial mesages from current active session and then go onto receive instantaneous updates. This class cannot be inherited.
Inheritance: DisposableBase, ISocketHandler
Show file Open project: simoneb/ak-f1-timing

Public Methods

Method Description
Handle ( Socket client ) : void
ProxySessionManager ( IMessageReader reader ) : System

Initilises a new instance of the AK.F1.Timing.Server.Proxy.ProxySessionManager class and specified the source AK.F1.Timing.IMessageReader.

Protected Methods

Method Description
DisposeOfManagedResources ( ) : void

Private Methods

Method Description
AddPendingStart ( Socket client ) : void
Dispose ( ) : void
ForEachSession ( Action action, bool throwIfCancellationRequested = true ) : void
MainTask ( ) : void
NextSessionId ( ) : int
OnSessionDisposed ( object sender, EventArgs e ) : void
ProcessPendingMessages ( ) : void
ProcessPendingRemoves ( ) : void
ProcessPendingStarts ( bool completeSessions ) : void
ReadMessagesTask ( ) : void
ThrowIfCancellationRequested ( ) : void

Method Details

DisposeOfManagedResources() protected method

protected DisposeOfManagedResources ( ) : void
return void

Handle() public method

public Handle ( Socket client ) : void
client System.Net.Sockets.Socket
return void

ProxySessionManager() public method

Initilises a new instance of the AK.F1.Timing.Server.Proxy.ProxySessionManager class and specified the source AK.F1.Timing.IMessageReader.
/// Thrown when is . ///
public ProxySessionManager ( IMessageReader reader ) : System
reader IMessageReader The source .
return System