X-Git-Url: https://git.argeo.org/?a=blobdiff_plain;f=org.argeo.util%2Fsrc%2Forg%2Fargeo%2Fosgi%2Fuseradmin%2FUserDirectory.java;h=05ed7cf7cef9260324307d66f6cac55c03cd5699;hb=f3ea14abccc33b1c3326417a87c91145be776c72;hp=727d9295da9e61fbb5d54e6b46e58327d31d4b25;hpb=ddc70245fe7413b7341205914c91015600726b4a;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 727d9295d..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 getGlobalId(); - - 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 getRootHierarchyUnits(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); }