You are viewing a plain text version of this content. The canonical link for it is here.
Posted to commits@qpid.apache.org by lq...@apache.org on 2016/04/29 13:04:44 UTC
svn commit: r1741609 [12/31] - in /qpid/java/trunk:
bdbstore/src/main/java/resources/js/qpid/management/virtualhost/bdb/
bdbstore/src/main/java/resources/js/qpid/management/virtualhost/bdb_ha/
bdbstore/src/main/java/resources/js/qpid/management/virtual...
Modified: qpid/java/trunk/broker-plugins/management-http/src/main/java/resources/js/qpid/management/Port.js
URL: http://svn.apache.org/viewvc/qpid/java/trunk/broker-plugins/management-http/src/main/java/resources/js/qpid/management/Port.js?rev=1741609&r1=1741608&r2=1741609&view=diff
==============================================================================
--- qpid/java/trunk/broker-plugins/management-http/src/main/java/resources/js/qpid/management/Port.js (original)
+++ qpid/java/trunk/broker-plugins/management-http/src/main/java/resources/js/qpid/management/Port.js Fri Apr 29 11:04:40 2016
@@ -31,75 +31,93 @@ define(["dojo/dom",
"qpid/management/addPort",
"dojo/text!showPort.html",
"dojo/domReady!"],
- function (dom, parser, query, connect, registry, entities, properties, updater, util, formatter, addPort, template) {
+ function (dom, parser, query, connect, registry, entities, properties, updater, util, formatter, addPort, template)
+ {
- function Port(name, parent, controller) {
+ function Port(name, parent, controller)
+ {
this.name = name;
this.controller = controller;
this.management = controller.management;
- this.modelObj = { type: "port", name: name, parent: parent};
+ this.modelObj = {
+ type: "port",
+ name: name,
+ parent: parent
+ };
}
- Port.prototype.getTitle = function() {
+ Port.prototype.getTitle = function ()
+ {
return "Port: " + this.name;
};
- Port.prototype.open = function(contentPane) {
+ Port.prototype.open = function (contentPane)
+ {
var that = this;
this.contentPane = contentPane;
- contentPane.containerNode.innerHTML = template;
- parser.parse(contentPane.containerNode).then(function(instances)
- {
- that.portUpdater = new PortUpdater(that);
-
- var deletePortButton = query(".deletePortButton", contentPane.containerNode)[0];
- var node = registry.byNode(deletePortButton);
- connect.connect(node, "onClick",
- function(evt){
- that.deletePort();
- });
-
- var editPortButton = query(".editPortButton", contentPane.containerNode)[0];
- var node = registry.byNode(editPortButton);
- connect.connect(node, "onClick",
- function(evt){
- that.showEditDialog();
- });
-
- that.portUpdater.update(function(){updater.add( that.portUpdater );});
- });
+ contentPane.containerNode.innerHTML = template;
+ parser.parse(contentPane.containerNode).then(function (instances)
+ {
+ that.portUpdater = new PortUpdater(that);
+
+ var deletePortButton = query(".deletePortButton",
+ contentPane.containerNode)[0];
+ var node = registry.byNode(deletePortButton);
+ connect.connect(node, "onClick", function (evt)
+ {
+ that.deletePort();
+ });
+
+ var editPortButton = query(".editPortButton",
+ contentPane.containerNode)[0];
+ var node = registry.byNode(editPortButton);
+ connect.connect(node, "onClick", function (evt)
+ {
+ that.showEditDialog();
+ });
+
+ that.portUpdater.update(function ()
+ {
+ updater.add(that.portUpdater);
+ });
+ });
};
- Port.prototype.close = function() {
- updater.remove( this.portUpdater );
+ Port.prototype.close = function ()
+ {
+ updater.remove(this.portUpdater);
};
-
- Port.prototype.deletePort = function() {
- if(confirm("Are you sure you want to delete port '" + entities.encode(this.name) + "'?")) {
+ Port.prototype.deletePort = function ()
+ {
+ if (confirm("Are you sure you want to delete port '" + entities.encode(this.name) + "'?"))
+ {
var that = this;
- this.management.remove(this.modelObj).then(
- function(data) {
- that.contentPane.onClose()
- that.controller.tabContainer.removeChild(that.contentPane);
- that.contentPane.destroyRecursive();
- that.close();
- },
- util.xhrErrorHandler);
+ this.management.remove(this.modelObj).then(function (data)
+ {
+ that.contentPane.onClose()
+ that.controller.tabContainer.removeChild(that.contentPane);
+ that.contentPane.destroyRecursive();
+ that.close();
+ }, util.xhrErrorHandler);
}
}
- Port.prototype.showEditDialog = function() {
+ Port.prototype.showEditDialog = function ()
+ {
var that = this;
this.management.load(that.modelObj.parent)
- .then(function(data)
- {
- var brokerData= data[0];
- addPort.show(that.management, that.modelObj, that.portUpdater.portData.type, brokerData.authenticationproviders, brokerData.keystores, brokerData.truststores);
- },
- util.xhrErrorHandler
- );
+ .then(function (data)
+ {
+ var brokerData = data[0];
+ addPort.show(that.management,
+ that.modelObj,
+ that.portUpdater.portData.type,
+ brokerData.authenticationproviders,
+ brokerData.keystores,
+ brokerData.truststores);
+ }, util.xhrErrorHandler);
}
function PortUpdater(portTab)
@@ -110,15 +128,17 @@ define(["dojo/dom",
this.modelObj = portTab.modelObj;
var containerNode = portTab.contentPane.containerNode;
- function findNode(name) {
+ function findNode(name)
+ {
return query("." + name, containerNode)[0];
}
function storeNodes(names)
{
- for(var i = 0; i < names.length; i++) {
- that[names[i]] = findNode(names[i]);
- }
+ for (var i = 0; i < names.length; i++)
+ {
+ that[names[i]] = findNode(names[i]);
+ }
}
storeNodes(["nameValue",
@@ -150,109 +170,128 @@ define(["dojo/dom",
"threadPoolMaximumValue",
"threadPoolSizeValue",
"portTypeSpecificDetails",
- "portAttributes"
- ]);
+ "portAttributes"]);
}
- PortUpdater.prototype.updateHeader = function()
+ PortUpdater.prototype.updateHeader = function ()
{
function printArray(fieldName, object)
{
var array = object[fieldName];
var data = "<div>";
- if (array) {
- for(var i = 0; i < array.length; i++) {
- data+= "<div>" + entities.encode(array[i]) + "</div>";
+ if (array)
+ {
+ for (var i = 0; i < array.length; i++)
+ {
+ data += "<div>" + entities.encode(array[i]) + "</div>";
}
}
return data + "</div>";
}
- this.nameValue.innerHTML = entities.encode(String(this.portData[ "name" ]));
- this.stateValue.innerHTML = entities.encode(String(this.portData[ "state" ]));
- this.typeValue.innerHTML = entities.encode(String(this.portData[ "type" ]));
- this.portValue.innerHTML = entities.encode(String(this.portData[ "port" ]));
- this.authenticationProviderValue.innerHTML = this.portData[ "authenticationProvider" ] ? entities.encode(String(this.portData[ "authenticationProvider" ])) : "";
- this.protocolsValue.innerHTML = printArray( "protocols", this.portData);
- this.transportsValue.innerHTML = printArray( "transports", this.portData);
- this.bindingAddressValue.innerHTML = this.portData[ "bindingAddress" ] ? entities.encode(String(this.portData[ "bindingAddress" ])) : "" ;
- this.connectionCountValue.innerHTML = this.portData[ "connectionCount" ] ? entities.encode(String(this.portData[ "connectionCount" ])) : "0" ;
- this.maxOpenConnectionsValue.innerHTML = (this.portData[ "maxOpenConnections" ] && this.portData[ "maxOpenConnections" ] >= 0) ? entities.encode(String(this.portData[ "maxOpenConnections" ])) : "(no limit)" ;
- this.threadPoolMinimumValue.innerHTML = entities.encode(String(this.portData["threadPoolMinimum"] || ""));
- this.threadPoolMaximumValue.innerHTML = entities.encode(String(this.portData["threadPoolMaximum"] || ""));
- this.threadPoolSizeValue.innerHTML = entities.encode(String(this.portData["threadPoolSize"] || ""));
-
- this.keyStoreValue.innerHTML = this.portData[ "keyStore" ] ? entities.encode(String(this.portData[ "keyStore" ])) : "";
- this.needClientAuthValue.innerHTML = "<input type='checkbox' disabled='disabled' "+(this.portData[ "needClientAuth" ] ? "checked='checked'": "")+" />" ;
- this.wantClientAuthValue.innerHTML = "<input type='checkbox' disabled='disabled' "+(this.portData[ "wantClientAuth" ] ? "checked='checked'": "")+" />" ;
- this.trustStoresValue.innerHTML = printArray( "trustStores", this.portData);
- this.clientCertRecorderValue.innerHTML = this.portData[ "clientCertRecorder"]? entities.encode(String(this.portData[ "clientCertRecorder"])):"";
-
- var typeMetaData = this.management.metadata.getMetaData("Port", this.portData["type"]);
-
- this.authenticationProvider.style.display = "authenticationProvider" in typeMetaData.attributes ? "block" : "none";
- this.bindingAddress.style.display = "bindingAddress" in typeMetaData.attributes ? "block" : "none";
- this.keyStore.style.display = "keyStore" in typeMetaData.attributes ? "block" : "none";
- this.needClientAuth.style.display = "needClientAuth" in typeMetaData.attributes ? "block" : "none";
- this.wantClientAuth.style.display = "wantClientAuth" in typeMetaData.attributes ? "block" : "none";
- this.trustStores.style.display = "trustStores" in typeMetaData.attributes ? "block" : "none";
-
- var hasThreadPoolMinMaxSettings = "threadPoolMaximum" in typeMetaData.attributes;
- this.threadPoolMinimum.style.display = hasThreadPoolMinMaxSettings ? "block" : "none";
- this.threadPoolMaximum.style.display = hasThreadPoolMinMaxSettings ? "block" : "none";
+ this.nameValue.innerHTML = entities.encode(String(this.portData["name"]));
+ this.stateValue.innerHTML = entities.encode(String(this.portData["state"]));
+ this.typeValue.innerHTML = entities.encode(String(this.portData["type"]));
+ this.portValue.innerHTML = entities.encode(String(this.portData["port"]));
+ this.authenticationProviderValue.innerHTML = this.portData["authenticationProvider"]
+ ? entities.encode(String(this.portData["authenticationProvider"]))
+ : "";
+ this.protocolsValue.innerHTML = printArray("protocols", this.portData);
+ this.transportsValue.innerHTML = printArray("transports", this.portData);
+ this.bindingAddressValue.innerHTML =
+ this.portData["bindingAddress"] ? entities.encode(String(this.portData["bindingAddress"])) : "";
+ this.connectionCountValue.innerHTML =
+ this.portData["connectionCount"] ? entities.encode(String(this.portData["connectionCount"])) : "0";
+ this.maxOpenConnectionsValue.innerHTML =
+ (this.portData["maxOpenConnections"] && this.portData["maxOpenConnections"] >= 0) ? entities.encode(
+ String(this.portData["maxOpenConnections"])) : "(no limit)";
+ this.threadPoolMinimumValue.innerHTML =
+ entities.encode(String(this.portData["threadPoolMinimum"] || ""));
+ this.threadPoolMaximumValue.innerHTML =
+ entities.encode(String(this.portData["threadPoolMaximum"] || ""));
+ this.threadPoolSizeValue.innerHTML = entities.encode(String(this.portData["threadPoolSize"] || ""));
+
+ this.keyStoreValue.innerHTML =
+ this.portData["keyStore"] ? entities.encode(String(this.portData["keyStore"])) : "";
+ this.needClientAuthValue.innerHTML =
+ "<input type='checkbox' disabled='disabled' " + (this.portData["needClientAuth"]
+ ? "checked='checked'"
+ : "") + " />";
+ this.wantClientAuthValue.innerHTML =
+ "<input type='checkbox' disabled='disabled' " + (this.portData["wantClientAuth"]
+ ? "checked='checked'"
+ : "") + " />";
+ this.trustStoresValue.innerHTML = printArray("trustStores", this.portData);
+ this.clientCertRecorderValue.innerHTML = this.portData["clientCertRecorder"]
+ ? entities.encode(String(this.portData["clientCertRecorder"]))
+ : "";
+
+ var typeMetaData = this.management.metadata.getMetaData("Port", this.portData["type"]);
+
+ this.authenticationProvider.style.display =
+ "authenticationProvider" in typeMetaData.attributes ? "block" : "none";
+ this.bindingAddress.style.display = "bindingAddress" in typeMetaData.attributes ? "block" : "none";
+ this.keyStore.style.display = "keyStore" in typeMetaData.attributes ? "block" : "none";
+ this.needClientAuth.style.display = "needClientAuth" in typeMetaData.attributes ? "block" : "none";
+ this.wantClientAuth.style.display = "wantClientAuth" in typeMetaData.attributes ? "block" : "none";
+ this.trustStores.style.display = "trustStores" in typeMetaData.attributes ? "block" : "none";
+
+ var hasThreadPoolMinMaxSettings = "threadPoolMaximum" in typeMetaData.attributes;
+ this.threadPoolMinimum.style.display = hasThreadPoolMinMaxSettings ? "block" : "none";
+ this.threadPoolMaximum.style.display = hasThreadPoolMinMaxSettings ? "block" : "none";
- var hasThreadPoolSizeSettings = "threadPoolSize" in typeMetaData.attributes;
- this.threadPoolSize.style.display = hasThreadPoolSizeSettings ? "block" : "none";
+ var hasThreadPoolSizeSettings = "threadPoolSize" in typeMetaData.attributes;
+ this.threadPoolSize.style.display = hasThreadPoolSizeSettings ? "block" : "none";
- this.maxOpenConnections.style.display = "maxOpenConnections" in typeMetaData.attributes ? "block" : "none";
+ this.maxOpenConnections.style.display =
+ "maxOpenConnections" in typeMetaData.attributes ? "block" : "none";
};
- PortUpdater.prototype.update = function(callback)
+ PortUpdater.prototype.update = function (callback)
{
- var thisObj = this;
+ var thisObj = this;
- this.management.load(this.modelObj).then(function(data)
- {
- thisObj.portData = data[0] || {};
- thisObj.updateUI(thisObj.portData);
- util.flattenStatistics( thisObj.portData );
- if (callback)
- {
- callback();
- }
- thisObj.updateHeader();
- },
- function(error)
- {
- util.tabErrorHandler(error, {updater:thisObj,
- contentPane: thisObj.tabObject.contentPane,
- tabContainer: thisObj.tabObject.controller.tabContainer,
- name: thisObj.modelObj.name,
- category: "Port"});
- });
+ this.management.load(this.modelObj).then(function (data)
+ {
+ thisObj.portData = data[0] || {};
+ thisObj.updateUI(thisObj.portData);
+ util.flattenStatistics(thisObj.portData);
+ if (callback)
+ {
+ callback();
+ }
+ thisObj.updateHeader();
+ }, function (error)
+ {
+ util.tabErrorHandler(error, {
+ updater: thisObj,
+ contentPane: thisObj.tabObject.contentPane,
+ tabContainer: thisObj.tabObject.controller.tabContainer,
+ name: thisObj.modelObj.name,
+ category: "Port"
+ });
+ });
};
- PortUpdater.prototype.updateUI = function(data)
+ PortUpdater.prototype.updateUI = function (data)
{
if (!this.details)
{
var that = this;
- require(["qpid/management/port/" + data.type.toLowerCase() + "/show"],
- function (Details)
- {
- that.details = new Details({
- containerNode: that.portAttributes,
- typeSpecificDetailsNode: that.portTypeSpecificDetails,
- metadata: that.tabObject.management.metadata,
- data: data,
- management: that.tabObject.management,
- modelObj: that.tabObject.modelObj,
- portUpdater: that.portUpdater
- });
- }
- );
+ require(["qpid/management/port/" + data.type.toLowerCase() + "/show"], function (Details)
+ {
+ that.details = new Details({
+ containerNode: that.portAttributes,
+ typeSpecificDetailsNode: that.portTypeSpecificDetails,
+ metadata: that.tabObject.management.metadata,
+ data: data,
+ management: that.tabObject.management,
+ modelObj: that.tabObject.modelObj,
+ portUpdater: that.portUpdater
+ });
+ });
}
else
{
@@ -260,6 +299,5 @@ define(["dojo/dom",
}
}
-
return Port;
});
Modified: qpid/java/trunk/broker-plugins/management-http/src/main/java/resources/js/qpid/management/Preferences.js
URL: http://svn.apache.org/viewvc/qpid/java/trunk/broker-plugins/management-http/src/main/java/resources/js/qpid/management/Preferences.js?rev=1741609&r1=1741608&r2=1741609&view=diff
==============================================================================
--- qpid/java/trunk/broker-plugins/management-http/src/main/java/resources/js/qpid/management/Preferences.js (original)
+++ qpid/java/trunk/broker-plugins/management-http/src/main/java/resources/js/qpid/management/Preferences.js Fri Apr 29 11:04:40 2016
@@ -18,8 +18,7 @@
* under the License.
*
*/
-define([
- "dojo/_base/declare",
+define(["dojo/_base/declare",
"dojo/_base/event",
"dojo/_base/connect",
"dojo/dom",
@@ -49,237 +48,279 @@ define([
"dojox/validate/us",
"dojox/validate/web",
"dojo/domReady!"],
-function (declare, event, connect, dom, domConstruct, parser, json, Memory, ObjectStore, entities, registry, TimeZoneSelector, markup, util) {
+ function (declare, event, connect, dom, domConstruct, parser, json, Memory, ObjectStore, entities, registry, TimeZoneSelector, markup, util)
+ {
- var preferenceNames = ["timeZone", "updatePeriod"];
+ var preferenceNames = ["timeZone", "updatePeriod"];
- return declare("qpid.management.Preferences", null, {
+ return declare("qpid.management.Preferences", null, {
- preferencesDialog: null,
+ preferencesDialog: null,
- constructor: function(management)
- {
- var that = this;
- this.management = management;
- this.userPreferences = {};
- this.domNode = domConstruct.create("div", {innerHTML: markup});
- parser.parse(this.domNode).then(function(instances)
- {
- that._postParse();
- });
- },
- _postParse: function()
- {
- var that = this;
- this.preferencesDialog = registry.byId("preferences.preferencesDialog");
- for(var i=0; i<preferenceNames.length; i++)
- {
- var name = preferenceNames[i];
- this[name] = registry.byId("preferences." + name);
- this[name].on("change", function(val){that._toggleSetButtons();});
- }
-
- this.timeZoneSelector = registry.byId("preferences.timeZone");
- this.timeZoneSelector.set("timezones", this.management.timezone.getAllTimeZones());
- this.setButton = registry.byId("preferences.setButton");
- this.setAndCloseButton = registry.byId("preferences.setAndCloseButton");
- this.setButton.on("click", function(e){that._savePreferences(e, false);});
- this.setAndCloseButton.on("click", function(e){that._savePreferences(e, true);});
- this.theForm = registry.byId("preferences.preferencesForm");
- this.usersGrid = registry.byId("preferences.users");
- this.usersGrid.set("structure", [ { name: "User", field: "name", width: "50%"},
- { name: "Authentication Provider", field: "authenticationProvider", width: "50%"}]);
- this.deleteButton = registry.byId("preferences.deleteButton");
- this.deleteAndCloseButton = registry.byId("preferences.deleteAndCloseButton");
- this.deleteButton.on("click", function(e){that._deletePreferences(false);});
- this.deleteAndCloseButton.on("click", function(e){that._deletePreferences(true);});
-
- var deletePreferencesButtonToggler = function(rowIndex){
- var data = that.usersGrid.selection.getSelected();
- that.deleteButton.set("disabled",!data.length );
- that.deleteAndCloseButton.set("disabled",!data.length );
- };
- connect.connect(this.usersGrid.selection, 'onSelected', deletePreferencesButtonToggler);
- connect.connect(this.usersGrid.selection, 'onDeselected', deletePreferencesButtonToggler);
- this.theForm.on("submit", function(e){event.stop(e); return false;});
-
- this._setValues();
-
- deletePreferencesButtonToggler();
- this.preferencesDialog.startup();
- },
-
- showDialog: function(){
- this._setValues();
- var that = this;
- this._loadUserPreferences(function(){that.preferencesDialog.show();});
- },
-
- destroy: function()
- {
- if (this.preferencesDialog)
- {
- this.preferencesDialog.destroyRecursevly();
- this.preferencesDialog = null;
- }
- },
-
- _savePreferences: function(e, hideDialog)
- {
- var that =this;
- event.stop(e);
- if(this.theForm.validate()){
- var preferences = {};
- for(var i=0; i<preferenceNames.length; i++)
- {
- var name = preferenceNames[i];
- var preferenceWidget = this[name];
- if (preferenceWidget)
- {
- preferences[name] = preferenceWidget.hasOwnProperty("checked") ? preferenceWidget.checked : preferenceWidget.get("value");
- }
- }
-
- this.management.userPreferences.save(
- preferences,
- function(preferences)
- {
- success = true;
- if (hideDialog)
- {
- that.preferencesDialog.hide();
- }
- else
- {
- var reloadUsers = true;
- if (that.users)
- {
- var authenticatedUser = dom.byId("authenticatedUser").innerHTML;
- for(var i=0; i<that.users.length; i++)
- {
- if (that.users[i].name == authenticatedUser)
- {
- reloadUsers = false;
- break;
- }
- }
- }
- if (reloadUsers)
- {
- that._loadUserPreferences();
- }
- }
- that._toggleSetButtons();
- });
- }
- },
-
- _deletePreferences: function(hideDialog){
- var that = this;
- var postDelete = function(data)
- {
- that._loadUserPreferences();
- var authenticatedUser = dom.byId("authenticatedUser").innerHTML;
- for(i = 0; i<data.length; i++)
- {
- if (data[i].name == authenticatedUser)
- {
- that.management.userPreferences.resetPreferences();
- that._setValues();
- break;
- }
- }
- if (hideDialog)
- {
- that.preferencesDialog.hide();
- }
- };
-
- util.deleteSelectedRows(this.usersGrid,
- "Are you sure you want to delete preferences for user",
- this.management,
- "service/userpreferences",
- null,
- "user",
- postDelete );
- },
-
- _setValues: function()
- {
- for(var i = 0; i < preferenceNames.length; i++)
- {
- var name = preferenceNames[i];
- var preferenceWidget = this[name];
- if (preferenceWidget)
- {
- var value = this.management.userPreferences[name]
- if (typeof value == "string")
- {
- value = entities.encode(String(value))
- }
- if (!value && name == "updatePeriod")
- {
- // set to default
- value = 5;
- }
- preferenceWidget.set("value", value);
- if (preferenceWidget.hasOwnProperty("checked"))
- {
- preferenceWidget.set("checked", this.management.userPreferences[name] ? true : false);
- }
- }
- }
- this._toggleSetButtons();
- },
-
- _loadUserPreferences : function(callback)
- {
- var that = this;
- this.management.get({url: "service/userpreferences"}).then(
- function(users)
- {
- for(var i=0; i<users.length; i++)
- {
- users[i].id = encodeURIComponent(users[i].authenticationProvider)
- + "/"
- + encodeURIComponent(users[i].name);
- }
- that.users = users;
- var usersStore = new Memory({data: users, idProperty: "id"});
- var usersDataStore = new ObjectStore({objectStore: usersStore});
- if (that.usersGrid.store)
- {
- that.usersGrid.store.close();
- }
- that.usersGrid.set("store", usersDataStore);
- if (callback)
- {
- callback();
- }
- that.usersGrid._refresh();
- });
- },
-
- _toggleSetButtons: function()
- {
- var changed = false;
- for(var i=0; i<preferenceNames.length; i++)
- {
- var name = preferenceNames[i];
- var preferenceWidget = this[name];
- if (preferenceWidget)
- {
- var value = preferenceWidget.hasOwnProperty("checked") ? preferenceWidget.checked : preferenceWidget.get("value");
- if (value != this.management.userPreferences[name])
- {
- changed = true;
- break;
- }
- }
- }
- this.setButton.set("disabled", !changed);
- this.setAndCloseButton.set("disabled", !changed);
- }
+ constructor: function (management)
+ {
+ var that = this;
+ this.management = management;
+ this.userPreferences = {};
+ this.domNode = domConstruct.create("div", {innerHTML: markup});
+ parser.parse(this.domNode).then(function (instances)
+ {
+ that._postParse();
+ });
+ },
+ _postParse: function ()
+ {
+ var that = this;
+ this.preferencesDialog = registry.byId("preferences.preferencesDialog");
+ for (var i = 0; i < preferenceNames.length; i++)
+ {
+ var name = preferenceNames[i];
+ this[name] = registry.byId("preferences." + name);
+ this[name].on("change", function (val)
+ {
+ that._toggleSetButtons();
+ });
+ }
+
+ this.timeZoneSelector = registry.byId("preferences.timeZone");
+ this.timeZoneSelector.set("timezones", this.management.timezone.getAllTimeZones());
+ this.setButton = registry.byId("preferences.setButton");
+ this.setAndCloseButton = registry.byId("preferences.setAndCloseButton");
+ this.setButton.on("click", function (e)
+ {
+ that._savePreferences(e, false);
+ });
+ this.setAndCloseButton.on("click", function (e)
+ {
+ that._savePreferences(e, true);
+ });
+ this.theForm = registry.byId("preferences.preferencesForm");
+ this.usersGrid = registry.byId("preferences.users");
+ this.usersGrid.set("structure",
+ [{
+ name: "User",
+ field: "name",
+ width: "50%"
+ },
+ {
+ name: "Authentication Provider",
+ field: "authenticationProvider",
+ width: "50%"
+ }]);
+ this.deleteButton = registry.byId("preferences.deleteButton");
+ this.deleteAndCloseButton = registry.byId("preferences.deleteAndCloseButton");
+ this.deleteButton.on("click", function (e)
+ {
+ that._deletePreferences(false);
+ });
+ this.deleteAndCloseButton.on("click", function (e)
+ {
+ that._deletePreferences(true);
+ });
+
+ var deletePreferencesButtonToggler = function (rowIndex)
+ {
+ var data = that.usersGrid.selection.getSelected();
+ that.deleteButton.set("disabled", !data.length);
+ that.deleteAndCloseButton.set("disabled", !data.length);
+ };
+ connect.connect(this.usersGrid.selection, 'onSelected', deletePreferencesButtonToggler);
+ connect.connect(this.usersGrid.selection, 'onDeselected', deletePreferencesButtonToggler);
+ this.theForm.on("submit", function (e)
+ {
+ event.stop(e);
+ return false;
+ });
+
+ this._setValues();
+
+ deletePreferencesButtonToggler();
+ this.preferencesDialog.startup();
+ },
+
+ showDialog: function ()
+ {
+ this._setValues();
+ var that = this;
+ this._loadUserPreferences(function ()
+ {
+ that.preferencesDialog.show();
+ });
+ },
+
+ destroy: function ()
+ {
+ if (this.preferencesDialog)
+ {
+ this.preferencesDialog.destroyRecursevly();
+ this.preferencesDialog = null;
+ }
+ },
+
+ _savePreferences: function (e, hideDialog)
+ {
+ var that = this;
+ event.stop(e);
+ if (this.theForm.validate())
+ {
+ var preferences = {};
+ for (var i = 0; i < preferenceNames.length; i++)
+ {
+ var name = preferenceNames[i];
+ var preferenceWidget = this[name];
+ if (preferenceWidget)
+ {
+ preferences[name] = preferenceWidget.hasOwnProperty("checked")
+ ? preferenceWidget.checked
+ : preferenceWidget.get("value");
+ }
+ }
+
+ this.management.userPreferences.save(preferences, function (preferences)
+ {
+ success = true;
+ if (hideDialog)
+ {
+ that.preferencesDialog.hide();
+ }
+ else
+ {
+ var reloadUsers = true;
+ if (that.users)
+ {
+ var authenticatedUser = dom.byId("authenticatedUser").innerHTML;
+ for (var i = 0; i < that.users.length; i++)
+ {
+ if (that.users[i].name == authenticatedUser)
+ {
+ reloadUsers = false;
+ break;
+ }
+ }
+ }
+ if (reloadUsers)
+ {
+ that._loadUserPreferences();
+ }
+ }
+ that._toggleSetButtons();
+ });
+ }
+ },
+
+ _deletePreferences: function (hideDialog)
+ {
+ var that = this;
+ var postDelete = function (data)
+ {
+ that._loadUserPreferences();
+ var authenticatedUser = dom.byId("authenticatedUser").innerHTML;
+ for (i = 0; i < data.length; i++)
+ {
+ if (data[i].name == authenticatedUser)
+ {
+ that.management.userPreferences.resetPreferences();
+ that._setValues();
+ break;
+ }
+ }
+ if (hideDialog)
+ {
+ that.preferencesDialog.hide();
+ }
+ };
+
+ util.deleteSelectedRows(this.usersGrid,
+ "Are you sure you want to delete preferences for user",
+ this.management,
+ "service/userpreferences",
+ null,
+ "user",
+ postDelete);
+ },
+
+ _setValues: function ()
+ {
+ for (var i = 0; i < preferenceNames.length; i++)
+ {
+ var name = preferenceNames[i];
+ var preferenceWidget = this[name];
+ if (preferenceWidget)
+ {
+ var value = this.management.userPreferences[name]
+ if (typeof value == "string")
+ {
+ value = entities.encode(String(value))
+ }
+ if (!value && name == "updatePeriod")
+ {
+ // set to default
+ value = 5;
+ }
+ preferenceWidget.set("value", value);
+ if (preferenceWidget.hasOwnProperty("checked"))
+ {
+ preferenceWidget.set("checked", this.management.userPreferences[name] ? true : false);
+ }
+ }
+ }
+ this._toggleSetButtons();
+ },
+
+ _loadUserPreferences: function (callback)
+ {
+ var that = this;
+ this.management.get({url: "service/userpreferences"}).then(function (users)
+ {
+ for (var i = 0; i < users.length; i++)
+ {
+ users[i].id =
+ encodeURIComponent(users[i].authenticationProvider)
+ + "/" + encodeURIComponent(
+ users[i].name);
+ }
+ that.users = users;
+ var usersStore = new Memory({
+ data: users,
+ idProperty: "id"
+ });
+ var usersDataStore = new ObjectStore({objectStore: usersStore});
+ if (that.usersGrid.store)
+ {
+ that.usersGrid.store.close();
+ }
+ that.usersGrid.set("store",
+ usersDataStore);
+ if (callback)
+ {
+ callback();
+ }
+ that.usersGrid._refresh();
+ });
+ },
+
+ _toggleSetButtons: function ()
+ {
+ var changed = false;
+ for (var i = 0; i < preferenceNames.length; i++)
+ {
+ var name = preferenceNames[i];
+ var preferenceWidget = this[name];
+ if (preferenceWidget)
+ {
+ var value = preferenceWidget.hasOwnProperty("checked")
+ ? preferenceWidget.checked
+ : preferenceWidget.get("value");
+ if (value != this.management.userPreferences[name])
+ {
+ changed = true;
+ break;
+ }
+ }
+ }
+ this.setButton.set("disabled", !changed);
+ this.setAndCloseButton.set("disabled", !changed);
+ }
- });
-});
+ });
+ });
Modified: qpid/java/trunk/broker-plugins/management-http/src/main/java/resources/js/qpid/management/PreferencesProvider.js
URL: http://svn.apache.org/viewvc/qpid/java/trunk/broker-plugins/management-http/src/main/java/resources/js/qpid/management/PreferencesProvider.js?rev=1741609&r1=1741608&r2=1741609&view=diff
==============================================================================
--- qpid/java/trunk/broker-plugins/management-http/src/main/java/resources/js/qpid/management/PreferencesProvider.js (original)
+++ qpid/java/trunk/broker-plugins/management-http/src/main/java/resources/js/qpid/management/PreferencesProvider.js Fri Apr 29 11:04:40 2016
@@ -32,41 +32,61 @@ define(["dojo/parser",
"qpid/management/addPreferencesProvider",
"dojo/text!showPreferencesProvider.html",
"dojo/domReady!"],
- function (parser, query, construct, array, properties, updater, util, event, registry, domStyle, entities, addPreferencesProvider, template) {
+ function (parser, query, construct, array, properties, updater, util, event, registry, domStyle, entities, addPreferencesProvider, template)
+ {
- function PreferencesProvider(name, parent, controller) {
+ function PreferencesProvider(name, parent, controller)
+ {
this.name = name;
this.controller = controller;
this.management = management;
- this.modelObj = { type: "preferencesprovider", name: name, parent: parent};
+ this.modelObj = {
+ type: "preferencesprovider",
+ name: name,
+ parent: parent
+ };
this.authenticationProviderName = parent.name;
}
- PreferencesProvider.prototype.getTitle = function() {
- return "PreferencesProvider:" + this.authenticationProviderName + "/" + this.name ;
+ PreferencesProvider.prototype.getTitle = function ()
+ {
+ return "PreferencesProvider:" + this.authenticationProviderName + "/" + this.name;
};
- PreferencesProvider.prototype.init = function(node, parentObject) {
- var that = this;
+ PreferencesProvider.prototype.init = function (node, parentObject)
+ {
+ var that = this;
node.innerHTML = template;
- parser.parse(node).then(function(instances)
- {
- that.containerNode = node;
- that.parentObject = parentObject;
- that.preferencesProviderType=query(".preferencesProviderType", node)[0];
- that.preferencesProviderState=query(".preferencesProviderState", node)[0];
- that.editPreferencesProviderButton = query(".editPreferencesProviderButton", node)[0];
- that.deletePreferencesProviderButton = query(".deletePreferencesProviderButton", node)[0];
- that.preferencesProviderAttributes = query(".preferencesProviderAttributes", node)[0];
- that.preferencesDetailsDiv = query(".preferencesDetails", node)[0];
- var editPreferencesProviderWidget = registry.byNode(that.editPreferencesProviderButton);
- editPreferencesProviderWidget.on("click", function(evt){ event.stop(evt); that.editPreferencesProvider();});
- var deletePreferencesProviderWidget = registry.byNode(that.deletePreferencesProviderButton);
- deletePreferencesProviderWidget.on("click", function(evt){ event.stop(evt); that.deletePreferencesProvider();});
- });
+ parser.parse(node).then(function (instances)
+ {
+ that.containerNode = node;
+ that.parentObject = parentObject;
+ that.preferencesProviderType = query(".preferencesProviderType", node)[0];
+ that.preferencesProviderState = query(".preferencesProviderState", node)[0];
+ that.editPreferencesProviderButton =
+ query(".editPreferencesProviderButton", node)[0];
+ that.deletePreferencesProviderButton =
+ query(".deletePreferencesProviderButton", node)[0];
+ that.preferencesProviderAttributes =
+ query(".preferencesProviderAttributes", node)[0];
+ that.preferencesDetailsDiv = query(".preferencesDetails", node)[0];
+ var editPreferencesProviderWidget = registry.byNode(that.editPreferencesProviderButton);
+ editPreferencesProviderWidget.on("click", function (evt)
+ {
+ event.stop(evt);
+ that.editPreferencesProvider();
+ });
+ var deletePreferencesProviderWidget = registry.byNode(that.deletePreferencesProviderButton);
+ deletePreferencesProviderWidget.on("click", function (evt)
+ {
+ event.stop(evt);
+ that.deletePreferencesProvider();
+ });
+ });
};
- PreferencesProvider.prototype.open = function(contentPane) {
+ PreferencesProvider.prototype.open = function (contentPane)
+ {
this.contentPane = contentPane;
this.init(contentPane.containerNode);
this.reload();
@@ -74,102 +94,115 @@ define(["dojo/parser",
updater.add(this.updater);
};
- PreferencesProvider.prototype.close = function() {
- if (this.updater)
- {
- updater.remove( this.updater);
- }
- };
-
- PreferencesProvider.prototype.deletePreferencesProvider = function() {
- if (this.preferencesProviderData){
- var preferencesProviderData = this.preferencesProviderData;
- if(confirm("Are you sure you want to delete preferences provider '" + preferencesProviderData.name + "'?")) {
- var that = this;
- this.management.remove(this.modelObj).then(
- function(data) {
- that.update(null);
-
- // if opened in tab
- if (that.contentPane)
- {
- that.close();
- that.contentPane.onClose()
- that.controller.tabContainer.removeChild(that.contentPane);
- that.contentPane.destroyRecursive();
- }
- else
- {
- var widgets = registry.findWidgets(that.containerNode);
- array.forEach(widgets, function(item) { item.destroyRecursive();});
- construct.empty(that.containerNode);
- if (that.parentObject)
- {
- that.parentObject.onPreferencesProviderDeleted();
- }
- }
- },
- util.xhrErrorHandler);
+ PreferencesProvider.prototype.close = function ()
+ {
+ if (this.updater)
+ {
+ updater.remove(this.updater);
+ }
+ };
+
+ PreferencesProvider.prototype.deletePreferencesProvider = function ()
+ {
+ if (this.preferencesProviderData)
+ {
+ var preferencesProviderData = this.preferencesProviderData;
+ if (confirm("Are you sure you want to delete preferences provider '" + preferencesProviderData.name
+ + "'?"))
+ {
+ var that = this;
+ this.management.remove(this.modelObj).then(function (data)
+ {
+ that.update(null);
+
+ // if opened in tab
+ if (that.contentPane)
+ {
+ that.close();
+ that.contentPane.onClose()
+ that.controller.tabContainer.removeChild(that.contentPane);
+ that.contentPane.destroyRecursive();
+ }
+ else
+ {
+ var widgets = registry.findWidgets(that.containerNode);
+ array.forEach(widgets, function (item)
+ {
+ item.destroyRecursive();
+ });
+ construct.empty(that.containerNode);
+ if (that.parentObject)
+ {
+ that.parentObject.onPreferencesProviderDeleted();
+ }
+ }
+ }, util.xhrErrorHandler);
+ }
+ }
+ };
+
+ PreferencesProvider.prototype.editPreferencesProvider = function ()
+ {
+ if (this.preferencesProviderData)
+ {
+ addPreferencesProvider.show(this.management, this.modelObj);
}
- }
};
- PreferencesProvider.prototype.editPreferencesProvider = function() {
- if (this.preferencesProviderData){
- addPreferencesProvider.show(this.management, this.modelObj);
- }
- };
-
- PreferencesProvider.prototype.update = function(data) {
- this.preferencesProviderData = data;
- if (data)
- {
- this.name = data.name;
- this.preferencesProviderAttributes.style.display = 'block';
- this.editPreferencesProviderButton.style.display = 'inline';
- this.deletePreferencesProviderButton.style.display = 'inline';
- this.preferencesProviderType.innerHTML = entities.encode(String(data.type));
- this.preferencesProviderState.innerHTML = entities.encode(String(data.state));
- if (!this.details)
+ PreferencesProvider.prototype.update = function (data)
+ {
+ this.preferencesProviderData = data;
+ if (data)
{
- var that = this;
- require(["qpid/management/preferencesprovider/" + data.type.toLowerCase() + "/show"],
- function(PreferencesProviderDetails) {
- that.details = new PreferencesProviderDetails(that.preferencesDetailsDiv);
- that.details.update(data);
- });
+ this.name = data.name;
+ this.preferencesProviderAttributes.style.display = 'block';
+ this.editPreferencesProviderButton.style.display = 'inline';
+ this.deletePreferencesProviderButton.style.display = 'inline';
+ this.preferencesProviderType.innerHTML = entities.encode(String(data.type));
+ this.preferencesProviderState.innerHTML = entities.encode(String(data.state));
+ if (!this.details)
+ {
+ var that = this;
+ require(["qpid/management/preferencesprovider/" + data.type.toLowerCase() + "/show"],
+ function (PreferencesProviderDetails)
+ {
+ that.details = new PreferencesProviderDetails(that.preferencesDetailsDiv);
+ that.details.update(data);
+ });
+ }
+ else
+ {
+ this.details.update(data);
+ }
}
else
{
- this.details.update(data);
+ this.editPreferencesProviderButton.style.display = 'none';
+ this.deletePreferencesProviderButton.style.display = 'none';
+ this.preferencesProviderAttributes.style.display = 'none';
+ this.details = null;
}
- }
- else
- {
- this.editPreferencesProviderButton.style.display = 'none';
- this.deletePreferencesProviderButton.style.display = 'none';
- this.preferencesProviderAttributes.style.display = 'none';
- this.details = null;
- }
- };
-
- PreferencesProvider.prototype.reload = function()
- {
- var that = this;
- that.management.load(that.modelObj)
- .then(function(data) {
- var preferencesProviderData = data[0];
- util.flattenStatistics( preferencesProviderData );
- that.update(preferencesProviderData);
- },
- function(error)
- {
- util.tabErrorHandler(error, {updater:that.updater,
- contentPane: that.contentPane,
- tabContainer: that.controller.tabContainer,
- name: that.modelObj.name,
- category: "Preferences Provider"});
- });
+ };
+
+ PreferencesProvider.prototype.reload = function ()
+ {
+ var that = this;
+ that.management.load(that.modelObj)
+ .then(function (data)
+ {
+ var preferencesProviderData = data[0];
+ util.flattenStatistics(preferencesProviderData);
+ that.update(preferencesProviderData);
+ }, function (error)
+ {
+ util.tabErrorHandler(error, {
+ updater: that.updater,
+ contentPane: that.contentPane,
+ tabContainer: that.controller.tabContainer,
+ name: that.modelObj.name,
+ category: "Preferences Provider"
+ });
+ });
};
function PreferencesProviderUpdater(preferencesProvider)
@@ -177,9 +210,9 @@ define(["dojo/parser",
this.preferencesProvider = preferencesProvider;
};
- PreferencesProviderUpdater.prototype.update = function()
+ PreferencesProviderUpdater.prototype.update = function ()
{
- this.preferencesProvider.reload();
+ this.preferencesProvider.reload();
};
return PreferencesProvider;
Modified: qpid/java/trunk/broker-plugins/management-http/src/main/java/resources/js/qpid/management/QueryTab.js
URL: http://svn.apache.org/viewvc/qpid/java/trunk/broker-plugins/management-http/src/main/java/resources/js/qpid/management/QueryTab.js?rev=1741609&r1=1741608&r2=1741609&view=diff
==============================================================================
--- qpid/java/trunk/broker-plugins/management-http/src/main/java/resources/js/qpid/management/QueryTab.js (original)
+++ qpid/java/trunk/broker-plugins/management-http/src/main/java/resources/js/qpid/management/QueryTab.js Fri Apr 29 11:04:40 2016
@@ -19,68 +19,70 @@
*
*/
define(["dojo/parser",
- "dojo/query",
- "dijit/registry",
- "dojox/html/entities",
- "qpid/common/properties",
- "qpid/common/util",
- "qpid/common/formatter",
- "dojo/text!showQueryTab.html",
- "qpid/management/query/QueryBuilder",
- "dojo/dom-construct",
- "dojo/domReady!"],
- function (parser, query, registry, entities, properties, util, formatter, template, QueryBuilder, domConstruct)
- {
-
- function QueryTab(name, parent, controller)
- {
- this.name = name;
- this.controller = controller;
- this.management = controller.management;
- this.parent = parent;
- }
-
- QueryTab.prototype.getTitle = function ()
- {
- return "Query";
- };
-
- QueryTab.prototype.open = function (contentPane)
- {
- var that = this;
- this.contentPane = contentPane;
- contentPane.containerNode.innerHTML = template;
- parser.parse(contentPane.containerNode).then(function (instances)
- {
- that.onOpen(contentPane.containerNode)
- },
- function(e)
- {
- console.error("Unexpected error on parsing query tab template", e);
- });
- };
-
- QueryTab.prototype.onOpen = function (containerNode)
- {
- this.queryEditorNode = query(".queryEditorNode", containerNode)[0];
- this.queryBuilder = new QueryBuilder({management: this.management,
- parentModelObj: this.parent,
- controller: this.controller},
- this.queryEditorNode);
- };
-
- QueryTab.prototype.close = function ()
- {
-
- };
-
- QueryTab.prototype.destroy = function ()
- {
- this.close();
- this.contentPane.onClose();
- this.controller.tabContainer.removeChild(this.contentPane);
- this.contentPane.destroyRecursive();
- };
+ "dojo/query",
+ "dijit/registry",
+ "dojox/html/entities",
+ "qpid/common/properties",
+ "qpid/common/util",
+ "qpid/common/formatter",
+ "dojo/text!showQueryTab.html",
+ "qpid/management/query/QueryBuilder",
+ "dojo/dom-construct",
+ "dojo/domReady!"],
+ function (parser, query, registry, entities, properties, util, formatter, template, QueryBuilder, domConstruct)
+ {
+
+ function QueryTab(name, parent, controller)
+ {
+ this.name = name;
+ this.controller = controller;
+ this.management = controller.management;
+ this.parent = parent;
+ }
+
+ QueryTab.prototype.getTitle = function ()
+ {
+ return "Query";
+ };
+
+ QueryTab.prototype.open = function (contentPane)
+ {
+ var that = this;
+ this.contentPane = contentPane;
+ contentPane.containerNode.innerHTML = template;
+ parser.parse(contentPane.containerNode).then(function (instances)
+ {
+ that.onOpen(contentPane.containerNode)
+ }, function (e)
+ {
+ console.error(
+ "Unexpected error on parsing query tab template",
+ e);
+ });
+ };
+
+ QueryTab.prototype.onOpen = function (containerNode)
+ {
+ this.queryEditorNode = query(".queryEditorNode", containerNode)[0];
+ this.queryBuilder = new QueryBuilder({
+ management: this.management,
+ parentModelObj: this.parent,
+ controller: this.controller
+ }, this.queryEditorNode);
+ };
+
+ QueryTab.prototype.close = function ()
+ {
+
+ };
+
+ QueryTab.prototype.destroy = function ()
+ {
+ this.close();
+ this.contentPane.onClose();
+ this.controller.tabContainer.removeChild(this.contentPane);
+ this.contentPane.destroyRecursive();
+ };
- return QueryTab;
- });
+ return QueryTab;
+ });
---------------------------------------------------------------------
To unsubscribe, e-mail: commits-unsubscribe@qpid.apache.org
For additional commands, e-mail: commits-help@qpid.apache.org