mirror of
https://github.com/spring-projects/spring-framework.git
synced 2026-09-23 06:29:10 +00:00
Only add httpServiceProxyRegistry bean when necessary
Update `AbstractHttpServiceRegistrar` so that the `httpServiceProxyRegistry` bean is only added when registrations are found.
This commit is contained in:
committed by
rstoyanchev
parent
fbe96a8112
commit
169b7015d2
+14
-12
@@ -147,20 +147,22 @@ public abstract class AbstractHttpServiceRegistrar implements
|
||||
|
||||
registerHttpServices(new DefaultGroupRegistry(), metadata);
|
||||
|
||||
RootBeanDefinition proxyRegistryBeanDef = createOrGetRegistry(beanRegistry);
|
||||
if (this.groupsMetadata.hasRegistrations()) {
|
||||
RootBeanDefinition proxyRegistryBeanDef = createOrGetRegistry(beanRegistry);
|
||||
|
||||
mergeGroups(proxyRegistryBeanDef);
|
||||
mergeGroups(proxyRegistryBeanDef);
|
||||
|
||||
this.groupsMetadata.forEachRegistration((groupName, types) -> types.forEach(type -> {
|
||||
RootBeanDefinition proxyBeanDef = new RootBeanDefinition();
|
||||
proxyBeanDef.setBeanClassName(type);
|
||||
proxyBeanDef.setAttribute(HTTP_SERVICE_GROUP_NAME_ATTRIBUTE, groupName);
|
||||
proxyBeanDef.setInstanceSupplier(() -> getProxyInstance(groupName, type));
|
||||
String beanName = (groupName + "#" + type);
|
||||
if (!beanRegistry.containsBeanDefinition(beanName)) {
|
||||
beanRegistry.registerBeanDefinition(beanName, proxyBeanDef);
|
||||
}
|
||||
}));
|
||||
this.groupsMetadata.forEachRegistration((groupName, types) -> types.forEach(type -> {
|
||||
RootBeanDefinition proxyBeanDef = new RootBeanDefinition();
|
||||
proxyBeanDef.setBeanClassName(type);
|
||||
proxyBeanDef.setAttribute(HTTP_SERVICE_GROUP_NAME_ATTRIBUTE, groupName);
|
||||
proxyBeanDef.setInstanceSupplier(() -> getProxyInstance(groupName, type));
|
||||
String beanName = (groupName + "#" + type);
|
||||
if (!beanRegistry.containsBeanDefinition(beanName)) {
|
||||
beanRegistry.registerBeanDefinition(beanName, proxyBeanDef);
|
||||
}
|
||||
}));
|
||||
}
|
||||
}
|
||||
|
||||
/**
|
||||
|
||||
@@ -97,6 +97,13 @@ final class GroupsMetadata {
|
||||
return this.groupMap.values().stream();
|
||||
}
|
||||
|
||||
/**
|
||||
* Return if there are any {@link Registration registrations}.
|
||||
*/
|
||||
boolean hasRegistrations() {
|
||||
return !this.groupMap.isEmpty();
|
||||
}
|
||||
|
||||
|
||||
/**
|
||||
* Registration metadata for an {@link HttpServiceGroup}.
|
||||
|
||||
Reference in New Issue
Block a user