]> git.argeo.org Git - lgpl/argeo-commons.git/blobdiff - security/runtime/org.argeo.security.core/src/main/java/org/argeo/security/UserAdminService.java
Add authorizations to JCR
[lgpl/argeo-commons.git] / security / runtime / org.argeo.security.core / src / main / java / org / argeo / security / UserAdminService.java
index cd49d656668cfa15037bfe470f30c4620f5232b7..4babb87a03c7c40e687802412cc2956fa0402de6 100644 (file)
@@ -1,8 +1,25 @@
 package org.argeo.security;
 
+import java.util.List;
 import java.util.Set;
 
 public interface UserAdminService {
+       /**
+        * Usernames must match this regexp pattern ({@value #USERNAME_PATTERN}).
+        * Thanks to <a href=
+        * "http://www.mkyong.com/regular-expressions/how-to-validate-username-with-regular-expression/"
+        * >this tip</a> (modified to remove '-')
+        */
+       public final static String USERNAME_PATTERN = "^[a-z0-9_]{3,15}$";
+
+       /**
+        * Email addresses must match this regexp pattern ({@value #EMAIL_PATTERN}.
+        * Thanks to <a href=
+        * "http://www.mkyong.com/regular-expressions/how-to-validate-email-address-with-regular-expression/"
+        * >this tip</a>.
+        */
+       public final static String EMAIL_PATTERN = "^[_A-Za-z0-9-]+(\\.[_A-Za-z0-9-]+)*@[A-Za-z0-9]+(\\.[A-Za-z0-9]+)*(\\.[A-Za-z]{2,})$";
+
        /*
         * USERS
         */
@@ -21,8 +38,13 @@ public interface UserAdminService {
        /** List users having this role (except the super user). */
        public Set<ArgeoUser> listUsersInRole(String role);
 
+       public List<String> listUserRoles(String username);
+
        public void deleteUser(String username);
 
+       /** Synchronize with the underlying DAO. */
+       public void synchronize();
+
        /*
         * ROLES
         */