1 package de.juplo.kafka.chat.backend.implementation.kafka;
3 import jakarta.annotation.PreDestroy;
4 import lombok.RequiredArgsConstructor;
5 import org.springframework.boot.ApplicationArguments;
6 import org.springframework.boot.ApplicationRunner;
7 import org.springframework.boot.autoconfigure.condition.ConditionalOnProperty;
8 import org.springframework.stereotype.Component;
11 @ConditionalOnProperty(
12 prefix = "chat.backend",
14 havingValue = "kafka")
16 @RequiredArgsConstructor
17 public class KafkaServicesApplicationRunner implements ApplicationRunner
19 private final ConsumerTaskRunner consumerTaskRunner;
23 public void run(ApplicationArguments args)
25 consumerTaskRunner.executeConsumerTasks();
29 public void joinConsumerTasks() throws InterruptedException
31 consumerTaskRunner.joinConsumerTasks();