[spring-extensions] 02/02: IDP-1376 Warn on all duplicate beans in customer syntax
Rod Widdowson
rdw at steadingsoftware.com
Tue Feb 2 13:48:25 UTC 2021
This is an automated email from the git hooks/post-receive script.
rdw pushed a commit to branch main
in repository spring-extensions.
View the commit online:
http://git.shibboleth.net/view/?p=spring-extensions.git;a=commit;h=291ab6b4a1b9214543f0287022e2c95e2be2ae29
commit 291ab6b4a1b9214543f0287022e2c95e2be2ae29
Author: Rod Widdowson <rdw at steadingsoftware.com>
AuthorDate: Tue Feb 2 13:33:52 2021 +0000
IDP-1376 Warn on all duplicate beans in customer syntax
https://issues.shibboleth.net/jira/browse/IDP-1376
---
.../util/AbstractCustomBeanDefinitionParser.java | 18 ++++++++++++++++++
1 file changed, 18 insertions(+)
diff --git a/src/main/java/net/shibboleth/ext/spring/util/AbstractCustomBeanDefinitionParser.java b/src/main/java/net/shibboleth/ext/spring/util/AbstractCustomBeanDefinitionParser.java
index e89f344..b428242 100644
--- a/src/main/java/net/shibboleth/ext/spring/util/AbstractCustomBeanDefinitionParser.java
+++ b/src/main/java/net/shibboleth/ext/spring/util/AbstractCustomBeanDefinitionParser.java
@@ -17,6 +17,10 @@
package net.shibboleth.ext.spring.util;
+import org.slf4j.Logger;
+import org.slf4j.LoggerFactory;
+import org.springframework.beans.factory.config.BeanDefinitionHolder;
+import org.springframework.beans.factory.support.BeanDefinitionRegistry;
import org.springframework.beans.factory.xml.AbstractSingleBeanDefinitionParser;
/**
@@ -27,4 +31,18 @@ import org.springframework.beans.factory.xml.AbstractSingleBeanDefinitionParser;
*/
public class AbstractCustomBeanDefinitionParser extends AbstractSingleBeanDefinitionParser {
+ /** Logger. */
+ private final Logger log = LoggerFactory.getLogger(AbstractCustomBeanDefinitionParser.class);
+
+ /** {@inheritDoc}
+ * The override is to warn if there is an ID clash within the same context.
+ * */
+ protected void registerBeanDefinition(final BeanDefinitionHolder definition,
+ final BeanDefinitionRegistry registry) {
+ if (registry.containsBeanDefinition(definition.getBeanName())) {
+ final String claz = definition.getBeanDefinition().getBeanClassName();
+ log.warn("Duplicate Definition '{}' of type '{}'", definition.getBeanName(), claz);
+ }
+ super.registerBeanDefinition(definition, registry);
+ }
}
--
To stop receiving notification emails like this one, please contact
the administrator of this repository.
More information about the commits
mailing list