X-Git-Url: https://git.argeo.org/?a=blobdiff_plain;f=org.argeo.cms%2Fsrc%2Forg%2Fargeo%2Fcms%2Ffile%2Fprovider%2FContentDirectoryStream.java;h=55db44360f5ddb63ef75791b62f2c58be15270aa;hb=eb8ade17be22103b314bf664e999185641fdcde0;hp=2cddf6275a67c4d338b7088ccc198e7ad1404248;hpb=60bf0339227cc064a4ead694e3a699581a025233;p=lgpl%2Fargeo-commons.git diff --git a/org.argeo.cms/src/org/argeo/cms/file/provider/ContentDirectoryStream.java b/org.argeo.cms/src/org/argeo/cms/file/provider/ContentDirectoryStream.java index 2cddf6275..55db44360 100644 --- a/org.argeo.cms/src/org/argeo/cms/file/provider/ContentDirectoryStream.java +++ b/org.argeo.cms/src/org/argeo/cms/file/provider/ContentDirectoryStream.java @@ -7,7 +7,6 @@ import java.nio.file.Path; import java.util.Iterator; import org.argeo.api.acr.Content; -import org.argeo.api.acr.DName; public class ContentDirectoryStream implements DirectoryStream { private final CmsPath dir; @@ -31,21 +30,13 @@ public class ContentDirectoryStream implements DirectoryStream { return iterator; } - static boolean isFile(Content c) { - return !c.get(DName.getcontenttype, String.class).isEmpty(); - } - - static boolean isDirectory(Content c) { - return c.isContentClass(DName.collection); - } - class FilesAndCollectionsIterator implements Iterator { private Content next; private final Iterator it; public FilesAndCollectionsIterator() { Content content = dir.getContent(); - if (!content.isContentClass(DName.collection)) + if (!ContentAttributes.isDirectory(content)) throw new IllegalStateException("Content " + content + " is not a collection"); it = content.iterator(); findNext(); @@ -53,9 +44,9 @@ public class ContentDirectoryStream implements DirectoryStream { private void findNext() { next = null; - while (it.hasNext() && next != null) { + while (it.hasNext() && next == null) { Content n = it.next(); - if (isFile(n) || isDirectory(n)) { + if (ContentAttributes.isRegularFile(n) || ContentAttributes.isDirectory(n)) { if (filter != null) { try { if (filter.accept(new CmsPath(dir.getFileSystem(), n)))