Modified: qpid/java/trunk/broker-plugins/management-http/src/main/java/resources/js/qpid/management/AccessControlProvider.js URL: http://svn.apache.org/viewvc/qpid/java/trunk/broker-plugins/management-http/src/main/java/resources/js/qpid/management/AccessControlProvider.js?rev=1741993&r1=1741992&r2=1741993&view=diff ============================================================================== --- qpid/java/trunk/broker-plugins/management-http/src/main/java/resources/js/qpid/management/AccessControlProvider.js (original) +++ qpid/java/trunk/broker-plugins/management-http/src/main/java/resources/js/qpid/management/AccessControlProvider.js Mon May 2 15:57:52 2016 @@ -33,120 +33,129 @@ define(["dojo/parser", "dojox/grid/enhanced/plugins/Pagination", "dojox/grid/enhanced/plugins/IndirectSelection", "dojo/domReady!"], - function (parser, query, connect, properties, updater, util, UpdatableStore, EnhancedGrid, registry, event, entities, template) - { + function (parser, + query, + connect, + properties, + updater, + util, + UpdatableStore, + EnhancedGrid, + registry, + event, + entities, + template) + { + + function AccessControlProvider(name, parent, controller) + { + this.name = name; + this.controller = controller; + this.modelObj = { + type: "accesscontrolprovider", + name: name, + parent: parent + }; + } + + AccessControlProvider.prototype.getTitle = function () + { + return "AccessControlProvider: " + this.name; + }; + + AccessControlProvider.prototype.open = function (contentPane) + { + var that = this; + this.contentPane = contentPane; + + contentPane.containerNode.innerHTML = template; + parser.parse(contentPane.containerNode) + .then(function (instances) + { + that.accessControlProviderUpdater = new AccessControlProviderUpdater(that); + var deleteButton = query(".deleteAccessControlProviderButton", contentPane.containerNode)[0]; + var deleteWidget = registry.byNode(deleteButton); + connect.connect(deleteWidget, "onClick", function (evt) + { + event.stop(evt); + that.deleteAccessControlProvider(); + }); + }); + }; + + AccessControlProvider.prototype.close = function () + { + if (this.accessControlProviderUpdater.details) + { + this.accessControlProviderUpdater.details.close(); + } + }; + + AccessControlProvider.prototype.deleteAccessControlProvider = function () + { + if (confirm("Are you sure you want to delete access control provider '" + this.name + "'?")) + { + var that = this; + this.controller.management.remove(this.modelObj) + .then(function (data) + { + that.close(); + that.contentPane.onClose() + that.controller.tabContainer.removeChild(that.contentPane); + that.contentPane.destroyRecursive(); + }, util.xhrErrorHandler); + } + }; + + function AccessControlProviderUpdater(aclTab) + { + this.tabObject = aclTab; + var node = aclTab.contentPane.containerNode; + var groupProviderObj = aclTab.modelObj; + var controller = aclTab.controller; + + this.controller = controller; + this.management = controller.management; + this.modelObj = groupProviderObj; + this.name = query(".name", node)[0]; + this.type = query(".type", node)[0]; + this.state = query(".state", node)[0]; + + var that = this; + + this.management.load(this.modelObj) + .then(function (data) + { + that.accessControlProviderData = data[0]; + + util.flattenStatistics(that.accessControlProviderData); + + that.updateHeader(); + + var ui = that.accessControlProviderData.type; + require(["qpid/management/accesscontrolprovider/" + ui], function (SpecificProvider) + { + that.details = new SpecificProvider(query(".providerDetails", + node)[0], groupProviderObj, controller, aclTab); + }); + }, function (error) + { + util.tabErrorHandler(error, { + updater: that, + contentPane: that.tabObject.contentPane, + tabContainer: that.tabObject.controller.tabContainer, + name: that.modelObj.name, + category: "Access Control Provider" + }); + }); + } + + AccessControlProviderUpdater.prototype.updateHeader = function () + { + this.name.innerHTML = entities.encode(String(this.accessControlProviderData["name"])); + this.type.innerHTML = entities.encode(String(this.accessControlProviderData["type"])); + this.state.innerHTML = entities.encode(String(this.accessControlProviderData["state"])); + }; - function AccessControlProvider(name, parent, controller) - { - this.name = name; - this.controller = controller; - this.modelObj = { - type: "accesscontrolprovider", - name: name, - parent: parent - }; - } - - AccessControlProvider.prototype.getTitle = function () - { - return "AccessControlProvider: " + this.name; - }; - - AccessControlProvider.prototype.open = function (contentPane) - { - var that = this; - this.contentPane = contentPane; - - contentPane.containerNode.innerHTML = template; - parser.parse(contentPane.containerNode).then(function (instances) - { - that.accessControlProviderUpdater = - new AccessControlProviderUpdater(that); - var deleteButton = query( - ".deleteAccessControlProviderButton", - contentPane.containerNode)[0]; - var deleteWidget = registry.byNode(deleteButton); - connect.connect(deleteWidget, "onClick", function (evt) - { - event.stop(evt); - that.deleteAccessControlProvider(); - }); - }); - }; - - AccessControlProvider.prototype.close = function () - { - if (this.accessControlProviderUpdater.details) - { - this.accessControlProviderUpdater.details.close(); - } - }; - - AccessControlProvider.prototype.deleteAccessControlProvider = function () - { - if (confirm("Are you sure you want to delete access control provider '" + this.name + "'?")) - { - var that = this; - this.controller.management.remove(this.modelObj).then(function (data) - { - that.close(); - that.contentPane.onClose() - that.controller.tabContainer.removeChild( - that.contentPane); - that.contentPane.destroyRecursive(); - }, util.xhrErrorHandler); - } - }; - - function AccessControlProviderUpdater(aclTab) - { - this.tabObject = aclTab; - var node = aclTab.contentPane.containerNode; - var groupProviderObj = aclTab.modelObj; - var controller = aclTab.controller; - - this.controller = controller; - this.management = controller.management; - this.modelObj = groupProviderObj; - this.name = query(".name", node)[0]; - this.type = query(".type", node)[0]; - this.state = query(".state", node)[0]; - - var that = this; - - this.management.load(this.modelObj) - .then(function (data) - { - that.accessControlProviderData = data[0]; - - util.flattenStatistics(that.accessControlProviderData); - - that.updateHeader(); - - var ui = that.accessControlProviderData.type; - require(["qpid/management/accesscontrolprovider/" + ui], function (SpecificProvider) - { - that.details = new SpecificProvider(query(".providerDetails", - node)[0], groupProviderObj, controller, aclTab); - }); - }, function (error) - { - util.tabErrorHandler(error, { - updater: that, - contentPane: that.tabObject.contentPane, - tabContainer: that.tabObject.controller.tabContainer, - name: that.modelObj.name, - category: "Access Control Provider" - }); - }); - } - - AccessControlProviderUpdater.prototype.updateHeader = function () - { - this.name.innerHTML = entities.encode(String(this.accessControlProviderData["name"])); - this.type.innerHTML = entities.encode(String(this.accessControlProviderData["type"])); - this.state.innerHTML = entities.encode(String(this.accessControlProviderData["state"])); - }; - - return AccessControlProvider; - }); + return AccessControlProvider; + });
Modified: qpid/java/trunk/broker-plugins/management-http/src/main/java/resources/js/qpid/management/AuthenticationProvider.js URL: http://svn.apache.org/viewvc/qpid/java/trunk/broker-plugins/management-http/src/main/java/resources/js/qpid/management/AuthenticationProvider.js?rev=1741993&r1=1741992&r2=1741993&view=diff ============================================================================== --- qpid/java/trunk/broker-plugins/management-http/src/main/java/resources/js/qpid/management/AuthenticationProvider.js (original) +++ qpid/java/trunk/broker-plugins/management-http/src/main/java/resources/js/qpid/management/AuthenticationProvider.js Mon May 2 15:57:52 2016 @@ -36,257 +36,262 @@ define(["dojo/parser", "qpid/management/authenticationprovider/PrincipalDatabaseAuthenticationManager", "dojo/text!showAuthProvider.html", "dojo/domReady!"], - function (parser, query, connect, properties, updater, util, UpdatableStore, EnhancedGrid, addAuthenticationProvider, event, registry, domStyle, entities, dom, PreferencesProvider, PrincipalDatabaseAuthenticationManager, template) - { + function (parser, + query, + connect, + properties, + updater, + util, + UpdatableStore, + EnhancedGrid, + addAuthenticationProvider, + event, + registry, + domStyle, + entities, + dom, + PreferencesProvider, + PrincipalDatabaseAuthenticationManager, + template) + { + + function AuthenticationProvider(name, parent, controller) + { + this.name = name; + this.controller = controller; + this.management = management; + this.modelObj = { + type: "authenticationprovider", + name: name, + parent: parent + }; + } + + AuthenticationProvider.prototype.getTitle = function () + { + return "AuthenticationProvider:" + this.name; + }; + + AuthenticationProvider.prototype.open = function (contentPane) + { + var that = this; + this.contentPane = contentPane; + contentPane.containerNode.innerHTML = template; + parser.parse(contentPane.containerNode) + .then(function (instances) + { + + var authProviderUpdater = new AuthProviderUpdater(contentPane.containerNode, that.modelObj, that.controller, that); + that.authProviderUpdater = authProviderUpdater; + + var editButtonNode = query(".editAuthenticationProviderButton", contentPane.containerNode)[0]; + var editButtonWidget = registry.byNode(editButtonNode); + editButtonWidget.on("click", function (evt) + { + event.stop(evt); + addAuthenticationProvider.show(that.management, + that.modelObj, + authProviderUpdater.authProviderData); + }); + authProviderUpdater.editButton = editButtonWidget; + + var deleteButton = query(".deleteAuthenticationProviderButton", contentPane.containerNode)[0]; + var deleteWidget = registry.byNode(deleteButton); + connect.connect(deleteWidget, "onClick", function (evt) + { + event.stop(evt); + that.deleteAuthenticationProvider(); + }); + + authProviderUpdater.update(function () + { + if (that.management.metadata.implementsManagedInterface("AuthenticationProvider", + authProviderUpdater.authProviderData.type, + "PasswordCredentialManagingAuthenticationProvider")) + { + authProviderUpdater.managingUsersUI = + new PrincipalDatabaseAuthenticationManager(contentPane.containerNode, authProviderUpdater.modelObj, that.controller); + authProviderUpdater.managingUsersUI.update(authProviderUpdater.authProviderData); + } + + var supportsPreferencesProvider = that.management.metadata.implementsManagedInterface( + "AuthenticationProvider", + authProviderUpdater.authProviderData.type, + "PreferencesSupportingAuthenticationProvider"); + if (!supportsPreferencesProvider) + { + var preferencesPanel = query(".preferencesPanel", contentPane.containerNode); + if (preferencesPanel && preferencesPanel[0]) + { + var preferencesProviderPanel = registry.byNode(preferencesPanel[0]); + domStyle.set(preferencesProviderPanel.domNode, "display", "none"); + } + } + else + { + var preferencesProviderData = authProviderUpdater.authProviderData.preferencesproviders + ? authProviderUpdater.authProviderData.preferencesproviders[0] + : null; + authProviderUpdater.updatePreferencesProvider(preferencesProviderData); + } + + updater.add(that.authProviderUpdater); + }); + }); + }; + + AuthenticationProvider.prototype.close = function () + { + updater.remove(this.authProviderUpdater); + if (this.authProviderUpdater.details) + { + updater.remove(this.authProviderUpdater.details.authDatabaseUpdater); + } + }; + + AuthenticationProvider.prototype.deleteAuthenticationProvider = function () + { + if (confirm("Are you sure you want to delete authentication provider '" + this.name + "'?")) + { + var that = this; + this.management.remove(this.modelObj) + .then(function (data) + { + that.close(); + that.contentPane.onClose() + that.controller.tabContainer.removeChild(that.contentPane); + that.contentPane.destroyRecursive(); + }, util.xhrErrorHandler); + } + }; + + function AuthProviderUpdater(node, authProviderObj, controller, authenticationProvider) + { + this.controller = controller; + this.management = management; + this.modelObj = authProviderObj; + this.name = query(".name", node)[0]; + this.type = query(".type", node)[0]; + this.state = query(".state", node)[0]; + this.tabObject = authenticationProvider; + this.preferencesProviderType = dom.byId("preferencesProviderType"); + this.preferencesProviderName = dom.byId("preferencesProviderName"); + this.preferencesProviderState = dom.byId("preferencesProviderState"); + this.editPreferencesProviderButton = query(".editPreferencesProviderButton", node)[0]; + this.deletePreferencesProviderButton = query(".deletePreferencesProviderButton", node)[0]; + this.preferencesProviderAttributes = dom.byId("preferencesProviderAttributes") + this.preferencesNode = query(".preferencesProviderDetails", node)[0]; + this.authenticationProviderDetailsContainer = query(".authenticationProviderDetails", node)[0]; + } + + AuthProviderUpdater.prototype.updatePreferencesProvider = function (preferencesProviderData) + { + if (preferencesProviderData) + { + if (!this.preferencesProvider) + { + var preferencesProvider = new PreferencesProvider(preferencesProviderData.name, this.authProviderData); + preferencesProvider.init(this.preferencesNode, this); + this.preferencesProvider = preferencesProvider; + } + this.preferencesProvider.update(preferencesProviderData); + } + else + { + if (this.preferencesProvider) + { + this.preferencesProvider.update(null); + } + } + }; + + AuthProviderUpdater.prototype.onPreferencesProviderDeleted = function () + { + this.preferencesProvider = null; + } + + AuthProviderUpdater.prototype.updateHeader = function () + { + this.tabObject.name = this.authProviderData["name"] + this.name.innerHTML = entities.encode(String(this.authProviderData["name"])); + this.type.innerHTML = entities.encode(String(this.authProviderData["type"])); + this.state.innerHTML = entities.encode(String(this.authProviderData["state"])); + }; + + AuthProviderUpdater.prototype.update = function (callback) + { + var that = this; + this.management.load(this.modelObj) + .then(function (data) + { + that._update(data[0]); + if (callback) + { + callback(); + } + }, function (error) + { + util.tabErrorHandler(error, { + updater: that, + contentPane: that.tabObject.contentPane, + tabContainer: that.tabObject.controller.tabContainer, + name: that.modelObj.name, + category: "Authentication Provider" + }); + }); + }; + + AuthProviderUpdater.prototype._update = function (data) + { + var that = this; + this.authProviderData = data; + util.flattenStatistics(data); + this.updateHeader(); + + if (this.details) + { + this.details.update(data); + } + else + { + require(["qpid/management/authenticationprovider/" + encodeURIComponent(data.type.toLowerCase()) + + "/show"], function (DetailsUI) + { + that.details = new DetailsUI({ + containerNode: that.authenticationProviderDetailsContainer, + parent: that + }); + that.details.update(data); + }); + } + + if (this.managingUsersUI) + { + try + { + this.managingUsersUI.update(data); + } + catch (e) + { + if (console) + { + console.error(e); + } + } + } + var preferencesProviderData = data.preferencesproviders ? data.preferencesproviders[0] : null; + try + { + this.updatePreferencesProvider(preferencesProviderData); + } + catch (e) + { + if (console) + { + console.error(e); + } + } + } - function AuthenticationProvider(name, parent, controller) - { - this.name = name; - this.controller = controller; - this.management = management; - this.modelObj = { - type: "authenticationprovider", - name: name, - parent: parent - }; - } - - AuthenticationProvider.prototype.getTitle = function () - { - return "AuthenticationProvider:" + this.name; - }; - - AuthenticationProvider.prototype.open = function (contentPane) - { - var that = this; - this.contentPane = contentPane; - contentPane.containerNode.innerHTML = template; - parser.parse(contentPane.containerNode).then(function (instances) - { - - var authProviderUpdater = new AuthProviderUpdater(contentPane.containerNode, that.modelObj, that.controller, that); - that.authProviderUpdater = authProviderUpdater; - - var editButtonNode = query( - ".editAuthenticationProviderButton", - contentPane.containerNode)[0]; - var editButtonWidget = registry.byNode(editButtonNode); - editButtonWidget.on("click", function (evt) - { - event.stop(evt); - addAuthenticationProvider.show(that.management, - that.modelObj, - authProviderUpdater.authProviderData); - }); - authProviderUpdater.editButton = editButtonWidget; - - var deleteButton = query( - ".deleteAuthenticationProviderButton", - contentPane.containerNode)[0]; - var deleteWidget = registry.byNode(deleteButton); - connect.connect(deleteWidget, "onClick", function (evt) - { - event.stop(evt); - that.deleteAuthenticationProvider(); - }); - - authProviderUpdater.update(function () - { - if (that.management.metadata.implementsManagedInterface( - "AuthenticationProvider", - authProviderUpdater.authProviderData.type, - "PasswordCredentialManagingAuthenticationProvider")) - { - authProviderUpdater.managingUsersUI = - new PrincipalDatabaseAuthenticationManager(contentPane.containerNode, authProviderUpdater.modelObj, that.controller); - authProviderUpdater.managingUsersUI.update( - authProviderUpdater.authProviderData); - } - - var supportsPreferencesProvider = that.management.metadata.implementsManagedInterface( - "AuthenticationProvider", - authProviderUpdater.authProviderData.type, - "PreferencesSupportingAuthenticationProvider"); - if (!supportsPreferencesProvider) - { - var preferencesPanel = query( - ".preferencesPanel", - contentPane.containerNode); - if (preferencesPanel - && preferencesPanel[0]) - { - var preferencesProviderPanel = registry.byNode( - preferencesPanel[0]); - domStyle.set( - preferencesProviderPanel.domNode, - "display", - "none"); - } - } - else - { - var preferencesProviderData = authProviderUpdater.authProviderData.preferencesproviders - ? authProviderUpdater.authProviderData.preferencesproviders[0] - : null; - authProviderUpdater.updatePreferencesProvider( - preferencesProviderData); - } - - updater.add(that.authProviderUpdater); - }); - }); - }; - - AuthenticationProvider.prototype.close = function () - { - updater.remove(this.authProviderUpdater); - if (this.authProviderUpdater.details) - { - updater.remove(this.authProviderUpdater.details.authDatabaseUpdater); - } - }; - - AuthenticationProvider.prototype.deleteAuthenticationProvider = function () - { - if (confirm("Are you sure you want to delete authentication provider '" + this.name + "'?")) - { - var that = this; - this.management.remove(this.modelObj).then(function (data) - { - that.close(); - that.contentPane.onClose() - that.controller.tabContainer.removeChild(that.contentPane); - that.contentPane.destroyRecursive(); - }, util.xhrErrorHandler); - } - }; - - function AuthProviderUpdater(node, authProviderObj, controller, authenticationProvider) - { - this.controller = controller; - this.management = management; - this.modelObj = authProviderObj; - this.name = query(".name", node)[0]; - this.type = query(".type", node)[0]; - this.state = query(".state", node)[0]; - this.tabObject = authenticationProvider; - this.preferencesProviderType = dom.byId("preferencesProviderType"); - this.preferencesProviderName = dom.byId("preferencesProviderName"); - this.preferencesProviderState = dom.byId("preferencesProviderState"); - this.editPreferencesProviderButton = query(".editPreferencesProviderButton", node)[0]; - this.deletePreferencesProviderButton = query(".deletePreferencesProviderButton", node)[0]; - this.preferencesProviderAttributes = dom.byId("preferencesProviderAttributes") - this.preferencesNode = query(".preferencesProviderDetails", node)[0]; - this.authenticationProviderDetailsContainer = query(".authenticationProviderDetails", node)[0]; - } - - AuthProviderUpdater.prototype.updatePreferencesProvider = function (preferencesProviderData) - { - if (preferencesProviderData) - { - if (!this.preferencesProvider) - { - var preferencesProvider = new PreferencesProvider(preferencesProviderData.name, this.authProviderData); - preferencesProvider.init(this.preferencesNode, this); - this.preferencesProvider = preferencesProvider; - } - this.preferencesProvider.update(preferencesProviderData); - } - else - { - if (this.preferencesProvider) - { - this.preferencesProvider.update(null); - } - } - }; - - AuthProviderUpdater.prototype.onPreferencesProviderDeleted = function () - { - this.preferencesProvider = null; - } - - AuthProviderUpdater.prototype.updateHeader = function () - { - this.tabObject.name = this.authProviderData["name"] - this.name.innerHTML = entities.encode(String(this.authProviderData["name"])); - this.type.innerHTML = entities.encode(String(this.authProviderData["type"])); - this.state.innerHTML = entities.encode(String(this.authProviderData["state"])); - }; - - AuthProviderUpdater.prototype.update = function (callback) - { - var that = this; - this.management.load(this.modelObj).then(function (data) - { - that._update(data[0]); - if (callback) - { - callback(); - } - }, function (error) - { - util.tabErrorHandler(error, { - updater: that, - contentPane: that.tabObject.contentPane, - tabContainer: that.tabObject.controller.tabContainer, - name: that.modelObj.name, - category: "Authentication Provider" - }); - }); - }; - - AuthProviderUpdater.prototype._update = function (data) - { - var that = this; - this.authProviderData = data; - util.flattenStatistics(data); - this.updateHeader(); - - if (this.details) - { - this.details.update(data); - } - else - { - require(["qpid/management/authenticationprovider/" + encodeURIComponent(data.type.toLowerCase()) - + "/show"], function (DetailsUI) - { - that.details = new DetailsUI({ - containerNode: that.authenticationProviderDetailsContainer, - parent: that - }); - that.details.update(data); - }); - } - - if (this.managingUsersUI) - { - try - { - this.managingUsersUI.update(data); - } - catch (e) - { - if (console) - { - console.error(e); - } - } - } - var preferencesProviderData = data.preferencesproviders ? data.preferencesproviders[0] : null; - try - { - this.updatePreferencesProvider(preferencesProviderData); - } - catch (e) - { - if (console) - { - console.error(e); - } - } - } - - return AuthenticationProvider; - }); + return AuthenticationProvider; + }); --------------------------------------------------------------------- To unsubscribe, e-mail: [email protected] For additional commands, e-mail: [email protected]
