Class Lucene40StoredFieldsWriter
java.lang.Object
org.apache.lucene.codecs.StoredFieldsWriter
org.apache.lucene.codecs.lucene40.Lucene40StoredFieldsWriter
- All Implemented Interfaces:
Closeable,AutoCloseable
Class responsible for writing stored document fields.
It uses <segment>.fdt and <segment>.fdx; files.
- See Also:
-
Field Summary
Fields -
Constructor Summary
ConstructorsConstructorDescriptionLucene40StoredFieldsWriter(Directory directory, String segment, IOContext context) Sole constructor. -
Method Summary
Modifier and TypeMethodDescriptionvoidabort()Aborts writing entirely, implementation should remove any partially-written files, etc.voidaddRawDocuments(IndexInput stream, int[] lengths, int numDocs) Bulk write a contiguous series of documents.voidclose()voidfinish(FieldInfos fis, int numDocs) Called beforeStoredFieldsWriter.close(), passing in the number of documents that were written.intmerge(MergeState mergeState) Merges in the stored fields from the readers inmergeState.voidstartDocument(int numStoredFields) Called before writing the stored fields of the document.voidwriteField(FieldInfo info, IndexableField field) Writes a single stored field.Methods inherited from class org.apache.lucene.codecs.StoredFieldsWriter
finishDocument
-
Field Details
-
FIELDS_EXTENSION
Extension of stored fields file- See Also:
-
FIELDS_INDEX_EXTENSION
Extension of stored fields index file- See Also:
-
-
Constructor Details
-
Lucene40StoredFieldsWriter
public Lucene40StoredFieldsWriter(Directory directory, String segment, IOContext context) throws IOException Sole constructor.- Throws:
IOException
-
-
Method Details
-
startDocument
Description copied from class:StoredFieldsWriterCalled before writing the stored fields of the document.StoredFieldsWriter.writeField(FieldInfo, IndexableField)will be callednumStoredFieldstimes. Note that this is called even if the document has no stored fields, in this casenumStoredFieldswill be zero.- Specified by:
startDocumentin classStoredFieldsWriter- Throws:
IOException
-
close
- Specified by:
closein interfaceAutoCloseable- Specified by:
closein interfaceCloseable- Specified by:
closein classStoredFieldsWriter- Throws:
IOException
-
abort
public void abort()Description copied from class:StoredFieldsWriterAborts writing entirely, implementation should remove any partially-written files, etc.- Specified by:
abortin classStoredFieldsWriter
-
writeField
Description copied from class:StoredFieldsWriterWrites a single stored field.- Specified by:
writeFieldin classStoredFieldsWriter- Throws:
IOException
-
addRawDocuments
Bulk write a contiguous series of documents. The lengths array is the length (in bytes) of each raw document. The stream IndexInput is the fieldsStream from which we should bulk-copy all bytes.- Throws:
IOException
-
finish
Description copied from class:StoredFieldsWriterCalled beforeStoredFieldsWriter.close(), passing in the number of documents that were written. Note that this is intentionally redundant (equivalent to the number of calls toStoredFieldsWriter.startDocument(int), but a Codec should check that this is the case to detect the JRE bug described in LUCENE-1282.- Specified by:
finishin classStoredFieldsWriter
-
merge
Description copied from class:StoredFieldsWriterMerges in the stored fields from the readers inmergeState. The default implementation skips over deleted documents, and usesStoredFieldsWriter.startDocument(int),StoredFieldsWriter.writeField(FieldInfo, IndexableField), andStoredFieldsWriter.finish(FieldInfos, int), returning the number of documents that were written. Implementations can override this method for more sophisticated merging (bulk-byte copying, etc).- Overrides:
mergein classStoredFieldsWriter- Throws:
IOException
-