Class JacksonProjectingMessageConverter
java.lang.Object
org.springframework.kafka.support.converter.MessagingMessageConverter
org.springframework.kafka.support.converter.JacksonProjectingMessageConverter
- All Implemented Interfaces:
MessageConverter
,RecordMessageConverter
A
MessageConverter
implementation based on Jackson3 uses a Spring Data
ProjectionFactory
to bind incoming messages to projection interfaces.- Since:
- 4.0
- Author:
- Oliver Gierke, Artem Bilan, Gary Russell, Soby Chacko
-
Field Summary
Fields inherited from class org.springframework.kafka.support.converter.MessagingMessageConverter
logger
-
Constructor Summary
ConstructorsConstructorDescriptionCreate a newJacksonProjectingMessageConverter
using aJacksonMapperUtils.enhancedJsonMapper()
by default.Create a newJacksonProjectingMessageConverter
using the givenJsonMapper
.JacksonProjectingMessageConverter
(tools.jackson.databind.json.JsonMapper mapper) Create a newJacksonProjectingMessageConverter
using the givenJsonMapper
.JacksonProjectingMessageConverter
(tools.jackson.databind.json.JsonMapper mapper, MessagingMessageConverter delegate) Create a newJacksonProjectingMessageConverter
using the givenJsonMapper
. -
Method Summary
Modifier and TypeMethodDescriptionprotected @Nullable Object
convertPayload
(Message<?> message) Subclasses can convert the payload; by default, it's sent unchanged to Kafka.protected Object
extractAndConvertValue
(org.apache.kafka.clients.consumer.ConsumerRecord<?, ?> record, @Nullable Type type) Subclasses can convert the value; by default, it's returned as provided by Kafka unless there is aSmartMessageConverter
that can convert it.Methods inherited from class org.springframework.kafka.support.converter.MessagingMessageConverter
fromMessage, getMessagingConverter, initialRecordHeaders, setGenerateMessageId, setGenerateTimestamp, setHeaderMapper, setMessagingConverter, setRawRecordHeader, toMessage
Methods inherited from class java.lang.Object
clone, equals, finalize, getClass, hashCode, notify, notifyAll, toString, wait, wait, wait
Methods inherited from interface org.springframework.kafka.support.converter.MessageConverter
commonHeaders
-
Constructor Details
-
JacksonProjectingMessageConverter
public JacksonProjectingMessageConverter()Create a newJacksonProjectingMessageConverter
using aJacksonMapperUtils.enhancedJsonMapper()
by default. -
JacksonProjectingMessageConverter
public JacksonProjectingMessageConverter(tools.jackson.databind.json.JsonMapper mapper) Create a newJacksonProjectingMessageConverter
using the givenJsonMapper
.- Parameters:
mapper
- must not be null.
-
JacksonProjectingMessageConverter
Create a newJacksonProjectingMessageConverter
using the givenJsonMapper
.- Parameters:
delegate
- the delegate converter for outbound and non-interfaces.
-
JacksonProjectingMessageConverter
public JacksonProjectingMessageConverter(tools.jackson.databind.json.JsonMapper mapper, MessagingMessageConverter delegate) Create a newJacksonProjectingMessageConverter
using the givenJsonMapper
.- Parameters:
mapper
- must not be null.delegate
- the delegate converter for outbound and non-interfaces.
-
-
Method Details
-
convertPayload
Description copied from class:MessagingMessageConverter
Subclasses can convert the payload; by default, it's sent unchanged to Kafka.- Overrides:
convertPayload
in classMessagingMessageConverter
- Parameters:
message
- the message.- Returns:
- the payload.
-
extractAndConvertValue
protected Object extractAndConvertValue(org.apache.kafka.clients.consumer.ConsumerRecord<?, ?> record, @Nullable Type type) Description copied from class:MessagingMessageConverter
Subclasses can convert the value; by default, it's returned as provided by Kafka unless there is aSmartMessageConverter
that can convert it.- Overrides:
extractAndConvertValue
in classMessagingMessageConverter
- Parameters:
record
- the record.type
- the required type.- Returns:
- the value.
-