File tree Expand file tree Collapse file tree 1 file changed +28
-1
lines changed
services/web/server/src/simcore_service_webserver/storage Expand file tree Collapse file tree 1 file changed +28
-1
lines changed Original file line number Diff line number Diff line change 4141 get_result ,
4242 get_status ,
4343)
44- from servicelib .rabbitmq .rpc_interfaces .storage .data_export import start_data_export
44+ from servicelib .rabbitmq .rpc_interfaces .storage .data_export import (
45+ get_user_jobs ,
46+ start_data_export ,
47+ )
4548from servicelib .request_keys import RQT_USERID_KEY
4649from servicelib .rest_responses import unwrap_envelope
4750from simcore_service_webserver .rabbitmq import get_rabbitmq_rpc_client
@@ -412,6 +415,30 @@ class _PathParams(BaseModel):
412415 )
413416
414417
418+ @routes .get (
419+ _storage_prefix + "/async-jobs" ,
420+ name = "get_async_jobs" ,
421+ )
422+ @login_required
423+ @permission_required ("storage.files.*" )
424+ @handle_data_export_exceptions
425+ async def get_async_jobs (request : web .Request ) -> web .Response :
426+ class _RequestContext (RequestParameters ):
427+ user_id : UserID = Field (..., alias = RQT_USERID_KEY ) # type: ignore[literal-required]
428+
429+ _req_ctx = _RequestContext .model_validate (request )
430+
431+ rabbitmq_rpc_client = get_rabbitmq_rpc_client (request .app )
432+
433+ user_async_jobs = await get_user_jobs (
434+ rabbitmq_rpc_client = rabbitmq_rpc_client , user_id = _req_ctx .user_id
435+ )
436+ return create_data_response (
437+ [StorageAsyncJobGet .from_rpc_schema (job ) for job in user_async_jobs ],
438+ status = status .HTTP_200_OK ,
439+ )
440+
441+
415442@routes .get (
416443 _storage_prefix + "/async-jobs/{job_id}/status" ,
417444 name = "get_async_job_status" ,
You can’t perform that action at this time.
0 commit comments