44 lines
1.5 KiB
Java
44 lines
1.5 KiB
Java
package eu.dnetlib.apps.oai2ftp.utils;
|
|
|
|
import org.apache.commons.codec.digest.DigestUtils;
|
|
|
|
import eu.dnetlib.apps.oai2ftp.model.CollectionLogEntry;
|
|
import eu.dnetlib.apps.oai2ftp.model.CollectionStatus;
|
|
import eu.dnetlib.apps.oai2ftp.model.ExecutionStatus;
|
|
|
|
public class ConvertUtils {
|
|
|
|
public static CollectionStatus logToStatus(final CollectionLogEntry log) {
|
|
final CollectionStatus status = new CollectionStatus();
|
|
status.setId(log.getId());
|
|
status.setBaseUrl(log.getBaseUrl());
|
|
status.setFormat(log.getFormat());
|
|
status.setSetSpec(log.getSetSpec());
|
|
status.setStart(log.getStart());
|
|
status.setEnd(log.getEnd());
|
|
status.setExecutionStatus(log.isSuccess() ? ExecutionStatus.COMPLETED : ExecutionStatus.FAILED);
|
|
status.setTotal(log.getTotal());
|
|
status.setMessage(log.getMessage());
|
|
return status;
|
|
}
|
|
|
|
public static CollectionLogEntry statusToLog(final CollectionStatus status) {
|
|
final CollectionLogEntry log = new CollectionLogEntry();
|
|
log.setId(status.getId());
|
|
log.setBaseUrl(status.getBaseUrl());
|
|
log.setFormat(status.getFormat());
|
|
log.setSetSpec(status.getSetSpec());
|
|
log.setStart(status.getStart());
|
|
log.setEnd(status.getEnd());
|
|
log.setSuccess(status.getExecutionStatus() == ExecutionStatus.COMPLETED);
|
|
log.setTotal(status.getTotal());
|
|
log.setNumberOfCalls(status.getCalls().size());
|
|
log.setMessage(status.getMessage());
|
|
return log;
|
|
}
|
|
|
|
public static String oaiIdToFilename(final String id) {
|
|
return DigestUtils.md5Hex(id) + ".xml";
|
|
}
|
|
}
|