Allow creation of folder in any node except files or linked files.
[lgpl/argeo-commons.git] / org.argeo.jcr / src / org / argeo / jcr / fs / JcrFileSystemProvider.java
index 3e07697dc5c2699661a982af278731d544f82076..add900540a3e2023d7934d2fc0ecdcee3f68e4ff 100644 (file)
@@ -76,8 +76,9 @@ public abstract class JcrFileSystemProvider extends FileSystemProvider {
                                Node parent = toNode(dir.getParent());
                                if (parent == null)
                                        throw new IOException("Parent of " + dir + " does not exist");
-                               if (!(parent.getPath().equals("/") || parent.getPrimaryNodeType().isNodeType(NodeType.NT_FOLDER)))
-                                       throw new JcrFsException(dir + " parent is not a directory");
+                               if (parent.getPrimaryNodeType().isNodeType(NodeType.NT_FILE)
+                                               || parent.getPrimaryNodeType().isNodeType(NodeType.NT_LINKED_FILE))
+                                       throw new JcrFsException(dir + " parent is a file");
                                node = parent.addNode(dir.getFileName().toString(), NodeType.NT_FOLDER);
                                node.addMixin(NodeType.MIX_CREATED);
                                node.addMixin(NodeType.MIX_LAST_MODIFIED);