Transactional Outbox Builder
Builder for TransactionalOutbox.
Example on Spring Boot:
fun transactionalOutbox(): TransactionalOutbox {
return TransactionalOutboxBuilder
.make(clock)
.withHandlers(outboxHandlers)
.withMonitorLocksProvider(monitorLocksProvider)
.withCleanupLocksProvider(cleanupLocksProvider)
.withStore(outboxStore)
.withInstantOutboxPublisher(instantOutboxPublisher)
.withThreadPoolSize(threadPoolSize)
.withThreadPriority(threadPriority)
.withThreadPoolTimeOut(threadPoolTimeOut)
.addProcessorDecorator(outboxItemProcessorDecorator)
.withGroupIdProvider(outboxGroupIdProvider)
.withGroupingConfiguration(outboxGroupingConfiguration)
.build()
}
Constructors
Types
Functions
Adds a decorator to be applied before asynchronously invoking Outbox Item Processors which, in turn, invokes the corresponding OutboxHandler.
Builds the outbox.
Sets the locks provider for the outbox cleanup runs.
Sets the group id provider for the outbox that will be used to set corresponding field when an item is added.
Sets the grouping configuration for the outbox.
Sets the handlers for the outbox.
Flag which indicates whether new instant processing mechanism should be used or not.
Sets the publisher for instant outboxes.
Sets the locks provider for the outbox monitor runs.
Sets the store for the outbox.
Sets the thread pool size for the outbox.
Sets the thread pool timeout upon shutdown for the outbox.
Sets the priority for the threads in the thread pool.