Skip to content
New issue

Have a question about this project? Sign up for a free GitHub account to open an issue and contact its maintainers and the community.

By clicking “Sign up for GitHub”, you agree to our terms of service and privacy statement. We’ll occasionally send you account related emails.

Already on GitHub? Sign in to your account

chore: remove ARGO code #537

Merged
merged 1 commit into from
Sep 11, 2024
Merged
Show file tree
Hide file tree
Changes from all commits
Commits
File filter

Filter by extension

Filter by extension

Conversations
Failed to load comments.
Loading
Jump to
Jump to file
Failed to load files.
Loading
Diff view
Diff view
21 changes: 14 additions & 7 deletions chord_metadata_service/patients/api_views.py
Original file line number Diff line number Diff line change
Expand Up @@ -43,7 +43,6 @@
FHIRRenderer,
PhenopacketsRenderer,
IndividualCSVRenderer,
ARGORenderer,
IndividualBentoSearchRenderer,
)
from chord_metadata_service.restapi.constants import MODEL_ID_PATTERN
Expand All @@ -69,9 +68,13 @@ class IndividualViewSet(viewsets.ModelViewSet):
"""
serializer_class = IndividualSerializer
pagination_class = LargeResultsSetPagination
renderer_classes = (*api_settings.DEFAULT_RENDERER_CLASSES, FHIRRenderer,
PhenopacketsRenderer, IndividualCSVRenderer, ARGORenderer,
IndividualBentoSearchRenderer)
renderer_classes = (
*api_settings.DEFAULT_RENDERER_CLASSES,
FHIRRenderer,
PhenopacketsRenderer,
IndividualCSVRenderer,
IndividualBentoSearchRenderer,
)
filter_backends = [DjangoFilterBackend, filters.OrderingFilter]
filterset_class = IndividualFilter
ordering_fields = ["id"]
Expand Down Expand Up @@ -151,9 +154,13 @@ class IndividualBatchViewSet(BatchViewSet):

serializer_class = IndividualSerializer
pagination_class = BatchResultsSetPagination
renderer_classes = (*api_settings.DEFAULT_RENDERER_CLASSES, FHIRRenderer,
PhenopacketsRenderer, IndividualCSVRenderer, ARGORenderer,
IndividualBentoSearchRenderer)
renderer_classes = (
*api_settings.DEFAULT_RENDERER_CLASSES,
FHIRRenderer,
PhenopacketsRenderer,
IndividualCSVRenderer,
IndividualBentoSearchRenderer,
)
# Override to infer the renderer based on a `format` argument from the POST request body
content_negotiation_class = FormatInPostContentNegotiation

Expand Down
8 changes: 4 additions & 4 deletions chord_metadata_service/patients/serializers.py
Original file line number Diff line number Diff line change
@@ -1,9 +1,12 @@
from chord_metadata_service.phenopackets.serializers import BiosampleSerializer, SimplePhenopacketSerializer
from chord_metadata_service.restapi.serializers import GenericSerializer
from chord_metadata_service.restapi.fhir_utils import fhir_patient
from chord_metadata_service.restapi.argo_utils import argo_donor
from .models import Individual

__all__ = [
"IndividualSerializer",
]


class IndividualSerializer(GenericSerializer):
biosamples = BiosampleSerializer(read_only=True, many=True, exclude_when_nested=['individual'])
Expand All @@ -15,6 +18,3 @@ class Meta:
# meta info for converting to FHIR
fhir_datatype_plural = 'patients'
class_converter = fhir_patient
# meta info for converting to ARGO
argo_profile_plural = 'donors'
argo_converter = argo_donor
19 changes: 13 additions & 6 deletions chord_metadata_service/phenopackets/api_views.py
Original file line number Diff line number Diff line change
Expand Up @@ -5,9 +5,12 @@
from rest_framework.permissions import AllowAny
from rest_framework.response import Response

from chord_metadata_service.restapi.api_renderers import (PhenopacketsRenderer, FHIRRenderer,
BiosamplesCSVRenderer, ARGORenderer,
IndividualBentoSearchRenderer)
from chord_metadata_service.restapi.api_renderers import (
PhenopacketsRenderer,
FHIRRenderer,
BiosamplesCSVRenderer,
IndividualBentoSearchRenderer,
)
from chord_metadata_service.restapi.constants import MODEL_ID_PATTERN
from chord_metadata_service.restapi.pagination import LargeResultsSetPagination, BatchResultsSetPagination
from chord_metadata_service.restapi.negociation import FormatInPostContentNegotiation
Expand Down Expand Up @@ -109,9 +112,13 @@ class BiosampleBatchViewSet(ExtendedPhenopacketsModelViewSet):
filter_backends = [DjangoFilterBackend]
filterset_class = f.BiosampleFilter
pagination_class = BatchResultsSetPagination
renderer_classes = (*api_settings.DEFAULT_RENDERER_CLASSES, FHIRRenderer,
PhenopacketsRenderer, BiosamplesCSVRenderer, ARGORenderer,
IndividualBentoSearchRenderer)
renderer_classes = (
*api_settings.DEFAULT_RENDERER_CLASSES,
FHIRRenderer,
PhenopacketsRenderer,
BiosamplesCSVRenderer,
IndividualBentoSearchRenderer,
)
content_negotiation_class = FormatInPostContentNegotiation

def _get_filtered_queryset(self, ids_list=None):
Expand Down
32 changes: 12 additions & 20 deletions chord_metadata_service/restapi/api_renderers.py
Original file line number Diff line number Diff line change
Expand Up @@ -12,6 +12,18 @@
from chord_metadata_service.phenopackets.utils import parse_onset
from .jsonld_utils import dataset_to_jsonld

__all__ = [
"FHIRRenderer",
"PhenopacketsRenderer",
"JSONLDDatasetRenderer",
"RDFDatasetRenderer",
"render_age",
"IndividualCSVRenderer",
"BiosamplesCSVRenderer",
"ExperimentCSVRenderer",
"IndividualBentoSearchRenderer",
]

OUTPUT_FORMAT_BENTO_SEARCH_RESULT = "bento_search_result"

register('json-ld', Serializer, 'rdflib_jsonld.serializer', 'JsonLDSerializer')
Expand Down Expand Up @@ -45,26 +57,6 @@ def render(self, data, media_type=None, renderer_context=None):
return super(FHIRRenderer, self).render(final_data, media_type, renderer_context)


class ARGORenderer(JSONRenderer):
media_type = 'application/json'
format = 'argo'

def render(self, data, media_type=None, renderer_context=None):
argo_profile_plural = getattr(
renderer_context.get('view').get_serializer().Meta,
'argo_profile_plural', 'objects'
)
class_converter = getattr(
renderer_context.get('view').get_serializer().Meta,
'argo_converter', 'objects'
)
if 'results' in data:
final_data = {argo_profile_plural: [class_converter(item) for item in data['results']]}
else:
final_data = class_converter(data)
return super(ARGORenderer, self).render(final_data, media_type, renderer_context)


class PhenopacketsRenderer(CamelCaseJSONRenderer):
media_type = 'application/json'
format = 'phenopackets'
Expand Down
32 changes: 0 additions & 32 deletions chord_metadata_service/restapi/argo_utils.py

This file was deleted.