]> git.argeo.org Git - lgpl/argeo-commons.git/blobdiff - security/runtime/org.argeo.security.core/src/main/java/org/argeo/security/core/ArgeoUserDetails.java
Improve security
[lgpl/argeo-commons.git] / security / runtime / org.argeo.security.core / src / main / java / org / argeo / security / core / ArgeoUserDetails.java
index a05dd1245399e931567cc56a9c0dc19a54c6c762..1a1d159aa4b4a28c35b5e3aeb2e7ad8099df243e 100644 (file)
@@ -42,6 +42,10 @@ public class ArgeoUserDetails extends User implements ArgeoUser {
                return userNatures;
        }
 
+       public void updateUserNatures(List<UserNature> userNaturesData) {
+               UserNature.updateUserNaturesWithCheck(userNatures, userNaturesData);
+       }
+
        public List<String> getRoles() {
                return roles;
        }
@@ -80,6 +84,9 @@ public class ArgeoUserDetails extends User implements ArgeoUser {
        }
 
        public static ArgeoUser asArgeoUser(Authentication authentication) {
+               if (authentication == null)
+                       return null;
+
                if (authentication.getPrincipal() instanceof ArgeoUser) {
                        return new SimpleArgeoUser((ArgeoUser) authentication
                                        .getPrincipal());