org.apache.lucene.index

## Class IndexReaderContext

- java.lang.Object
- - org.apache.lucene.index.IndexReaderContext

- Direct Known Subclasses:
    CompositeReaderContext, LeafReaderContext

      public abstract class IndexReaderContext
      extends Object

  A struct like class that represents a hierarchical relationship between `IndexReader` instances.

- - ### Field Summary

    Fields
    Modifier and Type | Field and Description
    --- | ---
    `int` | `docBaseInParent` the doc base for this reader in the parent, `0` if parent is null
    `boolean` | `isTopLevel` `true` if this context struct represents the top level reader within the hierarchical context
    `int` | `ordInParent` the ord for this reader in the parent, `0` if parent is null
    `CompositeReaderContext` | `parent` The reader context for this reader's immediate parent, or null if none

  - ### Method Summary

    All Methods Instance Methods Abstract Methods Concrete Methods
    Modifier and Type | Method and Description
    --- | ---
    `abstract List<IndexReaderContext>` | `children()` Returns the context's children iff this context is a composite context otherwise `null`.
    `Object` | `id()` Expert: Return an `Object` that uniquely identifies this context.
    `abstract List<LeafReaderContext>` | `leaves()` Returns the context's leaves if this context is a top-level context.
    `abstract IndexReader` | `reader()` Returns the `IndexReader`, this context represents.

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

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

- - ### Field Detail

    - #### parent

          public final CompositeReaderContext parent

      The reader context for this reader's immediate parent, or null if none

    - #### isTopLevel

          public final boolean isTopLevel

      `true` if this context struct represents the top level reader within the hierarchical context

    - #### docBaseInParent

          public final int docBaseInParent

      the doc base for this reader in the parent, `0` if parent is null

    - #### ordInParent

          public final int ordInParent

      the ord for this reader in the parent, `0` if parent is null

  - ### Method Detail

    - #### id

          public Object id()

      Expert: Return an `Object` that uniquely identifies this context. The returned object does neither reference this `IndexReaderContext` nor the wrapped `IndexReader`.
      WARNING: This API is experimental and might change in incompatible ways in the next release.

    - #### reader

          public abstract IndexReader reader()

      Returns the `IndexReader`, this context represents.

    - #### leaves

          public abstract List<LeafReaderContext> leaves()
                                                  throws UnsupportedOperationException

      Returns the context's leaves if this context is a top-level context. For convenience, if this is an `LeafReaderContext` this returns itself as the only leaf.

      Note: this is convenience method since leaves can always be obtained by walking the context tree using `children()`.

      Throws:
        `UnsupportedOperationException` - if this is not a top-level context.
      See Also:
        `children()`

    - #### children

          public abstract List<IndexReaderContext> children()

      Returns the context's children iff this context is a composite context otherwise `null`.

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