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 md...@apache.org on 2013/12/17 17:09:57 UTC
svn commit: r1551598 -
/jackrabbit/oak/trunk/oak-core/src/main/java/org/apache/jackrabbit/oak/core/MutableTree.java
Author: mduerig
Date: Tue Dec 17 16:09:57 2013
New Revision: 1551598
URL: http://svn.apache.org/r1551598
Log:
OAK-1232: Improve implementation of Tree.get(Property)Status
Use NodeBuilder.isNew/isReplaced to determine property status
Modified:
jackrabbit/oak/trunk/oak-core/src/main/java/org/apache/jackrabbit/oak/core/MutableTree.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=1551598&r1=1551597&r2=1551598&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 Tue Dec 17 16:09:57 2013
@@ -18,8 +18,19 @@
*/
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.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;
@@ -35,19 +46,6 @@ import org.apache.jackrabbit.oak.spi.sta
import org.apache.jackrabbit.oak.spi.state.NodeState;
import org.apache.jackrabbit.oak.util.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 {
/**
@@ -137,24 +135,7 @@ public class MutableTree extends Abstrac
@Override
public Status getPropertyStatus(String name) {
beforeRead();
- // FIXME use super.getPropertyStatus here. See OAK-1232
-
- PropertyState head = super.getProperty(name);
- if (head == null) {
- // make sure we don't expose information about a non-accessible property
- return null;
- } else if (super.getStatus() == NEW) {
- return NEW;
- }
-
- PropertyState base = getSecureBase().getProperty(name);
- if (base == null) {
- return NEW;
- } else if (head.equals(base)) {
- return EXISTING;
- } else {
- return MODIFIED;
- }
+ return super.getPropertyStatus(name);
}
@Override