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 ju...@apache.org on 2012/05/23 18:09:04 UTC
svn commit: r1341931 -
/jackrabbit/oak/trunk/oak-core/src/main/java/org/apache/jackrabbit/oak/plugins/memory/ModifiedNodeState.java
Author: jukka
Date: Wed May 23 16:09:04 2012
New Revision: 1341931
URL: http://svn.apache.org/viewvc?rev=1341931&view=rev
Log:
OAK-68: Extension point for commit validation
Fix equals() in ModifiedNodeState
Modified:
jackrabbit/oak/trunk/oak-core/src/main/java/org/apache/jackrabbit/oak/plugins/memory/ModifiedNodeState.java
Modified: jackrabbit/oak/trunk/oak-core/src/main/java/org/apache/jackrabbit/oak/plugins/memory/ModifiedNodeState.java
URL: http://svn.apache.org/viewvc/jackrabbit/oak/trunk/oak-core/src/main/java/org/apache/jackrabbit/oak/plugins/memory/ModifiedNodeState.java?rev=1341931&r1=1341930&r2=1341931&view=diff
==============================================================================
--- jackrabbit/oak/trunk/oak-core/src/main/java/org/apache/jackrabbit/oak/plugins/memory/ModifiedNodeState.java (original)
+++ jackrabbit/oak/trunk/oak-core/src/main/java/org/apache/jackrabbit/oak/plugins/memory/ModifiedNodeState.java Wed May 23 16:09:04 2012
@@ -20,15 +20,17 @@ import org.apache.commons.collections.It
import org.apache.commons.collections.Predicate;
import org.apache.commons.collections.PredicateUtils;
import org.apache.jackrabbit.oak.api.PropertyState;
+import org.apache.jackrabbit.oak.spi.state.AbstractNodeState;
import org.apache.jackrabbit.oak.spi.state.ChildNodeEntry;
import org.apache.jackrabbit.oak.spi.state.NodeState;
import org.apache.jackrabbit.oak.spi.state.NodeStateDiff;
-import org.apache.jackrabbit.oak.spi.state.ProxyNodeState;
import java.util.Iterator;
import java.util.Map;
-public class ModifiedNodeState extends ProxyNodeState {
+public class ModifiedNodeState extends AbstractNodeState {
+
+ private final NodeState base;
private final Map<String, PropertyState> properties;
@@ -38,18 +40,18 @@ public class ModifiedNodeState extends P
NodeState base,
Map<String, PropertyState> properties,
Map<String, NodeState> nodes) {
- super(base);
+ this.base = base;
this.properties = properties;
this.nodes = nodes;
}
NodeState getBase() {
- return delegate;
+ return base;
}
void diffAgainstBase(NodeStateDiff diff) {
for (Map.Entry<String, PropertyState> entry : properties.entrySet()) {
- PropertyState before = super.getProperty(entry.getKey());
+ PropertyState before = base.getProperty(entry.getKey());
PropertyState after = entry.getValue();
if (after == null) {
assert before != null;
@@ -63,7 +65,7 @@ public class ModifiedNodeState extends P
for (Map.Entry<String, NodeState> entry : nodes.entrySet()) {
String name = entry.getKey();
- NodeState before = super.getChildNode(name);
+ NodeState before = base.getChildNode(name);
NodeState after = entry.getValue();
if (after == null) {
assert before != null;
@@ -83,15 +85,15 @@ public class ModifiedNodeState extends P
if (properties.containsKey(name)) {
return properties.get(name);
} else {
- return super.getProperty(name);
+ return base.getProperty(name);
}
}
@Override
public long getPropertyCount() {
- long count = super.getPropertyCount();
+ long count = base.getPropertyCount();
for (Map.Entry<String, PropertyState> entry : properties.entrySet()) {
- if (super.getProperty(entry.getKey()) != null) {
+ if (base.getProperty(entry.getKey()) != null) {
if (entry.getValue() == null) {
count--;
}
@@ -107,10 +109,10 @@ public class ModifiedNodeState extends P
@Override
public Iterable<? extends PropertyState> getProperties() {
if (properties.isEmpty()) {
- return super.getProperties(); // shortcut
+ return base.getProperties(); // shortcut
}
final Iterable<? extends PropertyState> unmodified =
- super.getProperties();
+ base.getProperties();
final Iterable<? extends PropertyState> modified =
properties.values();
return new Iterable<PropertyState>() {
@@ -132,15 +134,15 @@ public class ModifiedNodeState extends P
if (nodes.containsKey(name)) {
return nodes.get(name);
} else {
- return super.getChildNode(name);
+ return base.getChildNode(name);
}
}
@Override
public long getChildNodeCount() {
- long count = super.getChildNodeCount();
+ long count = base.getChildNodeCount();
for (Map.Entry<String, NodeState> entry : nodes.entrySet()) {
- if (super.getChildNode(entry.getKey()) != null) {
+ if (base.getChildNode(entry.getKey()) != null) {
if (entry.getValue() == null) {
count--;
}
@@ -156,10 +158,10 @@ public class ModifiedNodeState extends P
@Override
public Iterable<? extends ChildNodeEntry> getChildNodeEntries() {
if (nodes.isEmpty()) {
- return super.getChildNodeEntries(); // shortcut
+ return base.getChildNodeEntries(); // shortcut
}
final Iterable<? extends ChildNodeEntry> unmodified =
- super.getChildNodeEntries();
+ base.getChildNodeEntries();
final Iterable<? extends ChildNodeEntry> modified =
MemoryChildNodeEntry.iterable(nodes);
return new Iterable<ChildNodeEntry>() {