本文整理汇总了Java中org.apache.lucene.codecs.StoredFieldsReader类的典型用法代码示例。如果您正苦于以下问题:Java StoredFieldsReader类的具体用法?Java StoredFieldsReader怎么用?Java StoredFieldsReader使用的例子?那么恭喜您, 这里精选的类代码示例或许可以为您提供帮助。
StoredFieldsReader类属于org.apache.lucene.codecs包,在下文中一共展示了StoredFieldsReader类的14个代码示例,这些例子默认根据受欢迎程度排序。您可以为喜欢或者感觉有用的代码点赞,您的评价将有助于我们的系统推荐出更棒的Java代码示例。
示例1: merge
import org.apache.lucene.codecs.StoredFieldsReader; //导入依赖的package包/类
@Override
public int merge(MergeState mergeState) throws IOException {
int docCount = 0;
// Used for bulk-reading raw bytes for stored fields
int rawDocLengths[] = new int[MAX_RAW_MERGE_DOCS];
int idx = 0;
for (AtomicReader reader : mergeState.readers) {
final SegmentReader matchingSegmentReader = mergeState.matchingSegmentReaders[idx++];
Lucene40StoredFieldsReader matchingFieldsReader = null;
if (matchingSegmentReader != null) {
final StoredFieldsReader fieldsReader = matchingSegmentReader.getFieldsReader();
// we can only bulk-copy if the matching reader is also a Lucene40FieldsReader
if (fieldsReader != null && fieldsReader instanceof Lucene40StoredFieldsReader) {
matchingFieldsReader = (Lucene40StoredFieldsReader) fieldsReader;
}
}
if (reader.getLiveDocs() != null) {
docCount += copyFieldsWithDeletions(mergeState,
reader, matchingFieldsReader, rawDocLengths);
} else {
docCount += copyFieldsNoDeletions(mergeState,
reader, matchingFieldsReader, rawDocLengths);
}
}
finish(mergeState.fieldInfos, docCount);
return docCount;
}
开发者ID:lamsfoundation,项目名称:lams,代码行数:30,代码来源:Lucene40StoredFieldsWriter.java
示例2: clone
import org.apache.lucene.codecs.StoredFieldsReader; //导入依赖的package包/类
@Override
public StoredFieldsReader clone() {
if (in == null) {
throw new AlreadyClosedException("this FieldsReader is closed");
}
return new SimpleTextStoredFieldsReader(offsets, in.clone(), fieldInfos);
}
开发者ID:europeana,项目名称:search,代码行数:8,代码来源:SimpleTextStoredFieldsReader.java
示例3: fieldsReader
import org.apache.lucene.codecs.StoredFieldsReader; //导入依赖的package包/类
@Override
public StoredFieldsReader fieldsReader(Directory directory, SegmentInfo si,
FieldInfos fn, IOContext context) throws IOException {
return new Lucene40StoredFieldsReader(directory, si, fn, context);
}
开发者ID:lamsfoundation,项目名称:lams,代码行数:6,代码来源:Lucene40StoredFieldsFormat.java
示例4: clone
import org.apache.lucene.codecs.StoredFieldsReader; //导入依赖的package包/类
@Override
public StoredFieldsReader clone() {
ensureOpen();
return new CompressingStoredFieldsReader(this);
}
开发者ID:lamsfoundation,项目名称:lams,代码行数:6,代码来源:CompressingStoredFieldsReader.java
示例5: merge
import org.apache.lucene.codecs.StoredFieldsReader; //导入依赖的package包/类
@Override
public int merge(MergeState mergeState) throws IOException {
int docCount = 0;
int idx = 0;
for (AtomicReader reader : mergeState.readers) {
final SegmentReader matchingSegmentReader = mergeState.matchingSegmentReaders[idx++];
CompressingStoredFieldsReader matchingFieldsReader = null;
if (matchingSegmentReader != null) {
final StoredFieldsReader fieldsReader = matchingSegmentReader.getFieldsReader();
// we can only bulk-copy if the matching reader is also a CompressingStoredFieldsReader
if (fieldsReader != null && fieldsReader instanceof CompressingStoredFieldsReader) {
matchingFieldsReader = (CompressingStoredFieldsReader) fieldsReader;
}
}
final int maxDoc = reader.maxDoc();
final Bits liveDocs = reader.getLiveDocs();
if (matchingFieldsReader == null
|| matchingFieldsReader.getVersion() != VERSION_CURRENT // means reader version is not the same as the writer version
|| matchingFieldsReader.getCompressionMode() != compressionMode
|| matchingFieldsReader.getChunkSize() != chunkSize) { // the way data is decompressed depends on the chunk size
// naive merge...
for (int i = nextLiveDoc(0, liveDocs, maxDoc); i < maxDoc; i = nextLiveDoc(i + 1, liveDocs, maxDoc)) {
Document doc = reader.document(i);
addDocument(doc, mergeState.fieldInfos);
++docCount;
mergeState.checkAbort.work(300);
}
} else {
int docID = nextLiveDoc(0, liveDocs, maxDoc);
if (docID < maxDoc) {
// not all docs were deleted
final ChunkIterator it = matchingFieldsReader.chunkIterator(docID);
int[] startOffsets = new int[0];
do {
// go to the next chunk that contains docID
it.next(docID);
// transform lengths into offsets
if (startOffsets.length < it.chunkDocs) {
startOffsets = new int[ArrayUtil.oversize(it.chunkDocs, 4)];
}
for (int i = 1; i < it.chunkDocs; ++i) {
startOffsets[i] = startOffsets[i - 1] + it.lengths[i - 1];
}
// decompress
it.decompress();
if (startOffsets[it.chunkDocs - 1] + it.lengths[it.chunkDocs - 1] != it.bytes.length) {
throw new CorruptIndexException("Corrupted: expected chunk size=" + startOffsets[it.chunkDocs - 1] + it.lengths[it.chunkDocs - 1] + ", got " + it.bytes.length);
}
// copy non-deleted docs
for (; docID < it.docBase + it.chunkDocs; docID = nextLiveDoc(docID + 1, liveDocs, maxDoc)) {
final int diff = docID - it.docBase;
startDocument();
bufferedDocs.writeBytes(it.bytes.bytes, it.bytes.offset + startOffsets[diff], it.lengths[diff]);
numStoredFieldsInDoc = it.numStoredFields[diff];
finishDocument();
++docCount;
mergeState.checkAbort.work(300);
}
} while (docID < maxDoc);
it.checkIntegrity();
}
}
}
finish(mergeState.fieldInfos, docCount);
return docCount;
}
开发者ID:lamsfoundation,项目名称:lams,代码行数:72,代码来源:CompressingStoredFieldsWriter.java
示例6: fieldsReader
import org.apache.lucene.codecs.StoredFieldsReader; //导入依赖的package包/类
@Override
public StoredFieldsReader fieldsReader(Directory directory, SegmentInfo si,
FieldInfos fn, IOContext context) throws IOException {
return new CompressingStoredFieldsReader(directory, si, segmentSuffix, fn,
context, formatName, compressionMode);
}
开发者ID:lamsfoundation,项目名称:lams,代码行数:7,代码来源:CompressingStoredFieldsFormat.java
示例7: fieldsReader
import org.apache.lucene.codecs.StoredFieldsReader; //导入依赖的package包/类
@Override
public StoredFieldsReader fieldsReader(Directory directory, SegmentInfo si,
FieldInfos fn, IOContext context) throws IOException {
return new Lucene3xStoredFieldsReader(directory, si, fn, context);
}
开发者ID:lamsfoundation,项目名称:lams,代码行数:6,代码来源:Lucene3xStoredFieldsFormat.java
示例8: getFieldsReader
import org.apache.lucene.codecs.StoredFieldsReader; //导入依赖的package包/类
/** Expert: retrieve thread-private {@link
* StoredFieldsReader}
* @lucene.internal */
public StoredFieldsReader getFieldsReader() {
ensureOpen();
return core.fieldsReaderLocal.get();
}
开发者ID:lamsfoundation,项目名称:lams,代码行数:8,代码来源:SegmentReader.java
示例9: initialValue
import org.apache.lucene.codecs.StoredFieldsReader; //导入依赖的package包/类
@Override
protected StoredFieldsReader initialValue() {
return fieldsReaderOrig.clone();
}
开发者ID:lamsfoundation,项目名称:lams,代码行数:5,代码来源:SegmentCoreReaders.java
示例10: fieldsReader
import org.apache.lucene.codecs.StoredFieldsReader; //导入依赖的package包/类
@Override
public StoredFieldsReader fieldsReader(Directory directory, SegmentInfo si, FieldInfos fn, IOContext context) throws IOException {;
return new SimpleTextStoredFieldsReader(directory, si, fn, context);
}
开发者ID:europeana,项目名称:search,代码行数:5,代码来源:SimpleTextStoredFieldsFormat.java
示例11: fieldsReader
import org.apache.lucene.codecs.StoredFieldsReader; //导入依赖的package包/类
@Override
public StoredFieldsReader fieldsReader(Directory directory, SegmentInfo si, FieldInfos fn, IOContext context) throws IOException {
return new AssertingStoredFieldsReader(in.fieldsReader(directory, si, fn, context), si.getDocCount());
}
开发者ID:europeana,项目名称:search,代码行数:5,代码来源:AssertingStoredFieldsFormat.java
示例12: AssertingStoredFieldsReader
import org.apache.lucene.codecs.StoredFieldsReader; //导入依赖的package包/类
AssertingStoredFieldsReader(StoredFieldsReader in, int maxDoc) {
this.in = in;
this.maxDoc = maxDoc;
}
开发者ID:europeana,项目名称:search,代码行数:5,代码来源:AssertingStoredFieldsFormat.java
示例13: clone
import org.apache.lucene.codecs.StoredFieldsReader; //导入依赖的package包/类
@Override
public StoredFieldsReader clone() {
return new AssertingStoredFieldsReader(in.clone(), maxDoc);
}
开发者ID:europeana,项目名称:search,代码行数:5,代码来源:AssertingStoredFieldsFormat.java
示例14: fieldsReader
import org.apache.lucene.codecs.StoredFieldsReader; //导入依赖的package包/类
@Override
public StoredFieldsReader fieldsReader(Directory directory, SegmentInfo si, FieldInfos fn, IOContext context) throws IOException {
return delegate.fieldsReader(directory, si, fn, context);
}
开发者ID:europeana,项目名称:search,代码行数:5,代码来源:CrankyStoredFieldsFormat.java
注:本文中的org.apache.lucene.codecs.StoredFieldsReader类示例整理自Github/MSDocs等源码及文档管理平台,相关代码片段筛选自各路编程大神贡献的开源项目,源码版权归原作者所有,传播和使用请参考对应项目的License;未经允许,请勿转载。 |
请发表评论