From e991de8f16781ecefa48c5f52fbac8a0e5217a87 Mon Sep 17 00:00:00 2001 From: Soby Chacko Date: Tue, 1 Apr 2025 14:16:52 -0400 Subject: [PATCH] Add suppressions for this-escape warnings Signed-off-by: Soby Chacko --- .../kafka/config/MultiMethodKafkaListenerEndpoint.java | 1 + .../ContainerPartitionPausingBackOffManagerFactory.java | 1 + .../kafka/listener/DeadLetterPublishingRecoverer.java | 1 + .../kafka/listener/DefaultAfterRollbackProcessor.java | 1 + .../listener/adapter/MessagingMessageListenerAdapter.java | 1 + .../kafka/requestreply/ReplyingKafkaTemplate.java | 2 +- .../kafka/retrytopic/BackOffValuesGenerator.java | 1 + .../kafka/retrytopic/RetryTopicComponentFactory.java | 1 + .../kafka/retrytopic/RetryTopicConfigurationSupport.java | 1 + .../kafka/support/ExponentialBackOffWithMaxRetries.java | 4 +++- .../kafka/support/micrometer/KafkaRecordReceiverContext.java | 1 + .../kafka/support/micrometer/KafkaRecordSenderContext.java | 1 + .../kafka/transaction/KafkaTransactionManager.java | 1 + 13 files changed, 15 insertions(+), 2 deletions(-) diff --git a/spring-kafka/src/main/java/org/springframework/kafka/config/MultiMethodKafkaListenerEndpoint.java b/spring-kafka/src/main/java/org/springframework/kafka/config/MultiMethodKafkaListenerEndpoint.java index 392b0fd4..bd42d348 100644 --- a/spring-kafka/src/main/java/org/springframework/kafka/config/MultiMethodKafkaListenerEndpoint.java +++ b/spring-kafka/src/main/java/org/springframework/kafka/config/MultiMethodKafkaListenerEndpoint.java @@ -57,6 +57,7 @@ public class MultiMethodKafkaListenerEndpoint extends MethodKafkaListenerE * @param bean the bean. * @since 2.1.3 */ + @SuppressWarnings("this-escape") public MultiMethodKafkaListenerEndpoint(List methods, @Nullable Method defaultMethod, Object bean) { this.methods = methods; this.defaultMethod = defaultMethod; diff --git a/spring-kafka/src/main/java/org/springframework/kafka/listener/ContainerPartitionPausingBackOffManagerFactory.java b/spring-kafka/src/main/java/org/springframework/kafka/listener/ContainerPartitionPausingBackOffManagerFactory.java index b3c4d759..15e114b3 100644 --- a/spring-kafka/src/main/java/org/springframework/kafka/listener/ContainerPartitionPausingBackOffManagerFactory.java +++ b/spring-kafka/src/main/java/org/springframework/kafka/listener/ContainerPartitionPausingBackOffManagerFactory.java @@ -37,6 +37,7 @@ public class ContainerPartitionPausingBackOffManagerFactory extends AbstractKafk * @param listenerContainerRegistry the registry. * @param applicationContext the application context. */ + @SuppressWarnings("this-escape") public ContainerPartitionPausingBackOffManagerFactory(@Nullable ListenerContainerRegistry listenerContainerRegistry, ApplicationContext applicationContext) { diff --git a/spring-kafka/src/main/java/org/springframework/kafka/listener/DeadLetterPublishingRecoverer.java b/spring-kafka/src/main/java/org/springframework/kafka/listener/DeadLetterPublishingRecoverer.java index 72870491..5785679a 100644 --- a/spring-kafka/src/main/java/org/springframework/kafka/listener/DeadLetterPublishingRecoverer.java +++ b/spring-kafka/src/main/java/org/springframework/kafka/listener/DeadLetterPublishingRecoverer.java @@ -92,6 +92,7 @@ public class DeadLetterPublishingRecoverer extends ExceptionClassifier implement private final EnumSet whichHeaders = EnumSet.allOf(HeaderNames.HeadersToAdd.class); + @SuppressWarnings("this-escape") private @Nullable HeaderNames headerNames = getHeaderNames(); private boolean retainExceptionHeader; diff --git a/spring-kafka/src/main/java/org/springframework/kafka/listener/DefaultAfterRollbackProcessor.java b/spring-kafka/src/main/java/org/springframework/kafka/listener/DefaultAfterRollbackProcessor.java index a08a6987..39b4713f 100644 --- a/spring-kafka/src/main/java/org/springframework/kafka/listener/DefaultAfterRollbackProcessor.java +++ b/spring-kafka/src/main/java/org/springframework/kafka/listener/DefaultAfterRollbackProcessor.java @@ -142,6 +142,7 @@ public class DefaultAfterRollbackProcessor extends FailedRecordProcessor * {@link KafkaOperations}. * @since 2.9 */ + @SuppressWarnings("this-escape") public DefaultAfterRollbackProcessor(@Nullable BiConsumer, Exception> recoverer, BackOff backOff, @Nullable BackOffHandler backOffHandler, @Nullable KafkaOperations kafkaOperations, boolean commitRecovered) { diff --git a/spring-kafka/src/main/java/org/springframework/kafka/listener/adapter/MessagingMessageListenerAdapter.java b/spring-kafka/src/main/java/org/springframework/kafka/listener/adapter/MessagingMessageListenerAdapter.java index fa4d5f17..63771517 100644 --- a/spring-kafka/src/main/java/org/springframework/kafka/listener/adapter/MessagingMessageListenerAdapter.java +++ b/spring-kafka/src/main/java/org/springframework/kafka/listener/adapter/MessagingMessageListenerAdapter.java @@ -176,6 +176,7 @@ public abstract class MessagingMessageListenerAdapter implements ConsumerS * @param method the method. * @param errorHandler the kafka listener error handler. */ + @SuppressWarnings("this-escape") protected MessagingMessageListenerAdapter(Object bean, Method method, @Nullable KafkaListenerErrorHandler errorHandler) { this.bean = bean; this.inferredType = determineInferredType(method); // NOSONAR = intentionally not final diff --git a/spring-kafka/src/main/java/org/springframework/kafka/requestreply/ReplyingKafkaTemplate.java b/spring-kafka/src/main/java/org/springframework/kafka/requestreply/ReplyingKafkaTemplate.java index 127f0936..2d0df83f 100644 --- a/spring-kafka/src/main/java/org/springframework/kafka/requestreply/ReplyingKafkaTemplate.java +++ b/spring-kafka/src/main/java/org/springframework/kafka/requestreply/ReplyingKafkaTemplate.java @@ -131,7 +131,7 @@ public class ReplyingKafkaTemplate extends KafkaTemplate implemen this(producerFactory, replyContainer, false); } - @SuppressWarnings("NullAway") // Dataflow analysis limitation + @SuppressWarnings({"NullAway", "this-escape"}) // Dataflow analysis limitation public ReplyingKafkaTemplate(ProducerFactory producerFactory, GenericMessageListenerContainer replyContainer, boolean autoFlush) { diff --git a/spring-kafka/src/main/java/org/springframework/kafka/retrytopic/BackOffValuesGenerator.java b/spring-kafka/src/main/java/org/springframework/kafka/retrytopic/BackOffValuesGenerator.java index 2e6cbdd2..6958e373 100644 --- a/spring-kafka/src/main/java/org/springframework/kafka/retrytopic/BackOffValuesGenerator.java +++ b/spring-kafka/src/main/java/org/springframework/kafka/retrytopic/BackOffValuesGenerator.java @@ -52,6 +52,7 @@ public class BackOffValuesGenerator { private final BackOffPolicy backOffPolicy; + @SuppressWarnings("this-escape") public BackOffValuesGenerator(int providedMaxAttempts, @Nullable BackOffPolicy providedBackOffPolicy) { this.numberOfValuesToCreate = getMaxAttempts(providedMaxAttempts) - 1; BackOffPolicy policy = providedBackOffPolicy != null ? providedBackOffPolicy : DEFAULT_BACKOFF_POLICY; diff --git a/spring-kafka/src/main/java/org/springframework/kafka/retrytopic/RetryTopicComponentFactory.java b/spring-kafka/src/main/java/org/springframework/kafka/retrytopic/RetryTopicComponentFactory.java index 2a0238fe..fa56a211 100644 --- a/spring-kafka/src/main/java/org/springframework/kafka/retrytopic/RetryTopicComponentFactory.java +++ b/spring-kafka/src/main/java/org/springframework/kafka/retrytopic/RetryTopicComponentFactory.java @@ -44,6 +44,7 @@ import org.springframework.kafka.listener.adapter.KafkaBackoffAwareMessageListen */ public class RetryTopicComponentFactory { + @SuppressWarnings("this-escape") private final Clock internalRetryTopicClock = createInternalRetryTopicClock(); /** diff --git a/spring-kafka/src/main/java/org/springframework/kafka/retrytopic/RetryTopicConfigurationSupport.java b/spring-kafka/src/main/java/org/springframework/kafka/retrytopic/RetryTopicConfigurationSupport.java index c8374610..176426f6 100644 --- a/spring-kafka/src/main/java/org/springframework/kafka/retrytopic/RetryTopicConfigurationSupport.java +++ b/spring-kafka/src/main/java/org/springframework/kafka/retrytopic/RetryTopicConfigurationSupport.java @@ -75,6 +75,7 @@ import org.springframework.util.backoff.FixedBackOff; */ public class RetryTopicConfigurationSupport implements ApplicationContextAware, SmartInitializingSingleton { + @SuppressWarnings("this-escape") private final RetryTopicComponentFactory componentFactory = createComponentFactory(); private final LogAccessor logger = new LogAccessor(LogFactory.getLog(getClass())); diff --git a/spring-kafka/src/main/java/org/springframework/kafka/support/ExponentialBackOffWithMaxRetries.java b/spring-kafka/src/main/java/org/springframework/kafka/support/ExponentialBackOffWithMaxRetries.java index 1d949f8b..1bc9c06f 100644 --- a/spring-kafka/src/main/java/org/springframework/kafka/support/ExponentialBackOffWithMaxRetries.java +++ b/spring-kafka/src/main/java/org/springframework/kafka/support/ExponentialBackOffWithMaxRetries.java @@ -1,5 +1,5 @@ /* - * Copyright 2021 the original author or authors. + * Copyright 2021-2025 the original author or authors. * * Licensed under the Apache License, Version 2.0 (the "License"); * you may not use this file except in compliance with the License. @@ -35,6 +35,7 @@ public class ExponentialBackOffWithMaxRetries extends ExponentialBackOff { * the maxRetries. * @param maxRetries the max retries. */ + @SuppressWarnings("this-escape") public ExponentialBackOffWithMaxRetries(int maxRetries) { this.maxRetries = maxRetries; calculateMaxElapsed(); @@ -71,6 +72,7 @@ public class ExponentialBackOffWithMaxRetries extends ExponentialBackOff { throw new IllegalStateException("'maxElapsedTime' is calculated from the 'maxRetries' property"); } + @SuppressWarnings("this-escape") private void calculateMaxElapsed() { long maxInterval = getMaxInterval(); long maxElapsed = Math.min(getInitialInterval(), maxInterval); diff --git a/spring-kafka/src/main/java/org/springframework/kafka/support/micrometer/KafkaRecordReceiverContext.java b/spring-kafka/src/main/java/org/springframework/kafka/support/micrometer/KafkaRecordReceiverContext.java index d5fe9323..95420020 100644 --- a/spring-kafka/src/main/java/org/springframework/kafka/support/micrometer/KafkaRecordReceiverContext.java +++ b/spring-kafka/src/main/java/org/springframework/kafka/support/micrometer/KafkaRecordReceiverContext.java @@ -63,6 +63,7 @@ public class KafkaRecordReceiverContext extends ReceiverContext record, String listenerId, @Nullable String clientId, @Nullable String groupId, Supplier clusterId) { super((carrier, key) -> { diff --git a/spring-kafka/src/main/java/org/springframework/kafka/support/micrometer/KafkaRecordSenderContext.java b/spring-kafka/src/main/java/org/springframework/kafka/support/micrometer/KafkaRecordSenderContext.java index 50e9e310..37b79358 100644 --- a/spring-kafka/src/main/java/org/springframework/kafka/support/micrometer/KafkaRecordSenderContext.java +++ b/spring-kafka/src/main/java/org/springframework/kafka/support/micrometer/KafkaRecordSenderContext.java @@ -40,6 +40,7 @@ public class KafkaRecordSenderContext extends SenderContext private final ProducerRecord record; + @SuppressWarnings("this-escape") public KafkaRecordSenderContext(ProducerRecord record, String beanName, Supplier clusterId) { super((carrier, key, value) -> { Headers headers = record.headers(); diff --git a/spring-kafka/src/main/java/org/springframework/kafka/transaction/KafkaTransactionManager.java b/spring-kafka/src/main/java/org/springframework/kafka/transaction/KafkaTransactionManager.java index 7f0ad270..df762091 100644 --- a/spring-kafka/src/main/java/org/springframework/kafka/transaction/KafkaTransactionManager.java +++ b/spring-kafka/src/main/java/org/springframework/kafka/transaction/KafkaTransactionManager.java @@ -86,6 +86,7 @@ public class KafkaTransactionManager extends AbstractPlatformTransactionMa * one manager is allowed to drive synchronization at any point of time. * @param producerFactory the ProducerFactory to use */ + @SuppressWarnings("this-escape") public KafkaTransactionManager(ProducerFactory producerFactory) { Assert.notNull(producerFactory, "The 'ProducerFactory' cannot be null"); Assert.isTrue(producerFactory.transactionCapable(), "The 'ProducerFactory' must support transactions");