public final class CompressingStoredFieldsWriter extends StoredFieldsWriter
StoredFieldsWriter.MergeVisitor| Modifier and Type | Field and Description |
|---|---|
static String |
FIELDS_EXTENSION
Extension of stored fields file
|
static String |
FIELDS_INDEX_EXTENSION
Extension of stored fields index file
|
| Constructor and Description |
|---|
CompressingStoredFieldsWriter(Directory directory,
SegmentInfo si,
String segmentSuffix,
IOContext context,
String formatName,
CompressionMode compressionMode,
int chunkSize,
int maxDocsPerChunk,
int blockSize)
Sole constructor.
|
| Modifier and Type | Method and Description |
|---|---|
void |
close() |
void |
finish(FieldInfos fis,
int numDocs)
Called before
StoredFieldsWriter.close(), passing in the number
of documents that were written. |
void |
finishDocument()
Called when a document and all its fields have been added.
|
int |
merge(MergeState mergeState)
Merges in the stored fields from the readers in
mergeState. |
void |
startDocument()
Called before writing the stored fields of the document.
|
void |
writeField(FieldInfo info,
IndexableField field)
Writes a single stored field.
|
public static final String FIELDS_EXTENSION
public static final String FIELDS_INDEX_EXTENSION
public CompressingStoredFieldsWriter(Directory directory, SegmentInfo si, String segmentSuffix, IOContext context, String formatName, CompressionMode compressionMode, int chunkSize, int maxDocsPerChunk, int blockSize) throws IOException
IOExceptionpublic void close()
throws IOException
close in interface Closeableclose in interface AutoCloseableclose in class StoredFieldsWriterIOExceptionpublic void startDocument()
throws IOException
StoredFieldsWriterStoredFieldsWriter.writeField(FieldInfo, IndexableField) will be called
for each stored field. Note that this is
called even if the document has no stored fields.startDocument in class StoredFieldsWriterIOExceptionpublic void finishDocument()
throws IOException
StoredFieldsWriterfinishDocument in class StoredFieldsWriterIOExceptionpublic void writeField(FieldInfo info, IndexableField field) throws IOException
StoredFieldsWriterwriteField in class StoredFieldsWriterIOExceptionpublic void finish(FieldInfos fis, int numDocs) throws IOException
StoredFieldsWriterStoredFieldsWriter.close(), passing in the number
of documents that were written. Note that this is
intentionally redundant (equivalent to the number of
calls to StoredFieldsWriter.startDocument(), but a Codec should
check that this is the case to detect the JRE bug described
in LUCENE-1282.finish in class StoredFieldsWriterIOExceptionpublic int merge(MergeState mergeState) throws IOException
StoredFieldsWritermergeState. The default implementation skips
over deleted documents, and uses StoredFieldsWriter.startDocument(),
StoredFieldsWriter.writeField(FieldInfo, IndexableField), and StoredFieldsWriter.finish(FieldInfos, int),
returning the number of documents that were written.
Implementations can override this method for more sophisticated
merging (bulk-byte copying, etc).merge in class StoredFieldsWriterIOExceptionCopyright © 2000-2015 Apache Software Foundation. All Rights Reserved.