//
for (Map.Entry<String, MethodInfo> getterEntry : getterMap.entrySet()) {
String name = getterEntry.getKey();
MethodInfo getter = getterEntry.getValue();
TypeInfo getterTypeInfo = getter.getReturnType();
//
Set<MethodInfo> setters = setterMap.get(name);
PropertyInfo property = null;
//
if (setters != null) {
for (MethodInfo setter : setters) {
TypeInfo setterTypeInfo = setter.getParameterTypes().get(0);
if (getterTypeInfo.equals(setterTypeInfo)) {
property = createPropertyInfo(
type,
name,
getterTypeInfo,
getter,
setter);
}
}
}
//
if (property == null) {
property = createPropertyInfo(
type,
name,
getterTypeInfo,
getter,
null);
}
//
if (property != null) {
properties.put(name, property);
}
}
//
setterMap.keySet().removeAll(properties.keySet());
for (Map.Entry<String, Set<MethodInfo>> setterEntry : setterMap.entrySet()) {
String name = setterEntry.getKey();
for (MethodInfo setter : setterEntry.getValue()) {
TypeInfo setterTypeInfo = setter.getParameterTypes().get(0);
PropertyInfo property = createPropertyInfo(
type,
name,
setterTypeInfo,
null,