Merge pull request '[Datasource / Service] datasource_model_eosc' (#16) from datasource_model_eosc into master

Reviewed-on: #16
This commit is contained in:
Claudio Atzori 2022-05-03 11:45:40 +02:00
commit 2f960f6a18
3 changed files with 113 additions and 155 deletions

View File

@ -2,8 +2,9 @@
## Changelog ## Changelog
| **Version** | **Changes** | **Readiness** | | **Version** | **Changes** | **Readiness** |
|-------------|--------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------|---| |-------------|---------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------|---|
| 2.12.0 | [Graph model] </br> <ul><li>Introducing EOSC Services as datasources</li> <ul> | beta |
| 2.11.33 | [Scholexplorer] </br> <ul><li>Moved Scholix API Data model into dhp-schemas</li><li>implementation of the compareTo method on Scholix objects and all model properties</li> <li>Unit Test to verify that compareTo works on different case</li> <ul> | beta | | 2.11.33 | [Scholexplorer] </br> <ul><li>Moved Scholix API Data model into dhp-schemas</li><li>implementation of the compareTo method on Scholix objects and all model properties</li> <li>Unit Test to verify that compareTo works on different case</li> <ul> | beta |
| 2.10.31 | [Minor] </br>NPE checks | beta | | 2.10.31 | [Minor] </br>NPE checks | beta |
| 2.10.30 | [Minor] </br>added comparator for refereed field instances | beta | | 2.10.30 | [Minor] </br>added comparator for refereed field instances | beta |

View File

@ -5,8 +5,7 @@
<groupId>eu.dnetlib.dhp</groupId> <groupId>eu.dnetlib.dhp</groupId>
<artifactId>dhp-schemas</artifactId> <artifactId>dhp-schemas</artifactId>
<packaging>jar</packaging> <packaging>jar</packaging>
<version>2.11.34-SNAPSHOT</version> <version>2.12.0-SNAPSHOT</version>
<licenses> <licenses>
<license> <license>

View File

@ -11,10 +11,16 @@ public class Datasource extends OafEntity implements Serializable {
*/ */
private static final long serialVersionUID = 1019089598408414496L; private static final long serialVersionUID = 1019089598408414496L;
@Deprecated
private Qualifier datasourcetype; private Qualifier datasourcetype;
@Deprecated
private Qualifier datasourcetypeui; private Qualifier datasourcetypeui;
private Qualifier eosctype; // Data Source | Service
private Qualifier eoscdatasourcetype;
private Qualifier openairecompatibility; private Qualifier openairecompatibility;
private Field<String> officialname; private Field<String> officialname;
@ -40,14 +46,21 @@ public class Datasource extends OafEntity implements Serializable {
private List<StructuredProperty> subjects; private List<StructuredProperty> subjects;
// opendoar specific fields (od*) // opendoar specific fields (od*)
@Deprecated
private Field<String> odnumberofitems; private Field<String> odnumberofitems;
@Deprecated
private Field<String> odnumberofitemsdate; private Field<String> odnumberofitemsdate;
@Deprecated
private Field<String> odpolicies; private Field<String> odpolicies;
@Deprecated
private List<Field<String>> odlanguages; private List<Field<String>> odlanguages;
private List<String> languages;
@Deprecated
private List<Field<String>> odcontenttypes; private List<Field<String>> odcontenttypes;
private List<Field<String>> accessinfopackage; private List<Field<String>> accessinfopackage;
@ -59,8 +72,10 @@ public class Datasource extends OafEntity implements Serializable {
private Field<String> missionstatementurl; private Field<String> missionstatementurl;
@Deprecated
private Field<Boolean> dataprovider; private Field<Boolean> dataprovider;
@Deprecated
private Field<Boolean> serviceprovider; private Field<Boolean> serviceprovider;
// {open, restricted or closed} // {open, restricted or closed}
@ -75,23 +90,24 @@ public class Datasource extends OafEntity implements Serializable {
// {feeRequired, registration, other} // {feeRequired, registration, other}
private Field<String> datauploadrestriction; private Field<String> datauploadrestriction;
@Deprecated
private Field<Boolean> versioning; private Field<Boolean> versioning;
private Field<String> citationguidelineurl; private Boolean versioncontrol;
// {yes, no, uknown} private Field<String> citationguidelineurl;
private Field<String> qualitymanagementkind;
private Field<String> pidsystems; private Field<String> pidsystems;
private Field<String> certificates; private Field<String> certificates;
@Deprecated
private List<KeyValue> policies; private List<KeyValue> policies;
private Journal journal; private Journal journal;
// New field for EOSC // New field for EOSC
private List<String> providedentitytypes; private List<String> researchentitytypes;
// New field for EOSC // New field for EOSC
private List<String> providedproducttypes; private List<String> providedproducttypes;
@ -102,18 +118,25 @@ public class Datasource extends OafEntity implements Serializable {
// New field for EOSC // New field for EOSC
private Boolean thematic; private Boolean thematic;
// New field for EOSC
private Boolean knowledgegraph;
// New field for EOSC // New field for EOSC
private List<Qualifier> contentpolicies; private List<Qualifier> contentpolicies;
private String submissionpolicyurl;
private String preservationpolicyurl;
private List<String> researchproductaccesspolicies;
private List<String> researchproductmetadataaccesspolicies;
private Boolean consenttermsofuse; private Boolean consenttermsofuse;
private Boolean fulltextdownload; private Boolean fulltextdownload;
private String consenttermsofusedate; private String consenttermsofusedate;
private String lastconsenttermsofusedate;
public Qualifier getDatasourcetype() { public Qualifier getDatasourcetype() {
return datasourcetype; return datasourcetype;
} }
@ -130,6 +153,22 @@ public class Datasource extends OafEntity implements Serializable {
this.datasourcetypeui = datasourcetypeui; this.datasourcetypeui = datasourcetypeui;
} }
public Qualifier getEosctype() {
return eosctype;
}
public void setEosctype(Qualifier eosctype) {
this.eosctype = eosctype;
}
public Qualifier getEoscdatasourcetype() {
return eoscdatasourcetype;
}
public void setEoscdatasourcetype(Qualifier eoscdatasourcetype) {
this.eoscdatasourcetype = eoscdatasourcetype;
}
public Qualifier getOpenairecompatibility() { public Qualifier getOpenairecompatibility() {
return openairecompatibility; return openairecompatibility;
} }
@ -258,6 +297,14 @@ public class Datasource extends OafEntity implements Serializable {
this.odlanguages = odlanguages; this.odlanguages = odlanguages;
} }
public List<String> getLanguages() {
return languages;
}
public void setLanguages(final List<String> languages) {
this.languages = languages;
}
public List<Field<String>> getOdcontenttypes() { public List<Field<String>> getOdcontenttypes() {
return odcontenttypes; return odcontenttypes;
} }
@ -354,6 +401,14 @@ public class Datasource extends OafEntity implements Serializable {
this.versioning = versioning; this.versioning = versioning;
} }
public Boolean getVersioncontrol() {
return versioncontrol;
}
public void setVersioncontrol(Boolean versioncontrol) {
this.versioncontrol = versioncontrol;
}
public Field<String> getCitationguidelineurl() { public Field<String> getCitationguidelineurl() {
return citationguidelineurl; return citationguidelineurl;
} }
@ -362,14 +417,6 @@ public class Datasource extends OafEntity implements Serializable {
this.citationguidelineurl = citationguidelineurl; this.citationguidelineurl = citationguidelineurl;
} }
public Field<String> getQualitymanagementkind() {
return qualitymanagementkind;
}
public void setQualitymanagementkind(final Field<String> qualitymanagementkind) {
this.qualitymanagementkind = qualitymanagementkind;
}
public Field<String> getPidsystems() { public Field<String> getPidsystems() {
return pidsystems; return pidsystems;
} }
@ -402,12 +449,12 @@ public class Datasource extends OafEntity implements Serializable {
this.journal = journal; this.journal = journal;
} }
public List<String> getProvidedentitytypes() { public List<String> getResearchentitytypes() {
return providedentitytypes; return researchentitytypes;
} }
public void setProvidedentitytypes(final List<String> providedentitytypes) { public void setResearchentitytypes(final List<String> researchentitytypes) {
this.providedentitytypes = providedentitytypes; this.researchentitytypes = researchentitytypes;
} }
public List<String> getProvidedproducttypes() { public List<String> getProvidedproducttypes() {
@ -434,14 +481,6 @@ public class Datasource extends OafEntity implements Serializable {
this.thematic = thematic; this.thematic = thematic;
} }
public Boolean getKnowledgegraph() {
return knowledgegraph;
}
public void setKnowledgegraph(final Boolean knowledgegraph) {
this.knowledgegraph = knowledgegraph;
}
public List<Qualifier> getContentpolicies() { public List<Qualifier> getContentpolicies() {
return contentpolicies; return contentpolicies;
} }
@ -450,19 +489,59 @@ public class Datasource extends OafEntity implements Serializable {
this.contentpolicies = contentpolicies; this.contentpolicies = contentpolicies;
} }
public String getSubmissionpolicyurl() {
return submissionpolicyurl;
}
public void setSubmissionpolicyurl(String submissionpolicyurl) {
this.submissionpolicyurl = submissionpolicyurl;
}
public String getPreservationpolicyurl() {
return preservationpolicyurl;
}
public void setPreservationpolicyurl(String preservationpolicyurl) {
this.preservationpolicyurl = preservationpolicyurl;
}
public List<String> getResearchproductaccesspolicies() {
return researchproductaccesspolicies;
}
public void setResearchproductaccesspolicies(List<String> researchproductaccesspolicies) {
this.researchproductaccesspolicies = researchproductaccesspolicies;
}
public List<String> getResearchproductmetadataaccesspolicies() {
return researchproductmetadataaccesspolicies;
}
public void setResearchproductmetadataaccesspolicies(List<String> researchproductmetadataaccesspolicies) {
this.researchproductmetadataaccesspolicies = researchproductmetadataaccesspolicies;
}
public Boolean getConsenttermsofuse() { public Boolean getConsenttermsofuse() {
return consenttermsofuse; return consenttermsofuse;
} }
public void setConsenttermsofuse(Boolean consenttermsofuse) { public void setConsenttermsofuse(final Boolean consenttermsofuse) {
this.consenttermsofuse = consenttermsofuse; this.consenttermsofuse = consenttermsofuse;
} }
public String getLastconsenttermsofusedate() {
return lastconsenttermsofusedate;
}
public void setLastconsenttermsofusedate(String lastconsenttermsofusedate) {
this.lastconsenttermsofusedate = lastconsenttermsofusedate;
}
public Boolean getFulltextdownload() { public Boolean getFulltextdownload() {
return fulltextdownload; return fulltextdownload;
} }
public void setFulltextdownload(Boolean fulltextdownload) { public void setFulltextdownload(final Boolean fulltextdownload) {
this.fulltextdownload = fulltextdownload; this.fulltextdownload = fulltextdownload;
} }
@ -470,134 +549,13 @@ public class Datasource extends OafEntity implements Serializable {
return consenttermsofusedate; return consenttermsofusedate;
} }
public void setConsenttermsofusedate(String consenttermsofusedate) { public void setConsenttermsofusedate(final String consenttermsofusedate) {
this.consenttermsofusedate = consenttermsofusedate; this.consenttermsofusedate = consenttermsofusedate;
} }
@Override @Override
public void mergeFrom(final OafEntity e) { public void mergeFrom(final OafEntity e) {
super.mergeFrom(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);
} }
} }