aboutsummaryrefslogtreecommitdiffstats
path: root/project/uptimeservice.py
diff options
context:
space:
mode:
authorjantuomi <jans.tuomi@gmail.com>2016-07-26 15:46:35 +0300
committerjantuomi <jans.tuomi@gmail.com>2016-07-26 15:46:35 +0300
commita4af1c91a7196752d2fe8ccf7e5cbb1593e95f65 (patch)
tree1edd5754ded769aec774766cab885f759ef1e641 /project/uptimeservice.py
parentd8d8745e7370ec0efa85e3f98da85f79b66c1422 (diff)
Add threading to UptimeService, fix response
Diffstat (limited to 'project/uptimeservice.py')
-rw-r--r--project/uptimeservice.py18
1 files changed, 17 insertions, 1 deletions
diff --git a/project/uptimeservice.py b/project/uptimeservice.py
index 252dc17..0cda612 100644
--- a/project/uptimeservice.py
+++ b/project/uptimeservice.py
@@ -3,13 +3,22 @@ import socketserver
import logging
import threading
+class UptimeRequestHandler(http.server.SimpleHTTPRequestHandler):
+ def do_GET(self):
+ self.send_response(200)
+ self.send_header("Content-type", "text/plain")
+ self.send_header("Content-Length", "0")
+ self.end_headers()
class UptimeService(threading.Thread):
+ _instance = None
+
def __init__(self, port):
super(UptimeService, self).__init__()
+ UptimeService._instance = self
self.port = port
- self._handler = http.server.SimpleHTTPRequestHandler
+ self._handler = UptimeRequestHandler
self._httpd = socketserver.TCPServer(("", port), self._handler)
@@ -20,3 +29,10 @@ class UptimeService(threading.Thread):
def run(self):
self.serve()
+ def stop(self):
+ self._httpd.shutdown()
+
+ @staticmethod
+ def stop_services():
+ if UptimeService._instance is not None:
+ UptimeService._instance.stop()