handlers.py
31 lines
| 914 B
| text/x-python
|
PythonLexer
Scott Sanderson
|
r18534 | #encoding: utf-8 | ||
Thomas Kluyver
|
r18480 | """Tornado handlers for the terminal emulator.""" | ||
# Copyright (c) IPython Development Team. | ||||
# Distributed under the terms of the Modified BSD License. | ||||
Thomas Kluyver
|
r18494 | import tornado | ||
Thomas Kluyver
|
r18480 | from tornado import web | ||
Thomas Kluyver
|
r18481 | import terminado | ||
Thomas Kluyver
|
r18480 | from ..base.handlers import IPythonHandler | ||
class TerminalHandler(IPythonHandler): | ||||
Thomas Kluyver
|
r18482 | """Render the terminal interface.""" | ||
Thomas Kluyver
|
r18480 | @web.authenticated | ||
Thomas Kluyver
|
r18482 | def get(self, term_name): | ||
self.write(self.render_template('terminal.html', | ||||
ws_path="terminals/websocket/%s" % term_name)) | ||||
Thomas Kluyver
|
r18480 | |||
Thomas Kluyver
|
r18484 | class TermSocket(terminado.TermSocket, IPythonHandler): | ||
Min RK
|
r21303 | def set_default_headers(self): | ||
pass | ||||
Thomas Kluyver
|
r18484 | def get(self, *args, **kwargs): | ||
if not self.get_current_user(): | ||||
raise web.HTTPError(403) | ||||
Min RK
|
r18739 | return super(TermSocket, self).get(*args, **kwargs) | ||
Thomas Kluyver
|
r18546 | |||
def clear_cookie(self, *args, **kwargs): | ||||
"""meaningless for websockets""" | ||||
pass | ||||
Thomas Kluyver
|
r18494 | |||