mirror of
https://github.com/OpenNebula/one.git
synced 2025-03-21 14:50:08 +03:00
Sunstone: allow custom path for resources in opennebula.js
The purpose is to be able to fetch and parse a resource from an URL which is not exactly the lowercase version of the resource name. i.e. using MY_RESOURCE_POOL provided by /custom_route url (cherry picked from commit 237660ee94d93da1808e5d7c399fda489e51e3c8)
This commit is contained in:
parent
68155558b0
commit
c62a2e4f29
@ -206,14 +206,15 @@ var OpenNebula = {
|
||||
|
||||
//server requests helper methods
|
||||
|
||||
"create": function(params,resource){
|
||||
"create": function(params, resource, path){
|
||||
var callback = params.success;
|
||||
var callback_error = params.error;
|
||||
var data = params.data;
|
||||
var request = OpenNebula.Helper.request(resource,"create", data);
|
||||
var req_path = path ? path : resource.toLowerCase();
|
||||
|
||||
$.ajax({
|
||||
url: resource.toLowerCase(),
|
||||
url: req_path,
|
||||
type: "POST",
|
||||
dataType: "json",
|
||||
data: JSON.stringify(data),
|
||||
@ -227,14 +228,15 @@ var OpenNebula = {
|
||||
});
|
||||
},
|
||||
|
||||
"del": function(params,resource){
|
||||
"del": function(params, resource, path){
|
||||
var callback = params.success;
|
||||
var callback_error = params.error;
|
||||
var id = params.data.id;
|
||||
var request = OpenNebula.Helper.request(resource,"delete", id);
|
||||
var req_path = path ? path : resource.toLowerCase();
|
||||
|
||||
$.ajax({
|
||||
url: resource.toLowerCase() + "/" + id,
|
||||
url: req_path + "/" + id,
|
||||
type: "DELETE",
|
||||
success: function(){
|
||||
return callback ? callback(request) : null;
|
||||
@ -246,14 +248,15 @@ var OpenNebula = {
|
||||
});
|
||||
},
|
||||
|
||||
"list": function(params,resource){
|
||||
"list": function(params, resource, path){
|
||||
var callback = params.success;
|
||||
var callback_error = params.error;
|
||||
var timeout = params.timeout || false;
|
||||
var request = OpenNebula.Helper.request(resource,"list");
|
||||
var req_path = path ? path : resource.toLowerCase();
|
||||
|
||||
$.ajax({
|
||||
url: resource.toLowerCase(),
|
||||
url: req_path,
|
||||
type: "GET",
|
||||
data: {timeout: timeout},
|
||||
dataType: "json",
|
||||
@ -271,7 +274,7 @@ var OpenNebula = {
|
||||
},
|
||||
|
||||
//Subresource examples: "fetch_template", "log"...
|
||||
"show": function(params,resource,subresource){
|
||||
"show": function(params, resource, subresource, path){
|
||||
var callback = params.success;
|
||||
var callback_error = params.error;
|
||||
var id = params.data.id;
|
||||
@ -279,7 +282,8 @@ var OpenNebula = {
|
||||
OpenNebula.Helper.request(resource,subresource,id) :
|
||||
OpenNebula.Helper.request(resource,"show", id);
|
||||
|
||||
var url = resource.toLowerCase() + "/" + id;
|
||||
var req_path = path ? path : resource.toLowerCase();
|
||||
var url = req_path + "/" + id;
|
||||
url = subresource? url + "/" + subresource : url;
|
||||
|
||||
$.ajax({
|
||||
@ -296,7 +300,7 @@ var OpenNebula = {
|
||||
});
|
||||
},
|
||||
|
||||
"chown": function(params,resource,chgrp){
|
||||
"chown": function(params, resource, path){
|
||||
var id = params.data.extra_param;
|
||||
var action_obj = {"owner_id": id,
|
||||
"group_id": "-1"};
|
||||
@ -304,10 +308,11 @@ var OpenNebula = {
|
||||
OpenNebula.Action.simple_action(params,
|
||||
resource,
|
||||
"chown",
|
||||
action_obj);
|
||||
action_obj,
|
||||
path);
|
||||
},
|
||||
|
||||
"chgrp": function(params,resource){
|
||||
"chgrp": function(params, resource, path){
|
||||
var id = params.data.extra_param;
|
||||
var action_obj = {"owner_id": "-1",
|
||||
"group_id": id};
|
||||
@ -315,11 +320,12 @@ var OpenNebula = {
|
||||
OpenNebula.Action.simple_action(params,
|
||||
resource,
|
||||
"chown",
|
||||
action_obj);
|
||||
action_obj,
|
||||
path);
|
||||
},
|
||||
|
||||
//Example: Simple action: publish. Simple action with action obj: deploy
|
||||
"simple_action": function(params,resource,method,action_obj){
|
||||
"simple_action": function(params, resource, method, action_obj, path){
|
||||
var callback = params.success;
|
||||
var callback_error = params.error;
|
||||
var id = params.data.id;
|
||||
@ -333,8 +339,10 @@ var OpenNebula = {
|
||||
request = OpenNebula.Helper.request(resource,method, id);
|
||||
};
|
||||
|
||||
var req_path = path ? path : resource.toLowerCase();
|
||||
|
||||
$.ajax({
|
||||
url: resource.toLowerCase() + "/" + id + "/action",
|
||||
url: req_path + "/" + id + "/action",
|
||||
type: "POST",
|
||||
data: JSON.stringify(action),
|
||||
success: function(){
|
||||
@ -347,7 +355,7 @@ var OpenNebula = {
|
||||
});
|
||||
},
|
||||
|
||||
"monitor": function(params,resource,all){
|
||||
"monitor": function(params, resource, all, path){
|
||||
var callback = params.success;
|
||||
var callback_error = params.error;
|
||||
var data = params.data;
|
||||
@ -355,7 +363,7 @@ var OpenNebula = {
|
||||
var method = "monitor";
|
||||
var request = OpenNebula.Helper.request(resource,method, data);
|
||||
|
||||
var url = resource.toLowerCase();
|
||||
var url = path ? path : resource.toLowerCase();
|
||||
url = all ? url + "/monitor" : url + "/" + params.data.id + "/monitor";
|
||||
|
||||
$.ajax({
|
||||
|
Loading…
x
Reference in New Issue
Block a user