FINERACT-2181: Use disruptor only if it is configured

This commit is contained in:
Adam Saghy
2025-05-25 19:18:13 +02:00
parent 1aa8395458
commit b0a9bcb3ec
@@ -29,6 +29,7 @@ import org.apache.fineract.command.core.CommandProperties;
import org.apache.fineract.command.core.CommandRouter;
import org.apache.fineract.command.implementation.DisruptorCommandExecutor;
import org.springframework.boot.autoconfigure.condition.ConditionalOnMissingBean;
import org.springframework.boot.autoconfigure.condition.ConditionalOnProperty;
import org.springframework.boot.context.properties.EnableConfigurationProperties;
import org.springframework.context.annotation.Bean;
import org.springframework.context.annotation.ComponentScan;
@@ -42,11 +43,13 @@ class CommandConfiguration {
@Bean
@ConditionalOnMissingBean
@ConditionalOnProperty(value = "fineract.command.executor", havingValue = "disruptor")
WaitStrategy waitStrategy() {
return new YieldingWaitStrategy();
}
@Bean
@ConditionalOnProperty(value = "fineract.command.executor", havingValue = "disruptor")
Disruptor<?> disruptor(CommandProperties properties, WaitStrategy waitStrategy, List<CommandMiddleware> middlewares,
CommandRouter router) {
// TODO: make this more configurable