2022-05-23 00:16:32 +04:00

33 lines
853 B
Python

import json
from tornado import web, gen
from ..base.handlers import APIHandler
class TerminalRootHandler(APIHandler):
@web.authenticated
def get(self):
models = self.terminal_manager.list()
self.finish(json.dumps(models))
@web.authenticated
def post(self):
"""POST /terminals creates a new terminal and redirects to it"""
model = self.terminal_manager.create()
self.finish(json.dumps(model))
class TerminalHandler(APIHandler):
SUPPORTED_METHODS = ('GET', 'DELETE')
@web.authenticated
def get(self, name):
model = self.terminal_manager.get(name)
self.finish(json.dumps(model))
@web.authenticated
@gen.coroutine
def delete(self, name):
yield self.terminal_manager.terminate(name, force=True)
self.set_status(204)
self.finish()