Uploaded image for project: 'Lucene - Core'
  1. Lucene - Core
  2. LUCENE-4565

Simplify TaxoReader ParentArray/ChildrenArrays

Details

    • Improvement
    • Status: Closed
    • Minor
    • Resolution: Fixed
    • None
    • 4.1, 6.0
    • modules/facet
    • None
    • New, Patch Available

    Description

      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:

      int[] parents = taxoReader.getParentArray();
      int[] youngestChilds = taxoReader.getChildrenArrays().getYoungestChildArray();
      int[] olderSiblings = taxoReader.getChildrenArrays().getOlderSiblingArray();
      

      one would make these calls:

      int[] parents = taxoReader.getParentInfo().parents();
      int[] youngestChilds = taxoReader.getParentInfo().youngestChilds();
      int[] olderSiblings = taxoReader.getParentInfo().olderSiblings();
      

      Not a big change, just consolidate more code into one logical place. All of these arrays will continue to be lazily allocated.

      Attachments

        1. LUCENE-4565.patch
          49 kB
          Shai Erera

        Activity

          People

            shaie Shai Erera
            shaie Shai Erera
            Votes:
            0 Vote for this issue
            Watchers:
            2 Start watching this issue

            Dates

              Created:
              Updated:
              Resolved:

              Slack

                Issue deployment