You are viewing a plain text version of this content. The canonical link for it is here.
Posted to commits@qpid.apache.org by ro...@apache.org on 2011/03/01 10:35:10 UTC

svn commit: r1075745 - /qpid/trunk/qpid/java/management/eclipse-plugin/src/main/java/org/apache/qpid/management/ui/jmx/JMXManagedObject.java

Author: robbie
Date: Tue Mar  1 09:35:10 2011
New Revision: 1075745

URL: http://svn.apache.org/viewvc?rev=1075745&view=rev
Log:
QPID-3090: allow the JMX Management Console to work properly with quoted ObjectName key values

Modified:
    qpid/trunk/qpid/java/management/eclipse-plugin/src/main/java/org/apache/qpid/management/ui/jmx/JMXManagedObject.java

Modified: qpid/trunk/qpid/java/management/eclipse-plugin/src/main/java/org/apache/qpid/management/ui/jmx/JMXManagedObject.java
URL: http://svn.apache.org/viewvc/qpid/trunk/qpid/java/management/eclipse-plugin/src/main/java/org/apache/qpid/management/ui/jmx/JMXManagedObject.java?rev=1075745&r1=1075744&r2=1075745&view=diff
==============================================================================
--- qpid/trunk/qpid/java/management/eclipse-plugin/src/main/java/org/apache/qpid/management/ui/jmx/JMXManagedObject.java (original)
+++ qpid/trunk/qpid/java/management/eclipse-plugin/src/main/java/org/apache/qpid/management/ui/jmx/JMXManagedObject.java Tue Mar  1 09:35:10 2011
@@ -21,6 +21,7 @@
 package org.apache.qpid.management.ui.jmx;
 
 import java.util.HashMap;
+import java.util.Map;
 
 import javax.management.ObjectName;
 
@@ -31,14 +32,36 @@ public class JMXManagedObject extends Ma
 {
     private ObjectName _objName;
     
-    @SuppressWarnings("unchecked")
     public JMXManagedObject(ObjectName objName)
     {
         super();
         this._objName = objName;
         setUniqueName(_objName.toString());
-        setDomain(_objName.getDomain());       
-        super.setProperties(new HashMap(_objName.getKeyPropertyList()));
+        setDomain(_objName.getDomain());
+
+        HashMap<String,String> props = new HashMap<String,String>(_objName.getKeyPropertyList());
+
+        for(Map.Entry<String,String> entry : props.entrySet())
+        {
+            String value = entry.getValue();
+
+            if(value != null)
+            {
+                try
+                {
+                    //if the name is quoted in the ObjectName, unquote it
+                    value = ObjectName.unquote(value);
+                    entry.setValue(value);
+                }
+                catch(IllegalArgumentException e)
+                {
+                    //ignore, this just means the name is not quoted
+                    //and can be left unchanged
+                }
+            }
+        }
+
+        super.setProperties(props);
     }
     
     public ObjectName getObjectName()



---------------------------------------------------------------------
Apache Qpid - AMQP Messaging Implementation
Project:      http://qpid.apache.org
Use/Interact: mailto:commits-subscribe@qpid.apache.org