[ 
https://issues.apache.org/jira/browse/LUCENE-4565?page=com.atlassian.jira.plugin.system.issuetabpanels:comment-tabpanel&focusedCommentId=13511315#comment-13511315
 ] 

Gilad Barkai commented on LUCENE-4565:
--------------------------------------

Patch's OK, some comments:

* The notion of youngestChild and olderSibling is important. I would not have 
removed the 'older/youngest' parts. Especially not from the TaxoArray's API. 
But would rather have them everywhere.

* In DirectoryTaxonomyWriter, the loop over the termEnums had been changed to 
"reuse" the TermsEnum and DocsEnum - only they are not reused. I got confused 
trying to find the reusability. Is there an internal java expert optimization 
for such cases?   


                
> Simplify TaxoReader ParentArray/ChildrenArrays
> ----------------------------------------------
>
>                 Key: LUCENE-4565
>                 URL: https://issues.apache.org/jira/browse/LUCENE-4565
>             Project: Lucene - Core
>          Issue Type: Improvement
>          Components: modules/facet
>            Reporter: Shai Erera
>            Assignee: Shai Erera
>            Priority: Minor
>         Attachments: LUCENE-4565.patch
>
>
> TaxoReader exposes two structures which provide information about a 
> categories parent/childs/siblings: ParentArray and ChildrenArrays. 
> ChildrenArrays are derived (i.e. created) from ParentArray.
> I propose to consolidate all that into one API ParentInfo, or 
> CategoryTreeInfo (a better name?) which will provide the same information, 
> only from one object. So instead of making these calls:
> {code}
> int[] parents = taxoReader.getParentArray();
> int[] youngestChilds = taxoReader.getChildrenArrays().getYoungestChildArray();
> int[] olderSiblings = taxoReader.getChildrenArrays().getOlderSiblingArray();
> {code}
> one would make these calls:
> {code}
> int[] parents = taxoReader.getParentInfo().parents();
> int[] youngestChilds = taxoReader.getParentInfo().youngestChilds();
> int[] olderSiblings = taxoReader.getParentInfo().olderSiblings();
> {code}
> Not a big change, just consolidate more code into one logical place. All of 
> these arrays will continue to be lazily allocated.

--
This message is automatically generated by JIRA.
If you think it was sent incorrectly, please contact your JIRA administrators
For more information on JIRA, see: http://www.atlassian.com/software/jira

---------------------------------------------------------------------
To unsubscribe, e-mail: dev-unsubscr...@lucene.apache.org
For additional commands, e-mail: dev-h...@lucene.apache.org

Reply via email to