스케줄 프로그램
프로그램용도 | 구현할 Java인터페이스 | 적용할 설정화면 |
---|---|---|
스케줄프로그램 | AbstractJobProcessor | 인터페이스관리>스케줄정보 |
스케줄 처리 시, 수행 전 & 후 & 에러 처리에 실행될 사용자 프로그램을 개발하여 적용할 수 있다.
개발방법
스케줄 처리 전에 호출된다.
public boolean preProcess(JobProcessIn in);
스케줄을 처리한다.
public void process(JobProcessIn in);
스케줄 처리 후에 호출된다.
public boolean postProcess(JobProcessIn in) throws Exception;
전체 예제
package bxi.extension.customizing.api;
import org.slf4j.Logger;
import org.slf4j.LoggerFactory;
import org.springframework.stereotype.Component;
import bxi.api.AbstractJobProcessor;
import bxi.common.utility.StringUtil;
/**
*
* @author
* @history
* 2018. 1. 29. User Job Scheduler
*/
@Component
public class EventJobProcessor extends AbstractJobProcessor {
private final Logger logger = LoggerFactory.getLogger(this.getClass());
/*
* (non-Javadoc)
*
* @see bxi.api.AbstractJobProcessor#preProcess()
*/
@Override
public boolean preProcess(JobProcessIn in) throws Exception {
logger.debug("preProcess in");
return false;
}
/*
* (non-Javadoc)
*
* @see bxi.api.AbstractJobProcessor#process()
*/
@Override
public void process(JobProcessIn in) throws Exception {
String jobGrpId = in.getSchedulerGroupId();
String jobId = in.getJobId();
String param = in.getJobParameter();
logger.debug("jobGrpId: [{}], jobId: [{}]", jobGrpId, jobId);
if (!StringUtil.isEmpty(param)) {
logger.debug("param: [{}]", param);
}
}
/*
* (non-Javadoc)
*
* @see bxi.api.AbstractJobProcessor#postProcess()
*/
@Override
public boolean postProcess(JobProcessIn in) throws Exception {
logger.debug("postProcess in");
return false;
}
}