def retrieve(self, _request, pk=None): """Handle retrieve requests""" for checker in load_checker_classes(): if checker.get_type() == pk: serializer = serializers.ServiceHandlerSerializer( self._build_object(checker)) return Response(serializer.data)
def test_load_checkers(self): checkers = load_checker_classes() self.assertTrue(checkers, msg="no service checkers found") for checker in checkers: self.assertTrue(issubclass(checker, AbstractChecker)) self.assertFalse(checker is AbstractChecker, msg="AbstractChecker returned as real checker")
def _build_checker_choices(): checkers = load_checker_classes() choices = [] for checker in checkers: name = checker.getType() descr = [] if checker.DESCRIPTION: descr.append(checker.DESCRIPTION) if not checker.IPV6_SUPPORT: descr.append("Not IPv6 compatible") descr = "; ".join(descr) descr = "%s (%s)" % (name, descr) if descr else name choices.append((name, descr)) return choices
def list(self, _request): """Handle list requests""" queryset = [self._build_object(c) for c in load_checker_classes()] serializer = serializers.ServiceHandlerSerializer(queryset, many=True) return Response(serializer.data)