Example usage for org.apache.lucene.index IndexWriterConfig setIndexDeletionPolicy

List of usage examples for org.apache.lucene.index IndexWriterConfig setIndexDeletionPolicy

Introduction

In this page you can find the example usage for org.apache.lucene.index IndexWriterConfig setIndexDeletionPolicy.

Prototype

public IndexWriterConfig setIndexDeletionPolicy(IndexDeletionPolicy delPolicy) 

Source Link

Document

Expert: allows an optional IndexDeletionPolicy implementation to be specified.

Usage

From source file:proj.zoie.impl.indexing.internal.DiskSearchIndex.java

License:Apache License

/**
 * Opens an index modifier./*from   w w w . j  a v a 2s .  c om*/
 * @param analyzer Analyzer
 * @return IndexModifer instance
 */
public IndexWriter openIndexWriter(Analyzer analyzer, Similarity similarity) throws IOException {
    if (_indexWriter != null)
        return _indexWriter;

    Directory directory = _dirMgr.getDirectory(true);

    log.info("opening index writer at: " + _dirMgr.getPath());

    ZoieMergePolicy mergePolicy = new ZoieMergePolicy();
    mergePolicy.setMergePolicyParams(_mergePolicyParams);

    // hao: autocommit is set to false with this constructor
    IndexWriterConfig config = new IndexWriterConfig(Version.LUCENE_34, analyzer);
    config.setOpenMode(OpenMode.CREATE_OR_APPEND);
    config.setIndexDeletionPolicy(_deletionPolicy);
    config.setMergeScheduler(_mergeScheduler);
    config.setMergePolicy(mergePolicy);
    config.setReaderPooling(false);
    if (similarity != null) {
        config.setSimilarity(similarity);
    }
    config.setRAMBufferSizeMB(5);
    IndexWriter idxWriter = new IndexWriter(directory, config);

    _indexWriter = idxWriter;
    return idxWriter;
}