Class DocumentDictionary.DocumentInputIterator

    • Field Detail

      • docCount

        private final int docCount
      • relevantFields

        private final java.util.Set<java.lang.String> relevantFields
      • hasPayloads

        private final boolean hasPayloads
      • hasContexts

        private final boolean hasContexts
      • liveDocs

        private final Bits liveDocs
      • currentDocId

        private int currentDocId
      • currentWeight

        private long currentWeight
      • currentPayload

        private BytesRef currentPayload
      • currentContexts

        private java.util.Set<BytesRef> currentContexts
      • nextFieldsPosition

        int nextFieldsPosition
    • Constructor Detail

      • DocumentInputIterator

        public DocumentInputIterator​(boolean hasPayloads,
                                     boolean hasContexts)
                              throws java.io.IOException
        Creates an iterator over term, weight and payload fields from the lucene index. setting withPayload to false, implies an iterator over only term and weight.
        Throws:
        java.io.IOException
    • Method Detail

      • weight

        public long weight()
        Description copied from interface: InputIterator
        A term's weight, higher numbers mean better suggestions.
        Specified by:
        weight in interface InputIterator
      • next

        public BytesRef next()
                      throws java.io.IOException
        Description copied from interface: BytesRefIterator
        Increments the iteration to the next BytesRef in the iterator. Returns the resulting BytesRef or null if the end of the iterator is reached. The returned BytesRef may be re-used across calls to next. After this method returns null, do not call it again: the results are undefined.
        Specified by:
        next in interface BytesRefIterator
        Returns:
        the next BytesRef in the iterator or null if the end of the iterator is reached.
        Throws:
        java.io.IOException - If there is a low-level I/O error.
      • hasPayloads

        public boolean hasPayloads()
        Description copied from interface: InputIterator
        Returns true if the iterator has payloads
        Specified by:
        hasPayloads in interface InputIterator
      • getWeight

        protected long getWeight​(Document doc,
                                 int docId)
                          throws java.io.IOException
        Returns the value of the weightField for the current document. Retrieves the value for the weightField if it's stored (using doc) or if it's indexed as NumericDocValues (using docId) for the document. If no value is found, then the weight is 0.
        Throws:
        java.io.IOException
      • getRelevantFields

        private java.util.Set<java.lang.String> getRelevantFields​(java.lang.String... fields)
      • contexts

        public java.util.Set<BytesRef> contexts()
        Description copied from interface: InputIterator
        A term's contexts context can be used to filter suggestions. May return null, if suggest entries do not have any context
        Specified by:
        contexts in interface InputIterator
      • hasContexts

        public boolean hasContexts()
        Description copied from interface: InputIterator
        Returns true if the iterator has contexts
        Specified by:
        hasContexts in interface InputIterator