| import os |
| from django.conf import urls |
| from django.views import generic |
| |
| |
| def generate_patterns(django_name, gwt_name): |
| """ |
| Generates the common URL patterns for the given names |
| |
| @param django_name the full name of the Django application |
| (e.g., frontend.afe) |
| @param gwt_name the name of the GWT project (e.g., AfeClient) |
| @return the common standard and the debug pattern lists, as a tuple |
| """ |
| |
| pattern_list = urls.patterns( |
| django_name, |
| (r'^(?:|noauth/)rpc/', 'views.handle_rpc'), |
| (r'^rpc_doc', 'views.rpc_documentation'), |
| ) |
| |
| debug_pattern_list = urls.patterns('', |
| # for GWT hosted mode |
| (r'^(?P<forward_addr>autotest.*)', |
| 'autotest_lib.frontend.afe.views.gwt_forward'), |
| |
| # for GWT compiled files |
| (r'^client/(?P<path>.*)$', 'django.views.static.serve', |
| {'document_root': os.path.join(os.path.dirname(__file__), '..', |
| 'frontend', 'client', 'www')}), |
| # redirect / to compiled client |
| (r'^$', generic.RedirectView.as_view( |
| url='client/autotest.%(name)s/%(name)s.html' |
| % dict(name=gwt_name))), |
| ) |
| |
| return (pattern_list, debug_pattern_list) |