diff --git a/datastore_server/source/java/ch/systemsx/cisd/openbis/dss/generic/shared/HierarchicalContentTraverseUtil.java b/datastore_server/source/java/ch/systemsx/cisd/openbis/dss/generic/shared/HierarchicalContentTraverseUtil.java index c50a3bfc6e618e87f649b2278c65cd23d76e4b5b..e84495ce74348c92a1a8859514020fcfb3015f87 100644 --- a/datastore_server/source/java/ch/systemsx/cisd/openbis/dss/generic/shared/HierarchicalContentTraverseUtil.java +++ b/datastore_server/source/java/ch/systemsx/cisd/openbis/dss/generic/shared/HierarchicalContentTraverseUtil.java @@ -16,8 +16,11 @@ package ch.systemsx.cisd.openbis.dss.generic.shared; +import java.util.List; + import ch.systemsx.cisd.common.io.IHierarchicalContent; import ch.systemsx.cisd.common.io.IHierarchicalContentNode; +import ch.systemsx.cisd.common.utilities.HierarchicalContentUtils; /** * A utility class to abstract traversing of {@link IHierarchicalContentNode}-s. @@ -59,7 +62,9 @@ public class HierarchicalContentTraverseUtil visitor.visit(node); if (node.isDirectory()) { - for (IHierarchicalContentNode child : node.getChildNodes()) + List<IHierarchicalContentNode> children = node.getChildNodes(); + HierarchicalContentUtils.sortNodes(children); + for (IHierarchicalContentNode child : children) { visit(child, visitor); }