X-Git-Url: https://git.argeo.org/?a=blobdiff_plain;f=swt%2Forg.argeo.cms.e4%2Fsrc%2Forg%2Fargeo%2Fcms%2Fe4%2Fhandlers%2FChangePassword.java;h=393aede8fc3e92caf78eaaf5e41e0b6652f35ef6;hb=2e0fd9cbf4ddc66917680d84e52c940dda3aee47;hp=7ef8c59da89dadbcfcc454dde65c482688ad5dec;hpb=a7ddb1dc8d3bf576d2536505889651c21afa95ff;p=lgpl%2Fargeo-commons.git diff --git a/swt/org.argeo.cms.e4/src/org/argeo/cms/e4/handlers/ChangePassword.java b/swt/org.argeo.cms.e4/src/org/argeo/cms/e4/handlers/ChangePassword.java index 7ef8c59da..393aede8f 100644 --- a/swt/org.argeo.cms.e4/src/org/argeo/cms/e4/handlers/ChangePassword.java +++ b/swt/org.argeo.cms.e4/src/org/argeo/cms/e4/handlers/ChangePassword.java @@ -14,9 +14,8 @@ import javax.naming.ldap.LdapName; import org.argeo.cms.auth.CurrentUser; import org.argeo.cms.security.CryptoKeyring; -import org.argeo.cms.swt.CmsException; +import org.argeo.cms.swt.dialogs.CmsFeedback; import org.argeo.cms.swt.dialogs.CmsMessageDialog; -import org.argeo.eclipse.ui.dialogs.ErrorFeedback; import org.argeo.util.transaction.WorkTransaction; import org.eclipse.e4.core.di.annotations.Execute; import org.eclipse.e4.core.di.annotations.Optional; @@ -58,13 +57,13 @@ public class ChangePassword { try { dn = new LdapName(name); } catch (InvalidNameException e) { - throw new CmsException("Invalid user dn " + name, e); + throw new IllegalArgumentException("Invalid user dn " + name, e); } User user = (User) userAdmin.getRole(dn.toString()); if (!user.hasCredential(null, oldPassword)) - throw new CmsException("Invalid password"); + throw new IllegalArgumentException("Invalid password"); if (Arrays.equals(newPassword, new char[0])) - throw new CmsException("New password empty"); + throw new IllegalArgumentException("New password empty"); try { userTransaction.begin(); user.getCredentials().put(null, newPassword); @@ -82,7 +81,7 @@ public class ChangePassword { if (e instanceof RuntimeException) throw (RuntimeException) e; else - throw new CmsException("Cannot change password", e); + throw new IllegalStateException("Cannot change password", e); } } @@ -116,11 +115,11 @@ public class ChangePassword { protected void okPressed() { try { if (!newPassword1.getText().equals(newPassword2.getText())) - throw new CmsException("New passwords are different"); + throw new IllegalArgumentException("New passwords are different"); changePassword(oldPassword.getTextChars(), newPassword1.getTextChars()); closeShell(OK); } catch (Exception e) { - ErrorFeedback.show("Cannot change password", e); + CmsFeedback.error("Cannot change password", e); } }