메세지 코드 enum 화 작업

This commit is contained in:
Rinjae
2025-11-04 15:58:37 +09:00
parent 9959f15eb5
commit cd9d86c96b
23 changed files with 136 additions and 102 deletions
@@ -1,5 +1,6 @@
package com.eactive.apim.portal.app.event;
import com.eactive.apim.portal.template.entity.MessageCode;
import com.eactive.apim.portal.template.service.MessageEventHandler;
import com.eactive.apim.portal.template.service.MessageRecipient;
import com.eactive.apim.portal.template.service.MessageSendEvent;
@@ -10,7 +11,8 @@ import java.util.Map;
@Component
public class ApikeyRegisterApprovedEvent implements MessageEventHandler {
public static final String KEY = "apikey_register_approved";
// public static final String KEY = "apikey_register_approved";
public static final MessageCode KEY = MessageCode.API_APPROVED;
@Override
public boolean allowAdditionalRecipients() {
@@ -25,7 +27,7 @@ public class ApikeyRegisterApprovedEvent implements MessageEventHandler {
}
@Override
public String getKey() {
public MessageCode getKey() {
return KEY;
}
@@ -1,5 +1,6 @@
package com.eactive.apim.portal.app.event;
import com.eactive.apim.portal.template.entity.MessageCode;
import com.eactive.apim.portal.template.service.MessageEventHandler;
import com.eactive.apim.portal.template.service.MessageRecipient;
import com.eactive.apim.portal.template.service.MessageSendEvent;
@@ -10,7 +11,9 @@ import java.util.Map;
@Component
public class ApikeyRegisterDeniedEvent implements MessageEventHandler {
public static final String KEY = "apikey_register_denied";
// public static final String KEY = "apikey_register_denied";
public static final MessageCode KEY = MessageCode.APP_REGISTER_REJECTED;
@Override
public boolean allowAdditionalRecipients() {
@@ -25,7 +28,7 @@ public class ApikeyRegisterDeniedEvent implements MessageEventHandler {
}
@Override
public String getKey() {
public MessageCode getKey() {
return KEY;
}
@@ -1,5 +1,6 @@
package com.eactive.apim.portal.app.event;
import com.eactive.apim.portal.template.entity.MessageCode;
import com.eactive.apim.portal.template.service.MessageEventHandler;
import com.eactive.apim.portal.template.service.MessageRecipient;
import com.eactive.apim.portal.template.service.MessageSendEvent;
@@ -10,7 +11,8 @@ import java.util.Map;
@Component
public class ApikeyRegisterRequestEvent implements MessageEventHandler {
public static final String KEY = "apikey_register_request";
// public static final String KEY = "apikey_register_request";
public static final MessageCode KEY = MessageCode.APP_REGISTER_REQUEST;
@Override
public boolean allowAdditionalRecipients() {
@@ -27,7 +29,7 @@ public class ApikeyRegisterRequestEvent implements MessageEventHandler {
}
@Override
public String getKey() {
public MessageCode getKey() {
return KEY;
}
@@ -1,5 +1,6 @@
package com.eactive.apim.portal.common.event;
import com.eactive.apim.portal.template.entity.MessageCode;
import com.eactive.apim.portal.template.service.MessageEventHandler;
import com.eactive.apim.portal.template.service.MessageRecipient;
import com.eactive.apim.portal.template.service.MessageSendEvent;
@@ -10,11 +11,12 @@ import java.util.Map;
@Component
public class UnknownErrorEventHandler implements MessageEventHandler {
public static final String KEY = "unknown_error";
// public static final String KEY = "unknown_error";
public static final MessageCode KEY = MessageCode.UNKNOWN_ERROR;
@Override
public String getKey() {
public MessageCode getKey() {
return KEY;
}
@@ -1,5 +1,6 @@
package com.eactive.apim.portal.invitation.event;
import com.eactive.apim.portal.template.entity.MessageCode;
import com.eactive.apim.portal.template.service.MessageEventHandler;
import com.eactive.apim.portal.template.service.MessageRecipient;
import com.eactive.apim.portal.template.service.MessageSendEvent;
@@ -9,7 +10,8 @@ import org.springframework.stereotype.Component;
@Component
public class UserInvitationEvent implements MessageEventHandler {
public static final String KEY = "USER_INVITATION";
// public static final String KEY = "USER_INVITATION";
public static final MessageCode KEY = MessageCode.USER_INVITATION;
@Override
public boolean allowAdditionalRecipients() {
@@ -27,7 +29,7 @@ public class UserInvitationEvent implements MessageEventHandler {
}
@Override
public String getKey() {
public MessageCode getKey() {
return KEY;
}
@@ -1,6 +1,7 @@
package com.eactive.apim.portal.portaluser.event;
import com.eactive.apim.portal.template.entity.MessageCode;
import com.eactive.apim.portal.template.service.MessageEventHandler;
import com.eactive.apim.portal.template.service.MessageRecipient;
import com.eactive.apim.portal.template.service.MessageSendEvent;
@@ -11,8 +12,9 @@ import java.util.Map;
@Component
public class PasswordResetCompleteEvent implements MessageEventHandler {
// public static final String KEY = "password_reset_complete";
public static final MessageCode KEY = MessageCode.PASSWORD_RESET_COMPLETE;
public static final String KEY = "password_reset_complete";
@Override
public boolean allowAdditionalRecipients() {
@@ -26,7 +28,7 @@ public class PasswordResetCompleteEvent implements MessageEventHandler {
}
@Override
public String getKey() {
public MessageCode getKey() {
return KEY;
}
@@ -1,6 +1,7 @@
package com.eactive.apim.portal.portaluser.event;
import com.eactive.apim.portal.template.entity.MessageCode;
import com.eactive.apim.portal.template.service.MessageEventHandler;
import com.eactive.apim.portal.template.service.MessageRecipient;
import com.eactive.apim.portal.template.service.MessageSendEvent;
@@ -11,8 +12,8 @@ import java.util.Map;
@Component
public class RequestPasswordResetEvent implements MessageEventHandler {
public static final String KEY = "request_password_reset";
// public static final String KEY = "request_password_reset";
public static final MessageCode KEY = MessageCode.REQUEST_PASSWORD_RESET;
@Override
public boolean allowAdditionalRecipients() {
@@ -28,7 +29,7 @@ public class RequestPasswordResetEvent implements MessageEventHandler {
}
@Override
public String getKey() {
public MessageCode getKey() {
return KEY;
}
@@ -1,46 +0,0 @@
package com.eactive.apim.portal.portaluser.event;
import com.eactive.apim.portal.template.service.MessageEventHandler;
import com.eactive.apim.portal.template.service.MessageRecipient;
import com.eactive.apim.portal.template.service.MessageSendEvent;
import java.util.HashMap;
import java.util.Map;
import org.springframework.stereotype.Component;
@Component
public class UserEmailActivationEvent implements MessageEventHandler {
public static final String KEY = "user_activation";
@Override
public boolean allowAdditionalRecipients() {
return false;
}
@Override
public MessageSendEvent createEvent(Object source, MessageRecipient recipient, Map<String, Object> params) {
Map<String, String> requestParams = new HashMap<>();
requestParams.put("token", params.get("token").toString());
return new MessageSendEvent(source, KEY, recipient, requestParams);
}
@Override
public String getKey() {
return KEY;
}
@Override
public String getDisplayName() {
return "이메일 인증";
}
@Override
public String getDescription() {
return "<div>사용 가능 변수: </div><br/>"
+ "<div> - userId 수신자 ID (이메일) </div><br/>"
+ "<div> - token 토큰 </div><br/>";
}
}
@@ -1,5 +1,6 @@
package com.eactive.apim.portal.portaluser.event;
import com.eactive.apim.portal.template.entity.MessageCode;
import com.eactive.apim.portal.template.service.MessageEventHandler;
import com.eactive.apim.portal.template.service.MessageRecipient;
import com.eactive.apim.portal.template.service.MessageSendEvent;
@@ -9,7 +10,9 @@ import org.springframework.stereotype.Component;
@Component
public class UserManagerAssignedEvent implements MessageEventHandler {
public static final String KEY = "user_manager_assigned";
// public static final String KEY = "user_manager_assigned";
public static final MessageCode KEY = MessageCode.USER_MANAGER_ASSIGNED;
@Override
public boolean allowAdditionalRecipients() {
@@ -23,7 +26,7 @@ public class UserManagerAssignedEvent implements MessageEventHandler {
}
@Override
public String getKey() {
public MessageCode getKey() {
return KEY;
}
@@ -1,6 +1,7 @@
package com.eactive.apim.portal.portaluser.event;
import com.eactive.apim.portal.template.entity.MessageCode;
import com.eactive.apim.portal.template.service.MessageEventHandler;
import com.eactive.apim.portal.template.service.MessageRecipient;
import com.eactive.apim.portal.template.service.MessageSendEvent;
@@ -12,7 +13,7 @@ import java.util.Map;
@Component
public class UserPasswordChangedEvent implements MessageEventHandler {
public static final String KEY = "user_password_changed";
public static final MessageCode KEY = MessageCode.USER_PASSWORD_CHANGED;
@Override
public boolean allowAdditionalRecipients() {
@@ -26,7 +27,7 @@ public class UserPasswordChangedEvent implements MessageEventHandler {
}
@Override
public String getKey() {
public MessageCode getKey() {
return KEY;
}
@@ -1,6 +1,7 @@
package com.eactive.apim.portal.portaluser.event;
import com.eactive.apim.portal.template.entity.MessageCode;
import com.eactive.apim.portal.template.service.MessageEventHandler;
import com.eactive.apim.portal.template.service.MessageRecipient;
import com.eactive.apim.portal.template.service.MessageSendEvent;
@@ -11,7 +12,9 @@ import org.springframework.stereotype.Component;
@Component
public class UserPasswordResetEvent implements MessageEventHandler {
public static final String KEY = "user_password_reset";
//public static final String KEY = "user_password_reset";
public static final MessageCode KEY = MessageCode.USER_PASSWORD_RESET;
@Override
public boolean allowAdditionalRecipients() {
@@ -26,7 +29,7 @@ public class UserPasswordResetEvent implements MessageEventHandler {
}
@Override
public String getKey() {
public MessageCode getKey() {
return KEY;
}
@@ -1,5 +1,6 @@
package com.eactive.apim.portal.portaluser.event;
import com.eactive.apim.portal.template.entity.MessageCode;
import com.eactive.apim.portal.template.service.MessageEventHandler;
import com.eactive.apim.portal.template.service.MessageRecipient;
import com.eactive.apim.portal.template.service.MessageSendEvent;
@@ -10,7 +11,8 @@ import java.util.Map;
@Component
public class UserRegistrationApprovedEvent implements MessageEventHandler {
public static final String KEY = "user_registration_approved";
// public static final String KEY = "user_registration_approved";
public static final MessageCode KEY = MessageCode.USER_REGISTRATION_APPROVED;
@Override
public boolean allowAdditionalRecipients() {
@@ -24,7 +26,7 @@ public class UserRegistrationApprovedEvent implements MessageEventHandler {
}
@Override
public String getKey() {
public MessageCode getKey() {
return KEY;
}
@@ -1,5 +1,6 @@
package com.eactive.apim.portal.portaluser.event;
import com.eactive.apim.portal.template.entity.MessageCode;
import com.eactive.apim.portal.template.service.MessageEventHandler;
import com.eactive.apim.portal.template.service.MessageRecipient;
import com.eactive.apim.portal.template.service.MessageSendEvent;
@@ -10,7 +11,9 @@ import java.util.Map;
@Component
public class UserRegistrationDeniedEvent implements MessageEventHandler {
public static final String KEY = "user_registration_denied";
// public static final String KEY = "user_registration_denied";
public static final MessageCode KEY = MessageCode.USER_REGISTRATION_DENIED;
@Override
public boolean allowAdditionalRecipients() {
@@ -24,7 +27,7 @@ public class UserRegistrationDeniedEvent implements MessageEventHandler {
}
@Override
public String getKey() {
public MessageCode getKey() {
return KEY;
}
@@ -1,5 +1,6 @@
package com.eactive.apim.portal.portaluser.event;
import com.eactive.apim.portal.template.entity.MessageCode;
import com.eactive.apim.portal.template.service.MessageEventHandler;
import com.eactive.apim.portal.template.service.MessageRecipient;
import com.eactive.apim.portal.template.service.MessageSendEvent;
@@ -10,7 +11,9 @@ import java.util.Map;
@Component
public class UserRegistrationRequestAdminEvent implements MessageEventHandler {
public static final String KEY = "user_registration_request_admin";
// public static final String KEY = "user_registration_request_admin";
public static final MessageCode KEY = MessageCode.USER_REGISTRATION_REQUEST_ADMIN;
@Override
public boolean allowAdditionalRecipients() {
@@ -29,7 +32,7 @@ public class UserRegistrationRequestAdminEvent implements MessageEventHandler {
}
@Override
public String getKey() {
public MessageCode getKey() {
return KEY;
}
@@ -1,5 +1,6 @@
package com.eactive.apim.portal.portaluser.event;
import com.eactive.apim.portal.template.entity.MessageCode;
import com.eactive.apim.portal.template.service.MessageEventHandler;
import com.eactive.apim.portal.template.service.MessageRecipient;
import com.eactive.apim.portal.template.service.MessageSendEvent;
@@ -13,7 +14,9 @@ import java.util.Map;
*/
@Component
public class UserRegistrationRequestUserEvent implements MessageEventHandler {
public static final String KEY = "user_registration_request_user";
// public static final String KEY = "user_registration_request_user";
public static final MessageCode KEY = MessageCode.USER_REGISTRATION_REQUEST_USER;
@Override
public boolean allowAdditionalRecipients() {
@@ -27,7 +30,7 @@ public class UserRegistrationRequestUserEvent implements MessageEventHandler {
}
@Override
public String getKey() {
public MessageCode getKey() {
return KEY;
}
@@ -1,6 +1,7 @@
package com.eactive.apim.portal.portaluser.event;
import com.eactive.apim.portal.template.entity.MessageCode;
import com.eactive.apim.portal.template.service.MessageEventHandler;
import com.eactive.apim.portal.template.service.MessageRecipient;
import com.eactive.apim.portal.template.service.MessageSendEvent;
@@ -12,7 +13,7 @@ import java.util.Map;
@Component
public class UserVerificationEmailEvent implements MessageEventHandler {
public static final String KEY = "USER_VERIFICATION_EMAIL";
public static final MessageCode KEY = MessageCode.USER_VERIFICATION_EMAIL;
@Override
public boolean allowAdditionalRecipients() {
@@ -27,7 +28,7 @@ public class UserVerificationEmailEvent implements MessageEventHandler {
}
@Override
public String getKey() {
public MessageCode getKey() {
return KEY;
}
@@ -1,6 +1,7 @@
package com.eactive.apim.portal.portaluser.event;
import com.eactive.apim.portal.template.entity.MessageCode;
import com.eactive.apim.portal.template.service.MessageEventHandler;
import com.eactive.apim.portal.template.service.MessageRecipient;
import com.eactive.apim.portal.template.service.MessageSendEvent;
@@ -11,8 +12,9 @@ import java.util.Map;
@Component
public class UserVerificationMobilePhoneEvent implements MessageEventHandler {
// public static final String KEY = "USER_VERIFICATION_MOBILEPHONE";
public static final MessageCode KEY = MessageCode.USER_VERIFICATION_MOBILEPHONE;
public static final String KEY = "USER_VERIFICATION_MOBILEPHONE";
@Override
public boolean allowAdditionalRecipients() {
@@ -27,7 +29,7 @@ public class UserVerificationMobilePhoneEvent implements MessageEventHandler {
}
@Override
public String getKey() {
public MessageCode getKey() {
return KEY;
}
@@ -1,5 +1,6 @@
package com.eactive.apim.portal.qna.event;
import com.eactive.apim.portal.template.entity.MessageCode;
import com.eactive.apim.portal.template.service.MessageEventHandler;
import com.eactive.apim.portal.template.service.MessageRecipient;
import com.eactive.apim.portal.template.service.MessageSendEvent;
@@ -10,7 +11,9 @@ import java.util.Map;
@Component
public class InquiryCreatedEvent implements MessageEventHandler {
public static final String KEY = "inquiry_created";
// public static final String KEY = "inquiry_created";
public static final MessageCode KEY = MessageCode.INQUIRY_CREATED;
@Override
public boolean allowAdditionalRecipients() {
@@ -26,7 +29,7 @@ public class InquiryCreatedEvent implements MessageEventHandler {
}
@Override
public String getKey() {
public MessageCode getKey() {
return KEY;
}
@@ -1,5 +1,6 @@
package com.eactive.apim.portal.qna.event;
import com.eactive.apim.portal.template.entity.MessageCode;
import com.eactive.apim.portal.template.service.MessageEventHandler;
import com.eactive.apim.portal.template.service.MessageRecipient;
import com.eactive.apim.portal.template.service.MessageSendEvent;
@@ -10,7 +11,9 @@ import java.util.Map;
@Component
public class InquiryResponseEvent implements MessageEventHandler {
public static final String KEY = "inquiry_response";
// public static final String KEY = "inquiry_response";
public static final MessageCode KEY = MessageCode.INQUIRY_RESPONSE;
@Override
public boolean allowAdditionalRecipients() {
@@ -27,7 +30,7 @@ public class InquiryResponseEvent implements MessageEventHandler {
}
@Override
public String getKey() {
public MessageCode getKey() {
return KEY;
}
@@ -47,8 +47,38 @@ public enum MessageCode {
USER_WITHDRAWAL_APPROVED("계정 비활성화", null),
@Deprecated
USER_ACTIVATION("사용자 활성화 완료", null), // 이게 왜...이메일 인증인건데........
;
USER_ACTIVATION("사용자 활성화 완료", null), // 이게 왜...이메일 인증인건데........,
@Deprecated
APP_REGISTER_REQUEST("앱 등록 요청", null),
@Deprecated
UNKNOWN_ERROR("알수 없는 에러 발생", null),
@Deprecated
PASSWORD_RESET_COMPLETE("비밀번호 변경 완료", null),
@Deprecated
REQUEST_PASSWORD_RESET("비밀번호 초기화 요청", null),
@Deprecated // 정확한 용도 모름
USER_REGISTRATION_APPROVED("사용자 등록 승인 완료", null),
@Deprecated // 정확한 용도 모름
USER_REGISTRATION_DENIED("사용자 등록 거절", null),
@Deprecated // 정확한 용도 모름
USER_REGISTRATION_REQUEST_ADMIN("사용자 등록 승인 요청", null),
@Deprecated // 정확한 용도 모름
USER_REGISTRATION_REQUEST_USER("사용자 등록 요청 완료", null),
@Deprecated // 정확한 용도 모름
INQUIRY_CREATED("QnA 질문 등록", null),
@Deprecated
INQUIRY_RESPONSE("QnA 답변 작성", null);
private final String description;
private final String serviceId;
@@ -1,9 +1,11 @@
package com.eactive.apim.portal.template.service;
import com.eactive.apim.portal.template.entity.MessageCode;
import java.util.Map;
public interface MessageEventHandler {
String getKey();
MessageCode getKey();
boolean allowAdditionalRecipients();
@@ -28,15 +28,20 @@ public class MessageHandlerService {
private final MessageSendService messageSendService;
public MessageHandlerService(MessageSendService messageSendService, ApplicationEventPublisher eventPublisher, List<MessageEventHandler> handlerList) {
this.messageSendService = messageSendService;
this.eventPublisher = eventPublisher;
this.handlerList = handlerList;
this.handlers = this.handlerList.stream().collect(Collectors.toMap(MessageEventHandler::getKey, Function.identity()));
this.handlers = this.handlerList.stream()
.collect(Collectors.toMap(
handler -> handler.getKey().name(),
Function.identity()
));
}
public void publishEvent(String key, MessageRecipient recipient, Map<String, Object> params) {
MessageSendEvent event = handlers.get(key).createEvent(this, recipient, params);
public void publishEvent(MessageCode key, MessageRecipient recipient, Map<String, Object> params) {
MessageSendEvent event = handlers.get(key.name()).createEvent(this, recipient, params);
eventPublisher.publishEvent(event);
}
public void publishEvent(MessageSendEvent event) {
@@ -46,7 +51,7 @@ public class MessageHandlerService {
@EventListener
public void handleMessageSendEvent(MessageSendEvent event) {
// messageSendService.sendMessage(event.getMessageType(), event.getRecipient(), event.getParams());
messageSendService.sendMessage(MessageCode.valueOf(event.getMessageType()), event.getRecipient(), event.getParams());
messageSendService.sendMessage(event.getMessageCode(), event.getRecipient(), event.getParams());
}
}
@@ -1,29 +1,23 @@
package com.eactive.apim.portal.template.service;
import com.eactive.apim.portal.template.entity.MessageCode;
import lombok.Data;
import org.springframework.context.ApplicationEvent;
import java.util.Map;
public class MessageSendEvent extends ApplicationEvent {
private String messageType;
private MessageCode messageCode;
private MessageRecipient recipient;
private Map<String, String> params;
public MessageSendEvent(Object source, String messageType, MessageRecipient recipient, Map<String, String> params) {
public MessageSendEvent(Object source, MessageCode messageCode, MessageRecipient recipient, Map<String, String> params) {
super(source);
this.messageType = messageType;
this.messageCode = messageCode;
this.recipient = recipient;
this.params = params;
}
public String getMessageType() {
return messageType;
}
public void setMessageType(String messageType) {
this.messageType = messageType;
}
public MessageRecipient getRecipient() {
return recipient;
}
@@ -39,4 +33,12 @@ public class MessageSendEvent extends ApplicationEvent {
public void setParams(Map<String, String> params) {
this.params = params;
}
public MessageCode getMessageCode() {
return messageCode;
}
public void setMessageCode(MessageCode messageCode) {
this.messageCode = messageCode;
}
}