[ https://issues.apache.org/jira/browse/COLLECTIONS-728?page=com.atlassian.jira.plugin.system.issuetabpanels:comment-tabpanel&focusedCommentId=16990597#comment-16990597 ]
Claude Warren commented on COLLECTIONS-728: ------------------------------------------- Mutability: I think all issues are fixed with the exception of HasherBloomFilter. HasherBloomFilter extends BloomFilter. In the general case BloomFilter needs to have a merge operation. I have updated the javadoc for the HasherBloomFilter class to indicate that if merges are expected another Bloom filter implementation may be more appropriate. HashFunction: HashFunction extends ToLongBiFunction<byte[], Integer> so it is more than just a name. We could make it more complex with boolean values for unsigned/signed and cyclic/iterative but to what end? I think this class is a simple as it can be but no simpler. An Enum assumes you know all the possible values. We don't, we can't, and we never will. In recent work with the Murmur128 hash in commons-codec it became apparent that there are several implementations of the hash that are "broken" with respect to the original "C" code. However, each of those is in use. If this library were to be used with any of those implementations we would have to include enums for patently "broken" hashes, or they have to have a way to extend the implementation in a way that fits into this system. Adding a name to the hash and not limiting it to an enum works. This is more akin to the Java Cryptography Architecture with out the necessity of registering providers. Though perhaps that is future work. MD5: fixed. > BloomFilter contribution > ------------------------ > > Key: COLLECTIONS-728 > URL: https://issues.apache.org/jira/browse/COLLECTIONS-728 > Project: Commons Collections > Issue Type: Task > Reporter: Claude Warren > Priority: Minor > Attachments: BF_Func.md, BloomFilter.java, BloomFilterI2.java, > Usage.md > > > Contribution of BloomFilter library comprising base implementation and gated > collections. -- This message was sent by Atlassian Jira (v8.3.4#803005)