List of usage examples for org.apache.lucene.index IndexWriter close
@Override public void close() throws IOException
From source file:com.mathworks.xzheng.analysis.positional.PositionalPorterStopAnalyzerTest.java
License:Apache License
public void setUp() throws Exception { RAMDirectory directory = new RAMDirectory(); IndexWriterConfig config = new IndexWriterConfig(Version.LUCENE_46, porterAnalyzer); IndexWriter writer = new IndexWriter(directory, config); Document doc = new Document(); doc.add(new Field("contents", "The quick brown fox jumps over the lazy dog", Field.Store.YES, Field.Index.ANALYZED)); writer.addDocument(doc);/*from ww w . j a v a2 s . c o m*/ writer.close(); searcher = new IndexSearcher(DirectoryReader.open(directory)); parser = new QueryParser(Version.LUCENE_46, "contents", porterAnalyzer); }
From source file:com.mathworks.xzheng.analysis.synonym.SynonymAnalyzerTest.java
License:Apache License
public void setUp() throws Exception { RAMDirectory directory = new RAMDirectory(); IndexWriterConfig config = new IndexWriterConfig(Version.LUCENE_46, synonymAnalyzer); IndexWriter writer = new IndexWriter(directory, config); //#1 Document doc = new Document(); doc.add(new Field("content", "The quick brown fox jumps over the lazy dog", Field.Store.YES, Field.Index.ANALYZED)); //#2 writer.addDocument(doc);//from w ww. j a v a 2 s . c om writer.close(); searcher = new IndexSearcher(DirectoryReader.open(directory)); }
From source file:com.mathworks.xzheng.common.CreateTestIndex.java
License:Apache License
public static void main(String[] args) throws IOException { String dataDir = args[0];//w ww .j a v a 2 s . c om String indexDir = args[1]; List<File> results = new ArrayList<File>(); findFiles(results, new File(dataDir)); System.out.println(results.size() + " books to index"); Directory dir = FSDirectory.open(new File(indexDir)); IndexWriterConfig config = new IndexWriterConfig(Version.LUCENE_46, new MyStandardAnalyzer()); config.setOpenMode(IndexWriterConfig.OpenMode.CREATE); IndexWriter w = new IndexWriter(dir, config); for (File file : results) { Document doc = getDocument(dataDir, file); w.addDocument(doc); } w.close(); dir.close(); }
From source file:com.mathworks.xzheng.extsearch.sorting.DistanceSortingTest.java
License:Apache License
protected void setUp() throws Exception { directory = new RAMDirectory(); IndexWriterConfig config = new IndexWriterConfig(Version.LUCENE_46, new WhitespaceAnalyzer(Version.LUCENE_46)); IndexWriter writer = new IndexWriter(directory, config); addPoint(writer, "El Charro", "restaurant", 1, 2); addPoint(writer, "Cafe Poca Cosa", "restaurant", 5, 9); addPoint(writer, "Los Betos", "restaurant", 9, 6); addPoint(writer, "Nico's Taco Shop", "restaurant", 3, 8); writer.close(); searcher = new IndexSearcher(DirectoryReader.open(directory)); query = new TermQuery(new Term("type", "restaurant")); }
From source file:com.mathworks.xzheng.indexing.Fragments.java
License:Apache License
public void docBoostMethod() throws IOException { Directory dir = new RAMDirectory(); IndexWriterConfig config = new IndexWriterConfig(Version.LUCENE_46, new StandardAnalyzer(Version.LUCENE_46)); IndexWriter writer = new IndexWriter(dir, config); // START/*from www. j a va 2 s. co m*/ Document doc = new Document(); String senderEmail = getSenderEmail(); String senderName = getSenderName(); String subject = getSubject(); String body = getBody(); doc.add(new Field("senderEmail", senderEmail, Field.Store.YES, Field.Index.NOT_ANALYZED)); doc.add(new Field("senderName", senderName, Field.Store.YES, Field.Index.ANALYZED)); doc.add(new Field("subject", subject, Field.Store.YES, Field.Index.ANALYZED)); doc.add(new Field("body", body, Field.Store.NO, Field.Index.ANALYZED)); String lowerDomain = getSenderDomain().toLowerCase(); if (isImportant(lowerDomain)) { doc.setBoost(1.5F); //1 } else if (isUnimportant(lowerDomain)) { doc.setBoost(0.1F); //2 } writer.addDocument(doc); // END writer.close(); /* #1 Good domain boost factor: 1.5 #2 Bad domain boost factor: 0.1 */ }
From source file:com.mathworks.xzheng.indexing.IndexingTest.java
License:Apache License
public void testDeleteAfterOptimize() throws IOException { IndexWriter writer = getWriter(); assertEquals(2, writer.numDocs());/*from w w w . j a v a 2s . c o m*/ writer.deleteDocuments(new Term("id", "1")); //writer.optimize(); //3 writer.forceMerge(1); writer.commit(); assertFalse(writer.hasDeletions()); assertEquals(1, writer.maxDoc()); //C assertEquals(1, writer.numDocs()); //C writer.close(); }
From source file:com.mathworks.xzheng.indexing.IndexingTest.java
License:Apache License
public void testMaxFieldLength() throws IOException { assertEquals(1, getHitCount("contents", "bridges")); //1 IndexWriterConfig config = new IndexWriterConfig(Version.LUCENE_46, new WhitespaceAnalyzer(Version.LUCENE_46)); IndexWriter writer = new IndexWriter(directory, config); //2 Document doc = new Document(); // 3 doc.add(new Field("contents", "these bridges can't be found", // 3 Field.Store.NO, Field.Index.ANALYZED)); // 3 writer.addDocument(doc); // 3 writer.close(); // 3 assertEquals(1, getHitCount("contents", "bridges")); //4 }
From source file:com.mathworks.xzheng.indexing.LockTest.java
License:Apache License
public void testWriteLock() throws IOException { IndexWriterConfig config1 = new IndexWriterConfig(Version.LUCENE_46, new SimpleAnalyzer(Version.LUCENE_46)); IndexWriterConfig config2 = new IndexWriterConfig(Version.LUCENE_46, new SimpleAnalyzer(Version.LUCENE_46)); IndexWriter writer1 = new IndexWriter(dir, config1); IndexWriter writer2 = null;//from w w w.j a v a 2 s. c o m try { writer2 = new IndexWriter(dir, config2); fail("We should never reach this point"); } catch (LockObtainFailedException e) { // e.printStackTrace(); // #A } finally { writer1.close(); assertNull(writer2); TestUtil.rmDir(indexDir); } }
From source file:com.mathworks.xzheng.indexing.VerboseIndexing.java
License:Apache License
private void index() throws IOException { Directory dir = new RAMDirectory(); IndexWriterConfig config = new IndexWriterConfig(Version.LUCENE_46, new WhitespaceAnalyzer(Version.LUCENE_46)); IndexWriter writer = new IndexWriter(dir, config); config.setInfoStream(System.out); for (int i = 0; i < 100; i++) { Document doc = new Document(); doc.add(new Field("keyword", "goober", Field.Store.YES, Field.Index.NOT_ANALYZED)); writer.addDocument(doc);/* w w w . j a v a 2 s . c o m*/ } //writer.optimize(); writer.forceMerge(Integer.MAX_VALUE); writer.close(); }
From source file:com.mathworks.xzheng.searching.NearRealTimeTest.java
License:Apache License
public void testNearRealTime() throws Exception { Directory dir = new RAMDirectory(); IndexWriterConfig config = new IndexWriterConfig(Version.LUCENE_46, new StandardAnalyzer(Version.LUCENE_46)); IndexWriter writer = new IndexWriter(dir, config); for (int i = 0; i < 10; i++) { Document doc = new Document(); doc.add(new Field("id", "" + i, Field.Store.NO, Field.Index.NOT_ANALYZED_NO_NORMS)); doc.add(new Field("text", "aaa", Field.Store.NO, Field.Index.ANALYZED)); writer.addDocument(doc);/* ww w . j a va2s. c o m*/ } IndexReader reader = DirectoryReader.open(writer.getDirectory()); // #1 IndexSearcher searcher = new IndexSearcher(reader); // #A Query query = new TermQuery(new Term("text", "aaa")); TopDocs docs = searcher.search(query, 1); assertEquals(10, docs.totalHits); // #B writer.deleteDocuments(new Term("id", "7")); // #2 Document doc = new Document(); // #3 doc.add(new Field("id", // #3 "11", // #3 Field.Store.NO, // #3 Field.Index.NOT_ANALYZED_NO_NORMS)); // #3 doc.add(new Field("text", // #3 "bbb", // #3 Field.Store.NO, // #3 Field.Index.ANALYZED)); // #3 writer.addDocument(doc); // #3 //IndexReader newReader = reader.reopen(); // #4 IndexReader newReader = DirectoryReader.open(writer.getDirectory()); // #4 assertFalse(reader == newReader); // #5 reader.close(); // #6 searcher = new IndexSearcher(newReader); TopDocs hits = searcher.search(query, 10); // #7 assertEquals(9, hits.totalHits); // #7 query = new TermQuery(new Term("text", "bbb")); // #8 hits = searcher.search(query, 1); // #8 assertEquals(1, hits.totalHits); // #8 newReader.close(); writer.close(); }