org.apache.solr.request

## Class IntervalFacets.FacetInterval

- java.lang.Object
- - org.apache.solr.request.IntervalFacets.FacetInterval

- Enclosing class:
    IntervalFacets

      public static class IntervalFacets.FacetInterval
      extends Object

  Helper class to match and count of documents in specified intervals

- - ### Constructor Summary

    Constructors
    Constructor and Description
    `FacetInterval(SchemaField schemaField, String startStr, String endStr, boolean includeLower, boolean includeUpper, String key)` Constructor that accepts already parsed values of start and end.

  - ### Method Summary

    All Methods Instance Methods Concrete Methods
    Modifier and Type | Method and Description
    --- | ---
    `int` | `getCount()`
    `String` | `getKey()`
    `org.apache.solr.request.IntervalFacets.IntervalCompareResult` | `includes(long value)` Method to use to check whether a document should be counted for an interval or not.
    `String` | `toString()`
    `void` | `updateContext(SortedDocValues sdv)` Update the ordinals based on the current reader.
    `void` | `updateContext(SortedSetDocValues sdv)` Update the ordinals based on the current reader.

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

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

- - ### Constructor Detail

    - #### FacetInterval

          public FacetInterval(SchemaField schemaField,
                               String startStr,
                               String endStr,
                               boolean includeLower,
                               boolean includeUpper,
                               String key)

      Constructor that accepts already parsed values of start and end. This constructor can only be used with numeric field types.
      Parameters:
        `schemaField` - schemaField for this range
        `startStr` - String representation of the start value of this interval. Can be a "*".
        `endStr` - String representation of the end value of this interval. Can be a "*".
        `includeLower` - Indicates weather this interval should include values equal to start
        `includeUpper` - Indicates weather this interval should include values equal to end
        `key` - String key of this interval

  - ### Method Detail

    - #### updateContext

          public void updateContext(SortedDocValues sdv)

      Update the ordinals based on the current reader. This method (or `updateContext(SortedSetDocValues)` depending on the DocValues type) needs to be called for every reader before `includes(long)` is called on any document of the reader.
      Parameters:
        `sdv` - DocValues for the current reader

    - #### updateContext

          public void updateContext(SortedSetDocValues sdv)

      Update the ordinals based on the current reader. This method (or `updateContext(SortedDocValues)` depending on the DocValues type) needs to be called for every reader before `includes(long)` is called on any document of the reader.
      Parameters:
        `sdv` - DocValues for the current reader

    - #### includes

          public org.apache.solr.request.IntervalFacets.IntervalCompareResult includes(long value)

      Method to use to check whether a document should be counted for an interval or not. Before calling this method on a multi-valued and/or non-numeric field make sure you call `updateContext(SortedDocValues)` or `updateContext(SortedSetDocValues)` (depending on the DV type). It is OK to call this method without other previous calls on numeric fields (with `NumericDocValues`)
      Parameters:
        `value` - For numeric single value fields, this `value` should be the `long` representation of the value of the document in the specified field. For multi-valued and/or non-numeric fields, `value` should be the ordinal of the term in the current segment
      Returns:
        - `IntervalCompareResult#INCLUDED` if the value is included in the interval
        - `IntervalCompareResult#GREATER_THAN_END` if the value is greater than `endLimit`
        - `IntervalCompareResult#LOWER_THAN_START` if the value is lower than `startLimit`
      See Also:
        `NumericUtils.floatToSortableInt(float)`, `NumericUtils.doubleToSortableLong(double)`

    - #### toString

          public String toString()

      Overrides:
        `toString` in class `Object`

    - #### getCount

          public int getCount()

      Returns:
        The count of document that matched this interval

    - #### getKey

          public String getKey()

      Returns:
        Human readable key for this interval

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