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 2012/04/25 17:22:04 UTC
svn commit: r1330340 - in
/jackrabbit/oak/trunk/oak-core/src/main/java/org/apache/jackrabbit/oak/kernel:
KernelNodeStateBuilder.java KernelNodeStore.java KernelRoot.java
Author: mduerig
Date: Wed Apr 25 15:22:03 2012
New Revision: 1330340
URL: http://svn.apache.org/viewvc?rev=1330340&view=rev
Log:
OAK-9: Internal tree builder
- cleanup
Modified:
jackrabbit/oak/trunk/oak-core/src/main/java/org/apache/jackrabbit/oak/kernel/KernelNodeStateBuilder.java
jackrabbit/oak/trunk/oak-core/src/main/java/org/apache/jackrabbit/oak/kernel/KernelNodeStore.java
jackrabbit/oak/trunk/oak-core/src/main/java/org/apache/jackrabbit/oak/kernel/KernelRoot.java
Modified: jackrabbit/oak/trunk/oak-core/src/main/java/org/apache/jackrabbit/oak/kernel/KernelNodeStateBuilder.java
URL: http://svn.apache.org/viewvc/jackrabbit/oak/trunk/oak-core/src/main/java/org/apache/jackrabbit/oak/kernel/KernelNodeStateBuilder.java?rev=1330340&r1=1330339&r2=1330340&view=diff
==============================================================================
--- jackrabbit/oak/trunk/oak-core/src/main/java/org/apache/jackrabbit/oak/kernel/KernelNodeStateBuilder.java (original)
+++ jackrabbit/oak/trunk/oak-core/src/main/java/org/apache/jackrabbit/oak/kernel/KernelNodeStateBuilder.java Wed Apr 25 15:22:03 2012
@@ -28,18 +28,24 @@ public class KernelNodeStateBuilder impl
private final MicroKernel kernel;
private final CoreValueFactory valueFactory;
private final String path;
+ private final String[] revision;
- private String[] revision; // FIXME: refactor
-
- public KernelNodeStateBuilder(MicroKernel kernel, CoreValueFactory valueFactory, String path,
+ private KernelNodeStateBuilder(MicroKernel kernel, CoreValueFactory valueFactory, String path,
String[] revision) {
this.kernel = kernel;
this.valueFactory = valueFactory;
this.path = path;
-
this.revision = revision;
}
+
+ public static NodeStateBuilder create(MicroKernel kernel, CoreValueFactory valueFactory,
+ String path, String revision) {
+
+ String[] r = new String[1];
+ r[0] = revision;
+ return new KernelNodeStateBuilder(kernel, valueFactory, path, r);
+ }
@Override
public NodeState getNodeState() {
@@ -156,7 +162,7 @@ public class KernelNodeStateBuilder impl
try {
kernel.merge(revision[0], null);
- revision = null;
+ revision[0] = null;
}
catch (MicroKernelException e) {
throw new CommitFailedException(e);
@@ -166,7 +172,7 @@ public class KernelNodeStateBuilder impl
//------------------------------------------------------------< private >---
private void assertNotStale() {
- if (revision == null) {
+ if (revision[0] == null) {
throw new IllegalStateException("This branch has been merged already");
}
}
Modified: jackrabbit/oak/trunk/oak-core/src/main/java/org/apache/jackrabbit/oak/kernel/KernelNodeStore.java
URL: http://svn.apache.org/viewvc/jackrabbit/oak/trunk/oak-core/src/main/java/org/apache/jackrabbit/oak/kernel/KernelNodeStore.java?rev=1330340&r1=1330339&r2=1330340&view=diff
==============================================================================
--- jackrabbit/oak/trunk/oak-core/src/main/java/org/apache/jackrabbit/oak/kernel/KernelNodeStore.java (original)
+++ jackrabbit/oak/trunk/oak-core/src/main/java/org/apache/jackrabbit/oak/kernel/KernelNodeStore.java Wed Apr 25 15:22:03 2012
@@ -52,9 +52,7 @@ public class KernelNodeStore implements
KernelNodeState kernelNodeState = (KernelNodeState) nodeState;
String branchRevision = kernel.branch(kernelNodeState.getRevision());
String path = kernelNodeState.getPath();
- String[] br = new String[1]; // FIXME refactor
- br[0] = branchRevision;
- return new KernelNodeStateBuilder(kernel, valueFactory, path, br);
+ return KernelNodeStateBuilder.create(kernel, valueFactory, path, branchRevision);
}
@Override
Modified: jackrabbit/oak/trunk/oak-core/src/main/java/org/apache/jackrabbit/oak/kernel/KernelRoot.java
URL: http://svn.apache.org/viewvc/jackrabbit/oak/trunk/oak-core/src/main/java/org/apache/jackrabbit/oak/kernel/KernelRoot.java?rev=1330340&r1=1330339&r2=1330340&view=diff
==============================================================================
--- jackrabbit/oak/trunk/oak-core/src/main/java/org/apache/jackrabbit/oak/kernel/KernelRoot.java (original)
+++ jackrabbit/oak/trunk/oak-core/src/main/java/org/apache/jackrabbit/oak/kernel/KernelRoot.java Wed Apr 25 15:22:03 2012
@@ -102,7 +102,7 @@ public class KernelRoot implements Root
@Override
public void refresh() {
- // TODO implement base = store.getRoot().getChildNode(workspaceName);
+ // TODO implement refresh base = store.getRoot().getChildNode(workspaceName);
}
@Override
@@ -139,18 +139,6 @@ public class KernelRoot implements Root
return state;
}
- /**
- * Path of the item {@code name} of the given {@code state}
- *
- * @param state
- * @param name The item name.
- * @return relative path of the item {@code name}
- */
- private static String path(Tree state, String name) {
- String path = state.getPath();
- return path.isEmpty() ? name : path + '/' + name;
- }
-
private class TreeListener implements Listener {
private boolean isDirty;