medved/medved.py

41 lines
909 B
Python
Raw Normal View History

2018-04-02 22:41:10 +00:00
#!/usr/bin/python3
# -*- coding: utf-8 -*-
import time
from Config import cnf
from lib import Logger, Loader
class Core:
2018-04-02 23:47:50 +00:00
"""Core class, contains core services (like listeners, executors, datapool)"""
2018-04-02 22:41:10 +00:00
def __init__(self):
self.cnf = cnf.Core
self.logger = Logger("Core")
self.logger.debug("Loading services")
self._services = []
for service in self.cnf.services:
service = Loader.by_id('services', service)
self._services.append(service)
def start(self):
self.logger.info("Starting")
for service in self._services:
service.start()
self.logger.info("Started")
def stop(self):
self.logger.info("Stopping Core")
for service in self._services:
service.stop()
self.logger.info("Stopped")
if __name__ == '__main__':
core = Core()
core.start()
try:
while True:
time.sleep(1)
except KeyboardInterrupt:
core.stop()