X-Git-Url: http://juplo.de/gitweb/?a=blobdiff_plain;f=src%2Fmain%2Fjava%2Fde%2Fjuplo%2Fkafka%2FApplication.java;h=a44415e5d47f5bb04d4c0e67e18b312d30734241;hb=f7c73046c9b8e47da9ac7d0ca55fcf4d6bb13956;hp=dda9b11c4102328a94374ca253b17b2d11b2209f;hpb=e7dee76bfcdcac440352a226409ab9047275aa72;p=demos%2Fkafka%2Ftraining diff --git a/src/main/java/de/juplo/kafka/Application.java b/src/main/java/de/juplo/kafka/Application.java index dda9b11..a44415e 100644 --- a/src/main/java/de/juplo/kafka/Application.java +++ b/src/main/java/de/juplo/kafka/Application.java @@ -7,82 +7,28 @@ import org.springframework.boot.ApplicationRunner; import org.springframework.boot.SpringApplication; import org.springframework.boot.autoconfigure.SpringBootApplication; import org.springframework.kafka.core.KafkaTemplate; -import org.springframework.kafka.support.SendResult; -import org.springframework.util.concurrent.ListenableFuture; - -import java.util.List; +// tag::supersimple[] @Slf4j @SpringBootApplication public class Application implements ApplicationRunner { - public final static String ARG_NUM = "num"; - @Autowired KafkaTemplate kafkaTemplate; - - void send(String key, String value) - { - ListenableFuture> listenableFuture = - kafkaTemplate.sendDefault(key, value); - - listenableFuture.addCallback( - result -> log.debug( - "Sent {}={} to partition={}, offset={}", - result.getProducerRecord().key(), - result.getProducerRecord().value(), - result.getRecordMetadata().partition(), - result.getRecordMetadata().offset()), - e -> log.error("ERROR sendig message", e)); - } - @Override public void run(ApplicationArguments args) { - int num = 10; - - if (args.containsOption(ARG_NUM)) - { - List numArgs = args.getOptionValues(ARG_NUM); - if (numArgs.size() > 1) - { - log.error( - "Only one occurence of argument {} is allowed, but found: {}", - ARG_NUM, - numArgs.size()); - return; - } - - try - { - num = Integer.parseInt(numArgs.get(0)); - } - catch (NumberFormatException e) - { - log.error("{} is not a number: {}", numArgs.get(0), e.getMessage()); - } - } - - for (int i = 0; i < num; i++) + for (int i = 0; i < 100; i++) { - send(Long.toString(i%10), Long.toString(i)); - try - { - Thread.sleep(500); - } - catch (InterruptedException e) - { - log.info("Interrupted after sending {} messages", i); - return; - } + kafkaTemplate.send("test", Long.toString(i%10), Long.toString(i)); } } - public static void main(String[] args) { SpringApplication.run(Application.class, args); } } +// end::supersimple[]