]> git.argeo.org Git - lgpl/argeo-commons.git/blob - org.argeo.util/src/org/argeo/util/directory/Directory.java
Introduce argeo-desktop-open
[lgpl/argeo-commons.git] / org.argeo.util / src / org / argeo / util / directory / Directory.java
1 package org.argeo.util.directory;
2
3 import java.util.Optional;
4
5 import org.argeo.util.transaction.WorkControl;
6
7 /** An information directory (typicylly LDAP). */
8 public interface Directory extends HierarchyUnit {
9 String getName();
10
11 /** Whether this directory is read only. */
12 boolean isReadOnly();
13
14 /** Whether this directory is disabled. */
15 boolean isDisabled();
16
17 /** The realm (typically Kerberos) of this directory. */
18 Optional<String> getRealm();
19
20 /** Sets the transaction control used by this directory when editing. */
21 void setTransactionControl(WorkControl transactionControl);
22
23 /*
24 * HIERARCHY
25 */
26
27 /** The hierarchy unit at this path. */
28 HierarchyUnit getHierarchyUnit(String path);
29
30 /** Create a new hierarchy unit. */
31 HierarchyUnit createHierarchyUnit(String path);
32 }