Skip to content

Commit a4cd39c

Browse files
committed
feat(be): route chat messaging through publisher port
1 parent 4948863 commit a4cd39c

File tree

2 files changed

+8
-8
lines changed

2 files changed

+8
-8
lines changed

src/main/kotlin/com/back/koreaTravelGuide/domain/userChat/chatmessage/controller/ChatMessageController.kt

Lines changed: 4 additions & 4 deletions
Original file line numberDiff line numberDiff line change
@@ -4,8 +4,8 @@ import com.back.koreaTravelGuide.common.ApiResponse
44
import com.back.koreaTravelGuide.domain.userChat.chatmessage.dto.ChatMessageResponse
55
import com.back.koreaTravelGuide.domain.userChat.chatmessage.dto.ChatMessageSendRequest
66
import com.back.koreaTravelGuide.domain.userChat.chatmessage.service.ChatMessageService
7+
import com.back.koreaTravelGuide.domain.userChat.chatmessage.usecase.ChatMessagePublisher
78
import org.springframework.http.ResponseEntity
8-
import org.springframework.messaging.simp.SimpMessagingTemplate
99
import org.springframework.security.access.AccessDeniedException
1010
import org.springframework.security.core.annotation.AuthenticationPrincipal
1111
import org.springframework.web.bind.annotation.GetMapping
@@ -20,7 +20,7 @@ import org.springframework.web.bind.annotation.RestController
2020
@RequestMapping("/api/userchat/rooms")
2121
class ChatMessageController(
2222
private val messageService: ChatMessageService,
23-
private val messagingTemplate: SimpMessagingTemplate,
23+
private val chatMessagePublisher: ChatMessagePublisher,
2424
) {
2525
@GetMapping("/{roomId}/messages")
2626
fun listMessages(
@@ -49,8 +49,8 @@ class ChatMessageController(
4949
val memberId = senderId ?: throw AccessDeniedException("인증이 필요합니다.")
5050
val saved = messageService.send(roomId, memberId, req.content)
5151
val response = ChatMessageResponse.from(saved)
52-
messagingTemplate.convertAndSend(
53-
"/topic/userchat/$roomId",
52+
chatMessagePublisher.publishUserChat(
53+
roomId,
5454
ApiResponse(msg = "메시지 전송", data = response),
5555
)
5656
return ResponseEntity.status(201).body(ApiResponse(msg = "메시지 전송", data = response))

src/main/kotlin/com/back/koreaTravelGuide/domain/userChat/chatmessage/controller/ChatMessageSocketController.kt

Lines changed: 4 additions & 4 deletions
Original file line numberDiff line numberDiff line change
@@ -4,18 +4,18 @@ import com.back.koreaTravelGuide.common.ApiResponse
44
import com.back.koreaTravelGuide.domain.userChat.chatmessage.dto.ChatMessageResponse
55
import com.back.koreaTravelGuide.domain.userChat.chatmessage.dto.ChatMessageSendRequest
66
import com.back.koreaTravelGuide.domain.userChat.chatmessage.service.ChatMessageService
7+
import com.back.koreaTravelGuide.domain.userChat.chatmessage.usecase.ChatMessagePublisher
78
import org.springframework.messaging.handler.annotation.DestinationVariable
89
import org.springframework.messaging.handler.annotation.MessageMapping
910
import org.springframework.messaging.handler.annotation.Payload
10-
import org.springframework.messaging.simp.SimpMessagingTemplate
1111
import org.springframework.security.access.AccessDeniedException
1212
import org.springframework.stereotype.Controller
1313
import java.security.Principal
1414

1515
@Controller
1616
class ChatMessageSocketController(
1717
private val chatMessageService: ChatMessageService,
18-
private val messagingTemplate: SimpMessagingTemplate,
18+
private val chatMessagePublisher: ChatMessagePublisher,
1919
) {
2020
@MessageMapping("/userchat/{roomId}/messages")
2121
fun handleMessage(
@@ -26,8 +26,8 @@ class ChatMessageSocketController(
2626
val senderId = principal.name.toLongOrNull() ?: throw AccessDeniedException("인증이 필요합니다.")
2727
val saved = chatMessageService.send(roomId, senderId, req.content)
2828
val response = ChatMessageResponse.from(saved)
29-
messagingTemplate.convertAndSend(
30-
"/topic/userchat/$roomId",
29+
chatMessagePublisher.publishUserChat(
30+
roomId,
3131
ApiResponse(msg = "메시지 전송", data = response),
3232
)
3333
}

0 commit comments

Comments
 (0)