/** * Populate the internal storage from an array of descriptors * * @param descriptors */ private void populateProperties(PropertyDescriptor[] descriptors) { for (PropertyDescriptor pd : descriptors) { String fieldName = pd.getName(); if (!namesToProperties.containsKey(fieldName)) { Method getter = pd.getReadMethod(); Method setter = pd.getWriteMethod(); if (getter != null && setter != null) { ClassProperty p = null; if (pd instanceof IndexedPropertyDescriptor) { IndexedPropertyDescriptor ipd = (IndexedPropertyDescriptor) pd; // Class<?> iType = ipd.getIndexedPropertyType(); Method iGetter = ipd.getIndexedReadMethod(); Method iSetter = ipd.getIndexedWriteMethod(); if (iGetter != null && iSetter != null) { p = new ClassProperty.IndexedProperty(fieldName, getter, setter, iGetter, iSetter); } } if (p == null) { p = new ClassProperty(fieldName, getter, setter); } namesToProperties.put(fieldName, p); } } } }
/** * Populate the internal storage from an array of descriptors * * @param descriptors */ private void populateProperties(PropertyDescriptor[] descriptors) { for (PropertyDescriptor pd : descriptors) { String fieldName = pd.getName(); if (!namesToProperties.containsKey(fieldName)) { Method getter = pd.getReadMethod(); Method setter = pd.getWriteMethod(); if (getter != null && setter != null) { ClassProperty p = null; if (pd instanceof IndexedPropertyDescriptor) { IndexedPropertyDescriptor ipd = (IndexedPropertyDescriptor) pd; // Class<?> iType = ipd.getIndexedPropertyType(); Method iGetter = ipd.getIndexedReadMethod(); Method iSetter = ipd.getIndexedWriteMethod(); if (iGetter != null && iSetter != null) { p = new ClassProperty.IndexedProperty(fieldName, getter, setter, iGetter, iSetter); } } if (p == null) { p = new ClassProperty(fieldName, getter, setter); } namesToProperties.put(fieldName, p); } } } }