diff --git a/pom.xml b/pom.xml index bce914b..b52c113 100644 --- a/pom.xml +++ b/pom.xml @@ -51,6 +51,12 @@ spring-boot-starter-test test + + + org.springdoc + springdoc-openapi-starter-webmvc-ui + 2.0.2 + diff --git a/src/main/java/org/zaine/app/controller/NotesController.java b/src/main/java/org/zaine/app/controller/NotesController.java index e8ce2c5..ca8a862 100644 --- a/src/main/java/org/zaine/app/controller/NotesController.java +++ b/src/main/java/org/zaine/app/controller/NotesController.java @@ -8,22 +8,23 @@ import org.springframework.web.bind.annotation.RequestBody; import org.springframework.web.bind.annotation.RequestMapping; import org.springframework.web.bind.annotation.RestController; import org.zaine.app.model.Notes; -import org.zaine.app.repositories.NotesRepository; +import org.zaine.app.service.NotesService; import java.util.List; @RestController public class NotesController { - @Autowired - private NotesRepository notesRepository; + @Autowired + private NotesService notesService; + @GetMapping("/notes") public List getAllNotes() { - return notesRepository.findAll(); + return notesService.getAllNotes(); } @PostMapping("/notes") public Notes createNote(@RequestBody Notes note) { - return notesRepository.save(note); + return notesService.createNote(note); } diff --git a/src/main/java/org/zaine/app/model/Notes.java b/src/main/java/org/zaine/app/model/Notes.java index 670d493..4c978b2 100644 --- a/src/main/java/org/zaine/app/model/Notes.java +++ b/src/main/java/org/zaine/app/model/Notes.java @@ -5,9 +5,7 @@ import jakarta.persistence.Entity; import jakarta.persistence.Id; import jakarta.persistence.Table; import jakarta.persistence.GeneratedValue; -import org.hibernate.annotations.UuidGenerator; -import java.sql.Date; import java.time.Instant; import java.util.UUID; @@ -17,6 +15,7 @@ public class Notes { @Id @GeneratedValue + @Column(name="id") private UUID id; @Column(name="content") @@ -26,12 +25,7 @@ public class Notes { private String authorName; @Column(name="created_at") - private Date createdAt; - - - public Notes() { - this.createdAt = new Date(System.currentTimeMillis()); - } + private Instant createdAt; public UUID getId() { return id; @@ -53,7 +47,9 @@ public class Notes { this.authorName = authorName; } - public Date getCreatedAt() { + public Instant getCreatedAt() { return createdAt; } + + } diff --git a/src/main/java/org/zaine/app/service/NotesService.java b/src/main/java/org/zaine/app/service/NotesService.java index 610f1c0..d17382d 100644 --- a/src/main/java/org/zaine/app/service/NotesService.java +++ b/src/main/java/org/zaine/app/service/NotesService.java @@ -1,17 +1,27 @@ package org.zaine.app.service; -import java.util.ArrayList; import java.util.List; +import java.util.logging.Logger; +import org.springframework.beans.factory.annotation.Autowired; import org.springframework.stereotype.Service; import org.zaine.app.model.Notes; +import org.zaine.app.repositories.NotesRepository; @Service public class NotesService { - - private static List notesList = new ArrayList<>(); + + private static final Logger logger = Logger.getLogger(NotesService.class.getName()); + @Autowired + private NotesRepository notesRepository; + public List getAllNotes() { - return notesList; + return notesRepository.findAll(); + } + + public Notes createNote(Notes note) { + logger.info("Creating note with content: " + note.getContent()); + return notesRepository.save(note); } }