From 0aac4c0a86045554bf965bf64085dbbcc21f2406 Mon Sep 17 00:00:00 2001 From: Artem Bilan Date: Wed, 10 Nov 2021 14:55:48 -0500 Subject: [PATCH] Fix new Sonar smells --- .../springframework/integration/JavaUtils.java | 5 +++-- ...AbstractSimpleMessageHandlerFactoryBean.java | 17 ++++++++--------- ...aultConfiguringBeanFactoryPostProcessor.java | 6 +----- .../AnnotationGatewayProxyFactoryBean.java | 5 +---- .../gateway/GatewayProxyFactoryBean.java | 6 +++--- .../MicrometerMetricsCaptorConfiguration.java | 5 +---- 6 files changed, 17 insertions(+), 27 deletions(-) diff --git a/spring-integration-core/src/main/java/org/springframework/integration/JavaUtils.java b/spring-integration-core/src/main/java/org/springframework/integration/JavaUtils.java index aedfcb6e9d..3d8cbe5e6d 100644 --- a/spring-integration-core/src/main/java/org/springframework/integration/JavaUtils.java +++ b/spring-integration-core/src/main/java/org/springframework/integration/JavaUtils.java @@ -20,6 +20,7 @@ import java.util.List; import java.util.function.BiConsumer; import java.util.function.Consumer; +import org.springframework.lang.Nullable; import org.springframework.util.CollectionUtils; import org.springframework.util.ObjectUtils; import org.springframework.util.StringUtils; @@ -51,7 +52,7 @@ public final class JavaUtils { * @param the value type. * @return this. */ - public JavaUtils acceptIfCondition(boolean condition, T value, Consumer consumer) { + public JavaUtils acceptIfCondition(boolean condition, @Nullable T value, Consumer consumer) { if (condition) { consumer.accept(value); } @@ -65,7 +66,7 @@ public final class JavaUtils { * @param the value type. * @return this. */ - public JavaUtils acceptIfNotNull(T value, Consumer consumer) { + public JavaUtils acceptIfNotNull(@Nullable T value, Consumer consumer) { if (value != null) { consumer.accept(value); } diff --git a/spring-integration-core/src/main/java/org/springframework/integration/config/AbstractSimpleMessageHandlerFactoryBean.java b/spring-integration-core/src/main/java/org/springframework/integration/config/AbstractSimpleMessageHandlerFactoryBean.java index c6cff07d10..9a4eb90a92 100644 --- a/spring-integration-core/src/main/java/org/springframework/integration/config/AbstractSimpleMessageHandlerFactoryBean.java +++ b/spring-integration-core/src/main/java/org/springframework/integration/config/AbstractSimpleMessageHandlerFactoryBean.java @@ -201,17 +201,16 @@ public abstract class AbstractSimpleMessageHandlerFactoryBean ((ApplicationContextAware) this.handler).setApplicationContext(this.applicationContext)) + ((ApplicationContextAware) this.handler)::setApplicationContext) .acceptIfCondition(this.handler instanceof BeanFactoryAware && getBeanFactory() != null, getBeanFactory(), - factory -> ((BeanFactoryAware) this.handler).setBeanFactory(factory)) + ((BeanFactoryAware) this.handler)::setBeanFactory) .acceptIfCondition(this.handler instanceof BeanNameAware && this.beanName != null, this.beanName, - name -> ((BeanNameAware) this.handler).setBeanName(this.beanName)) + ((BeanNameAware) this.handler)::setBeanName) .acceptIfCondition(this.handler instanceof ApplicationEventPublisherAware && this.applicationEventPublisher != null, this.applicationEventPublisher, - publisher -> ((ApplicationEventPublisherAware) this.handler) - .setApplicationEventPublisher(publisher)); + ((ApplicationEventPublisherAware) this.handler)::setApplicationEventPublisher); configureOutputChannelIfAny(); Object actualHandler = extractTarget(this.handler); if (actualHandler == null) { @@ -223,9 +222,9 @@ public abstract class AbstractSimpleMessageHandlerFactoryBean ((AbstractMessageProducingHandler) handlerToConfigure).setAsync(asyncValue)) + ((AbstractMessageProducingHandler) handlerToConfigure)::setAsync) .acceptIfCondition(this.handler instanceof Orderable && this.order != null, - this.order, theOrder -> ((Orderable) this.handler).setOrder(theOrder)); + this.order, ((Orderable) this.handler)::setOrder); this.initialized = true; } initializingBean(); @@ -236,9 +235,9 @@ public abstract class AbstractSimpleMessageHandlerFactoryBean ((IntegrationObjectSupport) handlerToConfigure).setComponentName(name)) + ((IntegrationObjectSupport) handlerToConfigure)::setComponentName) .acceptIfNotNull(this.channelResolver, - resolver -> ((IntegrationObjectSupport) handlerToConfigure).setChannelResolver(resolver)); + ((IntegrationObjectSupport) handlerToConfigure)::setChannelResolver); } } diff --git a/spring-integration-core/src/main/java/org/springframework/integration/config/DefaultConfiguringBeanFactoryPostProcessor.java b/spring-integration-core/src/main/java/org/springframework/integration/config/DefaultConfiguringBeanFactoryPostProcessor.java index ff0335a658..c417a80f34 100644 --- a/spring-integration-core/src/main/java/org/springframework/integration/config/DefaultConfiguringBeanFactoryPostProcessor.java +++ b/spring-integration-core/src/main/java/org/springframework/integration/config/DefaultConfiguringBeanFactoryPostProcessor.java @@ -28,7 +28,6 @@ import org.springframework.beans.factory.BeanFactory; import org.springframework.beans.factory.HierarchicalBeanFactory; import org.springframework.beans.factory.SmartInitializingSingleton; import org.springframework.beans.factory.config.BeanDefinition; -import org.springframework.beans.factory.config.BeanFactoryPostProcessor; import org.springframework.beans.factory.config.ConfigurableListableBeanFactory; import org.springframework.beans.factory.config.PropertiesFactoryBean; import org.springframework.beans.factory.parsing.BeanComponentDefinition; @@ -38,8 +37,6 @@ import org.springframework.beans.factory.support.BeanDefinitionRegistry; import org.springframework.beans.factory.support.BeanDefinitionRegistryPostProcessor; import org.springframework.beans.factory.support.ManagedList; import org.springframework.beans.factory.support.RootBeanDefinition; -import org.springframework.core.io.support.PathMatchingResourcePatternResolver; -import org.springframework.core.io.support.ResourcePatternResolver; import org.springframework.core.log.LogAccessor; import org.springframework.integration.channel.ChannelUtils; import org.springframework.integration.channel.DefaultHeaderChannelRegistry; @@ -69,7 +66,7 @@ import org.springframework.scheduling.concurrent.ThreadPoolTaskScheduler; import org.springframework.util.ClassUtils; /** - * A {@link BeanFactoryPostProcessor} implementation that registers bean definitions + * A {@link BeanDefinitionRegistryPostProcessor} implementation that registers bean definitions * for many infrastructure components with their default configurations. * All of them can be overridden using particular bean names. * @@ -330,7 +327,6 @@ public class DefaultConfiguringBeanFactoryPostProcessor */ private void registerIntegrationProperties() { if (!this.beanFactory.containsBean(IntegrationContextUtils.INTEGRATION_GLOBAL_PROPERTIES_BEAN_NAME)) { - ResourcePatternResolver resourceResolver = new PathMatchingResourcePatternResolver(this.classLoader); // TODO Revise in favor of 'IntegrationProperties' instance in the next 6.0 version BeanDefinitionBuilder integrationPropertiesBuilder = BeanDefinitionBuilder.genericBeanDefinition(PropertiesFactoryBean.class, diff --git a/spring-integration-core/src/main/java/org/springframework/integration/gateway/AnnotationGatewayProxyFactoryBean.java b/spring-integration-core/src/main/java/org/springframework/integration/gateway/AnnotationGatewayProxyFactoryBean.java index 1e18b40934..28ca0b3f8a 100644 --- a/spring-integration-core/src/main/java/org/springframework/integration/gateway/AnnotationGatewayProxyFactoryBean.java +++ b/spring-integration-core/src/main/java/org/springframework/integration/gateway/AnnotationGatewayProxyFactoryBean.java @@ -95,10 +95,7 @@ public class AnnotationGatewayProxyFactoryBean extends GatewayProxyFactoryBean { populateAsyncExecutorIfAny(); - boolean proxyDefaultMethods = this.gatewayAttributes.getBoolean("proxyDefaultMethods"); - if (proxyDefaultMethods) { - setProxyDefaultMethods(proxyDefaultMethods); - } + setProxyDefaultMethods(this.gatewayAttributes.getBoolean("proxyDefaultMethods")); super.onInit(); } diff --git a/spring-integration-core/src/main/java/org/springframework/integration/gateway/GatewayProxyFactoryBean.java b/spring-integration-core/src/main/java/org/springframework/integration/gateway/GatewayProxyFactoryBean.java index 2f45691ab2..2efdaeae94 100644 --- a/spring-integration-core/src/main/java/org/springframework/integration/gateway/GatewayProxyFactoryBean.java +++ b/spring-integration-core/src/main/java/org/springframework/integration/gateway/GatewayProxyFactoryBean.java @@ -113,7 +113,7 @@ public class GatewayProxyFactoryBean extends AbstractEndpoint private final Class serviceInterface; - private final Set hasPayloadExpression = new HashSet<>(); + private final Set havePayloadExpressions = new HashSet<>(); private MessageChannel defaultRequestChannel; @@ -601,7 +601,7 @@ public class GatewayProxyFactoryBean extends AbstractEndpoint } private boolean findPayloadExpression(Method method) { - return method.isAnnotationPresent(Payload.class) || this.hasPayloadExpression.contains(method); + return method.isAnnotationPresent(Payload.class) || this.havePayloadExpressions.contains(method); } @Nullable @@ -688,7 +688,7 @@ public class GatewayProxyFactoryBean extends AbstractEndpoint Expression payloadExpression = extractPayloadExpressionFromAnnotationOrMetadata(gatewayAnnotation, methodMetadata); if (payloadExpression != null) { - this.hasPayloadExpression.add(method); + this.havePayloadExpressions.add(method); } String requestChannelName = extractRequestChannelFromAnnotationOrMetadata(gatewayAnnotation, methodMetadata); String replyChannelName = extractReplyChannelFromAnnotationOrMetadata(gatewayAnnotation, methodMetadata); diff --git a/spring-integration-core/src/main/java/org/springframework/integration/support/management/micrometer/MicrometerMetricsCaptorConfiguration.java b/spring-integration-core/src/main/java/org/springframework/integration/support/management/micrometer/MicrometerMetricsCaptorConfiguration.java index 79aff90d55..292d4e6076 100644 --- a/spring-integration-core/src/main/java/org/springframework/integration/support/management/micrometer/MicrometerMetricsCaptorConfiguration.java +++ b/spring-integration-core/src/main/java/org/springframework/integration/support/management/micrometer/MicrometerMetricsCaptorConfiguration.java @@ -20,16 +20,13 @@ import org.springframework.beans.factory.ObjectProvider; import org.springframework.beans.factory.config.BeanDefinition; import org.springframework.context.annotation.Bean; import org.springframework.context.annotation.Configuration; -import org.springframework.context.annotation.ImportBeanDefinitionRegistrar; import org.springframework.context.annotation.Role; import org.springframework.util.ClassUtils; import io.micrometer.core.instrument.MeterRegistry; /** - * An {@link ImportBeanDefinitionRegistrar} to conditionally add a {@link MicrometerMetricsCaptor} - * bean when {@code io.micrometer.core.instrument.MeterRegistry} is present in classpath and - * no {@link MicrometerMetricsCaptor#MICROMETER_CAPTOR_NAME} bean present yet. + * A {@link Configuration} to add a {@link MicrometerMetricsCaptor}. * * @author Artem Bilan *