001    package railo.runtime.search.lucene2.analyzer;
002    
003    import java.io.Reader;
004    
005    import org.apache.lucene.analysis.Analyzer;
006    import org.apache.lucene.analysis.TokenStream;
007    import org.apache.lucene.analysis.snowball.SnowballAnalyzer;
008    
009    
010    /**
011     * <p>Analyzer for Norwegian language</p>
012     * <p><a href="NorwegianAnalyzer.java.html"><i>View Source</i></a></p>
013     * <p/>
014     *
015     * @author Andrey Grebnev <a href="mailto:andrey.grebnev@blandware.com">&lt;andrey.grebnev@blandware.com&gt;</a>
016     * @version $Revision: 1.3 $ $Date: 2005/02/24 19:51:22 $
017     */
018    public final class NorwegianAnalyzer extends Analyzer {
019    
020            private static SnowballAnalyzer analyzer;
021    
022            private String NORWEGIAN_STOP_WORDS[] = {
023                    "og", "i", "er", "det", "som", "å", "til", "på", "for", "av", "at", "med", "har", "en", "om", "du", "de",
024                    "ikke", "no", "vi", "jeg", "kan", "den", "eller", "seg", "men", "et", "dei", "skal", "ein", "blir", "så",
025                    "vil", "fra", "var", "alle", "andre", "dette", "hva", "år", "bla"
026            };
027    
028            /**
029             * Creates new instance of SpanishAnalyzer
030             */
031            public NorwegianAnalyzer() {
032                    analyzer = new SnowballAnalyzer("Norwegian", NORWEGIAN_STOP_WORDS);
033            }
034    
035            public NorwegianAnalyzer(String stopWords[]) {
036                    analyzer = new SnowballAnalyzer("Norwegian", stopWords);
037            }
038    
039            @Override
040        public TokenStream tokenStream(String fieldName, Reader reader) {
041                    return analyzer.tokenStream(fieldName, reader);
042            }
043    }