У меня есть задание, которое создает выходной файл, обычно FTP. Я хочу, чтобы этот файл был записан локально, чтобы к нему можно было перейти на следующем шаге вместо FTP'd
Я провел некоторый поиск и действительно могу найти информацию только по написанию удаленного. Мне нужно написать шаг? Я хочу, чтобы bus567SetupStep
записал файл локально, поэтому bus568SetupStep
может прочитать этот файл и выполнить его. У меня нет необходимости в putFtpStep
@EnableBatchProcessing
public class BusbspaBatchConfiguration {
// tag::jobstep[]
@Bean(name = "mccBUSBSPAjob")
public Job mccEcmPurgejob(JobBuilderFactory jobFactory, //
@Qualifier("bus567SetupStep") Step bus567SetupStep, //
@Qualifier("bus568SetupStep") Step bus568SetupStep, //
@Qualifier("callM204Step") Step callM204Step, //
@Qualifier("putFtpFilesStep") Step putFtpStep, //
@Qualifier("teardownStep") Step teardownStep, //
@Autowired SingleInstanceListener listener) {
return jobFactory.get("mccBUSBSPAjob") //
.incrementer(new RunIdIncrementer()) //
.listener(listener) //
.start(bus567SetupStep) //
.next(callM204Step) //
.next(bus568SetupStep) //
.next(callM204Step) //
.next(putFtpStep) //
.next(teardownStep) //
.build();
}
@Bean(name = "bus567SetupStep")
public Step bus567SetupStep(StepBuilderFactory stepFactory, Bus567SetupTasklet task) {
return stepFactory.get("bus567SetupStep") //
.tasklet(task) //
.allowStartIfComplete(true).build();
}
@Bean(name = "bus568SetupStep")
public Step bus568SetupStep(StepBuilderFactory stepFactory, Bus568SetupTasklet task) {
return stepFactory.get("bus568SetupStep") //
.tasklet(task) //
.allowStartIfComplete(true).build();
}
// end::jobstep[]
}