You are viewing a plain text version of this content. The canonical link for it is here.
Posted to commits@jmeter.apache.org by se...@apache.org on 2013/08/17 12:32:54 UTC
svn commit: r1514977 -
/jmeter/trunk/src/core/org/apache/jmeter/testbeans/gui/GenericTestBeanCustomizer.java
Author: sebb
Date: Sat Aug 17 10:32:54 2013
New Revision: 1514977
URL: http://svn.apache.org/r1514977
Log:
Log a warning if the DEFAULT class is not appropriate for the property class
Modified:
jmeter/trunk/src/core/org/apache/jmeter/testbeans/gui/GenericTestBeanCustomizer.java
Modified: jmeter/trunk/src/core/org/apache/jmeter/testbeans/gui/GenericTestBeanCustomizer.java
URL: http://svn.apache.org/viewvc/jmeter/trunk/src/core/org/apache/jmeter/testbeans/gui/GenericTestBeanCustomizer.java?rev=1514977&r1=1514976&r2=1514977&view=diff
==============================================================================
--- jmeter/trunk/src/core/org/apache/jmeter/testbeans/gui/GenericTestBeanCustomizer.java (original)
+++ jmeter/trunk/src/core/org/apache/jmeter/testbeans/gui/GenericTestBeanCustomizer.java Sat Aug 17 10:32:54 2013
@@ -38,6 +38,7 @@ import javax.swing.JPanel;
import javax.swing.JScrollPane;
import javax.swing.SwingConstants;
+import org.apache.commons.lang3.ClassUtils;
import org.apache.jmeter.gui.ClearGui;
import org.apache.jmeter.testbeans.TestBeanHelper;
import org.apache.jmeter.util.JMeterUtils;
@@ -318,8 +319,18 @@ public class GenericTestBeanCustomizer e
* @param pe the propertyEditor
*/
private static void validateAttributes(PropertyDescriptor pd, PropertyEditor pe) {
- if (notNull(pd) && pd.getValue(DEFAULT) == null) {
- log.warn(getDetails(pd) + " requires a value but does not provide a default.");
+ final Object deflt = pd.getValue(DEFAULT);
+ if (deflt == null) {
+ if (notNull(pd)) {
+ log.warn(getDetails(pd) + " requires a value but does not provide a default.");
+ }
+ } else {
+ final Class<?> defltClass = deflt.getClass(); // the DEFAULT class
+ // Convert int to Integer etc:
+ final Class<?> propClass = ClassUtils.primitiveToWrapper(pd.getPropertyType());
+ if (!propClass.isAssignableFrom(defltClass) ){
+ log.warn(getDetails(pd) + " has a DEFAULT of class " + defltClass.getCanonicalName());
+ }
}
if (notOther(pd) && pd.getValue(TAGS) == null && pe.getTags() == null) {
log.warn(getDetails(pd) + " does not have tags but other values are not allowed.");
@@ -346,6 +357,9 @@ public class GenericTestBeanCustomizer e
sb.append(pd.getReadMethod().getDeclaringClass().getName());
sb.append('#');
sb.append(pd.getName());
+ sb.append('(');
+ sb.append(pd.getPropertyType().getCanonicalName());
+ sb.append(')');
return sb.toString();
}