From 0b2ac4a80f256b0f67e0b7115cfb7117984f594b Mon Sep 17 00:00:00 2001 From: Kai Moritz Date: Sat, 18 Jan 2025 16:03:36 +0100 Subject: [PATCH] TODO --- .../java/de/juplo/kafka/ExampleProducer.java | 20 ++++++++++++++++--- 1 file changed, 17 insertions(+), 3 deletions(-) diff --git a/src/main/java/de/juplo/kafka/ExampleProducer.java b/src/main/java/de/juplo/kafka/ExampleProducer.java index 300d11ea..db0b99eb 100644 --- a/src/main/java/de/juplo/kafka/ExampleProducer.java +++ b/src/main/java/de/juplo/kafka/ExampleProducer.java @@ -6,22 +6,29 @@ import org.springframework.boot.ApplicationArguments; import org.springframework.boot.ApplicationRunner; import org.springframework.boot.SpringApplication; import org.springframework.boot.autoconfigure.SpringBootApplication; +import org.springframework.boot.context.event.ApplicationReadyEvent; +import org.springframework.context.event.EventListener; import org.springframework.kafka.core.KafkaTemplate; import org.springframework.kafka.support.SendResult; +import org.springframework.scheduling.annotation.Async; +import org.springframework.scheduling.annotation.EnableAsync; import java.util.concurrent.CompletableFuture; @Slf4j +@EnableAsync // tag::supersimple[] @SpringBootApplication -public class ExampleProducer implements ApplicationRunner +public class ExampleProducer { @Autowired KafkaTemplate kafkaTemplate; - @Override - public void run(ApplicationArguments args) + // end::supersimple[] + @Async + // tag::supersimple[] + public void run() { for (int i = 0; true; i++) { @@ -48,7 +55,14 @@ public class ExampleProducer implements ApplicationRunner // tag::supersimple[] } } + // end::supersimple[] + @EventListener(ApplicationReadyEvent.class) + public void onApplicationReady() { + this.run(); + } + + // tag::supersimple[] public static void main(String[] args) { SpringApplication.run(ExampleProducer.class, args); -- 2.20.1