Example usage for org.apache.lucene.index IndexWriter prepareCommit

List of usage examples for org.apache.lucene.index IndexWriter prepareCommit

Introduction

In this page you can find the example usage for org.apache.lucene.index IndexWriter prepareCommit.

Prototype

@Override
public final long prepareCommit() throws IOException 

Source Link

Document

Expert: prepare for commit.

Usage

From source file:com.gauronit.tagmata.core.Indexer.java

License:Open Source License

public String createIndex(String indexDisplayName) {
    try {//ww w .  j  ava 2 s  .co m
        UUID uuid = UUID.randomUUID();
        String indexName = uuid.toString().substring(uuid.toString().length() - 8, uuid.toString().length());
        IndexWriter iw = new IndexWriter(FSDirectory.open(new File(indexDir + File.separator + indexName)),
                new IndexWriterConfig(Version.LUCENE_35, new StandardAnalyzer(Version.LUCENE_35)));
        iw.prepareCommit();
        iw.commit();
        iw.close();
        iw = null;

        Document doc = new Document();
        doc.add(new Field("displayName", indexDisplayName, Store.YES, Index.NOT_ANALYZED));
        doc.add(new Field("indexName", indexName, Store.YES, Index.NOT_ANALYZED));

        IndexWriter mainIndexWriter = new IndexWriter(
                FSDirectory.open(new File(indexDir + File.separator + MAIN_INDEX)),
                new IndexWriterConfig(Version.LUCENE_35, new StandardAnalyzer(Version.LUCENE_35)));
        mainIndexWriter.addDocument(doc);
        mainIndexWriter.commit();
        mainIndexWriter.close();
        mainIndexWriter = null;
        return indexName;
    } catch (IOException ex) {
        Logger.getLogger(Indexer.class.getName()).log(Level.SEVERE, null, ex);
        return null;
    }
}

From source file:com.gauronit.tagmata.core.Indexer.java

License:Open Source License

public void deleteIndex(String indexName) {
    try {/*from   w ww . j a  va 2 s  .  co  m*/
        IndexWriter mainIndexWriter = new IndexWriter(
                FSDirectory.open(new File(indexDir + File.separator + MAIN_INDEX)),
                new IndexWriterConfig(Version.LUCENE_35, new StandardAnalyzer(Version.LUCENE_35)));
        Query q = new QueryParser(Version.LUCENE_35, "indexName", new StandardAnalyzer(Version.LUCENE_35))
                .parse(indexName);
        mainIndexWriter.deleteDocuments(q);
        mainIndexWriter.commit();
        mainIndexWriter.close();
        mainIndexWriter = null;

        IndexWriter writer = new IndexWriter(FSDirectory.open(new File(indexDir + File.separator + indexName)),
                new IndexWriterConfig(Version.LUCENE_35, new StandardAnalyzer(Version.LUCENE_35)));
        writer.deleteAll();
        writer.prepareCommit();
        writer.commit();
        writer.close();
        writer = null;

        IOUtil.deleteDir(new File(indexDir + File.separator + indexName));
    } catch (Exception ex) {
        ex.printStackTrace();
    } finally {
    }
}

From source file:com.gauronit.tagmata.core.Indexer.java

License:Open Source License

public void renameIndex(String indexName, String indexDisplayName) {
    try {//from  w ww. j av a2s.  c  om
        IndexWriter mainIndexWriter = new IndexWriter(
                FSDirectory.open(new File(indexDir + File.separator + MAIN_INDEX)),
                new IndexWriterConfig(Version.LUCENE_35, new StandardAnalyzer(Version.LUCENE_35)));
        Document doc = new Document();
        doc.add(new Field("displayName", indexDisplayName, Store.YES, Index.NOT_ANALYZED));
        doc.add(new Field("indexName", indexName, Store.YES, Index.NOT_ANALYZED));

        mainIndexWriter.updateDocument(new Term("indexName", indexName), doc,
                new StandardAnalyzer(Version.LUCENE_35));
        mainIndexWriter.prepareCommit();
        mainIndexWriter.commit();

        mainIndexWriter.close();
        mainIndexWriter = null;
    } catch (Exception ex) {
        ex.printStackTrace();
    }

}

From source file:com.gauronit.tagmata.core.Indexer.java

License:Open Source License

public void deleteCards(ArrayList<CardSnapshot> cardSnaps) {
    try {/*  w w  w  .ja  va  2  s .  co  m*/
        for (CardSnapshot cardSnap : cardSnaps) {
            IndexWriter writer = new IndexWriter(
                    FSDirectory.open(new File(indexDir + File.separator + cardSnap.getIndexName())),
                    new IndexWriterConfig(Version.LUCENE_35, new StandardAnalyzer(Version.LUCENE_35)));
            writer.deleteDocuments(new Term("id", cardSnap.getId()));
            writer.prepareCommit();
            writer.commit();
            writer.close();
            writer = null;
        }
    } catch (Exception ex) {
    }
}

From source file:com.gauronit.tagmata.core.Indexer.java

License:Open Source License

public void saveCard(String title, String tags, String text, String indexName) {
    try {/*from ww w  .  j a v a 2s  . c  o m*/
        IndexWriter writer = new IndexWriter(FSDirectory.open(new File(indexDir + File.separator + indexName)),
                new IndexWriterConfig(Version.LUCENE_35, new StandardAnalyzer(Version.LUCENE_35)));

        Document doc = new Document();
        doc.add(new Field("title", title, Store.YES, Index.ANALYZED));
        doc.add(new Field("tags", tags, Store.YES, Index.ANALYZED));
        doc.add(new Field("text", text, Store.YES, Index.ANALYZED));
        doc.add(new Field("analyzedText", text, Store.YES, Index.ANALYZED));
        doc.add(new Field("indexName", indexName, Store.YES, Index.ANALYZED));
        doc.add(new Field("id", UUID.randomUUID().toString(), Store.YES, Index.NOT_ANALYZED));
        writer.addDocument(doc, new StandardAnalyzer(Version.LUCENE_35));
        writer.prepareCommit();
        writer.commit();
        writer.close();
        writer = null;
    } catch (Exception ex) {
        ex.printStackTrace();
    }
}

From source file:com.gauronit.tagmata.core.Indexer.java

License:Open Source License

public void saveBookmark(String id, String indexName) {
    try {/*ww  w.  jav a 2  s  .  c  o m*/
        IndexWriter mainIndexWriter = new IndexWriter(
                FSDirectory.open(new File(indexDir + File.separator + MAIN_INDEX)),
                new IndexWriterConfig(Version.LUCENE_35, new StandardAnalyzer(Version.LUCENE_35)));

        Document doc = new Document();
        doc.add(new Field("qcId", id, Store.YES, Index.NOT_ANALYZED));
        doc.add(new Field("qcIndexName", indexName, Store.YES, Index.NOT_ANALYZED));

        mainIndexWriter.updateDocument(new Term("id", id), doc);
        mainIndexWriter.prepareCommit();
        mainIndexWriter.commit();
        mainIndexWriter.close();
        mainIndexWriter = null;
    } catch (Exception ex) {
        ex.printStackTrace();
    }
}

From source file:com.gauronit.tagmata.core.Indexer.java

License:Open Source License

public void deleteBookmark(String id, String indexName) {
    try {/*from w w  w.  j  a  v  a 2s .co  m*/
        IndexWriter mainIndexWriter = new IndexWriter(
                FSDirectory.open(new File(indexDir + File.separator + MAIN_INDEX)),
                new IndexWriterConfig(Version.LUCENE_35, new StandardAnalyzer(Version.LUCENE_35)));
        mainIndexWriter.deleteDocuments(new Term("qcId", id));
        mainIndexWriter.prepareCommit();
        mainIndexWriter.commit();
        mainIndexWriter.close();
        mainIndexWriter = null;
    } catch (Exception ex) {
        ex.printStackTrace();
    }

}

From source file:com.gauronit.tagmata.core.Indexer.java

License:Open Source License

public void updateCard(CardSnapshot cardSnap, String title, String tags, String text) {
    try {/*from w ww . j  a v a2s.  c  o  m*/
        IndexWriter writer = new IndexWriter(
                FSDirectory.open(new File(indexDir + File.separator + cardSnap.getIndexName())),
                new IndexWriterConfig(Version.LUCENE_35, new StandardAnalyzer(Version.LUCENE_35)));

        Document doc = new Document();
        doc.add(new Field("title", title, Store.YES, Index.ANALYZED));
        doc.add(new Field("tags", tags, Store.YES, Index.ANALYZED));
        doc.add(new Field("text", text, Store.YES, Index.ANALYZED));
        doc.add(new Field("analyzedText", text, Store.YES, Index.ANALYZED));
        doc.add(new Field("indexName", cardSnap.getIndexName(), Store.YES, Index.ANALYZED));
        doc.add(new Field("id", cardSnap.getId(), Store.YES, Index.NOT_ANALYZED));

        writer.updateDocument(new Term("id", cardSnap.getId()), doc, new StandardAnalyzer(Version.LUCENE_35));
        writer.prepareCommit();
        writer.commit();
        writer.close();
        writer = null;
    } catch (Exception ex) {
        ex.printStackTrace();
    }
}

From source file:com.gauronit.tagmata.core.Indexer.java

License:Open Source License

public static void main(String[] args) {
    try {//from www.jav  a 2 s  . c  o  m
        IndexWriter writer = new IndexWriter(FSDirectory.open(new File(indexDir + File.separator + "null")),
                new IndexWriterConfig(Version.LUCENE_35, new StandardAnalyzer(Version.LUCENE_35)));
        writer.deleteDocuments(new Term("indexName", "null"));
        writer.prepareCommit();
        writer.commit();
        writer.close();

    } catch (Exception ex) {
        logger.log(Level.SEVERE, "Failed to Initialize", ex);
    }
}

From source file:org.elasticsearch.deps.lucene.SimpleLuceneTests.java

License:Apache License

@Test
public void testAddDocAfterPrepareCommit() throws Exception {
    Directory dir = new RAMDirectory();
    IndexWriter indexWriter = new IndexWriter(dir,
            new IndexWriterConfig(Lucene.VERSION, Lucene.STANDARD_ANALYZER));
    Document document = new Document();
    document.add(new TextField("_id", "1", Field.Store.YES));
    indexWriter.addDocument(document);/*www.j  ava  2  s.c om*/
    DirectoryReader reader = DirectoryReader.open(indexWriter, true);
    assertThat(reader.numDocs(), equalTo(1));

    indexWriter.prepareCommit();
    // Returns null b/c no changes.
    assertThat(DirectoryReader.openIfChanged(reader), equalTo(null));

    document = new Document();
    document.add(new TextField("_id", "2", Field.Store.YES));
    indexWriter.addDocument(document);
    indexWriter.commit();
    reader = DirectoryReader.openIfChanged(reader);
    assertThat(reader.numDocs(), equalTo(2));
}