X-Git-Url: https://juplo.de/gitweb/?a=blobdiff_plain;f=transfer%2Fsrc%2Fmain%2Fjava%2Fde%2Fjuplo%2Fkafka%2Fpayment%2Ftransfer%2Fdomain%2FTransferService.java;h=6545e299cb7bae2ead945e0f888687855cca3d46;hb=c3d8ff110b30df7013d9b9c8440c3591766ba072;hp=34ef29cd83100eca9fd84abe0e0ed2dd193e4ce6;hpb=5bffe60126c5fa74bff59c91dfbd722d291b1c93;p=demos%2Fkafka%2Fdemos-kafka-payment-system-transfer diff --git a/transfer/src/main/java/de/juplo/kafka/payment/transfer/domain/TransferService.java b/transfer/src/main/java/de/juplo/kafka/payment/transfer/domain/TransferService.java index 34ef29c..6545e29 100644 --- a/transfer/src/main/java/de/juplo/kafka/payment/transfer/domain/TransferService.java +++ b/transfer/src/main/java/de/juplo/kafka/payment/transfer/domain/TransferService.java @@ -21,19 +21,26 @@ public class TransferService private final ObjectMapper mapper; private final String topic; - public void initiate(Transfer transfer) + public synchronized void initiate(Transfer transfer) { repository .get(transfer.getId()) .ifPresentOrElse( stored -> { - + switch (stored.getState()) + { + case FAILED: + } }, () -> { - }); + } + + + private void create(Transfer transfer) + { try { ProducerRecord record =