rdonkin 2004/04/27 13:01:10 Modified: betwixt/src/java/org/apache/commons/betwixt/expression Tag: REFACTORING-BRANCH_2004-01-13 MethodUpdater.java Log: Added support for array property setters Revision Changes Path No revision No revision 1.11.2.1 +18 -5 jakarta-commons/betwixt/src/java/org/apache/commons/betwixt/expression/MethodUpdater.java Index: MethodUpdater.java =================================================================== RCS file: /home/cvs/jakarta-commons/betwixt/src/java/org/apache/commons/betwixt/expression/MethodUpdater.java,v retrieving revision 1.11 retrieving revision 1.11.2.1 diff -u -r1.11 -r1.11.2.1 --- MethodUpdater.java 9 Oct 2003 20:52:04 -0000 1.11 +++ MethodUpdater.java 27 Apr 2004 20:01:10 -0000 1.11.2.1 @@ -60,7 +60,9 @@ */ package org.apache.commons.betwixt.expression; +import java.lang.reflect.Array; import java.lang.reflect.Method; +import java.util.Collection; import org.apache.commons.logging.Log; import org.apache.commons.logging.LogFactory; @@ -131,7 +133,18 @@ return; } */ - } + } + // special case for collection objects into arrays + if (newValue instanceof Collection && valueType.isArray()) { + Collection valuesAsCollection = (Collection) newValue; + Class componentType = valueType.getComponentType(); + if (componentType != null) { + Object[] valuesAsArray = + (Object[]) Array.newInstance(componentType, valuesAsCollection.size()); + newValue = valuesAsCollection.toArray(valuesAsArray); + } + } + Object[] arguments = { newValue }; try { if ( log.isDebugEnabled() ) {
--------------------------------------------------------------------- To unsubscribe, e-mail: [EMAIL PROTECTED] For additional commands, e-mail: [EMAIL PROTECTED]