summaryrefslogtreecommitdiff
path: root/qpid/java/management/eclipse-plugin/src/main/java/org/apache/qpid/management/ui/views/QueueTypeTabControl.java
diff options
context:
space:
mode:
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.java42
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());