? test/unit/src/org/openide/util/lookup/RecursiveUpdateTest.java
Index: src/org/openide/explorer/propertysheet/DefaultPropertyModel.java
===================================================================
RCS file: /cvs/openide/src/org/openide/explorer/propertysheet/DefaultPropertyModel.java,v
retrieving revision 1.10
diff -r1.10 DefaultPropertyModel.java
64a65,90
> this (bean, findInfo (bean, propertyName));
> }
>
> /** Creates new DefaultPropertyModel with provided specific
> * PropertyDescriptor
. This can be useful if one needs to
> * set to provide specific attributes to the property editor.
> *
> * PropertyDescriptor pd = new PropertyDescriptor ("myProperty", bean.getClass ()); > * pd.setPropertyEditorClass (PropertyEditorManager.findEditor (Object.class)); > * > * // special attributes to the property editor > * pb.setValue ("superClass", MyProperty.class); > * > * > * model = new DefaultPropertyModel (bean, pd); > * panel = new PropertyPanel (model); > *> * This constructor replaces the default use of BeanInfo and that is why > * simplifies the use of ExPropertyEditors. > * > * @param bean the java bean to be introspected > * @param descr the property descriptor of the property to use > * > * @since 2.4 > */ > public DefaultPropertyModel(Object bean, PropertyDescriptor descr) { 67a94,98 > > this.prop = descr; > this.readMethod = descr.getReadMethod (); > this.writeMethod = descr.getWriteMethod (); > 74a106,110 > } > catch (Exception e) { > ErrorManager.getDefault().notify(ErrorManager.INFORMATIONAL, e); > } > } 75a112,120 > /** Finds property descriptor for a bean. > * @param bean the bean > * @param name name of the property to find > * @return the descriptor > * @exception IllegalArgumentException if the method is not found > */ > private static PropertyDescriptor findInfo (Object bean, String name) > throws IllegalArgumentException { > try { 79,84c124,125 < if (descr[i].getName().equals(propertyName)) { < prop = descr[i]; < propertyTypeClass = prop.getPropertyType(); < readMethod = prop.getReadMethod(); < writeMethod = prop.getWriteMethod(); < break; --- > if (descr[i].getName().equals(name)) { > return descr[i]; 86a128,134 > throw new IllegalArgumentException ( > "No property named " + name + " in class " + bean.getClass () // NOI18N > ); > } catch (IntrospectionException e) { > IllegalArgumentException newEx = new IllegalArgumentException(); > ErrorManager.getDefault().annotate (newEx, e); > throw newEx; 88,93d135 < catch (Exception e) { < ErrorManager.getDefault().notify(ErrorManager.INFORMATIONAL, e); < } < < if (prop == null) < throw new IllegalArgumentException(); 95c137 < --- >