List of usage examples for org.apache.lucene.store RAMDirectory RAMDirectory
public RAMDirectory()
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 . jav a 2 s. co m*/ writer.close(); searcher = new IndexSearcher(DirectoryReader.open(directory)); }
From source file:com.mathworks.xzheng.analysis.UsingAnalyzersExample.java
License:Apache License
/** * This method doesn't do anything, except compile correctly. * This is used to show snippets of how Analyzers are used. *//*from w ww . j a va 2s .co m*/ public void someMethod() throws IOException, ParseException { RAMDirectory directory = new RAMDirectory(); Analyzer analyzer = new StandardAnalyzer(Version.LUCENE_46); IndexWriterConfig config = new IndexWriterConfig(Version.LUCENE_46, analyzer); IndexWriter writer = new IndexWriter(directory, config); Document doc = new Document(); doc.add(new Field("title", "This is the title", Field.Store.YES, Field.Index.ANALYZED)); doc.add(new Field("contents", "...document contents...", Field.Store.NO, Field.Index.ANALYZED)); writer.addDocument(doc); writer.addDocument(doc, analyzer); String expression = "some query"; Query query = new QueryParser(Version.LUCENE_46, "contents", analyzer).parse(expression); QueryParser parser = new QueryParser(Version.LUCENE_46, "contents", analyzer); query = parser.parse(expression); }
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();/* www . j a v a 2 s .c o m*/ 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 ramDirExample() throws Exception { Analyzer analyzer = new WhitespaceAnalyzer(Version.LUCENE_46); IndexWriterConfig config = new IndexWriterConfig(Version.LUCENE_46, analyzer); // START/* ww w . j a v a 2 s . co m*/ Directory ramDir = new RAMDirectory(); IndexWriter writer = new IndexWriter(ramDir, config); // END }
From source file:com.mathworks.xzheng.indexing.Fragments.java
License:Apache License
public void dirCopy() throws Exception { Directory otherDir = null;//from w w w . ja va2 s . c om // START Directory ramDir = new RAMDirectory(); // END }
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// www . j a v a 2s. c o 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.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);/*ww w .j a v a 2 s .c om*/ } //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);//w w w. j a v a 2 s .c om } 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(); }
From source file:com.mathworks.xzheng.searching.PhraseQueryTest.java
License:Apache License
protected void setUp() throws IOException { dir = new RAMDirectory(); IndexWriterConfig config = new IndexWriterConfig(Version.LUCENE_46, new WhitespaceAnalyzer(Version.LUCENE_46)); IndexWriter writer = new IndexWriter(dir, config); Document doc = new Document(); doc.add(new Field("field", // 1 "the quick brown fox jumped over the lazy dog", // 1 Field.Store.YES, // 1 Field.Index.ANALYZED)); // 1 writer.addDocument(doc);//from ww w . j a v a 2 s.co m writer.close(); searcher = new IndexSearcher(DirectoryReader.open(dir)); }
From source file:com.mathworks.xzheng.tools.ChainedFilterTest.java
License:Apache License
public 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); Calendar cal = Calendar.getInstance(); cal.set(2009, 1, 1, 0, 0); // A for (int i = 0; i < MAX; i++) { Document doc = new Document(); doc.add(new Field("key", "" + (i + 1), Field.Store.YES, Field.Index.NOT_ANALYZED)); doc.add(new Field("owner", (i < MAX / 2) ? "bob" : "sue", Field.Store.YES, Field.Index.NOT_ANALYZED)); doc.add(new Field("date", DateTools.timeToString(cal.getTimeInMillis(), DateTools.Resolution.DAY), Field.Store.YES, Field.Index.NOT_ANALYZED)); writer.addDocument(doc);//from w ww.j a va2s. c o m cal.add(Calendar.DATE, 1); } writer.close(); searcher = new IndexSearcher(DirectoryReader.open(directory)); BooleanQuery bq = new BooleanQuery(); // B bq.add(new TermQuery(new Term("owner", "bob")), // B BooleanClause.Occur.SHOULD); // B bq.add(new TermQuery(new Term("owner", "sue")), // B BooleanClause.Occur.SHOULD); // B query = bq; cal.set(2099, 1, 1, 0, 0); dateFilter = TermRangeFilter.Less("date", // C new BytesRef(DateTools.timeToString( // C cal.getTimeInMillis(), // C DateTools.Resolution.DAY)));// C bobFilter = new CachingWrapperFilter( // D new QueryWrapperFilter( // D new TermQuery(new Term("owner", "bob")))); // D sueFilter = new CachingWrapperFilter( // E new QueryWrapperFilter( // E new TermQuery(new Term("owner", "sue")))); // E }