You signed in with another tab or window. Reload to refresh your session.You signed out in another tab or window. Reload to refresh your session.You switched accounts on another tab or window. Reload to refresh your session.Dismiss alert
Currently, we are using blobResolvers to resolve creationRequest.blobId. I propose that we use UploadRepository directly to retrieve UploadMetaData.
Impact scope:
The blobId in the client request must have the prefix uploads-.
We can add a new API Publisher<UploadMetaData> listUploads(Username user, UploadId id) to UploadRepository, or use listUploads directly and filter UploadMetaData (in case the upload size for each user is not large).
Update the PublicAssetCreationRequest POJO by adding blobId and bucketName field, and removing content field:
I think creating public asset will be very rare.
I am expecting the gains of such an optimization to be low.
Also it breaks encapsulation and hard code the use of the blobStore which in terms of design do not seem desirable.
Why?
ref: #1061
Requirement
linagora/james-project#5222
How
Introduce
BlobStoreToolBox
interfaceLocation:
tmail-backend/blob/blob-extensions
Adapt
PublicAssetSetMethod
Currently, we are using
blobResolvers
to resolvecreationRequest.blobId
. I propose that we useUploadRepository
directly to retrieveUploadMetaData
.Impact scope:
uploads-
.Publisher<UploadMetaData> listUploads(Username user, UploadId id)
toUploadRepository
, or uselistUploads
directly and filterUploadMetaData
(in case the upload size for each user is not large).PublicAssetCreationRequest
POJO by addingblobId
andbucketName
field, and removingcontent
field:Inject
BlobStoreToolBox
intoPublicAssetRepository
and use the copyBlob API.Guice binding
S3BlobStoreToolBox
for S3blob store chooserNaiveBlobStoreToolbox
for other remainThe text was updated successfully, but these errors were encountered: