Package io.outbox.spring.boot
Class OutboxAutoConfiguration
java.lang.Object
io.outbox.spring.boot.OutboxAutoConfiguration
@AutoConfiguration(after=org.springframework.boot.autoconfigure.jdbc.DataSourceAutoConfiguration.class)
@ConditionalOnClass(Outbox.class)
@ConditionalOnBean(javax.sql.DataSource.class)
@EnableConfigurationProperties(OutboxProperties.class)
public class OutboxAutoConfiguration
extends Object
Auto-configuration for the outbox framework.
Wires up an Outbox composite from a DataSource and
OutboxProperties. Supports single-node, multi-node, ordered,
and writer-only modes.
-
Constructor Summary
Constructors -
Method Summary
Modifier and TypeMethodDescriptionconnectionProvider(DataSource dataSource) jacksonJsonCodec(com.fasterxml.jackson.databind.ObjectMapper objectMapper) outbox(OutboxProperties props, ConnectionProvider connectionProvider, TxContext txContext, AbstractJdbcOutboxStore outboxStore, DefaultListenerRegistry listenerRegistry, org.springframework.beans.factory.ObjectProvider<MetricsExporter> metricsProvider, org.springframework.beans.factory.ObjectProvider<EventInterceptor> interceptorProvider) outboxLifecycle(Outbox outbox) outboxListenerRegistrar(org.springframework.beans.factory.ListableBeanFactory beanFactory, DefaultListenerRegistry listenerRegistry) outboxStore(DataSource dataSource, OutboxProperties props) outboxWriter(Outbox outbox) txContext(DataSource dataSource)
-
Constructor Details
-
OutboxAutoConfiguration
public OutboxAutoConfiguration()
-
-
Method Details
-
jacksonJsonCodec
@Bean @ConditionalOnMissingBean(JsonCodec.class) @ConditionalOnBean(com.fasterxml.jackson.databind.ObjectMapper.class) public JacksonJsonCodec jacksonJsonCodec(com.fasterxml.jackson.databind.ObjectMapper objectMapper) -
outboxStore
@Bean @ConditionalOnMissingBean public AbstractJdbcOutboxStore outboxStore(DataSource dataSource, OutboxProperties props) -
connectionProvider
@Bean @ConditionalOnMissingBean(ConnectionProvider.class) public DataSourceConnectionProvider connectionProvider(DataSource dataSource) -
txContext
@Bean @ConditionalOnMissingBean(TxContext.class) public SpringTxContext txContext(DataSource dataSource) -
listenerRegistry
-
outboxListenerRegistrar
@Bean @ConditionalOnMissingBean public OutboxListenerRegistrar outboxListenerRegistrar(org.springframework.beans.factory.ListableBeanFactory beanFactory, DefaultListenerRegistry listenerRegistry) -
outbox
@Bean(destroyMethod="close") @ConditionalOnMissingBean public Outbox outbox(OutboxProperties props, ConnectionProvider connectionProvider, TxContext txContext, AbstractJdbcOutboxStore outboxStore, DefaultListenerRegistry listenerRegistry, org.springframework.beans.factory.ObjectProvider<MetricsExporter> metricsProvider, org.springframework.beans.factory.ObjectProvider<EventInterceptor> interceptorProvider) -
outboxWriter
-
outboxLifecycle
-