package org.argeo.cms.acr.directory;
import java.util.ArrayList;
+import java.util.Dictionary;
import java.util.Iterator;
import java.util.List;
import org.argeo.api.acr.Content;
import org.argeo.api.acr.ContentName;
-import org.argeo.api.acr.spi.ContentProvider;
import org.argeo.api.acr.spi.ProvidedSession;
-import org.argeo.cms.acr.AbstractContent;
-import org.argeo.osgi.useradmin.HierarchyUnit;
-import org.argeo.osgi.useradmin.UserDirectory;
+import org.argeo.api.cms.directory.CmsDirectory;
+import org.argeo.api.cms.directory.HierarchyUnit;
-class DirectoryContent extends AbstractContent {
- private UserDirectory directory;
- private DirectoryContentProvider provider;
+class DirectoryContent extends AbstractDirectoryContent {
+ private CmsDirectory directory;
- public DirectoryContent(ProvidedSession session, DirectoryContentProvider provider, UserDirectory directory) {
- super(session);
- this.provider = provider;
+ public DirectoryContent(ProvidedSession session, DirectoryContentProvider provider, CmsDirectory directory) {
+ super(session, provider);
this.directory = directory;
}
@Override
- public ContentProvider getProvider() {
- return provider;
+ Dictionary<String, Object> doGetProperties() {
+ return directory.getProperties();
}
@Override
public Iterator<Content> iterator() {
List<Content> res = new ArrayList<>();
- for (Iterator<HierarchyUnit> it = directory.getRootHierarchyUnits().iterator(); it.hasNext();) {
+ for (Iterator<HierarchyUnit> it = directory.getDirectHierarchyUnits(false).iterator(); it.hasNext();) {
res.add(new HierarchyUnitContent(getSession(), provider, it.next()));
}
return res.iterator();