Class StoredFieldVisitor

  • Direct Known Subclasses:
    DocumentStoredFieldVisitor

    public abstract class StoredFieldVisitor
    extends java.lang.Object
    Expert: provides a low-level means of accessing the stored field values in an index. See IndexReader.document(int, StoredFieldVisitor).

    NOTE: a StoredFieldVisitor implementation should not try to load or visit other stored documents in the same reader because the implementation of stored fields for most codecs is not reeentrant and you will see strange exceptions as a result.

    See DocumentStoredFieldVisitor, which is a StoredFieldVisitor that builds the Document containing all stored fields. This is used by IndexReader.document(int).

    • Constructor Detail

      • StoredFieldVisitor

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

      • binaryField

        public void binaryField​(FieldInfo fieldInfo,
                                byte[] value)
                         throws java.io.IOException
        Process a binary field.
        Parameters:
        value - newly allocated byte array with the binary contents.
        Throws:
        java.io.IOException
      • stringField

        public void stringField​(FieldInfo fieldInfo,
                                java.lang.String value)
                         throws java.io.IOException
        Process a string field
        Throws:
        java.io.IOException
      • intField

        public void intField​(FieldInfo fieldInfo,
                             int value)
                      throws java.io.IOException
        Process a int numeric field.
        Throws:
        java.io.IOException
      • longField

        public void longField​(FieldInfo fieldInfo,
                              long value)
                       throws java.io.IOException
        Process a long numeric field.
        Throws:
        java.io.IOException
      • floatField

        public void floatField​(FieldInfo fieldInfo,
                               float value)
                        throws java.io.IOException
        Process a float numeric field.
        Throws:
        java.io.IOException
      • doubleField

        public void doubleField​(FieldInfo fieldInfo,
                                double value)
                         throws java.io.IOException
        Process a double numeric field.
        Throws:
        java.io.IOException
      • needsField

        public abstract StoredFieldVisitor.Status needsField​(FieldInfo fieldInfo)
                                                      throws java.io.IOException
        Hook before processing a field. Before a field is processed, this method is invoked so that subclasses can return a StoredFieldVisitor.Status representing whether they need that particular field or not, or to stop processing entirely.
        Throws:
        java.io.IOException