Skip to content

Commit 33799a1

Browse files
committed
fix
1 parent 7d834ce commit 33799a1

File tree

3 files changed

+9
-13
lines changed

3 files changed

+9
-13
lines changed

services/web/server/src/simcore_service_webserver/groups/_classifiers_service.py

Lines changed: 2 additions & 2 deletions
Original file line numberDiff line numberDiff line change
@@ -122,13 +122,13 @@ async def _build_rrids_tree_view(
122122
service = ScicrunchResourcesService(self.app)
123123

124124
flat_tree_view: dict[TreePath, ClassifierItem] = {}
125-
for resource in await service.list_resources(include_url=True):
125+
for resource in await service.list_resources():
126126
try:
127127
validated_item = ClassifierItem(
128128
classifier=resource.rrid,
129129
display_name=resource.name.title(),
130130
short_description=resource.description,
131-
url=resource.url,
131+
url=service.get_resolver_web_url(resource.rrid),
132132
)
133133

134134
node = TypeAdapter(TreePath).validate_python(

services/web/server/src/simcore_service_webserver/scicrunch/_service.py

Lines changed: 6 additions & 9 deletions
Original file line numberDiff line numberDiff line change
@@ -6,7 +6,7 @@
66

77
from aiohttp import web
88
from common_library.logging.logging_errors import create_troubleshooting_log_kwargs
9-
from pydantic import ValidationError
9+
from pydantic import HttpUrl, ValidationError
1010

1111
from ._repository import ScicrunchResourcesRepository
1212
from .models import ResearchResource, ResearchResourceAtdB, ResourceHit
@@ -23,7 +23,7 @@ def __init__(self, app: web.Application):
2323
self._repo = ScicrunchResourcesRepository.create_from_app(app)
2424
self._scicrunch = SciCrunch.get_instance(self.app)
2525

26-
async def list_resources(self, include_url: bool = False) -> list[ResearchResource]:
26+
async def list_resources(self) -> list[ResearchResource]:
2727
"""List all research resources as domain models."""
2828
rows = await self._repo.list_all_resources()
2929
if not rows:
@@ -33,13 +33,6 @@ async def list_resources(self, include_url: bool = False) -> list[ResearchResour
3333
for row in rows:
3434
try:
3535
resource_data = dict(row)
36-
37-
# Add resolver URL if requested
38-
if include_url:
39-
resource_data["url"] = self._scicrunch.get_resolver_web_url(
40-
row.rrid
41-
)
42-
4336
resource = ResearchResource.model_validate(resource_data)
4437
resources.append(resource)
4538
except ValidationError as err:
@@ -54,6 +47,10 @@ async def list_resources(self, include_url: bool = False) -> list[ResearchResour
5447

5548
return resources
5649

50+
def get_resolver_web_url(self, rrid: str) -> HttpUrl:
51+
"""Get the resolver web URL for a given RRID."""
52+
return self._scicrunch.get_resolver_web_url(rrid)
53+
5754
async def get_resource_atdb(self, rrid: str) -> ResearchResourceAtdB | None:
5855
"""Get resource with all database fields."""
5956
row = await self._repo.get_resource_by_rrid(rrid)

services/web/server/src/simcore_service_webserver/scicrunch/models.py

Lines changed: 1 addition & 2 deletions
Original file line numberDiff line numberDiff line change
@@ -6,7 +6,7 @@
66
import re
77
from datetime import datetime
88

9-
from pydantic import BaseModel, ConfigDict, Field, HttpUrl, field_validator
9+
from pydantic import BaseModel, ConfigDict, Field, field_validator
1010

1111
logger = logging.getLogger(__name__)
1212

@@ -62,7 +62,6 @@ class ResearchResource(BaseModel):
6262
)
6363
name: str
6464
description: str
65-
url: HttpUrl | None = None
6665

6766
@field_validator("rrid", mode="before")
6867
@classmethod

0 commit comments

Comments
 (0)