refactor(lang-detect): LanguageDetectEvent ID 필드를 단일 id로 통합

- LanguageDetectEvent의 contentId/commentId를 제거하고 공통 id(Long) 필드로 단순화
- LanguageDetectListener에서 targetType에 따라 id를 AudioContent/AudioContentComment/CharacterComment 조회에 사용하도록 수정
- AudioContentService, AudioContentCommentService, AudioContentDonationService, CharacterCommentService 등 이벤트 발행부를 새 시그니처(id + targetType)로 정리
This commit is contained in:
2025-11-25 16:32:29 +09:00
parent 619ceeea24
commit 8f4544ad71
5 changed files with 10 additions and 23 deletions

View File

@@ -75,7 +75,7 @@ class CharacterCommentService(
if (languageCode.isNullOrBlank()) {
applicationEventPublisher.publishEvent(
LanguageDetectEvent(
commentId = entity.id!!,
id = entity.id!!,
query = text,
targetType = LanguageDetectTargetType.CHARACTER_COMMENT
)
@@ -110,7 +110,7 @@ class CharacterCommentService(
if (languageCode.isNullOrBlank()) {
applicationEventPublisher.publishEvent(
LanguageDetectEvent(
commentId = entity.id!!,
id = entity.id!!,
query = text,
targetType = LanguageDetectTargetType.CHARACTER_COMMENT
)

View File

@@ -344,7 +344,7 @@ class AudioContentService(
applicationEventPublisher.publishEvent(
LanguageDetectEvent(
contentId = audioContent.id!!,
id = audioContent.id!!,
query = papagoQuery
)
)

View File

@@ -26,10 +26,9 @@ enum class LanguageDetectTargetType {
}
class LanguageDetectEvent(
val contentId: Long? = null,
val id: Long,
val query: String,
val targetType: LanguageDetectTargetType = LanguageDetectTargetType.CONTENT,
val commentId: Long? = null
val targetType: LanguageDetectTargetType = LanguageDetectTargetType.CONTENT
)
data class PapagoLanguageDetectResponse(
@@ -72,11 +71,7 @@ class LanguageDetectListener(
}
private fun handleContentLanguageDetect(event: LanguageDetectEvent) {
val contentId = event.contentId
if (contentId == null) {
log.warn("[PapagoLanguageDetect] contentId is null for CONTENT target. event={}", event)
return
}
val contentId = event.id
val audioContent = audioContentRepository.findById(contentId).orElse(null)
if (audioContent == null) {
@@ -109,11 +104,7 @@ class LanguageDetectListener(
}
private fun handleCommentLanguageDetect(event: LanguageDetectEvent) {
val commentId = event.commentId
if (commentId == null) {
log.warn("[PapagoLanguageDetect] commentId is null for COMMENT target. event={}", event)
return
}
val commentId = event.id
val comment = audioContentCommentRepository.findById(commentId).orElse(null)
if (comment == null) {
@@ -144,11 +135,7 @@ class LanguageDetectListener(
}
private fun handleCharacterCommentLanguageDetect(event: LanguageDetectEvent) {
val commentId = event.commentId
if (commentId == null) {
log.warn("[PapagoLanguageDetect] commentId is null for CHARACTER_COMMENT target. event={}", event)
return
}
val commentId = event.id
val comment = characterCommentRepository.findById(commentId).orElse(null)
if (comment == null) {

View File

@@ -92,7 +92,7 @@ class AudioContentCommentService(
if (languageCode.isNullOrBlank()) {
applicationEventPublisher.publishEvent(
LanguageDetectEvent(
commentId = savedContentComment.id!!,
id = savedContentComment.id!!,
query = comment,
targetType = LanguageDetectTargetType.COMMENT
)

View File

@@ -50,7 +50,7 @@ class AudioContentDonationService(
if (request.languageCode.isNullOrBlank()) {
applicationEventPublisher.publishEvent(
LanguageDetectEvent(
commentId = savedComment.id!!,
id = savedComment.id!!,
query = request.comment,
targetType = LanguageDetectTargetType.COMMENT
)