Class JacksonConverterAutoConfiguration
java.lang.Object
org.axonframework.extension.springboot.autoconfig.JacksonConverterAutoConfiguration
- All Implemented Interfaces:
org.springframework.beans.factory.Aware,org.springframework.beans.factory.BeanClassLoaderAware
@AutoConfiguration
@AutoConfigureBefore({AxonAutoConfiguration.class,ConverterAutoConfiguration.class,Jackson2ConverterAutoConfiguration.class})
@AutoConfigureAfter(name={"org.springframework.boot.autoconfigure.jackson.JacksonAutoConfiguration","org.springframework.boot.jackson.autoconfigure.JacksonAutoConfiguration"})
@ConditionalOnClass(name="tools.jackson.databind.ObjectMapper")
@EnableConfigurationProperties(ConverterProperties.class)
public class JacksonConverterAutoConfiguration
extends Object
implements org.springframework.beans.factory.BeanClassLoaderAware
Autoconfigures the
JacksonConverter if configured via the ConverterProperties.- Since:
- 5.1.0
- Author:
- Jakob Hatzl
-
Constructor Summary
Constructors -
Method Summary
Modifier and TypeMethodDescriptionconverter(tools.jackson.databind.ObjectMapper objectMapper) Bean creation method constructing aJacksonConverteras theGeneralConverterto be used by Axon Framework.delegatingEventConverter(MessageConverter messageConverter) Bean creation method constructing anEventConverterdelegating to theMessageConverterin case both usejackson.delegatingMessageConverter(GeneralConverter generalConverter) Bean creation method constructing aMessageConverterdelegating to theGeneralConverterin case both usejackson/default.eventConverter(tools.jackson.databind.ObjectMapper objectMapper) Bean creation method constructing aJacksonConverteras theEventConverterto be used by Axon Framework.messageConverter(tools.jackson.databind.ObjectMapper objectMapper) Bean creation method constructing aJacksonConverteras theMessageConverterto be used by Axon Framework.voidsetBeanClassLoader(ClassLoader classLoader) Sets the class loader used by theChainingContentTypeConverterto loadContentTypeConverters.
-
Constructor Details
-
JacksonConverterAutoConfiguration
public JacksonConverterAutoConfiguration()
-
-
Method Details
-
converter
@Bean @Primary @ConditionalOnMissingBean(ignored={MessageConverter.class,EventConverter.class}) @ConditionalOnExpression("\'${axon.converter.general}\' == \'jackson\' || \'${axon.converter.general:default}\' == \'default\'") public GeneralConverter converter(tools.jackson.databind.ObjectMapper objectMapper) Bean creation method constructing aJacksonConverteras theGeneralConverterto be used by Axon Framework.This bean acts as fallback and gets created in case
axon.converter.generalis not set or set todefault.- Parameters:
objectMapper- theObjectMapperto be used- Returns:
- the
GeneralConverterto be used by Axon Framework
-
delegatingMessageConverter
@Bean(name="messageConverter") @ConditionalOnMissingBean @ConditionalOnExpression("\'${axon.converter.messages}\' == \'jackson\'\n&& (\'${axon.converter.general}\' == \'jackson\' || \'${axon.converter.general:default}\' == \'default\')\n") public MessageConverter delegatingMessageConverter(GeneralConverter generalConverter) Bean creation method constructing aMessageConverterdelegating to theGeneralConverterin case both usejackson/default.- Parameters:
generalConverter- theGeneralConverter, used to construct theMessageConverterin case both usejackson/default- Returns:
- the
MessageConverterto be used by Axon Framework
-
messageConverter
@Bean @ConditionalOnMissingBean @ConditionalOnExpression("\'${axon.converter.messages}\' == \'jackson\'\n&& !(\'${axon.converter.general}\' == \'jackson\' || \'${axon.converter.general:default}\' == \'default\')\n") public MessageConverter messageConverter(tools.jackson.databind.ObjectMapper objectMapper) Bean creation method constructing aJacksonConverteras theMessageConverterto be used by Axon Framework.- Parameters:
objectMapper- theObjectMapperto be used- Returns:
- the
MessageConverterto be used by Axon Framework
-
delegatingEventConverter
@Bean(name="eventConverter") @ConditionalOnMissingBean @ConditionalOnExpression("\'${axon.converter.events}\' == \'jackson\' && \'${axon.converter.messages}\' == \'jackson\'") public EventConverter delegatingEventConverter(MessageConverter messageConverter) Bean creation method constructing anEventConverterdelegating to theMessageConverterin case both usejackson.- Parameters:
messageConverter- theMessageConverter, used to construct theEventConverterin case both usejackson- Returns:
- the
EventConverterto be used by Axon Framework
-
eventConverter
@Bean @ConditionalOnMissingBean @ConditionalOnExpression("\'${axon.converter.events}\' == \'jackson\' && \'${axon.converter.messages}\' != \'jackson\'") public EventConverter eventConverter(tools.jackson.databind.ObjectMapper objectMapper) Bean creation method constructing aJacksonConverteras theEventConverterto be used by Axon Framework.- Parameters:
objectMapper- theObjectMapperto be used- Returns:
- the
EventConverterto be used by Axon Framework
-
setBeanClassLoader
Sets the class loader used by theChainingContentTypeConverterto loadContentTypeConverters.- Specified by:
setBeanClassLoaderin interfaceorg.springframework.beans.factory.BeanClassLoaderAware- Parameters:
classLoader- the class loader used by theChainingContentTypeConverterto loadContentTypeConverters
-