The default hash algorithms may change in the future, leading to required changes in FileHashStore and any classes that extend it.
This process should be refactored in such a way that we can simply change the default hash algorithms, without needing to touch any other affected code.
Additionally, I believe we could potentially optimize the process of calculating the checksums further in the method writeToTmpFileAndGenerateChecksums by removing some if statements.
Context:
It was initially refactored via Feature-95: HashStoreConverter & FileHashStoreLinks, however a junit test that was previously successfully was failing intermittently, as described here in this rollback PR, and respective issue.