Fixes bug on external urls on not setting the first page properly. Configures external urls with official data.

This commit is contained in:
gkolokythas 2019-10-04 14:33:38 +03:00
parent e41163878d
commit 4d1f64088c
5 changed files with 367 additions and 376 deletions

View File

@ -127,7 +127,6 @@ public class GrantManager {
List<eu.eudat.models.data.grant.Grant> grants = authItems.select(item -> new Grant().fromDataModel(item)); List<eu.eudat.models.data.grant.Grant> grants = authItems.select(item -> new Grant().fromDataModel(item));
ExternalUrlCriteria externalUrlCriteria = new ExternalUrlCriteria(grantCriteria.getCriteria().getLike()); ExternalUrlCriteria externalUrlCriteria = new ExternalUrlCriteria(grantCriteria.getCriteria().getLike());
if (externalUrlCriteria.getPage() == null) externalUrlCriteria.setPage("0");
if (grantCriteria.getCriteria().getFunderReference() != null) externalUrlCriteria.setFunderId(grantCriteria.getCriteria().getFunderReference()); if (grantCriteria.getCriteria().getFunderReference() != null) externalUrlCriteria.setFunderId(grantCriteria.getCriteria().getFunderReference());
List<Map<String, String>> remoteRepos = remoteFetcher.getGrants(externalUrlCriteria); List<Map<String, String>> remoteRepos = remoteFetcher.getGrants(externalUrlCriteria);

View File

@ -1,24 +0,0 @@
package eu.eudat.logic.proxy.config;
import javax.xml.bind.annotation.XmlElement;
public class DataPageConfiguration {
private String type;
private String pageParam;
public String getType() {
return type;
}
@XmlElement(name = "type")
public void setType(String type) {
this.type = type;
}
public String getPageParam() {
return pageParam;
}
@XmlElement(name = "pageparam")
public void setPageParam(String pageParam) {
this.pageParam = pageParam;
}
}

View File

@ -14,6 +14,7 @@ public class UrlConfiguration {
private String paginationPath; private String paginationPath;
private String contentType; private String contentType;
private String funderQuery; private String funderQuery;
private String firstpage;
public String getKey() { public String getKey() {
return key; return key;
@ -86,4 +87,12 @@ public class UrlConfiguration {
public void setFunderQuery(String funderQuery) { public void setFunderQuery(String funderQuery) {
this.funderQuery = funderQuery; this.funderQuery = funderQuery;
} }
public String getFirstpage() {
return firstpage;
}
@XmlElement(name = "firstPage")
public void setFirstpage(String firstpage) {
this.firstpage = firstpage;
}
} }

View File

@ -131,7 +131,7 @@ public class RemoteFetcher {
for (UrlConfiguration urlConfig : urlConfigs) { for (UrlConfiguration urlConfig : urlConfigs) {
ifFunderQueryExist(urlConfig, externalUrlCriteria); ifFunderQueryExist(urlConfig, externalUrlCriteria);
if (urlConfig.getType() == null || urlConfig.getType().equals("External")) { if (urlConfig.getType() == null || urlConfig.getType().equals("External")) {
results.addAll(getAllResultsFromUrl(urlConfig.getUrl(), fetchStrategy, urlConfig.getData(), urlConfig.getPaginationPath(), externalUrlCriteria, urlConfig.getLabel(), urlConfig.getContentType())); results.addAll(getAllResultsFromUrl(urlConfig.getUrl(), fetchStrategy, urlConfig.getData(), urlConfig.getPaginationPath(), externalUrlCriteria, urlConfig.getLabel(), urlConfig.getContentType(), urlConfig.getFirstpage()));
} else if (urlConfig.getType() != null && urlConfig.getType().equals("Internal")) { } else if (urlConfig.getType() != null && urlConfig.getType().equals("Internal")) {
results.addAll(getAllResultsFromMockUpJson(urlConfig.getUrl(), externalUrlCriteria.getLike())); results.addAll(getAllResultsFromMockUpJson(urlConfig.getUrl(), externalUrlCriteria.getLike()));
} }
@ -150,7 +150,7 @@ public class RemoteFetcher {
} }
} }
private String replaceCriteriaOnUrl(String path, ExternalUrlCriteria externalUrlCriteria) { private String replaceCriteriaOnUrl(String path, ExternalUrlCriteria externalUrlCriteria, String firstPage) {
String completedPath = path; String completedPath = path;
if (externalUrlCriteria.getLike() != null) { if (externalUrlCriteria.getLike() != null) {
if (path.contains("openaire") && externalUrlCriteria.getLike().equals("")) if (path.contains("openaire") && externalUrlCriteria.getLike().equals(""))
@ -172,7 +172,11 @@ public class RemoteFetcher {
if (externalUrlCriteria.getPage() != null) { if (externalUrlCriteria.getPage() != null) {
completedPath = completedPath.replace("{page}", externalUrlCriteria.getPage()); completedPath = completedPath.replace("{page}", externalUrlCriteria.getPage());
} else { } else {
completedPath = completedPath.replace("{page}", "1"); if (firstPage != null) {
completedPath = completedPath.replace("{page}", firstPage);
} else {
completedPath = completedPath.replace("{page}", "1");
}
} }
if (externalUrlCriteria.getPageSize() != null) { if (externalUrlCriteria.getPageSize() != null) {
completedPath = completedPath.replace("{pageSize}", externalUrlCriteria.getPageSize()); completedPath = completedPath.replace("{pageSize}", externalUrlCriteria.getPageSize());
@ -182,10 +186,10 @@ public class RemoteFetcher {
return completedPath; return completedPath;
} }
private List<Map<String, String>> getAllResultsFromUrl(String path, FetchStrategy fetchStrategy, final DataUrlConfiguration jsonDataPath, final String jsonPaginationPath, ExternalUrlCriteria externalUrlCriteria, String key, String contentType) throws HugeResultSet { private List<Map<String, String>> getAllResultsFromUrl(String path, FetchStrategy fetchStrategy, final DataUrlConfiguration jsonDataPath, final String jsonPaginationPath, ExternalUrlCriteria externalUrlCriteria, String key, String contentType, String firstPage) throws HugeResultSet {
Set<Integer> pages = new HashSet<>(); Set<Integer> pages = new HashSet<>();
String replacedPath = replaceCriteriaOnUrl(path, externalUrlCriteria); String replacedPath = replaceCriteriaOnUrl(path, externalUrlCriteria, firstPage);
Results results = getResultsFromUrl(replacedPath, jsonDataPath, jsonPaginationPath, contentType); Results results = getResultsFromUrl(replacedPath, jsonDataPath, jsonPaginationPath, contentType);
if (fetchStrategy == FetchStrategy.FIRST) if (fetchStrategy == FetchStrategy.FIRST)

View File

@ -6,105 +6,14 @@
<registries> <registries>
<urls> <urls>
<!-- <urlConfig>-->
<!-- <key>cristin</key>-->
<!-- <label>Cristin</label>-->
<!-- <ordinal>1</ordinal>-->
<!-- <type>External</type>-->
<!-- <url>https://eestore.paas2.uninett.no/api/metadataschemarepo/</url>-->
<!-- <data>-->
<!-- <path>$['data'][*]['attributes']</path>-->
<!-- <fields>-->
<!-- <id>'pid'</id>-->
<!-- <name>'name'</name>-->
<!-- <uri>'uri'</uri>-->
<!-- <description>'description'</description>-->
<!-- </fields>-->
<!-- </data>-->
<!-- <paginationpath>$['meta']['pagination']['page','pages','count']</paginationpath>-->
<!-- </urlConfig>-->
<!-- <urlConfig>-->
<!-- <key>openAire</key>-->
<!-- <label>OpenAIRE</label>-->
<!-- <ordinal>1</ordinal>-->
<!-- <type>External</type>-->
<!-- <url>https://eestore.paas2.uninett.no/api/metadataschemarepo/</url>-->
<!-- <data>-->
<!-- <path>$['data'][*]['attributes']</path>-->
<!-- <fields>-->
<!-- <id>'pid'</id>-->
<!-- <name>'name'</name>-->
<!-- <uri>'uri'</uri>-->
<!-- <description>'description'</description>-->
<!-- </fields>-->
<!-- </data>-->
<!-- <paginationpath>$['meta']['pagination']['page','pages','count']</paginationpath>-->
<!-- </urlConfig>-->
<urlConfig> <urlConfig>
<key>internal</key> <key>cristin</key>
<label>Internal</label> <label>Cristin</label>
<ordinal>1</ordinal> <ordinal>1</ordinal>
<type>Internal</type> <type>External</type>
<url>RegistriesInternalMockUpData.json</url> <url>https://eestore.paas2.uninett.no/api/metadataschemarepo/?search={like}&amp;page={page}&amp;size={pageSize}</url>
<data> <firstPage>1</firstPage>
<path>$['data'][*]['attributes']</path> <contenttype>application/vnd.api+json; charset=utf-8</contenttype>
<fields>
<id>'pid'</id>
<label>'name'</label>
<uri>'uri'</uri>
<description>'description'</description>
</fields>
</data>
<paginationpath>$['meta']['pagination']['page','pages','count']</paginationpath>
</urlConfig>
</urls>
<fetchMode>FIRST</fetchMode> <!-- EITHER 'FIRST' OR 'ALL' -->
</registries>
<tags>
<urls>
<!-- <urlConfig>-->
<!-- <key>cristin</key>-->
<!-- <label>Cristin</label>-->
<!-- <ordinal>1</ordinal>-->
<!-- <type>External</type>-->
<!-- <url>https://eestore.paas2.uninett.no/api/tags/</url>-->
<!-- <data>-->
<!-- <path>$['data'][*]['attributes']</path>-->
<!-- <fields>-->
<!-- <id>'pid'</id>-->
<!-- <name>'name'</name>-->
<!-- <uri>'uri'</uri>-->
<!-- <description>'description'</description>-->
<!-- </fields>-->
<!-- </data>-->
<!-- <paginationpath>$['meta']['pagination']['page','pages','count']</paginationpath>-->
<!-- </urlConfig>-->
<!-- <urlConfig>-->
<!-- <key>openAire</key>-->
<!-- <label>OpenAIRE</label>-->
<!-- <ordinal>1</ordinal>-->
<!-- <type>External</type>-->
<!-- <url>https://eestore.paas2.uninett.no/api/tags/</url>-->
<!-- <data>-->
<!-- <path>$['data'][*]['attributes']</path>-->
<!-- <fields>-->
<!-- <id>'pid'</id>-->
<!-- <name>'name'</name>-->
<!-- <uri>'uri'</uri>-->
<!-- <description>'description'</description>-->
<!-- </fields>-->
<!-- </data>-->
<!-- <paginationpath>$['meta']['pagination']['page','pages','count']</paginationpath>-->
<!-- </urlConfig>-->
<urlConfig>
<key>internal</key>
<label>internal</label>
<ordinal>1</ordinal>
<type>Internal</type>
<url>TagsInternalMockUpData.json</url>
<data> <data>
<path>$['data'][*]['attributes']</path> <path>$['data'][*]['attributes']</path>
<fields> <fields>
@ -116,20 +25,12 @@
</data> </data>
<paginationpath>$['meta']['pagination']['page','pages','count']</paginationpath> <paginationpath>$['meta']['pagination']['page','pages','count']</paginationpath>
</urlConfig> </urlConfig>
</urls>
<fetchMode>FIRST</fetchMode> <!-- EITHER 'FIRST' OR 'ALL' -->
</tags>
<grants>
<urls>
<!-- <urlConfig>--> <!-- <urlConfig>-->
<!-- <key>cristin</key>--> <!-- <key>openAire</key>-->
<!-- <label>Cristin</label>--> <!-- <label>OpenAIRE</label>-->
<!-- <ordinal>1</ordinal>--> <!-- <ordinal>1</ordinal>-->
<!-- <url>https://eestore.paas2.uninett.no/api/projectrepo/?search={like}&amp;page={page}&amp;size={pageSize}</url>--> <!-- <type>External</type>-->
<!-- <contenttype>application/vnd.api+json; charset=utf-8</contenttype>--> <!-- <url>https://eestore.paas2.uninett.no/api/metadataschemarepo/</url>-->
<!-- <data>--> <!-- <data>-->
<!-- <path>$['data'][*]['attributes']</path>--> <!-- <path>$['data'][*]['attributes']</path>-->
<!-- <fields>--> <!-- <fields>-->
@ -141,13 +42,113 @@
<!-- </data>--> <!-- </data>-->
<!-- <paginationpath>$['meta']['pagination']['page','pages','count']</paginationpath>--> <!-- <paginationpath>$['meta']['pagination']['page','pages','count']</paginationpath>-->
<!-- </urlConfig>--> <!-- </urlConfig>-->
<!-- <urlConfig>-->
<!-- <key>internal</key>-->
<!-- <label>Internal</label>-->
<!-- <ordinal>1</ordinal>-->
<!-- <type>Internal</type>-->
<!-- <url>RegistriesInternalMockUpData.json</url>-->
<!-- <data>-->
<!-- <path>$['data'][*]['attributes']</path>-->
<!-- <fields>-->
<!-- <id>'pid'</id>-->
<!-- <label>'name'</label>-->
<!-- <uri>'uri'</uri>-->
<!-- <description>'description'</description>-->
<!-- </fields>-->
<!-- </data>-->
<!-- <paginationpath>$['meta']['pagination']['page','pages','count']</paginationpath>-->
<!-- </urlConfig>-->
</urls>
<fetchMode>FIRST</fetchMode> <!-- EITHER 'FIRST' OR 'ALL' -->
</registries>
<tags>
<urls>
<urlConfig>
<key>cristin</key>
<label>Cristin</label>
<ordinal>1</ordinal>
<type>External</type>
<url>https://eestore.paas2.uninett.no/api/tags/</url>
<firstPage>1</firstPage>
<contenttype>application/vnd.api+json; charset=utf-8</contenttype>
<data>
<path>$['data'][*]['attributes']</path>
<fields>
<id>'pid'</id>
<name>'name'</name>
<uri>'uri'</uri>
<description>'description'</description>
</fields>
</data>
<paginationpath>$['meta']['pagination']['page','pages','count']</paginationpath>
</urlConfig>
<!-- <urlConfig>-->
<!-- <key>openAire</key>-->
<!-- <label>OpenAIRE</label>-->
<!-- <ordinal>1</ordinal>-->
<!-- <type>External</type>-->
<!-- <url>https://eestore.paas2.uninett.no/api/tags/</url>-->
<!-- <data>-->
<!-- <path>$['data'][*]['attributes']</path>-->
<!-- <fields>-->
<!-- <id>'pid'</id>-->
<!-- <name>'name'</name>-->
<!-- <uri>'uri'</uri>-->
<!-- <description>'description'</description>-->
<!-- </fields>-->
<!-- </data>-->
<!-- <paginationpath>$['meta']['pagination']['page','pages','count']</paginationpath>-->
<!-- </urlConfig>-->
<!-- <urlConfig>-->
<!-- <key>internal</key>-->
<!-- <label>internal</label>-->
<!-- <ordinal>1</ordinal>-->
<!-- <type>Internal</type>-->
<!-- <url>TagsInternalMockUpData.json</url>-->
<!-- <data>-->
<!-- <path>$['data'][*]['attributes']</path>-->
<!-- <fields>-->
<!-- <id>'pid'</id>-->
<!-- <name>'name'</name>-->
<!-- <uri>'uri'</uri>-->
<!-- <description>'description'</description>-->
<!-- </fields>-->
<!-- </data>-->
<!-- <paginationpath>$['meta']['pagination']['page','pages','count']</paginationpath>-->
<!-- </urlConfig>-->
</urls>
<fetchMode>FIRST</fetchMode> <!-- EITHER 'FIRST' OR 'ALL' -->
</tags>
<grants>
<urls>
<urlConfig>
<key>cristin</key>
<label>Cristin</label>
<ordinal>1</ordinal>
<url>https://eestore.paas2.uninett.no/api/projectrepo/?search={like}&amp;page={page}&amp;size={pageSize}</url>
<firstPage>1</firstPage>
<contenttype>application/vnd.api+json; charset=utf-8</contenttype>
<data>
<path>$['data'][*]['attributes']</path>
<fields>
<id>'pid'</id>
<name>'name'</name>
<uri>'uri'</uri>
<description>'description'</description>
</fields>
</data>
<paginationpath>$['meta']['pagination']['page','pages','count']</paginationpath>
</urlConfig>
<urlConfig> <urlConfig>
<key>openAIRE</key> <key>openAIRE</key>
<label>OpenAIRE</label> <label>OpenAIRE</label>
<ordinal>1</ordinal> <ordinal>1</ordinal>
<url>https://services.openaire.eu/search/v2/api/resources?query=((oaftype%20exact%20project)%20and%20((projectcode_nt%20exact%20%22{like}%22)or({like}))){funderQuery}&amp;page={page}&amp;size={pageSize}&amp;format=json</url> <url>https://services.openaire.eu/search/v2/api/resources?query=((oaftype%20exact%20project)%20and%20((projectcode_nt%20exact%20%22{like}%22)or({like}))){funderQuery}&amp;page={page}&amp;size={pageSize}&amp;format=json</url>
<funderQuery>&amp;fq=(funder%20exact%20%22{funderId}%22)</funderQuery> <funderQuery>&amp;fq=(funder%20exact%20%22{funderId}%22)</funderQuery>
<firstPage>0</firstPage>
<contenttype>application/json; charset=utf-8</contenttype> <contenttype>application/json; charset=utf-8</contenttype>
<data> <data>
<path>$['results'][*]['result']['metadata']['oaf:entity']['oaf:project']</path> <path>$['results'][*]['result']['metadata']['oaf:entity']['oaf:project']</path>
@ -159,7 +160,6 @@
</data> </data>
<paginationpath>$['meta']['pagination']['page','pages','count']</paginationpath> <paginationpath>$['meta']['pagination']['page','pages','count']</paginationpath>
</urlConfig> </urlConfig>
<!-- <urlConfig>--> <!-- <urlConfig>-->
<!-- <key>openAire</key>--> <!-- <key>openAire</key>-->
<!-- <label>OpenAIRE</label>--> <!-- <label>OpenAIRE</label>-->
@ -194,49 +194,49 @@
<!-- </data>--> <!-- </data>-->
<!-- <paginationpath>$['meta']['pagination']['page','pages','count']</paginationpath>--> <!-- <paginationpath>$['meta']['pagination']['page','pages','count']</paginationpath>-->
<!-- </urlConfig>--> <!-- </urlConfig>-->
</urls> </urls>
<fetchMode>FIRST</fetchMode> <!-- EITHER 'FIRST' OR 'ALL' --> <fetchMode>FIRST</fetchMode> <!-- EITHER 'FIRST' OR 'ALL' -->
</grants> </grants>
<projects> <projects>
<urls> <urls>
<urlConfig> <!-- <urlConfig>-->
<key>cristin</key> <!-- <key>cristin</key>-->
<label>Cristin</label> <!-- <label>Cristin</label>-->
<ordinal>1</ordinal> <!-- <ordinal>1</ordinal>-->
<type>External</type> <!-- <type>External</type>-->
<url>https://eestore.paas2.uninett.no/api/projectrepo/</url> <!-- <url>https://eestore.paas2.uninett.no/api/projectrepo/</url>-->
<contenttype>application/vnd.api+json; charset=utf-8</contenttype> <!-- <firstPage>1</firstPage>-->
<data> <!-- <contenttype>application/vnd.api+json; charset=utf-8</contenttype>-->
<path>$['data'][*]['attributes']</path> <!-- <data>-->
<fields> <!-- <path>$['data'][*]['attributes']</path>-->
<id>'pid'</id> <!-- <fields>-->
<name>'name'</name> <!-- <id>'pid'</id>-->
<uri>'uri'</uri> <!-- <name>'name'</name>-->
<description>'description'</description> <!-- <uri>'uri'</uri>-->
</fields> <!-- <description>'description'</description>-->
</data> <!-- </fields>-->
<paginationpath>$['meta']['pagination']['page','pages','count']</paginationpath> <!-- </data>-->
</urlConfig> <!-- <paginationpath>$['meta']['pagination']['page','pages','count']</paginationpath>-->
<urlConfig> <!-- </urlConfig>-->
<key>openAIRE</key> <!-- <urlConfig>-->
<label>OpenAIRE</label> <!-- <key>openAIRE</key>-->
<ordinal>1</ordinal> <!-- <label>OpenAIRE</label>-->
<type>External</type> <!-- <ordinal>1</ordinal>-->
<url>https://services.openaire.eu/search/v2/api/resources?query=((oaftype%20exact%20project)%20and%20((projectcode_nt%20exact%20%22*%22)or(*)))&amp;fq=(funder%20exact%20{funderId})&amp;page={page}&amp;size={pageSize}&amp;format=json</url> <!-- <type>External</type>-->
<contenttype>application/json; charset=utf-8</contenttype> <!-- <url>https://services.openaire.eu/search/v2/api/resources?query=((oaftype%20exact%20project)%20and%20((projectcode_nt%20exact%20%22*%22)or(*)))&amp;fq=(funder%20exact%20{funderId})&amp;page={page}&amp;size={pageSize}&amp;format=json</url>-->
<data> <!-- <firstPage>0</firstPage>-->
<path>$['response']['results']['result'][*]['metadata']['oaf:entity']['oaf:project']</path> <!-- <contenttype>application/json; charset=utf-8</contenttype>-->
<fields> <!-- <data>-->
<id>'originalId'</id> <!-- <path>$['response']['results']['result'][*]['metadata']['oaf:entity']['oaf:project']</path>-->
<name>'title'</name> <!-- <fields>-->
<count>'count'</count> <!-- <id>'originalId'</id>-->
</fields> <!-- <name>'title'</name>-->
</data> <!-- <count>'count'</count>-->
<paginationpath>$['meta']['pagination']['page','pages','count']</paginationpath> <!-- </fields>-->
</urlConfig> <!-- </data>-->
<!-- <paginationpath>$['meta']['pagination']['page','pages','count']</paginationpath>-->
<!-- </urlConfig>-->
<!-- <urlConfig>--> <!-- <urlConfig>-->
<!-- <key>openAire</key>--> <!-- <key>openAire</key>-->
<!-- <label>OpenAIRE</label>--> <!-- <label>OpenAIRE</label>-->
@ -254,26 +254,24 @@
<!-- </data>--> <!-- </data>-->
<!-- <paginationpath>$['meta']['pagination']['page','pages','count']</paginationpath>--> <!-- <paginationpath>$['meta']['pagination']['page','pages','count']</paginationpath>-->
<!-- </urlConfig>--> <!-- </urlConfig>-->
<urlConfig> <!-- <urlConfig>-->
<key>internal</key> <!-- <key>internal</key>-->
<label>Internal</label> <!-- <label>Internal</label>-->
<ordinal>1</ordinal> <!-- <ordinal>1</ordinal>-->
<type>Internal</type> <!-- <type>Internal</type>-->
<url>ProjectInternalMockUpData.json</url> <!-- <url>ProjectInternalMockUpData.json</url>-->
<data> <!-- <data>-->
<path>$['data'][*]['attributes']</path> <!-- <path>$['data'][*]['attributes']</path>-->
<fields> <!-- <fields>-->
<id>'pid'</id> <!-- <id>'pid'</id>-->
<name>'name'</name> <!-- <name>'name'</name>-->
<uri>'uri'</uri> <!-- <uri>'uri'</uri>-->
<description>'description'</description> <!-- <description>'description'</description>-->
</fields> <!-- </fields>-->
</data> <!-- </data>-->
<paginationpath>$['meta']['pagination']['page','pages','count']</paginationpath> <!-- <paginationpath>$['meta']['pagination']['page','pages','count']</paginationpath>-->
</urlConfig> <!-- </urlConfig>-->
</urls> </urls>
<fetchMode>FIRST</fetchMode> <!-- EITHER 'FIRST' OR 'ALL' --> <fetchMode>FIRST</fetchMode> <!-- EITHER 'FIRST' OR 'ALL' -->
</projects> </projects>
@ -327,7 +325,8 @@
<label>OpenAIRE</label> <label>OpenAIRE</label>
<ordinal>1</ordinal> <ordinal>1</ordinal>
<type>External</type> <type>External</type>
<url>https://services.openaire.eu/search/v2/api/publications?&amp;refine=true&amp;fields=relfunder&amp;page=0&amp;size=0&amp;format=json</url> <url>https://services.openaire.eu/search/v2/api/publications?&amp;refine=true&amp;fields=relfunder&amp;page={page}&amp;size=0&amp;format=json</url>
<firstPage>0</firstPage>
<contenttype>application/json; charset=utf-8</contenttype> <contenttype>application/json; charset=utf-8</contenttype>
<data> <data>
<path>$['refineResults']['relfunder'][*]</path> <path>$['refineResults']['relfunder'][*]</path>
@ -343,7 +342,8 @@
<label>OpenAIRE</label> <label>OpenAIRE</label>
<ordinal>1</ordinal> <ordinal>1</ordinal>
<type>External</type> <type>External</type>
<url>https://services.openaire.eu/search/v2/api/datasets?&amp;refine=true&amp;fields=relfunder&amp;page=0&amp;size=0&amp;format=json</url> <url>https://services.openaire.eu/search/v2/api/datasets?&amp;refine=true&amp;fields=relfunder&amp;page=0&amp;size={page}&amp;format=json</url>
<firstPage>0</firstPage>
<contenttype>application/json; charset=utf-8</contenttype> <contenttype>application/json; charset=utf-8</contenttype>
<data> <data>
<path>$['refineResults']['relfunder'][*]</path> <path>$['refineResults']['relfunder'][*]</path>
@ -359,7 +359,8 @@
<label>OpenAIRE</label> <label>OpenAIRE</label>
<ordinal>1</ordinal> <ordinal>1</ordinal>
<type>External</type> <type>External</type>
<url>https://services.openaire.eu/search/v2/api/software?&amp;refine=true&amp;fields=relfunder&amp;page=0&amp;size=0&amp;format=json</url> <url>https://services.openaire.eu/search/v2/api/software?&amp;refine=true&amp;fields=relfunder&amp;page={page}&amp;size=0&amp;format=json</url>
<firstPage>0</firstPage>
<contenttype>application/json; charset=utf-8</contenttype> <contenttype>application/json; charset=utf-8</contenttype>
<data> <data>
<path>$['refineResults']['relfunder'][*]</path> <path>$['refineResults']['relfunder'][*]</path>
@ -375,7 +376,8 @@
<label>OpenAIRE</label> <label>OpenAIRE</label>
<ordinal>1</ordinal> <ordinal>1</ordinal>
<type>External</type> <type>External</type>
<url>https://services.openaire.eu/search/v2/api/other?&amp;refine=true&amp;fields=relfunder&amp;page=0&amp;size=0&amp;format=json</url> <url>https://services.openaire.eu/search/v2/api/other?&amp;refine=true&amp;fields=relfunder&amp;page={page}&amp;size=0&amp;format=json</url>
<firstPage>0</firstPage>
<contenttype>application/json; charset=utf-8</contenttype> <contenttype>application/json; charset=utf-8</contenttype>
<data> <data>
<path>$['refineResults']['relfunder'][*]</path> <path>$['refineResults']['relfunder'][*]</path>
@ -403,55 +405,20 @@
<!-- </data>--> <!-- </data>-->
<!-- <paginationpath>$['meta']['pagination']['page','pages','count']</paginationpath>--> <!-- <paginationpath>$['meta']['pagination']['page','pages','count']</paginationpath>-->
<!-- </urlConfig>--> <!-- </urlConfig>-->
</urls> </urls>
<fetchMode>FIRST</fetchMode> <!-- EITHER 'FIRST' OR 'ALL' --> <fetchMode>FIRST</fetchMode> <!-- EITHER 'FIRST' OR 'ALL' -->
</funders> </funders>
<repositories> <repositories>
<urls> <urls>
<!-- <urlConfig>-->
<!-- <key>cristin</key>-->
<!-- <label>Cristin</label>-->
<!-- <ordinal>1</ordinal>-->
<!-- <type>External</type>-->
<!-- <url>https://eestore.paas2.uninett.no/api/datarepo/</url>-->
<!-- <data>-->
<!-- <path>$['data'][*]['attributes']</path>-->
<!-- <fields>-->
<!-- <id>'pid'</id>-->
<!-- <name>'name'</name>-->
<!-- <uri>'uri'</uri>-->
<!-- <description>'description'</description>-->
<!-- </fields>-->
<!-- </data>-->
<!-- <paginationpath>$['meta']['pagination']['page','pages','count']</paginationpath>-->
<!-- </urlConfig>-->
<!-- <urlConfig>-->
<!-- <key>openAire</key>-->
<!-- <label>OpenAIRE</label>-->
<!-- <ordinal>1</ordinal>-->
<!-- <type>External</type>-->
<!-- <url>https://eestore.paas2.uninett.no/api/datarepo/</url>-->
<!-- <data>-->
<!-- <path>$['data'][*]['attributes']</path>-->
<!-- <fields>-->
<!-- <id>'pid'</id>-->
<!-- <name>'name'</name>-->
<!-- <uri>'uri'</uri>-->
<!-- <description>'description'</description>-->
<!-- </fields>-->
<!-- </data>-->
<!-- <paginationpath>$['meta']['pagination']['page','pages','count']</paginationpath>-->
<!-- </urlConfig>-->
<urlConfig> <urlConfig>
<key>internal</key> <key>cristin</key>
<label>Internal</label> <label>Cristin</label>
<ordinal>1</ordinal> <ordinal>1</ordinal>
<type>Internal</type> <type>External</type>
<url>RepositoriesInternalMockUpData.json</url> <url>https://eestore.paas2.uninett.no/api/datarepo/?search={like}&amp;page={page}&amp;size={pageSize}</url>
<firstPage>1</firstPage>
<contenttype>application/vnd.api+json; charset=utf-8</contenttype>
<data> <data>
<path>$['data'][*]['attributes']</path> <path>$['data'][*]['attributes']</path>
<fields> <fields>
@ -463,21 +430,12 @@
</data> </data>
<paginationpath>$['meta']['pagination']['page','pages','count']</paginationpath> <paginationpath>$['meta']['pagination']['page','pages','count']</paginationpath>
</urlConfig> </urlConfig>
</urls>
<fetchMode>FIRST</fetchMode> <!-- EITHER 'FIRST' OR 'ALL' -->
</repositories>
<services>
<urls>
<!-- <urlConfig>--> <!-- <urlConfig>-->
<!-- <key>cristin</key>--> <!-- <key>openAire</key>-->
<!-- <label>Cristin</label>--> <!-- <label>OpenAIRE</label>-->
<!-- <ordinal>1</ordinal>--> <!-- <ordinal>1</ordinal>-->
<!-- <type>External</type>--> <!-- <type>External</type>-->
<!-- <url>https://eestore.paas2.uninett.no/api/servicerepo/</url>--> <!-- <url>https://eestore.paas2.uninett.no/api/datarepo/</url>-->
<!-- <data>--> <!-- <data>-->
<!-- <path>$['data'][*]['attributes']</path>--> <!-- <path>$['data'][*]['attributes']</path>-->
<!-- <fields>--> <!-- <fields>-->
@ -490,6 +448,49 @@
<!-- <paginationpath>$['meta']['pagination']['page','pages','count']</paginationpath>--> <!-- <paginationpath>$['meta']['pagination']['page','pages','count']</paginationpath>-->
<!-- </urlConfig>--> <!-- </urlConfig>-->
<!-- <urlConfig>--> <!-- <urlConfig>-->
<!-- <key>internal</key>-->
<!-- <label>Internal</label>-->
<!-- <ordinal>1</ordinal>-->
<!-- <type>Internal</type>-->
<!-- <url>RepositoriesInternalMockUpData.json</url>-->
<!-- <data>-->
<!-- <path>$['data'][*]['attributes']</path>-->
<!-- <fields>-->
<!-- <id>'pid'</id>-->
<!-- <name>'name'</name>-->
<!-- <uri>'uri'</uri>-->
<!-- <description>'description'</description>-->
<!-- </fields>-->
<!-- </data>-->
<!-- <paginationpath>$['meta']['pagination']['page','pages','count']</paginationpath>-->
<!-- </urlConfig>-->
</urls>
<fetchMode>FIRST</fetchMode> <!-- EITHER 'FIRST' OR 'ALL' -->
</repositories>
<services>
<urls>
<urlConfig>
<key>cristin</key>
<label>Cristin</label>
<ordinal>1</ordinal>
<type>External</type>
<url>https://eestore.paas2.uninett.no/api/servicerepo/?search={like}&amp;page={page}&amp;size={pageSize}</url>
<firstPage>1</firstPage>
<contenttype>application/vnd.api+json; charset=utf-8</contenttype>
<data>
<path>$['data'][*]['attributes']</path>
<fields>
<id>'pid'</id>
<name>'name'</name>
<uri>'uri'</uri>
<description>'description'</description>
</fields>
</data>
<paginationpath>$['meta']['pagination']['page','pages','count']</paginationpath>
</urlConfig>
<!-- <urlConfig>-->
<!-- <key>openAire</key>--> <!-- <key>openAire</key>-->
<!-- <label>OpenAIRE</label>--> <!-- <label>OpenAIRE</label>-->
<!-- <ordinal>1</ordinal>--> <!-- <ordinal>1</ordinal>-->
@ -506,48 +507,49 @@
<!-- </data>--> <!-- </data>-->
<!-- <paginationpath>$['meta']['pagination']['page','pages','count']</paginationpath>--> <!-- <paginationpath>$['meta']['pagination']['page','pages','count']</paginationpath>-->
<!-- </urlConfig>--> <!-- </urlConfig>-->
<urlConfig> <!-- <urlConfig>-->
<key>internal</key> <!-- <key>internal</key>-->
<label>Internal</label> <!-- <label>Internal</label>-->
<ordinal>1</ordinal> <!-- <ordinal>1</ordinal>-->
<type>Internal</type> <!-- <type>Internal</type>-->
<url>ServicesInternalMockUpData.json</url> <!-- <url>ServicesInternalMockUpData.json</url>-->
<data> <!-- <data>-->
<path>$['data'][*]['attributes']</path> <!-- <path>$['data'][*]['attributes']</path>-->
<fields> <!-- <fields>-->
<id>'pid'</id> <!-- <id>'pid'</id>-->
<label>'name'</label> <!-- <label>'name'</label>-->
<uri>'uri'</uri> <!-- <uri>'uri'</uri>-->
<description>'description'</description> <!-- <description>'description'</description>-->
</fields> <!-- </fields>-->
</data> <!-- </data>-->
<paginationpath>$['meta']['pagination']['page','pages','count']</paginationpath> <!-- <paginationpath>$['meta']['pagination']['page','pages','count']</paginationpath>-->
</urlConfig> <!-- </urlConfig>-->
</urls> </urls>
<fetchMode>FIRST</fetchMode> <!-- EITHER 'FIRST' OR 'ALL' --> <fetchMode>FIRST</fetchMode> <!-- EITHER 'FIRST' OR 'ALL' -->
</services> </services>
<researchers> <researchers>
<urls> <urls>
<!-- <urlConfig>--> <urlConfig>
<!-- <key>cristin</key>--> <key>cristin</key>
<!-- <label>Cristin</label>--> <label>Cristin</label>
<!-- <ordinal>1</ordinal>--> <ordinal>1</ordinal>
<!-- <type>External</type>--> <type>External</type>
<!-- <url>https://eestore.paas2.uninett.no/api/personrepo/</url>--> <url>https://eestore.paas2.uninett.no/api/personrepo/?search={like}&amp;page={page}&amp;size={pageSize}</url>
<!-- <data>--> <firstPage>1</firstPage>
<!-- <path>$['data'][*]['attributes']</path>--> <contenttype>application/vnd.api+json; charset=utf-8</contenttype>
<!-- <fields>--> <data>
<!-- <id>'pid'</id>--> <path>$['data'][*]['attributes']</path>
<!-- <name>'name'</name>--> <fields>
<!-- <uri>'uri'</uri>--> <id>'pid'</id>
<!-- <description>'description'</description>--> <name>'name'</name>
<!-- </fields>--> <uri>'uri'</uri>
<!-- </data>--> <description>'description'</description>
<!-- <paginationpath>$['meta']['pagination']['page','pages','count']</paginationpath>--> </fields>
<!-- </urlConfig>--> </data>
<paginationpath>$['meta']['pagination']['page','pages','count']</paginationpath>
</urlConfig>
<!-- <urlConfig>--> <!-- <urlConfig>-->
<!-- <key>openAire</key>--> <!-- <key>openAire</key>-->
<!-- <label>OpenAIRE</label>--> <!-- <label>OpenAIRE</label>-->
@ -565,48 +567,49 @@
<!-- </data>--> <!-- </data>-->
<!-- <paginationpath>$['meta']['pagination']['page','pages','count']</paginationpath>--> <!-- <paginationpath>$['meta']['pagination']['page','pages','count']</paginationpath>-->
<!-- </urlConfig>--> <!-- </urlConfig>-->
<urlConfig> <!-- <urlConfig>-->
<key>internal</key> <!-- <key>internal</key>-->
<label>Internal</label> <!-- <label>Internal</label>-->
<ordinal>1</ordinal> <!-- <ordinal>1</ordinal>-->
<type>Internal</type> <!-- <type>Internal</type>-->
<url>ResearcherInternalMockUpData.json</url> <!-- <url>ResearcherInternalMockUpData.json</url>-->
<data> <!-- <data>-->
<path>$['data'][*]['attributes']</path> <!-- <path>$['data'][*]['attributes']</path>-->
<fields> <!-- <fields>-->
<id>'pid'</id> <!-- <id>'pid'</id>-->
<name>'name'</name> <!-- <name>'name'</name>-->
<uri>'uri'</uri> <!-- <uri>'uri'</uri>-->
<description>'description'</description> <!-- <description>'description'</description>-->
</fields> <!-- </fields>-->
</data> <!-- </data>-->
<paginationpath>$['meta']['pagination']['page','pages','count']</paginationpath> <!-- <paginationpath>$['meta']['pagination']['page','pages','count']</paginationpath>-->
</urlConfig> <!-- </urlConfig>-->
</urls> </urls>
<fetchMode>FIRST</fetchMode> <!-- EITHER 'FIRST' OR 'ALL' --> <fetchMode>FIRST</fetchMode> <!-- EITHER 'FIRST' OR 'ALL' -->
</researchers> </researchers>
<organisations> <organisations>
<urls> <urls>
<!-- <urlConfig>--> <urlConfig>
<!-- <key>cristin</key>--> <key>cristin</key>
<!-- <label>Cristin</label>--> <label>Cristin</label>
<!-- <ordinal>1</ordinal>--> <ordinal>1</ordinal>
<!-- <type>External</type>--> <type>External</type>
<!-- <url>https://eestore.paas2.uninett.no/api/organizationrepo/</url>--> <url>https://eestore.paas2.uninett.no/api/organizationrepo/?search={like}&amp;page={page}&amp;size={pageSize}</url>
<!-- <data>--> <firstPage>1</firstPage>
<!-- <path>$['data'][*]['attributes']</path>--> <contenttype>application/vnd.api+json; charset=utf-8</contenttype>
<!-- <fields>--> <data>
<!-- <id>'pid'</id>--> <path>$['data'][*]['attributes']</path>
<!-- <name>'name'</name>--> <fields>
<!-- <uri>'uri'</uri>--> <id>'pid'</id>
<!-- <description>'description'</description>--> <name>'name'</name>
<!-- </fields>--> <uri>'uri'</uri>
<!-- </data>--> <description>'description'</description>
<!-- <paginationpath>$['meta']['pagination']['page','pages','count']</paginationpath>--> </fields>
<!-- </urlConfig>--> </data>
<paginationpath>$['meta']['pagination']['page','pages','count']</paginationpath>
</urlConfig>
<!-- <urlConfig>--> <!-- <urlConfig>-->
<!-- <key>openAire</key>--> <!-- <key>openAire</key>-->
<!-- <label>OpenAIRE</label>--> <!-- <label>OpenAIRE</label>-->
@ -624,48 +627,48 @@
<!-- </data>--> <!-- </data>-->
<!-- <paginationpath>$['meta']['pagination']['page','pages','count']</paginationpath>--> <!-- <paginationpath>$['meta']['pagination']['page','pages','count']</paginationpath>-->
<!-- </urlConfig>--> <!-- </urlConfig>-->
<urlConfig> <!-- <urlConfig>-->
<key>internal</key> <!-- <key>internal</key>-->
<label>Internal</label> <!-- <label>Internal</label>-->
<ordinal>1</ordinal> <!-- <ordinal>1</ordinal>-->
<type>Internal</type> <!-- <type>Internal</type>-->
<url>OrganisationInternalMockUpData.json</url> <!-- <url>OrganisationInternalMockUpData.json</url>-->
<data> <!-- <data>-->
<path>$['data'][*]['attributes']</path> <!-- <path>$['data'][*]['attributes']</path>-->
<fields> <!-- <fields>-->
<id>'pid'</id> <!-- <id>'pid'</id>-->
<name>'name'</name> <!-- <name>'name'</name>-->
<uri>'uri'</uri> <!-- <uri>'uri'</uri>-->
<description>'description'</description> <!-- <description>'description'</description>-->
</fields> <!-- </fields>-->
</data> <!-- </data>-->
<paginationpath>$['meta']['pagination']['page','pages','count']</paginationpath> <!-- <paginationpath>$['meta']['pagination']['page','pages','count']</paginationpath>-->
</urlConfig> <!-- </urlConfig>-->
</urls> </urls>
<fetchMode>FIRST</fetchMode> <!-- EITHER 'FIRST' OR 'ALL' --> <fetchMode>FIRST</fetchMode> <!-- EITHER 'FIRST' OR 'ALL' -->
</organisations> </organisations>
<datasets> <datasets>
<urls> <urls>
<!-- <urlConfig>--> <urlConfig>
<!-- <key>cristin</key>--> <key>cristin</key>
<!-- <label>Cristin</label>--> <label>Cristin</label>
<!-- <ordinal>1</ordinal>--> <ordinal>1</ordinal>
<!-- <type>External</type>--> <type>External</type>
<!-- <url>https://eestore.paas2.uninett.no/api/datasetrepo/</url>--> <url>https://eestore.paas2.uninett.no/api/datasetmdrepo/?search={like}&amp;page={page}&amp;size={pageSize}</url>
<!-- <data>--> <firstPage>1</firstPage>
<!-- <path>$['data'][*]['attributes']</path>--> <contenttype>application/vnd.api+json; charset=utf-8</contenttype>
<!-- <fields>--> <data>
<!-- <id>'pid'</id>--> <path>$['data'][*]['attributes']</path>
<!-- <name>'name'</name>--> <fields>
<!-- <uri>'uri'</uri>--> <id>'pid'</id>
<!-- <description>'description'</description>--> <name>'name'</name>
<!-- </fields>--> <uri>'uri'</uri>
<!-- </data>--> <description>'description'</description>
<!-- <paginationpath>$['meta']['pagination']['page','pages','count']</paginationpath>--> </fields>
<!-- </urlConfig>--> </data>
<paginationpath>$['meta']['pagination']['page','pages','count']</paginationpath>
</urlConfig>
<!-- <urlConfig>--> <!-- <urlConfig>-->
<!-- <key>openAire</key>--> <!-- <key>openAire</key>-->
<!-- <label>OpenAIRE</label>--> <!-- <label>OpenAIRE</label>-->
@ -683,23 +686,23 @@
<!-- </data>--> <!-- </data>-->
<!-- <paginationpath>$['meta']['pagination']['page','pages','count']</paginationpath>--> <!-- <paginationpath>$['meta']['pagination']['page','pages','count']</paginationpath>-->
<!-- </urlConfig>--> <!-- </urlConfig>-->
<urlConfig> <!-- <urlConfig>-->
<key>internal</key> <!-- <key>internal</key>-->
<label>Internal</label> <!-- <label>Internal</label>-->
<ordinal>1</ordinal> <!-- <ordinal>1</ordinal>-->
<type>Internal</type> <!-- <type>Internal</type>-->
<url>DatasetsInternalMockUpData.json</url> <!-- <url>DatasetsInternalMockUpData.json</url>-->
<data> <!-- <data>-->
<path>$['data'][*]['attributes']</path> <!-- <path>$['data'][*]['attributes']</path>-->
<fields> <!-- <fields>-->
<id>'pid'</id> <!-- <id>'pid'</id>-->
<name>'name'</name> <!-- <name>'name'</name>-->
<uri>'uri'</uri> <!-- <uri>'uri'</uri>-->
<description>'description'</description> <!-- <description>'description'</description>-->
</fields> <!-- </fields>-->
</data> <!-- </data>-->
<paginationpath>$['meta']['pagination']['page','pages','count']</paginationpath> <!-- <paginationpath>$['meta']['pagination']['page','pages','count']</paginationpath>-->
</urlConfig> <!-- </urlConfig>-->
</urls> </urls>
<fetchMode>FIRST</fetchMode> <!-- EITHER 'FIRST' OR 'ALL' --> <fetchMode>FIRST</fetchMode> <!-- EITHER 'FIRST' OR 'ALL' -->
</datasets> </datasets>