Lucene.Net.Analysis.Synonym.FSTSynonymFilterFactory.LoadSynonyms C# (CSharp) Метод

LoadSynonyms() приватный Метод

Load synonyms with the given SynonymMap.Parser class.
private LoadSynonyms ( IResourceLoader loader, string cname, bool dedup, Analyzer analyzer ) : SynonymMap
loader IResourceLoader
cname string
dedup bool
analyzer Analyzer
Результат SynonymMap
        private SynonymMap LoadSynonyms(IResourceLoader loader, string cname, bool dedup, Analyzer analyzer)
        {
            Encoding decoder = Encoding.UTF8;

            SynonymMap.Parser parser;
            Type clazz = loader.FindClass(cname /*, typeof(SynonymMap.Parser) */);
            try
            {
                parser = (SynonymMap.Parser)Activator.CreateInstance(clazz,
                    BindingFlags.Public | BindingFlags.NonPublic | BindingFlags.Instance,
                    null, new object[] { dedup, expand, analyzer }, CultureInfo.InvariantCulture);
            }
            catch (Exception e)
            {
                throw e;
            }

            if (File.Exists(synonyms))
            {
                parser.Parse(new StreamReader(loader.OpenResource(synonyms), decoder));
            }
            else
            {
                IEnumerable<string> files = SplitFileNames(synonyms);
                foreach (string file in files)
                {
                    parser.Parse(new StreamReader(loader.OpenResource(synonyms), decoder));
                }
            }
            return parser.Build();
        }