import org.argeo.util.transaction.WorkControl;
-public interface Directory {
- /**
- * The base of the hierarchy defined by this directory. This could typically be
- * an LDAP base DN.
- */
- String getContext();
-
+/** An information directory (typicylly LDAP). */
+public interface Directory extends HierarchyUnit {
String getName();
+ /** Whether this directory is read only. */
boolean isReadOnly();
+ /** Whether this directory is disabled. */
boolean isDisabled();
- String getUserObjectClass();
-
- String getGroupObjectClass();
-
+ /** The realm (typically Kerberos) of this directory. */
Optional<String> getRealm();
+ /** Sets the transaction control used by this directory when editing. */
void setTransactionControl(WorkControl transactionControl);
/*
* 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);
}