package eu.dnetlib.dhp.schema.oaf; import java.io.Serializable; import java.util.List; public class Datasource extends OafEntity implements Serializable { /** * */ private static final long serialVersionUID = 1019089598408414496L; private Qualifier datasourcetype; private Qualifier datasourcetypeui; private Qualifier openairecompatibility; private Field officialname; private Field englishname; private Field websiteurl; private Field logourl; private Field contactemail; private Field namespaceprefix; private Field latitude; private Field longitude; private Field dateofvalidation; private Field description; private List subjects; // opendoar specific fields (od*) private Field odnumberofitems; private Field odnumberofitemsdate; private Field odpolicies; private List> odlanguages; private List> odcontenttypes; private List> accessinfopackage; // re3data fields private Field releasestartdate; private Field releaseenddate; private Field missionstatementurl; private Field dataprovider; private Field serviceprovider; // {open, restricted or closed} private Field databaseaccesstype; // {open, restricted or closed} private Field datauploadtype; // {feeRequired, registration, other} private Field databaseaccessrestriction; // {feeRequired, registration, other} private Field datauploadrestriction; private Field versioning; private Field citationguidelineurl; // {yes, no, uknown} private Field qualitymanagementkind; private Field pidsystems; private Field certificates; private List policies; private Journal journal; // New field for EOSC private List providedentitytypes; // New field for EOSC private List providedproducttypes; // New field for EOSC private Qualifier jurisdiction; // New field for EOSC private Boolean thematic; // New field for EOSC private Boolean knowledgegraph; // New field for EOSC private List contentpolicies; public Qualifier getDatasourcetype() { return datasourcetype; } public void setDatasourcetype(final Qualifier datasourcetype) { this.datasourcetype = datasourcetype; } public Qualifier getDatasourcetypeui() { return datasourcetypeui; } public void setDatasourcetypeui(final Qualifier datasourcetypeui) { this.datasourcetypeui = datasourcetypeui; } public Qualifier getOpenairecompatibility() { return openairecompatibility; } public void setOpenairecompatibility(final Qualifier openairecompatibility) { this.openairecompatibility = openairecompatibility; } public Field getOfficialname() { return officialname; } public void setOfficialname(final Field officialname) { this.officialname = officialname; } public Field getEnglishname() { return englishname; } public void setEnglishname(final Field englishname) { this.englishname = englishname; } public Field getWebsiteurl() { return websiteurl; } public void setWebsiteurl(final Field websiteurl) { this.websiteurl = websiteurl; } public Field getLogourl() { return logourl; } public void setLogourl(final Field logourl) { this.logourl = logourl; } public Field getContactemail() { return contactemail; } public void setContactemail(final Field contactemail) { this.contactemail = contactemail; } public Field getNamespaceprefix() { return namespaceprefix; } public void setNamespaceprefix(final Field namespaceprefix) { this.namespaceprefix = namespaceprefix; } public Field getLatitude() { return latitude; } public void setLatitude(final Field latitude) { this.latitude = latitude; } public Field getLongitude() { return longitude; } public void setLongitude(final Field longitude) { this.longitude = longitude; } public Field getDateofvalidation() { return dateofvalidation; } public void setDateofvalidation(final Field dateofvalidation) { this.dateofvalidation = dateofvalidation; } public Field getDescription() { return description; } public void setDescription(final Field description) { this.description = description; } public List getSubjects() { return subjects; } public void setSubjects(final List subjects) { this.subjects = subjects; } public Field getOdnumberofitems() { return odnumberofitems; } public void setOdnumberofitems(final Field odnumberofitems) { this.odnumberofitems = odnumberofitems; } public Field getOdnumberofitemsdate() { return odnumberofitemsdate; } public void setOdnumberofitemsdate(final Field odnumberofitemsdate) { this.odnumberofitemsdate = odnumberofitemsdate; } public Field getOdpolicies() { return odpolicies; } public void setOdpolicies(final Field odpolicies) { this.odpolicies = odpolicies; } public List> getOdlanguages() { return odlanguages; } public void setOdlanguages(final List> odlanguages) { this.odlanguages = odlanguages; } public List> getOdcontenttypes() { return odcontenttypes; } public void setOdcontenttypes(final List> odcontenttypes) { this.odcontenttypes = odcontenttypes; } public List> getAccessinfopackage() { return accessinfopackage; } public void setAccessinfopackage(final List> accessinfopackage) { this.accessinfopackage = accessinfopackage; } public Field getReleasestartdate() { return releasestartdate; } public void setReleasestartdate(final Field releasestartdate) { this.releasestartdate = releasestartdate; } public Field getReleaseenddate() { return releaseenddate; } public void setReleaseenddate(final Field releaseenddate) { this.releaseenddate = releaseenddate; } public Field getMissionstatementurl() { return missionstatementurl; } public void setMissionstatementurl(final Field missionstatementurl) { this.missionstatementurl = missionstatementurl; } public Field getDataprovider() { return dataprovider; } public void setDataprovider(final Field dataprovider) { this.dataprovider = dataprovider; } public Field getServiceprovider() { return serviceprovider; } public void setServiceprovider(final Field serviceprovider) { this.serviceprovider = serviceprovider; } public Field getDatabaseaccesstype() { return databaseaccesstype; } public void setDatabaseaccesstype(final Field databaseaccesstype) { this.databaseaccesstype = databaseaccesstype; } public Field getDatauploadtype() { return datauploadtype; } public void setDatauploadtype(final Field datauploadtype) { this.datauploadtype = datauploadtype; } public Field getDatabaseaccessrestriction() { return databaseaccessrestriction; } public void setDatabaseaccessrestriction(final Field databaseaccessrestriction) { this.databaseaccessrestriction = databaseaccessrestriction; } public Field getDatauploadrestriction() { return datauploadrestriction; } public void setDatauploadrestriction(final Field datauploadrestriction) { this.datauploadrestriction = datauploadrestriction; } public Field getVersioning() { return versioning; } public void setVersioning(final Field versioning) { this.versioning = versioning; } public Field getCitationguidelineurl() { return citationguidelineurl; } public void setCitationguidelineurl(final Field citationguidelineurl) { this.citationguidelineurl = citationguidelineurl; } public Field getQualitymanagementkind() { return qualitymanagementkind; } public void setQualitymanagementkind(final Field qualitymanagementkind) { this.qualitymanagementkind = qualitymanagementkind; } public Field getPidsystems() { return pidsystems; } public void setPidsystems(final Field pidsystems) { this.pidsystems = pidsystems; } public Field getCertificates() { return certificates; } public void setCertificates(final Field certificates) { this.certificates = certificates; } public List getPolicies() { return policies; } public void setPolicies(final List policies) { this.policies = policies; } public Journal getJournal() { return journal; } public void setJournal(final Journal journal) { this.journal = journal; } public List getProvidedentitytypes() { return providedentitytypes; } public void setProvidedentitytypes(final List providedentitytypes) { this.providedentitytypes = providedentitytypes; } public List getProvidedproducttypes() { return providedproducttypes; } public void setProvidedproducttypes(final List providedproducttypes) { this.providedproducttypes = providedproducttypes; } public Qualifier getJurisdiction() { return jurisdiction; } public void setJurisdiction(final Qualifier jurisdiction) { this.jurisdiction = jurisdiction; } public Boolean getThematic() { return thematic; } public void setThematic(final Boolean thematic) { this.thematic = thematic; } public Boolean getKnowledgegraph() { return knowledgegraph; } public void setKnowledgegraph(final Boolean knowledgegraph) { this.knowledgegraph = knowledgegraph; } public List getContentpolicies() { return contentpolicies; } public void setContentpolicies(final List contentpolicies) { this.contentpolicies = contentpolicies; } @Override public void mergeFrom(final OafEntity e) { super.mergeFrom(e); if (!Datasource.class.isAssignableFrom(e.getClass())) { return; } final Datasource d = (Datasource) e; datasourcetype = d.getDatasourcetype() != null && compareTrust(this, e) < 0 ? d.getDatasourcetype() : datasourcetype; datasourcetypeui = d.getDatasourcetypeui() != null && compareTrust(this, e) < 0 ? d.getDatasourcetypeui() : datasourcetypeui; openairecompatibility = d.getOpenairecompatibility() != null && compareTrust(this, e) < 0 ? d.getOpenairecompatibility() : openairecompatibility; officialname = d.getOfficialname() != null && compareTrust(this, e) < 0 ? d.getOfficialname() : officialname; englishname = d.getEnglishname() != null && compareTrust(this, e) < 0 ? d.getEnglishname() : officialname; websiteurl = d.getWebsiteurl() != null && compareTrust(this, e) < 0 ? d.getWebsiteurl() : websiteurl; logourl = d.getLogourl() != null && compareTrust(this, e) < 0 ? d.getLogourl() : getLogourl(); contactemail = d.getContactemail() != null && compareTrust(this, e) < 0 ? d.getContactemail() : contactemail; namespaceprefix = d.getNamespaceprefix() != null && compareTrust(this, e) < 0 ? d.getNamespaceprefix() : namespaceprefix; latitude = d.getLatitude() != null && compareTrust(this, e) < 0 ? d.getLatitude() : latitude; longitude = d.getLongitude() != null && compareTrust(this, e) < 0 ? d.getLongitude() : longitude; dateofvalidation = d.getDateofvalidation() != null && compareTrust(this, e) < 0 ? d.getDateofvalidation() : dateofvalidation; description = d.getDescription() != null && compareTrust(this, e) < 0 ? d.getDescription() : description; subjects = mergeLists(subjects, d.getSubjects()); // opendoar specific fields (od*) odnumberofitems = d.getOdnumberofitems() != null && compareTrust(this, e) < 0 ? d.getOdnumberofitems() : odnumberofitems; odnumberofitemsdate = d.getOdnumberofitemsdate() != null && compareTrust(this, e) < 0 ? d.getOdnumberofitemsdate() : odnumberofitemsdate; odpolicies = d.getOdpolicies() != null && compareTrust(this, e) < 0 ? d.getOdpolicies() : odpolicies; odlanguages = mergeLists(odlanguages, d.getOdlanguages()); odcontenttypes = mergeLists(odcontenttypes, d.getOdcontenttypes()); accessinfopackage = mergeLists(accessinfopackage, d.getAccessinfopackage()); // re3data fields releasestartdate = d.getReleasestartdate() != null && compareTrust(this, e) < 0 ? d.getReleasestartdate() : releasestartdate; releaseenddate = d.getReleaseenddate() != null && compareTrust(this, e) < 0 ? d.getReleaseenddate() : releaseenddate; missionstatementurl = d.getMissionstatementurl() != null && compareTrust(this, e) < 0 ? d.getMissionstatementurl() : missionstatementurl; dataprovider = d.getDataprovider() != null && compareTrust(this, e) < 0 ? d.getDataprovider() : dataprovider; serviceprovider = d.getServiceprovider() != null && compareTrust(this, e) < 0 ? d.getServiceprovider() : serviceprovider; // {open, restricted or closed} databaseaccesstype = d.getDatabaseaccesstype() != null && compareTrust(this, e) < 0 ? d.getDatabaseaccesstype() : databaseaccesstype; // {open, restricted or closed} datauploadtype = d.getDatauploadtype() != null && compareTrust(this, e) < 0 ? d.getDatauploadtype() : datauploadtype; // {feeRequired, registration, other} databaseaccessrestriction = d.getDatabaseaccessrestriction() != null && compareTrust(this, e) < 0 ? d.getDatabaseaccessrestriction() : databaseaccessrestriction; // {feeRequired, registration, other} datauploadrestriction = d.getDatauploadrestriction() != null && compareTrust(this, e) < 0 ? d.getDatauploadrestriction() : datauploadrestriction; versioning = d.getVersioning() != null && compareTrust(this, e) < 0 ? d.getVersioning() : versioning; citationguidelineurl = d.getCitationguidelineurl() != null && compareTrust(this, e) < 0 ? d.getCitationguidelineurl() : citationguidelineurl; // {yes, no, unknown} qualitymanagementkind = d.getQualitymanagementkind() != null && compareTrust(this, e) < 0 ? d.getQualitymanagementkind() : qualitymanagementkind; pidsystems = d.getPidsystems() != null && compareTrust(this, e) < 0 ? d.getPidsystems() : pidsystems; certificates = d.getCertificates() != null && compareTrust(this, e) < 0 ? d.getCertificates() : certificates; policies = mergeLists(policies, d.getPolicies()); journal = d.getJournal() != null && compareTrust(this, e) < 0 ? d.getJournal() : journal; providedentitytypes = mergeLists(providedentitytypes, d.getProvidedentitytypes());; providedproducttypes = mergeLists(providedproducttypes, d.getProvidedproducttypes());; jurisdiction = d.getJurisdiction() != null && compareTrust(this, e) < 0 ? d.getJurisdiction() : jurisdiction; thematic = d.getThematic() != null && compareTrust(this, e) < 0 ? d.getThematic() : thematic; knowledgegraph = d.getKnowledgegraph() != null && compareTrust(this, e) < 0 ? d.getKnowledgegraph() : knowledgegraph; contentpolicies = mergeLists(contentpolicies, d.getContentpolicies());; mergeOAFDataInfo(e); } }