adding reading morphology fromresource

git-svn-id: https://russianmorphology.googlecode.com/svn/trunk@54 d817d54c-26ab-11de-abc9-2f7d1455ff7a
This commit is contained in:
alexander.a.kuznetsov 2009-10-04 19:49:57 +00:00
parent 2cba2dd37e
commit a6970bda31
3 changed files with 28 additions and 11 deletions

View File

@ -18,14 +18,19 @@ package org.apache.lucene.morphology;
import java.io.BufferedReader;
import java.io.IOException;
import java.io.InputStream;
import java.util.ArrayList;
import java.util.List;
public class LuceneMorph extends Morph {
public LuceneMorph(String fileName,LetterDecoderEncoder decoderEncoder) throws IOException {
super(fileName,decoderEncoder);
public LuceneMorph(String fileName, LetterDecoderEncoder decoderEncoder) throws IOException {
super(fileName, decoderEncoder);
}
public LuceneMorph(InputStream inputStream, LetterDecoderEncoder decoderEncoder) throws IOException {
super(inputStream, decoderEncoder);
}
@Override

View File

@ -16,10 +16,7 @@
package org.apache.lucene.morphology;
import java.io.BufferedReader;
import java.io.FileReader;
import java.io.FileWriter;
import java.io.IOException;
import java.io.*;
import java.util.ArrayList;
import java.util.List;
@ -32,11 +29,16 @@ public class Morph {
protected LetterDecoderEncoder decoderEncoder;
public Morph(String fileName,LetterDecoderEncoder decoderEncoder) throws IOException {
public Morph(String fileName, LetterDecoderEncoder decoderEncoder) throws IOException {
readFromFile(fileName);
this.decoderEncoder = decoderEncoder;
}
public Morph(InputStream inputStream, LetterDecoderEncoder decoderEncoder) throws IOException {
readFromInputStream(inputStream);
this.decoderEncoder = decoderEncoder;
}
public Morph(int[][] separators, short[] rulesId, Heuristic[][] rules, String[] grammaInfo) {
this.separators = separators;
this.rulesId = rulesId;
@ -130,7 +132,12 @@ public class Morph {
}
public void readFromFile(String fileName) throws IOException {
BufferedReader bufferedReader = new BufferedReader(new FileReader(fileName));
FileInputStream inputStream = new FileInputStream(fileName);
readFromInputStream(inputStream);
}
private void readFromInputStream(InputStream inputStream) throws IOException {
BufferedReader bufferedReader = new BufferedReader(new InputStreamReader(inputStream));
String s = bufferedReader.readLine();
Integer amount = Integer.valueOf(s);

View File

@ -21,17 +21,22 @@ import org.apache.lucene.analysis.LowerCaseFilter;
import org.apache.lucene.analysis.TokenStream;
import org.apache.lucene.analysis.standard.StandardFilter;
import org.apache.lucene.analysis.standard.StandardTokenizer;
import org.apache.lucene.morphology.LuceneMorph;
import org.apache.lucene.morphology.LetterDecoderEncoder;
import org.apache.lucene.morphology.LuceneMorph;
import java.io.IOException;
import java.io.InputStream;
import java.io.Reader;
public class MorphlogyAnalayzer extends Analyzer {
private LuceneMorph luceneMorph;
public MorphlogyAnalayzer(String pathToMorph,LetterDecoderEncoder letterDecoderEncoder) throws IOException {
luceneMorph = new LuceneMorph("sep.txt",letterDecoderEncoder);
public MorphlogyAnalayzer(String pathToMorph, LetterDecoderEncoder letterDecoderEncoder) throws IOException {
luceneMorph = new LuceneMorph("sep.txt", letterDecoderEncoder);
}
public MorphlogyAnalayzer(InputStream inputStream, LetterDecoderEncoder letterDecoderEncoder) throws IOException {
luceneMorph = new LuceneMorph(inputStream, letterDecoderEncoder);
}
public TokenStream tokenStream(String fieldName, Reader reader) {