Added a simple implementation of the polling outbox pattern
[demos/kafka/outbox] / outbox / src / main / java / de / juplo / kafka / outbox / Application.java
1 package de.juplo.kafka.outbox;
2
3 import lombok.extern.slf4j.Slf4j;
4 import org.springframework.boot.SpringApplication;
5 import org.springframework.boot.autoconfigure.SpringBootApplication;
6 import org.springframework.boot.context.properties.EnableConfigurationProperties;
7
8 import java.util.concurrent.CountDownLatch;
9
10
11 @SpringBootApplication
12 @EnableConfigurationProperties(ApplicationProperties.class)
13 @Slf4j
14 public class Application
15 {
16   public static void main(String[] args) throws Exception
17   {
18     SpringApplication.run(Application.class, args);
19
20     final CountDownLatch closeLatch = new CountDownLatch(1);
21
22     Runtime
23         .getRuntime()
24         .addShutdownHook(new Thread()
25         {
26           @Override
27           public void run()
28           {
29             log.info("Closing application...");
30             closeLatch.countDown();
31           }
32         });
33
34     closeLatch.await();
35   }
36 }