]> 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 c01ea15f418e52ef5f134a3c335575ee7a1aeeb2..2c21342e3858247e19618d2b6ac09fad2ed847c1 100644 (file)
@@ -6,19 +6,19 @@ 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();
+
+       Iterable<HierarchyUnit> getDirectHierachyUnits(boolean functionalOnly);
+
+       boolean isFunctional();
 
-       HierarchyUnit getHierarchyChild(int i);
+       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();
 }