[ 
https://issues.apache.org/jira/browse/COLLECTIONS-854?page=com.atlassian.jira.plugin.system.issuetabpanels:all-tabpanel
 ]

Claude Warren updated COLLECTIONS-854:
--------------------------------------
    Description: 
This is a list of items that we have agreed need to be changed for clarity of 
API.

see [https://lists.apache.org/thread/4fds9094c06o4gp1r8pf0xx4l0jthhds]

 
 * Rename classes:
 ** CellConsumer to CellPredicate
 ** BitMap to BitMaps.
 ** BitMapProducer to BitMapExtractor
 ** BloomFilterProducer to BloomFilterExtractor
 ** IndexProducer to IndexExtractor

 * Rename methods:
 ** Extractor methods forEachX() to processX(Predicate<X>)

 * Be clear that extractors are like interruptible iterators with predicate 
tests acting as a switch to stop the iteration before the final item.
 * Document the semantic nomenclature:
 ** Bitmaps are arrays of bits not a BitMaps object.
 ** Indexes are ints and not an instance of a Collection object.
 ** Cells are pairs of ints representing an index and a value.  They are not 
Pair<> objects.
 ** Extractors
 *** are extractors of representations of Bloom filter enabled bits. 
 *** iterate over logical collections of the object (Bitmap, Index, Cell) 
applying a predicate to do work and stop the iteration early if necessary.  
 *** allow us to query the contents of the Bloom filter in an implementation 
agnostic way.

 

  was:
This is a list of items that we have agreed need to be changed for clarity of 
API.

see [https://lists.apache.org/thread/4fds9094c06o4gp1r8pf0xx4l0jthhds]

 
 * Be clear that producers are like interruptible iterators with predicate 
tests acting as a switch to short-circuit the iteration.
 * Rename classes:
 * CellConsumer to CellPredicate
 * Rename BitMap to BitMaps.
 * Rename BitMapProducer to BitMapExtractor
 * Rename 

 * Rename methods:
 * Producer forEachX() to forEachUntil()

 * The semantic nomenclature:
 * Bitmaps are arrays of bits not a BitMaps object.
 * Indexes are ints and not an instance of a Collection object.
 * Cells are pairs of ints representing an index and a value.  They are not 
Pair<> objects.
 * Producers iterate over collections of the object (Bitmap, Index, Cell) 
applying a predicate to do work and stop the iteration early if necessary.  
They are carriers/transporters of Bloom filter enabled bits.  They allow us to 
query the contents of the Bloom filter in an implementation agnostic way.

 


> Changes suggested to M1 release
> -------------------------------
>
>                 Key: COLLECTIONS-854
>                 URL: https://issues.apache.org/jira/browse/COLLECTIONS-854
>             Project: Commons Collections
>          Issue Type: Improvement
>          Components: Bloomfilter
>    Affects Versions: 4.5.0-M1
>            Reporter: Claude Warren
>            Assignee: Claude Warren
>            Priority: Minor
>
> This is a list of items that we have agreed need to be changed for clarity of 
> API.
> see [https://lists.apache.org/thread/4fds9094c06o4gp1r8pf0xx4l0jthhds]
>  
>  * Rename classes:
>  ** CellConsumer to CellPredicate
>  ** BitMap to BitMaps.
>  ** BitMapProducer to BitMapExtractor
>  ** BloomFilterProducer to BloomFilterExtractor
>  ** IndexProducer to IndexExtractor
>  * Rename methods:
>  ** Extractor methods forEachX() to processX(Predicate<X>)
>  * Be clear that extractors are like interruptible iterators with predicate 
> tests acting as a switch to stop the iteration before the final item.
>  * Document the semantic nomenclature:
>  ** Bitmaps are arrays of bits not a BitMaps object.
>  ** Indexes are ints and not an instance of a Collection object.
>  ** Cells are pairs of ints representing an index and a value.  They are not 
> Pair<> objects.
>  ** Extractors
>  *** are extractors of representations of Bloom filter enabled bits. 
>  *** iterate over logical collections of the object (Bitmap, Index, Cell) 
> applying a predicate to do work and stop the iteration early if necessary.  
>  *** allow us to query the contents of the Bloom filter in an implementation 
> agnostic way.
>  



--
This message was sent by Atlassian Jira
(v8.20.10#820010)

Reply via email to