[ https://issues.apache.org/jira/browse/JAMES-2806?page=com.atlassian.jira.plugin.system.issuetabpanels:comment-tabpanel&focusedCommentId=16878946#comment-16878946 ]
Rene Cordier edited comment on JAMES-2806 at 7/5/19 3:23 AM: ------------------------------------------------------------- Work for the ObjectStorage implementation has been divided into 3 PRs : * [https://github.com/linagora/james-project/pull/2489] `[Part 1] ObjectStorageBlobsDAO with BucketName` * [https://github.com/linagora/james-project/pull/2492] `[Part 2] ObjectStorageBlobsDAO creating bucket when saving fails (Swfit + S3 )` * [https://github.com/linagora/james-project/pull/2497] `[Part 3] ObjectStorageBlobsDAO BucketPrefix implementation` was (Author: rcordier): Work for the ObjectStorage implementation has been divided into 3 PRs : * [https://github.com/linagora/james-project/pull/2489] `[Part 1] ObjectStorageBlobsDAO with BucketName` * [https://github.com/linagora/james-project/pull/2492] `[Part 2] ObjectStorageBlobsDAO creating bucket when saving fails (Swfit + S3 )` * [https://github.com/linagora/james-project/pull/2497] `[Part 3] ObjectStorageBlobsDAO BucketPrefix implementation` > 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