def update(self, request, *args, **kwargs): namespace = self.kwargs['namespace'] name = self.kwargs['name'] namespace_obj = get_object_or_404(models.Namespace, name=namespace) self.check_object_permissions(self.request, namespace_obj) serializer = CollectionSerializer(data=request.data, context={'request': request}) serializer.is_valid(raise_exception=True) data = serializer.validated_data collection = galaxy_pulp.models.Collection( deprecated=data.get('deprecated', False)) api = galaxy_pulp.GalaxyCollectionsApi(pulp.get_client()) response = api.put( prefix=settings.X_PULP_API_PREFIX, namespace=namespace, name=name, collection=collection, ) return Response(response.to_dict())
def retrieve(self, request, *args, **kwargs): api = galaxy_pulp.GalaxyCollectionsApi(pulp.get_client()) response = api.get(prefix=settings.API_PATH_PREFIX, namespace=self.kwargs['namespace'], name=self.kwargs['name']) return Response(response)
def list(self, request, *args, **kwargs): self.paginator.init_from_request(request) params = self.request.query_params.dict() params.update({ 'offset': self.paginator.offset, 'limit': self.paginator.limit, }) api = galaxy_pulp.GalaxyCollectionsApi(pulp.get_client()) response = api.list(prefix=settings.API_PATH_PREFIX, **params) return self.paginator.paginate_proxy_response(response.results, response.count)