X-Git-Url: https://git.argeo.org/?a=blobdiff_plain;f=org.argeo.util%2Fsrc%2Forg%2Fargeo%2Fosgi%2Fuseradmin%2FUserDirectory.java;h=05ed7cf7cef9260324307d66f6cac55c03cd5699;hb=3c1cdc594d954520b14646102b366290bdad58c7;hp=18bb1a0a6eb6987e08c11c34633362f8aa2e7e57;hpb=eb4324be6ac9cdff15828a21ee7d3f6ca2f19fb9;p=lgpl%2Fargeo-commons.git diff --git a/org.argeo.util/src/org/argeo/osgi/useradmin/UserDirectory.java b/org.argeo.util/src/org/argeo/osgi/useradmin/UserDirectory.java index 18bb1a0a6..05ed7cf7c 100644 --- a/org.argeo.util/src/org/argeo/osgi/useradmin/UserDirectory.java +++ b/org.argeo.util/src/org/argeo/osgi/useradmin/UserDirectory.java @@ -1,52 +1,19 @@ package org.argeo.osgi.useradmin; -import java.util.Optional; - -import org.argeo.osgi.transaction.WorkControl; +import org.argeo.util.directory.Directory; +import org.argeo.util.directory.HierarchyUnit; import org.osgi.service.useradmin.Role; /** Information about a user directory. */ -public interface UserDirectory { - /** - * The base of the hierarchy defined by this directory. This could typically be - * an LDAP base DN. - */ - String getContext(); - - String getName(); - -// /** The base DN of all entries in this user directory */ -// LdapName getBaseDn(); - -// /** The related {@link XAResource} */ -// XAResource getXaResource(); - - boolean isReadOnly(); - - boolean isDisabled(); - - String getUserObjectClass(); - -// String getUserBase(); - - String getGroupObjectClass(); - -// String getGroupBase(); - - Optional getRealm(); - - Iterable getDirectHierarchyUnits(boolean functionalOnly); - - HierarchyUnit getHierarchyUnit(String path); +public interface UserDirectory extends Directory { HierarchyUnit getHierarchyUnit(Role role); + Iterable getHierarchyUnitRoles(HierarchyUnit hierarchyUnit, String filter, boolean deep); + String getRolePath(Role role); String getRoleSimpleName(Role role); Role getRoleByPath(String path); - - @Deprecated - void setTransactionControl(WorkControl transactionControl); }