summaryrefslogtreecommitdiff
path: root/java/broker-plugins
diff options
context:
space:
mode:
authorRobert Gemmell <robbie@apache.org>2013-04-23 15:08:27 +0000
committerRobert Gemmell <robbie@apache.org>2013-04-23 15:08:27 +0000
commitc8332e433c389b5c8d45478c98ddc1b13c4d8bcc (patch)
tree7989d49826b589d79d03b09dbe5038584f4ab569 /java/broker-plugins
parent19826f421c43cbaa80c14064e98a932705d5b5ff (diff)
downloadqpid-python-c8332e433c389b5c8d45478c98ddc1b13c4d8bcc.tar.gz
QPID-4753: Add additional tests for updated AcessControlProvider config, inc creating and removing AccessControlProviders and verifying ACLs governing their creation/update/deletion. Add message to web ui to signal the user that only one access control provider of a given type will be used by the broker and they should remove others.
git-svn-id: https://svn.apache.org/repos/asf/qpid/trunk/qpid@1471004 13f79535-47bb-0310-9956-ffa450edef68
Diffstat (limited to 'java/broker-plugins')
-rw-r--r--java/broker-plugins/management-http/src/main/java/resources/js/qpid/authorization/checkUser.js2
-rw-r--r--java/broker-plugins/management-http/src/main/java/resources/js/qpid/management/Broker.js40
-rw-r--r--java/broker-plugins/management-http/src/main/java/resources/showBroker.html1
3 files changed, 42 insertions, 1 deletions
diff --git a/java/broker-plugins/management-http/src/main/java/resources/js/qpid/authorization/checkUser.js b/java/broker-plugins/management-http/src/main/java/resources/js/qpid/authorization/checkUser.js
index 878cf9e3fe..3fc60854f6 100644
--- a/java/broker-plugins/management-http/src/main/java/resources/js/qpid/authorization/checkUser.js
+++ b/java/broker-plugins/management-http/src/main/java/resources/js/qpid/authorization/checkUser.js
@@ -28,7 +28,7 @@ var updateUI = function updateUI(data)
if(data.user)
{
dom.byId("authenticatedUser").innerHTML = data.user;
- dojo.style(dom.byId("login"), {display: 'block'});
+ dom.byId("login").style.display = "block";
}
};
diff --git a/java/broker-plugins/management-http/src/main/java/resources/js/qpid/management/Broker.js b/java/broker-plugins/management-http/src/main/java/resources/js/qpid/management/Broker.js
index eeac5b5c0b..a27e43d1b1 100644
--- a/java/broker-plugins/management-http/src/main/java/resources/js/qpid/management/Broker.js
+++ b/java/broker-plugins/management-http/src/main/java/resources/js/qpid/management/Broker.js
@@ -492,6 +492,7 @@ define(["dojo/_base/xhr",
this.controller = controller;
this.query = "rest/broker";
this.attributes = attributes;
+ this.accessControlProvidersWarn = query(".broker-access-control-providers-warning", node)[0]
var that = this;
xhr.get({url: this.query, sync: properties.useSyncGet, handleAs: "json"})
@@ -647,6 +648,7 @@ define(["dojo/_base/xhr",
that.controller.show("accesscontrolprovider", name, brokerObj);
});
}, gridProperties, EnhancedGrid);
+ that.displayACLWarnMessage(aclData);
});
xhr.get({url: "rest/logrecords", sync: properties.useSyncGet, handleAs: "json"})
@@ -715,6 +717,43 @@ define(["dojo/_base/xhr",
}
};
+ BrokerUpdater.prototype.displayACLWarnMessage = function(aclProviderData)
+ {
+ var message = "";
+ if (aclProviderData.length > 1)
+ {
+ var aclProviders = {};
+ var theSameTypeFound = false;
+ for(var d=0; d<aclProviderData.length; d++)
+ {
+ var acl = aclProviderData[d];
+ var aclType = acl.type;
+ if (aclProviders[aclType])
+ {
+ aclProviders[aclType].push(acl.name);
+ theSameTypeFound = true;
+ }
+ else
+ {
+ aclProviders[aclType] = [acl.name];
+ }
+ }
+
+ if (theSameTypeFound)
+ {
+ message = "Only one instance of a given type will be used. Please remove an instance of type(s):";
+ for(var aclType in aclProviders)
+ {
+ if(aclProviders[aclType].length>1)
+ {
+ message += " " + aclType;
+ }
+ }
+ }
+ }
+ this.accessControlProvidersWarn.innerHTML = message;
+ }
+
BrokerUpdater.prototype.update = function()
{
@@ -749,6 +788,7 @@ define(["dojo/_base/xhr",
{
var data = that.brokerData.accesscontrolproviders ? that.brokerData.accesscontrolproviders :[];
that.accessControlProvidersGrid.update(data);
+ that.displayACLWarnMessage(data);
}
});
diff --git a/java/broker-plugins/management-http/src/main/java/resources/showBroker.html b/java/broker-plugins/management-http/src/main/java/resources/showBroker.html
index 15f7faf318..d9991452af 100644
--- a/java/broker-plugins/management-http/src/main/java/resources/showBroker.html
+++ b/java/broker-plugins/management-http/src/main/java/resources/showBroker.html
@@ -184,6 +184,7 @@
</div>
<br/>
<div data-dojo-type="dijit.TitlePane" data-dojo-props="title: 'Access Control Providers'">
+ <div class="broker-access-control-providers-warning" style="color: red"></div>
<div class="broker-access-control-providers"></div>
<button data-dojo-type="dijit.form.Button" class="addAccessControlProvider">Add Access Control Provider</button>
<button data-dojo-type="dijit.form.Button" class="deleteAccessControlProvider">Delete Access Control Provider</button>