forked from linagora/james-project
-
Notifications
You must be signed in to change notification settings - Fork 0
Commit
This commit does not belong to any branch on this repository, and may belong to a fork outside of the repository.
JAMES-3763 Changes Blobstore api to enable deterministic BlobId gener…
…ation In the 4 implementations of the BlobStore interface, 2 are delegating interfaces leaving only 2 actual implementations: - PassThroughBlobStore - DeDuplicationBlobStore Before this change, PassThroughBlobStore used to implement save by generating a random BlobId, while DeDuplicationBlobStore implemented it by hashing the content of the data to be saved. This approach broke down when trying to use the BlobStore as a backend for a MailRepository. The mail repository already has a natural key (the MailKey) which allows to compute a deterministic blobId. Since mailets are allowed to mutate the mail, the MailRepository#save method can be called several times with the same mail, expecting to overwrite the mail currently stored. Co-Authored-By: Matthieu Baechler <[email protected]>
- Loading branch information
Showing
15 changed files
with
250 additions
and
236 deletions.
There are no files selected for viewing
This file contains bidirectional Unicode text that may be interpreted or compiled differently than what appears below. To review, open the file in an editor that reveals hidden Unicode characters.
Learn more about bidirectional Unicode characters
This file contains bidirectional Unicode text that may be interpreted or compiled differently than what appears below. To review, open the file in an editor that reveals hidden Unicode characters.
Learn more about bidirectional Unicode characters
This file contains bidirectional Unicode text that may be interpreted or compiled differently than what appears below. To review, open the file in an editor that reveals hidden Unicode characters.
Learn more about bidirectional Unicode characters
This file contains bidirectional Unicode text that may be interpreted or compiled differently than what appears below. To review, open the file in an editor that reveals hidden Unicode characters.
Learn more about bidirectional Unicode characters
This file contains bidirectional Unicode text that may be interpreted or compiled differently than what appears below. To review, open the file in an editor that reveals hidden Unicode characters.
Learn more about bidirectional Unicode characters
This file contains bidirectional Unicode text that may be interpreted or compiled differently than what appears below. To review, open the file in an editor that reveals hidden Unicode characters.
Learn more about bidirectional Unicode characters
This file contains bidirectional Unicode text that may be interpreted or compiled differently than what appears below. To review, open the file in an editor that reveals hidden Unicode characters.
Learn more about bidirectional Unicode characters
Oops, something went wrong.