Author: ritchiem
Date: Wed Dec 17 02:16:56 2008
New Revision: 727334

URL: http://svn.apache.org/viewvc?rev=727334&view=rev
Log:
QPID-1471 : Reverted r727071

Modified:
    
qpid/trunk/qpid/java/management/eclipse-plugin/src/main/java/org/apache/qpid/management/ui/Constants.java
    
qpid/trunk/qpid/java/management/eclipse-plugin/src/main/java/org/apache/qpid/management/ui/ManagedBean.java
    
qpid/trunk/qpid/java/management/eclipse-plugin/src/main/java/org/apache/qpid/management/ui/views/OperationTabControl.java
    
qpid/trunk/qpid/java/management/eclipse-plugin/src/main/java/org/apache/qpid/management/ui/views/ViewUtility.java

Modified: 
qpid/trunk/qpid/java/management/eclipse-plugin/src/main/java/org/apache/qpid/management/ui/Constants.java
URL: 
http://svn.apache.org/viewvc/qpid/trunk/qpid/java/management/eclipse-plugin/src/main/java/org/apache/qpid/management/ui/Constants.java?rev=727334&r1=727333&r2=727334&view=diff
==============================================================================
--- 
qpid/trunk/qpid/java/management/eclipse-plugin/src/main/java/org/apache/qpid/management/ui/Constants.java
 (original)
+++ 
qpid/trunk/qpid/java/management/eclipse-plugin/src/main/java/org/apache/qpid/management/ui/Constants.java
 Wed Dec 17 02:16:56 2008
@@ -32,7 +32,6 @@
     public final static String ACTION_REMOVE_MBEANNODE = "Remove from list";
     public final static String VALUE = "value";
     public final static String TYPE  = "type";
-    public final static String VERSION  = "version";
     public final static String NODE_TYPE_SERVER    = "server";
     public final static String NODE_TYPE_DOMAIN    = "domain";
     public final static String NODE_TYPE_MBEANTYPE = "mbeantype";

Modified: 
qpid/trunk/qpid/java/management/eclipse-plugin/src/main/java/org/apache/qpid/management/ui/ManagedBean.java
URL: 
http://svn.apache.org/viewvc/qpid/trunk/qpid/java/management/eclipse-plugin/src/main/java/org/apache/qpid/management/ui/ManagedBean.java?rev=727334&r1=727333&r2=727334&view=diff
==============================================================================
--- 
qpid/trunk/qpid/java/management/eclipse-plugin/src/main/java/org/apache/qpid/management/ui/ManagedBean.java
 (original)
+++ 
qpid/trunk/qpid/java/management/eclipse-plugin/src/main/java/org/apache/qpid/management/ui/ManagedBean.java
 Wed Dec 17 02:16:56 2008
@@ -20,17 +20,13 @@
  */
 package org.apache.qpid.management.ui;
 
-import static org.apache.qpid.management.ui.Constants.ADMIN_MBEAN_TYPE;
-import static org.apache.qpid.management.ui.Constants.CONNECTION;
-import static org.apache.qpid.management.ui.Constants.DEFAULT_VH;
-import static org.apache.qpid.management.ui.Constants.EXCHANGE;
-import static org.apache.qpid.management.ui.Constants.QUEUE;
-import static org.apache.qpid.management.ui.Constants.VIRTUAL_HOST;
-
+import static org.apache.qpid.management.ui.Constants.*;
 import java.util.HashMap;
 
 /**
  * Class representing a managed bean on the managed server
+ * @author Bhupendra Bhardwaj
+ *
  */
 public abstract class ManagedBean extends ManagedObject
 {
@@ -40,50 +36,27 @@
     private String _virtualHostName = null;
     private ManagedServer _server = null;
     private HashMap _properties = null;
-    private int _version;
-
+    
     public String getProperty(String key)
     {
-        return (String) _properties.get(key);
+        return (String)_properties.get(key);
     }
-
+    
     public HashMap getProperties()
     {
         return _properties;
     }
-
     public void setProperties(HashMap properties)
     {
         this._properties = properties;
         setName(getProperty("name"));
         setType(getProperty("type"));
-        setVersion(getProperty("version"));
         _virtualHostName = getProperty(VIRTUAL_HOST);
     }
-
-    public void setVersion(String version)
-    {
-        try
-        {
-            _version = Integer.parseInt(version);
-        }
-        catch (NumberFormatException nfe)
-        {
-            _version = 1;
-        }
-
-    }
-
-    public int getVersion()
-    {
-        return _version;
-    }
-
     public String getDomain()
     {
         return _domain;
     }
-
     public void setDomain(String domain)
     {
         this._domain = domain;
@@ -93,75 +66,65 @@
     {
         return _server;
     }
-
     public void setServer(ManagedServer server)
     {
         this._server = server;
     }
-
     public String getType()
     {
         return _type;
     }
-
     public void setType(String type)
     {
         this._type = type;
     }
-
     public String getUniqueName()
     {
         return _uniqueName;
     }
-
     public void setUniqueName(String uniqueName)
     {
         this._uniqueName = uniqueName;
     }
-
+    
     public String getVirtualHostName()
     {
         // To make it work with the broker with no virtual host implementation
         return _virtualHostName == null ? DEFAULT_VH : _virtualHostName;
     }
-
+    
     /**
      * Returns mbean instance name. MBeans which have only one instance, the 
type attribute will be returned
-     *
      * @return
      */
     public String getInstanceName()
     {
         if (getName() != null)
-        {
             return getName();
-        }
         else
-        {
             return getType();
-        }
     }
-
+    
     public boolean isQueue()
     {
         return _type.endsWith(QUEUE);
     }
-
+    
     public boolean isConnection()
     {
         return _type.endsWith(CONNECTION);
     }
-
+    
     public boolean isExchange()
     {
         return _type.endsWith(EXCHANGE);
     }
-
+    
     public boolean isTempQueue()
     {
         return (isQueue() && getName().startsWith("tmp_"));
     }
-
+    
     public boolean isAdmin()
     {
         return _type.endsWith(ADMIN_MBEAN_TYPE);

Modified: 
qpid/trunk/qpid/java/management/eclipse-plugin/src/main/java/org/apache/qpid/management/ui/views/OperationTabControl.java
URL: 
http://svn.apache.org/viewvc/qpid/trunk/qpid/java/management/eclipse-plugin/src/main/java/org/apache/qpid/management/ui/views/OperationTabControl.java?rev=727334&r1=727333&r2=727334&view=diff
==============================================================================
--- 
qpid/trunk/qpid/java/management/eclipse-plugin/src/main/java/org/apache/qpid/management/ui/views/OperationTabControl.java
 (original)
+++ 
qpid/trunk/qpid/java/management/eclipse-plugin/src/main/java/org/apache/qpid/management/ui/views/OperationTabControl.java
 Wed Dec 17 02:16:56 2008
@@ -25,8 +25,6 @@
 import java.util.HashMap;
 import java.util.List;
 import java.util.Map.Entry;
-import java.security.NoSuchAlgorithmException;
-import java.io.UnsupportedEncodingException;
 
 import javax.management.openmbean.CompositeData;
 import javax.management.openmbean.TabularDataSupport;
@@ -607,33 +605,26 @@
                         return;
                     }
                     
-                    //Custom handling for the PASSWORD field
-                    if (param.getName().equalsIgnoreCase(PASSWORD))
+                    // customized for passwords
+                    String securityMechanism = "";
+                    ServerRegistry serverReg = 
ApplicationRegistry.getServerRegistry(_mbean);
+                    
+                    if (serverReg instanceof JMXServerRegistry)
+                    {
+                        JMXServerRegistry jmxServerReg = (JMXServerRegistry) 
ApplicationRegistry.getServerRegistry(_mbean);
+                        securityMechanism = 
jmxServerReg.getSecurityMechanism();
+                    }
+                    
+                    if ((MECH_CRAMMD5.equals(securityMechanism)) && 
PASSWORD.equalsIgnoreCase(param.getName()))
                     {
-                        //Convert the String value to a character array if 
that is what is required.
-                        if (param.getType().equals("[C"))
+                        try
+                        {
+                            
param.setValue(ViewUtility.getMD5HashedCharArray(param.getValue()));
+                        }
+                        catch (Exception ex)
                         {
-                            // Retreive the mBean type and version.
-                            // If we have a version 1 UserManagement class 
mbean then it expects the password
-                            // to be sent as the hashed version.
-                            if (_mbean.getType().equals("UserManagement") && 
_mbean.getVersion() == 1)
-                            {
-                                try
-                                {
-                                    
param.setValue(ViewUtility.getHash((String) param.getValue()));
-                                }
-                                catch (Exception hashException)
-                                {
-                                    
ViewUtility.popupErrorMessage(_form.getText(),
-                                                                  "Unable to 
calculate hash for Password:"
-                                                                  + 
hashException.getMessage());
-                                    return;
-                                }
-                            }
-                            else
-                            {
-                                param.setValue(((String) 
param.getValue()).toCharArray());
-                            }
+                            MBeanUtility.handleException(_mbean, ex);
+                            return;
                         }
                     }
                     // end of customization

Modified: 
qpid/trunk/qpid/java/management/eclipse-plugin/src/main/java/org/apache/qpid/management/ui/views/ViewUtility.java
URL: 
http://svn.apache.org/viewvc/qpid/trunk/qpid/java/management/eclipse-plugin/src/main/java/org/apache/qpid/management/ui/views/ViewUtility.java?rev=727334&r1=727333&r2=727334&view=diff
==============================================================================
--- 
qpid/trunk/qpid/java/management/eclipse-plugin/src/main/java/org/apache/qpid/management/ui/views/ViewUtility.java
 (original)
+++ 
qpid/trunk/qpid/java/management/eclipse-plugin/src/main/java/org/apache/qpid/management/ui/views/ViewUtility.java
 Wed Dec 17 02:16:56 2008
@@ -538,6 +538,27 @@
         }
     }
     
+    public static char[] getMD5HashedCharArray(Object text) throws 
NoSuchAlgorithmException, UnsupportedEncodingException
+    {
+        byte[] data = ((String)text).getBytes("utf-8");
+
+        MessageDigest md = MessageDigest.getInstance("MD5");
+
+        for (byte b : data)
+        {
+            md.update(b);
+        }
+
+        byte[] digest = md.digest();
+        
+        char[] byteArray = new char[digest.length];
+        int index = 0;
+        for (byte b : digest)
+        {
+            byteArray[index++] = (char)b;
+        }
+        return byteArray;
+    }
     
     public static char[] getHash(String text) throws NoSuchAlgorithmException, 
UnsupportedEncodingException
     {


Reply via email to