GH-185: Add deliveryAttempts header with retry
Resolves: https://github.com/spring-projects/spring-integration-kafka/issues/185 When a `RetryTemplate` is wired into the message-driven adapter, add and increment an `AtomicInteger`-valued header. See https://jira.spring.io/browse/INT-4369 * Actualize Copyright in the affected classes
This commit is contained in:
committed by
Artem Bilan
parent
fb9dd91644
commit
29973e525d
@@ -1,5 +1,5 @@
|
||||
/*
|
||||
* Copyright 2016-2017 the original author or authors.
|
||||
* Copyright 2016-2018 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.
|
||||
@@ -39,6 +39,7 @@ import org.springframework.integration.handler.advice.ErrorMessageSendingRecover
|
||||
import org.springframework.integration.kafka.inbound.KafkaMessageDrivenChannelAdapter.ListenerMode;
|
||||
import org.springframework.integration.kafka.support.RawRecordHeaderErrorMessageStrategy;
|
||||
import org.springframework.integration.support.MessageBuilder;
|
||||
import org.springframework.integration.support.StaticMessageHeaderAccessor;
|
||||
import org.springframework.kafka.core.DefaultKafkaConsumerFactory;
|
||||
import org.springframework.kafka.core.DefaultKafkaProducerFactory;
|
||||
import org.springframework.kafka.core.KafkaTemplate;
|
||||
@@ -195,7 +196,7 @@ public class MessageDrivenAdapterTests {
|
||||
adapter.setOutputChannel(out);
|
||||
RetryTemplate retryTemplate = new RetryTemplate();
|
||||
SimpleRetryPolicy retryPolicy = new SimpleRetryPolicy();
|
||||
retryPolicy.setMaxAttempts(1);
|
||||
retryPolicy.setMaxAttempts(2);
|
||||
retryTemplate.setRetryPolicy(retryPolicy);
|
||||
QueueChannel errorChannel = new QueueChannel();
|
||||
adapter.setRecoveryCallback(
|
||||
@@ -222,6 +223,7 @@ public class MessageDrivenAdapterTests {
|
||||
assertThat(headers.get(KafkaHeaders.RECEIVED_TOPIC)).isEqualTo(topic4);
|
||||
assertThat(headers.get(KafkaHeaders.RECEIVED_PARTITION_ID)).isEqualTo(0);
|
||||
assertThat(headers.get(KafkaHeaders.OFFSET)).isEqualTo(0L);
|
||||
assertThat(StaticMessageHeaderAccessor.getDeliveryAttempt(received).get()).isEqualTo(2);
|
||||
|
||||
adapter.stop();
|
||||
}
|
||||
|
||||
Reference in New Issue
Block a user