You are viewing a plain text version of this content. The canonical link for it is here.
Posted to commits@maven.apache.org by ol...@apache.org on 2014/03/07 04:53:33 UTC

svn commit: r1575146 - in /maven/indexer/branches/lucene-4.6/indexer-core/src/main/java/org/apache/maven/index: DefaultQueryCreator.java context/IndexUtils.java context/NexusAnalyzer.java context/NexusLegacyAnalyzer.java

Author: olamy
Date: Fri Mar  7 03:53:32 2014
New Revision: 1575146

URL: http://svn.apache.org/r1575146
Log:
Update API for Lucene 4

Modified:
    maven/indexer/branches/lucene-4.6/indexer-core/src/main/java/org/apache/maven/index/DefaultQueryCreator.java
    maven/indexer/branches/lucene-4.6/indexer-core/src/main/java/org/apache/maven/index/context/IndexUtils.java
    maven/indexer/branches/lucene-4.6/indexer-core/src/main/java/org/apache/maven/index/context/NexusAnalyzer.java
    maven/indexer/branches/lucene-4.6/indexer-core/src/main/java/org/apache/maven/index/context/NexusLegacyAnalyzer.java

Modified: maven/indexer/branches/lucene-4.6/indexer-core/src/main/java/org/apache/maven/index/DefaultQueryCreator.java
URL: http://svn.apache.org/viewvc/maven/indexer/branches/lucene-4.6/indexer-core/src/main/java/org/apache/maven/index/DefaultQueryCreator.java?rev=1575146&r1=1575145&r2=1575146&view=diff
==============================================================================
--- maven/indexer/branches/lucene-4.6/indexer-core/src/main/java/org/apache/maven/index/DefaultQueryCreator.java (original)
+++ maven/indexer/branches/lucene-4.6/indexer-core/src/main/java/org/apache/maven/index/DefaultQueryCreator.java Fri Mar  7 03:53:32 2014
@@ -466,7 +466,7 @@ public class DefaultQueryCreator
     {
         try
         {
-            TokenStream ts = nexusAnalyzer.reusableTokenStream( indexerField.getKey(), new StringReader( query ) );
+            TokenStream ts = nexusAnalyzer.tokenStream(indexerField.getKey(), new StringReader(query));
 
             int result = 0;
 

Modified: maven/indexer/branches/lucene-4.6/indexer-core/src/main/java/org/apache/maven/index/context/IndexUtils.java
URL: http://svn.apache.org/viewvc/maven/indexer/branches/lucene-4.6/indexer-core/src/main/java/org/apache/maven/index/context/IndexUtils.java?rev=1575146&r1=1575145&r2=1575146&view=diff
==============================================================================
--- maven/indexer/branches/lucene-4.6/indexer-core/src/main/java/org/apache/maven/index/context/IndexUtils.java (original)
+++ maven/indexer/branches/lucene-4.6/indexer-core/src/main/java/org/apache/maven/index/context/IndexUtils.java Fri Mar  7 03:53:32 2014
@@ -30,6 +30,7 @@ import org.apache.lucene.document.Field;
 import org.apache.lucene.index.IndexReader;
 import org.apache.lucene.index.IndexWriter;
 import org.apache.lucene.store.Directory;
+import org.apache.lucene.store.IOContext;
 import org.apache.lucene.store.IndexInput;
 import org.apache.lucene.store.IndexOutput;
 import org.apache.maven.index.ArtifactInfo;
@@ -46,9 +47,13 @@ public class IndexUtils
     public static void copyDirectory( Directory source, Directory target )
         throws IOException
     {
-        // perform plain copy (but semantic changes between Lucene 2.4 and 2.9 exists, so timestamp file will be not
-        // copied in 2.9)
-        Directory.copy( source, target, false );
+        //FIXME: check if this copies too much, Lucene 4 has no filter for lucene files
+        //Directory.copy( source, target, false );
+        
+        for (String file : source.listAll())
+        {
+            source.copy(target, file, file, IOContext.DEFAULT); 
+        }
 
         copyFile( source, target, IndexingContext.INDEX_UPDATER_PROPERTIES_FILE );
         copyFile( source, target, IndexingContext.INDEX_PACKER_PROPERTIES_FILE );
@@ -78,9 +83,9 @@ public class IndexUtils
 
         try
         {
-            is = source.openInput( srcName );
+            is = source.openInput( srcName, IOContext.DEFAULT);
 
-            os = target.createOutput( targetName );
+            os = target.createOutput( targetName, IOContext.DEFAULT);
 
             // and copy to dest directory
             long len = is.length();
@@ -181,7 +186,7 @@ public class IndexUtils
             {
                 deleteTimestamp( directory );
 
-                IndexOutput io = directory.createOutput( TIMESTAMP_FILE );
+                IndexOutput io = directory.createOutput( TIMESTAMP_FILE, IOContext.DEFAULT);
 
                 try
                 {
@@ -210,7 +215,7 @@ public class IndexUtils
 
                     try
                     {
-                        ii = directory.openInput( TIMESTAMP_FILE );
+                        ii = directory.openInput( TIMESTAMP_FILE, IOContext.DEFAULT);
 
                         result = new Date( ii.readLong() );
                     }

Modified: maven/indexer/branches/lucene-4.6/indexer-core/src/main/java/org/apache/maven/index/context/NexusAnalyzer.java
URL: http://svn.apache.org/viewvc/maven/indexer/branches/lucene-4.6/indexer-core/src/main/java/org/apache/maven/index/context/NexusAnalyzer.java?rev=1575146&r1=1575145&r2=1575146&view=diff
==============================================================================
--- maven/indexer/branches/lucene-4.6/indexer-core/src/main/java/org/apache/maven/index/context/NexusAnalyzer.java (original)
+++ maven/indexer/branches/lucene-4.6/indexer-core/src/main/java/org/apache/maven/index/context/NexusAnalyzer.java Fri Mar  7 03:53:32 2014
@@ -21,7 +21,6 @@ package org.apache.maven.index.context;
 
 import java.io.Reader;
 import org.apache.lucene.analysis.Analyzer;
-import org.apache.lucene.analysis.TokenStream;
 import org.apache.lucene.analysis.Tokenizer;
 import org.apache.lucene.analysis.util.CharTokenizer;
 import org.apache.lucene.util.Version;
@@ -38,11 +37,6 @@ import org.apache.maven.index.creator.Ja
 public final class NexusAnalyzer
     extends Analyzer
 {
-    //FIXME parent method is final
-    public TokenStream tokenStream( String fieldName, Reader reader )
-    {
-        return getTokenizer( fieldName, reader );
-    }
 
     protected Tokenizer getTokenizer( String fieldName, Reader reader )
     {
@@ -60,7 +54,7 @@ public final class NexusAnalyzer
     @Override
     protected TokenStreamComponents createComponents(String fieldName, Reader reader)
     {
-        throw new UnsupportedOperationException("Not supported yet."); //To change body of generated methods, choose Tools | Templates.
+        return new TokenStreamComponents(getTokenizer(fieldName, reader));
     }
 
     // ==

Modified: maven/indexer/branches/lucene-4.6/indexer-core/src/main/java/org/apache/maven/index/context/NexusLegacyAnalyzer.java
URL: http://svn.apache.org/viewvc/maven/indexer/branches/lucene-4.6/indexer-core/src/main/java/org/apache/maven/index/context/NexusLegacyAnalyzer.java?rev=1575146&r1=1575145&r2=1575146&view=diff
==============================================================================
--- maven/indexer/branches/lucene-4.6/indexer-core/src/main/java/org/apache/maven/index/context/NexusLegacyAnalyzer.java (original)
+++ maven/indexer/branches/lucene-4.6/indexer-core/src/main/java/org/apache/maven/index/context/NexusLegacyAnalyzer.java Fri Mar  7 03:53:32 2014
@@ -23,8 +23,9 @@ import java.io.IOException;
 import java.io.Reader;
 
 import org.apache.lucene.analysis.Analyzer;
-import org.apache.lucene.analysis.CharTokenizer;
+import org.apache.lucene.analysis.util.CharTokenizer;
 import org.apache.lucene.analysis.TokenStream;
+import org.apache.lucene.analysis.Tokenizer;
 import org.apache.lucene.analysis.standard.StandardAnalyzer;
 import org.apache.lucene.util.Version;
 import org.apache.maven.index.ArtifactInfo;
@@ -39,50 +40,36 @@ import org.apache.maven.index.ArtifactIn
 public final class NexusLegacyAnalyzer
     extends Analyzer
 {
-    private static Analyzer DEFAULT_ANALYZER = new StandardAnalyzer( Version.LUCENE_30 );
-
+    private static final Analyzer DEFAULT_ANALYZER = new StandardAnalyzer( Version.LUCENE_46 );
+    
     @Override
-    public TokenStream tokenStream( String field, final Reader reader )
+    protected TokenStreamComponents createComponents(String fieldName, Reader reader)
     {
-        if ( !isTextField( field ) )
+        try
         {
-            return new CharTokenizer( reader )
-            {
-                @Override
-                protected boolean isTokenChar( char c )
-                {
-                    return Character.isLetterOrDigit( c );
-                }
-
-                @Override
-                protected char normalize( char c )
-                {
-                    return Character.toLowerCase( c );
-                }
-            };
+            return new TokenStreamComponents((Tokenizer) tokenizer(fieldName, reader));
         }
-        else
+        catch (IOException ex)
         {
-            return DEFAULT_ANALYZER.tokenStream( field, reader );
+            throw new RuntimeException(ex);
         }
     }
 
-    @Override
-    public TokenStream reusableTokenStream( String field, Reader reader )
-        throws IOException
+
+    protected TokenStream tokenizer( String field, final Reader reader ) throws IOException
     {
         if ( !isTextField( field ) )
         {
-            return new CharTokenizer( reader )
+            return new CharTokenizer(Version.LUCENE_46, reader )
             {
                 @Override
-                protected boolean isTokenChar( char c )
+                protected boolean isTokenChar(int c )
                 {
                     return Character.isLetterOrDigit( c );
                 }
 
                 @Override
-                protected char normalize( char c )
+                protected int normalize(int c )
                 {
                     return Character.toLowerCase( c );
                 }
@@ -90,7 +77,7 @@ public final class NexusLegacyAnalyzer
         }
         else
         {
-            return DEFAULT_ANALYZER.reusableTokenStream( field, reader );
+            return DEFAULT_ANALYZER.tokenStream(field, reader );
         }
     }
 
@@ -101,4 +88,5 @@ public final class NexusLegacyAnalyzer
 
     }
 
+    
 }