You are viewing a plain text version of this content. The canonical link for it is here.
Posted to commits@qpid.apache.org by kw...@apache.org on 2017/03/07 11:54:24 UTC

svn commit: r1785831 - in /qpid/java/trunk: broker-plugins/management-http/src/main/java/resources/ broker-plugins/management-http/src/main/java/resources/css/ broker-plugins/management-http/src/main/java/resources/js/qpid/management/ doc/java-broker/s...

Author: kwall
Date: Tue Mar  7 11:54:20 2017
New Revision: 1785831

URL: http://svn.apache.org/viewvc?rev=1785831&view=rev
Log:
QPID-7618: Improve presentation of the overflow policies within the Web Management Console

Modified:
    qpid/java/trunk/broker-plugins/management-http/src/main/java/resources/addQueue.html
    qpid/java/trunk/broker-plugins/management-http/src/main/java/resources/css/common.css
    qpid/java/trunk/broker-plugins/management-http/src/main/java/resources/editQueue.html
    qpid/java/trunk/broker-plugins/management-http/src/main/java/resources/js/qpid/management/Queue.js
    qpid/java/trunk/broker-plugins/management-http/src/main/java/resources/showQueue.html
    qpid/java/trunk/doc/java-broker/src/docbkx/Java-Broker-Appendix-Queue-Declaration-Arguments.xml
    qpid/java/trunk/doc/java-broker/src/docbkx/concepts/Java-Broker-Concepts-Queues.xml

Modified: qpid/java/trunk/broker-plugins/management-http/src/main/java/resources/addQueue.html
URL: http://svn.apache.org/viewvc/qpid/java/trunk/broker-plugins/management-http/src/main/java/resources/addQueue.html?rev=1785831&r1=1785830&r2=1785831&view=diff
==============================================================================
--- qpid/java/trunk/broker-plugins/management-http/src/main/java/resources/addQueue.html (original)
+++ qpid/java/trunk/broker-plugins/management-http/src/main/java/resources/addQueue.html Tue Mar  7 11:54:20 2017
@@ -137,6 +137,32 @@
                     </select>
                 </div>
             </div>
+            <div class="clear">
+                <div class="formLabel-labelCell">Maximum Ttl:</div>
+                <div class="formLabel-controlCell">
+                    <input type="text" id="formAddQueue.maximumMessageTtl"
+                           data-dojo-type="dijit/form/ValidationTextBox"
+                           data-dojo-props="
+                                  name: 'maximumMessageTtl',
+                                  placeHolder: 'ttl in ms',
+                                  promptMessage: 'Maximum message time to live (ttl) in ms. Messages arriving with larger ttl values will be overridden by this value',
+                                  title: 'Enter the maximum message time to live in milliseconds',
+                                  trim: true"/>
+                </div>
+            </div>
+            <div class="clear">
+                <div class="formLabel-labelCell">Minimum Ttl:</div>
+                <div class="formLabel-controlCell">
+                    <input type="text" id="formAddQueue.minimumMessageTtl"
+                           data-dojo-type="dijit/form/ValidationTextBox"
+                           data-dojo-props="
+                                  name: 'minimumMessageTtl',
+                                  placeHolder: 'ttl in ms',
+                                  promptMessage: 'Minimum message time to live (ttl) in ms. Messages arriving with smaller ttl values will be overridden by this value',
+                                  title: 'Enter the minimum message time to live in milliseconds',
+                                  trim: true"/>
+                </div>
+            </div>
 
             <div class="clear formBox">
                 <fieldset>
@@ -191,165 +217,133 @@
 
             <div class="clear formBox">
                 <fieldset>
-            <div class="clear">
-                <div class="formLabel-labelCell">Maximum Ttl:</div>
-                <div class="formLabel-controlCell">
-                    <input type="text" id="formAddQueue.maximumMessageTtl"
-                           data-dojo-type="dijit/form/ValidationTextBox"
-                           data-dojo-props="
-                                  name: 'maximumMessageTtl',
-                                  placeHolder: 'ttl in ms',
-                                  promptMessage: 'Maximum message time to live (ttl) in ms. Messages arriving with larger ttl values will be overridden by this value',
-                                  title: 'Enter the maximum message time to live in milliseconds',
-                                  trim: true"/>
-                </div>
-            </div>
-            <div class="clear">
-                <div class="formLabel-labelCell">Minimum Ttl:</div>
-                <div class="formLabel-controlCell">
-                    <input type="text" id="formAddQueue.minimumMessageTtl"
-                           data-dojo-type="dijit/form/ValidationTextBox"
-                           data-dojo-props="
-                                  name: 'minimumMessageTtl',
-                                  placeHolder: 'ttl in ms',
-                                  promptMessage: 'Minimum message time to live (ttl) in ms. Messages arriving with smaller ttl values will be overridden by this value',
-                                  title: 'Enter the minimum message time to live in milliseconds',
-                                  trim: true"/>
-                </div>
-            </div>
-                    <div class="clear"></div>
-                </fieldset>
-            </div>
-
-            <div class="clear formBox">
-                <fieldset>
-                <legend>Alerting Settings</legend>
-                <div class="clear">
-                    <div class="formLabel-labelCell">Queue Depth (Messages):</div>
-                    <div class="formLabel-controlCell">
-                        <input type="text" id="formAddQueue.alertThresholdQueueDepthMessages"
-                               data-dojo-type="dijit/form/ValidationTextBox"
-                               data-dojo-props="
-                                  name: 'alertThresholdQueueDepthMessages',
-                                  placeHolder: 'number of messages',
-                                  promptMessage: 'Ceiling value for number of messages on queue before alerts will be generated',
-                                  title: 'Enter the ceiling value for number of messages on queue before alerts will be generated',
-                                  trim: true"/>
+                    <legend>Alerting Settings</legend>
+                    <div class="clear">
+                        <div class="formLabel-labelCell">Queue Depth (Messages):</div>
+                        <div class="formLabel-controlCell">
+                            <input type="text" id="formAddQueue.alertThresholdQueueDepthMessages"
+                                   data-dojo-type="dijit/form/ValidationTextBox"
+                                   data-dojo-props="
+                                      name: 'alertThresholdQueueDepthMessages',
+                                      placeHolder: 'number of messages',
+                                      promptMessage: 'Ceiling value for number of messages on queue before alerts will be generated',
+                                      title: 'Enter the ceiling value for number of messages on queue before alerts will be generated',
+                                      trim: true"/>
+                        </div>
                     </div>
-                </div>
-                <div class="clear">
-                    <div class="formLabel-labelCell">Queue Depth (Bytes):</div>
-                    <div class="formLabel-controlCell">
-                        <input type="text" id="formAddQueue.alertThresholdQueueDepthBytes"
-                               data-dojo-type="dijit/form/ValidationTextBox"
-                               data-dojo-props="
-                                  name: 'alertThresholdQueueDepthBytes',
-                                  placeHolder: 'total message size in bytes',
-                                  promptMessage: 'Ceiling value (in bytes) for total size of all messages on the queue before alerts will be generated',
-                                  title: 'Enter the ceiling value (in bytes) for total size of all messages on the queue before alerts will be generated',
-                                  trim: true"/>
+                    <div class="clear">
+                        <div class="formLabel-labelCell">Queue Depth (Bytes):</div>
+                        <div class="formLabel-controlCell">
+                            <input type="text" id="formAddQueue.alertThresholdQueueDepthBytes"
+                                   data-dojo-type="dijit/form/ValidationTextBox"
+                                   data-dojo-props="
+                                      name: 'alertThresholdQueueDepthBytes',
+                                      placeHolder: 'total message size in bytes',
+                                      promptMessage: 'Ceiling value (in bytes) for total size of all messages on the queue before alerts will be generated',
+                                      title: 'Enter the ceiling value (in bytes) for total size of all messages on the queue before alerts will be generated',
+                                      trim: true"/>
+                        </div>
                     </div>
-                </div>
-                <div class="clear">
-                    <div class="formLabel-labelCell">Message Age:</div>
-                    <div class="formLabel-controlCell">
-                        <input type="text" id="formAddQueue.alertThresholdMessageAge"
-                               data-dojo-type="dijit/form/ValidationTextBox"
-                               data-dojo-props="
-                                  name: 'alertThresholdMessageAge',
-                                  placeHolder: 'time in ms',
-                                  promptMessage: 'Message age (in milliseconds) above which alerts will be generated',
-                                  title: 'Enter the message age (in milliseconds) above which alerts will be generated',
-                                  trim: true"/>
+                    <div class="clear">
+                        <div class="formLabel-labelCell">Message Age:</div>
+                        <div class="formLabel-controlCell">
+                            <input type="text" id="formAddQueue.alertThresholdMessageAge"
+                                   data-dojo-type="dijit/form/ValidationTextBox"
+                                   data-dojo-props="
+                                      name: 'alertThresholdMessageAge',
+                                      placeHolder: 'time in ms',
+                                      promptMessage: 'Message age (in milliseconds) above which alerts will be generated',
+                                      title: 'Enter the message age (in milliseconds) above which alerts will be generated',
+                                      trim: true"/>
+                        </div>
                     </div>
-                </div>
-                <div class="clear">
-                    <div class="formLabel-labelCell">Message Size:</div>
-                    <div class="formLabel-controlCell">
-                        <input type="text" id="formAddQueue.alertThresholdMessageSize"
-                               data-dojo-type="dijit/form/ValidationTextBox"
-                               data-dojo-props="
-                                  name: 'alertThresholdMessageSize',
-                                  placeHolder: 'message size in bytes',
-                                  promptMessage: 'Message size (in bytes) above which alerts will be generated',
-                                  title: 'Enter the message size (in bytes) above which alerts will be generated',
-                                  trim: true"/>
+                    <div class="clear">
+                        <div class="formLabel-labelCell">Message Size:</div>
+                        <div class="formLabel-controlCell">
+                            <input type="text" id="formAddQueue.alertThresholdMessageSize"
+                                   data-dojo-type="dijit/form/ValidationTextBox"
+                                   data-dojo-props="
+                                      name: 'alertThresholdMessageSize',
+                                      placeHolder: 'message size in bytes',
+                                      promptMessage: 'Message size (in bytes) above which alerts will be generated',
+                                      title: 'Enter the message size (in bytes) above which alerts will be generated',
+                                      trim: true"/>
+                        </div>
                     </div>
-                </div>
-                <div class="clear">
-                    <div class="formLabel-labelCell">Gap between alerts:</div>
-                    <div class="formLabel-controlCell">
-                        <input type="text" id="formAddQueue.alertRepeatGap"
-                               data-dojo-type="dijit/form/ValidationTextBox"
-                               data-dojo-props="
-                                  name: 'alertRepeatGap',
-                                  placeHolder: 'time in ms',
-                                  promptMessage: 'Minimum time (in milliseconds) between each alert',
-                                  title: 'Enter the minimum time (in milliseconds) between each alert.',
-                                  trim: true"/>
+                    <div class="clear">
+                        <div class="formLabel-labelCell">Gap between alerts:</div>
+                        <div class="formLabel-controlCell">
+                            <input type="text" id="formAddQueue.alertRepeatGap"
+                                   data-dojo-type="dijit/form/ValidationTextBox"
+                                   data-dojo-props="
+                                      name: 'alertRepeatGap',
+                                      placeHolder: 'time in ms',
+                                      promptMessage: 'Minimum time (in milliseconds) between each alert',
+                                      title: 'Enter the minimum time (in milliseconds) between each alert.',
+                                      trim: true"/>
+                        </div>
                     </div>
-                </div>
                 </fieldset>
                 <div class="clear"></div>
             </div>
 
             <div class="clear formBox">
                 <fieldset>
-                <legend>Other Settings</legend>
-                <div class="clear">
-                    <div class="formLabel-labelCell">Maximum Delivery Retries:</div>
-                    <div class="formLabel-controlCell">
-                        <input type="text" id="formAddQueue.maximumDeliveryAttempts"
-                               data-dojo-type="dijit/form/ValidationTextBox"
-                               data-dojo-props="
-                                  name: 'maximumDeliveryAttempts',
-                                  placeHolder: 'number of retries',
-                                  promptMessage: 'Maximum number of delivery attempts before the message will be sent to the alternate exchange',
-                                  title: 'Enter the maximum number of delivery attempts before the message will be sent to the alternate exchange',
-                                  trim: true"/>
+                    <legend>Other Settings</legend>
+                    <div class="clear">
+                        <div class="formLabel-labelCell">Maximum Delivery Retries:</div>
+                        <div class="formLabel-controlCell">
+                            <input type="text" id="formAddQueue.maximumDeliveryAttempts"
+                                   data-dojo-type="dijit/form/ValidationTextBox"
+                                   data-dojo-props="
+                                      name: 'maximumDeliveryAttempts',
+                                      placeHolder: 'number of retries',
+                                      promptMessage: 'Maximum number of delivery attempts before the message will be sent to the alternate exchange',
+                                      title: 'Enter the maximum number of delivery attempts before the message will be sent to the alternate exchange',
+                                      trim: true"/>
+                        </div>
                     </div>
-                </div>
-                <div class="clear">
-                    <div class="formLabel-labelCell">Create DLQ?</div>
-                    <div class="formLabel-controlCell">
-                        <input type="checkbox" id="formAddQueue.dlqEnabled"
-                               dojoType="dijit.form.CheckBox"
-                               data-dojo-props="
-                              name: 'x-qpid-dlq-enabled',
-                              value: 'dlqEnabled',
-                              title: 'Controls where a dead letter queue is automatically created',
-                              checked: false"/>
+                    <div class="clear">
+                        <div class="formLabel-labelCell">Create DLQ?</div>
+                        <div class="formLabel-controlCell">
+                            <input type="checkbox" id="formAddQueue.dlqEnabled"
+                                   dojoType="dijit.form.CheckBox"
+                                   data-dojo-props="
+                                  name: 'x-qpid-dlq-enabled',
+                                  value: 'dlqEnabled',
+                                  title: 'Controls where a dead letter queue is automatically created',
+                                  checked: false"/>
+                        </div>
                     </div>
-                </div>
 
-                <div class="clear"></div>
-                <div class="infoMessage">Configuring maximum delivery retries on a queue which has no DLQ or alternate <br/>exchange will result in messages being discarded after the limit is reached.</div>
+                    <div class="clear"></div>
+                    <div class="infoMessage">Configuring maximum delivery retries on a queue which has no DLQ or alternate <br/>exchange will result in messages being discarded after the limit is reached.</div>
 
-                <div class="clear">
-                    <div class="formLabel-labelCell">Message Group Key:</div>
-                    <div class="formLabel-controlCell">
-                        <input type="text" id="formAddQueue.messageGroupKey"
-                               data-dojo-type="dijit/form/ValidationTextBox"
-                               data-dojo-props="
-                                  name: 'messageGroupKey',
-                                  placeHolder: 'message group key',
-                                  promptMessage: 'Name of the message property used for message grouping',
-                                  title: 'Enter the name of the message property used for message grouping',
-                                  trim: true"/>
+                    <div class="clear">
+                        <div class="formLabel-labelCell">Message Group Key:</div>
+                        <div class="formLabel-controlCell">
+                            <input type="text" id="formAddQueue.messageGroupKey"
+                                   data-dojo-type="dijit/form/ValidationTextBox"
+                                   data-dojo-props="
+                                      name: 'messageGroupKey',
+                                      placeHolder: 'message group key',
+                                      promptMessage: 'Name of the message property used for message grouping',
+                                      title: 'Enter the name of the message property used for message grouping',
+                                      trim: true"/>
+                        </div>
                     </div>
-                </div>
-                <div class="clear">
-                    <div class="formLabel-labelCell">Shared Message Groups?</div>
-                    <div class="formLabel-controlCell">
-                        <input type="checkbox" id="formAddQueue.messageGroupSharedGroups"
-                               dojoType="dijit.form.CheckBox"
-                               data-dojo-props="
-                              name: 'messageGroupSharedGroups',
-                              value: 'messageGroupSharedGroups',
-                              checked: false,
-                              title: 'Controls where a shared groups feature is enabled'"/>
+                    <div class="clear">
+                        <div class="formLabel-labelCell">Shared Message Groups?</div>
+                        <div class="formLabel-controlCell">
+                            <input type="checkbox" id="formAddQueue.messageGroupSharedGroups"
+                                   dojoType="dijit.form.CheckBox"
+                                   data-dojo-props="
+                                  name: 'messageGroupSharedGroups',
+                                  value: 'messageGroupSharedGroups',
+                                  checked: false,
+                                  title: 'Controls where a shared groups feature is enabled'"/>
+                        </div>
                     </div>
-                </div>
                     <div class="clear">
                         <div class="formLabel-labelCell">Hold on Publish Enabled?</div>
                         <div class="formLabel-controlCell">

Modified: qpid/java/trunk/broker-plugins/management-http/src/main/java/resources/css/common.css
URL: http://svn.apache.org/viewvc/qpid/java/trunk/broker-plugins/management-http/src/main/java/resources/css/common.css?rev=1785831&r1=1785830&r2=1785831&view=diff
==============================================================================
--- qpid/java/trunk/broker-plugins/management-http/src/main/java/resources/css/common.css (original)
+++ qpid/java/trunk/broker-plugins/management-http/src/main/java/resources/css/common.css Tue Mar  7 11:54:20 2017
@@ -721,3 +721,8 @@ td.advancedSearchField, col.autoWidth {
 {
     background-color: darkgray;
 }
+
+.notApplicable
+{
+    font-style: italic;
+}

Modified: qpid/java/trunk/broker-plugins/management-http/src/main/java/resources/editQueue.html
URL: http://svn.apache.org/viewvc/qpid/java/trunk/broker-plugins/management-http/src/main/java/resources/editQueue.html?rev=1785831&r1=1785830&r2=1785831&view=diff
==============================================================================
--- qpid/java/trunk/broker-plugins/management-http/src/main/java/resources/editQueue.html (original)
+++ qpid/java/trunk/broker-plugins/management-http/src/main/java/resources/editQueue.html Tue Mar  7 11:54:20 2017
@@ -131,6 +131,32 @@
                         </select>
                     </div>
                 </div>
+                <div class="clear">
+                    <div class="formLabel-labelCell">Maximum Ttl:</div>
+                    <div class="formLabel-controlCell">
+                        <input type="text" id="formEditQueue.maximumMessageTtl"
+                               data-dojo-type="dijit/form/ValidationTextBox"
+                               data-dojo-props="
+                                      name: 'maximumMessageTtl',
+                                      placeHolder: 'ttl in ms',
+                                      promptMessage: 'Maximum message time to live (ttl) in ms. Messages arriving with larger ttl values will be overridden by this value',
+                                      title: 'Enter the maximum message time to live in milliseconds',
+                                      trim: true"/>
+                    </div>
+                </div>
+                <div class="clear">
+                    <div class="formLabel-labelCell">Minimum Ttl:</div>
+                    <div class="formLabel-controlCell">
+                        <input type="text" id="formEditQueue.minimumMessageTtl"
+                               data-dojo-type="dijit/form/ValidationTextBox"
+                               data-dojo-props="
+                                      name: 'minimumMessageTtl',
+                                      placeHolder: 'ttl in ms',
+                                      promptMessage: 'Minimum message time to live (ttl) in ms. Messages arriving with smaller ttl values will be overridden by this value',
+                                      title: 'Enter the minimum message time to live in milliseconds',
+                                      trim: true"/>
+                    </div>
+                </div>
 
                 <div class="clear formBox">
                     <fieldset>
@@ -161,8 +187,8 @@
                                        data-dojo-props="
                                       name: 'maximumQueueDepthMessages',
                                       placeHolder: 'maximum number of messages',
-                                      promptMessage: 'Maximum number of messages in the queue',
-                                      title: 'Enter the maximum number of messages in the queue',
+                                      promptMessage: 'Maximum number of messages on the queue. If overflow policy is None or value is negative, no maximum is enforeced.',
+                                      title: 'Enter the maximum number of messages on the queue',
                                       trim: true"/>
                             </div>
                         </div>
@@ -174,8 +200,8 @@
                                        data-dojo-props="
                                       name: 'maximumQueueDepthBytes',
                                       placeHolder: 'maximum number of bytes',
-                                      promptMessage: 'Maximum number of bytes (including headers) in the queue',
-                                      title: 'Enter the maximum number of bytes (including headers) in the queue',
+                                      promptMessage: 'Maximum number of bytes on the queue. If overflow policy is None or value is negative, no maximum is enforeced.',
+                                      title: 'Enter the maximum number of bytes on the queue',
                                       trim: true"/>
                             </div>
                         </div>
@@ -185,125 +211,92 @@
 
                 <div class="clear formBox">
                     <fieldset>
-                <div class="clear">
-                    <div class="formLabel-labelCell">Maximum Ttl:</div>
-                    <div class="formLabel-controlCell">
-                        <input type="text" id="formEditQueue.maximumMessageTtl"
-                               data-dojo-type="dijit/form/ValidationTextBox"
-                               data-dojo-props="
-                                      name: 'maximumMessageTtl',
-                                      placeHolder: 'ttl in ms',
-                                      promptMessage: 'Maximum message time to live (ttl) in ms. Messages arriving with larger ttl values will be overridden by this value',
-                                      title: 'Enter the maximum message time to live in milliseconds',
-                                      trim: true"/>
-                    </div>
-                </div>
-                <div class="clear">
-                    <div class="formLabel-labelCell">Minimum Ttl:</div>
-                    <div class="formLabel-controlCell">
-                        <input type="text" id="formEditQueue.minimumMessageTtl"
-                               data-dojo-type="dijit/form/ValidationTextBox"
-                               data-dojo-props="
-                                      name: 'minimumMessageTtl',
-                                      placeHolder: 'ttl in ms',
-                                      promptMessage: 'Minimum message time to live (ttl) in ms. Messages arriving with smaller ttl values will be overridden by this value',
-                                      title: 'Enter the minimum message time to live in milliseconds',
-                                      trim: true"/>
-                    </div>
-                </div>
-
-                <div class="clear"></div>
-                    </fieldset>
-                </div>
-
-                <div class="clear formBox">
-                    <fieldset>
                         <legend>Alerting Settings</legend>
                         <div class="clear">
-                        <div class="formLabel-labelCell">Queue Depth (Messages):</div>
-                        <div class="formLabel-controlCell">
-                            <input type="text" id="formEditQueue.alertThresholdQueueDepthMessages"
-                                   data-dojo-type="dijit/form/ValidationTextBox"
-                                   data-dojo-props="
-                                      name: 'alertThresholdQueueDepthMessages',
-                                      placeHolder: 'number of messages',
-                                      promptMessage: 'Ceiling value for number of messages on queue before alerts will be generated',
-                                      title: 'Enter the ceiling value for number of messages on queue before alerts will be generated',
-                                      trim: true"/>
+                            <div class="formLabel-labelCell">Queue Depth (Messages):</div>
+                            <div class="formLabel-controlCell">
+                                <input type="text" id="formEditQueue.alertThresholdQueueDepthMessages"
+                                       data-dojo-type="dijit/form/ValidationTextBox"
+                                       data-dojo-props="
+                                          name: 'alertThresholdQueueDepthMessages',
+                                          placeHolder: 'number of messages',
+                                          promptMessage: 'Ceiling value for number of messages on queue before alerts will be generated',
+                                          title: 'Enter the ceiling value for number of messages on queue before alerts will be generated',
+                                          trim: true"/>
+                            </div>
                         </div>
-                    </div>
-                    <div class="clear">
-                        <div class="formLabel-labelCell">Queue Depth (Bytes):</div>
-                        <div class="formLabel-controlCell">
-                            <input type="text" id="formEditQueue.alertThresholdQueueDepthBytes"
-                                   data-dojo-type="dijit/form/ValidationTextBox"
-                                   data-dojo-props="
-                                      name: 'alertThresholdQueueDepthBytes',
-                                      placeHolder: 'total message size in bytes',
-                                      promptMessage: 'Ceiling value (in bytes) for total size of all messages on the queue before alerts will be generated',
-                                      title: 'Enter the ceiling value (in bytes) for total size of all messages on the queue before alerts will be generated',
-                                      trim: true"/>
+                        <div class="clear">
+                            <div class="formLabel-labelCell">Queue Depth (Bytes):</div>
+                            <div class="formLabel-controlCell">
+                                <input type="text" id="formEditQueue.alertThresholdQueueDepthBytes"
+                                       data-dojo-type="dijit/form/ValidationTextBox"
+                                       data-dojo-props="
+                                          name: 'alertThresholdQueueDepthBytes',
+                                          placeHolder: 'total message size in bytes',
+                                          promptMessage: 'Ceiling value (in bytes) for total size of all messages on the queue before alerts will be generated',
+                                          title: 'Enter the ceiling value (in bytes) for total size of all messages on the queue before alerts will be generated',
+                                          trim: true"/>
+                            </div>
                         </div>
-                    </div>
-                    <div class="clear">
-                        <div class="formLabel-labelCell">Message Age:</div>
-                        <div class="formLabel-controlCell">
-                            <input type="text" id="formEditQueue.alertThresholdMessageAge"
-                                   data-dojo-type="dijit/form/ValidationTextBox"
-                                   data-dojo-props="
-                                      name: 'alertThresholdMessageAge',
-                                      placeHolder: 'time in ms',
-                                      promptMessage: 'Message age (in milliseconds) above which alerts will be generated',
-                                      title: 'Enter the message age (in milliseconds) above which alerts will be generated',
-                                      trim: true"/>
+                        <div class="clear">
+                            <div class="formLabel-labelCell">Message Age:</div>
+                            <div class="formLabel-controlCell">
+                                <input type="text" id="formEditQueue.alertThresholdMessageAge"
+                                       data-dojo-type="dijit/form/ValidationTextBox"
+                                       data-dojo-props="
+                                          name: 'alertThresholdMessageAge',
+                                          placeHolder: 'time in ms',
+                                          promptMessage: 'Message age (in milliseconds) above which alerts will be generated',
+                                          title: 'Enter the message age (in milliseconds) above which alerts will be generated',
+                                          trim: true"/>
+                            </div>
                         </div>
-                    </div>
-                    <div class="clear">
-                        <div class="formLabel-labelCell">Message Size:</div>
-                        <div class="formLabel-controlCell">
-                            <input type="text" id="formEditQueue.alertThresholdMessageSize"
-                                   data-dojo-type="dijit/form/ValidationTextBox"
-                                   data-dojo-props="
-                                      name: 'alertThresholdMessageSize',
-                                      placeHolder: 'message size in bytes',
-                                      promptMessage: 'Message size (in bytes) above which alerts will be generated',
-                                      title: 'Enter the message size (in bytes) above which alerts will be generated',
-                                      trim: true"/>
+                        <div class="clear">
+                            <div class="formLabel-labelCell">Message Size:</div>
+                            <div class="formLabel-controlCell">
+                                <input type="text" id="formEditQueue.alertThresholdMessageSize"
+                                       data-dojo-type="dijit/form/ValidationTextBox"
+                                       data-dojo-props="
+                                          name: 'alertThresholdMessageSize',
+                                          placeHolder: 'message size in bytes',
+                                          promptMessage: 'Message size (in bytes) above which alerts will be generated',
+                                          title: 'Enter the message size (in bytes) above which alerts will be generated',
+                                          trim: true"/>
+                            </div>
                         </div>
-                    </div>
-                    <div class="clear">
-                        <div class="formLabel-labelCell">Gap between alerts:</div>
-                        <div class="formLabel-controlCell">
-                            <input type="text" id="formEditQueue.alertRepeatGap"
-                                   data-dojo-type="dijit/form/ValidationTextBox"
-                                   data-dojo-props="
-                                      name: 'alertRepeatGap',
-                                      placeHolder: 'time in ms',
-                                      promptMessage: 'Minimum time (in milliseconds) between each alert',
-                                      title: 'Enter the minimum time (in milliseconds) between each alert.',
-                                      trim: true"/>
+                        <div class="clear">
+                            <div class="formLabel-labelCell">Gap between alerts:</div>
+                            <div class="formLabel-controlCell">
+                                <input type="text" id="formEditQueue.alertRepeatGap"
+                                       data-dojo-type="dijit/form/ValidationTextBox"
+                                       data-dojo-props="
+                                          name: 'alertRepeatGap',
+                                          placeHolder: 'time in ms',
+                                          promptMessage: 'Minimum time (in milliseconds) between each alert',
+                                          title: 'Enter the minimum time (in milliseconds) between each alert.',
+                                          trim: true"/>
+                            </div>
                         </div>
-                    </div>
                     </fieldset>
                     <div class="clear"></div>
                 </div>
 
                 <div class="clear formBox">
                     <fieldset>
-                    <legend>Other Settings</legend>
-                    <div class="clear">
-                        <div class="formLabel-labelCell">Maximum Delivery Retries:</div>
-                        <div class="formLabel-controlCell">
-                            <input type="text" id="formEditQueue.maximumDeliveryAttempts"
-                                   data-dojo-type="dijit/form/ValidationTextBox"
-                                   data-dojo-props="
-                                      name: 'maximumDeliveryAttempts',
-                                      placeHolder: 'number of retries',
-                                      promptMessage: 'Maximum number of delivery attempts before the message will be sent to the alternate exchange',
-                                      title: 'Enter the maximum number of delivery attempts before the message will be sent to the alternate exchange',
-                                      trim: true"/>
+                        <legend>Other Settings</legend>
+                        <div class="clear">
+                            <div class="formLabel-labelCell">Maximum Delivery Retries:</div>
+                            <div class="formLabel-controlCell">
+                                <input type="text" id="formEditQueue.maximumDeliveryAttempts"
+                                       data-dojo-type="dijit/form/ValidationTextBox"
+                                       data-dojo-props="
+                                          name: 'maximumDeliveryAttempts',
+                                          placeHolder: 'number of retries',
+                                          promptMessage: 'Maximum number of delivery attempts before the message will be sent to the alternate exchange',
+                                          title: 'Enter the maximum number of delivery attempts before the message will be sent to the alternate exchange',
+                                          trim: true"/>
+                            </div>
                         </div>
-                    </div>
                         <div class="clear">
                             <div class="formLabel-labelCell">Hold on Publish Enabled?</div>
                             <div class="formLabel-controlCell">

Modified: qpid/java/trunk/broker-plugins/management-http/src/main/java/resources/js/qpid/management/Queue.js
URL: http://svn.apache.org/viewvc/qpid/java/trunk/broker-plugins/management-http/src/main/java/resources/js/qpid/management/Queue.js?rev=1785831&r1=1785830&r2=1785831&view=diff
==============================================================================
--- qpid/java/trunk/broker-plugins/management-http/src/main/java/resources/js/qpid/management/Queue.js (original)
+++ qpid/java/trunk/broker-plugins/management-http/src/main/java/resources/js/qpid/management/Queue.js Tue Mar  7 11:54:20 2017
@@ -387,7 +387,9 @@ define(["dojo/_base/declare",
                         "owner",
                         "lifetimePolicy",
                         "overflowPolicy",
+                        "maximumQueueDepth",
                         "maximumQueueDepthBytes",
+                        "maximumQueueDepthBytesUnits",
                         "maximumQueueDepthMessages",
                         "type",
                         "typeQualifier",
@@ -455,24 +457,52 @@ define(["dojo/_base/declare",
 
         }
 
-        function renderMaximumQueueDepth(value, bytes)
+        function renderMaximumQueueDepthMessages(valueElement, value, bytes)
         {
-            if (util.isInteger(value))
+            var text;
+            if (value < 0)
             {
-                if (value < 0)
-                {
-                    return "&lt;unlimited&gt;";
-                }
+                text = "unlimited";
+                valueElement.classList.add("notApplicable");
+            }
+            else
+            {
+                valueElement.classList.remove("notApplicable");
+
                 if (bytes)
                 {
-                   var formatted =  formatter.formatBytes(value);
+                    var formatted = formatter.formatBytes(value);
 
-                   return formatted.value + " " + formatted.units;
+                    text = formatted.value + " " + formatted.units;
                 }
+                else
+                {
+                    text = new String(value);
+                }
+            }
+            valueElement.innerHTML = text;
+        }
+
+        function renderMaximumQueueDepthBytes(valueElement, unitElement, value)
+        {
+            var text;
+            var unit;
+            if (value < 0)
+            {
+                text = "unlimited";
+                unit = "B";
+                valueElement.classList.add("notApplicable");
+            }
+            else
+            {
+                valueElement.classList.remove("notApplicable");
 
-                return  new String(value) + " msgs";
+                var formatted =  formatter.formatBytes(value);
+                text = formatted.value;
+                unit = formatted.units;
             }
-            return "";
+            valueElement.innerHTML = text;
+            unitElement.innerHTML = unit;
         }
 
         QueueUpdater.prototype.updateHeader = function ()
@@ -513,9 +543,19 @@ define(["dojo/_base/declare",
                                                                + ")");
             }
 
-            this["overflowPolicy"].innerHTML = entities.encode(this.queueData["overflowPolicy"]);
-            this["maximumQueueDepthBytes"].innerHTML = renderMaximumQueueDepth(this.queueData.maximumQueueDepthBytes, true);
-            this["maximumQueueDepthMessages"].innerHTML = renderMaximumQueueDepth(this.queueData.maximumQueueDepthMessages, false);
+            var overflowPolicy = this.queueData["overflowPolicy"];
+            this["overflowPolicy"].innerHTML = entities.encode(overflowPolicy);
+
+            if (overflowPolicy && overflowPolicy != "NONE")
+            {
+                this.maximumQueueDepth.style.display = "block";
+                renderMaximumQueueDepthBytes(this["maximumQueueDepthBytes"], this["maximumQueueDepthBytesUnits"], this.queueData.maximumQueueDepthBytes);
+                renderMaximumQueueDepthMessages(this["maximumQueueDepthMessages"], this.queueData.maximumQueueDepthMessages);
+            }
+            else
+            {
+                this.maximumQueueDepth.style.display = "none";
+            }
             if (this.queueData["messageGroupKey"])
             {
                 this.messageGroupKey.innerHTML = entities.encode(String(this.queueData["messageGroupKey"]));

Modified: qpid/java/trunk/broker-plugins/management-http/src/main/java/resources/showQueue.html
URL: http://svn.apache.org/viewvc/qpid/java/trunk/broker-plugins/management-http/src/main/java/resources/showQueue.html?rev=1785831&r1=1785830&r2=1785831&view=diff
==============================================================================
--- qpid/java/trunk/broker-plugins/management-http/src/main/java/resources/showQueue.html (original)
+++ qpid/java/trunk/broker-plugins/management-http/src/main/java/resources/showQueue.html Tue Mar  7 11:54:20 2017
@@ -52,11 +52,12 @@
                 <div class="formLabel-labelCell">Overflow Policy:</div>
                 <div class="overflowPolicy formValue-valueCell"></div>
             </div>
-            <div class="clear">
+            <div class="clear maximumQueueDepth">
                 <div class="formLabel-labelCell">Maximum Queue Depth:</div>
                 <div class="formValue-valueCell">
                     <span class="maximumQueueDepthMessages"></span>
-                    (<span class="maximumQueueDepthBytes"></span>)
+                    <span> msgs</span>
+                    (<span class="maximumQueueDepthBytes"></span> <span class="maximumQueueDepthBytesUnits"></span>)
                 </div>
             </div>
         </div>

Modified: qpid/java/trunk/doc/java-broker/src/docbkx/Java-Broker-Appendix-Queue-Declaration-Arguments.xml
URL: http://svn.apache.org/viewvc/qpid/java/trunk/doc/java-broker/src/docbkx/Java-Broker-Appendix-Queue-Declaration-Arguments.xml?rev=1785831&r1=1785830&r2=1785831&view=diff
==============================================================================
--- qpid/java/trunk/doc/java-broker/src/docbkx/Java-Broker-Appendix-Queue-Declaration-Arguments.xml (original)
+++ qpid/java/trunk/doc/java-broker/src/docbkx/Java-Broker-Appendix-Queue-Declaration-Arguments.xml Tue Mar  7 11:54:20 2017
@@ -23,9 +23,9 @@
     <para>
         <emphasis>Qpid Broker for Java</emphasis>
         supports a number of custom arguments which can be specified as part of <emphasis>queue.declare</emphasis>
-        commands for AMQP 0.x protocols. This section provides an overview of the supported arguments.
+        commands for AMQP 0-x protocols. This section provides an overview of the supported arguments.
     </para>
-    <table pgwide="1"  xml:id="Java-Broker-Appendix-Supported-Queue-Declare-Arguments">
+    <table xml:id="Java-Broker-Appendix-Supported-Queue-Declare-Arguments">
         <title>Queue declare arguments</title>
         <tgroup cols="2">
             <colspec colnum="1" colname="col1"/>

Modified: qpid/java/trunk/doc/java-broker/src/docbkx/concepts/Java-Broker-Concepts-Queues.xml
URL: http://svn.apache.org/viewvc/qpid/java/trunk/doc/java-broker/src/docbkx/concepts/Java-Broker-Concepts-Queues.xml?rev=1785831&r1=1785830&r2=1785831&view=diff
==============================================================================
--- qpid/java/trunk/doc/java-broker/src/docbkx/concepts/Java-Broker-Concepts-Queues.xml (original)
+++ qpid/java/trunk/doc/java-broker/src/docbkx/concepts/Java-Broker-Concepts-Queues.xml Tue Mar  7 11:54:20 2017
@@ -24,7 +24,7 @@
  <title>Queues</title>
  <para><emphasis>Queue</emphasis>s are named entities within a <link linkend="Java-Broker-Concepts-Virtualhosts">Virtualhost</link> that
   hold/buffer messages for later delivery to consumer applications. An <link linkend="Java-Broker-Concepts-Exchanges">Exchange</link> for passing messages to a queue.
-  Consumers subscribe to a queue in order to receive messages for it. </para>
+  Consumers subscribe to a queue in order to receive messages from it. </para>
  <para>The Broker supports different queue types, each with different delivery semantics.  Queues also have the ability to group messages
    together for delivery to a single consumer.</para>
  <section xml:id="Java-Broker-Concepts-Queues-Types">
@@ -376,13 +376,13 @@ amqp://guest:guest@client1/development?m
         </section>
       </section>
 
-    <section xml:id="Java-Broker-Concepts-Queue-OverflowPolicy"  role="h2">
+    <section xml:id="Java-Broker-Concepts-Queue-OverflowPolicy">
         <title>Controlling Queue Size</title>
         <para>
             <emphasis>Overflow Policy</emphasis>
-            can be configured on an individual <emphasis>Queue</emphasis> to limit the queue capacity.
-            The capacity limits can be specified as a <emphasis>maximum number of bytes</emphasis> or
-            <emphasis>maximum number of messages</emphasis> or both.
+            can be configured on an individual <emphasis>Queue</emphasis> to limit the queue size.  The size
+            can be expressed in terms of a <emphasis>maximum number of bytes</emphasis> and/or
+            <emphasis>maximum number of messages</emphasis>.
             The <emphasis>Overflow Policy</emphasis> defines the Queue behaviour when any of the limits is reached.
         </para>
         <para>
@@ -398,9 +398,11 @@ amqp://guest:guest@client1/development?m
                 <listitem>
                     <para>
                         <emphasis>Ring</emphasis>
-                        - The oldest messages are removed. For a
+                        - If a newly arriving message takes the queue over a limit, message(s) are
+                        deleted from the queue until the queue falls within its limit again.  When deleting
+                        messages, the oldest messages are deleted first.  For a
                         <link linkend="Java-Broker-Concepts-Queues-Types-Priority">Priority Queue</link>
-                        oldest messages with lowest priorities are removed.
+                        the oldest messages with lowest priorities are removed.
                     </para>
                 </listitem>
                 <listitem>
@@ -415,47 +417,12 @@ amqp://guest:guest@client1/development?m
             </itemizedlist>
         </para>
         <para>
-            <emphasis>Overflow Policy</emphasis> can be set using queue attribute <varname>overflowPolicy</varname>.
-            You can set it to <varname>RING</varname> to configure <emphasis>Ring</emphasis> overflow policy.
-            <varname>PRODUCER_FLOW_CONTROL</varname> sets the <emphasis>Overflow Policy</emphasis> to
-            <emphasis>Producer Flow Control</emphasis>. <varname>NONE</varname> can be used to set
-            <emphasis>None</emphasis> overflow policy explicitly.
-            <emphasis>Maximum number of messages</emphasis>  can be set using queue attribute
-            <varname>maximumQueueDepthMessages</varname>.
-            <emphasis>Maximum number of bytes</emphasis> can be set using
-            queue attribute <varname>maximumQueueDepthBytes</varname>
+            A negative value for <emphasis>maximum number of messages</emphasis> or
+            <emphasis>maximum number of bytes</emphasis> disables the limit.
+        </para>
+        <para>
+            The Broker issues Operational log messages when the queue sizes are breached.  These are documented
+            at <xref linkend="Java-Broker-Appendix-Operation-Logging-Message-List-Queue"/>.
         </para>
-        <note>
-            <para>
-                Negative values for <emphasis>maximum number of messages</emphasis> and
-                <emphasis>maximum number of bytes</emphasis>
-                can be used to remove the upper limit (simply making queue unbound by the limit where it was set).
-            </para>
-        </note>
-        <note>
-            <para>
-                The <emphasis>Producer Flow Control</emphasis> can be triggered when a configured disk
-                quota is exceeded. For more details, please read
-                <xref linkend="Java-Broker-Runtime-Disk-Space-Management-Producer-Flow-Control"/>.
-            </para>
-        </note>
-        <note>
-            <para>
-                The impact of the <emphasis>Producer Flow Control</emphasis> on JMS Client is documented
-                <link xmlns:xlink="http://www.w3.org/1999/xlink" xlink:href="${qpidJmsClient08Book}/JMS-Client-0-8-Appendix-ProducerFlowControl-Impact.html">here</link>
-            </para>
-        </note>
-        <note>
-            <para>
-                Operational logs issued on breaching of queue capacities for different overflow policies are documented
-                at <xref linkend="Java-Broker-Appendix-Operation-Logging-Message-List-Queue"/>.
-            </para>
-        </note>
-        <note>
-            <para>
-                Supported queue arguments for AMQP 0.x <emphasis>queue.declare</emphasis> are documented
-                at <xref linkend="Java-Broker-Appendix-Supported-Queue-Declare-Arguments"/>.
-            </para>
-        </note>
     </section>
 </section>



---------------------------------------------------------------------
To unsubscribe, e-mail: commits-unsubscribe@qpid.apache.org
For additional commands, e-mail: commits-help@qpid.apache.org