simpleOaiCollectorService/src/main/java/eu/dnetlib/apps/Oai2ftp/service/CollectionJob.java

47 lines
1.1 KiB
Java

package eu.dnetlib.apps.oai2ftp.service;
import java.time.LocalDateTime;
import java.util.function.BiConsumer;
import java.util.function.Consumer;
import eu.dnetlib.apps.oai2ftp.model.CollectionStatus;
import eu.dnetlib.apps.oai2ftp.model.ExecutionStatus;
public class CollectionJob {
private final CollectionStatus status;
private final BiConsumer<String, String> saveRecord;
private final Consumer<CollectionStatus> onEnd;
public CollectionJob(final String id, final String baseUrl, final String format, final String setSpec, final BiConsumer<String, String> saveRecord,
final Consumer<CollectionStatus> onEnd) {
this.status = new CollectionStatus();
status.setId(id);
status.setBaseUrl(baseUrl);
status.setFormat(format);
status.setSetSpec(setSpec);
status.setStart(LocalDateTime.now());
status.setEnd(null);
status.setExecutionStatus(ExecutionStatus.READY);
status.setTotal(0);
status.setMessage("");
this.saveRecord = saveRecord;
this.onEnd = onEnd;
}
public void oaiCollect() {
// TODO
}
public CollectionStatus getStatus() {
return status;
}
}