public void Start() { VerifyState(HttpServerState.Stopped); State = HttpServerState.Starting; Log.Debug(String.Format("Starting HTTP server at {0}", EndPoint)); TimeoutManager = new HttpTimeoutManager(this); // Start the listener. var listener = new TcpListener(EndPoint); try { listener.Start(); EndPoint = (IPEndPoint)listener.LocalEndpoint; _listener = listener; // We must still instantiate this object // for backwards compatibility #pragma warning disable CS0612 // Type or member is obsolete ServerUtility = new HttpServerUtility(); #pragma warning restore CS0612 // Type or member is obsolete Log.Info(String.Format("HTTP server running at {0}", EndPoint)); } catch (Exception ex) { State = HttpServerState.Stopped; Log.Error("Failed to start HTTP server", ex); throw new NHttpException("Failed to start HTTP server", ex); } State = HttpServerState.Started; BeginAcceptTcpClient(); }
public void Start() { VerifyState(HttpServerState.Stopped); State = HttpServerState.Starting; Log.Debug(String.Format("Starting HTTP server at {0}", EndPoint)); TimeoutManager = new HttpTimeoutManager(this); // Start the listener. var listener = new TcpListener(EndPoint); try { listener.Start(); EndPoint = (IPEndPoint)listener.LocalEndpoint; _listener = listener; ServerUtility = new HttpServerUtility(); Log.Info(String.Format("HTTP server running at {0}", EndPoint)); } catch (Exception ex) { State = HttpServerState.Stopped; Log.Error("Failed to start HTTP server", ex); throw new NHttpException("Failed to start HTTP server", ex); } State = HttpServerState.Started; BeginAcceptTcpClient(); }
public void Dispose() { if (!_disposed) { if (_state == HttpServerState.Started) { Stop(); } if (_clientsChangedEvent != null) { ((IDisposable)_clientsChangedEvent).Dispose(); _clientsChangedEvent = null; } if (TimeoutManager != null) { TimeoutManager.Dispose(); TimeoutManager = null; } _disposed = true; } }
public void Dispose() { if (!_disposed) { if (_state == HttpServerState.Started) Stop(); if (_clientsChangedEvent != null) { ((IDisposable)_clientsChangedEvent).Dispose(); _clientsChangedEvent = null; } if (TimeoutManager != null) { TimeoutManager.Dispose(); TimeoutManager = null; } _disposed = true; } }