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
{