aboutsummaryrefslogtreecommitdiff
path: root/src/main/java/me/imsonmia/epqapi/controller/MessageController.java
diff options
context:
space:
mode:
authorZhongheng Liu <z.liu@outlook.com.gr>2024-01-02 17:31:58 +0200
committerZhongheng Liu <z.liu@outlook.com.gr>2024-01-02 17:31:58 +0200
commitf2d3c948bf424c116c151c45b1a0f6f19e3c24d6 (patch)
tree44cbd402e11ab7a1c2b90b6c15f75ba4d92e4509 /src/main/java/me/imsonmia/epqapi/controller/MessageController.java
parent82229cb32b6d4e10478f0320cdc5a004994065b0 (diff)
downloadepq-api-f2d3c948bf424c116c151c45b1a0f6f19e3c24d6.tar.gz
epq-api-f2d3c948bf424c116c151c45b1a0f6f19e3c24d6.tar.bz2
epq-api-f2d3c948bf424c116c151c45b1a0f6f19e3c24d6.zip
Added message database support in repo
Started on history fetching with getMapping
Diffstat (limited to 'src/main/java/me/imsonmia/epqapi/controller/MessageController.java')
-rw-r--r--src/main/java/me/imsonmia/epqapi/controller/MessageController.java35
1 files changed, 35 insertions, 0 deletions
diff --git a/src/main/java/me/imsonmia/epqapi/controller/MessageController.java b/src/main/java/me/imsonmia/epqapi/controller/MessageController.java
new file mode 100644
index 0000000..781b6ff
--- /dev/null
+++ b/src/main/java/me/imsonmia/epqapi/controller/MessageController.java
@@ -0,0 +1,35 @@
+package me.imsonmia.epqapi.controller;
+
+import java.util.ArrayList;
+
+import org.springframework.messaging.handler.annotation.MessageMapping;
+import org.springframework.messaging.handler.annotation.SendTo;
+import org.springframework.stereotype.Controller;
+import org.springframework.web.bind.annotation.GetMapping;
+import org.springframework.web.bind.annotation.PathVariable;
+
+import me.imsonmia.epqapi.model.Message;
+import me.imsonmia.epqapi.repository.MessageRepository;
+
+@Controller
+// @RequestMapping("/api/v1")
+public class MessageController {
+ private MessageRepository repository;
+ @MessageMapping("/chat")
+ @SendTo("/sub/chat")
+ public Message messageHandler(Message message) throws Exception {
+ // Add message to repository
+ repository.save(message);
+
+ // Forward message to subscribers of Stomp endpoint
+ return message;
+ }
+ @GetMapping("/chat/history/{from}")
+ public ArrayList<Message> getMessagesFromTimestamp(@PathVariable(value = "from") Long fromTimestamp) {
+ return new ArrayList<Message>();
+ }
+ // @GetMapping("/msg/{id}")
+ // public ChatMessage getMessageById(@PathVariable(value = "id") Long id) {
+ // return chatMessageRepository.findById(id).get();
+ // }
+}