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 ch...@apache.org on 2016/06/21 06:21:28 UTC
svn commit: r1749443 - in
/jackrabbit/oak/trunk/oak-core/src/main/java/org/apache/jackrabbit/oak/plugins/document:
AbstractDocumentNodeState.java DocumentNodeState.java
secondary/DelegatingDocumentNodeState.java
Author: chetanm
Date: Tue Jun 21 06:21:28 2016
New Revision: 1749443
URL: http://svn.apache.org/viewvc?rev=1749443&view=rev
Log:
OAK-4180 - Use another NodeStore as a local cache for a remote Document store
Refactor to replace instance variable for NodeStateDiffer with abstract getter
Modified:
jackrabbit/oak/trunk/oak-core/src/main/java/org/apache/jackrabbit/oak/plugins/document/AbstractDocumentNodeState.java
jackrabbit/oak/trunk/oak-core/src/main/java/org/apache/jackrabbit/oak/plugins/document/DocumentNodeState.java
jackrabbit/oak/trunk/oak-core/src/main/java/org/apache/jackrabbit/oak/plugins/document/secondary/DelegatingDocumentNodeState.java
Modified: jackrabbit/oak/trunk/oak-core/src/main/java/org/apache/jackrabbit/oak/plugins/document/AbstractDocumentNodeState.java
URL: http://svn.apache.org/viewvc/jackrabbit/oak/trunk/oak-core/src/main/java/org/apache/jackrabbit/oak/plugins/document/AbstractDocumentNodeState.java?rev=1749443&r1=1749442&r2=1749443&view=diff
==============================================================================
--- jackrabbit/oak/trunk/oak-core/src/main/java/org/apache/jackrabbit/oak/plugins/document/AbstractDocumentNodeState.java (original)
+++ jackrabbit/oak/trunk/oak-core/src/main/java/org/apache/jackrabbit/oak/plugins/document/AbstractDocumentNodeState.java Tue Jun 21 06:21:28 2016
@@ -36,11 +36,6 @@ public abstract class AbstractDocumentNo
private static final PerfLogger perfLogger = new PerfLogger(
LoggerFactory.getLogger(AbstractDocumentNodeState.class.getName()
+ ".perf"));
- protected final NodeStateDiffer differ;
-
- protected AbstractDocumentNodeState(NodeStateDiffer differ) {
- this.differ = differ;
- }
public abstract String getPath();
@@ -70,6 +65,8 @@ public abstract class AbstractDocumentNo
public abstract boolean hasNoChildren();
+ protected abstract NodeStateDiffer getNodeStateDiffer();
+
//--------------------------< NodeState >-----------------------------------
@Override
@@ -116,7 +113,7 @@ public abstract class AbstractDocumentNo
// use DocumentNodeStore compare
final long start = perfLogger.start();
try {
- return differ.compare(this, mBase, diff);
+ return getNodeStateDiffer().compare(this, mBase, diff);
} finally {
if (start > 0) {
perfLogger
Modified: jackrabbit/oak/trunk/oak-core/src/main/java/org/apache/jackrabbit/oak/plugins/document/DocumentNodeState.java
URL: http://svn.apache.org/viewvc/jackrabbit/oak/trunk/oak-core/src/main/java/org/apache/jackrabbit/oak/plugins/document/DocumentNodeState.java?rev=1749443&r1=1749442&r2=1749443&view=diff
==============================================================================
--- jackrabbit/oak/trunk/oak-core/src/main/java/org/apache/jackrabbit/oak/plugins/document/DocumentNodeState.java (original)
+++ jackrabbit/oak/trunk/oak-core/src/main/java/org/apache/jackrabbit/oak/plugins/document/DocumentNodeState.java Tue Jun 21 06:21:28 2016
@@ -104,7 +104,6 @@ public class DocumentNodeState extends A
@Nullable RevisionVector lastRevision,
@Nullable RevisionVector rootRevision,
boolean fromExternalChange) {
- super(store);
this.store = checkNotNull(store);
this.path = checkNotNull(path);
this.readRevision = checkNotNull(readRevision);
@@ -355,6 +354,11 @@ public class DocumentNodeState extends A
}
@Override
+ protected NodeStateDiffer getNodeStateDiffer() {
+ return store;
+ }
+
+ @Override
public String toString() {
StringBuilder buff = new StringBuilder();
buff.append("{ path: '").append(path).append("', ");
Modified: jackrabbit/oak/trunk/oak-core/src/main/java/org/apache/jackrabbit/oak/plugins/document/secondary/DelegatingDocumentNodeState.java
URL: http://svn.apache.org/viewvc/jackrabbit/oak/trunk/oak-core/src/main/java/org/apache/jackrabbit/oak/plugins/document/secondary/DelegatingDocumentNodeState.java?rev=1749443&r1=1749442&r2=1749443&view=diff
==============================================================================
--- jackrabbit/oak/trunk/oak-core/src/main/java/org/apache/jackrabbit/oak/plugins/document/secondary/DelegatingDocumentNodeState.java (original)
+++ jackrabbit/oak/trunk/oak-core/src/main/java/org/apache/jackrabbit/oak/plugins/document/secondary/DelegatingDocumentNodeState.java Tue Jun 21 06:21:28 2016
@@ -58,6 +58,7 @@ class DelegatingDocumentNodeState extend
}
};
+ private final NodeStateDiffer differ;
private final NodeState delegate;
private final RevisionVector rootRevision;
private final boolean fromExternalChange;
@@ -91,7 +92,7 @@ class DelegatingDocumentNodeState extend
private DelegatingDocumentNodeState(NodeState delegate, RevisionVector rootRevision,
boolean fromExternalChange, NodeStateDiffer differ) {
- super(differ);
+ this.differ = differ;
this.delegate = delegate;
this.rootRevision = rootRevision;
this.fromExternalChange = fromExternalChange;
@@ -99,7 +100,7 @@ class DelegatingDocumentNodeState extend
private DelegatingDocumentNodeState(DelegatingDocumentNodeState original,
RevisionVector rootRevision, boolean fromExternalChange) {
- super(original.differ);
+ this.differ = original.differ;
this.delegate = original.delegate;
this.rootRevision = rootRevision;
this.fromExternalChange = fromExternalChange;
@@ -159,6 +160,11 @@ class DelegatingDocumentNodeState extend
return delegate.getChildNodeCount(1) == 0;
}
+ @Override
+ protected NodeStateDiffer getNodeStateDiffer() {
+ return differ;
+ }
+
//~----------------------------------< NodeState >
@Override