Added a `@RestController`
[demos/spring-boot] / src / main / java / de / juplo / demo / DemoRestController.java
diff --git a/src/main/java/de/juplo/demo/DemoRestController.java b/src/main/java/de/juplo/demo/DemoRestController.java
new file mode 100644 (file)
index 0000000..4259a30
--- /dev/null
@@ -0,0 +1,34 @@
+package de.juplo.demo;
+
+import lombok.RequiredArgsConstructor;
+import lombok.extern.slf4j.Slf4j;
+import org.springframework.web.bind.annotation.*;
+
+
+@RequiredArgsConstructor
+@RestController
+@Slf4j
+public class DemoRestController
+{
+  public final String PLACEHOLDER_TO = "TO_NAME";
+  public final String PLACEHOLDER_FROM = "FROM_NAME";
+
+
+  private final String from;
+
+
+  @PostMapping("{to}")
+  public GreetingTO greet(
+      @PathVariable String to,
+      @RequestBody String greeting)
+  {
+    String message = greeting
+        .replaceAll(PLACEHOLDER_FROM, from)
+        .replaceAll(PLACEHOLDER_TO, to)
+        .trim();
+
+    log.info("Greeting from {} to {}: {}", from, to, message);
+
+    return GreetingTO.of(message, from, to);
+  }
+}