diff src/de/mpiwg/dwinter/lucencetools/analyzer/.svn/text-base/LanguageAnalyzer.java.svn-base @ 0:dc7622afcfea default tip

initial
author dwinter
date Wed, 03 Nov 2010 12:33:16 +0100
parents
children
line wrap: on
line diff
--- /dev/null	Thu Jan 01 00:00:00 1970 +0000
+++ b/src/de/mpiwg/dwinter/lucencetools/analyzer/.svn/text-base/LanguageAnalyzer.java.svn-base	Wed Nov 03 12:33:16 2010 +0100
@@ -0,0 +1,76 @@
+/*    */ package de.mpiwg.dwinter.lucencetools.analyzer;
+/*    */ 
+/*    */ import java.io.File;
+/*    */ import java.io.IOException;
+/*    */ import org.apache.lucene.analysis.Analyzer;
+/*    */ import org.apache.lucene.index.CorruptIndexException;
+/*    */ import org.apache.lucene.index.IndexReader;
+/*    */ import org.apache.lucene.index.IndexWriter;
+/*    */ import org.apache.lucene.index.IndexWriter.MaxFieldLength;
+/*    */ import org.apache.lucene.search.IndexSearcher;
+/*    */ import org.apache.lucene.store.Directory;
+/*    */ import org.apache.lucene.store.LockObtainFailedException;
+import org.apache.lucene.store.NIOFSDirectory;
+import org.apache.lucene.store.SimpleFSLockFactory;
+/*    */ 
+/*    */ public class LanguageAnalyzer
+/*    */ {
+/*    */   public String lang;
+/*    */   public Analyzer analyzer;
+/* 19 */   public IndexWriter writer = null;
+/* 20 */   public IndexReader reader = null;
+/* 21 */   public IndexSearcher searcher = null;
+/*    */ 
+/*    */   public LanguageAnalyzer(String lang, Analyzer analyzer, File index_dir, boolean onlyReader)
+/*    */     throws CorruptIndexException, LockObtainFailedException, IOException
+/*    */   {
+/* 35 */     this.lang = lang;
+/* 36 */     this.analyzer = analyzer;
+/*    */ 
+/* 38 */     boolean create = true;
+/*    */ 
+/* 40 */     if (!index_dir.exists()) {
+/* 41 */       index_dir.mkdir();
+/*    */     }
+/*    */ 
+/* 44 */     File lang_dir = new File(index_dir.getAbsolutePath() + "/" + lang);
+/* 45 */     if (lang_dir.exists()) {
+/* 46 */       create = false;
+/*    */     }
+			 File dirFile= new File(index_dir + "/" + lang);
+/* 48 */     Directory indexDirectory = new NIOFSDirectory(dirFile);
+/*    */ 	 indexDirectory.setLockFactory(new SimpleFSLockFactory(dirFile)); // TODO:ansonsten probleme wenn NFS mounts
+/* 50 */     if (!onlyReader)
+/*    */     {
+/* 52 */       this.writer = 
+/* 53 */         new IndexWriter(indexDirectory, 
+/* 53 */         analyzer, IndexWriter.MaxFieldLength.UNLIMITED);
+/*    */     }
+/* 55 */     if (!index_dir.exists())
+/*    */     {
+/* 58 */       return;
+/*    */     }
+/*    */ 
+/* 62 */     create = true;
+/*    */ 
+/* 65 */     if (lang_dir.exists()) {
+/* 66 */       create = false;
+/*    */     }
+/* 68 */     if (create)
+/*    */       return;
+/* 70 */     IndexReader reader = IndexReader.open(indexDirectory);
+/* 71 */     this.reader = reader;
+/* 72 */     this.searcher = new IndexSearcher(reader);
+/*    */   }
+/*    */ 
+/*    */   public LanguageAnalyzer(String lang, Analyzer analyzer, File index_dir)
+/*    */     throws CorruptIndexException, LockObtainFailedException, IOException
+/*    */   {
+/* 78 */     this(lang, analyzer, index_dir, false);
+/*    */   }
+/*    */ }
+
+/* Location:           /private/tmp/fulltextIndexer.jar
+ * Qualified Name:     de.mpiwg.dwinter.lucencetools.analyzer.LanguageAnalyzer
+ * JD-Core Version:    0.5.4
+ */
\ No newline at end of file