From: <one...@us...> - 2002-12-07 08:10:26
|
Update of /cvsroot/hibernate/Hibernate/cirrus/hibernate/helpers In directory sc8-pr-cvs1:/tmp/cvs-serv19832/hibernate/helpers Modified Files: ReflectHelper.java Log Message: more work on infoString() stuff integrated setter location patch by Alex Staubo integrated composite-element codegen patch by Wolfgang Jung Index: ReflectHelper.java =================================================================== RCS file: /cvsroot/hibernate/Hibernate/cirrus/hibernate/helpers/ReflectHelper.java,v retrieving revision 1.35 retrieving revision 1.36 diff -C2 -d -r1.35 -r1.36 *** ReflectHelper.java 30 Nov 2002 08:18:59 -0000 1.35 --- ReflectHelper.java 7 Dec 2002 08:10:23 -0000 1.36 *************** *** 161,167 **** } ! private static Method setter(Class theClass, String propertyName) { Method[] methods = theClass.getDeclaredMethods(); for (int i=0; i<methods.length; i++) { if( --- 161,170 ---- } ! private static Method setter(Class theClass, String propertyName) throws MappingException { ! ! Class returnType = getGetter(theClass, propertyName).getReturnType(); Method[] methods = theClass.getDeclaredMethods(); + Method potentialSetter = null; for (int i=0; i<methods.length; i++) { if( *************** *** 171,181 **** String testStdMethod = Introspector.decapitalize( methods[i].getName().substring(3) ); String testOldMethod = methods[i].getName().substring(3); ! if ( ! ( testStdMethod.equals(propertyName) || testOldMethod.equals(propertyName) ) && ! ( methods[i].getParameterTypes().length==1 ) ! ) return methods[i]; } } ! return null; } --- 174,187 ---- String testStdMethod = Introspector.decapitalize( methods[i].getName().substring(3) ); String testOldMethod = methods[i].getName().substring(3); ! if ( ! ( testStdMethod.equals(propertyName) || testOldMethod.equals(propertyName) ) && ! ( methods[i].getParameterTypes().length==1 ) ! ) { ! potentialSetter = methods[i]; ! if ( methods[i].getParameterTypes()[0].equals(returnType) ) return potentialSetter; ! } } } ! return potentialSetter; } |