1 package de.juplo.kafka.payment.transfer.controller;
4 import de.juplo.kafka.payment.transfer.api.Transfer;
5 import de.juplo.kafka.payment.transfer.impl.TransferServiceImpl;
6 import lombok.RequiredArgsConstructor;
7 import lombok.extern.slf4j.Slf4j;
8 import org.springframework.http.MediaType;
9 import org.springframework.http.ResponseEntity;
10 import org.springframework.web.bind.annotation.PostMapping;
11 import org.springframework.web.bind.annotation.RequestBody;
12 import org.springframework.web.bind.annotation.RestController;
14 import javax.validation.Valid;
19 @RequiredArgsConstructor
21 public class TransferController
23 public final static String PATH = "/transfers";
25 private final TransferServiceImpl service;
30 consumes = MediaType.APPLICATION_JSON_VALUE,
31 produces = MediaType.APPLICATION_JSON_VALUE)
32 public ResponseEntity<?> transfer(@Valid @RequestBody Transfer transfer)
34 service.initiate(transfer);
35 return ResponseEntity.created(URI.create(PATH + transfer.getId())).build();