summaryrefslogtreecommitdiff
path: root/client/js/services/Compute.js
diff options
context:
space:
mode:
Diffstat (limited to 'client/js/services/Compute.js')
-rw-r--r--client/js/services/Compute.js51
1 files changed, 45 insertions, 6 deletions
diff --git a/client/js/services/Compute.js b/client/js/services/Compute.js
index 70359ee..7c9df26 100644
--- a/client/js/services/Compute.js
+++ b/client/js/services/Compute.js
@@ -2,22 +2,57 @@
mainApp.factory('Compute',[ '$http', 'Identity', function($http, Identity){
-
+ // Create data
var data={};
data.machines={};
+
// Parser
var parseGetMachinesAnswer=function(response, failedToSendRequest){
+ // Defined return object
+ var requestParserResult={};
+ requestParserResult.status=1;
+ requestParserResult.failReason=null;
+
+ if (typeof response.data.Servers !== 'undefined') {
+ // Set status code
+ requestParserResult.status=0;
+ data.machines=response.data.Servers;
+ }
+ else if(failedToSendRequest){
+ requestParserResult.failReason="Failed to send request";
+ }
+ else{
+ requestParserResult.failReason="Error";
+ }
+
+ return requestParserResult;
+
};
// Get Machine
- var getMachines=function(callback){
+ var pullMachines=function(callback){
+ var params={
+ "token" : Identity.getToken(),
+ "task" : "compute",
+ "action":"listServers"
+ };
+
var result=$http.post('../server/index.php',
- $.param({"token" : Identity.profile.token, "task" : "Compute"}));
+ $.param(params));
+
+ // Wait and handle the response
+ result.then(function (response){
+
+ callback(parseGetMachinesAnswer(response, false));
+ },function(response){
+ alert(response.status);
+ callback(parseGetMachinesAnswer(response, true));
+ });
};
@@ -28,12 +63,16 @@ mainApp.factory('Compute',[ '$http', 'Identity', function($http, Identity){
// TODO call getMachines etc...
}
-
+
+ var getData=function(){
+ return data;
+ }
+
// Return services objects
return {
- getMachines: getMachines,
+ pullMachines: pullMachines,
pullData: pullData,
- data:data
+ getData: getData
};