X-Git-Url: https://osm.etsi.org/gitweb/?p=osm%2FUI.git;a=blobdiff_plain;f=skyquake%2Fplugins%2Flaunchpad%2Fsrc%2Finstantiate%2FlaunchNetworkServiceSource.js;h=d5c33c11dc49e374e8c739717170115ab17071ea;hp=d2d950f08e8f1d05a53763b5b4543fe507534c5a;hb=c09a6948835c9e519829e44f20d649a0dc555f3e;hpb=e29efc315df33d546237e270470916e26df391d6 diff --git a/skyquake/plugins/launchpad/src/instantiate/launchNetworkServiceSource.js b/skyquake/plugins/launchpad/src/instantiate/launchNetworkServiceSource.js index d2d950f08..d5c33c11d 100644 --- a/skyquake/plugins/launchpad/src/instantiate/launchNetworkServiceSource.js +++ b/skyquake/plugins/launchpad/src/instantiate/launchNetworkServiceSource.js @@ -1,6 +1,6 @@ /* - * + * * Copyright 2016 RIFT.IO Inc * * Licensed under the Apache License, Version 2.0 (the "License"); @@ -128,7 +128,16 @@ export default function(Alt){ }).fail(function(xhr){ //Authentication and the handling of fail states should be wrapped up into a connection class. Utils.checkAuthentication(xhr.status); - reject(); + var error = null; + if(xhr.responseText) { + try { + error = JSON.parse(xhr.responseText); + error = JSON.parse(error.error)['rpc-reply']['rpc-error']['error-message']; + } catch(e){ + console.log(e); + } + } + reject(error); }); }) }, @@ -190,6 +199,54 @@ export default function(Alt){ }, success: Alt.actions.global.getConfigAgentSuccess, error: Alt.actions.global.getConfigAgentError + }, + getResourceOrchestrator: { + remote: function() { + return new Promise(function(resolve, reject) { + $.ajax({ + url: 'passthrough/data/api/running/resource-orchestrator' + '?api_server=' + API_SERVER, + type: 'GET', + beforeSend: Utils.addAuthorizationStub, + contentType: "application/json", + success: function(data) { + let returnedData; + if (data.hasOwnProperty("rw-launchpad:resource-orchestrator")) { + returnedData = data['rw-launchpad:resource-orchestrator']; + } else { + returnedData = {}; + } + resolve(returnedData); + }, + error: function(error) { + console.log("There was an error updating the account: ", arguments); + + } + }).fail(function(xhr){ + //Authentication and the handling of fail states should be wrapped up into a connection class. + Utils.checkAuthentication(xhr.status); + return reject('error'); + }); + }); + }, + interceptResponse: interceptResponse({ + 'error': 'There was an error retrieving the resource orchestrator information.' + }), + success: Alt.actions.global.getResourceOrchestratorSuccess, + loading: Alt.actions.global.showScreenLoader, + error: Alt.actions.global.showNotification + } + } } +function interceptResponse (responses) { + return function(data, action, args) { + if(responses.hasOwnProperty(data)) { + return { + type: data, + msg: responses[data] + } + } else { + return data; + } + } }