ckan2zenodo-library/src/main/java/org/gcube/data/publishing/ckan2zenodo/model/zenodo/ZenodoDeposition.java

42 lines
1.0 KiB
Java

package org.gcube.data.publishing.ckan2zenodo.model.zenodo;
import java.net.MalformedURLException;
import java.net.URL;
import java.util.ArrayList;
import java.util.Date;
import com.fasterxml.jackson.annotation.JsonFormat;
import lombok.Data;
import lombok.extern.slf4j.Slf4j;
@Data
@Slf4j
public class ZenodoDeposition {
@JsonFormat(pattern = Commons.ISO_DATE_PATTERN)
private Date created;
private String doi;
private DepositionLinks links;
private ArrayList<FileDeposition> files;
private Integer id;
private DepositionMetadata metadata;
@JsonFormat(pattern = Commons.ISO_DATE_PATTERN)
private Date modified;
private Integer owner;
private Integer record_id;
private URL record_url;
private String state;
private Boolean submitted;
private String title;
public URL getDOIUrl() throws MalformedURLException {
try {
return new URL(links.getConceptdoi());
}catch(Throwable t) {
log.warn("Returned concept link is broken, forming it from doi..");
return new URL("https://doi.org/"+doi);
}
}
}