Skip to content
Snippets Groups Projects
Commit 7830e3ab authored by Neuber, Eugen Ramon's avatar Neuber, Eugen Ramon :speech_balloon: Committed by Reiter, Christoph
Browse files

Again check for errors in readyState==4 only

parent dba7c723
Branches
No related tags found
No related merge requests found
...@@ -84,32 +84,34 @@ export default class JSONLD { ...@@ -84,32 +84,34 @@ export default class JSONLD {
docXhr.open("GET", apiDocUrl, true); docXhr.open("GET", apiDocUrl, true);
docXhr.setRequestHeader("Content-Type", "application/json"); docXhr.setRequestHeader("Content-Type", "application/json");
docXhr.onreadystatechange = function () { docXhr.onreadystatechange = function () {
if (docXhr.readyState === 4 && docXhr.status === 200) { if (docXhr.readyState === 4) {
const json = JSON.parse(docXhr.responseText); if (docXhr.status === 200) {
const supportedClasses = json["hydra:supportedClass"]; const json = JSON.parse(docXhr.responseText);
const supportedClasses = json["hydra:supportedClass"];
let entities = {};
const baseUrl = utils.parseBaseUrl(apiUrl); let entities = {};
const baseUrl = utils.parseBaseUrl(apiUrl);
// gather the entities
supportedClasses.forEach(function (classData) { // gather the entities
// add entry point url supportedClasses.forEach(function (classData) {
const entityName = classData["hydra:title"]; // add entry point url
let entryPoint = entryPoints[entityName.toLowerCase()]; const entityName = classData["hydra:title"];
if (entryPoint !== undefined && !entryPoint.startsWith("http")) entryPoint = baseUrl + entryPoint; let entryPoint = entryPoints[entityName.toLowerCase()];
classData["@entryPoint"] = entryPoint; if (entryPoint !== undefined && !entryPoint.startsWith("http")) entryPoint = baseUrl + entryPoint;
classData["@entryPoint"] = entryPoint;
entities[entityName] = classData;
}); entities[entityName] = classData;
});
const instance = new JSONLD(baseUrl, entities);
instances[apiUrl] = instance; const instance = new JSONLD(baseUrl, entities);
instances[apiUrl] = instance;
// return the initialized JSONLD object
for (const fnc of successFunctions[apiUrl]) if (typeof fnc == 'function') fnc(instance); // return the initialized JSONLD object
successFunctions[apiUrl] = []; for (const fnc of successFunctions[apiUrl]) if (typeof fnc == 'function') fnc(instance);
} else { successFunctions[apiUrl] = [];
JSONLD.executeFailureFunctions(apiUrl, i18n.t('jsonld.api-documentation-server', {apiUrl: apiDocUrl})); } else {
JSONLD.executeFailureFunctions(apiUrl, i18n.t('jsonld.api-documentation-server', {apiUrl: apiDocUrl}));
}
} }
}; };
......
0% Loading or .
You are about to add 0 people to the discussion. Proceed with caution.
Please register or to comment