diff options
| author | Keith Wall <kwall@apache.org> | 2014-11-08 12:41:36 +0000 |
|---|---|---|
| committer | Keith Wall <kwall@apache.org> | 2014-11-08 12:41:36 +0000 |
| commit | a943841f59639388b526ae51629d2c0f32311670 (patch) | |
| tree | b92a95691f341ce89f9e84ae36bce5c40e2ee17c /qpid/java | |
| parent | 64ff5cf351b48ab4c050c0b32cee47b83dbbdb60 (diff) | |
| download | qpid-python-a943841f59639388b526ae51629d2c0f32311670.tar.gz | |
QPID-6220: [Java Broker] BDB HA VH edit dialogue - ensure master/replica synch policy displayed reflects that that is in force
* Add missing tooltips too
git-svn-id: https://svn.apache.org/repos/asf/qpid/trunk@1637550 13f79535-47bb-0310-9956-ffa450edef68
Diffstat (limited to 'qpid/java')
9 files changed, 81 insertions, 33 deletions
diff --git a/qpid/java/bdbstore/src/main/java/resources/js/qpid/management/virtualhost/bdb/edit.js b/qpid/java/bdbstore/src/main/java/resources/js/qpid/management/virtualhost/bdb/edit.js index 1167d6b60e..e0dac745c2 100644 --- a/qpid/java/bdbstore/src/main/java/resources/js/qpid/management/virtualhost/bdb/edit.js +++ b/qpid/java/bdbstore/src/main/java/resources/js/qpid/management/virtualhost/bdb/edit.js @@ -19,11 +19,10 @@ define(["dijit/registry", "qpid/common/util", "dojo/domReady!"], function (registry, util) { - var fieldNames = ["storeUnderfullSize", "storeOverfullSize", "storePath"]; return { show: function(data) { - util.buildEditUI(data.containerNode, "virtualhost/sizemonitoring/edit.html", "editVirtualHost.", fieldNames, data.data); + util.buildEditUI(data.containerNode, "virtualhost/sizemonitoring/edit.html", "editVirtualHost.", null, null); registry.byId("editVirtualHost.storeUnderfullSize").set("regExpGen", util.numericOrContextVarRegexp); registry.byId("editVirtualHost.storeOverfullSize").set("regExpGen", util.numericOrContextVarRegexp); diff --git a/qpid/java/bdbstore/src/main/java/resources/js/qpid/management/virtualhost/bdb_ha/edit.js b/qpid/java/bdbstore/src/main/java/resources/js/qpid/management/virtualhost/bdb_ha/edit.js index bd1812e86a..3f36d56397 100644 --- a/qpid/java/bdbstore/src/main/java/resources/js/qpid/management/virtualhost/bdb_ha/edit.js +++ b/qpid/java/bdbstore/src/main/java/resources/js/qpid/management/virtualhost/bdb_ha/edit.js @@ -19,12 +19,10 @@ define(["qpid/common/util", "qpid/common/metadata", "dijit/registry", "dojo/domReady!"], function (util, metadata, registry, win) { - var fieldNames = ["storeUnderfullSize", "storeOverfullSize", - "localTransactionSynchronizationPolicy", "remoteTransactionSynchronizationPolicy"]; return { show: function(data) { - util.buildEditUI(data.containerNode, "virtualhost/bdb_ha/edit.html", "editVirtualHost.", fieldNames, data.data); + util.buildEditUI(data.containerNode, "virtualhost/bdb_ha/edit.html", "editVirtualHost.", null, null); registry.byId("editVirtualHost.storeUnderfullSize").set("regExpGen", util.numericOrContextVarRegexp); registry.byId("editVirtualHost.storeOverfullSize").set("regExpGen", util.numericOrContextVarRegexp); diff --git a/qpid/java/bdbstore/src/main/java/resources/virtualhost/bdb_ha/edit.html b/qpid/java/bdbstore/src/main/java/resources/virtualhost/bdb_ha/edit.html index f4bf0c3c03..64cef941e2 100644 --- a/qpid/java/bdbstore/src/main/java/resources/virtualhost/bdb_ha/edit.html +++ b/qpid/java/bdbstore/src/main/java/resources/virtualhost/bdb_ha/edit.html @@ -54,25 +54,39 @@ <div> <div class="haOptionLabel">Master transaction sync policy</div> - <select id="editVirtualHost.localTransactionSynchronizationPolicy" - name="localTransactionSynchronizationPolicy" - data-dojo-type="dojox/form/CheckedMultiSelect"> - <option value="SYNC">SYNC (the transaction will be written and synchronized to the disk; highest durability)</option> - <option value="WRITE_NO_SYNC">WRITE_NO_SYNC (the transaction will be written only; the synchronization will be performed later)</option> - <option value="NO_SYNC">NO_SYNC (write later; the transaction will be written and synchronized later; lowest durability)</option> - </select> + <span id="editVirtualHost.localTransactionSynchronizationPolicy.span"> + <select id="editVirtualHost.localTransactionSynchronizationPolicy" + name="localTransactionSynchronizationPolicy" + data-dojo-type="dojox/form/CheckedMultiSelect"> + <option value="SYNC">SYNC (the transaction will be written and synchronized to the disk; highest durability)</option> + <option value="WRITE_NO_SYNC">WRITE_NO_SYNC (the transaction will be written only; the synchronization will be performed later)</option> + <option value="NO_SYNC">NO_SYNC (write later; the transaction will be written and synchronized later; lowest durability)</option> + </select> + </span> + <div id="editVirtualHost.localTransactionSynchronizationPolicy.tooltip" + data-dojo-type="dijit/Tooltip" + data-dojo-props="connectId: ['editVirtualHost.localTransactionSynchronizationPolicy', 'editVirtualHost.localTransactionSynchronizationPolicy.span'], + label: 'Synchronization policy applied at a node that is currently a master'"> + </div> </div> <br/> <div> <div class="haOptionLabel">Replica transaction sync policy</div> - <select id="editVirtualHost.remoteTransactionSynchronizationPolicy" - name="remoteTransactionSynchronizationPolicy" - data-dojo-type="dojox/form/CheckedMultiSelect"> - <option value="SYNC">SYNC (the transaction will be written and synchronized to the disk; highest durability)</option> - <option value="WRITE_NO_SYNC">WRITE_NO_SYNC (the transaction will be written only; the synchronization will be performed later)</option> - <option value="NO_SYNC">NO_SYNC (write later; the transaction will be written and synchronized later; lowest durability)</option> - </select> + <span id="editVirtualHost.remoteTransactionSynchronizationPolicy.span"> + <select id="editVirtualHost.remoteTransactionSynchronizationPolicy" + name="remoteTransactionSynchronizationPolicy" + data-dojo-type="dojox/form/CheckedMultiSelect"> + <option value="SYNC">SYNC (the transaction will be written and synchronized to the disk; highest durability)</option> + <option value="WRITE_NO_SYNC">WRITE_NO_SYNC (the transaction will be written only; the synchronization will be performed later)</option> + <option value="NO_SYNC">NO_SYNC (write later; the transaction will be written and synchronized later; lowest durability)</option> + </select> + </span> + <div id="editVirtualHost.remoteTransactionSynchronizationPolicy.tooltip" + data-dojo-type="dijit/Tooltip" + data-dojo-props="connectId: ['editVirtualHost.remoteTransactionSynchronizationPolicy', 'editVirtualHost.remoteTransactionSynchronizationPolicy.span'], + label: 'Synchronization policy applied at a node that is currently a replica'"> + </div> </div> </fieldset> </div> diff --git a/qpid/java/bdbstore/src/main/java/resources/virtualhostnode/bdb_ha/add/newgroup/add.html b/qpid/java/bdbstore/src/main/java/resources/virtualhostnode/bdb_ha/add/newgroup/add.html index 7f7fb53ed8..47df5e5155 100644 --- a/qpid/java/bdbstore/src/main/java/resources/virtualhostnode/bdb_ha/add/newgroup/add.html +++ b/qpid/java/bdbstore/src/main/java/resources/virtualhostnode/bdb_ha/add/newgroup/add.html @@ -70,6 +70,11 @@ title: 'Enter list of the other node address that will form the group'"> </select> <!-- must use closing tag rather than shorthand - dojo bug? --> </div> + <div id="addVirtualHostNode.permittedNodesList.tooltip" + data-dojo-type="dijit/Tooltip" + data-dojo-props="connectId: 'addVirtualHostNode.permittedNodesList', + label: 'Only node addresses appearing in the list will be permitted to join the group.'"> + </div> <button data-dojo-type="dijit/form/Button" id="addVirtualHostNode.permittedNodeRemove" data-dojo-props="label: '-'" ></button> </div> diff --git a/qpid/java/bdbstore/src/main/java/resources/virtualhostnode/bdb_ha/edit.html b/qpid/java/bdbstore/src/main/java/resources/virtualhostnode/bdb_ha/edit.html index 013ae271ec..0faae4323e 100644 --- a/qpid/java/bdbstore/src/main/java/resources/virtualhostnode/bdb_ha/edit.html +++ b/qpid/java/bdbstore/src/main/java/resources/virtualhostnode/bdb_ha/edit.html @@ -73,6 +73,11 @@ data-dojo-type="dijit/form/ValidationTextBox" name="permittedNodes"/> </div> + <div id="editVirtualHostNode.permittedNodesList.tooltip" + data-dojo-type="dijit/Tooltip" + data-dojo-props="connectId: 'editVirtualHostNode.permittedNodesList', + label: 'Only node addresses appearing in the list will be permitted to join the group.'"> + </div> <button data-dojo-type="dijit/form/Button" id="editVirtualHostNode.permittedNodeRemove" data-dojo-props="label: '-'" ></button> </div> diff --git a/qpid/java/broker-plugins/derby-store/src/main/java/resources/js/qpid/management/virtualhost/derby/edit.js b/qpid/java/broker-plugins/derby-store/src/main/java/resources/js/qpid/management/virtualhost/derby/edit.js index 3a3107b01a..a8b68a0c16 100644 --- a/qpid/java/broker-plugins/derby-store/src/main/java/resources/js/qpid/management/virtualhost/derby/edit.js +++ b/qpid/java/broker-plugins/derby-store/src/main/java/resources/js/qpid/management/virtualhost/derby/edit.js @@ -19,11 +19,10 @@ define(["qpid/common/util", "dijit/registry", "dojo/domReady!"], function (util, registry) { - var fieldNames = ["storeUnderfullSize", "storeOverfullSize", "storePath"]; return { show: function(data) { - util.buildEditUI(data.containerNode, "virtualhost/sizemonitoring/edit.html", "editVirtualHost.", fieldNames, data.data); + util.buildEditUI(data.containerNode, "virtualhost/sizemonitoring/edit.html", "editVirtualHost.", null, null); registry.byId("editVirtualHost.storeUnderfullSize").set("regExpGen", util.numericOrContextVarRegexp); registry.byId("editVirtualHost.storeOverfullSize").set("regExpGen", util.numericOrContextVarRegexp); 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 8da0bafd06..771d29601e 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 @@ -572,11 +572,16 @@ define(["dojo/_base/xhr", util.applyMetadataToWidgets = function(domRoot, category, type) { + this.applyToWidgets(domRoot, category, type, null); + } + + util.applyToWidgets = function(domRoot, category, type, data) + { var widgets = util.findAllWidgets(domRoot); array.forEach(widgets, function (widget) { - widgetconfigurer.config(widget, category, type); + widgetconfigurer.config(widget, category, type, data); }); } diff --git a/qpid/java/broker-plugins/management-http/src/main/java/resources/js/qpid/common/widgetconfigurer.js b/qpid/java/broker-plugins/management-http/src/main/java/resources/js/qpid/common/widgetconfigurer.js index 2eb0a9b808..af8f1fc2fb 100644 --- a/qpid/java/broker-plugins/management-http/src/main/java/resources/js/qpid/common/widgetconfigurer.js +++ b/qpid/java/broker-plugins/management-http/src/main/java/resources/js/qpid/common/widgetconfigurer.js @@ -95,26 +95,49 @@ define(["dojo/_base/xhr", } } }, - _processWidgetValue: function (widget, category, type) + _processWidgetValue: function (widget, category, type, data) { var widgetName = widget.name; - if (widgetName && (widget instanceof dijit.form.FilteringSelect || widget instanceof dojox.form.CheckedMultiSelect)) + if (widgetName) { - if (!widget.get("value")) + var defaultValue = metadata.getDefaultValueForAttribute(category, type, widgetName); + var dataValue = data && widgetName in data ? data[widgetName] : null; + + // Stash the default value and initial value so we can later differentiate + // when sending updates to the server + + if (defaultValue) + { + widget.defaultValue = defaultValue; + } + + if (dataValue) + { + widget.initialValue = dataValue; + } + + if (widget instanceof dijit.form.FilteringSelect || widget instanceof dojox.form.CheckedMultiSelect) + { + var widgetValue = dataValue ? dataValue : defaultValue; + if (widgetValue) { - var defaultValue = metadata.getDefaultValueForAttribute(category, type, widgetName); - if (defaultValue) - { - widget.set("value", defaultValue); - } + widget.set("value", widgetValue); + } + } + else + { + if (dataValue) + { + widget.set("value", dataValue); } + } } }, - config: function (widget, category, type) + config: function (widget, category, type, data) { this._processWidgetPrompt(widget, category, type); - this._processWidgetValue(widget, category, type); + this._processWidgetValue(widget, category, type, data); } }; diff --git a/qpid/java/broker-plugins/management-http/src/main/java/resources/js/qpid/management/editVirtualHost.js b/qpid/java/broker-plugins/management-http/src/main/java/resources/js/qpid/management/editVirtualHost.js index 5fca2d5523..849fd9378c 100644 --- a/qpid/java/broker-plugins/management-http/src/main/java/resources/js/qpid/management/editVirtualHost.js +++ b/qpid/java/broker-plugins/management-http/src/main/java/resources/js/qpid/management/editVirtualHost.js @@ -191,7 +191,7 @@ define(["dojo/_base/xhr", TypeUI.show({containerNode:that.typeFieldsContainer, parent: that, data: actualData}); that.form.connectChildren(); - util.applyMetadataToWidgets(that.allFieldsContainer, "VirtualHost", actualData.type); + util.applyToWidgets(that.allFieldsContainer, "VirtualHost", actualData.type, actualData); } catch(e) { |
