Automatically rebuild the state after a crash / restart
[demos/kafka/demos-kafka-payment-system-transfer] / src / main / java / de / juplo / kafka / payment / transfer / adapter / NoOpMessageService.java
1 package de.juplo.kafka.payment.transfer.adapter;
2
3 import de.juplo.kafka.payment.transfer.domain.Transfer;
4 import de.juplo.kafka.payment.transfer.ports.MessagingService;
5 import lombok.extern.slf4j.Slf4j;
6 import org.springframework.stereotype.Component;
7
8 import java.util.concurrent.CompletableFuture;
9
10
11 @Component
12 @Slf4j
13 public class NoOpMessageService implements MessagingService
14 {
15   @Override
16   public CompletableFuture<?> send(Transfer transfer)
17   {
18     log.info("restoring transfer: {}", transfer);
19     return CompletableFuture.completedFuture(transfer.toString());
20   }
21
22   @Override
23   public CompletableFuture<?> send(Long id, Transfer.State state)
24   {
25     log.info("restoring state-change for transfer {}: {}", id, state);
26     return CompletableFuture.completedFuture("transfer: " + id + " - " + state);
27   }
28 }