Skip to content
Merged
Changes from all commits
Commits
File filter

Filter by extension

Filter by extension

Conversations
Failed to load comments.
Loading
Jump to
Jump to file
Failed to load files.
Loading
Diff view
Diff view
Original file line number Diff line number Diff line change
Expand Up @@ -31,6 +31,7 @@
import org.springframework.beans.factory.config.ConfigurableListableBeanFactory;
import org.springframework.beans.factory.support.RootBeanDefinition;
import org.springframework.boot.context.properties.bind.BindConstructorProvider;
import org.springframework.boot.context.properties.bind.BindMethod;
import org.springframework.boot.context.properties.bind.Bindable;
import org.springframework.boot.context.properties.bind.Binder;
import org.springframework.context.ApplicationContext;
Expand Down Expand Up @@ -58,12 +59,6 @@
*/
public final class ConfigurationPropertiesBean {

private static final org.springframework.boot.context.properties.bind.BindMethod JAVA_BEAN_BIND_METHOD = //
org.springframework.boot.context.properties.bind.BindMethod.JAVA_BEAN;

private static final org.springframework.boot.context.properties.bind.BindMethod VALUE_OBJECT_BIND_METHOD = //
org.springframework.boot.context.properties.bind.BindMethod.VALUE_OBJECT;

private final String name;

private final Object instance;
Expand Down Expand Up @@ -201,9 +196,9 @@ public static ConfigurationPropertiesBean get(ApplicationContext applicationCont
}
bindTarget = bindTarget.withBindMethod(BindMethodAttribute.get(applicationContext, beanName));
if (bindTarget.getBindMethod() == null && factoryMethod != null) {
bindTarget = bindTarget.withBindMethod(JAVA_BEAN_BIND_METHOD);
bindTarget = bindTarget.withBindMethod(BindMethod.JAVA_BEAN);
}
if (bindTarget.getBindMethod() != VALUE_OBJECT_BIND_METHOD) {
if (bindTarget.getBindMethod() != BindMethod.VALUE_OBJECT) {
bindTarget = bindTarget.withExistingValue(bean);
}
return create(beanName, bean, bindTarget);
Expand Down Expand Up @@ -232,9 +227,9 @@ private static Method findFactoryMethod(ConfigurableListableBeanFactory beanFact

static ConfigurationPropertiesBean forValueObject(Class<?> beanType, String beanName) {
Bindable<Object> bindTarget = createBindTarget(null, beanType, null);
Assert.state(bindTarget != null && deduceBindMethod(bindTarget) == VALUE_OBJECT_BIND_METHOD,
Assert.state(bindTarget != null && deduceBindMethod(bindTarget) == BindMethod.VALUE_OBJECT,
() -> "Bean '" + beanName + "' is not a @ConfigurationProperties value object");
return create(beanName, null, bindTarget.withBindMethod(VALUE_OBJECT_BIND_METHOD));
return create(beanName, null, bindTarget.withBindMethod(BindMethod.VALUE_OBJECT));
}

private static Bindable<Object> createBindTarget(Object bean, Class<?> beanType, Method factoryMethod) {
Expand Down Expand Up @@ -284,7 +279,7 @@ private static ConfigurationPropertiesBean create(String name, Object instance,
* @param type the source type
* @return the bind method to use
*/
static org.springframework.boot.context.properties.bind.BindMethod deduceBindMethod(Class<?> type) {
static BindMethod deduceBindMethod(Class<?> type) {
return deduceBindMethod(BindConstructorProvider.DEFAULT.getBindConstructor(type, false));
}

Expand All @@ -293,13 +288,12 @@ static org.springframework.boot.context.properties.bind.BindMethod deduceBindMet
* @param bindable the source bindable
* @return the bind method to use
*/
static org.springframework.boot.context.properties.bind.BindMethod deduceBindMethod(Bindable<Object> bindable) {
static BindMethod deduceBindMethod(Bindable<Object> bindable) {
return deduceBindMethod(BindConstructorProvider.DEFAULT.getBindConstructor(bindable, false));
}

private static org.springframework.boot.context.properties.bind.BindMethod deduceBindMethod(
Constructor<?> bindConstructor) {
return (bindConstructor != null) ? VALUE_OBJECT_BIND_METHOD : JAVA_BEAN_BIND_METHOD;
private static BindMethod deduceBindMethod(Constructor<?> bindConstructor) {
return (bindConstructor != null) ? BindMethod.VALUE_OBJECT : BindMethod.JAVA_BEAN;
}

}
Loading