コード例 #1
0
        //	private PropagationManager loadPropagationManager(int optionContainer, McoModel mcoModel) throws MaltChainedException {
        //		String propagationSpecFileName = OptionManager.instance().getOptionValue(optionContainer, "singlemalt", "propagation").toString();
        //		PropagationManager propagationManager = null;
        //		if (propagationSpecFileName != null && propagationSpecFileName.length() > 0) {
        //			propagationManager = new PropagationManager();
        //			try {
        //				propagationManager.loadSpecification(mcoModel.getMcoEntryURL(propagationSpecFileName));
        //			} catch(IOException e) {
        //				throw new MaltChainedException("Couldn't read file "+propagationSpecFileName+" from mco-file ", e);
        //			}
        //		}
        //		return propagationManager;
        //	}

//JAVA TO C# CONVERTER WARNING: Method 'throws' clauses are not available in .NET:
//ORIGINAL LINE: private org.maltparser.core.feature.FeatureModelManager loadFeatureModelManager(int optionContainer, org.maltparser.core.lw.parser.McoModel mcoModel) throws org.maltparser.core.exception.MaltChainedException
        private FeatureModelManager loadFeatureModelManager(int optionContainer, McoModel mcoModel)
        {
//JAVA TO C# CONVERTER WARNING: The original Java variable was marked 'final':
//ORIGINAL LINE: final org.maltparser.core.feature.system.FeatureEngine system = new org.maltparser.core.feature.system.FeatureEngine();
            FeatureEngine system = new FeatureEngine();

            system.load("/appdata/features/ParserFeatureSystem.xml");
            system.load(PluginLoader.instance());
            FeatureModelManager featureModelManager = new FeatureModelManager(system);
            string featureModelFileName             = OptionManager.instance().getOptionValue(optionContainer, "guide", "features").ToString().Trim();

            try
            {
                if (featureModelFileName.EndsWith(".par", StringComparison.Ordinal))
                {
                    string markingStrategy = OptionManager.instance().getOptionValue(optionContainer, "pproj", "marking_strategy").ToString().Trim();
                    string coveredRoot     = OptionManager.instance().getOptionValue(optionContainer, "pproj", "covered_root").ToString().Trim();
                    featureModelManager.loadParSpecification(mcoModel.GetMcoEntryUrl(featureModelFileName), markingStrategy, coveredRoot);
                }
                else
                {
                    featureModelManager.loadSpecification(mcoModel.GetMcoEntryUrl(featureModelFileName));
                }
            }
            catch (IOException e)
            {
                throw new MaltChainedException("Couldn't read file " + featureModelFileName + " from mco-file ", e);
            }
            return(featureModelManager);
        }
コード例 #2
0
        /// <summary>
        /// This constructor can only be used by ConcurrentMaltParserService
        /// </summary>
        /// <param name="_optionContainer"> a option container index </param>
        /// <param name="_mcoURL"> a URL to a valid MaltParser model file. </param>
        /// <exception cref="MaltChainedException"> </exception>
        internal ConcurrentMaltParserModel(int _optionContainer, Url _mcoURL)
        {
            var      optionContainer = _optionContainer;
            McoModel mcoModel        = new McoModel(_mcoURL);
            string   inputFormatName = OptionManager.instance().getOptionValue(optionContainer, "input", "format").ToString().Trim();
            Url      inputFormatURL  = null;

            try
            {
                inputFormatURL = mcoModel.GetMcoEntryUrl(inputFormatName);
            }
            catch (IOException e)
            {
                throw new MaltChainedException("Couldn't read file " + inputFormatName + " from mco-file ", e);
            }
            DataFormatManager dataFormatManager = new DataFormatManager(inputFormatURL, inputFormatURL);

            parentSymbolTableHandler = new HashSymbolTableHandler();
            DataFormatInstance dataFormatInstance = dataFormatManager.InputDataFormatSpec.createDataFormatInstance(parentSymbolTableHandler, OptionManager.instance().getOptionValueString(optionContainer, "singlemalt", "null_value"));

            try
            {
                parentSymbolTableHandler.load(mcoModel.GetInputStreamReader("symboltables.sym", "UTF-8"));
            }
            catch (IOException e)
            {
                throw new MaltChainedException("Couldn't read file symboltables.sym from mco-file ", e);
            }
            defaultRootLabel = OptionManager.instance().getOptionValue(optionContainer, "graph", "root_label").ToString().Trim();
            markingStrategy  = LWDeprojectivizer.getMarkingStrategyInt(OptionManager.instance().getOptionValue(optionContainer, "pproj", "marking_strategy").ToString().Trim());
            coveredRoot      = !OptionManager.instance().getOptionValue(optionContainer, "pproj", "covered_root").ToString().Trim().Equals("none", StringComparison.OrdinalIgnoreCase);

            FeatureModelManager featureModelManager = loadFeatureModelManager(optionContainer, mcoModel);

            singleMalt           = new LWSingleMalt(optionContainer, dataFormatInstance, mcoModel, null, featureModelManager);
            concurrentDataFormat = DataFormat.ParseDataFormatXmLfile(inputFormatURL);
        }