FileJobBean super class 변경
parent
7c136b90bf
commit
1a08178bd0
@ -1,41 +0,0 @@
|
|||||||
package cokr.xit.interfaces.filejob.service.bean;
|
|
||||||
|
|
||||||
import java.util.function.Supplier;
|
|
||||||
|
|
||||||
import cokr.xit.foundation.component.AbstractServiceBean;
|
|
||||||
|
|
||||||
/**수신 파일의 처리, 파일의 생성/전송을 수행하는 서비스 구현체가 상속받는 베이스 클래스
|
|
||||||
* @author mjkhan
|
|
||||||
*/
|
|
||||||
public class FileJobServiceBean extends AbstractServiceBean {
|
|
||||||
/**주어진 작업을 수행한다. fileJob이 작업 중이면 무시한다.
|
|
||||||
* @param fileJob 파일 작업 Bean
|
|
||||||
* @param task 파일 작업 Bean의 메소드
|
|
||||||
*/
|
|
||||||
protected void execute(FileJobBean fileJob, Runnable task) {
|
|
||||||
if (fileJob.isBusy()) return;
|
|
||||||
|
|
||||||
fileJob.setBusy(true);
|
|
||||||
try {
|
|
||||||
task.run();
|
|
||||||
} finally {
|
|
||||||
fileJob.setBusy(false);
|
|
||||||
}
|
|
||||||
}
|
|
||||||
|
|
||||||
/**주어진 작업을 수행하고 결과를 반환한다. fileJob이 작업 중이면 무시하고 null을 반환한다.
|
|
||||||
* @param fileJob 파일 작업 Bean
|
|
||||||
* @param task 파일 작업 Bean의 메소드
|
|
||||||
* @return 작업 결과
|
|
||||||
*/
|
|
||||||
protected <T> T execute(FileJobBean fileJob, Supplier<T> task) {
|
|
||||||
if (fileJob.isBusy()) return null;
|
|
||||||
|
|
||||||
fileJob.setBusy(true);
|
|
||||||
try {
|
|
||||||
return task.get();
|
|
||||||
} finally {
|
|
||||||
fileJob.setBusy(false);
|
|
||||||
}
|
|
||||||
}
|
|
||||||
}
|
|
Loading…
Reference in New Issue