On Mon, Sep 16, 2013 at 3:00 PM, Emmanuel Lécharny <[email protected]>wrote:
> Le 9/14/13 9:45 AM, Kiran Ayyagari a écrit : > > On Sat, Sep 14, 2013 at 1:00 PM, Emmanuel Lécharny <[email protected] > >wrote: > > > >> Hi guys, > >> > >> > >> /** > >> * @return The array of stored values. > >> */ > >> V[] getValues(); > >> > >> shouldn't this be returning a BTree<V,V>? cause we don't support an > array > > as a holder of > > multiple values > > The fact that it's stored as a BTree is implementation dependent, I'm > not sure the user of the API should know about it. What the user wants > is to get back the stored values, and this is convenient to get back an > array. > > IMO, it is not convenient, we cannot copy all the values into an array and return, and returning an iterator is not going to help either, both will severely affect the search performance If needed, we can wrap it an immutable structure and return the BTree to prevent direct updates, but I wish to differ this until we see the impact on partition implementation. > Now, it's probably even better to make the Value class being an > Iterable, exactly like the Attribute class. To get all the values, it's > just a mater to iterate on the Value. > > > Btw, for clarity, I'll rename the classes and interfaces to Element (and > SingleElement, BtreeElement, etc). > > -- > Regards, > Cordialement, > Emmanuel Lécharny > www.iktek.com > > -- Kiran Ayyagari http://keydap.com
