Class SparseBloomFilter
- All Implemented Interfaces:
- BitMapExtractor,- BloomFilter<SparseBloomFilter>,- IndexExtractor
- Since:
- 4.5.0-M1
- 
Field SummaryFields inherited from interface org.apache.commons.collections4.bloomfilter.BloomFilterSPARSE
- 
Constructor SummaryConstructors
- 
Method SummaryModifier and TypeMethodDescriptionlong[]Return a copy of the BitMapExtractor data as a bit map array.intGets the cardinality (number of enabled bits) of this Bloom filter.intGets the characteristics of the filter.voidclear()Clears the filter to by resetting it to its initial, unpopulated state.booleancontains(BitMapExtractor bitMapExtractor) Returnstrueif this filter contains the bits specified in the bit maps produced by the bitMapExtractor.booleancontains(IndexExtractor indexExtractor) Returnstrueif this filter contains the indices specified IndexExtractor.copy()Creates a new instance of thisSparseBloomFilterwith the same properties as the current one.getShape()Gets the shape that was used when the filter was built.booleanisEmpty()Determines if all the bits are off.booleanmerge(BitMapExtractor bitMapExtractor) Merges the specified hasher into this Bloom filter.booleanmerge(BloomFilter<?> other) Merges the specified Bloom filter into this Bloom filter.booleanMerges the specified hasher into this Bloom filter.booleanmerge(IndexExtractor indexExtractor) Merges the specified IndexExtractor into this Bloom filter.booleanprocessBitMaps(LongPredicate consumer) Each bit map is passed to the predicate in order.booleanprocessIndices(IntPredicate consumer) Each index is passed to the predicate.Methods inherited from class java.lang.Objectclone, equals, finalize, getClass, hashCode, notify, notifyAll, toString, wait, wait, waitMethods inherited from interface org.apache.commons.collections4.bloomfilter.BitMapExtractorprocessBitMapPairsMethods inherited from interface org.apache.commons.collections4.bloomfilter.BloomFiltercontains, contains, estimateIntersection, estimateN, estimateUnion, isFull, uniqueIndicesMethods inherited from interface org.apache.commons.collections4.bloomfilter.IndexExtractorasIndexArray
- 
Constructor Details- 
SparseBloomFilterConstructs an empty BitSetBloomFilter.- Parameters:
- shape- The shape of the filter.
 
 
- 
- 
Method Details- 
asBitMapArrayDescription copied from interface:BitMapExtractorReturn a copy of the BitMapExtractor data as a bit map array.The default implementation of this method is slow. It is recommended that implementing classes reimplement this method. - Specified by:
- asBitMapArrayin interface- BitMapExtractor
- Returns:
- An array of bit map data.
 
- 
cardinalityDescription copied from interface:BloomFilterGets the cardinality (number of enabled bits) of this Bloom filter.This is also known as the Hamming value or Hamming number. - Specified by:
- cardinalityin interface- BloomFilter<SparseBloomFilter>
- Returns:
- the cardinality of this filter
 
- 
characteristicsDescription copied from interface:BloomFilterGets the characteristics of the filter.Characteristics are defined as bits within the characteristics integer. - Specified by:
- characteristicsin interface- BloomFilter<SparseBloomFilter>
- Returns:
- the characteristics for this bloom filter.
 
- 
clearDescription copied from interface:BloomFilterClears the filter to by resetting it to its initial, unpopulated state.- Specified by:
- clearin interface- BloomFilter<SparseBloomFilter>
 
- 
containsDescription copied from interface:BloomFilterReturnstrueif this filter contains the bits specified in the bit maps produced by the bitMapExtractor.- Specified by:
- containsin interface- BloomFilter<SparseBloomFilter>
- Parameters:
- bitMapExtractor- the- BitMapExtractorto provide the bit maps.
- Returns:
- trueif this filter is enabled for all bits specified by the bit maps
 
- 
containsDescription copied from interface:BloomFilterReturnstrueif this filter contains the indices specified IndexExtractor.Specifically this returns trueif this filter is enabled for all bit indexes identified by theIndexExtractor.- Specified by:
- containsin interface- BloomFilter<SparseBloomFilter>
- Parameters:
- indexExtractor- the IndexExtractor to provide the indexes
- Returns:
- trueif this filter is enabled for all bits specified by the IndexExtractor
 
- 
copyCreates a new instance of thisSparseBloomFilterwith the same properties as the current one.- Specified by:
- copyin interface- BloomFilter<SparseBloomFilter>
- Returns:
- a copy of this SparseBloomFilter.
 
- 
getShapeDescription copied from interface:BloomFilterGets the shape that was used when the filter was built.- Specified by:
- getShapein interface- BloomFilter<SparseBloomFilter>
- Returns:
- The shape the filter was built with.
 
- 
isEmptyDescription copied from interface:BloomFilterDetermines if all the bits are off. This is equivalent tocardinality() == 0.Note: This method is optimized for non-sparse filters. Implementers are encouraged to implement faster checks if possible. - Specified by:
- isEmptyin interface- BloomFilter<SparseBloomFilter>
- Returns:
- trueif no bits are enabled,- falseotherwise.
 
- 
mergeDescription copied from interface:BloomFilterMerges the specified hasher into this Bloom filter. Specifically all bit indexes that are identified by thebitMapExtractorwill be enabled in this filter.Note: This method should return trueeven if no additional bit indexes were enabled. Afalseresult indicates that this filter may or may not contain all the indexes enabled in thebitMapExtractor. This state may occur in complex Bloom filter implementations like counting Bloom filters.- Specified by:
- mergein interface- BloomFilter<SparseBloomFilter>
- Parameters:
- bitMapExtractor- The BitMapExtractor to merge.
- Returns:
- true if the merge was successful
 
- 
mergeDescription copied from interface:BloomFilterMerges the specified Bloom filter into this Bloom filter.Specifically all bit indexes that are identified by the otherwill be enabled in this filter.Note: This method should return trueeven if no additional bit indexes were enabled. Afalseresult indicates that this filter may or may not contain theotherBloom filter. This state may occur in complex Bloom filter implementations like counting Bloom filters.- Specified by:
- mergein interface- BloomFilter<SparseBloomFilter>
- Parameters:
- other- The bloom filter to merge into this one.
- Returns:
- true if the merge was successful
 
- 
mergeDescription copied from interface:BloomFilterMerges the specified hasher into this Bloom filter. Specifically all bit indexes that are identified by thehasherwill be enabled in this filter.Note: This method should return trueeven if no additional bit indexes were enabled. Afalseresult indicates that this filter may or may not contain thehashervalues. This state may occur in complex Bloom filter implementations like counting Bloom filters.- Specified by:
- mergein interface- BloomFilter<SparseBloomFilter>
- Parameters:
- hasher- The hasher to merge.
- Returns:
- true if the merge was successful
 
- 
mergeDescription copied from interface:BloomFilterMerges the specified IndexExtractor into this Bloom filter. Specifically all bit indexes that are identified by theindexExtractorwill be enabled in this filter.Note: This method should return trueeven if no additional bit indexes were enabled. Afalseresult indicates that this filter may or may not contain all the indexes of theindexExtractor. This state may occur in complex Bloom filter implementations like counting Bloom filters.- Specified by:
- mergein interface- BloomFilter<SparseBloomFilter>
- Parameters:
- indexExtractor- The IndexExtractor to merge.
- Returns:
- true if the merge was successful
 
- 
processBitMapsDescription copied from interface:BitMapExtractorEach bit map is passed to the predicate in order. The predicate is applied to each bit map value, if the predicate returnsfalsethe execution is stopped,falseis returned, and no further bit maps are processed.If the extractor is empty this method will return true. Any exceptions thrown by the action are relayed to the caller. - Specified by:
- processBitMapsin interface- BitMapExtractor
- Parameters:
- consumer- the function to execute
- Returns:
- trueif all bit maps returned- true,- falseotherwise.
 
- 
processIndicesDescription copied from interface:IndexExtractorEach index is passed to the predicate. The predicate is applied to each index value, if the predicate returnsfalsethe execution is stopped,falseis returned, and no further indices are processed.Any exceptions thrown by the action are relayed to the caller. Indices ordering and uniqueness is not guaranteed. - Specified by:
- processIndicesin interface- IndexExtractor
- Parameters:
- consumer- the action to be performed for each non-zero bit index.
- Returns:
- trueif all indexes return true from consumer,- falseotherwise.
 
 
-