feat(asyncify): migrate retrieve group (#2494)
This commit is contained in:
@@ -52,7 +52,7 @@ def count_groups(
|
||||
|
||||
|
||||
@router.get("/{group_id}", response_model=Group, operation_id="retrieve_group")
|
||||
def retrieve_group(
|
||||
async def retrieve_group(
|
||||
group_id: str,
|
||||
server: "SyncServer" = Depends(get_letta_server),
|
||||
actor_id: Optional[str] = Header(None, alias="user_id"),
|
||||
@@ -60,10 +60,10 @@ def retrieve_group(
|
||||
"""
|
||||
Retrieve the group by id.
|
||||
"""
|
||||
actor = server.user_manager.get_user_or_default(user_id=actor_id)
|
||||
actor = await server.user_manager.get_actor_or_default_async(actor_id=actor_id)
|
||||
|
||||
try:
|
||||
return server.group_manager.retrieve_group(group_id=group_id, actor=actor)
|
||||
return await server.group_manager.retrieve_group_async(group_id=group_id, actor=actor)
|
||||
except NoResultFound as e:
|
||||
raise HTTPException(status_code=404, detail=str(e))
|
||||
|
||||
|
||||
@@ -52,6 +52,13 @@ class GroupManager:
|
||||
group = GroupModel.read(db_session=session, identifier=group_id, actor=actor)
|
||||
return group.to_pydantic()
|
||||
|
||||
@trace_method
|
||||
@enforce_types
|
||||
async def retrieve_group_async(self, group_id: str, actor: PydanticUser) -> PydanticGroup:
|
||||
async with db_registry.async_session() as session:
|
||||
group = await GroupModel.read_async(db_session=session, identifier=group_id, actor=actor)
|
||||
return group.to_pydantic()
|
||||
|
||||
@trace_method
|
||||
@enforce_types
|
||||
def create_group(self, group: GroupCreate, actor: PydanticUser) -> PydanticGroup:
|
||||
|
||||
Reference in New Issue
Block a user