summaryrefslogtreecommitdiff
path: root/qpid
diff options
context:
space:
mode:
authorRobert Godfrey <rgodfrey@apache.org>2014-08-02 21:22:13 +0000
committerRobert Godfrey <rgodfrey@apache.org>2014-08-02 21:22:13 +0000
commit6ff0bc6c8a2b191519b3186ab997f9eb9aa309cb (patch)
treeccc0710d3c5b766798d048814e98653c7ee8f51a /qpid
parent5ab883396032cd6da58f5097bd75a05beadc10f0 (diff)
downloadqpid-python-6ff0bc6c8a2b191519b3186ab997f9eb9aa309cb.tar.gz
QPID-5956 : [Java Broker] Management UI for add/edit ports should allow multiple selection of both TCP and SSL transports for HTTP and AMQP
git-svn-id: https://svn.apache.org/repos/asf/qpid/trunk@1615370 13f79535-47bb-0310-9956-ffa450edef68
Diffstat (limited to 'qpid')
-rw-r--r--qpid/java/broker-plugins/management-http/src/main/java/resources/addPort.html5
-rw-r--r--qpid/java/broker-plugins/management-http/src/main/java/resources/js/qpid/management/addPort.js32
2 files changed, 29 insertions, 8 deletions
diff --git a/qpid/java/broker-plugins/management-http/src/main/java/resources/addPort.html b/qpid/java/broker-plugins/management-http/src/main/java/resources/addPort.html
index c7676d27b7..1ece4b2651 100644
--- a/qpid/java/broker-plugins/management-http/src/main/java/resources/addPort.html
+++ b/qpid/java/broker-plugins/management-http/src/main/java/resources/addPort.html
@@ -73,9 +73,8 @@
</select>
</div>
<div id="formAddPort:transport" >
- <select id="formAddPort.transports" data-dojo-type="dijit.form.FilteringSelect"
- data-dojo-props="name: 'transports',label: 'Transport:',searchAttr: 'name',required:false,placeHolder: 'TCP', value: '' "
- style="margin: 0;">
+ <select id="formAddPort.transports" name="transports" data-dojo-type="dijit.form.MultiSelect" multiple="true"
+ data-dojo-props="name: 'transports',label: 'Transport:',placeHolder: 'TCP', value: '' ">
<option value="TCP">TCP</option>
<option value="SSL">SSL</option>
</select>
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 5f9c1bc810..a3e1160dc1 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
@@ -119,7 +119,7 @@ define(["dojo/_base/xhr",
var initialTransport = transportWidget.initialValue;
var currentTransport = transportWidget.value;
- if (currentTransport == "SSL")
+ if (currentTransport == "SSL" || (lang.isArray(currentTransport) && array.indexOf(currentTransport, "SSL")>=0))
{
newPort.needClientAuth = needClientAuth.checked;
newPort.wantClientAuth = wantClientAuth.checked
@@ -154,7 +154,9 @@ define(["dojo/_base/xhr",
{
var clientAuthPanel = dojo.byId("formAddPort:fieldsClientAuth");
var display = clientAuthPanel.style.display;
- if (transportType == "SSL" && (protocolType == "AMQP" || protocolType == "HTTP"))
+
+ if ((transportType == "SSL" || (lang.isArray(transportType) && array.indexOf(transportType, "SSL")>=0))
+ && (protocolType == "AMQP" || protocolType == "HTTP"))
{
clientAuthPanel.style.display = "block";
registry.byId("formAddPort.needClientAuth").set("disabled", false);
@@ -169,7 +171,7 @@ define(["dojo/_base/xhr",
var transportSSLPanel = registry.byId("formAddPort:fieldsTransportSSL");
var transportSSLPanelDisplay = transportSSLPanel.domNode.style.display;
- if (transportType == "SSL")
+ if (transportType == "SSL" || (lang.isArray(transportType) && array.indexOf(transportType, "SSL")>=0))
{
transportSSLPanel.domNode.style.display = "block";
registry.byId("formAddPort.keyStore").set("disabled", false);
@@ -200,6 +202,11 @@ define(["dojo/_base/xhr",
registry.byId("formAddPort.transports").on("change", function(newValue){
var protocolType = registry.byId("formAddPort.type").value;
+ if(lang.isArray(newValue) && newValue.length == 2 && protocolType == "JMX")
+ {
+ registry.byId("formAddPort.transports").set("value", ["SSL"]);
+ newValue = "SSL"
+ }
toggleSslWidgets(protocolType, newValue);
});
@@ -235,13 +242,24 @@ define(["dojo/_base/xhr",
{
if (transportWidget.value != "TCP")
{
- transportWidget.set("value", "TCP");
+ transportWidget.set("value", ["TCP"]);
// changing of transport widget value will cause the call to toggleSslWidgets
toggleSsl = false;
}
disableTransportWidget = true;
+
+ }
+ else if(newValue == "JMX" )
+ {
+ var transports = transportWidget.value;
+ if(lang.isArray(transports) && transports.length == 2)
+ {
+ transportWidget.set("value", ["SSL"]);
+ }
}
+
+
if (toggleSsl)
{
toggleSslWidgets(newValue, transportWidget.value);
@@ -250,6 +268,9 @@ define(["dojo/_base/xhr",
registry.byId("formAddPort.authenticationProvider").set("disabled", isRMI);
registry.byId("formAddPort:fieldsAuthenticationProvider").domNode.style.display = isRMI? "none" : "block";
registry.byId("formAddPort:fieldsBindingAddress").domNode.style.display = newValue == "JMX" ? "none" : "block";
+ registry.byId("formAddPort:transport").domNode.style.display = isRMI ? "none" : "block";
+
+
});
@@ -280,6 +301,7 @@ define(["dojo/_base/xhr",
transportWidget.set("value", "TCP");
}
transportWidget.set("disabled", isRMI);
+ registry.byId("formAddPort:transport").domNode.style.display = isRMI ? "none" : "block";
registry.byId("formAddPort:fieldsAuthenticationProvider").domNode.style.display = isRMI? "none" : "block";
registry.byId("formAddPort.authenticationProvider").set("disabled", isRMI);
});
@@ -407,7 +429,7 @@ define(["dojo/_base/xhr",
}
var transportWidget = registry.byId("formAddPort.transports");
- transportWidget.set("value", port.transports ? port.transports[0] : "");
+ transportWidget.set("value", port.transports);
registry.byId("formAddPort.port").set("value", port.port);
var protocols = port.protocols;
var typeWidget = registry.byId("formAddPort.type");