@Test void propertyDescriptorGenericTest() { PropertyDescriptor genericPropertyDescriptor = this.beanDescriptor.getProperty("genericProp"); assertNotNull(genericPropertyDescriptor); assertEquals("genericProp", genericPropertyDescriptor.getId()); assertEquals("genericProp", genericPropertyDescriptor.getName()); assertEquals("genericProp", genericPropertyDescriptor.getDescription()); assertSame(List.class, ((ParameterizedType) genericPropertyDescriptor.getPropertyType()).getRawType()); assertSame(Integer.class, ((ParameterizedType) genericPropertyDescriptor.getPropertyType()).getActualTypeArguments()[0]); assertNull(genericPropertyDescriptor.getDefaultValue()); assertFalse(genericPropertyDescriptor.isMandatory()); assertNotNull(genericPropertyDescriptor.getWriteMethod()); assertNotNull(genericPropertyDescriptor.getReadMethod()); assertNull(genericPropertyDescriptor.getField()); PropertyDescriptor prop1Descriptor = this.beanDescriptor.getProperty("prop1"); assertEquals("defaultprop1", prop1Descriptor.getDefaultValue()); }
@Override public PropertyDescriptor getProperty(String propertyName) { return this.parameterDescriptorMap.get(propertyName); }
DefaultBeanDescriptor implements BeanDescriptor { @Override public PropertyDescriptor getProperty(String propertyName) { return this.parameterDescriptorMap.get(propertyName); } }
DefaultBeanDescriptor implements BeanDescriptor { @Override public PropertyDescriptor getProperty(String propertyName) { return this.parameterDescriptorMap.get(propertyName); } DefaultBeanDescriptor(Class<?> beanClass); }
DefaultBeanDescriptor implements BeanDescriptor { @Override public PropertyDescriptor getProperty(String propertyName) { return this.parameterDescriptorMap.get(propertyName); } DefaultBeanDescriptor(Class<?> beanClass); @Override Class<?> getBeanClass(); @Override Collection<PropertyDescriptor> getProperties(); @Override PropertyDescriptor getProperty(String propertyName); }
DefaultBeanDescriptor implements BeanDescriptor { @Override public PropertyDescriptor getProperty(String propertyName) { return this.parameterDescriptorMap.get(propertyName); } DefaultBeanDescriptor(Class<?> beanClass); @Override Class<?> getBeanClass(); @Override Collection<PropertyDescriptor> getProperties(); @Override PropertyDescriptor getProperty(String propertyName);  }