diff --git a/backend/src/main/java/ru/micord/ervu/account_applications/kafka/KafkaConsumerInitializer.java b/backend/src/main/java/ru/micord/ervu/account_applications/kafka/KafkaConsumerInitializer.java index 453cbe1d..1b443443 100644 --- a/backend/src/main/java/ru/micord/ervu/account_applications/kafka/KafkaConsumerInitializer.java +++ b/backend/src/main/java/ru/micord/ervu/account_applications/kafka/KafkaConsumerInitializer.java @@ -5,6 +5,7 @@ import org.springframework.context.annotation.DependsOn; import org.springframework.kafka.config.KafkaListenerEndpointRegistry; import org.springframework.kafka.listener.MessageListenerContainer; import org.springframework.stereotype.Component; +import ru.micord.ervu.account_applications.service.ErvuDirectoriesService; /** * @author Eduard Tihomirov @@ -18,10 +19,16 @@ public class KafkaConsumerInitializer { @Value("${kafka.role.group.id}") private String roleGroupId; - public KafkaConsumerInitializer(KafkaListenerEndpointRegistry kafkaListenerEndpointRegistry) { + @Value("${load.directories:true}") + private Boolean loadDirectories; + + public KafkaConsumerInitializer(KafkaListenerEndpointRegistry kafkaListenerEndpointRegistry, ErvuDirectoriesService ervuDirectoriesService) { MessageListenerContainer listenerContainerDomain = kafkaListenerEndpointRegistry.getListenerContainer(domainGroupId); MessageListenerContainer listenerContainerRole = kafkaListenerEndpointRegistry.getListenerContainer(roleGroupId); listenerContainerDomain.start(); listenerContainerRole.start(); + if (loadDirectories) { + new Thread(ervuDirectoriesService::updateDirectories).start(); + } } } diff --git a/backend/src/main/java/ru/micord/ervu/account_applications/service/ErvuDirectoriesService.java b/backend/src/main/java/ru/micord/ervu/account_applications/service/ErvuDirectoriesService.java index 1ebd84ec..8634aebe 100644 --- a/backend/src/main/java/ru/micord/ervu/account_applications/service/ErvuDirectoriesService.java +++ b/backend/src/main/java/ru/micord/ervu/account_applications/service/ErvuDirectoriesService.java @@ -34,7 +34,7 @@ import ru.micord.ervu.account_applications.model.RoleResponse; * @author Eduard Tihomirov */ @Service -@DependsOn({"liquibase", "ervuDirectoriesListener"}) +@DependsOn("liquibase") public class ErvuDirectoriesService { private static final Logger LOGGER = LoggerFactory.getLogger( MethodHandles.lookup().lookupClass()); diff --git a/backend/src/main/java/ru/micord/ervu/account_applications/service/ErvuDirectoriesUpdateService.java b/backend/src/main/java/ru/micord/ervu/account_applications/service/ErvuDirectoriesUpdateService.java deleted file mode 100644 index 84dd9215..00000000 --- a/backend/src/main/java/ru/micord/ervu/account_applications/service/ErvuDirectoriesUpdateService.java +++ /dev/null @@ -1,33 +0,0 @@ -package ru.micord.ervu.account_applications.service; - -import javax.annotation.PostConstruct; - -import org.springframework.beans.factory.annotation.Autowired; -import org.springframework.beans.factory.annotation.Value; -import org.springframework.context.annotation.DependsOn; -import org.springframework.stereotype.Service; - -/** - * @author Eduard Tihomirov - */ -@Service -@DependsOn("kafkaConsumerInitializer") -public class ErvuDirectoriesUpdateService { - - @Autowired - private ErvuDirectoriesService ervuDirectoriesService; - - @Value("${load.directories:true}") - private Boolean loadDirectories; - - @PostConstruct - public void init() { - if (loadDirectories) { - new Thread(this::run).start(); - } - } - - private void run() { - ervuDirectoriesService.updateDirectories(); - } -}