AbstractProcessInvalidCatalog.java

package com.sintia.ffl.admin.optique.catalogue.batch.tasklet;

import com.sintia.ffl.admin.optique.catalogue.batch.reporter.AbstractInvalidCatalogReporter;
import org.springframework.batch.core.StepContribution;
import org.springframework.batch.core.scope.context.ChunkContext;
import org.springframework.batch.core.step.tasklet.Tasklet;
import org.springframework.batch.repeat.RepeatStatus;

import java.util.Date;

public abstract class AbstractProcessInvalidCatalog implements Tasklet {

	private String	catalogDate;
	private String	catalogLabel;
	private String	catalogMaker;
	private String	catalogProvider;
	private Date	scriptDate;

	public AbstractProcessInvalidCatalog(String catalogDate, String catalogLabel, String catalogMaker, String catalogProvider, Date scriptDate) {
		this.catalogDate = catalogDate;
		this.catalogLabel = catalogLabel;
		this.catalogMaker = catalogMaker;
		this.catalogProvider = catalogProvider;
		this.scriptDate = scriptDate;
	}

	@Override
	public RepeatStatus execute(StepContribution contribution, ChunkContext chunkContext)
		throws Exception {

		getReporter().init(this.scriptDate, this.catalogMaker, this.catalogProvider, this.catalogLabel, this.catalogDate);
		return RepeatStatus.FINISHED;
	}

	protected abstract AbstractInvalidCatalogReporter getReporter();
}