resolveJavaBeanProperties() — spring-boot Function Reference
Architecture documentation for the resolveJavaBeanProperties() function in PropertyDescriptorResolver.java from the spring-boot codebase.
Entity Profile
Dependency Diagram
graph TD 5c1af899_0b26_ee7e_603f_cbfeac42fe14["resolveJavaBeanProperties()"] 6775f042_3d09_d5e9_78c0_c47ca3fcd373["resolve()"] 6775f042_3d09_d5e9_78c0_c47ca3fcd373 -->|calls| 5c1af899_0b26_ee7e_603f_cbfeac42fe14 8f5fc172_bd1b_2c58_e46d_1aae04445c59["findMatchingGetter()"] 5c1af899_0b26_ee7e_603f_cbfeac42fe14 -->|calls| 8f5fc172_bd1b_2c58_e46d_1aae04445c59 c80dcaca_a36e_a48d_f1de_b2c11488903f["getPropertyName()"] 5c1af899_0b26_ee7e_603f_cbfeac42fe14 -->|calls| c80dcaca_a36e_a48d_f1de_b2c11488903f style 5c1af899_0b26_ee7e_603f_cbfeac42fe14 fill:#6366f1,stroke:#818cf8,color:#fff
Relationship Graph
Source Code
configuration-metadata/spring-boot-configuration-processor/src/main/java/org/springframework/boot/configurationprocessor/PropertyDescriptorResolver.java lines 114–141
private Stream<PropertyDescriptor> resolveJavaBeanProperties(TypeElement declaringElement,
TypeElementMembers members, ExecutableElement factoryMethod) {
// First check if we have regular java bean properties there
Map<String, PropertyDescriptor> candidates = new LinkedHashMap<>();
members.getPublicGetters().forEach((name, getters) -> {
VariableElement field = members.getFields().get(name);
ExecutableElement getter = findMatchingGetter(members, getters, field);
TypeMirror propertyType = getter.getReturnType();
SourceMetadata sourceMetadata = this.environment.resolveSourceMetadata(field, getter);
register(candidates,
sourceMetadata.createPropertyDescriptor(getPropertyName(field, name),
(propertyName) -> new JavaBeanPropertyDescriptor(propertyName, propertyType,
declaringElement, getter, members.getPublicSetter(name, propertyType), field,
factoryMethod)));
});
// Then check for Lombok ones
members.getFields().forEach((name, field) -> {
TypeMirror propertyType = field.asType();
ExecutableElement getter = members.getPublicGetter(name, propertyType);
ExecutableElement setter = members.getPublicSetter(name, propertyType);
SourceMetadata sourceMetadata = this.environment.resolveSourceMetadata(field, getter);
register(candidates,
sourceMetadata.createPropertyDescriptor(getPropertyName(field, name),
(propertyName) -> new LombokPropertyDescriptor(propertyName, propertyType, declaringElement,
getter, setter, field, factoryMethod)));
});
return candidates.values().stream();
}
Domain
Subdomains
Calls
- findMatchingGetter()
- getPropertyName()
Called By
Source
Frequently Asked Questions
What does resolveJavaBeanProperties() do?
resolveJavaBeanProperties() is a function in the spring-boot codebase.
What does resolveJavaBeanProperties() call?
resolveJavaBeanProperties() calls 2 function(s): findMatchingGetter, getPropertyName.
What calls resolveJavaBeanProperties()?
resolveJavaBeanProperties() is called by 1 function(s): resolve.
Analyze Your Own Codebase
Get architecture documentation, dependency graphs, and domain analysis for your codebase in minutes.
Try Supermodel Free