Return the response for exact PackageURLs requested for.
(self, request)
| 600 | pagination_class=None, |
| 601 | ) |
| 602 | def bulk_lookup(self, request): |
| 603 | """ |
| 604 | Return the response for exact PackageURLs requested for. |
| 605 | """ |
| 606 | serializer = self.serializer_class(data=request.data) |
| 607 | if not serializer.is_valid(): |
| 608 | return Response( |
| 609 | status=status.HTTP_400_BAD_REQUEST, |
| 610 | data={ |
| 611 | "error": serializer.errors, |
| 612 | "message": "A non-empty 'purls' list of PURLs is required.", |
| 613 | }, |
| 614 | ) |
| 615 | validated_data = serializer.validated_data |
| 616 | purls = validated_data.get("purls") |
| 617 | |
| 618 | return Response( |
| 619 | PackageSerializer( |
| 620 | Package.objects.for_purls(purls).with_is_vulnerable(), |
| 621 | many=True, |
| 622 | context={"request": request}, |
| 623 | ).data |
| 624 | ) |
| 625 | |
| 626 | |
| 627 | class VulnerabilityFilterSet(filters.FilterSet): |
nothing calls this directly
no test coverage detected