Die App führt die Berechnung aus
[demos/kafka/training] / src / main / java / de / juplo / kafka / MessageHandler.java
1 package de.juplo.kafka;
2
3 import lombok.RequiredArgsConstructor;
4 import lombok.extern.slf4j.Slf4j;
5
6
7 @RequiredArgsConstructor
8 @Slf4j
9 public class MessageHandler
10 {
11   private final String id;
12
13   private final AdderBusinessLogic adder;
14
15
16   public void addNumber(
17       String user,
18       MessageAddNumber message)
19   {
20     adder.addToSum(user, message.getNext());
21   }
22
23   public void calculateSum(
24       String user,
25       MessageCalculateSum message)
26   {
27     AdderResult result = adder.calculate(user);
28     log.info("{} - New result for {}: {}", id, user, result);
29   }
30
31   public void handle(String user, Message message)
32   {
33     switch(message.getType())
34     {
35       case ADD:
36         addNumber(user, (MessageAddNumber) message);
37         break;
38
39       case CALC:
40         calculateSum(user, (MessageCalculateSum) message);
41         break;
42     }
43   }
44 }