mirror of
https://github.com/spring-projects/spring-framework
synced 2026-06-08 17:33:33 +00:00
Consistently use DefaultParameterNameDiscoverer.getSharedInstance()
This includes MethodParameter resolving getParameterName() by default now. initParameterNameDiscovery(null) can be used to suppress such resolution. Closes gh-36024
This commit is contained in:
+4
-1
@@ -39,21 +39,24 @@ class CacheEvaluationContextFactory {
|
||||
|
||||
private @Nullable Supplier<ParameterNameDiscoverer> parameterNameDiscoverer;
|
||||
|
||||
|
||||
CacheEvaluationContextFactory(StandardEvaluationContext originalContext) {
|
||||
this.originalContext = originalContext;
|
||||
}
|
||||
|
||||
|
||||
public void setParameterNameDiscoverer(Supplier<ParameterNameDiscoverer> parameterNameDiscoverer) {
|
||||
this.parameterNameDiscoverer = parameterNameDiscoverer;
|
||||
}
|
||||
|
||||
public ParameterNameDiscoverer getParameterNameDiscoverer() {
|
||||
if (this.parameterNameDiscoverer == null) {
|
||||
this.parameterNameDiscoverer = SingletonSupplier.of(new DefaultParameterNameDiscoverer());
|
||||
this.parameterNameDiscoverer = SingletonSupplier.of(DefaultParameterNameDiscoverer.getSharedInstance());
|
||||
}
|
||||
return this.parameterNameDiscoverer.get();
|
||||
}
|
||||
|
||||
|
||||
/**
|
||||
* Creates a {@link CacheEvaluationContext} for the specified operation.
|
||||
* @param rootObject the {@code root} object to use for the context
|
||||
|
||||
+1
-3
@@ -38,8 +38,6 @@ public abstract class CachedExpressionEvaluator {
|
||||
|
||||
private final SpelExpressionParser parser;
|
||||
|
||||
private final ParameterNameDiscoverer parameterNameDiscoverer = new DefaultParameterNameDiscoverer();
|
||||
|
||||
|
||||
/**
|
||||
* Create a new instance with the default {@link SpelExpressionParser}.
|
||||
@@ -69,7 +67,7 @@ public abstract class CachedExpressionEvaluator {
|
||||
* @since 4.3
|
||||
*/
|
||||
protected ParameterNameDiscoverer getParameterNameDiscoverer() {
|
||||
return this.parameterNameDiscoverer;
|
||||
return DefaultParameterNameDiscoverer.getSharedInstance();
|
||||
}
|
||||
|
||||
/**
|
||||
|
||||
+4
-3
@@ -183,7 +183,8 @@ public abstract class AbstractReflectiveMBeanInfoAssembler extends AbstractMBean
|
||||
|
||||
private boolean exposeClassDescriptor = false;
|
||||
|
||||
private @Nullable ParameterNameDiscoverer parameterNameDiscoverer = new DefaultParameterNameDiscoverer();
|
||||
private @Nullable ParameterNameDiscoverer parameterNameDiscoverer =
|
||||
DefaultParameterNameDiscoverer.getSharedInstance();
|
||||
|
||||
|
||||
/**
|
||||
@@ -507,8 +508,8 @@ public abstract class AbstractReflectiveMBeanInfoAssembler extends AbstractMBean
|
||||
* @return the {@code MBeanParameterInfo} array
|
||||
*/
|
||||
protected MBeanParameterInfo[] getOperationParameters(Method method, String beanKey) {
|
||||
ParameterNameDiscoverer paramNameDiscoverer = getParameterNameDiscoverer();
|
||||
@Nullable String[] paramNames = (paramNameDiscoverer != null ? paramNameDiscoverer.getParameterNames(method) : null);
|
||||
ParameterNameDiscoverer pnd = getParameterNameDiscoverer();
|
||||
@Nullable String[] paramNames = (pnd != null ? pnd.getParameterNames(method) : null);
|
||||
if (paramNames == null) {
|
||||
return new MBeanParameterInfo[0];
|
||||
}
|
||||
|
||||
+1
-1
@@ -87,7 +87,7 @@ public class MethodValidationAdapter implements MethodValidator {
|
||||
|
||||
private MessageCodesResolver messageCodesResolver = new DefaultMessageCodesResolver();
|
||||
|
||||
private ParameterNameDiscoverer parameterNameDiscoverer = new DefaultParameterNameDiscoverer();
|
||||
private ParameterNameDiscoverer parameterNameDiscoverer = DefaultParameterNameDiscoverer.getSharedInstance();
|
||||
|
||||
private ObjectNameResolver objectNameResolver = defaultObjectNameResolver;
|
||||
|
||||
|
||||
Reference in New Issue
Block a user