You are viewing a plain text version of this content. The canonical link for it is here.
Posted to dev@commons.apache.org by ni...@apache.org on 2007/05/24 17:38:58 UTC
svn commit: r541327 - in /jakarta/commons/proper/beanutils/trunk/src:
java/org/apache/commons/beanutils/PropertyUtilsBean.java
test/org/apache/commons/beanutils/PropertyUtilsTestCase.java
Author: niallp
Date: Thu May 24 08:38:56 2007
New Revision: 541327
URL: http://svn.apache.org/viewvc?view=rev&rev=541327
Log:
BEANUTILS-88 PropertyUtilsBean.isReadable/isWriteable always returns false for mapped properties - thanks to Chuck Daniels
Modified:
jakarta/commons/proper/beanutils/trunk/src/java/org/apache/commons/beanutils/PropertyUtilsBean.java
jakarta/commons/proper/beanutils/trunk/src/test/org/apache/commons/beanutils/PropertyUtilsTestCase.java
Modified: jakarta/commons/proper/beanutils/trunk/src/java/org/apache/commons/beanutils/PropertyUtilsBean.java
URL: http://svn.apache.org/viewvc/jakarta/commons/proper/beanutils/trunk/src/java/org/apache/commons/beanutils/PropertyUtilsBean.java?view=diff&rev=541327&r1=541326&r2=541327
==============================================================================
--- jakarta/commons/proper/beanutils/trunk/src/java/org/apache/commons/beanutils/PropertyUtilsBean.java (original)
+++ jakarta/commons/proper/beanutils/trunk/src/java/org/apache/commons/beanutils/PropertyUtilsBean.java Thu May 24 08:38:56 2007
@@ -1328,9 +1328,12 @@
getPropertyDescriptor(bean, name);
if (desc != null) {
Method readMethod = desc.getReadMethod();
- if ((readMethod == null) &&
- (desc instanceof IndexedPropertyDescriptor)) {
- readMethod = ((IndexedPropertyDescriptor) desc).getIndexedReadMethod();
+ if (readMethod == null) {
+ if (desc instanceof IndexedPropertyDescriptor) {
+ readMethod = ((IndexedPropertyDescriptor) desc).getIndexedReadMethod();
+ } else if (desc instanceof MappedPropertyDescriptor) {
+ readMethod = ((MappedPropertyDescriptor) desc).getMappedReadMethod();
+ }
}
return (readMethod != null);
} else {
@@ -1384,9 +1387,12 @@
getPropertyDescriptor(bean, name);
if (desc != null) {
Method writeMethod = desc.getWriteMethod();
- if ((writeMethod == null) &&
- (desc instanceof IndexedPropertyDescriptor)) {
- writeMethod = ((IndexedPropertyDescriptor) desc).getIndexedWriteMethod();
+ if (writeMethod == null) {
+ if (desc instanceof IndexedPropertyDescriptor) {
+ writeMethod = ((IndexedPropertyDescriptor) desc).getIndexedWriteMethod();
+ } else if (desc instanceof MappedPropertyDescriptor) {
+ writeMethod = ((MappedPropertyDescriptor) desc).getMappedWriteMethod();
+ }
}
return (writeMethod != null);
} else {
Modified: jakarta/commons/proper/beanutils/trunk/src/test/org/apache/commons/beanutils/PropertyUtilsTestCase.java
URL: http://svn.apache.org/viewvc/jakarta/commons/proper/beanutils/trunk/src/test/org/apache/commons/beanutils/PropertyUtilsTestCase.java?view=diff&rev=541327&r1=541326&r2=541327
==============================================================================
--- jakarta/commons/proper/beanutils/trunk/src/test/org/apache/commons/beanutils/PropertyUtilsTestCase.java (original)
+++ jakarta/commons/proper/beanutils/trunk/src/test/org/apache/commons/beanutils/PropertyUtilsTestCase.java Thu May 24 08:38:56 2007
@@ -2076,6 +2076,60 @@
}
+ /**
+ * Test isReadable() method.
+ */
+ public void testIsReadable() {
+ TestBean bean = new TestBean();
+ String property = null;
+ try {
+ property = "stringProperty";
+ assertTrue("Property " + property +" isReadable expeced TRUE", PropertyUtils.isReadable(bean, property));
+ } catch (Throwable t) {
+ fail("Property " + property +" isReadable Threw exception: " + t);
+ }
+ try {
+ property = "stringIndexed";
+ assertTrue("Property " + property +" isReadable expeced TRUE", PropertyUtils.isReadable(bean, property));
+ } catch (Throwable t) {
+ fail("Property " + property +" isReadable Threw exception: " + t);
+ }
+ try {
+ property = "mappedProperty";
+ assertTrue("Property " + property +" isReadable expeced TRUE", PropertyUtils.isReadable(bean, property));
+ } catch (Throwable t) {
+ fail("Property " + property +" isReadable Threw exception: " + t);
+ }
+
+ }
+
+ /**
+ * Test isReadable() method.
+ */
+ public void testIsWriteable() {
+ TestBean bean = new TestBean();
+ String property = null;
+ try {
+ property = "stringProperty";
+ assertTrue("Property " + property +" isWriteable expeced TRUE", PropertyUtils.isWriteable(bean, property));
+ } catch (Throwable t) {
+ fail("Property " + property +" isWriteable Threw exception: " + t);
+ }
+ try {
+ property = "stringIndexed";
+ assertTrue("Property " + property +" isWriteable expeced TRUE", PropertyUtils.isWriteable(bean, property));
+ } catch (Throwable t) {
+ fail("Property " + property +" isWriteable Threw exception: " + t);
+ }
+ try {
+ property = "mappedProperty";
+ assertTrue("Property " + property +" isWriteable expeced TRUE", PropertyUtils.isWriteable(bean, property));
+ } catch (Throwable t) {
+ fail("Property " + property +" isWriteable Threw exception: " + t);
+ }
+
+ }
+
/**
* Test the mappedPropertyType of MappedPropertyDescriptor.
---------------------------------------------------------------------
To unsubscribe, e-mail: commons-dev-unsubscribe@jakarta.apache.org
For additional commands, e-mail: commons-dev-help@jakarta.apache.org