Queue cleaning on state change implemented
This commit is contained in:
parent
e0861f5c68
commit
4abc0d9fa3
@ -12,6 +12,11 @@ secret = b'give_a_secret_string_here'
|
|||||||
server_ip = '127.0.0.1'
|
server_ip = '127.0.0.1'
|
||||||
server_port = 10001
|
server_port = 10001
|
||||||
|
|
||||||
|
LOG_TARGET_STDOUT = 'stdout'
|
||||||
|
LOG_TARGET_FILE = 'logfile'
|
||||||
|
LOG_TARGET = LOG_TARGET_STDOUT
|
||||||
|
|
||||||
|
|
||||||
SHORT_FMT = "%(asctime)s: %(levelname)-7s - %(message)s"
|
SHORT_FMT = "%(asctime)s: %(levelname)-7s - %(message)s"
|
||||||
""" A short formatter including the most important information"""
|
""" A short formatter including the most important information"""
|
||||||
LONG_FMT = """~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
|
LONG_FMT = """~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
|
||||||
|
2
leyk.py
2
leyk.py
@ -10,7 +10,7 @@ import time
|
|||||||
|
|
||||||
|
|
||||||
if __name__ == '__main__':
|
if __name__ == '__main__':
|
||||||
report.appLoggingConfigure(os.path.dirname(__file__), 'logfile', config.loggers)
|
report.appLoggingConfigure(os.path.dirname(__file__), config.LOG_TARGET, config.loggers)
|
||||||
s = tcp_socket.tcp_server_stp(config.server_ip, port=config.server_port)
|
s = tcp_socket.tcp_server_stp(config.server_ip, port=config.server_port)
|
||||||
prot = protocol.my_server_protocol(s, secret=config.secret)
|
prot = protocol.my_server_protocol(s, secret=config.secret)
|
||||||
while True:
|
while True:
|
||||||
|
@ -290,6 +290,7 @@ class leyk(object):
|
|||||||
self._task_1s = task.periodic(1, self.task_1s)
|
self._task_1s = task.periodic(1, self.task_1s)
|
||||||
self._task_1s.run()
|
self._task_1s.run()
|
||||||
self.sm_mode.register_state_change_callback(self.sm_mode.STATE_MANUAL, None, self._queue.clean_queue)
|
self.sm_mode.register_state_change_callback(self.sm_mode.STATE_MANUAL, None, self._queue.clean_queue)
|
||||||
|
self.sm_day_state.register_state_change_callback(None, None, self.clean_queue)
|
||||||
self.sm_day_state.register_state_change_callback(self.sm_day_state.STATE_SLEEP, None, self.sm_day_state.report_sunset_sunrise)
|
self.sm_day_state.register_state_change_callback(self.sm_day_state.STATE_SLEEP, None, self.sm_day_state.report_sunset_sunrise)
|
||||||
self.sm_day_state.register_state_change_callback(self.sm_day_state.STATE_SLEEP, None, self.fill_sleep_queue)
|
self.sm_day_state.register_state_change_callback(self.sm_day_state.STATE_SLEEP, None, self.fill_sleep_queue)
|
||||||
self.sm_day_state.register_state_change_callback(self.sm_day_state.STATE_SUNRISE, None, self.sm_day_state.report_sunset_sunrise)
|
self.sm_day_state.register_state_change_callback(self.sm_day_state.STATE_SUNRISE, None, self.sm_day_state.report_sunset_sunrise)
|
||||||
@ -413,6 +414,11 @@ class leyk(object):
|
|||||||
time.sleep(0.2)
|
time.sleep(0.2)
|
||||||
cnt += 1
|
cnt += 1
|
||||||
|
|
||||||
|
def clean_queue(self):
|
||||||
|
if self._queue.qsize() > 0:
|
||||||
|
logger.info('Cleaning up remaining %d elements from queue', self._queue.qsize())
|
||||||
|
self._queue.clean_queue()
|
||||||
|
|
||||||
def fill_wake_queue(self):
|
def fill_wake_queue(self):
|
||||||
no_delay = self.sm_day_state.previous_state_was(self.sm_day_state.STATE_IDLE)
|
no_delay = self.sm_day_state.previous_state_was(self.sm_day_state.STATE_IDLE)
|
||||||
# WAKE
|
# WAKE
|
||||||
|
Loading…
x
Reference in New Issue
Block a user