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/07/06 18:48:09 UTC
svn commit: r1358299 - in
/jackrabbit/oak/trunk/oak-core/src/main/java/org/apache/jackrabbit/oak:
kernel/KernelNodeStoreBranch.java plugins/lucene/LuceneEditor.java
spi/commit/ValidatingEditor.java
Author: jukka
Date: Fri Jul 6 16:48:08 2012
New Revision: 1358299
URL: http://svn.apache.org/viewvc?rev=1358299&view=rev
Log:
OAK-171: Add NodeState.compareAgainstBaseState()
No need to keep track of the NodeStore in many diff implementations
Modified:
jackrabbit/oak/trunk/oak-core/src/main/java/org/apache/jackrabbit/oak/kernel/KernelNodeStoreBranch.java
jackrabbit/oak/trunk/oak-core/src/main/java/org/apache/jackrabbit/oak/plugins/lucene/LuceneEditor.java
jackrabbit/oak/trunk/oak-core/src/main/java/org/apache/jackrabbit/oak/spi/commit/ValidatingEditor.java
Modified: jackrabbit/oak/trunk/oak-core/src/main/java/org/apache/jackrabbit/oak/kernel/KernelNodeStoreBranch.java
URL: http://svn.apache.org/viewvc/jackrabbit/oak/trunk/oak-core/src/main/java/org/apache/jackrabbit/oak/kernel/KernelNodeStoreBranch.java?rev=1358299&r1=1358298&r2=1358299&view=diff
==============================================================================
--- jackrabbit/oak/trunk/oak-core/src/main/java/org/apache/jackrabbit/oak/kernel/KernelNodeStoreBranch.java (original)
+++ jackrabbit/oak/trunk/oak-core/src/main/java/org/apache/jackrabbit/oak/kernel/KernelNodeStoreBranch.java Fri Jul 6 16:48:08 2012
@@ -175,8 +175,7 @@ class KernelNodeStoreBranch implements N
private void diffToJsop(NodeState before, NodeState after, final String path,
final StringBuilder jsop) {
-
- store.compare(before, after, new NodeStateDiff() {
+ after.compareAgainstBaseState(before, new NodeStateDiff() {
@Override
public void propertyAdded(PropertyState after) {
jsop.append('^').append(buildPath(after.getName()))
Modified: jackrabbit/oak/trunk/oak-core/src/main/java/org/apache/jackrabbit/oak/plugins/lucene/LuceneEditor.java
URL: http://svn.apache.org/viewvc/jackrabbit/oak/trunk/oak-core/src/main/java/org/apache/jackrabbit/oak/plugins/lucene/LuceneEditor.java?rev=1358299&r1=1358298&r2=1358299&view=diff
==============================================================================
--- jackrabbit/oak/trunk/oak-core/src/main/java/org/apache/jackrabbit/oak/plugins/lucene/LuceneEditor.java (original)
+++ jackrabbit/oak/trunk/oak-core/src/main/java/org/apache/jackrabbit/oak/plugins/lucene/LuceneEditor.java Fri Jul 6 16:48:08 2012
@@ -65,8 +65,8 @@ public class LuceneEditor implements Com
IndexWriter writer = new IndexWriter(
directory, new IndexWriterConfig(VERSION, ANALYZER));
try {
- LuceneDiff diff = new LuceneDiff(store, writer, "");
- store.compare(before, after, diff);
+ LuceneDiff diff = new LuceneDiff(writer, "");
+ after.compareAgainstBaseState(before, diff);
diff.postProcess(after);
writer.commit();
} finally {
@@ -82,8 +82,6 @@ public class LuceneEditor implements Com
private static class LuceneDiff implements NodeStateDiff {
- private final NodeStore store;
-
private final IndexWriter writer;
private final String path;
@@ -92,8 +90,7 @@ public class LuceneEditor implements Com
private IOException exception = null;
- public LuceneDiff(NodeStore store, IndexWriter writer, String path) {
- this.store = store;
+ public LuceneDiff(IndexWriter writer, String path) {
this.writer = writer;
this.path = path;
}
@@ -140,9 +137,8 @@ public class LuceneEditor implements Com
String name, NodeState before, NodeState after) {
if (exception == null) {
try {
- LuceneDiff diff =
- new LuceneDiff(store, writer, path + "/" + name);
- store.compare(before, after, diff);
+ LuceneDiff diff = new LuceneDiff(writer, path + "/" + name);
+ after.compareAgainstBaseState(before, diff);
diff.postProcess(after);
} catch (IOException e) {
exception = e;
Modified: jackrabbit/oak/trunk/oak-core/src/main/java/org/apache/jackrabbit/oak/spi/commit/ValidatingEditor.java
URL: http://svn.apache.org/viewvc/jackrabbit/oak/trunk/oak-core/src/main/java/org/apache/jackrabbit/oak/spi/commit/ValidatingEditor.java?rev=1358299&r1=1358298&r2=1358299&view=diff
==============================================================================
--- jackrabbit/oak/trunk/oak-core/src/main/java/org/apache/jackrabbit/oak/spi/commit/ValidatingEditor.java (original)
+++ jackrabbit/oak/trunk/oak-core/src/main/java/org/apache/jackrabbit/oak/spi/commit/ValidatingEditor.java Fri Jul 6 16:48:08 2012
@@ -47,7 +47,7 @@ public class ValidatingEditor implements
NodeStore store, NodeState before, NodeState after)
throws CommitFailedException {
Validator validator = validatorProvider.getRootValidator(before, after);
- ValidatorDiff.validate(validator, store, before, after);
+ ValidatorDiff.validate(validator, before, after);
return after;
}
@@ -57,8 +57,6 @@ public class ValidatingEditor implements
private final Validator validator;
- private final NodeStore store;
-
/**
* Checked exceptions don't compose. So we need to hack around.
* See http://markmail.org/message/ak67n5k7mr3vqylm and
@@ -75,19 +73,19 @@ public class ValidatingEditor implements
* @param after state of the modified subtree
* @throws CommitFailedException if validation failed
*/
- public static void validate(Validator validator, NodeStore store,
- NodeState before, NodeState after) throws CommitFailedException {
- new ValidatorDiff(validator, store).validate(before, after);
+ public static void validate(
+ Validator validator, NodeState before, NodeState after)
+ throws CommitFailedException {
+ new ValidatorDiff(validator).validate(before, after);
}
- private ValidatorDiff(Validator validator, NodeStore store) {
+ private ValidatorDiff(Validator validator) {
this.validator = validator;
- this.store = store;
}
private void validate(NodeState before, NodeState after)
throws CommitFailedException {
- store.compare(before, after, this);
+ after.compareAgainstBaseState(before, this);
if (exception != null) {
throw exception;
}
@@ -134,7 +132,7 @@ public class ValidatingEditor implements
try {
Validator v = validator.childNodeAdded(name, after);
if (v != null) {
- validate(v, store, EMPTY_NODE, after);
+ validate(v, EMPTY_NODE, after);
}
} catch (CommitFailedException e) {
exception = e;
@@ -150,7 +148,7 @@ public class ValidatingEditor implements
Validator v =
validator.childNodeChanged(name, before, after);
if (v != null) {
- validate(v, store, before, after);
+ validate(v, before, after);
}
} catch (CommitFailedException e) {
exception = e;
@@ -164,7 +162,7 @@ public class ValidatingEditor implements
try {
Validator v = validator.childNodeDeleted(name, before);
if (v != null) {
- validate(v, store, before, EMPTY_NODE);
+ validate(v, before, EMPTY_NODE);
}
} catch (CommitFailedException e) {
exception = e;