Skip to content

Commit

Permalink
Revert "[ENG-5782] Get citation information (#117)"
Browse files Browse the repository at this point in the history
This reverts commit 99326ba.
  • Loading branch information
brianjgeiger authored Nov 20, 2024
1 parent 99326ba commit 63d39cf
Show file tree
Hide file tree
Showing 17 changed files with 12 additions and 101 deletions.
2 changes: 1 addition & 1 deletion addon_imps/storage/figshare.py
Original file line number Diff line number Diff line change
Expand Up @@ -87,7 +87,7 @@ async def _fetch_articles(self, page_cursor: int) -> list[ItemResultable]:
]

async def _fetch_project_articles(
self, project_id: int | str, page_cursor: int
self, project_id: str, page_cursor: int
) -> list[Article]:
async with self.network.GET(
f"account/projects/{project_id}/articles",
Expand Down
3 changes: 0 additions & 3 deletions addon_service/addon_imp/instantiation.py
Original file line number Diff line number Diff line change
Expand Up @@ -93,6 +93,3 @@ async def get_citation_addon_instance(
account=account,
),
)


get_citation_addon_instance__blocking = async_to_sync(get_citation_addon_instance)
4 changes: 2 additions & 2 deletions addon_service/addon_operation_invocation/serializers.py
Original file line number Diff line number Diff line change
Expand Up @@ -75,8 +75,8 @@ class Meta:
)

included_serializers = {
"thru_account": "addon_service.serializers.AuthorizedAccountSerializer",
"thru_addon": "addon_service.serializers.ConfiguredAddonSerializer",
"thru_account": "addon_service.serializers.AuthorizedStorageAccountSerializer",
"thru_addon": "addon_service.serializers.ConfiguredStorageAddonSerializer",
"operation": "addon_service.serializers.AddonOperationSerializer",
"by_user": "addon_service.serializers.UserReferenceSerializer",
}
Expand Down
34 changes: 0 additions & 34 deletions addon_service/addon_operation_invocation/views.py
Original file line number Diff line number Diff line change
@@ -1,5 +1,3 @@
from rest_framework.response import Response

from addon_service.common.permissions import (
IsAuthenticated,
SessionUserIsOwner,
Expand All @@ -13,14 +11,6 @@
)
from addon_toolkit import AddonOperationType

from ..authorized_account.citation.serializers import (
AuthorizedCitationAccountSerializer,
)
from ..authorized_account.models import AuthorizedAccount
from ..authorized_account.storage.serializers import AuthorizedStorageAccountSerializer
from ..configured_addon.citation.serializers import ConfiguredCitationAddonSerializer
from ..configured_addon.models import ConfiguredAddon
from ..configured_addon.storage.serializers import ConfiguredStorageAddonSerializer
from .models import AddonOperationInvocation
from .serializers import AddonOperationInvocationSerializer

Expand All @@ -44,30 +34,6 @@ def get_permissions(self):
f"no permission implemented for action '{self.action}'"
)

def retrieve_related(self, request, *args, **kwargs):
instance = self.get_related_instance()
if isinstance(instance, AuthorizedAccount):
if hasattr(instance, "authorizedstorageaccount"):
serializer = AuthorizedStorageAccountSerializer(
instance, context={"request": request}
)
else:
serializer = AuthorizedCitationAccountSerializer(
instance, context={"request": request}
)
elif isinstance(instance, ConfiguredAddon):
if hasattr(instance, "configuredstorageaddon"):
serializer = ConfiguredStorageAddonSerializer(
instance, context={"request": request}
)
else:
serializer = ConfiguredCitationAddonSerializer(
instance, context={"request": request}
)
else:
serializer = self.get_related_serializer(instance)
return Response(serializer.data)

def perform_create(self, serializer):
super().perform_create(serializer)
# after creating the AddonOperationInvocation, look into invoking it
Expand Down
8 changes: 5 additions & 3 deletions addon_service/authorized_account/serializers.py
Original file line number Diff line number Diff line change
@@ -1,10 +1,11 @@
from __future__ import annotations

from typing import TYPE_CHECKING

from asgiref.sync import async_to_sync
from django.core.exceptions import ValidationError as ModelValidationError
from rest_framework_json_api import serializers

from addon_service.authorized_account.models import AuthorizedAccount
from addon_service.common.credentials_formats import CredentialsFormats
from addon_service.external_service.models import ExternalService
from addon_service.osf_models.fields import encrypt_string
Expand All @@ -16,6 +17,9 @@
from addon_toolkit import AddonCapabilities


if TYPE_CHECKING:
from addon_service.authorized_account.models import AuthorizedAccount

REQUIRED_FIELDS = frozenset(["url", "account_owner", "authorized_operations"])


Expand Down Expand Up @@ -149,8 +153,6 @@ def update(self, instance, validated_data):
return instance

class Meta:
resource_name = "authorized-accounts"
model = AuthorizedAccount
fields = [
"id",
"url",
Expand Down
6 changes: 0 additions & 6 deletions addon_service/configured_addon/citation/models.py
Original file line number Diff line number Diff line change
@@ -1,6 +1,5 @@
from django.db import models

from addon_service.common.known_imps import AddonImpNumbers
from addon_service.configured_addon.models import ConfiguredAddon
from addon_toolkit.interfaces.citation import CitationConfig

Expand All @@ -20,8 +19,3 @@ class JSONAPIMeta:
@property
def config(self) -> CitationConfig:
return self.base_account.authorizedcitationaccount.config

@property
def external_service_name(self):
number = self.base_account.external_service.int_addon_imp
return AddonImpNumbers(number).name.lower()
3 changes: 0 additions & 3 deletions addon_service/configured_addon/citation/serializers.py
Original file line number Diff line number Diff line change
Expand Up @@ -18,7 +18,6 @@ class ConfiguredCitationAddonSerializer(ConfiguredAddonSerializer):
"""api serializer for the `ConfiguredCitationAddon` model"""

root_folder = serializers.CharField(required=False, allow_blank=True)
external_service_name = serializers.CharField(read_only=True)
url = serializers.HyperlinkedIdentityField(
view_name=view_names.detail_view(RESOURCE_TYPE)
)
Expand Down Expand Up @@ -68,6 +67,4 @@ class Meta:
"connected_capabilities",
"connected_operations",
"connected_operation_names",
"external_service_name",
"external_citation_service",
]
2 changes: 0 additions & 2 deletions addon_service/configured_addon/serializers.py
Original file line number Diff line number Diff line change
Expand Up @@ -52,8 +52,6 @@ def update(self, instance, validated_data):
return super().update(instance, validated_data)

class Meta:
resource_name = "configured-addons"
model = ConfiguredAddon
fields = [
"id",
"url",
Expand Down
Empty file.
1 change: 0 additions & 1 deletion addon_service/external_service/citation/serializers.py
Original file line number Diff line number Diff line change
Expand Up @@ -32,5 +32,4 @@ class Meta:
"display_name",
"url",
"configurable_api_root",
"wb_key",
]
1 change: 0 additions & 1 deletion addon_service/external_service/serializers.py
Original file line number Diff line number Diff line change
Expand Up @@ -28,7 +28,6 @@ def __init__(self, *args, **kwargs):
}

class Meta:
resource_name = "external-services"
fields = [
"id",
"addon_imp",
Expand Down
5 changes: 0 additions & 5 deletions addon_service/resource_reference/models.py
Original file line number Diff line number Diff line change
@@ -1,7 +1,6 @@
from django.db import models

from addon_service.common.base_model import AddonsServiceBaseModel
from addon_service.configured_addon.citation.models import ConfiguredCitationAddon
from addon_service.configured_addon.storage.models import ConfiguredStorageAddon


Expand All @@ -12,10 +11,6 @@ class ResourceReference(AddonsServiceBaseModel):
def configured_storage_addons(self):
return ConfiguredStorageAddon.objects.filter(authorized_resource=self)

@property
def configured_citation_addons(self):
return ConfiguredCitationAddon.objects.filter(authorized_resource=self)

class Meta:
verbose_name = "Resource Reference"
verbose_name_plural = "Resource References"
Expand Down
11 changes: 0 additions & 11 deletions addon_service/resource_reference/serializers.py
Original file line number Diff line number Diff line change
Expand Up @@ -3,7 +3,6 @@
from rest_framework_json_api.utils import get_resource_type_from_model

from addon_service.common import view_names
from addon_service.configured_addon.citation.models import ConfiguredCitationAddon
from addon_service.models import (
ConfiguredStorageAddon,
ResourceReference,
Expand All @@ -24,19 +23,10 @@ class ResourceReferenceSerializer(serializers.HyperlinkedModelSerializer):
queryset=ConfiguredStorageAddon.objects.active(),
related_link_view_name=view_names.related_view(RESOURCE_TYPE),
)
configured_citation_addons = HyperlinkedRelatedField(
many=True,
queryset=ConfiguredCitationAddon.objects.active(),
related_link_view_name=view_names.related_view(RESOURCE_TYPE),
)

included_serializers = {
"configured_storage_addons": (
"addon_service.serializers.ConfiguredStorageAddonSerializer"
),
"configured_citation_addons": (
"addon_service.serializers.ConfiguredCitationAddonSerializer"
),
}

class Meta:
Expand All @@ -46,5 +36,4 @@ class Meta:
"url",
"resource_uri",
"configured_storage_addons",
"configured_citation_addons",
]
8 changes: 0 additions & 8 deletions addon_service/serializers.py
Original file line number Diff line number Diff line change
Expand Up @@ -8,30 +8,25 @@
from addon_service.authorized_account.citation.serializers import (
AuthorizedCitationAccountSerializer,
)
from addon_service.authorized_account.serializers import AuthorizedAccountSerializer
from addon_service.authorized_account.storage.serializers import (
AuthorizedStorageAccountSerializer,
)
from addon_service.configured_addon.citation.serializers import (
ConfiguredCitationAddonSerializer,
)
from addon_service.configured_addon.serializers import ConfiguredAddonSerializer
from addon_service.configured_addon.storage.serializers import (
ConfiguredStorageAddonSerializer,
)
from addon_service.external_service.citation.serializers import (
ExternalCitationServiceSerializer,
)
from addon_service.external_service.serializers import ExternalServiceSerializer
from addon_service.external_service.storage.serializers import (
ExternalStorageServiceSerializer,
)
from addon_service.resource_reference.serializers import ResourceReferenceSerializer
from addon_service.user_reference.serializers import UserReferenceSerializer


# addon_toolkit.interfaces.citation.CitationServiceInterface

__all__ = (
"AuthorizedStorageAccountSerializer",
"ConfiguredStorageAddonSerializer",
Expand All @@ -44,7 +39,4 @@
"AddonOperationInvocationSerializer",
"AddonOperationSerializer",
"UserReferenceSerializer",
"ExternalServiceSerializer",
"ConfiguredAddonSerializer",
"AuthorizedAccountSerializer",
)
14 changes: 0 additions & 14 deletions addon_service/tests/_helpers.py
Original file line number Diff line number Diff line change
Expand Up @@ -262,20 +262,6 @@ def jsonapi_ref(obj) -> dict:
}


def jsonapi_thru_account_ref(obj) -> dict:
return {
"type": "authorized-accounts",
"id": obj.pk,
}


def jsonapi_thru_addon_ref(obj) -> dict:
return {
"type": "configured-addons",
"id": obj.pk,
}


def get_test_request(user=None, method="get", path="", cookies=None):
_factory_method = getattr(APIRequestFactory(), method)
_request = _factory_method(path) # note that path is optional for view tests
Expand Down
Original file line number Diff line number Diff line change
Expand Up @@ -13,8 +13,7 @@
from addon_service.tests import _factories
from addon_service.tests._helpers import (
MockOSF,
jsonapi_thru_account_ref,
jsonapi_thru_addon_ref,
jsonapi_ref,
)


Expand Down Expand Up @@ -95,11 +94,9 @@ def _post_invocation(
):
_relationships = {}
if thru_addon is not None:
_relationships["thru_addon"] = {"data": jsonapi_thru_addon_ref(thru_addon)}
_relationships["thru_addon"] = {"data": jsonapi_ref(thru_addon)}
if thru_account is not None:
_relationships["thru_account"] = {
"data": jsonapi_thru_account_ref(thru_account)
}
_relationships["thru_account"] = {"data": jsonapi_ref(thru_account)}
_payload = {
"data": {
"type": "addon-operation-invocations",
Expand Down
Original file line number Diff line number Diff line change
Expand Up @@ -161,7 +161,7 @@ def test_get(self):
with self.subTest("Confirm expected relationships"):
self.assertEqual(
json.loads(_resp.rendered_content)["data"]["relationships"].keys(),
{"configured_storage_addons", "configured_citation_addons"},
{"configured_storage_addons"},
)

def test_unauthorized__private_resource(self):
Expand Down

0 comments on commit 63d39cf

Please sign in to comment.