Class IncomingKafkaRecord<K,T>
- java.lang.Object
-
- io.smallrye.reactive.messaging.kafka.IncomingKafkaRecord<K,T>
-
- All Implemented Interfaces:
KafkaRecord<K,T>
,Message<T>
public class IncomingKafkaRecord<K,T> extends Object implements KafkaRecord<K,T>
-
-
Constructor Summary
Constructors Constructor Description IncomingKafkaRecord(org.apache.kafka.clients.consumer.ConsumerRecord<K,T> record, KafkaCommitHandler commitHandler, KafkaFailureHandler onNack, boolean cloudEventEnabled, boolean tracingEnabled)
-
Method Summary
All Methods Instance Methods Concrete Methods Modifier and Type Method Description CompletionStage<Void>
ack()
Acknowledge this message.Supplier<CompletionStage<Void>>
getAck()
org.apache.kafka.common.header.Headers
getHeaders()
K
getKey()
Metadata
getMetadata()
Function<Throwable,CompletionStage<Void>>
getNack()
long
getOffset()
int
getPartition()
T
getPayload()
Instant
getTimestamp()
String
getTopic()
void
injectTracingMetadata(TracingMetadata tracingMetadata)
CompletionStage<Void>
nack(Throwable reason, Metadata metadata)
Acknowledge negatively this message.-
Methods inherited from class java.lang.Object
clone, equals, finalize, getClass, hashCode, notify, notifyAll, toString, wait, wait, wait
-
Methods inherited from interface org.eclipse.microprofile.reactive.messaging.Message
addMetadata, getMetadata, nack, unwrap, withAck, withMetadata, withMetadata, withNack, withPayload
-
-
-
-
Constructor Detail
-
IncomingKafkaRecord
public IncomingKafkaRecord(org.apache.kafka.clients.consumer.ConsumerRecord<K,T> record, KafkaCommitHandler commitHandler, KafkaFailureHandler onNack, boolean cloudEventEnabled, boolean tracingEnabled)
-
-
Method Detail
-
getPayload
public T getPayload()
- Specified by:
getPayload
in interfaceMessage<K>
- Returns:
- The payload for this message.
-
getKey
public K getKey()
- Specified by:
getKey
in interfaceKafkaRecord<K,T>
-
getTopic
public String getTopic()
- Specified by:
getTopic
in interfaceKafkaRecord<K,T>
-
getPartition
public int getPartition()
- Specified by:
getPartition
in interfaceKafkaRecord<K,T>
-
getTimestamp
public Instant getTimestamp()
- Specified by:
getTimestamp
in interfaceKafkaRecord<K,T>
-
getHeaders
public org.apache.kafka.common.header.Headers getHeaders()
- Specified by:
getHeaders
in interfaceKafkaRecord<K,T>
-
getOffset
public long getOffset()
-
getMetadata
public Metadata getMetadata()
- Specified by:
getMetadata
in interfaceMessage<K>
- Returns:
- The set of metadata attached to this message, potentially empty.
-
getAck
public Supplier<CompletionStage<Void>> getAck()
- Specified by:
getAck
in interfaceMessage<K>
- Returns:
- the supplier used to retrieve the acknowledgement
CompletionStage
.
-
getNack
public Function<Throwable,CompletionStage<Void>> getNack()
-
ack
public CompletionStage<Void> ack()
Description copied from interface:Message
Acknowledge this message.
-
nack
public CompletionStage<Void> nack(Throwable reason, Metadata metadata)
Description copied from interface:Message
Acknowledge negatively this message.nack
is used to indicate that the processing of a message failed. The reason is passed as parameter. Additional metadata may be provided that the connector can use when nacking the message. The interpretation of metadata is connector-specific.- Specified by:
nack
in interfaceMessage<K>
- Parameters:
reason
- the reason of the nack, must not benull
metadata
- additional nack metadata the connector may use, may benull
- Returns:
- a completion stage completed when the message is negative-acknowledgement has completed. If the negative acknowledgement fails, the completion stage propagates the failure.
-
injectTracingMetadata
public void injectTracingMetadata(TracingMetadata tracingMetadata)
-
-