]> git.argeo.org Git - lgpl/argeo-commons.git/blobdiff - org.argeo.util/src/org/argeo/osgi/useradmin/HierarchyUnit.java
Introduce system roles
[lgpl/argeo-commons.git] / org.argeo.util / src / org / argeo / osgi / useradmin / HierarchyUnit.java
index 24943463139baa20772c928bdef48acccac0aa24..2c21342e3858247e19618d2b6ac09fad2ed847c1 100644 (file)
@@ -1,29 +1,24 @@
 package org.argeo.osgi.useradmin;
 
 import java.util.List;
-import java.util.Map;
 
 import org.osgi.service.useradmin.Role;
 
 /** A unit within the high-level organisational structure of a directory. */
 public interface HierarchyUnit {
-       final static int UNKOWN = 0;
-       final static int ORGANIZATION = 1;
-       final static int OU = 2;
-
        String getHierarchyUnitName();
 
-       int getHierarchyChildCount();
-
        HierarchyUnit getParent();
 
-       HierarchyUnit getHierarchyChild(int i);
+       Iterable<HierarchyUnit> getDirectHierachyUnits(boolean functionalOnly);
+
+       boolean isFunctional();
+
+       String getContext();
 
-       int getHierarchyUnitType();
+       List<? extends Role> getHierarchyUnitRoles(String filter, boolean deep);
 
-       String getBasePath();
+       UserDirectory getDirectory();
 
-       List<? extends Role> getRoles(String filter, boolean deep);
-       
 //     Map<String,Object> getHierarchyProperties();
 }