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 2015/03/23 15:04:02 UTC

svn commit: r1668645 - in /jackrabbit/oak/trunk: oak-core/src/main/java/org/apache/jackrabbit/oak/plugins/index/ oak-core/src/main/java/org/apache/jackrabbit/oak/spi/commit/ oak-upgrade/src/main/java/org/apache/jackrabbit/oak/upgrade/

Author: chetanm
Date: Mon Mar 23 14:04:02 2015
New Revision: 1668645

URL: http://svn.apache.org/r1668645
Log:
OAK-2664 - Move ProgressNotificationEditor from upgrade module to core

Added:
    jackrabbit/oak/trunk/oak-core/src/main/java/org/apache/jackrabbit/oak/spi/commit/ProgressNotificationEditor.java   (contents, props changed)
      - copied, changed from r1668644, jackrabbit/oak/trunk/oak-upgrade/src/main/java/org/apache/jackrabbit/oak/upgrade/ProgressNotificationEditor.java
Removed:
    jackrabbit/oak/trunk/oak-upgrade/src/main/java/org/apache/jackrabbit/oak/upgrade/ProgressNotificationEditor.java
Modified:
    jackrabbit/oak/trunk/oak-core/src/main/java/org/apache/jackrabbit/oak/plugins/index/IndexUpdate.java
    jackrabbit/oak/trunk/oak-upgrade/src/main/java/org/apache/jackrabbit/oak/upgrade/RepositoryUpgrade.java

Modified: jackrabbit/oak/trunk/oak-core/src/main/java/org/apache/jackrabbit/oak/plugins/index/IndexUpdate.java
URL: http://svn.apache.org/viewvc/jackrabbit/oak/trunk/oak-core/src/main/java/org/apache/jackrabbit/oak/plugins/index/IndexUpdate.java?rev=1668645&r1=1668644&r2=1668645&view=diff
==============================================================================
--- jackrabbit/oak/trunk/oak-core/src/main/java/org/apache/jackrabbit/oak/plugins/index/IndexUpdate.java (original)
+++ jackrabbit/oak/trunk/oak-core/src/main/java/org/apache/jackrabbit/oak/plugins/index/IndexUpdate.java Mon Mar 23 14:04:02 2015
@@ -51,6 +51,7 @@ import org.apache.jackrabbit.oak.api.Pro
 import org.apache.jackrabbit.oak.api.Type;
 import org.apache.jackrabbit.oak.commons.PathUtils;
 import org.apache.jackrabbit.oak.spi.commit.Editor;
+import org.apache.jackrabbit.oak.spi.commit.ProgressNotificationEditor;
 import org.apache.jackrabbit.oak.spi.state.NodeBuilder;
 import org.apache.jackrabbit.oak.spi.state.NodeState;
 import org.apache.jackrabbit.oak.spi.state.NodeStateUtils;
@@ -119,7 +120,7 @@ public class IndexUpdate implements Edit
 
         // no-op when reindex is empty
         CommitFailedException exception = process(
-                wrap(compose(reindex.values())), MISSING_NODE, after);
+                wrap(wrapProgress(compose(reindex.values()), "Reindexing")), MISSING_NODE, after);
         if (exception != null) {
             throw exception;
         }
@@ -305,6 +306,10 @@ public class IndexUpdate implements Edit
         return path + "/" + INDEX_DEFINITIONS_NAME + "/" + indexName;
     }
 
+    private static Editor wrapProgress(Editor editor, String message){
+        return ProgressNotificationEditor.wrap(editor, log, message);
+    }
+
     public static class MissingIndexProviderStrategy {
         public void onMissingIndex(String type, NodeBuilder definition)
                 throws CommitFailedException {

Copied: jackrabbit/oak/trunk/oak-core/src/main/java/org/apache/jackrabbit/oak/spi/commit/ProgressNotificationEditor.java (from r1668644, jackrabbit/oak/trunk/oak-upgrade/src/main/java/org/apache/jackrabbit/oak/upgrade/ProgressNotificationEditor.java)
URL: http://svn.apache.org/viewvc/jackrabbit/oak/trunk/oak-core/src/main/java/org/apache/jackrabbit/oak/spi/commit/ProgressNotificationEditor.java?p2=jackrabbit/oak/trunk/oak-core/src/main/java/org/apache/jackrabbit/oak/spi/commit/ProgressNotificationEditor.java&p1=jackrabbit/oak/trunk/oak-upgrade/src/main/java/org/apache/jackrabbit/oak/upgrade/ProgressNotificationEditor.java&r1=1668644&r2=1668645&rev=1668645&view=diff
==============================================================================
--- jackrabbit/oak/trunk/oak-upgrade/src/main/java/org/apache/jackrabbit/oak/upgrade/ProgressNotificationEditor.java (original)
+++ jackrabbit/oak/trunk/oak-core/src/main/java/org/apache/jackrabbit/oak/spi/commit/ProgressNotificationEditor.java Mon Mar 23 14:04:02 2015
@@ -17,16 +17,16 @@
  * under the License.
  */
 
-package org.apache.jackrabbit.oak.upgrade;
+package org.apache.jackrabbit.oak.spi.commit;
 
 import static org.apache.jackrabbit.oak.commons.PathUtils.concat;
 
+import javax.annotation.CheckForNull;
 import javax.annotation.Nullable;
 
 import com.google.common.base.Function;
 import org.apache.jackrabbit.oak.api.CommitFailedException;
 import org.apache.jackrabbit.oak.api.PropertyState;
-import org.apache.jackrabbit.oak.spi.commit.Editor;
 import org.apache.jackrabbit.oak.spi.state.NodeState;
 import org.slf4j.Logger;
 
@@ -40,19 +40,23 @@ public class ProgressNotificationEditor
     private final String path;
     private final Function<String, Void> onProgress;
 
-    public static ProgressNotificationEditor wrap(Editor editor, final Logger logger, final String message) {
-        return new ProgressNotificationEditor(editor, "/", new Function<String, Void>() {
-            int count;
-
-            @Nullable
-            @Override
-            public Void apply(String path) {
-                if (++count % 10000 == 0) {
-                    logger.info(message + ' ' + path);
+    @CheckForNull
+    public static Editor wrap(@CheckForNull Editor editor, final Logger logger, final String message) {
+        if (editor != null && !(editor instanceof ProgressNotificationEditor)) {
+            return new ProgressNotificationEditor(editor, "/", new Function<String, Void>() {
+                int count;
+
+                @Nullable
+                @Override
+                public Void apply(String path) {
+                    if (++count % 10000 == 0) {
+                        logger.info(message + " Traversed #" + count + ' ' + path);
+                    }
+                    return null;
                 }
-                return null;
-            }
-        });
+            });
+        }
+        return editor;
     }
 
     private ProgressNotificationEditor(Editor editor, String path, Function<String, Void> onProgress) {

Propchange: jackrabbit/oak/trunk/oak-core/src/main/java/org/apache/jackrabbit/oak/spi/commit/ProgressNotificationEditor.java
------------------------------------------------------------------------------
    svn:eol-style = native

Modified: jackrabbit/oak/trunk/oak-upgrade/src/main/java/org/apache/jackrabbit/oak/upgrade/RepositoryUpgrade.java
URL: http://svn.apache.org/viewvc/jackrabbit/oak/trunk/oak-upgrade/src/main/java/org/apache/jackrabbit/oak/upgrade/RepositoryUpgrade.java?rev=1668645&r1=1668644&r2=1668645&view=diff
==============================================================================
--- jackrabbit/oak/trunk/oak-upgrade/src/main/java/org/apache/jackrabbit/oak/upgrade/RepositoryUpgrade.java (original)
+++ jackrabbit/oak/trunk/oak-upgrade/src/main/java/org/apache/jackrabbit/oak/upgrade/RepositoryUpgrade.java Mon Mar 23 14:04:02 2015
@@ -95,6 +95,7 @@ import org.apache.jackrabbit.oak.spi.com
 import org.apache.jackrabbit.oak.spi.commit.Editor;
 import org.apache.jackrabbit.oak.spi.commit.EditorHook;
 import org.apache.jackrabbit.oak.spi.commit.EditorProvider;
+import org.apache.jackrabbit.oak.spi.commit.ProgressNotificationEditor;
 import org.apache.jackrabbit.oak.spi.lifecycle.RepositoryInitializer;
 import org.apache.jackrabbit.oak.spi.lifecycle.WorkspaceInitializer;
 import org.apache.jackrabbit.oak.spi.security.ConfigurationParameters;