Skip to content

Commit 4065830

Browse files
committed
Address PR comments
1 parent 24370ba commit 4065830

File tree

2 files changed

+31
-40
lines changed

2 files changed

+31
-40
lines changed

services/web/server/src/simcore_service_webserver/functions/_functions_repository.py

Lines changed: 7 additions & 34 deletions
Original file line numberDiff line numberDiff line change
@@ -663,26 +663,10 @@ async def update_function_job_status(
663663
app: web.Application,
664664
connection: AsyncConnection | None = None,
665665
*,
666-
user_id: UserID,
667-
product_name: ProductName,
668666
function_job_id: FunctionJobID,
669667
job_status: FunctionJobStatus,
670-
check_write_permissions: bool = True,
671668
) -> FunctionJobStatus:
672669
async with transaction_context(get_asyncpg_engine(app), connection) as transaction:
673-
checked_permissions: list[Literal["read", "write", "execute"]] = ["read"]
674-
if check_write_permissions:
675-
checked_permissions.append("write")
676-
await check_user_permissions(
677-
app,
678-
connection=transaction,
679-
user_id=user_id,
680-
product_name=product_name,
681-
object_type="function_job",
682-
object_id=function_job_id,
683-
permissions=checked_permissions,
684-
)
685-
686670
result = await transaction.execute(
687671
function_jobs_table.update()
688672
.where(function_jobs_table.c.uuid == function_job_id)
@@ -701,26 +685,10 @@ async def update_function_job_outputs(
701685
app: web.Application,
702686
connection: AsyncConnection | None = None,
703687
*,
704-
user_id: UserID,
705-
product_name: ProductName,
706688
function_job_id: FunctionJobID,
707689
outputs: FunctionOutputs,
708-
check_write_permissions: bool = True,
709690
) -> FunctionOutputs:
710691
async with transaction_context(get_asyncpg_engine(app), connection) as transaction:
711-
checked_permissions: list[Literal["read", "write", "execute"]] = ["read"]
712-
if check_write_permissions:
713-
checked_permissions.append("write")
714-
await check_user_permissions(
715-
app,
716-
connection=transaction,
717-
user_id=user_id,
718-
product_name=product_name,
719-
object_type="function_job",
720-
object_id=function_job_id,
721-
permissions=checked_permissions,
722-
)
723-
724692
result = await transaction.execute(
725693
function_jobs_table.update()
726694
.where(function_jobs_table.c.uuid == function_job_id)
@@ -1257,8 +1225,13 @@ async def _internal_get_group_permissions(
12571225
*,
12581226
product_name: ProductName,
12591227
object_type: Literal["function", "function_job", "function_job_collection"],
1260-
object_ids: list[UUID],
1261-
) -> list[tuple[UUID, list[FunctionGroupAccessRights]]]:
1228+
object_ids: list[FunctionID | FunctionJobID | FunctionJobCollectionID],
1229+
) -> list[
1230+
tuple[
1231+
FunctionID | FunctionJobID | FunctionJobCollectionID,
1232+
list[FunctionGroupAccessRights],
1233+
]
1234+
]:
12621235
access_rights_table = None
12631236
field_name = None
12641237
if object_type == "function":

services/web/server/src/simcore_service_webserver/functions/_functions_service.py

Lines changed: 24 additions & 6 deletions
Original file line numberDiff line numberDiff line change
@@ -677,13 +677,22 @@ async def update_function_job_outputs(
677677
outputs: FunctionOutputs,
678678
check_write_permissions: bool = True,
679679
) -> FunctionOutputs:
680-
return await _functions_repository.update_function_job_outputs(
681-
app=app,
680+
checked_permissions: list[Literal["read", "write", "execute"]] = ["read"]
681+
if check_write_permissions:
682+
checked_permissions.append("write")
683+
await _functions_repository.check_user_permissions(
684+
app,
682685
user_id=user_id,
683686
product_name=product_name,
687+
object_type="function_job",
688+
object_id=function_job_id,
689+
permissions=checked_permissions,
690+
)
691+
692+
return await _functions_repository.update_function_job_outputs(
693+
app=app,
684694
function_job_id=function_job_id,
685695
outputs=outputs,
686-
check_write_permissions=check_write_permissions,
687696
)
688697

689698

@@ -696,13 +705,22 @@ async def update_function_job_status(
696705
job_status: FunctionJobStatus,
697706
check_write_permissions: bool = True,
698707
) -> FunctionJobStatus:
699-
return await _functions_repository.update_function_job_status(
700-
app=app,
708+
checked_permissions: list[Literal["read", "write", "execute"]] = ["read"]
709+
710+
if check_write_permissions:
711+
checked_permissions.append("write")
712+
await _functions_repository.check_user_permissions(
713+
app,
701714
user_id=user_id,
702715
product_name=product_name,
716+
object_type="function_job",
717+
object_id=function_job_id,
718+
permissions=checked_permissions,
719+
)
720+
return await _functions_repository.update_function_job_status(
721+
app=app,
703722
function_job_id=function_job_id,
704723
job_status=job_status,
705-
check_write_permissions=check_write_permissions,
706724
)
707725

708726

0 commit comments

Comments
 (0)