package net.codjo.dataprocess.server.plugin;
import net.codjo.control.server.plugin.ControlServerPlugin;
import net.codjo.dataprocess.common.DataProcessConstants;
import net.codjo.dataprocess.common.message.DataProcessJobRequest;
import net.codjo.imports.common.message.ImportJobAuditArgument;
import net.codjo.workflow.common.message.JobRequest;
import net.codjo.workflow.common.message.ScheduleContract;
import net.codjo.workflow.server.api.ScheduleAgent;
/**
*
*/
public class AfterControlScheduleAgent extends ScheduleAgent {
public AfterControlScheduleAgent() {
super(new LaunchDataProcessAfterImport());
}
private static class LaunchDataProcessAfterImport extends ScheduleAgent.AbstractHandler
implements ImportJobAuditArgument {
public boolean acceptContract(ScheduleContract contract) {
JobRequest request = contract.getRequest();
return ControlServerPlugin.CONTROL_REQUEST_TYPE.equals(request.getType());
}
public JobRequest createNextRequest(ScheduleContract contract) {
DataProcessJobRequest request = new DataProcessJobRequest();
request.setDataProcessJobType(DataProcessConstants.BATCH_JOB_TYPE);
return request.toRequest();
}
}
}