Package com.easydesk.notification
Class DefaultNotificationManager
java.lang.Object
com.easydesk.notification.DefaultNotificationManager
- All Implemented Interfaces:
NotificationManager
- Direct Known Subclasses:
BatchNotificationManager
Notificator Plugin 이다. 발송장치(
Notificator)들을 Spring 이 주입해 준 bean 에서 찾아 쓴다.
Spring 전환 요약: Turbine 설정으로 class 이름을 읽어 Class.forName().newInstance() 하던 부분, Avalon
PoolService 로 l10n/link/staticLink/renderer 를 빌려오던 부분, Turbine Pull global context 를 복사하던 부분을 모두
제거했다. link/staticLink 는 메일을 만드는 쪽(EmailTemplateService)에서 만들고, 다국어는 Thymeleaf 의
#{key} 를 쓴다.
- Author:
- Youncho Cho
-
Constructor Summary
Constructors -
Method Summary
Modifier and TypeMethodDescriptionprotected NotificationContextgetNotificationContext(Item item, EasyDeskUser receiver) Item 의 정보를 같는 NotificationContext 를 만든다.protected NotificatorgetNotificator(NotificationManagerEnum managerType) 발송장치를 구한다.protected NotificatorgetNotificator(AttributeOption managerOption) attributeOption(발송장치)에 해당하는 발송장치를 구한다.voidnotificate 한다.voidnotified(NotificationManagerEnum managerType, NotificationStatus.Status statusEnum, Collection<NotificationStatus> statuss) set SENTvoidrequestFinished(NotificationContext context) 예전에 context tool 들을 object pool 에 반납하던 자리.
-
Constructor Details
-
DefaultNotificationManager
public DefaultNotificationManager()
-
-
Method Details
-
notificate
public void notificate()Description copied from interface:NotificationManagernotificate 한다.- Specified by:
notificatein interfaceNotificationManager
-
getNotificator
발송장치를 구한다.- Parameters:
managerType- 발송장치 종류- Returns:
- 해당 Notificator
- Throws:
IllegalStateException- 해당 발송장치가 등록되어 있지 않을 때 (예: 더 이상 지원하지 않는 PlainNTManager)
-
getNotificator
attributeOption(발송장치)에 해당하는 발송장치를 구한다. -
notified
public void notified(NotificationManagerEnum managerType, NotificationStatus.Status statusEnum, Collection<NotificationStatus> statuss) throws Exception set SENT- Specified by:
notifiedin interfaceNotificationManager- Parameters:
managerType- 발송장치statusEnum- 결과 상태statuss- 대상 NotificationStatus- Throws:
Exception
-
getNotificationContext
protected NotificationContext getNotificationContext(Item item, EasyDeskUser receiver) throws Exception Item 의 정보를 같는 NotificationContext 를 만든다.- Parameters:
item-receiver-- Returns:
- NotificationContext
- Throws:
Exception
-
requestFinished
예전에 context tool 들을 object pool 에 반납하던 자리. 이제 반납할 것이 없어서 아무 일도 하지 않는다 (호출하는 쪽 호환용).- Parameters:
context- Context
-