From: <jen...@us...> - 2011-09-13 09:08:59
|
Revision: 3249 http://dl-learner.svn.sourceforge.net/dl-learner/?rev=3249&view=rev Author: jenslehmann Date: 2011-09-13 09:08:47 +0000 (Tue, 13 Sep 2011) Log Message: ----------- made type names case insensitive in conf files Modified Paths: -------------- trunk/examples/family/father.conf trunk/interfaces/src/main/java/org/dllearner/confparser3/ConfParserConfiguration.java Modified: trunk/examples/family/father.conf =================================================================== --- trunk/examples/family/father.conf 2011-09-08 11:21:19 UTC (rev 3248) +++ trunk/examples/family/father.conf 2011-09-13 09:08:47 UTC (rev 3249) @@ -46,4 +46,5 @@ alg.operator = op alg.learningProblem = lp alg.heuristic = h -alg.maxExecutionTimeInSeconds = 15 \ No newline at end of file +alg.maxExecutionTimeInSeconds = 15 + Modified: trunk/interfaces/src/main/java/org/dllearner/confparser3/ConfParserConfiguration.java =================================================================== --- trunk/interfaces/src/main/java/org/dllearner/confparser3/ConfParserConfiguration.java 2011-09-08 11:21:19 UTC (rev 3248) +++ trunk/interfaces/src/main/java/org/dllearner/confparser3/ConfParserConfiguration.java 2011-09-13 09:08:47 UTC (rev 3249) @@ -1,5 +1,6 @@ package org.dllearner.confparser3; +import org.apache.commons.collections15.BidiMap; import org.dllearner.cli.ConfFileOption2; import org.dllearner.configuration.IConfiguration; import org.dllearner.configuration.IConfigurationProperty; @@ -9,6 +10,7 @@ import java.io.IOException; import java.util.*; +import java.util.Map.Entry; /** * Created by IntelliJ IDEA. @@ -64,15 +66,20 @@ Class<?> result = null; String value = (String) option.getValue(); - // first option: use long name of @ComponentAnn annotation - Class<? extends Component> classFromName = AnnComponentManager.getInstance().getComponentsNamed().getKey(value); - if(classFromName != null) { - return classFromName; + // first option: use long name of @ComponentAnn annotation (case insensitive) + BidiMap<Class<? extends Component>, String> componentsNamed = AnnComponentManager.getInstance().getComponentsNamed(); + for(Entry<Class<? extends Component>, String> entry : componentsNamed.entrySet()) { + if(entry.getValue().equalsIgnoreCase(value)) { + return entry.getKey(); + } } - // second option: use short name of @ComponentAnn annotation - Class<? extends Component> classFromShortName = AnnComponentManager.getInstance().getComponentsNamedShort().getKey(value); - if(classFromShortName != null) { - return classFromShortName; + // second option: use short name of @ComponentAnn annotation + // by convention, short names should always be lower case, but we still do it case insensitive + BidiMap<Class<? extends Component>, String> componentsNamedShort = AnnComponentManager.getInstance().getComponentsNamedShort(); + for(Entry<Class<? extends Component>, String> entry : componentsNamedShort.entrySet()) { + if(entry.getValue().equalsIgnoreCase(value)) { + return entry.getKey(); + } } // third option: use specified class name try { This was sent by the SourceForge.net collaborative development platform, the world's largest Open Source development site. |