X-Git-Url: https://git.argeo.org/?a=blobdiff_plain;f=security%2Fruntime%2Forg.argeo.security.core%2Fsrc%2Fmain%2Fjava%2Forg%2Fargeo%2Fsecurity%2Fcore%2FDefaultSecurityService.java;h=74aa57cd50b8759f047890b51f324be21c13e93f;hb=54ca073308e726107a5e59b50ce875ebeb43b965;hp=5959704108c27627a8725a1c7d550a327d6092d2;hpb=baa11e2f5b077334f51f183d352e9477cc0124ff;p=lgpl%2Fargeo-commons.git diff --git a/security/runtime/org.argeo.security.core/src/main/java/org/argeo/security/core/DefaultSecurityService.java b/security/runtime/org.argeo.security.core/src/main/java/org/argeo/security/core/DefaultSecurityService.java index 595970410..74aa57cd5 100644 --- a/security/runtime/org.argeo.security.core/src/main/java/org/argeo/security/core/DefaultSecurityService.java +++ b/security/runtime/org.argeo.security.core/src/main/java/org/argeo/security/core/DefaultSecurityService.java @@ -19,16 +19,26 @@ public class DefaultSecurityService implements ArgeoSecurityService { } public void updateUserPassword(String username, String password) { - SimpleArgeoUser user = new SimpleArgeoUser(securityDao.getUser(username)); + SimpleArgeoUser user = new SimpleArgeoUser(securityDao + .getUser(username)); user.setPassword(password); securityDao.update(user); } public void newUser(ArgeoUser user) { + user.getUserNatures().clear(); argeoSecurity.beforeCreate(user); securityDao.create(user); } + public void updateUser(ArgeoUser user) { + String password = securityDao.getUserWithPassword(user.getUsername()) + .getPassword(); + SimpleArgeoUser simpleArgeoUser = new SimpleArgeoUser(user); + simpleArgeoUser.setPassword(password); + securityDao.update(user); + } + public void setArgeoSecurity(ArgeoSecurity argeoSecurity) { this.argeoSecurity = argeoSecurity; }