From e58e9c94dbcee4f30610aa930930f7abdc19fe80 Mon Sep 17 00:00:00 2001 From: Selvasundaram Date: Wed, 13 Jul 2011 13:41:58 +0530 Subject: Change password feature while login with default password --- .../management/core/constants/CoreConstants.java | 1 + src/com.gluster.storage.management.gui/plugin.xml | 18 ------------------ .../gluster/storage/management/gui/Application.java | 7 ------- .../management/gui/actions/ChangePasswordAction.java | 2 -- .../management/gui/dialogs/ChangePasswordDialog.java | 15 ++++++++++++++- .../storage/management/gui/dialogs/LoginDialog.java | 12 +++++++----- .../gui/validators/StringRequiredValidator.java | 6 +++--- 7 files changed, 25 insertions(+), 36 deletions(-) diff --git a/src/com.gluster.storage.management.core/src/com/gluster/storage/management/core/constants/CoreConstants.java b/src/com.gluster.storage.management.core/src/com/gluster/storage/management/core/constants/CoreConstants.java index 85a84c4a..11203a04 100644 --- a/src/com.gluster.storage.management.core/src/com/gluster/storage/management/core/constants/CoreConstants.java +++ b/src/com.gluster.storage.management.core/src/com/gluster/storage/management/core/constants/CoreConstants.java @@ -32,4 +32,5 @@ public class CoreConstants { public static final String PURE_DATE_FORMAT = "MM/dd/yyyy"; public static final String PURE_TIME_FORMAT = "HH:mm:ss.SSS"; public static final String NA = "NA"; + public static final String DEFAULT_GATEWAY_PASSWORD = "gluster"; } diff --git a/src/com.gluster.storage.management.gui/plugin.xml b/src/com.gluster.storage.management.gui/plugin.xml index 7d9aac84..e410b4b8 100644 --- a/src/com.gluster.storage.management.gui/plugin.xml +++ b/src/com.gluster.storage.management.gui/plugin.xml @@ -1261,24 +1261,6 @@ id="com.gluster.storage.management.gui.preferences.GlusterPreferencePage" name="Gluster"> - - - - - - diff --git a/src/com.gluster.storage.management.gui/src/com/gluster/storage/management/gui/Application.java b/src/com.gluster.storage.management.gui/src/com/gluster/storage/management/gui/Application.java index 43287c62..e8b23e88 100644 --- a/src/com.gluster.storage.management.gui/src/com/gluster/storage/management/gui/Application.java +++ b/src/com.gluster.storage.management.gui/src/com/gluster/storage/management/gui/Application.java @@ -23,15 +23,10 @@ import java.util.Collections; import java.util.List; import org.eclipse.core.databinding.observable.Realm; -import org.eclipse.core.runtime.IProgressMonitor; -import org.eclipse.core.runtime.jobs.IJobChangeEvent; -import org.eclipse.core.runtime.jobs.Job; -import org.eclipse.core.runtime.jobs.JobChangeAdapter; import org.eclipse.equinox.app.IApplication; import org.eclipse.equinox.app.IApplicationContext; import org.eclipse.jface.action.IStatusLineManager; import org.eclipse.jface.databinding.swt.SWTObservables; -import org.eclipse.jface.preference.IPreferenceStore; import org.eclipse.jface.window.Window; import org.eclipse.swt.widgets.Display; import org.eclipse.swt.widgets.Shell; @@ -40,8 +35,6 @@ import org.eclipse.ui.PlatformUI; import com.gluster.storage.management.core.model.Entity; import com.gluster.storage.management.gui.dialogs.LoginDialog; -import com.gluster.storage.management.gui.jobs.DataSyncJob; -import com.gluster.storage.management.gui.preferences.PreferenceConstants; /** * This class controls all aspects of the application's execution diff --git a/src/com.gluster.storage.management.gui/src/com/gluster/storage/management/gui/actions/ChangePasswordAction.java b/src/com.gluster.storage.management.gui/src/com/gluster/storage/management/gui/actions/ChangePasswordAction.java index fedbc893..c7001dda 100644 --- a/src/com.gluster.storage.management.gui/src/com/gluster/storage/management/gui/actions/ChangePasswordAction.java +++ b/src/com.gluster.storage.management.gui/src/com/gluster/storage/management/gui/actions/ChangePasswordAction.java @@ -1,7 +1,5 @@ package com.gluster.storage.management.gui.actions; -import java.awt.Window; - import org.eclipse.jface.action.IAction; import com.gluster.storage.management.gui.dialogs.ChangePasswordDialog; diff --git a/src/com.gluster.storage.management.gui/src/com/gluster/storage/management/gui/dialogs/ChangePasswordDialog.java b/src/com.gluster.storage.management.gui/src/com/gluster/storage/management/gui/dialogs/ChangePasswordDialog.java index df4e7be9..17217fbc 100644 --- a/src/com.gluster.storage.management.gui/src/com/gluster/storage/management/gui/dialogs/ChangePasswordDialog.java +++ b/src/com.gluster.storage.management.gui/src/com/gluster/storage/management/gui/dialogs/ChangePasswordDialog.java @@ -48,6 +48,7 @@ import org.eclipse.swt.widgets.Text; import com.gluster.storage.management.client.GlusterDataModelManager; import com.gluster.storage.management.client.UsersClient; +import com.gluster.storage.management.core.constants.CoreConstants; import com.gluster.storage.management.core.model.ConnectionDetails; import com.gluster.storage.management.gui.IImageKeys; import com.gluster.storage.management.gui.utils.GUIHelper; @@ -203,8 +204,20 @@ public class ChangePasswordDialog extends Dialog { IStatus status = super.validate(value); if (status.isOK()) { + String errMsg = null; if (!value.equals(newPassword.getText())) { - return ValidationStatus.error("Passwords do not match"); + errMsg = "Passwords mismatched"; + } + + if (errMsg == null && value.equals(CoreConstants.DEFAULT_GATEWAY_PASSWORD)) { + errMsg = "New password should not be a default password"; + } + + if(errMsg != null) { + controlDecoration.setDescriptionText(errMsg); + controlDecoration.show(); + linkedControl.setEnabled(false); + return ValidationStatus.error(errMsg); } } return status; diff --git a/src/com.gluster.storage.management.gui/src/com/gluster/storage/management/gui/dialogs/LoginDialog.java b/src/com.gluster.storage.management.gui/src/com/gluster/storage/management/gui/dialogs/LoginDialog.java index e46cd397..2c48d216 100644 --- a/src/com.gluster.storage.management.gui/src/com/gluster/storage/management/gui/dialogs/LoginDialog.java +++ b/src/com.gluster.storage.management.gui/src/com/gluster/storage/management/gui/dialogs/LoginDialog.java @@ -21,8 +21,6 @@ package com.gluster.storage.management.gui.dialogs; import org.eclipse.core.databinding.DataBindingContext; import org.eclipse.core.databinding.UpdateValueStrategy; import org.eclipse.core.databinding.beans.PojoProperties; -import org.eclipse.core.runtime.preferences.ConfigurationScope; -import org.eclipse.core.runtime.preferences.IEclipsePreferences; import org.eclipse.jface.databinding.swt.SWTObservables; import org.eclipse.jface.databinding.swt.WidgetProperties; import org.eclipse.jface.dialogs.Dialog; @@ -46,10 +44,9 @@ import org.eclipse.swt.widgets.Text; import com.gluster.storage.management.client.ClustersClient; import com.gluster.storage.management.client.GlusterDataModelManager; import com.gluster.storage.management.client.UsersClient; +import com.gluster.storage.management.core.constants.CoreConstants; import com.gluster.storage.management.core.model.ConnectionDetails; -import com.gluster.storage.management.core.model.Status; import com.gluster.storage.management.gui.Activator; -import com.gluster.storage.management.gui.Application; import com.gluster.storage.management.gui.IImageKeys; import com.gluster.storage.management.gui.dialogs.ClusterSelectionDialog.CLUSTER_MODE; import com.gluster.storage.management.gui.preferences.PreferenceConstants; @@ -211,7 +208,12 @@ public class LoginDialog extends Dialog { // authentication successful. close the login dialog and open the next one. close(); - + // If the password is default, Let user to change the password + if (password.equalsIgnoreCase( CoreConstants.DEFAULT_GATEWAY_PASSWORD )) { + ChangePasswordDialog dialog = new ChangePasswordDialog(getShell()); + dialog.open(); + } + ClustersClient clustersClient = new ClustersClient(usersClient.getSecurityToken()); IPreferenceStore preferenceStore = Activator.getDefault().getPreferenceStore(); diff --git a/src/com.gluster.storage.management.gui/src/com/gluster/storage/management/gui/validators/StringRequiredValidator.java b/src/com.gluster.storage.management.gui/src/com/gluster/storage/management/gui/validators/StringRequiredValidator.java index d4dd489c..07ffb9f5 100644 --- a/src/com.gluster.storage.management.gui/src/com/gluster/storage/management/gui/validators/StringRequiredValidator.java +++ b/src/com.gluster.storage.management.gui/src/com/gluster/storage/management/gui/validators/StringRequiredValidator.java @@ -26,9 +26,9 @@ import org.eclipse.jface.fieldassist.ControlDecoration; import org.eclipse.swt.widgets.Control; public class StringRequiredValidator implements IValidator { - private final String errorText; - private final ControlDecoration controlDecoration; - private final Control linkedControl; + protected final String errorText; + protected final ControlDecoration controlDecoration; + protected final Control linkedControl; public StringRequiredValidator(String errorText, ControlDecoration controlDecoration, Control linkedControl) { super(); -- cgit