org.apache.lucene.facet.taxonomy.directory

## Class ParallelTaxonomyArrays

- java.lang.Object
- - org.apache.lucene.facet.taxonomy.directory.ParallelTaxonomyArrays

-     public class ParallelTaxonomyArrays
      extends Object

  Returns 3 arrays for traversing the taxonomy:
  - `parents`: `parents[i]` denotes the parent of category ordinal `i`.
  - `children`: `children[i]` denotes the youngest child of category ordinal `i`. The youngest child is defined as the category that was added last to the taxonomy as an immediate child of `i`.
  - `siblings`: `siblings[i]` denotes the sibling of category ordinal `i`. The sibling is defined as the previous youngest child of `parents[i]`.
  To traverse the taxonomy tree, you typically start with `children[0]` (ordinal 0 is reserved for ROOT), and then depends if you want to do DFS or BFS, you call `children[children[0]]` or `siblings[children[0]]` and so forth, respectively.

  NOTE: you are not expected to modify the values of the arrays, since the arrays are shared with other threads.

  WARNING: This API is experimental and might change in incompatible ways in the next release.

- - ### Constructor Summary

    Constructors
    Constructor and Description
    `ParallelTaxonomyArrays(IndexReader reader)`
    `ParallelTaxonomyArrays(IndexReader reader, ParallelTaxonomyArrays copyFrom)`

  - ### Method Summary

    Methods
    Modifier and Type | Method and Description
    --- | ---
    `int[]` | `children()` Returns the children array, where `children[i]` denotes the youngest child of category ordinal `i`.
    `int[]` | `parents()` Returns the parents array, where `parents[i]` denotes the parent of category ordinal `i`.
    `int[]` | `siblings()` Returns the siblings array, where `siblings[i]` denotes the sibling of category ordinal `i`.

    - ### Methods inherited from class java.lang.Object

      `clone, equals, finalize, getClass, hashCode, notify, notifyAll, toString, wait, wait, wait`

- - ### Constructor Detail

    - #### ParallelTaxonomyArrays

          public ParallelTaxonomyArrays(IndexReader reader)
                                 throws IOException

      Throws:
        `IOException`

    - #### ParallelTaxonomyArrays

          public ParallelTaxonomyArrays(IndexReader reader,
                                ParallelTaxonomyArrays copyFrom)
                                 throws IOException

      Throws:
        `IOException`

  - ### Method Detail

    - #### parents

          public int[] parents()

      Returns the parents array, where `parents[i]` denotes the parent of category ordinal `i`.

    - #### children

          public int[] children()

      Returns the children array, where `children[i]` denotes the youngest child of category ordinal `i`. The youngest child is defined as the category that was added last to the taxonomy as an immediate child of `i`.

    - #### siblings

          public int[] siblings()

      Returns the siblings array, where `siblings[i]` denotes the sibling of category ordinal `i`. The sibling is defined as the previous youngest child of `parents[i]`.

Copyright © 2000-2013 Apache Software Foundation. All Rights Reserved.