Polishing

This commit is contained in:
Juergen Hoeller 2016-07-20 18:06:31 +02:00
parent 0e3f0bd9d0
commit 725fb3219f
2 changed files with 11 additions and 10 deletions

View File

@ -1,5 +1,5 @@
/* /*
* Copyright 2002-2012 the original author or authors. * Copyright 2002-2016 the original author or authors.
* *
* Licensed under the Apache License, Version 2.0 (the "License"); * Licensed under the Apache License, Version 2.0 (the "License");
* you may not use this file except in compliance with the License. * you may not use this file except in compliance with the License.
@ -45,8 +45,8 @@ public class BeanNotOfRequiredTypeException extends BeansException {
* the expected type * the expected type
*/ */
public BeanNotOfRequiredTypeException(String beanName, Class<?> requiredType, Class<?> actualType) { public BeanNotOfRequiredTypeException(String beanName, Class<?> requiredType, Class<?> actualType) {
super("Bean named '" + beanName + "' must be of type [" + requiredType.getName() + super("Bean named '" + beanName + "' is expected to be of type [" + requiredType.getName() +
"], but was actually of type [" + actualType.getName() + "]"); "] but was actually of type [" + actualType.getName() + "]");
this.beanName = beanName; this.beanName = beanName;
this.requiredType = requiredType; this.requiredType = requiredType;
this.actualType = actualType; this.actualType = actualType;

View File

@ -609,8 +609,8 @@ class ConstructorResolver {
private int resolveConstructorArguments(String beanName, RootBeanDefinition mbd, BeanWrapper bw, private int resolveConstructorArguments(String beanName, RootBeanDefinition mbd, BeanWrapper bw,
ConstructorArgumentValues cargs, ConstructorArgumentValues resolvedValues) { ConstructorArgumentValues cargs, ConstructorArgumentValues resolvedValues) {
TypeConverter converter = (this.beanFactory.getCustomTypeConverter() != null ? TypeConverter customConverter = this.beanFactory.getCustomTypeConverter();
this.beanFactory.getCustomTypeConverter() : bw); TypeConverter converter = (customConverter != null ? customConverter : bw);
BeanDefinitionValueResolver valueResolver = BeanDefinitionValueResolver valueResolver =
new BeanDefinitionValueResolver(this.beanFactory, beanName, mbd, converter); new BeanDefinitionValueResolver(this.beanFactory, beanName, mbd, converter);
@ -665,8 +665,8 @@ class ConstructorResolver {
BeanWrapper bw, Class<?>[] paramTypes, String[] paramNames, Executable executable, BeanWrapper bw, Class<?>[] paramTypes, String[] paramNames, Executable executable,
boolean autowiring) throws UnsatisfiedDependencyException { boolean autowiring) throws UnsatisfiedDependencyException {
TypeConverter converter = (this.beanFactory.getCustomTypeConverter() != null ? TypeConverter customConverter = this.beanFactory.getCustomTypeConverter();
this.beanFactory.getCustomTypeConverter() : bw); TypeConverter converter = (customConverter != null ? customConverter : bw);
ArgumentsHolder args = new ArgumentsHolder(paramTypes.length); ArgumentsHolder args = new ArgumentsHolder(paramTypes.length);
Set<ConstructorArgumentValues.ValueHolder> usedValueHolders = Set<ConstructorArgumentValues.ValueHolder> usedValueHolders =
@ -769,11 +769,12 @@ class ConstructorResolver {
private Object[] resolvePreparedArguments( private Object[] resolvePreparedArguments(
String beanName, RootBeanDefinition mbd, BeanWrapper bw, Executable executable, Object[] argsToResolve) { String beanName, RootBeanDefinition mbd, BeanWrapper bw, Executable executable, Object[] argsToResolve) {
Class<?>[] paramTypes = executable.getParameterTypes(); TypeConverter customConverter = this.beanFactory.getCustomTypeConverter();
TypeConverter converter = (this.beanFactory.getCustomTypeConverter() != null ? TypeConverter converter = (customConverter != null ? customConverter : bw);
this.beanFactory.getCustomTypeConverter() : bw);
BeanDefinitionValueResolver valueResolver = BeanDefinitionValueResolver valueResolver =
new BeanDefinitionValueResolver(this.beanFactory, beanName, mbd, converter); new BeanDefinitionValueResolver(this.beanFactory, beanName, mbd, converter);
Class<?>[] paramTypes = executable.getParameterTypes();
Object[] resolvedArgs = new Object[argsToResolve.length]; Object[] resolvedArgs = new Object[argsToResolve.length];
for (int argIndex = 0; argIndex < argsToResolve.length; argIndex++) { for (int argIndex = 0; argIndex < argsToResolve.length; argIndex++) {
Object argValue = argsToResolve[argIndex]; Object argValue = argsToResolve[argIndex];