diff options
author | Bhupendra Bhusman Bhardwaj <bhupendrab@apache.org> | 2007-04-16 13:48:31 +0000 |
---|---|---|
committer | Bhupendra Bhusman Bhardwaj <bhupendrab@apache.org> | 2007-04-16 13:48:31 +0000 |
commit | 57ff09c647e268fd32d668171a0f10c4217be4cd (patch) | |
tree | b0e319d860c17bbb850dc516c2fbe0c4fbe16715 | |
parent | 11e255574dd7f30eec7c2cc808c4a7642fcebea4 (diff) | |
download | qpid-python-57ff09c647e268fd32d668171a0f10c4217be4cd.tar.gz |
removed default username as guest. Added hashing for new user password field.
git-svn-id: https://svn.apache.org/repos/asf/incubator/qpid/branches/M2@529246 13f79535-47bb-0310-9956-ffa450edef68
7 files changed, 76 insertions, 36 deletions
diff --git a/java/management/eclipse-plugin/src/main/java/org/apache/qpid/management/ui/Constants.java b/java/management/eclipse-plugin/src/main/java/org/apache/qpid/management/ui/Constants.java index dd3c388ed4..1875ef0d53 100644 --- a/java/management/eclipse-plugin/src/main/java/org/apache/qpid/management/ui/Constants.java +++ b/java/management/eclipse-plugin/src/main/java/org/apache/qpid/management/ui/Constants.java @@ -61,6 +61,9 @@ public class Constants public final static String OPERATION_CREATE_BINDING = "createNewBinding"; public final static String OPERATION_MOVE_MESSAGES = "moveMessages"; + public final static String OPERATION_SUCCESSFUL = "Operation successful"; + public final static String OPERATION_UNSUCCESSFUL = "Operation unsuccessful"; + public final static String ALL = "All"; public final static String NAVIGATION_ROOT = "Qpid Connections"; @@ -70,7 +73,7 @@ public class Constants public final static String CONNECTION ="Connection"; public final static String EXCHANGE = "Exchange"; public final static String EXCHANGE_TYPE = "ExchangeType"; - public final static String[] EXCHANGE_TYPE_VALUES = {"direct", "topic", "headers"}; + public final static String[] EXCHANGE_TYPE_VALUES = {"direct", "fanout", "headers", "topic"}; public final static String[] BOOLEAN_TYPE_VALUES = {"false", "true"}; public final static String[] ATTRIBUTE_TABLE_TITLES = {"Attribute Name", "Value"}; public static final String[] CONNECTION_PROTOCOLS ={"RMI"}; diff --git a/java/management/eclipse-plugin/src/main/java/org/apache/qpid/management/ui/Perspective.java b/java/management/eclipse-plugin/src/main/java/org/apache/qpid/management/ui/Perspective.java index da49d70b88..f93200cadf 100644 --- a/java/management/eclipse-plugin/src/main/java/org/apache/qpid/management/ui/Perspective.java +++ b/java/management/eclipse-plugin/src/main/java/org/apache/qpid/management/ui/Perspective.java @@ -37,8 +37,8 @@ public class Perspective implements IPerspectiveFactory layout.setEditorAreaVisible(false); // standalone view meaning it can't be docked or stacked with other views, and it doesn't have a title bar. - layout.addStandaloneView(NavigationView.ID, true, IPageLayout.LEFT, 0.25f, editorArea); - layout.addStandaloneView(MBeanView.ID, true, IPageLayout.RIGHT, 0.75f, editorArea); + layout.addStandaloneView(NavigationView.ID, true, IPageLayout.LEFT, 0.30f, editorArea); + layout.addStandaloneView(MBeanView.ID, true, IPageLayout.RIGHT, 0.70f, editorArea); layout.getViewLayout(NavigationView.ID).setCloseable(false); layout.getViewLayout(MBeanView.ID).setCloseable(false); diff --git a/java/management/eclipse-plugin/src/main/java/org/apache/qpid/management/ui/actions/AddServer.java b/java/management/eclipse-plugin/src/main/java/org/apache/qpid/management/ui/actions/AddServer.java index 64f5342697..0e12c59de4 100644 --- a/java/management/eclipse-plugin/src/main/java/org/apache/qpid/management/ui/actions/AddServer.java +++ b/java/management/eclipse-plugin/src/main/java/org/apache/qpid/management/ui/actions/AddServer.java @@ -260,7 +260,7 @@ public class AddServer/* extends Action*/ implements IWorkbenchWindowActionDeleg user.setLayoutData(new GridData(SWT.TRAIL, SWT.TOP, false, false)); final Text textUser = new Text(composite, SWT.BORDER); - textUser.setText(DEFAULT_USERNAME); + textUser.setText(""); textUser.setLayoutData(new GridData(SWT.FILL, SWT.TOP, true, false)); Label password = new Label(composite, SWT.NONE); @@ -268,7 +268,7 @@ public class AddServer/* extends Action*/ implements IWorkbenchWindowActionDeleg password.setLayoutData(new GridData(SWT.TRAIL, SWT.TOP, false, false)); final Text textPwd = new Text(composite, SWT.BORDER | SWT.SINGLE | SWT.PASSWORD); - textPwd.setText(DEFAULT_PASSWORD); + textPwd.setText(""); //textPwd.setEchoChar('*'); textPwd.setLayoutData(new GridData(SWT.FILL, SWT.TOP, true, false)); diff --git a/java/management/eclipse-plugin/src/main/java/org/apache/qpid/management/ui/actions/ReconnectServer.java b/java/management/eclipse-plugin/src/main/java/org/apache/qpid/management/ui/actions/ReconnectServer.java index e9d81b6a6a..9aa265ab3c 100644 --- a/java/management/eclipse-plugin/src/main/java/org/apache/qpid/management/ui/actions/ReconnectServer.java +++ b/java/management/eclipse-plugin/src/main/java/org/apache/qpid/management/ui/actions/ReconnectServer.java @@ -191,7 +191,7 @@ public class ReconnectServer implements IWorkbenchWindowActionDelegate user.setLayoutData(new GridData(SWT.TRAIL, SWT.TOP, false, false)); final Text textUser = new Text(composite, SWT.BORDER); - textUser.setText(DEFAULT_USERNAME); + textUser.setText(""); textUser.setLayoutData(new GridData(SWT.FILL, SWT.TOP, true, false)); // Put cursor on this field textUser.setFocus(); @@ -201,7 +201,7 @@ public class ReconnectServer implements IWorkbenchWindowActionDelegate password.setLayoutData(new GridData(SWT.TRAIL, SWT.TOP, false, false)); final Text textPwd = new Text(composite, SWT.BORDER | SWT.SINGLE | SWT.PASSWORD); - textPwd.setText(DEFAULT_PASSWORD); + textPwd.setText(""); textPwd.setLayoutData(new GridData(SWT.FILL, SWT.TOP, true, false)); Composite buttonsComposite = new Composite(composite, SWT.NONE); diff --git a/java/management/eclipse-plugin/src/main/java/org/apache/qpid/management/ui/sasl/UsernameHashedPasswordCallbackHandler.java b/java/management/eclipse-plugin/src/main/java/org/apache/qpid/management/ui/sasl/UsernameHashedPasswordCallbackHandler.java index 43f7af52f0..f4e3d2661e 100644 --- a/java/management/eclipse-plugin/src/main/java/org/apache/qpid/management/ui/sasl/UsernameHashedPasswordCallbackHandler.java +++ b/java/management/eclipse-plugin/src/main/java/org/apache/qpid/management/ui/sasl/UsernameHashedPasswordCallbackHandler.java @@ -21,9 +21,6 @@ package org.apache.qpid.management.ui.sasl; import java.io.IOException; -import java.io.UnsupportedEncodingException; -import java.security.MessageDigest; -import java.security.NoSuchAlgorithmException; import javax.security.auth.callback.Callback; import javax.security.auth.callback.CallbackHandler; @@ -31,6 +28,8 @@ import javax.security.auth.callback.NameCallback; import javax.security.auth.callback.PasswordCallback; import javax.security.auth.callback.UnsupportedCallbackException; +import org.apache.qpid.management.ui.views.ViewUtility; + public class UsernameHashedPasswordCallbackHandler implements CallbackHandler { private String user; @@ -39,7 +38,7 @@ public class UsernameHashedPasswordCallbackHandler implements CallbackHandler public UsernameHashedPasswordCallbackHandler(String user, String password) throws Exception { this.user = user; - this.pwchars = getHash(password); + this.pwchars = ViewUtility.getHash(password); } public void handle(Callback[] callbacks) throws IOException, UnsupportedCallbackException @@ -63,29 +62,6 @@ public class UsernameHashedPasswordCallbackHandler implements CallbackHandler } } - private char[] getHash(String text) throws NoSuchAlgorithmException, UnsupportedEncodingException - { - byte[] data = text.getBytes("utf-8"); - - MessageDigest md = MessageDigest.getInstance("MD5"); - - for (byte b : data) - { - md.update(b); - } - - byte[] digest = md.digest(); - - char[] hash = new char[digest.length ]; - - int index = 0; - for (byte b : digest) - { - hash[index++] = (char) b; - } - - return hash; - } private void clearPassword() { diff --git a/java/management/eclipse-plugin/src/main/java/org/apache/qpid/management/ui/views/OperationTabControl.java b/java/management/eclipse-plugin/src/main/java/org/apache/qpid/management/ui/views/OperationTabControl.java index 5847d26e3b..da7d9f94d6 100644 --- a/java/management/eclipse-plugin/src/main/java/org/apache/qpid/management/ui/views/OperationTabControl.java +++ b/java/management/eclipse-plugin/src/main/java/org/apache/qpid/management/ui/views/OperationTabControl.java @@ -249,6 +249,8 @@ public class OperationTabControl extends TabControl formData.top = new FormAttachment(0, parameterPositionOffset); formData.left = new FormAttachment(label, 5); formData.right = new FormAttachment(valueWidth); + // this will contain the list of items, if the list is to be made available to choose from + // e.g. the list of exchanges String[] items = null; if (param.getName().equals(QUEUE)) { @@ -300,7 +302,12 @@ public class OperationTabControl extends TabControl } else { - Text text = _toolkit.createText(_paramsComposite, "", SWT.NONE); + int style = SWT.NONE; + if (PASSWORD.equalsIgnoreCase(param.getName())) + { + style = SWT.PASSWORD; + } + Text text = _toolkit.createText(_paramsComposite, "", style); formData = new FormData(); formData.top = new FormAttachment(0, parameterPositionOffset); formData.left = new FormAttachment(label, 5); @@ -559,6 +566,21 @@ public class OperationTabControl extends TabControl } // End of custom code + + // customized for passwords + if (PASSWORD.equalsIgnoreCase(param.getName())) + { + try + { + param.setValueFromString(ViewUtility.getHashedString(param.getValue())); + } + catch (Exception ex) + { + MBeanUtility.handleException(_mbean, ex); + return; + } + } + // end of customization ViewUtility.popupInfoMessage(_form.getText(), "Please select the " + ViewUtility.getDisplayText(param.getName())); @@ -620,7 +642,13 @@ public class OperationTabControl extends TabControl if (_opData.getReturnType().equals("void") || _opData.getReturnType().equals("java.lang.Void")) { - ViewUtility.popupInfoMessage(title, "Operation successful"); + ViewUtility.popupInfoMessage(title, OPERATION_SUCCESSFUL); + } + else if (_opData.getReturnType().equals("boolean") || _opData.getReturnType().equals("java.lang.Boolean")) + { + boolean success = Boolean.parseBoolean(result.toString()); + String message = success ? OPERATION_SUCCESSFUL : OPERATION_UNSUCCESSFUL; + ViewUtility.popupInfoMessage(title, message); } else if (_opData.getParameters() != null && !_opData.getParameters().isEmpty()) { diff --git a/java/management/eclipse-plugin/src/main/java/org/apache/qpid/management/ui/views/ViewUtility.java b/java/management/eclipse-plugin/src/main/java/org/apache/qpid/management/ui/views/ViewUtility.java index 9625a58f20..8f15aaba51 100644 --- a/java/management/eclipse-plugin/src/main/java/org/apache/qpid/management/ui/views/ViewUtility.java +++ b/java/management/eclipse-plugin/src/main/java/org/apache/qpid/management/ui/views/ViewUtility.java @@ -20,7 +20,10 @@ */ package org.apache.qpid.management.ui.views; +import java.io.UnsupportedEncodingException; import java.nio.charset.Charset; +import java.security.MessageDigest; +import java.security.NoSuchAlgorithmException; import java.util.ArrayList; import java.util.List; import java.util.Map; @@ -549,4 +552,34 @@ public class ViewUtility oldControls[i].dispose(); } } + + public static String getHashedString(Object text) throws NoSuchAlgorithmException, UnsupportedEncodingException + { + char[] chars = getHash((String)text); + return new String(chars); + } + + public static char[] getHash(String text) throws NoSuchAlgorithmException, UnsupportedEncodingException + { + byte[] data = text.getBytes("utf-8"); + + MessageDigest md = MessageDigest.getInstance("MD5"); + + for (byte b : data) + { + md.update(b); + } + + byte[] digest = md.digest(); + + char[] hash = new char[digest.length ]; + + int index = 0; + for (byte b : digest) + { + hash[index++] = (char) b; + } + + return hash; + } } |