public AsyncWebSocketSession( TcpClient tcpClient, AsyncWebSocketServerConfiguration configuration, IBufferManager bufferManager, AsyncWebSocketRouteResolver routeResolver, AsyncWebSocketServer server) { if (tcpClient == null) { throw new ArgumentNullException("tcpClient"); } if (configuration == null) { throw new ArgumentNullException("configuration"); } if (bufferManager == null) { throw new ArgumentNullException("bufferManager"); } if (routeResolver == null) { throw new ArgumentNullException("routeResolver"); } if (server == null) { throw new ArgumentNullException("server"); } _tcpClient = tcpClient; _configuration = configuration; _bufferManager = bufferManager; _routeResolver = routeResolver; _server = server; _sessionKey = Guid.NewGuid().ToString(); this.StartTime = DateTime.UtcNow; _remoteEndPoint = (_tcpClient != null && _tcpClient.Client.Connected) ? (IPEndPoint)_tcpClient.Client.RemoteEndPoint : null; _localEndPoint = (_tcpClient != null && _tcpClient.Client.Connected) ? (IPEndPoint)_tcpClient.Client.LocalEndPoint : null; _keepAliveTracker = KeepAliveTracker.Create(KeepAliveInterval, new TimerCallback((s) => OnKeepAlive())); _keepAliveTimeoutTimer = new Timer(new TimerCallback((s) => OnKeepAliveTimeout()), null, Timeout.Infinite, Timeout.Infinite); _closingTimeoutTimer = new Timer(new TimerCallback((s) => OnCloseTimeout()), null, Timeout.Infinite, Timeout.Infinite); }
public AsyncWebSocketSession( TcpClient tcpClient, AsyncWebSocketServerConfiguration configuration, ISegmentBufferManager bufferManager, AsyncWebSocketRouteResolver routeResolver, AsyncWebSocketServer server) { if (tcpClient == null) { throw new ArgumentNullException("tcpClient"); } if (configuration == null) { throw new ArgumentNullException("configuration"); } if (bufferManager == null) { throw new ArgumentNullException("bufferManager"); } if (routeResolver == null) { throw new ArgumentNullException("routeResolver"); } if (server == null) { throw new ArgumentNullException("server"); } _tcpClient = tcpClient; _configuration = configuration; _bufferManager = bufferManager; _routeResolver = routeResolver; _server = server; _sessionKey = Guid.NewGuid().ToString(); this.StartTime = DateTime.UtcNow; _remoteEndPoint = (_tcpClient != null && _tcpClient.Client.Connected) ? (IPEndPoint)_tcpClient.Client.RemoteEndPoint : null; _localEndPoint = (_tcpClient != null && _tcpClient.Client.Connected) ? (IPEndPoint)_tcpClient.Client.LocalEndPoint : null; }
public AsyncWebSocketSession( TcpClient tcpClient, AsyncWebSocketServerConfiguration configuration, IBufferManager bufferManager, AsyncWebSocketRouteResolver routeResolver, AsyncWebSocketServer server) { if (tcpClient == null) throw new ArgumentNullException("tcpClient"); if (configuration == null) throw new ArgumentNullException("configuration"); if (bufferManager == null) throw new ArgumentNullException("bufferManager"); if (routeResolver == null) throw new ArgumentNullException("routeResolver"); if (server == null) throw new ArgumentNullException("server"); _tcpClient = tcpClient; _configuration = configuration; _bufferManager = bufferManager; _routeResolver = routeResolver; _server = server; _sessionKey = Guid.NewGuid().ToString(); this.StartTime = DateTime.UtcNow; _remoteEndPoint = (_tcpClient != null && _tcpClient.Client.Connected) ? (IPEndPoint)_tcpClient.Client.RemoteEndPoint : null; _localEndPoint = (_tcpClient != null && _tcpClient.Client.Connected) ? (IPEndPoint)_tcpClient.Client.LocalEndPoint : null; _keepAliveTracker = KeepAliveTracker.Create(KeepAliveInterval, new TimerCallback((s) => OnKeepAlive())); _keepAliveTimeoutTimer = new Timer(new TimerCallback((s) => OnKeepAliveTimeout()), null, Timeout.Infinite, Timeout.Infinite); _closingTimeoutTimer = new Timer(new TimerCallback((s) => OnCloseTimeout()), null, Timeout.Infinite, Timeout.Infinite); }