/** * Klasa do obslugi WCRFT * Projekt: Synat * autor: Tomasz Walkowiak * Wersja 2014.06.12 * Wymaga * libwcrft.so.2 * maca skompilowana z opcją integracji morfeusza */ package lemmaextractor; import java.io.IOException; public class WCRFT { static { try { System.loadLibrary("wcrftswig"); } catch (UnsatisfiedLinkError e) { System.err.println("Cannot load the libwcrftswig.so native code.\nRun: java -Djava.library.path=. -jar ..." + e); System.exit(1); } } private lemmaextractor.swig.SimpleTagger wcrftlib=null; /** * Utworzenie instancji WCRFT * Wymaga zainstalowanego WCRFT * @param configPath -- sciezka do pliku konfiguracyjnego wcrft * @param modelPath -- ścieżka do modelu * @param configPath -- sciezka do pliku konfiguracyjnego linera * * @throws IOException */ public WCRFT(String configPath, String modelPath) throws IOException { wcrftlib =new lemmaextractor.swig.SimpleTagger(configPath,modelPath); wcrftlib.tag_input("Tekst poczatkowy."); } /** * Dokonuje analizy podanego tekstu. Wynik analizy zwracany jako string * w formacie IOB-CHAN * @param text -- tekst do przetworzenia * @return string zawierający wynik przetwarzania (IOB-CHAN) * @throws IOException */ public String process(String text) throws IOException { return wcrftlib.tag_input(text); } /** * Zamyka instancje WCRFT * @throws IOException */ public void Close() { } public void finalize() { Close(); } }