Example usage for org.apache.lucene.analysis.synonym SolrSynonymParser SolrSynonymParser

List of usage examples for org.apache.lucene.analysis.synonym SolrSynonymParser SolrSynonymParser

Introduction

In this page you can find the example usage for org.apache.lucene.analysis.synonym SolrSynonymParser SolrSynonymParser.

Prototype

public SolrSynonymParser(boolean dedup, boolean expand, Analyzer analyzer) 

Source Link

Usage

From source file:pl.litwiniuk.rowicki.modsynonyms.ModificatedFSTSynonymFilterFactory.java

License:Apache License

/**
 * Load synonyms from the solr format, "format=solr".
 *//*  w w w.  j  a v  a2 s  . co m*/
private SynonymMap loadSolrSynonyms(ResourceLoader loader, boolean dedup, Analyzer analyzer)
        throws IOException, ParseException {
    CharsetDecoder decoder = Charset.forName("UTF-8").newDecoder().onMalformedInput(CodingErrorAction.REPORT)
            .onUnmappableCharacter(CodingErrorAction.REPORT);

    SolrSynonymParser parser = new SolrSynonymParser(dedup, expand, analyzer);
    File synonymFile = new File(synonyms);
    if (synonymFile.exists()) {
        decoder.reset();
        parser.add(new InputStreamReader(loader.openResource(synonyms), decoder));
    } else {
        List<String> files = splitFileNames(synonyms);
        for (String file : files) {
            decoder.reset();
            parser.add(new InputStreamReader(loader.openResource(file), decoder));
        }
    }
    return parser.build();
}