X-Git-Url: https://juplo.de/gitweb/?a=blobdiff_plain;f=src%2Fmain%2Fjava%2Fde%2Fjuplo%2Fkafka%2Fwordcount%2Frecorder%2FRecorderApplication.java;fp=src%2Fmain%2Fjava%2Fde%2Fjuplo%2Fkafka%2Fwordcount%2Frecorder%2FRecorderApplication.java;h=abe0685f2a08276be66f2fff8c1a206772bfddde;hb=338279a329a06be7a141a3930d80b2a2805719dc;hp=0000000000000000000000000000000000000000;hpb=5b426263adb46e835333b127c1755c0a23035ece;p=demos%2Fkafka%2Fwordcount diff --git a/src/main/java/de/juplo/kafka/wordcount/recorder/RecorderApplication.java b/src/main/java/de/juplo/kafka/wordcount/recorder/RecorderApplication.java new file mode 100644 index 0000000..abe0685 --- /dev/null +++ b/src/main/java/de/juplo/kafka/wordcount/recorder/RecorderApplication.java @@ -0,0 +1,36 @@ +package de.juplo.kafka.wordcount.recorder; + +import org.apache.kafka.clients.producer.KafkaProducer; +import org.apache.kafka.clients.producer.ProducerConfig; +import org.apache.kafka.common.serialization.StringSerializer; +import org.springframework.boot.SpringApplication; +import org.springframework.boot.autoconfigure.SpringBootApplication; +import org.springframework.boot.context.properties.EnableConfigurationProperties; +import org.springframework.context.annotation.Bean; +import org.springframework.util.Assert; + +import java.util.Properties; + + +@SpringBootApplication +@EnableConfigurationProperties(RecorderApplicationProperties.class) +public class RecorderApplication +{ + @Bean(destroyMethod = "close") + KafkaProducer producer(RecorderApplicationProperties properties) + { + Assert.hasText(properties.getBootstrapServer(), "juplo.wordcount.recorder.bootstrap-server must be set"); + + Properties props = new Properties(); + props.put(ProducerConfig.BOOTSTRAP_SERVERS_CONFIG, properties.getBootstrapServer()); + props.put(ProducerConfig.KEY_SERIALIZER_CLASS_CONFIG, StringSerializer.class); + props.put(ProducerConfig.VALUE_SERIALIZER_CLASS_CONFIG, StringSerializer.class); + + return new KafkaProducer<>(props); + } + + public static void main(String[] args) + { + SpringApplication.run(RecorderApplication.class, args); + } +}