Skip to content

Commit a5be235

Browse files
committed
Added stopping server on Ctrl-C and debug message on stop
1 parent 0eef2e8 commit a5be235

File tree

2 files changed

+10
-1
lines changed

2 files changed

+10
-1
lines changed

adafruit_httpserver/server.py

Lines changed: 9 additions & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -124,6 +124,7 @@ def serve_forever(self, host: str, port: int = 80) -> None:
124124
try:
125125
self.poll()
126126
except KeyboardInterrupt: # Exit on Ctrl-C e.g. during development
127+
self.stop()
127128
return
128129
except Exception as error: # pylint: disable=broad-except
129130
if self.debug:
@@ -163,6 +164,9 @@ def stop(self) -> None:
163164
self.stopped = True
164165
self._sock.close()
165166

167+
if self.debug:
168+
_debug_stopped_server(self)
169+
166170
def _receive_request(
167171
self,
168172
sock: Union["SocketPool.Socket", "socket.socket"],
@@ -371,6 +375,11 @@ def _debug_started_server(server: "Server"):
371375
print(f"Started development server on http://{host}:{port}")
372376

373377

378+
def _debug_stopped_server(server: "Server"): # pylint: disable=unused-argument
379+
"""Prints a message when the server stops."""
380+
print("Stopped development server")
381+
382+
374383
def _debug_incoming_request(request: "Request"):
375384
"""Prints a message when a request is received."""
376385
client_ip = request.client_address[0]

docs/examples.rst

Lines changed: 1 addition & 1 deletion
Original file line numberDiff line numberDiff line change
@@ -240,7 +240,7 @@ This is how the logs might look like when debug mode is enabled::
240240
File "code.py", line 55, in example_handler
241241
KeyError: non_existent_key
242242
192.168.0.103 -- GET /index.html 242
243-
...
243+
Stopped development server
244244

245245

246246
If you need more information about the request or you want it in a different format you can modify

0 commit comments

Comments
 (0)