Class ReusableDocumentStoredFieldVisitor
java.lang.Object
org.apache.lucene.index.StoredFieldVisitor
org.hibernate.search.backend.lucene.search.extraction.impl.ReusableDocumentStoredFieldVisitor
public final class ReusableDocumentStoredFieldVisitor
extends org.apache.lucene.index.StoredFieldVisitor
Inspired by Lucene's DocumentStoredFieldVisitor, with the difference that we want
to reuse the same FieldVisitor to load multiple Document instances.
Also the accepted fields are kept in a linked-list like structure, to optimize
for small amounts of accepted fields.
A ReusableDocumentStoredFieldVisitor is NOT threadsafe: in case you need one
for multiple threads make a clone for each thread.
- Author:
- Sanne Grinovero
- See Also:
-
DocumentStoredFieldVisitor
-
Nested Class Summary
Nested classes/interfaces inherited from class org.apache.lucene.index.StoredFieldVisitor
org.apache.lucene.index.StoredFieldVisitor.Status -
Constructor Summary
ConstructorsConstructorDescriptionCreate a visitor that collects all fields.ReusableDocumentStoredFieldVisitor(Set<String> fieldsToLoad) Create a visitor that collects only some specified fields. -
Method Summary
Modifier and TypeMethodDescriptionvoidbinaryField(org.apache.lucene.index.FieldInfo fieldInfo, byte[] value) voiddoubleField(org.apache.lucene.index.FieldInfo fieldInfo, double value) voidfloatField(org.apache.lucene.index.FieldInfo fieldInfo, float value) org.apache.lucene.document.DocumentRetrieve the visited document, and resets the instance to be reused by creating a new Document internally.voidintField(org.apache.lucene.index.FieldInfo fieldInfo, int value) voidlongField(org.apache.lucene.index.FieldInfo fieldInfo, long value) org.apache.lucene.index.StoredFieldVisitor.StatusneedsField(org.apache.lucene.index.FieldInfo fieldInfo) voidstringField(org.apache.lucene.index.FieldInfo fieldInfo, String value) Methods inherited from class org.apache.lucene.index.StoredFieldVisitor
binaryField
-
Constructor Details
-
ReusableDocumentStoredFieldVisitor
public ReusableDocumentStoredFieldVisitor()Create a visitor that collects all fields. -
ReusableDocumentStoredFieldVisitor
Create a visitor that collects only some specified fields.
-
-
Method Details
-
binaryField
public void binaryField(org.apache.lucene.index.FieldInfo fieldInfo, byte[] value) - Overrides:
binaryFieldin classorg.apache.lucene.index.StoredFieldVisitor
-
stringField
- Overrides:
stringFieldin classorg.apache.lucene.index.StoredFieldVisitor
-
intField
public void intField(org.apache.lucene.index.FieldInfo fieldInfo, int value) - Overrides:
intFieldin classorg.apache.lucene.index.StoredFieldVisitor
-
longField
public void longField(org.apache.lucene.index.FieldInfo fieldInfo, long value) - Overrides:
longFieldin classorg.apache.lucene.index.StoredFieldVisitor
-
floatField
public void floatField(org.apache.lucene.index.FieldInfo fieldInfo, float value) - Overrides:
floatFieldin classorg.apache.lucene.index.StoredFieldVisitor
-
doubleField
public void doubleField(org.apache.lucene.index.FieldInfo fieldInfo, double value) - Overrides:
doubleFieldin classorg.apache.lucene.index.StoredFieldVisitor
-
needsField
public org.apache.lucene.index.StoredFieldVisitor.Status needsField(org.apache.lucene.index.FieldInfo fieldInfo) - Specified by:
needsFieldin classorg.apache.lucene.index.StoredFieldVisitor
-
getDocumentAndReset
public org.apache.lucene.document.Document getDocumentAndReset()Retrieve the visited document, and resets the instance to be reused by creating a new Document internally.- Returns:
- Document populated with stored fields.
-