Show More
@@ -355,6 +355,14 b' class TrailingSlashHandler(web.RequestHandler):' | |||
|
355 | 355 | self.redirect(self.request.uri.rstrip('/')) |
|
356 | 356 | |
|
357 | 357 | #----------------------------------------------------------------------------- |
|
358 | # URL pattern fragments for re-use | |
|
359 | #----------------------------------------------------------------------------- | |
|
360 | ||
|
361 | path_regex = r"(?P<path>(?:/.*)*)" | |
|
362 | notebook_name_regex = r"(?P<name>[^/]+\.ipynb)" | |
|
363 | notebook_path_regex = "%s/%s" % (path_regex, notebook_name_regex) | |
|
364 | ||
|
365 | #----------------------------------------------------------------------------- | |
|
358 | 366 | # URL to handler mappings |
|
359 | 367 | #----------------------------------------------------------------------------- |
|
360 | 368 |
@@ -2,7 +2,7 b' import os' | |||
|
2 | 2 | |
|
3 | 3 | from tornado import web |
|
4 | 4 | |
|
5 | from ..base.handlers import IPythonHandler | |
|
5 | from ..base.handlers import IPythonHandler, notebook_path_regex | |
|
6 | 6 | from IPython.nbformat.current import to_notebook_json |
|
7 | 7 | from IPython.nbconvert.exporters.export import exporter_map |
|
8 | 8 | from IPython.utils import tz |
@@ -74,12 +74,10 b' class NbconvertPostHandler(IPythonHandler):' | |||
|
74 | 74 | #----------------------------------------------------------------------------- |
|
75 | 75 | |
|
76 | 76 | _format_regex = r"(?P<format>\w+)" |
|
77 | _path_regex = r"(?P<path>(?:/.*)*)" | |
|
78 | _notebook_name_regex = r"(?P<name>[^/]+\.ipynb)" | |
|
79 | _notebook_path_regex = "%s/%s" % (_path_regex, _notebook_name_regex) | |
|
77 | ||
|
80 | 78 | |
|
81 | 79 | default_handlers = [ |
|
82 |
(r"/nbconvert/%s%s" % (_format_regex, |
|
|
80 | (r"/nbconvert/%s%s" % (_format_regex, notebook_path_regex), | |
|
83 | 81 | NbconvertFileHandler), |
|
84 | 82 | (r"/nbconvert/%s" % _format_regex, NbconvertPostHandler), |
|
85 | 83 | ] No newline at end of file |
@@ -20,8 +20,7 b' import os' | |||
|
20 | 20 | from tornado import web |
|
21 | 21 | HTTPError = web.HTTPError |
|
22 | 22 | |
|
23 | from ..base.handlers import IPythonHandler | |
|
24 | from ..services.notebooks.handlers import _notebook_path_regex, _path_regex | |
|
23 | from ..base.handlers import IPythonHandler, notebook_path_regex, path_regex | |
|
25 | 24 | from ..utils import url_path_join, url_escape |
|
26 | 25 | |
|
27 | 26 | #----------------------------------------------------------------------------- |
@@ -85,7 +84,7 b' class NotebookRedirectHandler(IPythonHandler):' | |||
|
85 | 84 | |
|
86 | 85 | |
|
87 | 86 | default_handlers = [ |
|
88 |
(r"/notebooks%s" % |
|
|
89 |
(r"/notebooks%s" % |
|
|
87 | (r"/notebooks%s" % notebook_path_regex, NotebookHandler), | |
|
88 | (r"/notebooks%s" % path_regex, NotebookRedirectHandler), | |
|
90 | 89 | ] |
|
91 | 90 |
@@ -23,7 +23,9 b' from tornado import web' | |||
|
23 | 23 | from IPython.html.utils import url_path_join, url_escape |
|
24 | 24 | from IPython.utils.jsonutil import date_default |
|
25 | 25 | |
|
26 | from IPython.html.base.handlers import IPythonHandler, json_errors | |
|
26 | from IPython.html.base.handlers import (IPythonHandler, json_errors, | |
|
27 | notebook_path_regex, path_regex, | |
|
28 | notebook_name_regex) | |
|
27 | 29 | |
|
28 | 30 | #----------------------------------------------------------------------------- |
|
29 | 31 | # Notebook web service handlers |
@@ -264,17 +266,14 b' class ModifyNotebookCheckpointsHandler(IPythonHandler):' | |||
|
264 | 266 | #----------------------------------------------------------------------------- |
|
265 | 267 | |
|
266 | 268 | |
|
267 | _path_regex = r"(?P<path>(?:/.*)*)" | |
|
268 | 269 | _checkpoint_id_regex = r"(?P<checkpoint_id>[\w-]+)" |
|
269 | _notebook_name_regex = r"(?P<name>[^/]+\.ipynb)" | |
|
270 | _notebook_path_regex = "%s/%s" % (_path_regex, _notebook_name_regex) | |
|
271 | 270 | |
|
272 | 271 | default_handlers = [ |
|
273 |
(r"/api/notebooks%s/checkpoints" % |
|
|
274 |
(r"/api/notebooks%s/checkpoints/%s" % ( |
|
|
272 | (r"/api/notebooks%s/checkpoints" % notebook_path_regex, NotebookCheckpointsHandler), | |
|
273 | (r"/api/notebooks%s/checkpoints/%s" % (notebook_path_regex, _checkpoint_id_regex), | |
|
275 | 274 | ModifyNotebookCheckpointsHandler), |
|
276 |
(r"/api/notebooks%s" % |
|
|
277 |
(r"/api/notebooks%s" % |
|
|
275 | (r"/api/notebooks%s" % notebook_path_regex, NotebookHandler), | |
|
276 | (r"/api/notebooks%s" % path_regex, NotebookHandler), | |
|
278 | 277 | ] |
|
279 | 278 | |
|
280 | 279 |
@@ -18,9 +18,8 b' Authors:' | |||
|
18 | 18 | import os |
|
19 | 19 | |
|
20 | 20 | from tornado import web |
|
21 | from ..base.handlers import IPythonHandler | |
|
21 | from ..base.handlers import IPythonHandler, notebook_path_regex, path_regex | |
|
22 | 22 | from ..utils import url_path_join, path2url, url2path, url_escape |
|
23 | from ..services.notebooks.handlers import _notebook_path_regex, _path_regex | |
|
24 | 23 | |
|
25 | 24 | #----------------------------------------------------------------------------- |
|
26 | 25 | # Handlers |
@@ -70,8 +69,8 b' class TreeRedirectHandler(IPythonHandler):' | |||
|
70 | 69 | |
|
71 | 70 | |
|
72 | 71 | default_handlers = [ |
|
73 |
(r"/tree%s" % |
|
|
74 |
(r"/tree%s" % |
|
|
72 | (r"/tree%s" % notebook_path_regex, TreeHandler), | |
|
73 | (r"/tree%s" % path_regex, TreeHandler), | |
|
75 | 74 | (r"/tree", TreeHandler), |
|
76 | 75 | (r"/", TreeRedirectHandler), |
|
77 | 76 | ] |
General Comments 0
You need to be logged in to leave comments.
Login now