본문으로 건너뛰기

스케줄 프로그램

프로그램용도구현할 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;
}

}