Java 类org.springframework.batch.core.job.flow.JobExecutionDecider 实例源码

项目:nixmash-blog    文件:DemoJobConfiguration.java   
@Bean
public JobExecutionDecider decideIfGoodToContinue() {
    return new JobExecutionDecider() {

        int iteration = 0;

        @Override
        public FlowExecutionStatus decide(JobExecution jobExecution, StepExecution stepExecution) {
            long postId = 0;
            try {
                postId = jobExecution.getExecutionContext().getLong("postId");
            } catch (Exception e) {
                logger.info("FlowExecution Exception: " + e.getMessage());
            }

            long iterations = jobExecution.getJobParameters().getLong("iterations");
            if(iteration < iterations) {
                logger.info("ITERATING... POSTID = " + postId);
                iteration++;
                return YES;
            } else {
                logger.info("REPEATED 2X's. SKIPPING OPTIONAL STEP");
                return NO;
            }
        }
    };
}
项目:spring-batch-experiments    文件:JobStructureComplexConfiguration.java   
@Bean
public JobExecutionDecider skippedDecider() {
    return new SkippedDecider();
}
项目:spring-batch-experiments    文件:JobStructureSimpleConfiguration.java   
@Bean
public JobExecutionDecider skippedDecider() {
    return new SkippedDecider();
}