}
}
@Override
public String toString() {
MapBuilder mb = new MapBuilder().setSortKeys(true).setPrintCount(true);
for (String key : keySet()) {
Object parentValue = parent == null ? null : parent.getProperty(key, null);
Object value = props.get(key);
if (parentValue != null && value == null) {
mb.append(key + " (inherited)", parentValue);
} else if (parentValue != null && value != null) {
mb.append(key + " (overrided)", value);
} else {
mb.append(key, value);
}
}
return new ToStringBuilder().append(getBeanDescription()).append(mb).toString();
}