Class SortedSetDocValues

    • Field Detail

      • NO_MORE_ORDS

        @Deprecated
        public static final long NO_MORE_ORDS
        Deprecated.
        Will be removed in a future version. Please use docValueCount() to know the number of doc values for the current document up-front.
        When returned by nextOrd() it means there are no more ordinals for the document.
        See Also:
        Constant Field Values
    • Constructor Detail

      • SortedSetDocValues

        protected SortedSetDocValues()
        Sole constructor. (For invocation by subclass constructors, typically implicit.)
    • Method Detail

      • nextOrd

        public abstract long nextOrd()
                              throws IOException
        Returns the next ordinal for the current document. It is illegal to call this method after advanceExact(int) returned false.

        Note: Returns NO_MORE_ORDS when the current document has no more ordinals. This behavior will be removed in a future version. Callers should use docValueCount() to determine the number of values for the current document up-front.

        Returns:
        next ordinal for the document, or NO_MORE_ORDS. ordinals are dense, start at 0, then increment by 1 for the next value in sorted order.
        Throws:
        IOException
      • docValueCount

        public abstract int docValueCount()
        Retrieves the number of unique ords for the current document. This must always be greater than zero. It is illegal to call this method after advanceExact(int) returned false.
      • lookupOrd

        public abstract BytesRef lookupOrd​(long ord)
                                    throws IOException
        Retrieves the value for the specified ordinal. The returned BytesRef may be re-used across calls to lookupOrd so make sure to copy it if you want to keep it around.
        Parameters:
        ord - ordinal to lookup
        Throws:
        IOException
        See Also:
        nextOrd()
      • getValueCount

        public abstract long getValueCount()
        Returns the number of unique values.
        Returns:
        number of unique values in this SortedDocValues. This is also equivalent to one plus the maximum ordinal.
      • lookupTerm

        public long lookupTerm​(BytesRef key)
                        throws IOException
        If key exists, returns its ordinal, else returns -insertionPoint-1, like Arrays.binarySearch.
        Parameters:
        key - Key to look up
        Throws:
        IOException
      • advanceExact

        public abstract boolean advanceExact​(int target)
                                      throws IOException
        Advance the iterator to exactly target and return whether target has a value. target must be greater than or equal to the current doc ID and must be a valid doc ID, ie. ≥ 0 and < maxDoc. After this method returns, DocIdSetIterator.docID() returns target.
        Throws:
        IOException