diff --git a/application/pom.xml b/application/pom.xml new file mode 100644 index 0000000..9baf090 --- /dev/null +++ b/application/pom.xml @@ -0,0 +1,34 @@ + + + + ms-library + org.example + 1.0-SNAPSHOT + + 4.0.0 + + application + + + + org.example + domain + ${project.version} + + + + + org.springframework.boot + spring-boot-starter-web + + + + org.springframework.boot + spring-boot-starter-test + test + + + + \ No newline at end of file diff --git a/application/src/main/java/org/example/controller/BookController.java b/application/src/main/java/org/example/controller/BookController.java new file mode 100644 index 0000000..5ba8648 --- /dev/null +++ b/application/src/main/java/org/example/controller/BookController.java @@ -0,0 +1,41 @@ +package org.example.controller; + +import org.exemple.data.BookDto; +import org.exemple.ports.api.BookServicePort; +import org.springframework.beans.factory.annotation.Autowired; +import org.springframework.web.bind.annotation.*; + +import java.util.List; + +@RestController +@RequestMapping("/book") +public class BookController { + + @Autowired + private BookServicePort bookServicePort; + + @PostMapping("/add") + public BookDto addBook(@RequestBody BookDto bookDto) { + return bookServicePort.addBook(bookDto); + } + + @PutMapping("/update") + public BookDto updateBook(@RequestBody BookDto bookDto) { + return bookServicePort.updateBook(bookDto); + } + + @GetMapping("/get/{id}") + public BookDto getBookByID(@PathVariable long id) { + return bookServicePort.getBookById(id); + } + + @GetMapping("/get") + public List getAllBooks() { + return bookServicePort.getBooks(); + } + + @DeleteMapping("/delete/{id}") + public void deleteBookByID(@PathVariable long id) { + bookServicePort.deleteBookById(id); + } +}