api: check hoster state
This commit is contained in:
parent
3707469eed
commit
8e5b0d8afc
1 changed files with 9 additions and 2 deletions
|
@ -1,4 +1,5 @@
|
||||||
from django.http import Http404
|
from django.http import Http404
|
||||||
|
from rest_framework.decorators import detail_route
|
||||||
from rest_framework.response import Response
|
from rest_framework.response import Response
|
||||||
from rest_framework.viewsets import ViewSet
|
from rest_framework.viewsets import ViewSet
|
||||||
|
|
||||||
|
@ -11,11 +12,17 @@ class HosterViewSet(ViewSet):
|
||||||
Get Package Hosters
|
Get Package Hosters
|
||||||
"""
|
"""
|
||||||
def list(self, request, version=None):
|
def list(self, request, version=None):
|
||||||
serializer = HosterSerializer(hosters.values(), many=True, context={'request': request})
|
serializer = HosterSerializer(hosters.values(), many=True)
|
||||||
return Response(serializer.data)
|
return Response(serializer.data)
|
||||||
|
|
||||||
def retrieve(self, request, pk=None, version=None):
|
def retrieve(self, request, pk=None, version=None):
|
||||||
if pk not in hosters:
|
if pk not in hosters:
|
||||||
raise Http404
|
raise Http404
|
||||||
serializer = HosterSerializer(hosters[pk], context={'request': request})
|
serializer = HosterSerializer(hosters[pk])
|
||||||
return Response(serializer.data)
|
return Response(serializer.data)
|
||||||
|
|
||||||
|
@detail_route(methods=['get'])
|
||||||
|
def state(self, request, pk=None, version=None):
|
||||||
|
if pk not in hosters:
|
||||||
|
raise Http404
|
||||||
|
return Response(hosters[pk].get_state(request))
|
||||||
|
|
Loading…
Add table
Add a link
Reference in a new issue