Description
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
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); }
And to implement the feature of deleting buckets exceed retention time, we need to have another additional method of deleting bucket:
public interface BlobStore { Publisher<Void> delete(BucketName bucket); }
Scope: API change, contract test, memory + object storage implementation - cassandra will be done in a later task