"""kvstore URL Configuration

The `urlpatterns` list routes URLs to views. For more information please see:
    https://docs.djangoproject.com/en/1.10/topics/http/urls/
Examples:
Function views
    1. Add an import:  from my_app import views
    2. Add a URL to urlpatterns:  url(r'^$', views.home, name='home')
Class-based views
    1. Add an import:  from other_app.views import Home
    2. Add a URL to urlpatterns:  url(r'^$', Home.as_view(), name='home')
Including another URLconf
    1. Import the include() function: from django.conf.urls import url, include
    2. Add a URL to urlpatterns:  url(r'^blog/', include('blog.urls'))
"""
from django.conf.urls import url
from django.contrib import admin
from django.http import JsonResponse

from . import views

urlpatterns = [
    url(r'^admin/', admin.site.urls),
    url(r'^api/stores$', views.StoreListView.as_view()),
    url(r'^api/stores/(?P<store_id>[\w-]{36})$',
        views.StoreDetailView.as_view()),
    url(r'^api/stores/(?P<store_id>[\w-]{36})/keys$',
        views.KeyListView.as_view()),
    url(r'^api/stores/(?P<store_id>[\w-]{36})/tokens$',
        views.TokenListView.as_view()),
    url(r'^api/stores/(?P<store_id>[\w-]{36})/tokens/(?P<token_id>[\w-]{36})$',
        views.TokenDetailView.as_view()),
    url(r'^api/stores/(?P<store_id>[\w-]{36})/values$',
        views.ValueListView.as_view()),
    url(r'^api/stores/(?P<store_id>[\w-]{36})/values/(?P<key>[\w-]{,255})$',
        views.ValueDetailView.as_view()),
]


def handler403(request, reason=None):
    return JsonResponse({'error': 'Not authorized.'}, status=403)


def handler404(request):
    return JsonResponse({'error': 'Not found.'}, status=404)

"""kvstore URL Configuration

The `urlpatterns` list routes URLs to views. For more information please see:
    https://docs.djangoproject.com/en/1.10/topics/http/urls/
Examples:
Function views
    1. Add an import:  from my_app import views
    2. Add a URL to urlpatterns:  url(r'^$', views.home, name='home')
Class-based views
    1. Add an import:  from other_app.views import Home
    2. Add a URL to urlpatterns:  url(r'^$', Home.as_view(), name='home')
Including another URLconf
    1. Import the include() function: from django.conf.urls import url, include
    2. Add a URL to urlpatterns:  url(r'^blog/', include('blog.urls'))
"""
from django.conf.urls import url
from django.contrib import admin
from django.http import JsonResponse

from . import views

urlpatterns = [
    url(r'^admin/', admin.site.urls),
    url(r'^api/stores$', views.StoreListView.as_view()),
    url(r'^api/stores/(?P<store_id>[\w-]{36})$',
        views.StoreDetailView.as_view()),
    url(r'^api/stores/(?P<store_id>[\w-]{36})/keys$',
        views.KeyListView.as_view()),
    url(r'^api/stores/(?P<store_id>[\w-]{36})/tokens$',
        views.TokenListView.as_view()),
    url(r'^api/stores/(?P<store_id>[\w-]{36})/tokens/(?P<token_id>[\w-]{36})$',
        views.TokenDetailView.as_view()),
    url(r'^api/stores/(?P<store_id>[\w-]{36})/values$',
        views.ValueListView.as_view()),
    url(r'^api/stores/(?P<store_id>[\w-]{36})/values/(?P<key>[\w-]{,255})$',
        views.ValueDetailView.as_view()),
]


def handler403(request, reason=None):
    return JsonResponse({'error': 'Not authorized.'}, status=403)


def handler404(request):
    return JsonResponse({'error': 'Not found.'}, status=404)

kvstore URL Configuration  The `urlpatterns` list routes URLs to views. For more information please see:     https://docs.djangoproject.com/en/1.10/topics/http/urls/ Examples: Function views     1. Add an import:  from my_app import views     2. Add a URL to urlpatterns:  url(r'^$', views.home, name='home') Class-based views     1. Add an import:  from other_app.views import Home     2. Add a URL to urlpatterns:  url(r'^$', Home.as_view(), name='home') Including another URLconf     1. Import the include() function: from django.conf.urls import url, include     2. Add a URL to urlpatterns:  url(r'^blog/', include('blog.urls'))