]>
git.argeo.org Git - lgpl/argeo-commons.git/blob - org.argeo.cms/src/org/argeo/cms/directory/ldap/LdapDirectoryDao.java
1 package org
.argeo
.cms
.directory
.ldap
;
5 import javax
.naming
.NameNotFoundException
;
6 import javax
.naming
.directory
.Attributes
;
7 import javax
.naming
.ldap
.LdapName
;
9 import org
.argeo
.api
.cms
.directory
.HierarchyUnit
;
10 import org
.argeo
.api
.cms
.transaction
.WorkingCopyProcessor
;
12 /** Low-level access to an LDAP/LDIF directory. */
13 public interface LdapDirectoryDao
extends WorkingCopyProcessor
<LdapEntryWorkingCopy
> {
14 boolean checkConnection();
16 boolean entryExists(LdapName dn
);
18 LdapEntry
doGetEntry(LdapName name
) throws NameNotFoundException
;
20 Attributes
doGetAttributes(LdapName name
);
22 List
<LdapEntry
> doGetEntries(LdapName searchBase
, String filter
, boolean deep
);
24 List
<LdapName
> getDirectGroups(LdapName dn
);
26 Iterable
<HierarchyUnit
> doGetDirectHierarchyUnits(LdapName searchBase
, boolean functionalOnly
);
28 HierarchyUnit
doGetHierarchyUnit(LdapName dn
);
30 LdapEntry
newUser(LdapName name
);
32 LdapEntry
newGroup(LdapName name
);