Author: mduerig Date: Wed Mar 6 12:05:52 2013 New Revision: 1453307 URL: http://svn.apache.org/r1453307 Log: OAK-614: AssertionError in MemoryNodeBuilder clarify: better method and parameter names, correct comment
Modified: jackrabbit/oak/trunk/oak-core/src/main/java/org/apache/jackrabbit/oak/plugins/memory/MemoryNodeBuilder.java Modified: jackrabbit/oak/trunk/oak-core/src/main/java/org/apache/jackrabbit/oak/plugins/memory/MemoryNodeBuilder.java URL: http://svn.apache.org/viewvc/jackrabbit/oak/trunk/oak-core/src/main/java/org/apache/jackrabbit/oak/plugins/memory/MemoryNodeBuilder.java?rev=1453307&r1=1453306&r2=1453307&view=diff ============================================================================== --- jackrabbit/oak/trunk/oak-core/src/main/java/org/apache/jackrabbit/oak/plugins/memory/MemoryNodeBuilder.java (original) +++ jackrabbit/oak/trunk/oak-core/src/main/java/org/apache/jackrabbit/oak/plugins/memory/MemoryNodeBuilder.java Wed Mar 6 12:05:52 2013 @@ -189,13 +189,13 @@ public class MemoryNodeBuilder implement } /** - * Determine whether this child exists with its direct parent or existed with its direct - * parent and got disconnected. - * @return {@code true} iff this child either exists or got disconnected from its direct parent. + * Determine whether this child exists at its direct parent. + * @return {@code true} iff this child exists at its direct parent. */ - private boolean existsOrDisconnected() { - // No need to check the base state. The fact that we have this - // builder instance proofs that this child existed at some point. + private boolean exists() { + // No need to check the base state if write state is null. The fact that we have this + // builder instance proofs that this child existed at some point as it must have been + // retrieved from the base state. return isRoot() || parent.writeState == null || parent.writeState.hasChildNode(name); } @@ -206,7 +206,7 @@ public class MemoryNodeBuilder implement private boolean updateReadState() { if (revision != root.revision) { assert(!isRoot()); // root never gets here since revision == root.revision - if (!existsOrDisconnected()) { + if (!exists()) { return false; } parent.updateReadState(); @@ -235,11 +235,11 @@ public class MemoryNodeBuilder implement } @Nonnull - private MutableNodeState write(long newRevision, boolean skipRemovedCheck) { + private MutableNodeState write(long newRevision, boolean reconnect) { // make sure that all revision numbers up to the root gets updated if (!isRoot()) { - checkState(skipRemovedCheck || existsOrDisconnected(), "This node has been removed"); - parent.write(newRevision, skipRemovedCheck); + checkState(reconnect || exists(), "This node has been removed"); + parent.write(newRevision, reconnect); } if (writeState == null || revision != root.revision) { @@ -250,7 +250,7 @@ public class MemoryNodeBuilder implement writeState = parent.getWriteState(name); if (writeState == null) { - if (existsOrDisconnected()) { + if (exists()) { assert baseState != null; writeState = new MutableNodeState(baseState); }