From 30e2cf90808148345524fb27eb8ac6120e056306 Mon Sep 17 00:00:00 2001 From: Piotr Gawron <piotr.gawron@uni.lu> Date: Wed, 31 May 2017 17:59:00 +0200 Subject: [PATCH] promise chains fixed to forward rejects properly --- frontend-js/src/main/js/ServerConnector.js | 89 +++++++++++----------- 1 file changed, 43 insertions(+), 46 deletions(-) diff --git a/frontend-js/src/main/js/ServerConnector.js b/frontend-js/src/main/js/ServerConnector.js index 6c676aabc6..b00e8a1d17 100644 --- a/frontend-js/src/main/js/ServerConnector.js +++ b/frontend-js/src/main/js/ServerConnector.js @@ -215,7 +215,10 @@ ServerConnector.getApiUrl = function(paramObj) { var method = paramObj.method; var params = this.createGetParams(paramObj.params); - var result = this.getApiBaseUrl() + "/" + type + "/" + method; + var result = this.getApiBaseUrl() + "/" + type; + if (method !== undefined) { + result += "/" + method; + } if (params !== "") { result += "?" + params; } @@ -1291,61 +1294,55 @@ ServerConnector.addComment = function(params) { ServerConnector.addOverlay = function(params) { var self = this; - return new Promise(function(resolve, reject) { - return self.getProjectId(params.projectId).then(function(result) { - params.projectId = result; - return self.getToken(); - }).then(function(token) { - params.token = token; - return self.sendPostRequest(self.addOverlayUrl(), params); - }).then(function(content) { - var response = JSON.parse(content); - if (response.status === "OK") { - resolve(response.overlayId); - } else { - reject(response); - } - }); + return self.getProjectId(params.projectId).then(function(result) { + params.projectId = result; + return self.getToken(); + }).then(function(token) { + params.token = token; + return self.sendPostRequest(self.addOverlayUrl(), params); + }).then(function(content) { + var response = JSON.parse(content); + if (response.status === "OK") { + return response.overlayId; + } else { + return Promise.reject(response); + } }); }; ServerConnector.updateOverlay = function(params) { var self = this; - return new Promise(function(resolve, reject) { - return self.getProjectId(params.projectId).then(function(result) { - params.projectId = result; - return self.getToken(); - }).then(function(token) { - params.token = token; - return self.sendPostRequest(self.updateOverlayUrl(), params); - }).then(function(content) { - var response = JSON.parse(content); - if (response.status === "OK") { - resolve(); - } else { - reject(response.reason); - } - }); + return self.getProjectId(params.projectId).then(function(result) { + params.projectId = result; + return self.getToken(); + }).then(function(token) { + params.token = token; + return self.sendPostRequest(self.updateOverlayUrl(), params); + }).then(function(content) { + var response = JSON.parse(content); + if (response.status === "OK") { + return Promise.resolve(); + } else { + return Promise.reject(response.reason); + } }); }; ServerConnector.removeOverlay = function(params) { var self = this; - return new Promise(function(resolve, reject) { - return self.getProjectId(params.projectId).then(function(result) { - params.projectId = result; - return self.getToken(); - }).then(function(token) { - params.token = token; - return self.sendPostRequest(self.deleteOverlayUrl(), params); - }).then(function(content) { - var response = JSON.parse(content); - if (response.status === "OK") { - resolve(); - } else { - reject(response); - } - }); + return self.getProjectId(params.projectId).then(function(result) { + params.projectId = result; + return self.getToken(); + }).then(function(token) { + params.token = token; + return self.sendPostRequest(self.deleteOverlayUrl(), params); + }).then(function(content) { + var response = JSON.parse(content); + if (response.status === "OK") { + return Promise.resolve(); + } else { + return Promise.reject(response); + } }); }; -- GitLab