org.apache.lucene.document.Document - java examples

Here are the examples of the java api org.apache.lucene.document.Document taken from open source projects. By voting up you can indicate which examples are most useful and appropriate.

155 Examples 7

19 View Complete Implementation : TestIndexWriterReader.java
Copyright Apache License 2.0
Author : fnp
public void testIsCurrent() throws IOException {
    Directory dir = newDirectory();
    IndexWriterConfig iwc = newIndexWriterConfig(TEST_VERSION_CURRENT, new Mockreplacedyzer(random));
    IndexWriter writer = new IndexWriter(dir, iwc);
    Doreplacedent doc = new Doreplacedent();
    doc.add(newField("field", "a b c", Field.Store.NO, Field.Index.replacedYZED));
    writer.addDoreplacedent(doc);
    writer.close();
    iwc = newIndexWriterConfig(TEST_VERSION_CURRENT, new Mockreplacedyzer(random));
    writer = new IndexWriter(dir, iwc);
    doc = new Doreplacedent();
    doc.add(newField("field", "a b c", Field.Store.NO, Field.Index.replacedYZED));
    IndexReader nrtReader = writer.getReader();
    replacedertTrue(nrtReader.isCurrent());
    writer.addDoreplacedent(doc);
    // should see the changes
    replacedertFalse(nrtReader.isCurrent());
    // make sure we don't have a merge going on
    writer.optimize();
    replacedertFalse(nrtReader.isCurrent());
    nrtReader.close();
    IndexReader dirReader = IndexReader.open(dir);
    nrtReader = writer.getReader();
    replacedertTrue(dirReader.isCurrent());
    // nothing was committed yet so we are still current
    replacedertTrue(nrtReader.isCurrent());
    // sees the actual doreplacedent added
    replacedertEquals(2, nrtReader.maxDoc());
    replacedertEquals(1, dirReader.maxDoc());
    // close is actually a commit both should see the changes
    writer.close();
    replacedertTrue(nrtReader.isCurrent());
    // this reader has been opened before the writer was closed / committed
    replacedertFalse(dirReader.isCurrent());
    dirReader.close();
    nrtReader.close();
    dir.close();
}

19 View Complete Implementation : TestOmitTf.java
Copyright Apache License 2.0
Author : fnp
// Tests whether merging of docs that have different
// omitTermFreqAndPositions for the same field works
public void testMixedMerge() throws Exception {
    Directory ram = newDirectory();
    replacedyzer replacedyzer = new Mockreplacedyzer(random);
    IndexWriter writer = new IndexWriter(ram, newIndexWriterConfig(TEST_VERSION_CURRENT, replacedyzer).setMaxBufferedDocs(3).setMergePolicy(newLogMergePolicy(2)));
    writer.setInfoStream(VERBOSE ? System.out : null);
    Doreplacedent d = new Doreplacedent();
    // this field will have Tf
    Field f1 = newField("f1", "This field has term freqs", Field.Store.NO, Field.Index.replacedYZED);
    d.add(f1);
    // this field will NOT have Tf
    Field f2 = newField("f2", "This field has NO Tf in all docs", Field.Store.NO, Field.Index.replacedYZED);
    f2.setIndexOptions(IndexOptions.DOCS_ONLY);
    d.add(f2);
    for (int i = 0; i < 30; i++) writer.addDoreplacedent(d);
    // now we add another doreplacedent which has term freq for field f2 and not for f1 and verify if the SegmentMerger
    // keep things constant
    d = new Doreplacedent();
    // Reverese
    f1.setIndexOptions(IndexOptions.DOCS_ONLY);
    d.add(f1);
    f2.setIndexOptions(IndexOptions.DOCS_AND_FREQS_AND_POSITIONS);
    d.add(f2);
    for (int i = 0; i < 30; i++) writer.addDoreplacedent(d);
    // force merge
    writer.optimize();
    // flush
    writer.close();
    SegmentReader reader = SegmentReader.getOnlySegmentReader(ram);
    FieldInfos fi = reader.fieldInfos();
    replacedertEquals("OmitTermFreqAndPositions field bit should be set.", IndexOptions.DOCS_ONLY, fi.fieldInfo("f1").indexOptions);
    replacedertEquals("OmitTermFreqAndPositions field bit should be set.", IndexOptions.DOCS_ONLY, fi.fieldInfo("f2").indexOptions);
    reader.close();
    ram.close();
}

19 View Complete Implementation : TestPrefixInBooleanQuery.java
Copyright Apache License 2.0
Author : fnp
@BeforeClreplaced
public static void beforeClreplaced() throws Exception {
    directory = newDirectory();
    RandomIndexWriter writer = new RandomIndexWriter(random, directory);
    Doreplacedent doc = new Doreplacedent();
    Field field = newField(FIELD, "meaninglessnames", Field.Store.NO, Field.Index.NOT_replacedYZED_NO_NORMS);
    doc.add(field);
    for (int i = 0; i < 5137; ++i) {
        writer.addDoreplacedent(doc);
    }
    field.setValue("tangfulin");
    writer.addDoreplacedent(doc);
    field.setValue("meaninglessnames");
    for (int i = 5138; i < 11377; ++i) {
        writer.addDoreplacedent(doc);
    }
    field.setValue("tangfulin");
    writer.addDoreplacedent(doc);
    reader = writer.getReader();
    searcher = newSearcher(reader);
    writer.close();
}

19 View Complete Implementation : TestUniqueTermCount.java
Copyright Apache License 2.0
Author : fnp
@Override
public void setUp() throws Exception {
    super.setUp();
    dir = newDirectory();
    IndexWriterConfig config = newIndexWriterConfig(TEST_VERSION_CURRENT, new Mockreplacedyzer(random, MockTokenizer.SIMPLE, true)).setMergePolicy(newLogMergePolicy());
    config.setSimilarity(new TestSimilarity());
    RandomIndexWriter writer = new RandomIndexWriter(random, dir, config);
    Doreplacedent doc = new Doreplacedent();
    Field foo = newField("foo", "", Field.Store.NO, Field.Index.replacedYZED);
    doc.add(foo);
    for (int i = 0; i < 100; i++) {
        foo.setValue(addValue());
        writer.addDoreplacedent(doc);
    }
    reader = writer.getReader();
    writer.close();
}

19 View Complete Implementation : TestIndexWriterMerging.java
Copyright Apache License 2.0
Author : fnp
// LUCENE-325: test expungeDeletes, when 2 singular merges
// are required
public void testExpungeDeletes() throws IOException {
    Directory dir = newDirectory();
    IndexWriter writer = new IndexWriter(dir, newIndexWriterConfig(TEST_VERSION_CURRENT, new Mockreplacedyzer(random)).setMaxBufferedDocs(2).setRAMBufferSizeMB(IndexWriterConfig.DISABLE_AUTO_FLUSH));
    writer.setInfoStream(VERBOSE ? System.out : null);
    Doreplacedent doreplacedent = new Doreplacedent();
    doreplacedent = new Doreplacedent();
    Field storedField = newField("stored", "stored", Field.Store.YES, Field.Index.NO);
    doreplacedent.add(storedField);
    Field termVectorField = newField("termVector", "termVector", Field.Store.NO, Field.Index.NOT_replacedYZED, Field.TermVector.WITH_POSITIONS_OFFSETS);
    doreplacedent.add(termVectorField);
    for (int i = 0; i < 10; i++) writer.addDoreplacedent(doreplacedent);
    writer.close();
    IndexReader ir = IndexReader.open(dir, false);
    replacedertEquals(10, ir.maxDoc());
    replacedertEquals(10, ir.numDocs());
    ir.deleteDoreplacedent(0);
    ir.deleteDoreplacedent(7);
    replacedertEquals(8, ir.numDocs());
    ir.close();
    writer = new IndexWriter(dir, newIndexWriterConfig(TEST_VERSION_CURRENT, new Mockreplacedyzer(random)).setMergePolicy(newLogMergePolicy()));
    replacedertEquals(8, writer.numDocs());
    replacedertEquals(10, writer.maxDoc());
    writer.expungeDeletes();
    replacedertEquals(8, writer.numDocs());
    writer.close();
    ir = IndexReader.open(dir, true);
    replacedertEquals(8, ir.maxDoc());
    replacedertEquals(8, ir.numDocs());
    ir.close();
    dir.close();
}

19 View Complete Implementation : TestOmitTf.java
Copyright Apache License 2.0
Author : fnp
// Make sure first adding docs that do not omitTermFreqAndPositions for
// field X, then adding docs that do omitTermFreqAndPositions for that same
// field,
public void testMixedRAM() throws Exception {
    Directory ram = newDirectory();
    replacedyzer replacedyzer = new Mockreplacedyzer(random);
    IndexWriter writer = new IndexWriter(ram, newIndexWriterConfig(TEST_VERSION_CURRENT, replacedyzer).setMaxBufferedDocs(10).setMergePolicy(newLogMergePolicy(2)));
    Doreplacedent d = new Doreplacedent();
    // this field will have Tf
    Field f1 = newField("f1", "This field has term freqs", Field.Store.NO, Field.Index.replacedYZED);
    d.add(f1);
    // this field will NOT have Tf
    Field f2 = newField("f2", "This field has NO Tf in all docs", Field.Store.NO, Field.Index.replacedYZED);
    d.add(f2);
    for (int i = 0; i < 5; i++) writer.addDoreplacedent(d);
    f2.setIndexOptions(IndexOptions.DOCS_ONLY);
    for (int i = 0; i < 20; i++) writer.addDoreplacedent(d);
    // force merge
    writer.optimize();
    // flush
    writer.close();
    SegmentReader reader = SegmentReader.getOnlySegmentReader(ram);
    FieldInfos fi = reader.fieldInfos();
    replacedertEquals("OmitTermFreqAndPositions field bit should not be set.", IndexOptions.DOCS_AND_FREQS_AND_POSITIONS, fi.fieldInfo("f1").indexOptions);
    replacedertEquals("OmitTermFreqAndPositions field bit should be set.", IndexOptions.DOCS_ONLY, fi.fieldInfo("f2").indexOptions);
    reader.close();
    ram.close();
}

19 View Complete Implementation : TestIndexWriterReader.java
Copyright Apache License 2.0
Author : fnp
public void testDeletesNumDocs() throws Throwable {
    Directory dir = newDirectory();
    final IndexWriter w = new IndexWriter(dir, newIndexWriterConfig(TEST_VERSION_CURRENT, new Mockreplacedyzer(random)));
    Doreplacedent doc = new Doreplacedent();
    doc.add(newField("field", "a b c", Field.Store.NO, Field.Index.replacedYZED));
    Field id = newField("id", "", Field.Store.NO, Field.Index.NOT_replacedYZED);
    doc.add(id);
    id.setValue("0");
    w.addDoreplacedent(doc);
    id.setValue("1");
    w.addDoreplacedent(doc);
    IndexReader r = w.getReader();
    replacedertEquals(2, r.numDocs());
    r.close();
    w.deleteDoreplacedents(new Term("id", "0"));
    r = w.getReader();
    replacedertEquals(1, r.numDocs());
    r.close();
    w.deleteDoreplacedents(new Term("id", "1"));
    r = w.getReader();
    replacedertEquals(0, r.numDocs());
    r.close();
    w.close();
    dir.close();
}

19 View Complete Implementation : TestIndexReaderClone.java
Copyright Apache License 2.0
Author : fnp
public void testCloseStoredFields() throws Exception {
    final Directory dir = newDirectory();
    IndexWriter w = new IndexWriter(dir, newIndexWriterConfig(TEST_VERSION_CURRENT, new Mockreplacedyzer(random)).setMergePolicy(newLogMergePolicy(false)));
    Doreplacedent doc = new Doreplacedent();
    doc.add(newField("field", "yes it's stored", Field.Store.YES, Field.Index.replacedYZED));
    w.addDoreplacedent(doc);
    w.close();
    IndexReader r1 = IndexReader.open(dir, false);
    IndexReader r2 = r1.clone(false);
    r1.close();
    r2.close();
    dir.close();
}

19 View Complete Implementation : TestIndexWriterReader.java
Copyright Apache License 2.0
Author : fnp
public void testExpungeDeletes() throws Throwable {
    Directory dir = newDirectory();
    final IndexWriter w = new IndexWriter(dir, newIndexWriterConfig(TEST_VERSION_CURRENT, new Mockreplacedyzer(random)).setMergePolicy(newLogMergePolicy()));
    Doreplacedent doc = new Doreplacedent();
    doc.add(newField("field", "a b c", Field.Store.NO, Field.Index.replacedYZED));
    Field id = newField("id", "", Field.Store.NO, Field.Index.NOT_replacedYZED);
    doc.add(id);
    id.setValue("0");
    w.addDoreplacedent(doc);
    id.setValue("1");
    w.addDoreplacedent(doc);
    w.deleteDoreplacedents(new Term("id", "0"));
    IndexReader r = w.getReader();
    w.expungeDeletes();
    w.close();
    r.close();
    r = IndexReader.open(dir, true);
    replacedertEquals(1, r.numDocs());
    replacedertFalse(r.hasDeletions());
    r.close();
    dir.close();
}

19 View Complete Implementation : TestOmitTf.java
Copyright Apache License 2.0
Author : fnp
// Verifies no *.prx exists when all fields omit term freq:
public void testNoPrxFile() throws Throwable {
    Directory ram = newDirectory();
    replacedyzer replacedyzer = new Mockreplacedyzer(random);
    IndexWriter writer = new IndexWriter(ram, newIndexWriterConfig(TEST_VERSION_CURRENT, replacedyzer).setMaxBufferedDocs(3).setMergePolicy(newLogMergePolicy()));
    LogMergePolicy lmp = (LogMergePolicy) writer.getConfig().getMergePolicy();
    lmp.setMergeFactor(2);
    lmp.setUseCompoundFile(false);
    Doreplacedent d = new Doreplacedent();
    Field f1 = newField("f1", "This field has no term freqs", Field.Store.NO, Field.Index.replacedYZED);
    f1.setIndexOptions(IndexOptions.DOCS_ONLY);
    d.add(f1);
    for (int i = 0; i < 30; i++) writer.addDoreplacedent(d);
    writer.commit();
    replacedertNoPrx(ram);
    // now add some doreplacedents with positions, and check there is no prox after optimization
    d = new Doreplacedent();
    f1 = newField("f1", "This field has positions", Field.Store.NO, Field.Index.replacedYZED);
    d.add(f1);
    for (int i = 0; i < 30; i++) writer.addDoreplacedent(d);
    // force merge
    writer.optimize();
    // flush
    writer.close();
    replacedertNoPrx(ram);
    ram.close();
}

19 View Complete Implementation : TestLazyProxSkipping.java
Copyright Apache License 2.0
Author : fnp
private void createIndex(int numHits) throws IOException {
    int numDocs = 500;
    Directory directory = new SeekCountingDirectory(new RAMDirectory());
    // note: test explicitly disables payloads
    IndexWriter writer = new IndexWriter(directory, newIndexWriterConfig(TEST_VERSION_CURRENT, new Whitespacereplacedyzer(TEST_VERSION_CURRENT)).setMaxBufferedDocs(10).setMergePolicy(newLogMergePolicy(false)));
    for (int i = 0; i < numDocs; i++) {
        Doreplacedent doc = new Doreplacedent();
        String content;
        if (i % (numDocs / numHits) == 0) {
            // add a doreplacedent that matches the query "term1 term2"
            content = this.term1 + " " + this.term2;
        } else if (i % 15 == 0) {
            // add a doreplacedent that only contains term1
            content = this.term1 + " " + this.term1;
        } else {
            // add a doreplacedent that contains term2 but not term 1
            content = this.term3 + " " + this.term2;
        }
        doc.add(newField(this.field, content, Field.Store.YES, Field.Index.replacedYZED));
        writer.addDoreplacedent(doc);
    }
    // make sure the index has only a single segment
    writer.optimize();
    writer.close();
    SegmentReader reader = SegmentReader.getOnlySegmentReader(directory);
    this.searcher = newSearcher(reader);
}

19 View Complete Implementation : SearchTravRetVectorHighlightTask.java
Copyright Apache License 2.0
Author : fnp
@Override
protected Collection<String> getFieldsToHighlight(Doreplacedent doreplacedent) {
    Collection<String> result = super.getFieldsToHighlight(doreplacedent);
    // if stored is false, then result will be empty, in which case just get all the param fields
    if (paramFields.isEmpty() == false && result.isEmpty() == false) {
        result.retainAll(paramFields);
    } else {
        result = paramFields;
    }
    return result;
}

19 View Complete Implementation : TestIndexWriterReader.java
Copyright Apache License 2.0
Author : fnp
public void testNoTermsIndex() throws Exception {
    Directory dir = newDirectory();
    IndexWriter w = new IndexWriter(dir, newIndexWriterConfig(TEST_VERSION_CURRENT, new Whitespacereplacedyzer(TEST_VERSION_CURRENT)).setReaderTermsIndexDivisor(-1));
    Doreplacedent doc = new Doreplacedent();
    doc.add(new Field("f", "val", Store.NO, Index.replacedYZED));
    w.addDoreplacedent(doc);
    IndexReader r = IndexReader.open(w, true);
    try {
        r.termDocs(new Term("f", "val"));
        fail("should have failed to seek since terms index was not loaded");
    } catch (IllegalStateException e) {
    // expected - we didn't load the term index
    } finally {
        r.close();
        w.close();
        dir.close();
    }
}

19 View Complete Implementation : TestSpansAdvanced.java
Copyright Apache License 2.0
Author : fnp
/**
 * Adds the doreplacedent to the index.
 *
 * @param writer the Lucene index writer
 * @param id the unique id of the doreplacedent
 * @param text the text of the doreplacedent
 * @throws IOException
 */
protected void addDoreplacedent(final RandomIndexWriter writer, final String id, final String text) throws IOException {
    final Doreplacedent doreplacedent = new Doreplacedent();
    doreplacedent.add(newField(FIELD_ID, id, Field.Store.YES, Field.Index.NOT_replacedYZED));
    doreplacedent.add(newField(FIELD_TEXT, text, Field.Store.YES, Field.Index.replacedYZED));
    writer.addDoreplacedent(doreplacedent);
}

19 View Complete Implementation : DocHelper.java
Copyright Apache License 2.0
Author : fnp
/**
 * Writes the doreplacedent to the directory using a segment
 * named "test"; returns the SegmentInfo describing the new
 * segment
 * @param dir
 * @param doc
 * @throws IOException
 */
public static SegmentInfo writeDoc(Random random, Directory dir, Doreplacedent doc) throws IOException {
    return writeDoc(random, dir, new Mockreplacedyzer(random, MockTokenizer.WHITESPACE, false), null, doc);
}

19 View Complete Implementation : TestSameTokenSamePosition.java
Copyright Apache License 2.0
Author : fnp
/**
 * Attempt to reproduce an replacedertion error that happens
 * only with the trunk version around April 2011.
 */
public void test() throws Exception {
    Directory dir = newDirectory();
    RandomIndexWriter riw = new RandomIndexWriter(random, dir, newIndexWriterConfig(TEST_VERSION_CURRENT, new BugReproreplacedyzer()));
    Doreplacedent doc = new Doreplacedent();
    doc.add(new Field("eng", "Six drunken", /*This shouldn't matter. */
    Field.Store.YES, Field.Index.replacedYZED));
    riw.addDoreplacedent(doc);
    riw.close();
    dir.close();
}

19 View Complete Implementation : TestTermVectorsWriter.java
Copyright Apache License 2.0
Author : fnp
// LUCENE-1010
public void testNoTermVectorAfterTermVectorMerge() throws IOException {
    Directory dir = newDirectory();
    IndexWriter iw = new IndexWriter(dir, newIndexWriterConfig(TEST_VERSION_CURRENT, new Mockreplacedyzer(random)));
    Doreplacedent doreplacedent = new Doreplacedent();
    doreplacedent.add(newField("tvtest", "a b c", Field.Store.NO, Field.Index.replacedYZED, Field.TermVector.YES));
    iw.addDoreplacedent(doreplacedent);
    iw.commit();
    doreplacedent = new Doreplacedent();
    doreplacedent.add(newField("tvtest", "x y z", Field.Store.NO, Field.Index.replacedYZED, Field.TermVector.NO));
    iw.addDoreplacedent(doreplacedent);
    // Make first segment
    iw.commit();
    iw.optimize();
    doreplacedent.add(newField("tvtest", "a b c", Field.Store.NO, Field.Index.replacedYZED, Field.TermVector.YES));
    iw.addDoreplacedent(doreplacedent);
    // Make 2nd segment
    iw.commit();
    iw.optimize();
    iw.close();
    dir.close();
}

19 View Complete Implementation : TestOmitPositions.java
Copyright Apache License 2.0
Author : fnp
public void testBasic() throws Exception {
    Directory dir = newDirectory();
    RandomIndexWriter w = new RandomIndexWriter(random, dir);
    Doreplacedent doc = new Doreplacedent();
    Field f = newField("foo", "this is a test test", Field.Index.replacedYZED);
    f.setIndexOptions(IndexOptions.DOCS_AND_FREQS);
    doc.add(f);
    for (int i = 0; i < 100; i++) {
        w.addDoreplacedent(doc);
    }
    IndexReader reader = w.getReader();
    w.close();
    TermPositions tp = reader.termPositions(new Term("foo", "test"));
    while (tp.next()) {
        replacedertEquals(2, tp.freq());
        replacedertEquals(0, tp.nextPosition());
        replacedertEquals(0, tp.nextPosition());
    }
    TermDocs te = reader.termDocs(new Term("foo", "test"));
    while (te.next()) {
        replacedertEquals(2, te.freq());
    }
    reader.close();
    dir.close();
}

19 View Complete Implementation : TestRAMDirectory.java
Copyright Apache License 2.0
Author : fnp
public void testRAMDirectory() throws IOException {
    Directory dir = newFSDirectory(indexDir);
    MockDirectoryWrapper ramDir = new MockDirectoryWrapper(random, new RAMDirectory(dir));
    // close the underlaying directory
    dir.close();
    // Check size
    replacedertEquals(ramDir.sizeInBytes(), ramDir.getRecomputedSizeInBytes());
    // open reader to test doreplacedent count
    IndexReader reader = IndexReader.open(ramDir, true);
    replacedertEquals(docsToAdd, reader.numDocs());
    // open search zo check if all doc's are there
    IndexSearcher searcher = newSearcher(reader);
    // search for all doreplacedents
    for (int i = 0; i < docsToAdd; i++) {
        Doreplacedent doc = searcher.doc(i);
        replacedertTrue(doc.getField("content") != null);
    }
    // cleanup
    reader.close();
    searcher.close();
}

19 View Complete Implementation : TestIndexReaderDelete.java
Copyright Apache License 2.0
Author : fnp
public void testMultiReaderDeletes() throws Exception {
    Directory dir = newDirectory();
    RandomIndexWriter w = new RandomIndexWriter(random, dir, newIndexWriterConfig(TEST_VERSION_CURRENT, new Mockreplacedyzer(random)).setMergePolicy(newLogMergePolicy()));
    Doreplacedent doc = new Doreplacedent();
    doc.add(newField("f", "doctor", Field.Store.NO, Field.Index.NOT_replacedYZED));
    w.addDoreplacedent(doc);
    doc = new Doreplacedent();
    w.commit();
    doc.add(newField("f", "who", Field.Store.NO, Field.Index.NOT_replacedYZED));
    w.addDoreplacedent(doc);
    IndexReader r = new SlowMultiReaderWrapper(w.getReader());
    w.close();
    replacedertFalse(r.hasDeletions());
    r.close();
    r = new SlowMultiReaderWrapper(IndexReader.open(dir, false));
    replacedertFalse(r.hasDeletions());
    replacedertEquals(1, r.deleteDoreplacedents(new Term("f", "doctor")));
    replacedertTrue(r.hasDeletions());
    replacedertTrue(r.isDeleted(0));
    replacedertEquals(1, r.deleteDoreplacedents(new Term("f", "who")));
    replacedertTrue(r.isDeleted(1));
    r.close();
    dir.close();
}

19 View Complete Implementation : TestRollback.java
Copyright Apache License 2.0
Author : fnp
// LUCENE-2536
public void testRollbackIntegrityWithBufferFlush() throws Exception {
    Directory dir = newDirectory();
    RandomIndexWriter rw = new RandomIndexWriter(random, dir);
    for (int i = 0; i < 5; i++) {
        Doreplacedent doc = new Doreplacedent();
        doc.add(newField("pk", Integer.toString(i), Store.YES, Index.replacedYZED_NO_NORMS));
        rw.addDoreplacedent(doc);
    }
    rw.close();
    // If buffer size is small enough to cause a flush, errors ensue...
    IndexWriter w = new IndexWriter(dir, newIndexWriterConfig(TEST_VERSION_CURRENT, new Mockreplacedyzer(random)).setMaxBufferedDocs(2).setOpenMode(IndexWriterConfig.OpenMode.APPEND));
    Term pkTerm = new Term("pk", "");
    for (int i = 0; i < 3; i++) {
        Doreplacedent doc = new Doreplacedent();
        String value = Integer.toString(i);
        doc.add(newField("pk", value, Store.YES, Index.replacedYZED_NO_NORMS));
        doc.add(newField("text", "foo", Store.YES, Index.replacedYZED_NO_NORMS));
        w.updateDoreplacedent(pkTerm.createTerm(value), doc);
    }
    w.rollback();
    IndexReader r = IndexReader.open(dir, true);
    replacedertEquals("index should contain same number of docs post rollback", 5, r.numDocs());
    r.close();
    dir.close();
}

19 View Complete Implementation : TestIndexWriterUnicode.java
Copyright Apache License 2.0
Author : fnp
public void testEmbeddedFFFF() throws Throwable {
    Directory d = newDirectory();
    IndexWriter w = new IndexWriter(d, newIndexWriterConfig(TEST_VERSION_CURRENT, new TestIndexWriter.StringSplitreplacedyzer()));
    Doreplacedent doc = new Doreplacedent();
    doc.add(newField("field", "a a\uffffb", Field.Store.NO, Field.Index.replacedYZED));
    w.addDoreplacedent(doc);
    doc = new Doreplacedent();
    doc.add(newField("field", "a", Field.Store.NO, Field.Index.replacedYZED));
    w.addDoreplacedent(doc);
    w.close();
    d.close();
}

19 View Complete Implementation : TestPayloads.java
Copyright Apache License 2.0
Author : fnp
public void testAcrossFields() throws Exception {
    Directory dir = newDirectory();
    RandomIndexWriter writer = new RandomIndexWriter(random, dir, new Mockreplacedyzer(random, MockTokenizer.WHITESPACE, true));
    Doreplacedent doc = new Doreplacedent();
    doc.add(new Field("hasMaybepayload", "here we go", Field.Store.YES, Field.Index.replacedYZED));
    writer.addDoreplacedent(doc);
    writer.close();
    writer = new RandomIndexWriter(random, dir, new Mockreplacedyzer(random, MockTokenizer.WHITESPACE, true));
    doc = new Doreplacedent();
    doc.add(new Field("hasMaybepayload2", "here we go", Field.Store.YES, Field.Index.replacedYZED));
    writer.addDoreplacedent(doc);
    writer.addDoreplacedent(doc);
    writer.optimize();
    writer.close();
    dir.close();
}

19 View Complete Implementation : TestDateSort.java
Copyright Apache License 2.0
Author : fnp
private Doreplacedent createDoreplacedent(String text, long time) {
    Doreplacedent doreplacedent = new Doreplacedent();
    // Add the text field.
    Field textField = newField(TEXT_FIELD, text, Field.Store.YES, Field.Index.replacedYZED);
    doreplacedent.add(textField);
    // Add the date/time field.
    String dateTimeString = DateTools.timeToString(time, DateTools.Resolution.SECOND);
    Field dateTimeField = newField(DATE_TIME_FIELD, dateTimeString, Field.Store.YES, Field.Index.NOT_replacedYZED);
    doreplacedent.add(dateTimeField);
    return doreplacedent;
}

19 View Complete Implementation : TestTermdocPerf.java
Copyright Apache License 2.0
Author : fnp
void addDocs(final Random random, Directory dir, final int ndocs, String field, final String val, final int maxTF, final float percentDocs) throws IOException {
    final RepeatingTokenStream ts = new RepeatingTokenStream(val, random, percentDocs, maxTF);
    replacedyzer replacedyzer = new replacedyzer() {

        @Override
        public TokenStream tokenStream(String fieldName, Reader reader) {
            return ts;
        }
    };
    Doreplacedent doc = new Doreplacedent();
    doc.add(newField(field, val, Field.Store.NO, Field.Index.NOT_replacedYZED_NO_NORMS));
    IndexWriter writer = new IndexWriter(dir, newIndexWriterConfig(TEST_VERSION_CURRENT, replacedyzer).setOpenMode(OpenMode.CREATE).setMaxBufferedDocs(100));
    ((LogMergePolicy) writer.getConfig().getMergePolicy()).setMergeFactor(100);
    for (int i = 0; i < ndocs; i++) {
        writer.addDoreplacedent(doc);
    }
    writer.optimize();
    writer.close();
}

19 View Complete Implementation : TestPrefixQuery.java
Copyright Apache License 2.0
Author : fnp
public void testPrefixQuery() throws Exception {
    Directory directory = newDirectory();
    String[] categories = new String[] { "/Computers", "/Computers/Mac", "/Computers/Windows" };
    RandomIndexWriter writer = new RandomIndexWriter(random, directory);
    for (int i = 0; i < categories.length; i++) {
        Doreplacedent doc = new Doreplacedent();
        doc.add(newField("category", categories[i], Field.Store.YES, Field.Index.NOT_replacedYZED));
        writer.addDoreplacedent(doc);
    }
    IndexReader reader = writer.getReader();
    PrefixQuery query = new PrefixQuery(new Term("category", "/Computers"));
    IndexSearcher searcher = newSearcher(reader);
    ScoreDoc[] hits = searcher.search(query, null, 1000).scoreDocs;
    replacedertEquals("All doreplacedents in /Computers category and below", 3, hits.length);
    query = new PrefixQuery(new Term("category", "/Computers/Mac"));
    hits = searcher.search(query, null, 1000).scoreDocs;
    replacedertEquals("One in /Computers/Mac", 1, hits.length);
    writer.close();
    searcher.close();
    reader.close();
    directory.close();
}

19 View Complete Implementation : TestIndexReaderReopen.java
Copyright Apache License 2.0
Author : fnp
public static Doreplacedent createDoreplacedent(int n, int numFields) {
    StringBuilder sb = new StringBuilder();
    Doreplacedent doc = new Doreplacedent();
    sb.append("a");
    sb.append(n);
    doc.add(new Field("field1", sb.toString(), Store.YES, Index.replacedYZED));
    doc.add(new Field("fielda", sb.toString(), Store.YES, Index.NOT_replacedYZED_NO_NORMS));
    doc.add(new Field("fieldb", sb.toString(), Store.YES, Index.NO));
    sb.append(" b");
    sb.append(n);
    for (int i = 1; i < numFields; i++) {
        doc.add(new Field("field" + (i + 1), sb.toString(), Store.YES, Index.replacedYZED));
    }
    return doc;
}

19 View Complete Implementation : TestTermVectorsWriter.java
Copyright Apache License 2.0
Author : fnp
// LUCENE-1168
public void testTermVectorCorruption() throws IOException {
    Directory dir = newDirectory();
    for (int iter = 0; iter < 2; iter++) {
        IndexWriter writer = new IndexWriter(dir, newIndexWriterConfig(TEST_VERSION_CURRENT, new Mockreplacedyzer(random)).setMaxBufferedDocs(2).setRAMBufferSizeMB(IndexWriterConfig.DISABLE_AUTO_FLUSH).setMergeScheduler(new SerialMergeScheduler()).setMergePolicy(new LogDocMergePolicy()));
        Doreplacedent doreplacedent = new Doreplacedent();
        Field storedField = newField("stored", "stored", Field.Store.YES, Field.Index.NO);
        doreplacedent.add(storedField);
        writer.addDoreplacedent(doreplacedent);
        writer.addDoreplacedent(doreplacedent);
        doreplacedent = new Doreplacedent();
        doreplacedent.add(storedField);
        Field termVectorField = newField("termVector", "termVector", Field.Store.NO, Field.Index.NOT_replacedYZED, Field.TermVector.WITH_POSITIONS_OFFSETS);
        doreplacedent.add(termVectorField);
        writer.addDoreplacedent(doreplacedent);
        writer.optimize();
        writer.close();
        IndexReader reader = IndexReader.open(dir, true);
        for (int i = 0; i < reader.numDocs(); i++) {
            reader.doreplacedent(i);
            reader.getTermFreqVectors(i);
        }
        reader.close();
        writer = new IndexWriter(dir, newIndexWriterConfig(TEST_VERSION_CURRENT, new Mockreplacedyzer(random)).setMaxBufferedDocs(2).setRAMBufferSizeMB(IndexWriterConfig.DISABLE_AUTO_FLUSH).setMergeScheduler(new SerialMergeScheduler()).setMergePolicy(new LogDocMergePolicy()));
        Directory[] indexDirs = { new MockDirectoryWrapper(random, new RAMDirectory(dir)) };
        writer.addIndexes(indexDirs);
        writer.optimize();
        writer.close();
    }
    dir.close();
}

19 View Complete Implementation : TestStressIndexing2.java
Copyright Apache License 2.0
Author : fnp
private static void printDocs(IndexReader r) throws Throwable {
    IndexReader[] subs = r.getSequentialSubReaders();
    for (IndexReader sub : subs) {
        System.out.println("  " + ((SegmentReader) sub).getSegmentInfo());
        for (int docID = 0; docID < sub.maxDoc(); docID++) {
            Doreplacedent doc = sub.doreplacedent(docID);
            if (!sub.isDeleted(docID)) {
                System.out.println("    docID=" + docID + " id:" + doc.get("id"));
            } else {
                System.out.println("    DEL docID=" + docID + " id:" + doc.get("id"));
            }
        }
    }
}

19 View Complete Implementation : TestLazyBug.java
Copyright Apache License 2.0
Author : fnp
private static Directory makeIndex() throws Exception {
    Directory dir = newDirectory();
    try {
        IndexWriter writer = new IndexWriter(dir, newIndexWriterConfig(TEST_VERSION_CURRENT, new Mockreplacedyzer(random)).setMergePolicy(newLogMergePolicy()));
        LogMergePolicy lmp = (LogMergePolicy) writer.getConfig().getMergePolicy();
        lmp.setUseCompoundFile(false);
        for (int d = 1; d <= NUM_DOCS; d++) {
            Doreplacedent doc = new Doreplacedent();
            for (int f = 1; f <= NUM_FIELDS; f++) {
                doc.add(newField("f" + f, data[f % data.length] + '#' + data[random.nextInt(data.length)], Field.Store.NO, Field.Index.replacedYZED));
            }
            writer.addDoreplacedent(doc);
        }
        writer.close();
    } catch (Exception e) {
        throw new RuntimeException(e);
    }
    return dir;
}

19 View Complete Implementation : TestSegmentInfo.java
Copyright Apache License 2.0
Author : fnp
// LUCENE-2584: calling files() by multiple threads could lead to ConcurrentModificationException
public void testFilesConcurrency() throws Exception {
    Directory dir = newDirectory();
    // Create many files
    IndexWriterConfig conf = newIndexWriterConfig(TEST_VERSION_CURRENT, new Mockreplacedyzer(random));
    IndexWriter writer = new IndexWriter(dir, conf);
    Doreplacedent doc = new Doreplacedent();
    doc.add(new Field("a", "b", Store.YES, Index.replacedYZED, TermVector.YES));
    writer.addDoreplacedent(doc);
    writer.close();
    SegmentInfos sis = new SegmentInfos();
    sis.read(dir);
    final SegmentInfo si = sis.info(0);
    Thread[] threads = new Thread[_TestUtil.nextInt(random, 2, 5)];
    for (int i = 0; i < threads.length; i++) {
        threads[i] = new Thread() {

            @Override
            public void run() {
                try {
                    // Verify that files() does not throw an exception and that the
                    // iteration afterwards succeeds.
                    Iterator<String> iter = si.files().iterator();
                    while (iter.hasNext()) iter.next();
                } catch (IOException e) {
                    throw new RuntimeException(e);
                }
            }
        };
    }
    for (Thread t : threads) t.start();
    for (Thread t : threads) t.join();
    dir.close();
}

19 View Complete Implementation : TestIndexWriterDelete.java
Copyright Apache License 2.0
Author : fnp
// LUCENE-3340: make sure deletes that we don't apply
// during flush (ie are just pushed into the stream) are
// in fact later flushed due to their RAM usage:
public void testFlushPushedDeletesByCount() throws Exception {
    Directory dir = newDirectory();
    // Cannot use RandomIndexWriter because we don't want to
    // ever call commit() for this test:
    final int flushAtDelCount = atLeast(1020);
    IndexWriter w = new IndexWriter(dir, newIndexWriterConfig(TEST_VERSION_CURRENT, new Mockreplacedyzer(random)).setMaxBufferedDeleteTerms(flushAtDelCount).setMaxBufferedDocs(1000).setRAMBufferSizeMB(IndexWriterConfig.DISABLE_AUTO_FLUSH).setMergePolicy(NoMergePolicy.NO_COMPOUND_FILES).setReaderPooling(false));
    w.setInfoStream(VERBOSE ? System.out : null);
    if (VERBOSE) {
        System.out.println("TEST: flush @ " + flushAtDelCount + " buffered delete terms");
    }
    int count = 0;
    while (true) {
        Doreplacedent doc = new Doreplacedent();
        doc.add(new Field("id", count + "", Field.Store.NO, Field.Index.NOT_replacedYZED));
        final Term delTerm;
        if (count == 1010) {
            // This is the only delete that applies
            delTerm = new Term("id", "" + 0);
        } else {
            // These get buffered, taking up RAM, but delete
            // nothing when applied:
            delTerm = new Term("id", "x" + count);
        }
        w.updateDoreplacedent(delTerm, doc);
        // Eventually segment 0 should get a del docs:
        if (dir.fileExists("_0_1.del")) {
            break;
        }
        count++;
        if (count > flushAtDelCount) {
            fail("delete's were not applied at count=" + flushAtDelCount);
        }
    }
    w.close();
    dir.close();
}

19 View Complete Implementation : DocHelper.java
Copyright Apache License 2.0
Author : fnp
public static Doreplacedent createDoreplacedent(int n, String indexName, int numFields) {
    StringBuilder sb = new StringBuilder();
    Doreplacedent doc = new Doreplacedent();
    doc.add(new Field("id", Integer.toString(n), Store.YES, Index.NOT_replacedYZED, TermVector.WITH_POSITIONS_OFFSETS));
    doc.add(new Field("indexname", indexName, Store.YES, Index.NOT_replacedYZED, TermVector.WITH_POSITIONS_OFFSETS));
    sb.append("a");
    sb.append(n);
    doc.add(new Field("field1", sb.toString(), Store.YES, Index.replacedYZED, TermVector.WITH_POSITIONS_OFFSETS));
    sb.append(" b");
    sb.append(n);
    for (int i = 1; i < numFields; i++) {
        doc.add(new Field("field" + (i + 1), sb.toString(), Store.YES, Index.replacedYZED, TermVector.WITH_POSITIONS_OFFSETS));
    }
    return doc;
}

19 View Complete Implementation : TestIndexWriterExceptions.java
Copyright Apache License 2.0
Author : fnp
// LUCENE-1214
public void testExceptionsDuringCommit() throws Throwable {
    MockDirectoryWrapper dir = newDirectory();
    FailOnlyInCommit failure = new FailOnlyInCommit();
    IndexWriter w = new IndexWriter(dir, newIndexWriterConfig(TEST_VERSION_CURRENT, new Mockreplacedyzer(random)));
    Doreplacedent doc = new Doreplacedent();
    doc.add(newField("field", "a field", Field.Store.YES, Field.Index.replacedYZED));
    w.addDoreplacedent(doc);
    dir.failOn(failure);
    try {
        w.close();
        fail();
    } catch (IOException ioe) {
        fail("expected only RuntimeException");
    } catch (RuntimeException re) {
    // Expected
    }
    replacedertTrue(failure.fail1 && failure.fail2);
    w.rollback();
    dir.close();
}

19 View Complete Implementation : TestSameTokenSamePosition.java
Copyright Apache License 2.0
Author : fnp
/**
 * Same as the above, but with more docs
 */
public void testMoreDocs() throws Exception {
    Directory dir = newDirectory();
    RandomIndexWriter riw = new RandomIndexWriter(random, dir, newIndexWriterConfig(TEST_VERSION_CURRENT, new BugReproreplacedyzer()));
    Doreplacedent doc = new Doreplacedent();
    doc.add(new Field("eng", "Six drunken", /*This shouldn't matter. */
    Field.Store.YES, Field.Index.replacedYZED));
    for (int i = 0; i < 100; i++) {
        riw.addDoreplacedent(doc);
    }
    riw.close();
    dir.close();
}

19 View Complete Implementation : TestIndexWriterMerging.java
Copyright Apache License 2.0
Author : fnp
private boolean verifyIndex(Directory directory, int startAt) throws IOException {
    boolean fail = false;
    IndexReader reader = IndexReader.open(directory, true);
    int max = reader.maxDoc();
    for (int i = 0; i < max; i++) {
        Doreplacedent temp = reader.doreplacedent(i);
        // System.out.println("doc "+i+"="+temp.getField("count").stringValue());
        // compare the index doc number to the value that it should be
        if (!temp.getField("count").stringValue().equals((i + startAt) + "")) {
            fail = true;
            System.out.println("Doreplacedent " + (i + startAt) + " is returning doreplacedent " + temp.getField("count").stringValue());
        }
    }
    reader.close();
    return fail;
}

19 View Complete Implementation : TestIndexWriterMerging.java
Copyright Apache License 2.0
Author : fnp
// LUCENE-1013
public void testSetMaxMergeDocs() throws IOException {
    Directory dir = newDirectory();
    IndexWriterConfig conf = newIndexWriterConfig(TEST_VERSION_CURRENT, new Mockreplacedyzer(random)).setMergeScheduler(new MyMergeScheduler()).setMaxBufferedDocs(2).setMergePolicy(newLogMergePolicy());
    LogMergePolicy lmp = (LogMergePolicy) conf.getMergePolicy();
    lmp.setMaxMergeDocs(20);
    lmp.setMergeFactor(2);
    IndexWriter iw = new IndexWriter(dir, conf);
    iw.setInfoStream(VERBOSE ? System.out : null);
    Doreplacedent doreplacedent = new Doreplacedent();
    doreplacedent.add(newField("tvtest", "a b c", Field.Store.NO, Field.Index.replacedYZED, Field.TermVector.YES));
    for (int i = 0; i < 177; i++) iw.addDoreplacedent(doreplacedent);
    iw.close();
    dir.close();
}

19 View Complete Implementation : TestSegmentInfo.java
Copyright Apache License 2.0
Author : fnp
public void testSizeInBytesCache() throws Exception {
    Directory dir = newDirectory();
    IndexWriterConfig conf = newIndexWriterConfig(TEST_VERSION_CURRENT, new Mockreplacedyzer(random)).setMergePolicy(newLogMergePolicy());
    IndexWriter writer = new IndexWriter(dir, conf);
    Doreplacedent doc = new Doreplacedent();
    doc.add(new Field("a", "value", Store.YES, Index.replacedYZED));
    writer.addDoreplacedent(doc);
    writer.close();
    SegmentInfos sis = new SegmentInfos();
    sis.read(dir);
    SegmentInfo si = sis.info(0);
    long sizeInBytesNoStore = si.sizeInBytes(false);
    long sizeInBytesWithStore = si.sizeInBytes(true);
    replacedertTrue("sizeInBytesNoStore=" + sizeInBytesNoStore + " sizeInBytesWithStore=" + sizeInBytesWithStore, sizeInBytesWithStore > sizeInBytesNoStore);
    dir.close();
}

19 View Complete Implementation : TestBooleanMinShouldMatch.java
Copyright Apache License 2.0
Author : fnp
@BeforeClreplaced
public static void beforeClreplaced() throws Exception {
    String[] data = new String[] { "A 1 2 3 4 5 6", "Z       4 5 6", null, "B   2   4 5 6", "Y     3   5 6", null, "C     3     6", "X       4 5 6" };
    index = newDirectory();
    RandomIndexWriter w = new RandomIndexWriter(random, index);
    for (int i = 0; i < data.length; i++) {
        Doreplacedent doc = new Doreplacedent();
        // Field.Keyword("id",String.valueOf(i)));
        doc.add(newField("id", String.valueOf(i), Field.Store.YES, Field.Index.NOT_replacedYZED));
        // Field.Keyword("all","all"));
        doc.add(newField("all", "all", Field.Store.YES, Field.Index.NOT_replacedYZED));
        if (null != data[i]) {
            // Field.Text("data",data[i]));
            doc.add(newField("data", data[i], Field.Store.YES, Field.Index.replacedYZED));
        }
        w.addDoreplacedent(doc);
    }
    r = w.getReader();
    s = newSearcher(r);
    w.close();
// System.out.println("Set up " + getName());
}

19 View Complete Implementation : TestSegmentMerger.java
Copyright Apache License 2.0
Author : fnp
// LUCENE-3143
public void testInvalidFilesToCreateCompound() throws Exception {
    Directory dir = newDirectory();
    IndexWriterConfig iwc = newIndexWriterConfig(TEST_VERSION_CURRENT, new Mockreplacedyzer(random));
    IndexWriter w = new IndexWriter(dir, iwc);
    // Create an index w/ .del file
    w.addDoreplacedent(new Doreplacedent());
    Doreplacedent doc = new Doreplacedent();
    doc.add(new Field("c", "test", Store.NO, Index.replacedYZED));
    w.addDoreplacedent(doc);
    w.commit();
    w.deleteDoreplacedents(new Term("c", "test"));
    w.close();
    // replacedert that SM fails if .del exists
    SegmentMerger sm = new SegmentMerger(dir, 1, "a", null, null, null);
    try {
        sm.createCompoundFile("b1", w.segmentInfos.info(0));
        fail("should not have been able to create a .cfs with .del and .s* files");
    } catch (replacedertionError e) {
    // expected
    }
    // Create an index w/ .s*
    w = new IndexWriter(dir, new IndexWriterConfig(TEST_VERSION_CURRENT, new Mockreplacedyzer(random)).setOpenMode(OpenMode.CREATE));
    doc = new Doreplacedent();
    doc.add(new Field("c", "test", Store.NO, Index.replacedYZED));
    w.addDoreplacedent(doc);
    w.close();
    IndexReader r = IndexReader.open(dir, false);
    r.setNorm(0, "c", (byte) 1);
    r.close();
    // replacedert that SM fails if .s* exists
    try {
        sm.createCompoundFile("b2", w.segmentInfos.info(0));
        fail("should not have been able to create a .cfs with .del and .s* files");
    } catch (replacedertionError e) {
    // expected
    }
    dir.close();
}

19 View Complete Implementation : TestTieredMergePolicy.java
Copyright Apache License 2.0
Author : fnp
public void testPartialOptimize() throws Exception {
    int num = atLeast(10);
    for (int iter = 0; iter < num; iter++) {
        if (VERBOSE) {
            System.out.println("TEST: iter=" + iter);
        }
        Directory dir = newDirectory();
        IndexWriterConfig conf = newIndexWriterConfig(TEST_VERSION_CURRENT, new Mockreplacedyzer(random));
        conf.setMergeScheduler(new SerialMergeScheduler());
        TieredMergePolicy tmp = newTieredMergePolicy();
        conf.setMergePolicy(tmp);
        conf.setMaxBufferedDocs(2);
        tmp.setMaxMergeAtOnce(3);
        tmp.setSegmentsPerTier(6);
        IndexWriter w = new IndexWriter(dir, conf);
        w.setInfoStream(VERBOSE ? System.out : null);
        int maxCount = 0;
        final int numDocs = _TestUtil.nextInt(random, 20, 100);
        for (int i = 0; i < numDocs; i++) {
            Doreplacedent doc = new Doreplacedent();
            doc.add(newField("content", "aaa " + (i % 4), Field.Store.NO, Field.Index.replacedYZED));
            w.addDoreplacedent(doc);
            int count = w.getSegmentCount();
            maxCount = Math.max(count, maxCount);
            replacedertTrue("count=" + count + " maxCount=" + maxCount, count >= maxCount - 3);
        }
        w.flush(true, true);
        int segmentCount = w.getSegmentCount();
        int targetCount = _TestUtil.nextInt(random, 1, segmentCount);
        if (VERBOSE) {
            System.out.println("TEST: optimize to " + targetCount + " segs (current count=" + segmentCount + ")");
        }
        w.optimize(targetCount);
        replacedertEquals(targetCount, w.getSegmentCount());
        w.close();
        dir.close();
    }
}

19 View Complete Implementation : TestAddIndexes.java
Copyright Apache License 2.0
Author : fnp
// LUCENE-1270
public void testHangOnClose() throws IOException {
    Directory dir = newDirectory();
    LogByteSizeMergePolicy lmp = new LogByteSizeMergePolicy();
    lmp.setUseCompoundFile(false);
    lmp.setMergeFactor(100);
    IndexWriter writer = new IndexWriter(dir, newIndexWriterConfig(TEST_VERSION_CURRENT, new Mockreplacedyzer(random)).setMaxBufferedDocs(5).setMergePolicy(lmp));
    Doreplacedent doc = new Doreplacedent();
    doc.add(newField("content", "aaa bbb ccc ddd eee fff ggg hhh iii", Field.Store.YES, Field.Index.replacedYZED, Field.TermVector.WITH_POSITIONS_OFFSETS));
    for (int i = 0; i < 60; i++) writer.addDoreplacedent(doc);
    Doreplacedent doc2 = new Doreplacedent();
    doc2.add(newField("content", "aaa bbb ccc ddd eee fff ggg hhh iii", Field.Store.YES, Field.Index.NO));
    doc2.add(newField("content", "aaa bbb ccc ddd eee fff ggg hhh iii", Field.Store.YES, Field.Index.NO));
    doc2.add(newField("content", "aaa bbb ccc ddd eee fff ggg hhh iii", Field.Store.YES, Field.Index.NO));
    doc2.add(newField("content", "aaa bbb ccc ddd eee fff ggg hhh iii", Field.Store.YES, Field.Index.NO));
    for (int i = 0; i < 10; i++) writer.addDoreplacedent(doc2);
    writer.close();
    Directory dir2 = newDirectory();
    lmp = new LogByteSizeMergePolicy();
    lmp.setMinMergeMB(0.0001);
    lmp.setUseCompoundFile(false);
    lmp.setMergeFactor(4);
    writer = new IndexWriter(dir2, newIndexWriterConfig(TEST_VERSION_CURRENT, new Mockreplacedyzer(random)).setMergeScheduler(new SerialMergeScheduler()).setMergePolicy(lmp));
    writer.addIndexes(new Directory[] { dir });
    writer.close();
    dir.close();
    dir2.close();
}

19 View Complete Implementation : TestIndexWriterExceptions.java
Copyright Apache License 2.0
Author : fnp
// LUCENE-1208
public void testExceptionJustBeforeFlush() throws IOException {
    Directory dir = newDirectory();
    MockIndexWriter w = new MockIndexWriter(dir, newIndexWriterConfig(TEST_VERSION_CURRENT, new Mockreplacedyzer(random)).setMaxBufferedDocs(2));
    w.setInfoStream(VERBOSE ? System.out : null);
    Doreplacedent doc = new Doreplacedent();
    doc.add(newField("field", "a field", Field.Store.YES, Field.Index.replacedYZED));
    w.addDoreplacedent(doc);
    replacedyzer replacedyzer = new replacedyzer() {

        @Override
        public TokenStream tokenStream(String fieldName, Reader reader) {
            MockTokenizer tokenizer = new MockTokenizer(reader, MockTokenizer.WHITESPACE, false);
            // disable workflow checking as we forcefully close() in exceptional cases.
            tokenizer.setEnableChecks(false);
            return new CrashingFilter(fieldName, tokenizer);
        }
    };
    Doreplacedent crashDoc = new Doreplacedent();
    crashDoc.add(newField("crash", "do it on token 4", Field.Store.YES, Field.Index.replacedYZED));
    try {
        w.addDoreplacedent(crashDoc, replacedyzer);
        fail("did not hit expected exception");
    } catch (IOException ioe) {
    // expected
    }
    w.addDoreplacedent(doc);
    w.close();
    dir.close();
}

19 View Complete Implementation : TestLazyProxSkipping.java
Copyright Apache License 2.0
Author : fnp
public void testSeek() throws IOException {
    Directory directory = newDirectory();
    IndexWriter writer = new IndexWriter(directory, newIndexWriterConfig(TEST_VERSION_CURRENT, new Mockreplacedyzer(random)));
    for (int i = 0; i < 10; i++) {
        Doreplacedent doc = new Doreplacedent();
        doc.add(newField(this.field, "a b", Field.Store.YES, Field.Index.replacedYZED));
        writer.addDoreplacedent(doc);
    }
    writer.close();
    IndexReader reader = IndexReader.open(directory, true);
    TermPositions tp = reader.termPositions();
    tp.seek(new Term(this.field, "b"));
    for (int i = 0; i < 10; i++) {
        tp.next();
        replacedertEquals(tp.doc(), i);
        replacedertEquals(tp.nextPosition(), 1);
    }
    tp.seek(new Term(this.field, "a"));
    for (int i = 0; i < 10; i++) {
        tp.next();
        replacedertEquals(tp.doc(), i);
        replacedertEquals(tp.nextPosition(), 0);
    }
    reader.close();
    directory.close();
}

19 View Complete Implementation : DocMaker.java
Copyright Apache License 2.0
Author : fnp
/**
 * Creates a {@link Doreplacedent} object ready for indexing. This method uses the
 * {@link ContentSource} to get the next doreplacedent from the source, and creates
 * a {@link Doreplacedent} object from the returned fields. If
 * <code>reuseFields</code> was set to true, it will reuse {@link Doreplacedent}
 * and {@link Field} instances.
 */
public Doreplacedent makeDoreplacedent() throws Exception {
    resetLeftovers();
    DocData docData = source.getNextDocData(getDocState().docData);
    Doreplacedent doc = createDoreplacedent(docData, 0, -1);
    return doc;
}

19 View Complete Implementation : TestBooleanScorer.java
Copyright Apache License 2.0
Author : fnp
public void testMethod() throws Exception {
    Directory directory = newDirectory();
    String[] values = new String[] { "1", "2", "3", "4" };
    RandomIndexWriter writer = new RandomIndexWriter(random, directory);
    for (int i = 0; i < values.length; i++) {
        Doreplacedent doc = new Doreplacedent();
        doc.add(newField(FIELD, values[i], Field.Store.YES, Field.Index.NOT_replacedYZED));
        writer.addDoreplacedent(doc);
    }
    IndexReader ir = writer.getReader();
    writer.close();
    BooleanQuery booleanQuery1 = new BooleanQuery();
    booleanQuery1.add(new TermQuery(new Term(FIELD, "1")), BooleanClause.Occur.SHOULD);
    booleanQuery1.add(new TermQuery(new Term(FIELD, "2")), BooleanClause.Occur.SHOULD);
    BooleanQuery query = new BooleanQuery();
    query.add(booleanQuery1, BooleanClause.Occur.MUST);
    query.add(new TermQuery(new Term(FIELD, "9")), BooleanClause.Occur.MUST_NOT);
    IndexSearcher indexSearcher = newSearcher(ir);
    ScoreDoc[] hits = indexSearcher.search(query, null, 1000).scoreDocs;
    replacedertEquals("Number of matched doreplacedents", 2, hits.length);
    indexSearcher.close();
    ir.close();
    directory.close();
}

19 View Complete Implementation : TestAddIndexes.java
Copyright Apache License 2.0
Author : fnp
// LUCENE-2996: tests that addIndexes(IndexReader) applies existing deletes correctly.
public void testExistingDeletes() throws Exception {
    Directory[] dirs = new Directory[2];
    for (int i = 0; i < dirs.length; i++) {
        dirs[i] = newDirectory();
        IndexWriterConfig conf = newIndexWriterConfig(TEST_VERSION_CURRENT, new Mockreplacedyzer(random));
        IndexWriter writer = new IndexWriter(dirs[i], conf);
        Doreplacedent doc = new Doreplacedent();
        doc.add(new Field("id", "myid", Store.NO, Index.NOT_replacedYZED_NO_NORMS));
        writer.addDoreplacedent(doc);
        writer.close();
    }
    IndexWriterConfig conf = new IndexWriterConfig(TEST_VERSION_CURRENT, new Mockreplacedyzer(random));
    IndexWriter writer = new IndexWriter(dirs[0], conf);
    // Now delete the doreplacedent
    writer.deleteDoreplacedents(new Term("id", "myid"));
    IndexReader r = IndexReader.open(dirs[1]);
    try {
        writer.addIndexes(r);
    } finally {
        r.close();
    }
    writer.commit();
    replacedertEquals("Doreplacedents from the incoming index should not have been deleted", 1, writer.numDocs());
    writer.close();
    for (Directory dir : dirs) {
        dir.close();
    }
}

19 View Complete Implementation : TestIndexWriterMerging.java
Copyright Apache License 2.0
Author : fnp
// LUCENE-325: test expungeDeletes without waiting, when
// many adjacent merges are required
public void testExpungeDeletes3() throws IOException {
    Directory dir = newDirectory();
    IndexWriter writer = new IndexWriter(dir, newIndexWriterConfig(TEST_VERSION_CURRENT, new Mockreplacedyzer(random)).setMaxBufferedDocs(2).setRAMBufferSizeMB(IndexWriterConfig.DISABLE_AUTO_FLUSH).setMergePolicy(newLogMergePolicy(50)));
    Doreplacedent doreplacedent = new Doreplacedent();
    doreplacedent = new Doreplacedent();
    Field storedField = newField("stored", "stored", Field.Store.YES, Field.Index.NO);
    doreplacedent.add(storedField);
    Field termVectorField = newField("termVector", "termVector", Field.Store.NO, Field.Index.NOT_replacedYZED, Field.TermVector.WITH_POSITIONS_OFFSETS);
    doreplacedent.add(termVectorField);
    for (int i = 0; i < 98; i++) writer.addDoreplacedent(doreplacedent);
    writer.close();
    IndexReader ir = IndexReader.open(dir, false);
    replacedertEquals(98, ir.maxDoc());
    replacedertEquals(98, ir.numDocs());
    for (int i = 0; i < 98; i += 2) ir.deleteDoreplacedent(i);
    replacedertEquals(49, ir.numDocs());
    ir.close();
    writer = new IndexWriter(dir, newIndexWriterConfig(TEST_VERSION_CURRENT, new Mockreplacedyzer(random)).setMergePolicy(newLogMergePolicy(3)));
    writer.expungeDeletes(false);
    writer.close();
    ir = IndexReader.open(dir, true);
    replacedertEquals(49, ir.maxDoc());
    replacedertEquals(49, ir.numDocs());
    ir.close();
    dir.close();
}

19 View Complete Implementation : TestFilterIndexReader.java
Copyright Apache License 2.0
Author : fnp
/**
 * Tests the IndexReader.getFieldNames implementation
 * @throws Exception on error
 */
public void testFilterIndexReader() throws Exception {
    Directory directory = newDirectory();
    IndexWriter writer = new IndexWriter(directory, newIndexWriterConfig(TEST_VERSION_CURRENT, new Mockreplacedyzer(random)));
    Doreplacedent d1 = new Doreplacedent();
    d1.add(newField("default", "one two", Field.Store.YES, Field.Index.replacedYZED));
    writer.addDoreplacedent(d1);
    Doreplacedent d2 = new Doreplacedent();
    d2.add(newField("default", "one three", Field.Store.YES, Field.Index.replacedYZED));
    writer.addDoreplacedent(d2);
    Doreplacedent d3 = new Doreplacedent();
    d3.add(newField("default", "two four", Field.Store.YES, Field.Index.replacedYZED));
    writer.addDoreplacedent(d3);
    writer.close();
    IndexReader reader = new TestReader(IndexReader.open(directory, true));
    TermEnum terms = reader.terms();
    while (terms.next()) {
        replacedertTrue(terms.term().text().indexOf('e') != -1);
    }
    terms.close();
    TermPositions positions = reader.termPositions(new Term("default", "one"));
    while (positions.next()) {
        replacedertTrue((positions.doc() % 2) == 1);
    }
    int NUM_DOCS = 3;
    TermDocs td = reader.termDocs(null);
    for (int i = 0; i < NUM_DOCS; i++) {
        replacedertTrue(td.next());
        replacedertEquals(i, td.doc());
        replacedertEquals(1, td.freq());
    }
    td.close();
    reader.close();
    directory.close();
}

19 View Complete Implementation : TestParallelReader.java
Copyright Apache License 2.0
Author : fnp
public void testIncompatibleIndexes() throws IOException {
    // two doreplacedents:
    Directory dir1 = getDir1(random);
    // one doreplacedent only:
    Directory dir2 = newDirectory();
    IndexWriter w2 = new IndexWriter(dir2, newIndexWriterConfig(TEST_VERSION_CURRENT, new Mockreplacedyzer(random)));
    Doreplacedent d3 = new Doreplacedent();
    d3.add(newField("f3", "v1", Field.Store.YES, Field.Index.replacedYZED));
    w2.addDoreplacedent(d3);
    w2.close();
    ParallelReader pr = new ParallelReader();
    pr.add(IndexReader.open(dir1, false));
    IndexReader ir = IndexReader.open(dir2, false);
    try {
        pr.add(ir);
        fail("didn't get exptected exception: indexes don't have same number of doreplacedents");
    } catch (IllegalArgumentException e) {
    // expected exception
    }
    pr.close();
    ir.close();
    dir1.close();
    dir2.close();
}