| OLD | NEW |
| 1 # Copyright (c) 2012 The Chromium Authors. All rights reserved. | 1 # Copyright (c) 2012 The Chromium Authors. All rights reserved. |
| 2 # Use of this source code is governed by a BSD-style license that can be | 2 # Use of this source code is governed by a BSD-style license that can be |
| 3 # found in the LICENSE file. | 3 # found in the LICENSE file. |
| 4 | 4 |
| 5 import time | 5 import time |
| 6 | 6 |
| 7 from admin_servlets import (DumpRefreshServlet, EnqueueServlet, | 7 from admin_servlets import (QueryCommitServlet, FlushMemcacheServlet, |
| 8 QueryCommitServlet, ResetCommitServlet) | 8 UpdateCacheServlet) |
| 9 from cron_servlet import CronServlet | |
| 10 from instance_servlet import InstanceServlet | 9 from instance_servlet import InstanceServlet |
| 11 from patch_servlet import PatchServlet | 10 from patch_servlet import PatchServlet |
| 12 from refresh_servlet import RefreshServlet | |
| 13 from servlet import Servlet, Request, Response | 11 from servlet import Servlet, Request, Response |
| 14 from test_servlet import TestServlet | 12 from test_servlet import TestServlet |
| 15 | 13 |
| 16 | 14 |
| 17 _DEFAULT_SERVLET = InstanceServlet.GetConstructor() | 15 _DEFAULT_SERVLET = InstanceServlet.GetConstructor() |
| 18 | 16 |
| 19 | 17 |
| 20 _SERVLETS = { | 18 _SERVLETS = { |
| 21 'cron': CronServlet, | |
| 22 'enqueue': EnqueueServlet, | |
| 23 'patch': PatchServlet, | 19 'patch': PatchServlet, |
| 24 'query_commit': QueryCommitServlet, | 20 'query_commit': QueryCommitServlet, |
| 25 'refresh': RefreshServlet, | 21 'flush_memcache': FlushMemcacheServlet, |
| 26 'reset_commit': ResetCommitServlet, | 22 'update_cache': UpdateCacheServlet, |
| 27 'test': TestServlet, | 23 'test': TestServlet, |
| 28 'dump_refresh': DumpRefreshServlet, | |
| 29 } | 24 } |
| 30 | 25 |
| 31 | 26 |
| 32 class Handler(Servlet): | 27 class Handler(Servlet): |
| 33 def Get(self): | 28 def Get(self): |
| 34 path = self._request.path | 29 path = self._request.path |
| 35 | 30 |
| 36 if path.startswith('_'): | 31 if path.startswith('_'): |
| 37 servlet_path = path[1:] | 32 servlet_path = path[1:] |
| 38 if not '/' in servlet_path: | 33 if not '/' in servlet_path: |
| 39 servlet_path += '/' | 34 servlet_path += '/' |
| 40 servlet_name, servlet_path = servlet_path.split('/', 1) | 35 servlet_name, servlet_path = servlet_path.split('/', 1) |
| 41 servlet = _SERVLETS.get(servlet_name) | 36 servlet = _SERVLETS.get(servlet_name) |
| 42 if servlet is None: | 37 if servlet is None: |
| 43 return Response.NotFound('"%s" servlet not found' % servlet_path) | 38 return Response.NotFound('"%s" servlet not found' % servlet_path) |
| 44 else: | 39 else: |
| 45 servlet_path = path | 40 servlet_path = path |
| 46 servlet = _DEFAULT_SERVLET | 41 servlet = _DEFAULT_SERVLET |
| 47 | 42 |
| 48 return servlet(Request(servlet_path, | 43 return servlet(Request(servlet_path, |
| 49 self._request.host, | 44 self._request.host, |
| 50 self._request.headers, | 45 self._request.headers, |
| 51 self._request.arguments)).Get() | 46 self._request.arguments)).Get() |
| OLD | NEW |