Upgraded visibility on FunctionContextUtils.getParamTypesFromBeanDefinitionFactory

This commit is contained in:
Oleg Zhurakousky
2019-09-06 17:19:06 +02:00
parent 28b264692c
commit 6c722e59ec

View File

@@ -88,16 +88,7 @@ public abstract class FunctionContextUtils {
return param;
}
private static Type findBeanType(AbstractBeanDefinition definition, String declaringClassName, String methodName) {
Class<?> factory = ClassUtils.resolveClassName(declaringClassName, null);
Class<?>[] params = getParamTypes(factory, definition);
Method method = ReflectionUtils.findMethod(factory, methodName,
params);
Type type = method.getGenericReturnType();
return type;
}
private static Class<?>[] getParamTypes(Class<?> factory,
public static Class<?>[] getParamTypesFromBeanDefinitionFactory(Class<?> factory,
AbstractBeanDefinition definition) {
if (definition instanceof RootBeanDefinition) {
RootBeanDefinition root = (RootBeanDefinition) definition;
@@ -115,6 +106,15 @@ public abstract class FunctionContextUtils {
return params.toArray(new Class<?>[0]);
}
private static Type findBeanType(AbstractBeanDefinition definition, String declaringClassName, String methodName) {
Class<?> factory = ClassUtils.resolveClassName(declaringClassName, null);
Class<?>[] params = getParamTypesFromBeanDefinitionFactory(factory, definition);
Method method = ReflectionUtils.findMethod(factory, methodName,
params);
Type type = method.getGenericReturnType();
return type;
}
private static Method[] getCandidateMethods(final Class<?> factoryClass,
final RootBeanDefinition mbd) {
if (System.getSecurityManager() != null) {