Tellier Benoit created JAMES-2807:
-------------------------------------
Summary: DeletedMessageMetadataVault API + contract +memory
Key: JAMES-2807
URL: https://issues.apache.org/jira/browse/JAMES-2807
Project: James Server
Issue Type: Sub-task
Components: deletedMessageVault
Reporter: Tellier Benoit
We need a sub API for storing per Container metadata of Deleted Messages.
Here is the API:
{code:java}
class StorageInformation {
private final BucketName bucketName;
private final BlobId blobId;
}
class DeletedMessageWithStorageInformation {
private final DeletedMessage deletedmessage;
private final StorageInformation storageInformation;
}
interface DeletedMessageMetadataVault {
Publisher<Void> store(BucketName, DeletedMessageWithStorageInformation);
Publisher<Void> removeBucket(BucketName);
Publisher<Void> remove(BucketName, User, MessageId);
Publisher<StorageInformation> retrieveStorageInformation(User, MessageId);
Publisher<DeletedMessageWithStorageInformation> listMessages(BucketName,
User);
Publisher<BucketName> listBuckets();
}
{code}
You will provide the API + contract in `mailbox/plugin/deleted-messages-vault`.
You will provide a memory implementation of it in
`mailbox/plugin/deleted-messages-vault-memory`
--
This message was sent by Atlassian JIRA
(v7.6.3#76005)
---------------------------------------------------------------------
To unsubscribe, e-mail: [email protected]
For additional commands, e-mail: [email protected]