File Storage Service¶
The File Storage Service
goal is provide an API to upload and download files,
also exposing its metadata information. This microservice
implements the TUS Protocol which is an open-source protocol
for file uploading built upon HTTP/HTTPS to make it available on every platform.
FileMetadata¶
A FileMetadata
has the following properties:
Name
: The name of the file without extension.Extension
: The file extension without the dot.Size
: The size in bytes of the file.MediaType
: The file media type (MIME type).Created
: The date when the entity was created.Modified
: The date when the entity was modified (only the metadata).ThumbnailId
: The correlation id of the associated Thumbnail. Could be null.Expiration
: The date when the file will expire. Could be null.CurrentState
: The file Saga state.
States¶
Created
: The File is created but is not completely uploaded.Uploaded
: The File is completely uploaded and can be downloaded.UploadedWithThumb
: The same asUploaded
and its thumbnail was successfully generated.UploadedWithoutThumb
: The same asUploaded
and its thumbnail generation errored.Deleted
: The File was deleted by cancelling the upload, manually deleting the file or was deleted by the expiration mechanism.
Note
When we say File deleted we refer physically, not the database entity.