diff options
Diffstat (limited to 'qpid/java/broker-plugins/management-http/src/main/java/resources')
15 files changed, 123 insertions, 275 deletions
diff --git a/qpid/java/broker-plugins/management-http/src/main/java/resources/js/qpid/common/metadata.js b/qpid/java/broker-plugins/management-http/src/main/java/resources/js/qpid/common/metadata.js index 1520cb8f7a..1a9ceb7419 100644 --- a/qpid/java/broker-plugins/management-http/src/main/java/resources/js/qpid/common/metadata.js +++ b/qpid/java/broker-plugins/management-http/src/main/java/resources/js/qpid/common/metadata.js @@ -68,8 +68,12 @@ define(["dojo/_base/xhr", }, implementsManagedInterface: function (category, type, managedInterfaceName) { - var managedInterfaces = this.getMetaData(category, type).managedInterfaces; - return array.indexOf(managedInterfaces, managedInterfaceName) >= 0 ; + var md = this.getMetaData(category, type); + if (md && md.managedInterfaces) + { + return array.indexOf(md.managedInterfaces, managedInterfaceName) >= 0 ; + } + return false; }, validChildTypes: function (category, type, childCategory) { diff --git a/qpid/java/broker-plugins/management-http/src/main/java/resources/js/qpid/common/util.js b/qpid/java/broker-plugins/management-http/src/main/java/resources/js/qpid/common/util.js index 746eb4bbbc..5bf5574347 100644 --- a/qpid/java/broker-plugins/management-http/src/main/java/resources/js/qpid/common/util.js +++ b/qpid/java/broker-plugins/management-http/src/main/java/resources/js/qpid/common/util.js @@ -791,5 +791,52 @@ define(["dojo/_base/xhr", on(window, "resize", resize); } + util.submit = function(method, resourceUrl, data, successAction, failureAction) + { + var result = {success: true, failureReason: null}; + var xhrArguments = { + url: resourceUrl, + sync: true, + handleAs: "json", + headers: { "Content-Type": "application/json"}, + load: function(x) { + result.success = true; + result.data = x; + if (successAction) + { + successAction(x); + } + }, + error: function(error) { + result.success = false; + result.failureReason = error; + if (failureAction) + { + failureAction(error); + } + else + { + util.xhrErrorHandler(error); + } + } + } + if (data && method != "del") + { + xhrArguments[method + "Data"] = json.stringify(data); + } + xhr[method](xhrArguments); + return result; + } + + util.post = function(resourceUrl, data, successAction, failureAction) + { + return util.submit("post", resourceUrl, data, successAction, failureAction) + } + + util.put = function(resourceUrl, data, successAction, failureAction) + { + return util.submit("put", resourceUrl, data, successAction, failureAction) + } + return util; }); diff --git a/qpid/java/broker-plugins/management-http/src/main/java/resources/js/qpid/management/addAccessControlProvider.js b/qpid/java/broker-plugins/management-http/src/main/java/resources/js/qpid/management/addAccessControlProvider.js index 83bf23f669..a8b2b60a75 100644 --- a/qpid/java/broker-plugins/management-http/src/main/java/resources/js/qpid/management/addAccessControlProvider.js +++ b/qpid/java/broker-plugins/management-http/src/main/java/resources/js/qpid/management/addAccessControlProvider.js @@ -99,30 +99,11 @@ define(["dojo/_base/lang", { if (this.accessControlProviderForm.validate()) { - var success = false,failureReason=null; - var accessControlProviderData = util.getFormWidgetValues(this.accessControlProviderForm, this.initialData); var encodedAccessControlProviderName = encodeURIComponent(this.accessControlProviderName.value); - - xhr.put( - { - url: "api/latest/accesscontrolprovider/" + encodedAccessControlProviderName, - sync: true, - handleAs: "json", - headers: { "Content-Type": "application/json"}, - putData: json.stringify(accessControlProviderData), - load: function(x) {success = true; }, - error: function(error) {success = false; failureReason = error;} - }); - - if (success == true) - { - this.dialog.hide(); - } - else - { - util.xhrErrorHandler(failureReason); - } + var that = this; + util.post("api/latest/accesscontrolprovider/" + encodedAccessControlProviderName, + accessControlProviderData, function(x){that.dialog.hide();}); } else { diff --git a/qpid/java/broker-plugins/management-http/src/main/java/resources/js/qpid/management/addAuthenticationProvider.js b/qpid/java/broker-plugins/management-http/src/main/java/resources/js/qpid/management/addAuthenticationProvider.js index ccae89d6c1..d367537731 100644 --- a/qpid/java/broker-plugins/management-http/src/main/java/resources/js/qpid/management/addAuthenticationProvider.js +++ b/qpid/java/broker-plugins/management-http/src/main/java/resources/js/qpid/management/addAuthenticationProvider.js @@ -155,31 +155,21 @@ define(["dojo/_base/xhr", var authenticationProviderData = util.getFormWidgetValues(this.authenticationProviderForm, this.initialData); var encodedAuthenticationProviderName = encodeURIComponent(this.authenticationProviderName.value); - xhr.put({ - url: "api/latest/authenticationprovider/" + encodedAuthenticationProviderName, - sync: true, - handleAs: "json", - headers: { "Content-Type": "application/json"}, - putData: json.stringify(authenticationProviderData), - load: function(x) {success = true; }, - error: function(error) {success = false; failureReason = error;} - }); - - if(success === true) - { - var preferencesProviderResult = this.preferencesProviderForm.submit(encodedAuthenticationProviderName); - success = preferencesProviderResult.success; - failureReason = preferencesProviderResult.failureReason; - } + var that = this; - if (success == true) - { - this.dialog.hide(); - } - else - { - util.xhrErrorHandler(failureReason); - } + var methodName = this.initialData ? "put" : "post"; + util[methodName]("api/latest/authenticationprovider/" + encodedAuthenticationProviderName, authenticationProviderData, + function(x){ + var preferencesProviderResult = that.preferencesProviderForm.submit(encodedAuthenticationProviderName); + if (preferencesProviderResult.success == true) + { + that.dialog.hide(); + } + else + { + util.xhrErrorHandler(preferencesProviderResult.failureReason); + } + }); } else { diff --git a/qpid/java/broker-plugins/management-http/src/main/java/resources/js/qpid/management/addBinding.js b/qpid/java/broker-plugins/management-http/src/main/java/resources/js/qpid/management/addBinding.js index 56950c88b0..8257b7e54c 100644 --- a/qpid/java/broker-plugins/management-http/src/main/java/resources/js/qpid/management/addBinding.js +++ b/qpid/java/broker-plugins/management-http/src/main/java/resources/js/qpid/management/addBinding.js @@ -308,30 +308,13 @@ define(["dojo/_base/connect", var newBinding = convertToBinding(theForm.getValues()); var that = this; - - xhr.put({url: "api/latest/binding/"+encodeURIComponent(addBinding.vhostnode) - +"/"+encodeURIComponent(addBinding.vhost) - +"/"+encodeURIComponent(newBinding.exchange) - +"/"+encodeURIComponent(newBinding.queue) - +"/"+encodeURIComponent(newBinding.name), - sync: true, handleAs: "json", - headers: { "Content-Type": "application/json"}, - putData: json.toJson(newBinding), - load: function(x) {that.success = true; }, - error: function(error) {that.success = false; that.failureReason = error;}}); - - if(this.success === true) - { - registry.byId("addBinding").hide(); - } - else - { - util.xhrErrorHandler(this.failureReason); - } - + var url = "api/latest/binding/"+encodeURIComponent(addBinding.vhostnode) + + "/"+encodeURIComponent(addBinding.vhost) + + "/"+encodeURIComponent(newBinding.exchange) + + "/"+encodeURIComponent(newBinding.queue) + + "/"+encodeURIComponent(newBinding.name); + util.post(url, newBinding, function(x){registry.byId("addBinding").hide();}); return false; - - }else{ alert('Form contains invalid data. Please correct first'); return false; diff --git a/qpid/java/broker-plugins/management-http/src/main/java/resources/js/qpid/management/addExchange.js b/qpid/java/broker-plugins/management-http/src/main/java/resources/js/qpid/management/addExchange.js index c7f281b8dc..ca43eca5d3 100644 --- a/qpid/java/broker-plugins/management-http/src/main/java/resources/js/qpid/management/addExchange.js +++ b/qpid/java/broker-plugins/management-http/src/main/java/resources/js/qpid/management/addExchange.js @@ -110,23 +110,10 @@ define(["dojo/_base/xhr", var newExchange = convertToExchange(theForm.getValues()); var that = this; - xhr.put({url: "api/latest/exchange/"+encodeURIComponent(addExchange.vhostnode) + - "/"+encodeURIComponent(addExchange.vhost) + - "/"+encodeURIComponent(newExchange.name), sync: true, handleAs: "json", - headers: { "Content-Type": "application/json"}, - putData: json.toJson(newExchange), - load: function(x) {that.success = true; }, - error: function(error) {that.success = false; that.failureReason = error;}}); - - if(this.success === true) - { - registry.byId("addExchange").hide(); - } - else - { - util.xhrErrorHandler(this.failureReason); - } - + util.post("api/latest/exchange/" + encodeURIComponent(addExchange.vhostnode) + + "/" + encodeURIComponent(addExchange.vhost) + + "/" + encodeURIComponent(newExchange.name), + newExchange, function(x){ registry.byId("addExchange").hide(); }); return false; diff --git a/qpid/java/broker-plugins/management-http/src/main/java/resources/js/qpid/management/addGroupProvider.js b/qpid/java/broker-plugins/management-http/src/main/java/resources/js/qpid/management/addGroupProvider.js index 81ce40ebe9..f658a8ec3b 100644 --- a/qpid/java/broker-plugins/management-http/src/main/java/resources/js/qpid/management/addGroupProvider.js +++ b/qpid/java/broker-plugins/management-http/src/main/java/resources/js/qpid/management/addGroupProvider.js @@ -124,33 +124,9 @@ define([ var groupProviderData = util.getFormWidgetValues(this.groupProviderForm, this.initialData); var encodedName = encodeURIComponent(this.groupProviderName.value); - var jsonString = json.stringify(groupProviderData); - - try { - xhr.put( - { - url: "api/latest/groupprovider/" + encodedName, - sync: true, - handleAs: "json", - headers: { "Content-Type": "application/json"}, - putData: jsonString, - load: function(x) {success = true; }, - error: function(error) {success = false; failureReason = error;} - }); - } - catch (e) - { - console.warn(e); - } - - if (success == true) - { - this.dialog.hide(); - } - else - { - util.xhrErrorHandler(failureReason); - } + var that = this; + var method = this.initialData ? "put" : "post"; + util[method]("api/latest/groupprovider/" + encodedName, groupProviderData, function(x){that.dialog.hide();}); } else { diff --git a/qpid/java/broker-plugins/management-http/src/main/java/resources/js/qpid/management/addPort.js b/qpid/java/broker-plugins/management-http/src/main/java/resources/js/qpid/management/addPort.js index befb5df9c1..1069e2300b 100644 --- a/qpid/java/broker-plugins/management-http/src/main/java/resources/js/qpid/management/addPort.js +++ b/qpid/java/broker-plugins/management-http/src/main/java/resources/js/qpid/management/addPort.js @@ -267,33 +267,9 @@ define(["dojo/_base/xhr", alert("A trust store must be selected when requesting client certificates."); return false; } - var that = this; - - xhr.put({url: "api/latest/port/" + encodeURIComponent(newPort.name), sync: true, handleAs: "json", - headers: { "Content-Type": "application/json"}, - putData: json.toJson(newPort), - load: function (x) - { - that.success = true; - }, - error: function (error) - { - that.success = false; - that.failureReason = error; - }}); - - if (this.success === true) - { - registry.byId("addPort").hide(); - } - else - { - util.xhrErrorHandler(this.failureReason); - } - + var method = registry.byId("formAddPort.name").get("disabled") ? "put" : "post"; + util[method]("api/latest/port/" + encodeURIComponent(newPort.name), newPort, function(x){registry.byId("addPort").hide()}); return false; - - } else { alert('Form contains invalid data. Please correct first'); diff --git a/qpid/java/broker-plugins/management-http/src/main/java/resources/js/qpid/management/addQueue.js b/qpid/java/broker-plugins/management-http/src/main/java/resources/js/qpid/management/addQueue.js index 236efb2efa..da7879d671 100644 --- a/qpid/java/broker-plugins/management-http/src/main/java/resources/js/qpid/management/addQueue.js +++ b/qpid/java/broker-plugins/management-http/src/main/java/resources/js/qpid/management/addQueue.js @@ -149,25 +149,9 @@ define(["dojo/_base/xhr", if(theForm.validate()){ var newQueue = convertToQueue(theForm.getValues()); - var that = this; - - xhr.put({url: "api/latest/queue/"+encodeURIComponent(addQueue.vhostnode) - +"/"+encodeURIComponent(addQueue.vhost) - +"/"+encodeURIComponent(newQueue.name), sync: true, handleAs: "json", - headers: { "Content-Type": "application/json"}, - putData: json.toJson(newQueue), - load: function(x) {that.success = true; }, - error: function(error) {that.success = false; that.failureReason = error;}}); - - if(this.success === true) - { - registry.byId("addQueue").hide(); - } - else - { - util.xhrErrorHandler(this.failureReason); - } - + util.post("api/latest/queue/" + encodeURIComponent(addQueue.vhostnode) + + "/"+encodeURIComponent(addQueue.vhost) + "/" + encodeURIComponent(newQueue.name), + newQueue, function(x){registry.byId("addQueue").hide();}); return false; diff --git a/qpid/java/broker-plugins/management-http/src/main/java/resources/js/qpid/management/addStore.js b/qpid/java/broker-plugins/management-http/src/main/java/resources/js/qpid/management/addStore.js index caf14d0cc8..ff672e92be 100644 --- a/qpid/java/broker-plugins/management-http/src/main/java/resources/js/qpid/management/addStore.js +++ b/qpid/java/broker-plugins/management-http/src/main/java/resources/js/qpid/management/addStore.js @@ -19,7 +19,6 @@ * */ define(["dojo/_base/lang", - "dojo/_base/xhr", "dojo/dom", "dojo/dom-construct", "dijit/registry", @@ -45,7 +44,7 @@ define(["dojo/_base/lang", "dijit/layout/ContentPane", "dojox/layout/TableContainer", "dojo/domReady!"], - function (lang, xhr, dom, construct, registry, parser, memory, array, event, json, util, metadata, template) + function (lang, dom, construct, registry, parser, memory, array, event, json, util, metadata, template) { var addStore = { @@ -132,33 +131,9 @@ define(["dojo/_base/lang", var storeData = util.getFormWidgetValues(this.storeForm, this.initialData); var encodedStoreName = encodeURIComponent(this.storeName.value); var encodedCategory = encodeURIComponent(this.category.toLowerCase()); - var jsonString = json.stringify(storeData); - - try { - xhr.put( - { - url: "api/latest/" + encodedCategory + "/" + encodedStoreName, - sync: true, - handleAs: "json", - headers: { "Content-Type": "application/json"}, - putData: jsonString, - load: function(x) {success = true; }, - error: function(error) {success = false; failureReason = error;} - }); - } - catch (e) - { - console.warn(e); - } - - if (success == true) - { - this.dialog.hide(); - } - else - { - util.xhrErrorHandler(failureReason); - } + var that = this; + var method = this.effectiveData ? "put" : "post"; + util[method]("api/latest/" + encodedCategory + "/" + encodedStoreName, storeData, function(x){that.dialog.hide();}); } else { diff --git a/qpid/java/broker-plugins/management-http/src/main/java/resources/js/qpid/management/addVirtualHostNodeAndVirtualHost.js b/qpid/java/broker-plugins/management-http/src/main/java/resources/js/qpid/management/addVirtualHostNodeAndVirtualHost.js index 21927ea0e5..2cba022482 100644 --- a/qpid/java/broker-plugins/management-http/src/main/java/resources/js/qpid/management/addVirtualHostNodeAndVirtualHost.js +++ b/qpid/java/broker-plugins/management-http/src/main/java/resources/js/qpid/management/addVirtualHostNodeAndVirtualHost.js @@ -18,7 +18,7 @@ * under the License. * */ -define(["dojo/_base/xhr", +define([ "dojo/_base/event", "dojo/_base/lang", "dojo/_base/array", @@ -48,7 +48,7 @@ define(["dojo/_base/xhr", "dojox/validate/us", "dojox/validate/web", "dojo/domReady!"], - function (xhr, event, lang, array, dom, domConstruct, json, parser, Memory, win, on, fobject, registry, Dialog, Button, FilteringSelect, properties, util, metadata, template) + function (event, lang, array, dom, domConstruct, json, parser, Memory, win, on, fobject, registry, Dialog, Button, FilteringSelect, properties, util, metadata, template) { var addVirtualHostNodeAndVirtualHost = @@ -339,27 +339,9 @@ define(["dojo/_base/xhr", return; } - var success = false,failureReason=null; - + var that = this; var encodedVirtualHostNodeName = encodeURIComponent(virtualHostNodeData.name); - xhr.put({ - url: "api/latest/virtualhostnode/" + encodedVirtualHostNodeName, - sync: true, - handleAs: "json", - headers: { "Content-Type": "application/json"}, - putData: json.stringify(virtualHostNodeData), - load: function(x) {success = true; }, - error: function(error) {success = false; failureReason = error;} - }); - - if (success == true) - { - this.dialog.hide(); - } - else - { - util.xhrErrorHandler(failureReason); - } + util.post("api/latest/virtualhostnode/" + encodedVirtualHostNodeName, virtualHostNodeData, function(x){that.dialog.hide();}); }, _getValues: function (form) { diff --git a/qpid/java/broker-plugins/management-http/src/main/java/resources/js/qpid/management/authenticationprovider/PrincipalDatabaseAuthenticationManager.js b/qpid/java/broker-plugins/management-http/src/main/java/resources/js/qpid/management/authenticationprovider/PrincipalDatabaseAuthenticationManager.js index e6f2249f65..87025adfae 100644 --- a/qpid/java/broker-plugins/management-http/src/main/java/resources/js/qpid/management/authenticationprovider/PrincipalDatabaseAuthenticationManager.js +++ b/qpid/java/broker-plugins/management-http/src/main/java/resources/js/qpid/management/authenticationprovider/PrincipalDatabaseAuthenticationManager.js @@ -202,19 +202,7 @@ define(["dojo/_base/xhr", var url = "api/latest/user/"+encodeURIComponent(addUser.authProvider) + "/"+encodeURIComponent(newUser.name); - - xhr.put({url: url, sync: true, handleAs: "json", - headers: { "Content-Type": "application/json"}, - putData: json.toJson(newUser), - load: function(x) {that.success = true; }, - error: function(error) {that.success = false; that.failureReason = error;}}); - - if(that.success === true) { - registry.byId("addUser").hide(); - } else { - util.xhrErrorHandler(this.failureReason); - } - + util.post(url, newUser, function(x){registry.byId("addUser").hide();}); return false; @@ -260,18 +248,7 @@ define(["dojo/_base/xhr", var url = "api/latest/user/"+encodeURIComponent(setPassword.authProvider) + "/"+encodeURIComponent(newUser.name); - xhr.put({url: url, sync: true, handleAs: "json", - headers: { "Content-Type": "application/json"}, - putData: json.toJson(newUser), - load: function(x) {that.success = true; }, - error: function(error) {that.success = false; that.failureReason = error;}}); - - if(that.success === true) { - registry.byId("setPassword").hide(); - } else { - util.xhrErrorHandler(this.failureReason); - } - + util.put(url, newUser, function(x){registry.byId("setPassword").hide();}); return false; diff --git a/qpid/java/broker-plugins/management-http/src/main/java/resources/js/qpid/management/group/addGroupMember.js b/qpid/java/broker-plugins/management-http/src/main/java/resources/js/qpid/management/group/addGroupMember.js index 0a8e6a2e11..baa08d2309 100644 --- a/qpid/java/broker-plugins/management-http/src/main/java/resources/js/qpid/management/group/addGroupMember.js +++ b/qpid/java/broker-plugins/management-http/src/main/java/resources/js/qpid/management/group/addGroupMember.js @@ -71,22 +71,11 @@ define(["dojo/_base/xhr", var newGroupMember = convertToGroupMember(theForm.getValues()); var that = this; - xhr.put({url: "api/latest/groupmember/"+encodeURIComponent(addGroupMember.groupProvider) + - "/" + encodeURIComponent(addGroupMember.group) + "/" + encodeURIComponent(newGroupMember.name), sync: true, handleAs: "json", - headers: { "Content-Type": "application/json"}, - putData: json.toJson(newGroupMember), - load: function(x) {that.success = true; }, - error: function(error) {that.success = false; that.failureReason = error;}}); - - if(this.success === true) - { - registry.byId("addGroupMember").hide(); - } - else - { - util.xhrErrorHandler(this.failureReason); - } + var url = "api/latest/groupmember/"+encodeURIComponent(addGroupMember.groupProvider) + + "/" + encodeURIComponent(addGroupMember.group) + + "/" + encodeURIComponent(newGroupMember.name); + util.post(url, newGroupMember, function(x){registry.byId("addGroupMember").hide();}); return false; diff --git a/qpid/java/broker-plugins/management-http/src/main/java/resources/js/qpid/management/groupprovider/GroupManagingGroupProvider.js b/qpid/java/broker-plugins/management-http/src/main/java/resources/js/qpid/management/groupprovider/GroupManagingGroupProvider.js index 5788fad8af..4182b580b7 100644 --- a/qpid/java/broker-plugins/management-http/src/main/java/resources/js/qpid/management/groupprovider/GroupManagingGroupProvider.js +++ b/qpid/java/broker-plugins/management-http/src/main/java/resources/js/qpid/management/groupprovider/GroupManagingGroupProvider.js @@ -177,18 +177,7 @@ define(["dojo/_base/xhr", var url = "api/latest/group/"+encodeURIComponent(addGroup.groupProvider) + "/"+encodeURIComponent(newGroup.name); - xhr.put({url: url, sync: true, handleAs: "json", - headers: { "Content-Type": "application/json"}, - putData: json.toJson(newGroup), - load: function(x) {that.success = true; }, - error: function(error) {that.success = false; that.failureReason = error;}}); - - if(that.success === true) { - registry.byId("addGroup").hide(); - } else { - util.xhrErrorHandler(this.failureReason); - } - + util.post(url, newGroup, function(x){registry.byId("addGroup").hide();}); return false; diff --git a/qpid/java/broker-plugins/management-http/src/main/java/resources/js/qpid/management/preferencesprovider/PreferencesProviderForm.js b/qpid/java/broker-plugins/management-http/src/main/java/resources/js/qpid/management/preferencesprovider/PreferencesProviderForm.js index ef8273328b..099a75837b 100644 --- a/qpid/java/broker-plugins/management-http/src/main/java/resources/js/qpid/management/preferencesprovider/PreferencesProviderForm.js +++ b/qpid/java/broker-plugins/management-http/src/main/java/resources/js/qpid/management/preferencesprovider/PreferencesProviderForm.js @@ -87,18 +87,26 @@ function (util, metadata, xhr, declare, array, domConstruct, win, query, json, _ { var preferencesProviderData = util.getFormWidgetValues(this.preferencesProviderForm, this.data) var encodedPreferencesProviderName = encodeURIComponent(this.preferencesProviderNameWidget.get("value")); - var success = false; - var failureReason = null; - xhr.put({ - url: "api/latest/preferencesprovider/" + encodedAuthenticationProviderName + "/" + encodedPreferencesProviderName, - sync: true, - handleAs: "json", - headers: { "Content-Type": "application/json"}, - putData: json.stringify(preferencesProviderData), - load: function (x) { success = true; }, - error: function (error) { success = false; failureReason = error; } - }); - return { success: success, failureReason: failureReason }; + var url = "api/latest/preferencesprovider/" + encodedAuthenticationProviderName + "/" + encodedPreferencesProviderName; + if (this.data) + { + var success = false; + var failureReason = null; + xhr.put({ + url: url, + sync: true, + handleAs: "json", + headers: { "Content-Type": "application/json"}, + putData: json.stringify(preferencesProviderData), + load: function (x) { success = true; }, + error: function (error) { success = false; failureReason = error; } + }); + return { success: success, failureReason: failureReason }; + } + else + { + return util.post(url, preferencesProviderData); + } } return { success: true, failureReason: null }; }, |