package egovframework.brte.sample.example.listener; import org.apache.commons.logging.Log; import org.apache.commons.logging.LogFactory; import org.springframework.batch.core.ExitStatus; import org.springframework.batch.core.StepExecution; import org.springframework.beans.factory.annotation.Autowired; import egovframework.rte.bat.core.listener.EgovStepPostProcessor; import egovframework.brte.sample.example.event.EgovEmailEventNoticeTrigger; /** * 이벤트 알림을 호출 하는 리스너 클래스 빈으로 등록된 * EgovSmsEventNoticeTrigger, EgovEmailEventNoticeTrigger 를 사용 현재 Sms 서비스는 별도 신청후 사용하는 시스템이므로 Sample 에서는 * Email 예제만 제공 (Sms 관련은 주석처리 하였음) * * @author 배치실행개발팀 * @since 2012.06.27 * @version 1.0 * @see <pre> * 개정이력(Modification Information) * * 수정일 수정자 수정내용 * ------- -------- --------------------------- * 2012.06.27 배치실행개발팀 최초 생성 * </pre> */ public class EgovEventNoticeCallProcessor<T, S> extends EgovStepPostProcessor<T, S> { protected Log log = LogFactory.getLog(this.getClass()); // @Autowired // EgovSmsEventNoticeTrigger smsEventNoticeTrigger; @Autowired EgovEmailEventNoticeTrigger egovEmailEventNoticeTrigger; /** * Step 수행 완료 후, SMS 혹은 전자우편을 전송하기 위한 invoke를 수행 */ public ExitStatus afterStep(StepExecution stepExecution) { // SMS서비스이용 // smsEventNoticeTrigger.invoke(stepExecution); // 전자우편서비스이용 egovEmailEventNoticeTrigger.invoke(stepExecution); // 수행결과에 따른 상태값 변경 return stepExecution.getExitStatus(); } }