Multiple user referentials working with IPA.
[lgpl/argeo-commons.git] / org.argeo.util / src / org / argeo / util / directory / Directory.java
index 351a608bc53c9c3dbfdb81910c858a54b1a3e56e..988658969ef752b4ccba2d707666a458f6e390ed 100644 (file)
@@ -1,38 +1,32 @@
 package org.argeo.util.directory;
 
-import java.util.Dictionary;
 import java.util.Optional;
 
 import org.argeo.util.transaction.WorkControl;
 
+/** An information directory (typicylly LDAP). */
 public interface Directory extends HierarchyUnit {
-       /**
-        * The base of the hierarchy defined by this directory. This could typically be
-        * an LDAP base DN.
-        */
-       String getContext();
-
        String getName();
 
+       /** Whether this directory is read only. */
        boolean isReadOnly();
 
+       /** Whether this directory is disabled. */
        boolean isDisabled();
 
+       /** The realm (typically Kerberos) of this directory. */
        Optional<String> getRealm();
 
+       /** Sets the transaction control used by this directory when editing. */
        void setTransactionControl(WorkControl transactionControl);
 
-       /*
-        * METADATA
-        */
-       public Dictionary<String, Object> getProperties();
-
        /*
         * HIERARCHY
         */
 
-       Iterable<HierarchyUnit> getDirectHierarchyUnits(boolean functionalOnly);
-
+       /** The hierarchy unit at this path. */
        HierarchyUnit getHierarchyUnit(String path);
 
+       /** Create a new hierarchy unit. */
+       HierarchyUnit createHierarchyUnit(String path);
 }