You are viewing a plain text version of this content. The canonical link for it is here.
Posted to commits@uima.apache.org by re...@apache.org on 2015/08/25 22:33:43 UTC

svn commit: r1697766 - /uima/uimafit/trunk/uimafit-core/src/main/java/org/apache/uima/fit/factory/ConfigurationParameterFactory.java

Author: rec
Date: Tue Aug 25 20:33:43 2015
New Revision: 1697766

URL: http://svn.apache.org/r1697766
Log:
[UIMA-4571] ConfigurationParameterFactory.setParameter() should attempt type coercion
- Do coercion for ConfigurationParameter-type parameters

Modified:
    uima/uimafit/trunk/uimafit-core/src/main/java/org/apache/uima/fit/factory/ConfigurationParameterFactory.java

Modified: uima/uimafit/trunk/uimafit-core/src/main/java/org/apache/uima/fit/factory/ConfigurationParameterFactory.java
URL: http://svn.apache.org/viewvc/uima/uimafit/trunk/uimafit-core/src/main/java/org/apache/uima/fit/factory/ConfigurationParameterFactory.java?rev=1697766&r1=1697765&r2=1697766&view=diff
==============================================================================
--- uima/uimafit/trunk/uimafit-core/src/main/java/org/apache/uima/fit/factory/ConfigurationParameterFactory.java (original)
+++ uima/uimafit/trunk/uimafit-core/src/main/java/org/apache/uima/fit/factory/ConfigurationParameterFactory.java Tue Aug 25 20:33:43 2015
@@ -605,19 +605,25 @@ public final class ConfigurationParamete
     } else if (aSpec instanceof ResourceCreationSpecifier) {
       ResourceMetaData md = ((ResourceCreationSpecifier) aSpec).getMetaData();
 
-      if (md.getConfigurationParameterDeclarations().getConfigurationParameter(null, name) == null) {
+      ConfigurationParameter param = md.getConfigurationParameterDeclarations()
+              .getConfigurationParameter(null, name);
+      if (param == null) {
         throw new IllegalArgumentException("Cannot set undeclared parameter [" + name + "]");
       }
 
-      md.getConfigurationParameterSettings().setParameterValue(name, value);
+      md.getConfigurationParameterSettings().setParameterValue(name,
+              convertParameterValue(param, value));
     } else if (aSpec instanceof ConfigurableDataResourceSpecifier) {
       ResourceMetaData md = ((ConfigurableDataResourceSpecifier) aSpec).getMetaData();
 
-      if (md.getConfigurationParameterDeclarations().getConfigurationParameter(null, name) == null) {
+      ConfigurationParameter param = md.getConfigurationParameterDeclarations()
+              .getConfigurationParameter(null, name);
+      if (param == null) {
         throw new IllegalArgumentException("Cannot set undeclared parameter [" + name + "]");
       }
 
-      md.getConfigurationParameterSettings().setParameterValue(name, value);
+      md.getConfigurationParameterSettings().setParameterValue(name,
+              convertParameterValue(param, value));
     } else {
       throw new IllegalClassException("Unsupported resource specifier class [" + aSpec.getClass()
               + "]");