2021-10-12 12:27:12 -04:00
|
|
|
from rest_framework.routers import APIRootView
|
|
|
|
|
|
|
|
from extras.api.views import CustomFieldModelViewSet
|
|
|
|
from wireless import filtersets
|
|
|
|
from wireless.models import *
|
|
|
|
from . import serializers
|
|
|
|
|
|
|
|
|
|
|
|
class WirelessRootView(APIRootView):
|
|
|
|
"""
|
|
|
|
Wireless API root view
|
|
|
|
"""
|
|
|
|
def get_view_name(self):
|
|
|
|
return 'Wireless'
|
|
|
|
|
|
|
|
|
2021-10-13 16:40:12 -04:00
|
|
|
class WirelessLANGroupViewSet(CustomFieldModelViewSet):
|
|
|
|
queryset = WirelessLANGroup.objects.add_related_count(
|
|
|
|
WirelessLANGroup.objects.all(),
|
|
|
|
WirelessLAN,
|
|
|
|
'group',
|
|
|
|
'wirelesslan_count',
|
|
|
|
cumulative=True
|
|
|
|
)
|
|
|
|
serializer_class = serializers.WirelessLANGroupSerializer
|
|
|
|
filterset_class = filtersets.WirelessLANGroupFilterSet
|
|
|
|
|
|
|
|
|
2021-10-12 17:02:53 -04:00
|
|
|
class WirelessLANViewSet(CustomFieldModelViewSet):
|
2021-10-13 09:46:17 -04:00
|
|
|
queryset = WirelessLAN.objects.prefetch_related('vlan', 'tags')
|
2021-10-12 17:02:53 -04:00
|
|
|
serializer_class = serializers.WirelessLANSerializer
|
|
|
|
filterset_class = filtersets.WirelessLANFilterSet
|
2021-10-13 09:46:17 -04:00
|
|
|
|
|
|
|
|
|
|
|
class WirelessLinkViewSet(CustomFieldModelViewSet):
|
|
|
|
queryset = WirelessLink.objects.prefetch_related('interface_a', 'interface_b', 'tags')
|
|
|
|
serializer_class = serializers.WirelessLinkSerializer
|
|
|
|
filterset_class = filtersets.WirelessLinkFilterSet
|