[ https://issues.apache.org/jira/browse/JAMES-2806?page=com.atlassian.jira.plugin.system.issuetabpanels:comment-tabpanel&focusedCommentId=16881034#comment-16881034 ]
Tellier Benoit commented on JAMES-2806: --------------------------------------- https://github.com/linagora/james-project/pull/2497 allowed multiple James to be sharing the same object storage and playing well, while not breaking retro-compatibility > Adding bucket capability into BlobStore > --------------------------------------- > > Key: JAMES-2806 > URL: https://issues.apache.org/jira/browse/JAMES-2806 > Project: James Server > Issue Type: Sub-task > Components: Blob > Reporter: Tellier Benoit > Priority: Major > Fix For: 3.4.0 > > > You should update current BlobStore API to be able to customize the way we > storeBlob: > - We want to store a blob in a specified bucket > {code:java} > public interface BlobStore { > Publisher<BlobId> save(BucketName, byte[] data); > Publisher<BlobId> save(BucketName, InputStream data); > Publisher<byte[]> readBytes(BucketName, BlobId blobId); > InputStream read(BucketName, BlobId blobId); > } > {code} > And to implement the feature of deleting buckets exceed retention time, we > need to have another additional method of deleting bucket: > {code:java} > public interface BlobStore { > Publisher<Void> delete(BucketName bucket); > } > {code} > Scope: API change, contract test, memory + object storage implementation - > cassandra will be done in a later task -- This message was sent by Atlassian JIRA (v7.6.3#76005) --------------------------------------------------------------------- To unsubscribe, e-mail: server-dev-unsubscr...@james.apache.org For additional commands, e-mail: server-dev-h...@james.apache.org