Class ValueSource

    • Constructor Detail

      • ValueSource

        public ValueSource()
    • Method Detail

      • getValues

        public abstract FunctionValues getValues​(java.util.Map context,
                                                 AtomicReaderContext readerContext)
                                          throws java.io.IOException
        Gets the values for this reader and the context that was previously passed to createWeight()
        Throws:
        java.io.IOException
      • equals

        public abstract boolean equals​(java.lang.Object o)
        Overrides:
        equals in class java.lang.Object
      • hashCode

        public abstract int hashCode()
        Overrides:
        hashCode in class java.lang.Object
      • description

        public abstract java.lang.String description()
        description of field, used in explain()
      • toString

        public java.lang.String toString()
        Overrides:
        toString in class java.lang.Object
      • createWeight

        public void createWeight​(java.util.Map context,
                                 IndexSearcher searcher)
                          throws java.io.IOException
        Implementations should propagate createWeight to sub-ValueSources which can optionally store weight info in the context. The context object will be passed to getValues() where this info can be retrieved.
        Throws:
        java.io.IOException
      • newContext

        public static java.util.Map newContext​(IndexSearcher searcher)
        Returns a new non-threadsafe context map.
      • getSortField

        public SortField getSortField​(boolean reverse)
        EXPERIMENTAL: This method is subject to change.

        Get the SortField for this ValueSource. Uses the getValues(java.util.Map, AtomicReaderContext) to populate the SortField.

        Parameters:
        reverse - true if this is a reverse sort.
        Returns:
        The SortField for the ValueSource