You are viewing a plain text version of this content. The canonical link for it is here.
Posted to commits@lucene.apache.org by us...@apache.org on 2013/10/20 18:24:09 UTC

svn commit: r1533923 - /lucene/dev/branches/lucene4956/lucene/analysis/arirang/src/java/org/apache/lucene/analysis/ko/KoreanFilter.java

Author: uschindler
Date: Sun Oct 20 16:24:08 2013
New Revision: 1533923

URL: http://svn.apache.org/r1533923
Log:
LUCENE-4956: Rewrite iterator-consumer; make "stupid" Exception more selective. I have no idea how to fix!

Modified:
    lucene/dev/branches/lucene4956/lucene/analysis/arirang/src/java/org/apache/lucene/analysis/ko/KoreanFilter.java

Modified: lucene/dev/branches/lucene4956/lucene/analysis/arirang/src/java/org/apache/lucene/analysis/ko/KoreanFilter.java
URL: http://svn.apache.org/viewvc/lucene/dev/branches/lucene4956/lucene/analysis/arirang/src/java/org/apache/lucene/analysis/ko/KoreanFilter.java?rev=1533923&r1=1533922&r2=1533923&view=diff
==============================================================================
--- lucene/dev/branches/lucene4956/lucene/analysis/arirang/src/java/org/apache/lucene/analysis/ko/KoreanFilter.java (original)
+++ lucene/dev/branches/lucene4956/lucene/analysis/arirang/src/java/org/apache/lucene/analysis/ko/KoreanFilter.java Sun Oct 20 16:24:08 2013
@@ -152,7 +152,6 @@ public final class KoreanFilter extends 
     if(outputs.get(0).getScore()>=AnalysisOutput.SCORE_COMPOUNDS) {
       extractKeyword(outputs,offsetAtt.startOffset(), map, 0);      
     } else {
-      
       try {
         List<AnalysisOutput> list = wsAnal.analyze(input);
         
@@ -168,20 +167,13 @@ public final class KoreanFilter extends 
           results.addAll(outputs);
         }
         extractKeyword(results, offsetAtt.startOffset(), map, 0);
-      } catch(Exception e) {
-        // nocommit: Fix this stupidness with catch all Exceptions!
+      } catch (StringIndexOutOfBoundsException e) {
+        // nocommit: Fix this stupidness with catch, instead fix in WSOutput
         extractKeyword(outputs.subList(0, 1), offsetAtt.startOffset(), map, 0);
       }
-      
     }
         
-    Iterator<String> iter = map.keySet().iterator();
-    
-    while(iter.hasNext()) {      
-      String text = iter.next();      
-      morphQueue.add(map.get(text));
-    }
-  
+    morphQueue.addAll(map.values());
   }
   
   private void extractKeyword(List<AnalysisOutput> outputs, int startoffset, Map<String,Token> map, int position) {