You are viewing a plain text version of this content. The canonical link for it is here.
Posted to commits@tuscany.apache.org by js...@apache.org on 2007/06/21 04:41:40 UTC

svn commit: r549331 - /incubator/tuscany/java/sca/modules/assembly-xml/src/main/java/org/apache/tuscany/sca/assembly/xml/DefaultBeanModelProcessor.java

Author: jsdelfino
Date: Wed Jun 20 19:41:39 2007
New Revision: 549331

URL: http://svn.apache.org/viewvc?view=rev&rev=549331
Log:
Added some simple heuristics to the BeanModelProcessor. Map uppercase properties to lowercase attributes and trim trailing _ from property names.

Modified:
    incubator/tuscany/java/sca/modules/assembly-xml/src/main/java/org/apache/tuscany/sca/assembly/xml/DefaultBeanModelProcessor.java

Modified: incubator/tuscany/java/sca/modules/assembly-xml/src/main/java/org/apache/tuscany/sca/assembly/xml/DefaultBeanModelProcessor.java
URL: http://svn.apache.org/viewvc/incubator/tuscany/java/sca/modules/assembly-xml/src/main/java/org/apache/tuscany/sca/assembly/xml/DefaultBeanModelProcessor.java?view=diff&rev=549331&r1=549330&r2=549331
==============================================================================
--- incubator/tuscany/java/sca/modules/assembly-xml/src/main/java/org/apache/tuscany/sca/assembly/xml/DefaultBeanModelProcessor.java (original)
+++ incubator/tuscany/java/sca/modules/assembly-xml/src/main/java/org/apache/tuscany/sca/assembly/xml/DefaultBeanModelProcessor.java Wed Jun 20 19:41:39 2007
@@ -61,9 +61,22 @@
         // Introspect the bean model class
         try {
             beanInfo = Introspector.getBeanInfo(beanModelType);
+            
+            // Index the bean's property descriptors
             PropertyDescriptor[] pd = beanInfo.getPropertyDescriptors();
             for (int i =0; i < pd.length; i++) {
-                propertyDescriptors.put(pd[i].getName(), pd[i]);
+                
+                // Map an uppercase property name to a lowercase attribute name 
+                String name = pd[i].getName();
+                if (name.toUpperCase().equals(name)) {
+                    name = name.toLowerCase();
+                }
+                
+                // Trim trailing _ from property names
+                if (name.endsWith("_")) {
+                    name = name.substring(0, name.length()-1);
+                }
+                propertyDescriptors.put(name, pd[i]);
             }
         } catch (IntrospectionException e) {
             throw new IllegalArgumentException(e);



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