flowserv.service.files.local module

The workflow user group files API component provides methods to access, delete, and upload files for workflow groups.

class flowserv.service.files.local.LocalUploadFileService(group_manager: flowserv.model.group.WorkflowGroupManager, auth: flowserv.model.auth.Auth, user_id: Optional[str] = None, serializer: Optional[flowserv.view.files.UploadFileSerializer] = None)

Bases: flowserv.service.files.base.UploadFileService

API component that provides methods to access, delete and upload files for workflow user groups.

delete_file(group_id: str, file_id: str)

Delete file with given identifier that was previously uploaded.

Raises errors if the file or the workflow group does not exist or if the user is not authorized to delete the file.

Parameters
  • group_id (string) – Unique workflow group identifier

  • file_id (string) – Unique file identifier

Raises
get_uploaded_file(group_id: str, file_id: str) IO

Get IO buffer for file with given identifier that was uploaded to the workflow group.

Parameters
  • group_id (string) – Unique workflow group identifier

  • file_id (string) – Unique file identifier

  • user_id (string, optional) – Unique user identifier

Return type

io.BytesIO

Raises
get_uploaded_file_handle(group_id: str, file_id: str) flowserv.model.files.FileHandle

Get handle for file with given identifier that was uploaded to the workflow group.

Returns the file handle for the uploaded file.

Parameters
  • group_id (string) – Unique workflow group identifier

  • file_id (string) – Unique file identifier

  • user_id (string, optional) – Unique user identifier

Return type

flowserv.model.base.files.FileHandle

Raises
list_uploaded_files(group_id: str) Dict

Get a listing of all files that have been uploaded for the given workflow group.

Parameters

group_id (string) – Unique workflow group identifier

Return type

dict

Raises
upload_file(group_id: str, file: flowserv.volume.base.IOHandle, name: str) Dict

Create a file for a given workflow group.

Parameters
  • group_id (string) – Unique workflow group identifier

  • file (flowserv.volume.base.IOHandle) – File object (e.g., uploaded via HTTP request)

  • name (string) – Name of the file

Return type

dict

Raises