MARMOTTA-534: fixed issue of not loading password hash from plain password

Project: http://git-wip-us.apache.org/repos/asf/marmotta/repo
Commit: http://git-wip-us.apache.org/repos/asf/marmotta/commit/2d6a60f2
Tree: http://git-wip-us.apache.org/repos/asf/marmotta/tree/2d6a60f2
Diff: http://git-wip-us.apache.org/repos/asf/marmotta/diff/2d6a60f2

Branch: refs/heads/MARMOTTA-534_fix_login
Commit: 2d6a60f28481c8d0000f155bbf40b04bfef5b534
Parents: 0f12ac8
Author: Sergio Fernández <[email protected]>
Authored: Wed May 10 10:29:04 2017 +0200
Committer: Sergio Fernández <[email protected]>
Committed: Wed May 10 10:29:04 2017 +0200

----------------------------------------------------------------------
 .../user/services/AccountServiceImpl.java       | 20 ++++++++++++--------
 1 file changed, 12 insertions(+), 8 deletions(-)
----------------------------------------------------------------------


http://git-wip-us.apache.org/repos/asf/marmotta/blob/2d6a60f2/platform/marmotta-user/src/main/java/org/apache/marmotta/platform/user/services/AccountServiceImpl.java
----------------------------------------------------------------------
diff --git 
a/platform/marmotta-user/src/main/java/org/apache/marmotta/platform/user/services/AccountServiceImpl.java
 
b/platform/marmotta-user/src/main/java/org/apache/marmotta/platform/user/services/AccountServiceImpl.java
index 6dddd63..6cb09b5 100644
--- 
a/platform/marmotta-user/src/main/java/org/apache/marmotta/platform/user/services/AccountServiceImpl.java
+++ 
b/platform/marmotta-user/src/main/java/org/apache/marmotta/platform/user/services/AccountServiceImpl.java
@@ -48,19 +48,19 @@ import java.util.concurrent.ConcurrentMap;
 public class AccountServiceImpl implements AccountService {
 
     @Inject
-    private Logger               log;
+    private Logger log;
 
     @Inject
     private ConfigurationService configurationService;
 
     @Inject
-    private UserService          userService;
+    private UserService userService;
 
     @Inject
     @MarmottaCache("user-cache")
     private ConcurrentMap userCache;
 
-    private PasswordHash         hashAlgo;
+    private PasswordHash hashAlgo;
 
 
     public AccountServiceImpl() {
@@ -104,7 +104,7 @@ public class AccountServiceImpl implements AccountService {
 
     @Override
     public List<UserAccount> listAccounts() {
-        Set<String> logins = new HashSet<String>();
+        final Set<String> logins = new HashSet<>();
         for(String key : configurationService.listConfigurationKeys("user")) {
             String[] components = key.split("\\.");
             if(components.length > 2 && "webid".equals(components[2])) {
@@ -112,16 +112,16 @@ public class AccountServiceImpl implements AccountService 
{
             }
         }
 
-        final List<UserAccount> list = new ArrayList<UserAccount>();
+        final List<UserAccount> list = new ArrayList<>();
         for(String login : logins) {
             list.add(getAccount(login));
         }
 
-
         for (UserAccount userAccount : list) {
             userCache.put(userAccount.getLogin(), userAccount);
             userCache.put(userAccount.getWebId(), userAccount);
         }
+
         return list;
     }
 
@@ -190,9 +190,13 @@ public class AccountServiceImpl implements AccountService {
                 account = new UserAccount();
 
                 account.setLogin(login);
-                
account.setPasswdHash(configurationService.getStringConfiguration("user."+login+".pwhash"));
-                account.setRoles(new 
HashSet<String>(configurationService.getListConfiguration("user."+login+".roles")));
+                account.setRoles(new 
HashSet<>(configurationService.getListConfiguration("user."+login+".roles")));
                 
account.setWebId(configurationService.getStringConfiguration("user."+login+".webid"));
+                if 
(configurationService.isConfigurationSet(configurationService.getStringConfiguration("user."+login+".pwhash")))
 {
+                    
account.setPasswdHash(configurationService.getStringConfiguration("user." + 
login + ".pwhash"));
+                } else {
+                    
account.setPasswd(configurationService.getStringConfiguration("user." + login + 
".password"));
+                }
 
                 userCache.put(account.getLogin(), account);
                 userCache.put(account.getWebId(), account);

Reply via email to