You are viewing a plain text version of this content. The canonical link for it is here.
Posted to commits@activemq.apache.org by ta...@apache.org on 2012/10/29 21:50:35 UTC

svn commit: r1403496 - in /activemq/trunk/activemq-core/src/main/java/org/apache/activemq/broker/jmx: DestinationView.java DestinationViewMBean.java

Author: tabish
Date: Mon Oct 29 20:50:35 2012
New Revision: 1403496

URL: http://svn.apache.org/viewvc?rev=1403496&view=rev
Log:
Add fix for: https://issues.apache.org/jira/browse/AMQ-4119

Modified:
    activemq/trunk/activemq-core/src/main/java/org/apache/activemq/broker/jmx/DestinationView.java
    activemq/trunk/activemq-core/src/main/java/org/apache/activemq/broker/jmx/DestinationViewMBean.java

Modified: activemq/trunk/activemq-core/src/main/java/org/apache/activemq/broker/jmx/DestinationView.java
URL: http://svn.apache.org/viewvc/activemq/trunk/activemq-core/src/main/java/org/apache/activemq/broker/jmx/DestinationView.java?rev=1403496&r1=1403495&r2=1403496&view=diff
==============================================================================
--- activemq/trunk/activemq-core/src/main/java/org/apache/activemq/broker/jmx/DestinationView.java (original)
+++ activemq/trunk/activemq-core/src/main/java/org/apache/activemq/broker/jmx/DestinationView.java Mon Oct 29 20:50:35 2012
@@ -22,6 +22,7 @@ import java.util.Collections;
 import java.util.Iterator;
 import java.util.List;
 import java.util.Map;
+
 import javax.jms.Connection;
 import javax.jms.InvalidSelectorException;
 import javax.jms.MessageProducer;
@@ -35,6 +36,7 @@ import javax.management.openmbean.OpenDa
 import javax.management.openmbean.TabularData;
 import javax.management.openmbean.TabularDataSupport;
 import javax.management.openmbean.TabularType;
+
 import org.apache.activemq.ActiveMQConnectionFactory;
 import org.apache.activemq.broker.jmx.OpenTypeSupport.OpenTypeFactory;
 import org.apache.activemq.broker.region.Destination;
@@ -109,6 +111,10 @@ public class DestinationView implements 
         return destination.getMemoryUsage().getPercentUsage();
     }
 
+    public long getMemoryUsageByteCount() {
+        return destination.getMemoryUsage().getUsage();
+    }
+
     public long getMemoryLimit() {
         return destination.getMemoryUsage().getLimit();
     }

Modified: activemq/trunk/activemq-core/src/main/java/org/apache/activemq/broker/jmx/DestinationViewMBean.java
URL: http://svn.apache.org/viewvc/activemq/trunk/activemq-core/src/main/java/org/apache/activemq/broker/jmx/DestinationViewMBean.java?rev=1403496&r1=1403495&r2=1403496&view=diff
==============================================================================
--- activemq/trunk/activemq-core/src/main/java/org/apache/activemq/broker/jmx/DestinationViewMBean.java (original)
+++ activemq/trunk/activemq-core/src/main/java/org/apache/activemq/broker/jmx/DestinationViewMBean.java Mon Oct 29 20:50:35 2012
@@ -19,6 +19,7 @@ package org.apache.activemq.broker.jmx;
 import java.io.IOException;
 import java.util.List;
 import java.util.Map;
+
 import javax.jms.InvalidSelectorException;
 import javax.management.MalformedObjectNameException;
 import javax.management.ObjectName;
@@ -42,7 +43,7 @@ public interface DestinationViewMBean {
 
     /**
      * Returns the number of messages that have been sent to the destination.
-     * 
+     *
      * @return The number of messages that have been sent to the destination.
      */
     @MBeanInfo("Number of messages that have been sent to the destination.")
@@ -51,7 +52,7 @@ public interface DestinationViewMBean {
     /**
      * Returns the number of messages that have been delivered (potentially not
      * acknowledged) to consumers.
-     * 
+     *
      * @return The number of messages that have been delivered (potentially not
      *         acknowledged) to consumers.
      */
@@ -61,17 +62,17 @@ public interface DestinationViewMBean {
     /**
      * Returns the number of messages that have been acknowledged from the
      * destination.
-     * 
+     *
      * @return The number of messages that have been acknowledged from the
      *         destination.
      */
     @MBeanInfo("Number of messages that have been acknowledged (and removed from) from the destination.")
     long getDequeueCount();
-    
+
     /**
      * Returns the number of messages that have been dispatched but not
      * acknowledged
-     * 
+     *
      * @return The number of messages that have been dispatched but not
      * acknowledged
      */
@@ -80,20 +81,20 @@ public interface DestinationViewMBean {
 
     /**
      * Returns the number of messages that have expired
-     * 
+     *
      * @return The number of messages that have expired
      */
     @MBeanInfo("Number of messages that have been expired.")
     long getExpiredCount();
-    
+
     /**
      * Returns the number of consumers subscribed this destination.
-     * 
+     *
      * @return The number of consumers subscribed this destination.
      */
     @MBeanInfo("Number of consumers subscribed to this destination.")
     long getConsumerCount();
-    
+
     /**
      * @return the number of producers publishing to the destination
      */
@@ -103,7 +104,7 @@ public interface DestinationViewMBean {
     /**
      * Returns the number of messages in this destination which are yet to be
      * consumed
-     * 
+     *
      * @return Returns the number of messages in this destination which are yet
      *         to be consumed
      */
@@ -138,7 +139,7 @@ public interface DestinationViewMBean {
 
     /**
      * Sends a TextMesage to the destination.
-     * 
+     *
      * @param body the text to send
      * @return the message id of the message sent.
      * @throws Exception
@@ -148,7 +149,7 @@ public interface DestinationViewMBean {
 
     /**
      * Sends a TextMesage to the destination.
-     * 
+     *
      * @param headers the message headers and properties to set. Can only
      *                container Strings maped to primitive types.
      * @param body the text to send
@@ -168,9 +169,9 @@ public interface DestinationViewMBean {
      */
     @MBeanInfo("Sends a TextMessage to a password-protected destination.")
     String sendTextMessage(@MBeanInfo("body") String body, @MBeanInfo("user") String user, @MBeanInfo("password") String password) throws Exception;
-    
+
     /**
-     * 
+     *
      * @param headers the message headers and properties to set. Can only
      *                container Strings maped to primitive types.
      * @param body the text to send
@@ -188,6 +189,12 @@ public interface DestinationViewMBean {
     int getMemoryPercentUsage();
 
     /**
+     * @return the amount of memory currently used by this destination
+     */
+    @MBeanInfo("Memory usage, in bytes, used by undelivered messages")
+    long getMemoryUsageByteCount();
+
+    /**
      * @return the amount of memory allocated to this destination
      */
     @MBeanInfo("Memory limit, in bytes, used for holding undelivered messages before paging to temporary storage.")
@@ -198,13 +205,13 @@ public interface DestinationViewMBean {
      * @param limit
      */
     void setMemoryLimit(long limit);
-    
+
     /**
      * @return the portion of memory from the broker memory limit for this destination
      */
     @MBeanInfo("Portion of memory from the broker memory limit for this destination")
     float getMemoryUsagePortion();
-    
+
     /**
      * set the portion of memory from the broker memory limit for this destination
      * @param value
@@ -241,94 +248,94 @@ public interface DestinationViewMBean {
      */
     @MBeanInfo("Average time a message has been held this destination.")
     double getAverageEnqueueTime();
-    
+
     /**
      * @return the producerFlowControl
      */
     @MBeanInfo("Producers are flow controlled")
     boolean isProducerFlowControl();
-    
+
     /**
      * @param producerFlowControl the producerFlowControl to set
      */
     public void setProducerFlowControl(@MBeanInfo("producerFlowControl") boolean producerFlowControl);
-    
+
     /**
      * @return if we treat consumers as alwaysRetroactive
      */
     @MBeanInfo("Always treat consumers as retroActive")
     boolean isAlwaysRetroactive();
-    
+
     /**
      * @param alwaysRetroactive set as always retroActive
      */
-    public void setAlwaysRetroactive(@MBeanInfo("alwaysRetroactive") boolean alwaysRetroactive);    
-    
+    public void setAlwaysRetroactive(@MBeanInfo("alwaysRetroactive") boolean alwaysRetroactive);
+
     /**
      * Set's the interval at which warnings about producers being blocked by
      * resource usage will be triggered. Values of 0 or less will disable
      * warnings
-     * 
+     *
      * @param blockedProducerWarningInterval the interval at which warning about
      *            blocked producers will be triggered.
      */
     public void setBlockedProducerWarningInterval(@MBeanInfo("blockedProducerWarningInterval")  long blockedProducerWarningInterval);
 
     /**
-     * 
+     *
      * @return the interval at which warning about blocked producers will be
      *         triggered.
      */
     @MBeanInfo("Blocked Producer Warning Interval")
     public long getBlockedProducerWarningInterval();
-    
+
     /**
      * @return the maxProducersToAudit
      */
-    @MBeanInfo("Maximum number of producers to audit") 
+    @MBeanInfo("Maximum number of producers to audit")
     public int getMaxProducersToAudit();
-    
+
     /**
      * @param maxProducersToAudit the maxProducersToAudit to set
      */
     public void setMaxProducersToAudit(@MBeanInfo("maxProducersToAudit") int maxProducersToAudit);
-    
+
     /**
      * @return the maxAuditDepth
      */
     @MBeanInfo("Max audit depth")
     public int getMaxAuditDepth();
-    
+
     /**
      * @param maxAuditDepth the maxAuditDepth to set
      */
     public void setMaxAuditDepth(@MBeanInfo("maxAuditDepth") int maxAuditDepth);
-    
+
     /**
-     * @return the maximum number of message to be paged into the 
+     * @return the maximum number of message to be paged into the
      * destination
      */
     @MBeanInfo("Maximum number of messages to be paged in")
     public int getMaxPageSize();
-    
+
     /**
      * @param pageSize
      * Set the maximum number of messages to page into the destination
      */
     public void setMaxPageSize(@MBeanInfo("pageSize") int pageSize);
-    
+
     /**
      * @return true if caching is allowed of for the destination
      */
     @MBeanInfo("Caching is allowed")
     public boolean isUseCache();
-    
+
     /**
      * @return true if prioritized messages are enabled for the destination
      */
     @MBeanInfo("Prioritized messages is enabled")
     public boolean isPrioritizedMessages();
-    
+
     /**
      * @param value
      * enable/disable caching on the destination
@@ -337,7 +344,7 @@ public interface DestinationViewMBean {
 
     /**
      * Returns all the current subscription MBeans matching this destination
-     * 
+     *
      * @return the names of the subscriptions for this destination
      */
     @MBeanInfo("returns all the current subscription MBeans matching this destination")