diff options
Diffstat (limited to 'qpid/java/management/eclipse-plugin/src/main/java/org/apache/qpid/management/ui/views/QueueTypeTabControl.java')
-rw-r--r-- | qpid/java/management/eclipse-plugin/src/main/java/org/apache/qpid/management/ui/views/QueueTypeTabControl.java | 42 |
1 files changed, 40 insertions, 2 deletions
diff --git a/qpid/java/management/eclipse-plugin/src/main/java/org/apache/qpid/management/ui/views/QueueTypeTabControl.java b/qpid/java/management/eclipse-plugin/src/main/java/org/apache/qpid/management/ui/views/QueueTypeTabControl.java index 9fcf32abdd..6e37e96695 100644 --- a/qpid/java/management/eclipse-plugin/src/main/java/org/apache/qpid/management/ui/views/QueueTypeTabControl.java +++ b/qpid/java/management/eclipse-plugin/src/main/java/org/apache/qpid/management/ui/views/QueueTypeTabControl.java @@ -271,12 +271,50 @@ public class QueueTypeTabControl extends MBeanTypeTabControl for (AttributeData data : list) { ManagedBean mbean = _queueDepthMap.get(data); - String value = data.getValue().toString(); - items[i++] = mbean.getName() + " (" + value + " KB)"; + items[i++] = mbean.getName() + " (" + getQueueDepthString(mbean, data) + ")"; } getListWidget().setItems(items); } + private String getQueueDepthString(ManagedBean mbean, AttributeData data) + { + if (mbean.getVersion() == 1) //mbean returns KB + { + Long value = (Long)data.getValue(); + + Double mb = 1024.0; + + if(value > mb) //MB + { + return String.format("%.3f", (Double)(value / mb)) + " MB"; + } + else //KB + { + return data.getValue().toString() + " KB"; + } + } + else //mbean returns Bytes + { + Long value = (Long)data.getValue(); + + double mb = 1024.0 * 1024.0; + double kb = 1024.0; + + if(value >= mb) //MB + { + return String.format("%.3f", (Double)(value / mb)) + " MB"; + } + else if (value >= kb) //KB + { + return String.format("%.3f", (Double)(value / kb)) + " KB"; + } + else //Bytes + { + return data.getValue().toString() + " Bytes"; + } + } + } + private void sortQueuesByConsumerCount() { java.util.List<AttributeData> list = new ArrayList<AttributeData>(_queueConsumerCountMap.keySet()); |