032: final — async_superset_client collapse, profile/superset_lookup async

This commit is contained in:
2026-06-04 20:37:55 +03:00
parent 5d2813f173
commit 3bb5e6dde7
5 changed files with 36 additions and 601 deletions

View File

@@ -130,12 +130,13 @@ class ProfileService:
# region lookup_superset_accounts [TYPE Function]
# @BRIEF Delegate to SupersetLookupService.
def lookup_superset_accounts(
# @SIDE_EFFECT Асинхронный HTTP-вызов к Superset API.
async def lookup_superset_accounts(
self,
current_user: User,
request: SupersetAccountLookupRequest,
) -> SupersetAccountLookupResponse:
return self.lookup_service.lookup_superset_accounts(current_user, request)
return await self.lookup_service.lookup_superset_accounts(current_user, request)
# endregion lookup_superset_accounts

View File

@@ -18,7 +18,7 @@
from typing import Any
from ..core.logger import belief_scope, logger
from ..core.superset_client import SupersetClient
from ..core.async_superset_client import AsyncSupersetClient
from ..core.superset_profile_lookup import SupersetAccountLookupAdapter
from ..schemas.profile import (
SupersetAccountCandidate,
@@ -47,9 +47,10 @@ class SupersetLookupService:
# #region lookup_superset_accounts [TYPE Function]
# @BRIEF Query Superset users in selected environment and project canonical account candidates.
# @SIDE_EFFECT Асинхронный HTTP-вызов к Superset API.
# @PRE current_user is authenticated and environment_id exists.
# @POST Returns success payload or degraded payload with warning while preserving manual fallback.
def lookup_superset_accounts(
async def lookup_superset_accounts(
self,
current_user: Any,
request: SupersetAccountLookupRequest,
@@ -82,12 +83,12 @@ class SupersetLookupService:
try:
logger.reason("Performing Superset account lookup")
superset_client = SupersetClient(environment)
superset_client = AsyncSupersetClient(environment)
adapter = SupersetAccountLookupAdapter(
network_client=superset_client.network,
network_client=superset_client.client,
environment_id=request.environment_id,
)
lookup_result = adapter.get_users_page(
lookup_result = await adapter.get_users_page(
search=request.search,
page_index=request.page_index,
page_size=request.page_size,