1
0
mirror of https://github.com/netbox-community/netbox.git synced 2024-05-10 07:54:54 +00:00

Removed circuit-specific endpoint for CircuitTerminations

This commit is contained in:
Jeremy Stretch
2017-02-01 15:01:56 -05:00
parent 77e5450746
commit ea51f1c896
4 changed files with 46 additions and 36 deletions

View File

@@ -1,15 +1,11 @@
from django.shortcuts import get_object_or_404
from rest_framework.decorators import detail_route
from rest_framework.mixins import (
CreateModelMixin, DestroyModelMixin, ListModelMixin, RetrieveModelMixin, UpdateModelMixin,
)
from rest_framework.response import Response
from rest_framework.viewsets import GenericViewSet, ModelViewSet
from rest_framework.viewsets import ModelViewSet
from circuits import filters
from circuits.models import Provider, CircuitTermination, CircuitType, Circuit
from circuits.filters import CircuitFilter
from extras.models import Graph, GRAPH_TYPE_PROVIDER
from extras.api.serializers import GraphSerializer
from extras.api.views import CustomFieldModelViewSet
@@ -25,6 +21,7 @@ class ProviderViewSet(WritableSerializerMixin, CustomFieldModelViewSet):
queryset = Provider.objects.all()
serializer_class = serializers.ProviderSerializer
write_serializer_class = serializers.WritableProviderSerializer
filter_class = filters.ProviderFilter
@detail_route()
def graphs(self, request, pk=None):
@@ -51,22 +48,15 @@ class CircuitViewSet(WritableSerializerMixin, CustomFieldModelViewSet):
queryset = Circuit.objects.select_related('type', 'tenant', 'provider')
serializer_class = serializers.CircuitSerializer
write_serializer_class = serializers.WritableCircuitSerializer
filter_class = CircuitFilter
filter_class = filters.CircuitFilter
#
# Circuit Terminations
#
class CircuitTerminationViewSet(RetrieveModelMixin, UpdateModelMixin, DestroyModelMixin, WritableSerializerMixin,
GenericViewSet):
queryset = CircuitTermination.objects.select_related('site', 'interface__device')
class CircuitTerminationViewSet(WritableSerializerMixin, ModelViewSet):
queryset = CircuitTermination.objects.select_related('circuit', 'site', 'interface__device')
serializer_class = serializers.CircuitTerminationSerializer
class NestedCircuitTerminationViewSet(CreateModelMixin, ListModelMixin ,WritableSerializerMixin, GenericViewSet):
serializer_class = serializers.CircuitTerminationSerializer
def get_queryset(self):
circuit = get_object_or_404(Circuit, pk=self.kwargs['pk'])
return CircuitTermination.objects.filter(circuit=circuit).select_related('site', 'interface__device')
write_serializer_class = serializers.WritableCircuitTerminationSerializer
filter_class = filters.CircuitTerminationFilter