You are viewing a plain text version of this content. The canonical link for it is here.
Posted to oak-commits@jackrabbit.apache.org by an...@apache.org on 2013/11/13 14:55:59 UTC

svn commit: r1541521 - in /jackrabbit/oak/trunk: oak-core/src/main/java/org/apache/jackrabbit/oak/core/MutableTree.java oak-jcr/src/test/java/org/apache/jackrabbit/oak/jcr/security/authorization/ItemModifiedTest.java

Author: angela
Date: Wed Nov 13 13:55:59 2013
New Revision: 1541521

URL: http://svn.apache.org/r1541521
Log:
OAK-1177 : Node#isModified returns true if node has non-readable child

-> delegate evaluation to NodeBuilder#isModified()

Modified:
    jackrabbit/oak/trunk/oak-core/src/main/java/org/apache/jackrabbit/oak/core/MutableTree.java
    jackrabbit/oak/trunk/oak-jcr/src/test/java/org/apache/jackrabbit/oak/jcr/security/authorization/ItemModifiedTest.java

Modified: jackrabbit/oak/trunk/oak-core/src/main/java/org/apache/jackrabbit/oak/core/MutableTree.java
URL: http://svn.apache.org/viewvc/jackrabbit/oak/trunk/oak-core/src/main/java/org/apache/jackrabbit/oak/core/MutableTree.java?rev=1541521&r1=1541520&r2=1541521&view=diff
==============================================================================
--- jackrabbit/oak/trunk/oak-core/src/main/java/org/apache/jackrabbit/oak/core/MutableTree.java (original)
+++ jackrabbit/oak/trunk/oak-core/src/main/java/org/apache/jackrabbit/oak/core/MutableTree.java Wed Nov 13 13:55:59 2013
@@ -18,29 +18,14 @@
  */
 package org.apache.jackrabbit.oak.core;
 
-import static com.google.common.base.Preconditions.checkArgument;
-import static com.google.common.base.Preconditions.checkNotNull;
-import static com.google.common.base.Preconditions.checkState;
-import static com.google.common.collect.Iterables.filter;
-import static com.google.common.collect.Iterables.indexOf;
-import static org.apache.jackrabbit.oak.api.Tree.Status.EXISTING;
-import static org.apache.jackrabbit.oak.api.Tree.Status.MODIFIED;
-import static org.apache.jackrabbit.oak.api.Tree.Status.NEW;
-import static org.apache.jackrabbit.oak.api.Type.STRING;
-import static org.apache.jackrabbit.oak.commons.PathUtils.elements;
-import static org.apache.jackrabbit.oak.commons.PathUtils.isAbsolute;
-import static org.apache.jackrabbit.oak.spi.state.NodeStateUtils.isHidden;
-
 import java.util.Collections;
 import java.util.Set;
-
 import javax.annotation.CheckForNull;
 import javax.annotation.Nonnull;
 
 import com.google.common.base.Predicate;
 import com.google.common.collect.Iterables;
 import com.google.common.collect.Sets;
-
 import org.apache.jackrabbit.oak.api.PropertyState;
 import org.apache.jackrabbit.oak.api.Tree;
 import org.apache.jackrabbit.oak.api.Type;
@@ -51,6 +36,19 @@ import org.apache.jackrabbit.oak.spi.sta
 import org.apache.jackrabbit.oak.spi.state.NodeState;
 import org.apache.jackrabbit.oak.spi.state.PropertyBuilder;
 
+import static com.google.common.base.Preconditions.checkArgument;
+import static com.google.common.base.Preconditions.checkNotNull;
+import static com.google.common.base.Preconditions.checkState;
+import static com.google.common.collect.Iterables.filter;
+import static com.google.common.collect.Iterables.indexOf;
+import static org.apache.jackrabbit.oak.api.Tree.Status.EXISTING;
+import static org.apache.jackrabbit.oak.api.Tree.Status.MODIFIED;
+import static org.apache.jackrabbit.oak.api.Tree.Status.NEW;
+import static org.apache.jackrabbit.oak.api.Type.STRING;
+import static org.apache.jackrabbit.oak.commons.PathUtils.elements;
+import static org.apache.jackrabbit.oak.commons.PathUtils.isAbsolute;
+import static org.apache.jackrabbit.oak.spi.state.NodeStateUtils.isHidden;
+
 public class MutableTree extends AbstractTree {
 
     /**
@@ -93,41 +91,7 @@ public class MutableTree extends Abstrac
 
     @Override
     protected boolean isModified() {
-        NodeState base = getBase();
-
-        // child node removed?
-        for (String name : base.getChildNodeNames()) {
-            if (!nodeBuilder.hasChildNode(name)) {
-                return true;
-            }
-        }
-
-        // child node added?
-        for (String name : nodeBuilder.getChildNodeNames()) {
-            if (!base.hasChildNode(name)) {
-                return true;
-            }
-        }
-
-        // property removed?
-        for (PropertyState p : base.getProperties()) {
-            if (!nodeBuilder.hasProperty(p.getName())) {
-                return true;
-            }
-        }
-
-        // property added or modified?
-        for (PropertyState p : nodeBuilder.getProperties()) {
-            PropertyState q = base.getProperty(p.getName());
-            if (q == null) {
-                return true;
-            }
-            if (!p.equals(q)) {
-                return true;
-            }
-        }
-
-        return false;
+        return nodeBuilder.isModified();
     }
 
     //------------------------------------------------------------< Tree >---

Modified: jackrabbit/oak/trunk/oak-jcr/src/test/java/org/apache/jackrabbit/oak/jcr/security/authorization/ItemModifiedTest.java
URL: http://svn.apache.org/viewvc/jackrabbit/oak/trunk/oak-jcr/src/test/java/org/apache/jackrabbit/oak/jcr/security/authorization/ItemModifiedTest.java?rev=1541521&r1=1541520&r2=1541521&view=diff
==============================================================================
--- jackrabbit/oak/trunk/oak-jcr/src/test/java/org/apache/jackrabbit/oak/jcr/security/authorization/ItemModifiedTest.java (original)
+++ jackrabbit/oak/trunk/oak-jcr/src/test/java/org/apache/jackrabbit/oak/jcr/security/authorization/ItemModifiedTest.java Wed Nov 13 13:55:59 2013
@@ -26,7 +26,6 @@ import org.junit.Test;
 /**
  * Tests for <a href="https://issues.apache.org/jira/browse/OAK-1177">OAK-1177</a>
  */
-@Ignore("OAK-1177") // FIXME: OAK-1177
 public class ItemModifiedTest extends AbstractEvaluationTest {
 
     @Ignore("OAK-1177") // FIXME: OAK-1177