reschke commented on a change in pull request #163:
URL: 
https://github.com/apache/jackrabbit-filevault/pull/163#discussion_r746718540



##########
File path: 
vault-core/src/main/java/org/apache/jackrabbit/vault/fs/impl/io/DocViewSAXImporter.java
##########
@@ -1295,6 +1298,33 @@ public void endElement(String uri, String localName, 
String qName) throws SAXExc
         }
     }
 
+    private boolean hasSiblingWithSameType(Node child) throws 
RepositoryException {
+
+        Node parent = child.getParent();
+
+        try {
+            EffectiveNodeType ent = EffectiveNodeType.ofNode(parent);
+            String typeName = 
ent.getApplicableChildNodeDefinition(child.getName(), 
child.getPrimaryNodeType()).get().getName();
+
+            NodeIterator iter = parent.getNodes();
+            while (iter.hasNext()) {
+                Node sibling = iter.nextNode();
+                if (!sibling.isSame(child)) {
+                    Optional<NodeDefinition> childDef = 
ent.getApplicableChildNodeDefinition(sibling.getName(),
+                            sibling.getPrimaryNodeType());
+                    try {
+                        if (typeName.equals(childDef.get().getName())) {

Review comment:
       I wonder whether comparing the type is correct at all. Consider a 
mandatory child node of type "nt:resource", and a folder that contains both an 
"nt:file" and an "nt:folder". Their node types are different, but they both 
satisfy the parent's requirement.




-- 
This is an automated message from the Apache Git Service.
To respond to the message, please log on to GitHub and use the
URL above to go to the specific comment.

To unsubscribe, e-mail: [email protected]

For queries about this service, please contact Infrastructure at:
[email protected]


Reply via email to