Interface RecordInterceptor<K,V>
- Type Parameters:
K
- the key type.V
- the value type.
- All Superinterfaces:
ThreadStateProcessor
- All Known Subinterfaces:
ConsumerAwareRecordInterceptor<K,
V>
- All Known Implementing Classes:
CompositeRecordInterceptor
- Functional Interface:
- This is a functional interface and can therefore be used as the assignment target for a lambda expression or method reference.
An interceptor for
ConsumerRecord
invoked by the listener
container before and after invoking the listener.- Since:
- 2.2.7
- Author:
- Gary Russell
-
Method Summary
Modifier and TypeMethodDescriptiondefault void
afterRecord
(org.apache.kafka.clients.consumer.ConsumerRecord<K, V> record, org.apache.kafka.clients.consumer.Consumer<K, V> consumer) Called when processing the record is complete eithersuccess(ConsumerRecord, Consumer)
orfailure(ConsumerRecord, Exception, Consumer)
.default void
failure
(org.apache.kafka.clients.consumer.ConsumerRecord<K, V> record, Exception exception, org.apache.kafka.clients.consumer.Consumer<K, V> consumer) Called after the listener throws an exception.intercept
(org.apache.kafka.clients.consumer.ConsumerRecord<K, V> record, org.apache.kafka.clients.consumer.Consumer<K, V> consumer) Perform some action on the record or return a different one.default void
success
(org.apache.kafka.clients.consumer.ConsumerRecord<K, V> record, org.apache.kafka.clients.consumer.Consumer<K, V> consumer) Called after the listener exits normally.Methods inherited from interface org.springframework.kafka.listener.ThreadStateProcessor
clearThreadState, setupThreadState
-
Method Details
-
intercept
@Nullable org.apache.kafka.clients.consumer.ConsumerRecord<K,V> intercept(org.apache.kafka.clients.consumer.ConsumerRecord<K, V> record, org.apache.kafka.clients.consumer.Consumer<K, V> consumer) Perform some action on the record or return a different one. If null is returned the record will be skipped. Invoked before the listener.- Parameters:
record
- the record.consumer
- the consumer.- Returns:
- the record or null.
- Since:
- 2.7
-
success
default void success(org.apache.kafka.clients.consumer.ConsumerRecord<K, V> record, org.apache.kafka.clients.consumer.Consumer<K, V> consumer) Called after the listener exits normally.- Parameters:
record
- the record.consumer
- the consumer.- Since:
- 2.7
-
failure
default void failure(org.apache.kafka.clients.consumer.ConsumerRecord<K, V> record, Exception exception, org.apache.kafka.clients.consumer.Consumer<K, V> consumer) Called after the listener throws an exception.- Parameters:
record
- the record.exception
- the exception.consumer
- the consumer.- Since:
- 2.7
-
afterRecord
default void afterRecord(org.apache.kafka.clients.consumer.ConsumerRecord<K, V> record, org.apache.kafka.clients.consumer.Consumer<K, V> consumer) Called when processing the record is complete eithersuccess(ConsumerRecord, Consumer)
orfailure(ConsumerRecord, Exception, Consumer)
.- Parameters:
record
- the record.consumer
- the consumer.- Since:
- 2.8
-