WIP
[demos/kafka/demos-kafka-payment-system-transfer] / src / main / java / de / juplo / kafka / payment / transfer / TransferServiceApplication.java
index 5114a1c..e94f703 100644 (file)
@@ -24,6 +24,7 @@ import org.springframework.boot.context.properties.EnableConfigurationProperties
 import org.springframework.context.annotation.Bean;
 import org.springframework.util.Assert;
 import org.springframework.util.StringUtils;
+import org.springframework.web.reactive.function.client.WebClient;
 
 import java.io.File;
 import java.io.IOException;
@@ -112,9 +113,9 @@ public class TransferServiceApplication
             mapper,
             new TransferConsumer.ConsumerUseCases() {
               @Override
-              public void create(Long id, Long payer, Long payee, Integer amount)
+              public TransferStateChangedEvent create(Long id, Long payer, Long payee, Integer amount)
               {
-                productionTransferService.create(id, payer, payee, amount);
+                return productionTransferService.create(id, payer, payee, amount);
               }
 
               @Override
@@ -124,16 +125,17 @@ public class TransferServiceApplication
               }
 
               @Override
-              public void handleStateChange(Long id, Transfer.State state)
+              public TransferStateChangedEvent handleStateChange(
+                  TransferStateChangedEvent stateChangedEvent)
               {
-                productionTransferService.handleStateChange(id, state);
+                return productionTransferService.handleStateChange(stateChangedEvent);
               }
             },
             new TransferConsumer.ConsumerUseCases() {
               @Override
-              public void create(Long id, Long payer, Long payee, Integer amount)
+              public TransferStateChangedEvent create(Long id, Long payer, Long payee, Integer amount)
               {
-                restoreTransferService.create(id, payer, payee, amount);
+                return restoreTransferService.create(id, payer, payee, amount);
               }
 
               @Override
@@ -143,9 +145,10 @@ public class TransferServiceApplication
               }
 
               @Override
-              public void handleStateChange(Long id, Transfer.State state)
+              public TransferStateChangedEvent handleStateChange(
+                  TransferStateChangedEvent stateChangedEvent)
               {
-                restoreTransferService.handleStateChange(id, state);
+                return restoreTransferService.handleStateChange(stateChangedEvent);
               }
             });
   }
@@ -235,7 +238,11 @@ public class TransferServiceApplication
       KafkaMessagingService kafkaMessagingService,
       TransferConsumer transferConsumer)
   {
-    return new TransferController(productionTransferService, kafkaMessagingService, transferConsumer);
+    return new TransferController(
+        productionTransferService,
+        kafkaMessagingService,
+        transferConsumer,
+        WebClient.create());
   }