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 fr...@apache.org on 2015/10/21 17:15:03 UTC

svn commit: r1709862 - /jackrabbit/oak/trunk/oak-lucene/src/main/java/org/apache/jackrabbit/oak/plugins/index/lucene/LuceneIndexProviderService.java

Author: frm
Date: Wed Oct 21 15:15:03 2015
New Revision: 1709862

URL: http://svn.apache.org/viewvc?rev=1709862&view=rev
Log:
OAK-3533 - Make it possible to disable LuceneIndexProviderService via OSGi configuration

Modified:
    jackrabbit/oak/trunk/oak-lucene/src/main/java/org/apache/jackrabbit/oak/plugins/index/lucene/LuceneIndexProviderService.java

Modified: jackrabbit/oak/trunk/oak-lucene/src/main/java/org/apache/jackrabbit/oak/plugins/index/lucene/LuceneIndexProviderService.java
URL: http://svn.apache.org/viewvc/jackrabbit/oak/trunk/oak-lucene/src/main/java/org/apache/jackrabbit/oak/plugins/index/lucene/LuceneIndexProviderService.java?rev=1709862&r1=1709861&r2=1709862&view=diff
==============================================================================
--- jackrabbit/oak/trunk/oak-lucene/src/main/java/org/apache/jackrabbit/oak/plugins/index/lucene/LuceneIndexProviderService.java (original)
+++ jackrabbit/oak/trunk/oak-lucene/src/main/java/org/apache/jackrabbit/oak/plugins/index/lucene/LuceneIndexProviderService.java Wed Oct 21 15:15:03 2015
@@ -86,6 +86,15 @@ public class LuceneIndexProviderService
     )
     private NodeAggregator nodeAggregator;
 
+    private static final boolean PROP_DISABLED_DEFAULT = false;
+
+    @Property(
+            boolValue = PROP_DISABLED_DEFAULT,
+            label = "Disable this component",
+            description = "If true, this component is disabled."
+    )
+    private static final String PROP_DISABLED = "disabled";
+
     @Property(
             boolValue = false,
             label = "Enable Debug Logging",
@@ -164,6 +173,13 @@ public class LuceneIndexProviderService
     @Activate
     private void activate(BundleContext bundleContext, Map<String, ?> config)
             throws NotCompliantMBeanException, IOException {
+        boolean disabled = PropertiesUtil.toBoolean(config.get(PROP_DISABLED), PROP_DISABLED_DEFAULT);
+
+        if (disabled) {
+            log.info("Component disabled by configuration");
+            return;
+        }
+
         initializeFactoryClassLoaders(getClass().getClassLoader());
         whiteboard = new OsgiWhiteboard(bundleContext);
         threadPoolSize = PropertiesUtil.toInteger(config.get(PROP_THREAD_POOL_SIZE), PROP_THREAD_POOL_SIZE_DEFAULT);