This commit is contained in:
Loic GUEGAN 2016-04-17 18:43:49 +02:00
parent 8e700c2b7d
commit fdfdd27a35

View file

@ -1,14 +1,14 @@
mainApp.factory('Compute',[ '$http', 'Identity', function($http, Identity){ mainApp.factory('Compute', ['$http', 'Identity', function ($http, Identity) {
// Init data // Init data
var data={}; var data = {};
data.machines=null; data.machines = null;
data.axioms={} // Contain static data data.axioms = {} // Contain static data
data.axioms.ram=[128,512,1024,2048,4096]; data.axioms.ram = [128, 512, 1024, 2048, 4096];
data.axioms.disk=[1,2,5,10,25,50,100,150,200] data.axioms.disk = [1, 2, 5, 10, 25, 50, 100, 150, 200]
data.axioms.images={}; // Retrieve after data.axioms.images = {}; // Retrieve after
/** /**
@ -17,25 +17,23 @@ mainApp.factory('Compute',[ '$http', 'Identity', function($http, Identity){
* @param {boolean} false if the request as been send true else * @param {boolean} false if the request as been send true else
* @return {requestParserResult} the result of parsing * @return {requestParserResult} the result of parsing
*/ */
var parsePullMachinesAnswer=function(response, failedToSendRequest){ var parsePullMachinesAnswer = function (response, failedToSendRequest) {
// Defined return object // Defined return object
var requestParserResult={}; var requestParserResult = {};
requestParserResult.status=1; requestParserResult.status = 1;
requestParserResult.failReason=null; requestParserResult.failReason = null;
if (typeof response.data.Servers !== 'undefined') { if (typeof response.data.Servers !== 'undefined') {
// Set status code // Set status code
requestParserResult.status=0; requestParserResult.status = 0;
data.machines=response.data.Servers; data.machines = response.data.Servers;
} } else if (failedToSendRequest) {
else if(failedToSendRequest){ requestParserResult.failReason = "Failed to send PullMachine request";
requestParserResult.failReason="Failed to send PullMachine request"; } else {
} requestParserResult.failReason = "Error";
else{
requestParserResult.failReason="Error";
} }
return requestParserResult; return requestParserResult;
}; };
@ -45,15 +43,15 @@ mainApp.factory('Compute',[ '$http', 'Identity', function($http, Identity){
* Retrieve machine list * Retrieve machine list
* @param {callback} function to call after request complete * @param {callback} function to call after request complete
*/ */
var pullMachines=function(callback){ var pullMachines = function (callback) {
// Send listServers request // Send listServers request
var result=$http.post('../server/index.php', var result = $http.post('../server/index.php',
$.param({"token" : Identity.getToken(), "task" : "compute", "action":"listServers"})); $.param({"token": Identity.getToken(), "task": "compute", "action": "listServers"}));
// Wait and handle the response // Wait and handle the response
result.then(function (response){ result.then(function (response) {
callback(parsePullMachinesAnswer(response, false)); callback(parsePullMachinesAnswer(response, false));
},function(response){ }, function (response) {
callback(parsePullMachinesAnswer(response, true)); callback(parsePullMachinesAnswer(response, true));
}); });
}; };
@ -65,24 +63,22 @@ mainApp.factory('Compute',[ '$http', 'Identity', function($http, Identity){
* @param {boolean} false if the request as been send true else * @param {boolean} false if the request as been send true else
* @return {requestParserResult} the result of parsing * @return {requestParserResult} the result of parsing
*/ */
var parsePullImagesAnswer=function(response, failedToSendRequest){ var parsePullImagesAnswer = function (response, failedToSendRequest) {
// Defined return object // Defined return object
var requestParserResult={}; var requestParserResult = {};
requestParserResult.status=1; requestParserResult.status = 1;
requestParserResult.failReason=null; requestParserResult.failReason = null;
if (typeof response.data.Images !== 'undefined') { if (typeof response.data.Images !== 'undefined') {
// Set status code // Set status code
requestParserResult.status=0; requestParserResult.status = 0;
data.axioms.images=response.data.Images; data.axioms.images = response.data.Images;
} } else if (failedToSendRequest) {
else if(failedToSendRequest){ requestParserResult.failReason = "Failed to send PullImage request";
requestParserResult.failReason="Failed to send PullImage request"; } else {
} requestParserResult.failReason = "Error";
else{
requestParserResult.failReason="Error";
} }
return requestParserResult; return requestParserResult;
}; };
@ -94,15 +90,15 @@ mainApp.factory('Compute',[ '$http', 'Identity', function($http, Identity){
* Retrieve machine list * Retrieve machine list
* @param {callback} function to call after request complete * @param {callback} function to call after request complete
*/ */
var pullImages=function(callback){ var pullImages = function (callback) {
// Send listServers request // Send listServers request
var result=$http.post('../server/index.php', var result = $http.post('../server/index.php',
$.param({"token" : Identity.getToken(), "task" : "compute", "action":"listImages"})); $.param({"token": Identity.getToken(), "task": "compute", "action": "listImages"}));
// Wait and handle the response // Wait and handle the response
result.then(function (response){ result.then(function (response) {
callback(parsePullImagesAnswer(response, false)); callback(parsePullImagesAnswer(response, false));
},function(response){ }, function (response) {
callback(parsePullImagesAnswer(response, true)); callback(parsePullImagesAnswer(response, true));
}); });
@ -113,26 +109,25 @@ mainApp.factory('Compute',[ '$http', 'Identity', function($http, Identity){
* Retrieve all data * Retrieve all data
* @param {callback} function to call after request complete * @param {callback} function to call after request complete
*/ */
var pullData=function(callback){ var pullData = function (callback) {
var nextFunction=function(response){ var nextFunction = function (response) {
if(response.status==0){ if (response.status == 0) {
pullMachines(callback); pullMachines(callback);
} } else {
else{
callback(response); callback(response);
} }
} };
pullImages(nextFunction); pullImages(nextFunction);
} };
/** /**
* Get Data * Get Data
* @return {data} return the data object * @return {data} return the data object
*/ */
var getData=function(){ var getData = function () {
return data; return data;
} };
// Return services objects // Return services objects
return { return {
@ -142,4 +137,4 @@ mainApp.factory('Compute',[ '$http', 'Identity', function($http, Identity){
}; };
}]); }]);