Page MenuHomeSoftware Heritage

browseurls.py
No OneTemporary

browseurls.py

# Copyright (C) 2017-2018 The Software Heritage developers
# See the AUTHORS file at the top-level directory of this distribution
# License: GNU General Public License version 3, or any later version
# See top-level LICENSE file for more information
from swh.web.common.urlsindex import UrlsIndex
class BrowseUrls(UrlsIndex):
"""
Class to manage SWH web browse application urls.
"""
scope = 'browse'
class browse_route(object): # noqa: N801
"""
Decorator to ease the registration of a SWH web browse endpoint
Args:
url_patterns: list of url patterns used by Django to identify the browse routes
view_name: the name of the Django view associated to the routes used to
reverse the url
""" # noqa
def __init__(self, *url_patterns, view_name=None):
super().__init__()
self.url_patterns = []
for url_pattern in url_patterns:
self.url_patterns.append('^' + url_pattern + '$')
self.view_name = view_name
def __call__(self, f):
# register the route and its view in the browse endpoints index
for url_pattern in self.url_patterns:
BrowseUrls.add_url_pattern(url_pattern, f, self.view_name)
return f

File Metadata

Mime Type
text/x-python
Expires
Thu, Jul 3, 10:17 AM (2 w, 5 d ago)
Storage Engine
blob
Storage Format
Raw Data
Storage Handle
3354357

Event Timeline