You are viewing a plain text version of this content. The canonical link for it is here.
Posted to commits@labs.apache.org by si...@apache.org on 2009/05/04 19:34:45 UTC

svn commit: r771371 - /labs/magma/trunk/foundation-beans/src/main/java/org/apache/magma/beans/PropertyInfo.java

Author: simoneg
Date: Mon May  4 17:34:45 2009
New Revision: 771371

URL: http://svn.apache.org/viewvc?rev=771371&view=rev
Log:
LABS-353 : also underlying converter must be property aware if it is.

LABS-351 : self convert to underlying when toUser is called

Modified:
    labs/magma/trunk/foundation-beans/src/main/java/org/apache/magma/beans/PropertyInfo.java

Modified: labs/magma/trunk/foundation-beans/src/main/java/org/apache/magma/beans/PropertyInfo.java
URL: http://svn.apache.org/viewvc/labs/magma/trunk/foundation-beans/src/main/java/org/apache/magma/beans/PropertyInfo.java?rev=771371&r1=771370&r2=771371&view=diff
==============================================================================
--- labs/magma/trunk/foundation-beans/src/main/java/org/apache/magma/beans/PropertyInfo.java (original)
+++ labs/magma/trunk/foundation-beans/src/main/java/org/apache/magma/beans/PropertyInfo.java Mon May  4 17:34:45 2009
@@ -28,6 +28,7 @@
 import org.apache.magma.basics.utils.GenericClass.MethodDef;
 import org.apache.magma.conversion.Converters;
 import org.apache.magma.conversion.GenericConverter;
+import org.apache.magma.conversion.PropertyAwareConverter;
 
 /**
  * Holds informations about a property of a bean.
@@ -170,6 +171,9 @@
 			this.type = consider.value();
 			this.underlyingConverter = Converters.getConverterFor(this.type, this.underlyingType);
 			if (this.underlyingConverter == null) throw new MagmaException("Cannot find generic converter to convert {0} to and from {1}", this.type, this.underlyingType);
+			if (this.underlyingConverter instanceof PropertyAwareConverter) {
+				((PropertyAwareConverter)this.underlyingConverter).setProperty(this);
+			}
 		} else {
 			this.type = descriptor.getPropertyType();
 		}
@@ -297,6 +301,11 @@
 	 * @return the string human friendly representation of value.
 	 */	
 	public String toUser(Object value) {
+		if (underlyingType != null && value != null) {
+			if (underlyingType.isInstance(value)) {
+				value = fromUnderlying(value);
+			}
+		}
 		return toString(value);
 	}
 	



---------------------------------------------------------------------
To unsubscribe, e-mail: commits-unsubscribe@labs.apache.org
For additional commands, e-mail: commits-help@labs.apache.org