]> git.argeo.org Git - lgpl/argeo-commons.git/blobdiff - org.argeo.util/src/org/argeo/osgi/useradmin/UserDirectory.java
Introduce system roles
[lgpl/argeo-commons.git] / org.argeo.util / src / org / argeo / osgi / useradmin / UserDirectory.java
index 781b7855a34c08b973d49fd0be9273b7d07cddc4..18bb1a0a6eb6987e08c11c34633362f8aa2e7e57 100644 (file)
@@ -6,12 +6,14 @@ import org.argeo.osgi.transaction.WorkControl;
 import org.osgi.service.useradmin.Role;
 
 /** Information about a user directory. */
-public interface UserDirectory extends HierarchyUnit {
+public interface UserDirectory {
        /**
         * The base of the hierarchy defined by this directory. This could typically be
         * an LDAP base DN.
         */
-       String getBasePath();
+       String getContext();
+       
+       String getName();
 
 //     /** The base DN of all entries in this user directory */
 //     LdapName getBaseDn();
@@ -25,18 +27,26 @@ public interface UserDirectory extends HierarchyUnit {
 
        String getUserObjectClass();
 
-       String getUserBase();
+//     String getUserBase();
 
        String getGroupObjectClass();
 
-       String getGroupBase();
+//     String getGroupBase();
 
        Optional<String> getRealm();
 
+       Iterable<HierarchyUnit> getDirectHierarchyUnits(boolean functionalOnly);
+
        HierarchyUnit getHierarchyUnit(String path);
 
        HierarchyUnit getHierarchyUnit(Role role);
 
+       String getRolePath(Role role);
+
+       String getRoleSimpleName(Role role);
+
+       Role getRoleByPath(String path);
+
        @Deprecated
        void setTransactionControl(WorkControl transactionControl);
 }