From 14f3a4a153186c96a2dc1d2cf1cd969910162b26 Mon Sep 17 00:00:00 2001 From: =?UTF-8?q?B=C3=A1lint=20Bokros?= Date: Tue, 13 Feb 2018 17:51:19 +0100 Subject: [PATCH] Move SupervisorMixin to mixins --- lib/tfw/components/mixins/__init__.py | 1 + lib/tfw/components/mixins/supervisor_mixin.py | 20 +++++++++++++++++++ .../components/source_code_event_handler.py | 2 +- lib/tfw/components/terminado_event_handler.py | 2 +- lib/tfw/util.py | 20 ------------------- 5 files changed, 23 insertions(+), 22 deletions(-) create mode 100644 lib/tfw/components/mixins/__init__.py create mode 100644 lib/tfw/components/mixins/supervisor_mixin.py diff --git a/lib/tfw/components/mixins/__init__.py b/lib/tfw/components/mixins/__init__.py new file mode 100644 index 0000000..fd2a569 --- /dev/null +++ b/lib/tfw/components/mixins/__init__.py @@ -0,0 +1 @@ +from .supervisor_mixin import SupervisorMixin diff --git a/lib/tfw/components/mixins/supervisor_mixin.py b/lib/tfw/components/mixins/supervisor_mixin.py new file mode 100644 index 0000000..968063e --- /dev/null +++ b/lib/tfw/components/mixins/supervisor_mixin.py @@ -0,0 +1,20 @@ +import xmlrpc.client +from contextlib import suppress +from xmlrpc.client import Fault as SupervisorFault + +from tfw.config import tfwenv + + +class SupervisorMixin: + supervisor = xmlrpc.client.ServerProxy(tfwenv.SUPERVISOR_HTTP_URI).supervisor + + def stop_process(self): + with suppress(SupervisorFault): + self.supervisor.stopProcess(self.process_name) + + def start_process(self): + self.supervisor.startProcess(self.process_name) + + def restart_process(self): + self.stop_process() + self.start_process() diff --git a/lib/tfw/components/source_code_event_handler.py b/lib/tfw/components/source_code_event_handler.py index 5b5de40..a0964a8 100644 --- a/lib/tfw/components/source_code_event_handler.py +++ b/lib/tfw/components/source_code_event_handler.py @@ -1,7 +1,7 @@ from os.path import splitext, isfile, join, relpath from glob import glob -from tfw.util import SupervisorMixin +from tfw.components.mixins import SupervisorMixin from tfw.event_handler_base import EventHandlerBase from tfw.components.directory_monitor import DirectoryMonitor diff --git a/lib/tfw/components/terminado_event_handler.py b/lib/tfw/components/terminado_event_handler.py index 4222e05..bdfebb2 100644 --- a/lib/tfw/components/terminado_event_handler.py +++ b/lib/tfw/components/terminado_event_handler.py @@ -1,5 +1,5 @@ from tfw.event_handler_base import EventHandlerBase -from tfw.util import SupervisorMixin +from tfw.components.mixins import SupervisorMixin from tfw.config import tfwenv from tfw.config.logs import logging log = logging.getLogger(__name__) diff --git a/lib/tfw/util.py b/lib/tfw/util.py index 4c53d4e..bede6e8 100644 --- a/lib/tfw/util.py +++ b/lib/tfw/util.py @@ -1,11 +1,6 @@ -import xmlrpc.client -from contextlib import suppress -from xmlrpc.client import Fault as SupervisorFault from time import time, sleep from functools import wraps -from tfw.config import tfwenv - def create_source_code_response_data(filename, content, language): return { @@ -15,21 +10,6 @@ def create_source_code_response_data(filename, content, language): } -class SupervisorMixin: - supervisor = xmlrpc.client.ServerProxy(tfwenv.SUPERVISOR_HTTP_URI).supervisor - - def stop_process(self): - with suppress(SupervisorFault): - self.supervisor.stopProcess(self.process_name) - - def start_process(self): - self.supervisor.startProcess(self.process_name) - - def restart_process(self): - self.stop_process() - self.start_process() - - class RateLimiter: def __init__(self, rate_per_second): self.min_interval = 1 / float(rate_per_second)