mirror of
https://github.com/avatao-content/test-tutorial-framework
synced 2024-11-15 03:47:17 +00:00
22 lines
930 B
Python
22 lines
930 B
Python
|
from tornado.ioloop import IOLoop
|
||
|
|
||
|
from tfw.components.source_code_event_handler import SourceCodeEventHandler
|
||
|
from tfw.components.terminado_event_handler import TerminadoEventHandler
|
||
|
from tfw.components.process_managing_event_handler import ProcessManagingEventHandler
|
||
|
from tfw.config import tfwenv
|
||
|
from tfw.config.logs import logging
|
||
|
log = logging.getLogger(__name__)
|
||
|
|
||
|
|
||
|
if __name__ == '__main__':
|
||
|
ide = SourceCodeEventHandler(key='webide', directory=tfwenv.WEBIDE_WD, exclude=['__pycache__'])
|
||
|
terminado = TerminadoEventHandler(key='shell')
|
||
|
terminado.historymonitor.subscribe_callback(callback=lambda hist: log.debug('User executed command: "{}"'.format(hist[-1])))
|
||
|
processmanager = ProcessManagingEventHandler(key='processmanager', dirmonitor=ide.monitor)
|
||
|
|
||
|
eventhandlers = {ide, terminado, processmanager}
|
||
|
try:
|
||
|
IOLoop.instance().start()
|
||
|
finally:
|
||
|
for eh in eventhandlers: eh.cleanup()
|