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/09/10 06:23:45 UTC

svn commit: r1702158 - in /jackrabbit/oak/trunk/oak-jcr/src: main/java/org/apache/jackrabbit/oak/jcr/osgi/RepositoryManager.java test/java/org/apache/jackrabbit/oak/jcr/osgi/RepositoryManagerTest.java

Author: chetanm
Date: Thu Sep 10 04:23:44 2015
New Revision: 1702158

URL: http://svn.apache.org/r1702158
Log:
OAK-3375 - RepositoryManager doesn't perform a shutdown of OsgiRepository on deactivation

Adding testcase

Modified:
    jackrabbit/oak/trunk/oak-jcr/src/main/java/org/apache/jackrabbit/oak/jcr/osgi/RepositoryManager.java
    jackrabbit/oak/trunk/oak-jcr/src/test/java/org/apache/jackrabbit/oak/jcr/osgi/RepositoryManagerTest.java

Modified: jackrabbit/oak/trunk/oak-jcr/src/main/java/org/apache/jackrabbit/oak/jcr/osgi/RepositoryManager.java
URL: http://svn.apache.org/viewvc/jackrabbit/oak/trunk/oak-jcr/src/main/java/org/apache/jackrabbit/oak/jcr/osgi/RepositoryManager.java?rev=1702158&r1=1702157&r2=1702158&view=diff
==============================================================================
--- jackrabbit/oak/trunk/oak-jcr/src/main/java/org/apache/jackrabbit/oak/jcr/osgi/RepositoryManager.java (original)
+++ jackrabbit/oak/trunk/oak-jcr/src/main/java/org/apache/jackrabbit/oak/jcr/osgi/RepositoryManager.java Thu Sep 10 04:23:44 2015
@@ -64,9 +64,6 @@ public class RepositoryManager {
     private static final boolean DEFAULT_COMMIT_RATE_LIMIT = false;
     private static final boolean DEFAULT_FAST_QUERY_RESULT_SIZE = false;
 
-    //TODO Exposed for testing purpose due to SLING-4472
-    static boolean ignoreFrameworkProperties = false;
-
     private final WhiteboardEditorProvider editorProvider =
             new WhiteboardEditorProvider();
 
@@ -139,12 +136,10 @@ public class RepositoryManager {
     }
 
     private static Object prop(Map<String, ?> config, BundleContext bundleContext, String name) {
-        if (!ignoreFrameworkProperties) {
-            //Prefer framework property first
-            Object value = bundleContext.getProperty(name);
-            if (value != null) {
-                return value;
-            }
+        //Prefer framework property first
+        Object value = bundleContext.getProperty(name);
+        if (value != null) {
+            return value;
         }
 
         //Fallback to one from config

Modified: jackrabbit/oak/trunk/oak-jcr/src/test/java/org/apache/jackrabbit/oak/jcr/osgi/RepositoryManagerTest.java
URL: http://svn.apache.org/viewvc/jackrabbit/oak/trunk/oak-jcr/src/test/java/org/apache/jackrabbit/oak/jcr/osgi/RepositoryManagerTest.java?rev=1702158&r1=1702157&r2=1702158&view=diff
==============================================================================
--- jackrabbit/oak/trunk/oak-jcr/src/test/java/org/apache/jackrabbit/oak/jcr/osgi/RepositoryManagerTest.java (original)
+++ jackrabbit/oak/trunk/oak-jcr/src/test/java/org/apache/jackrabbit/oak/jcr/osgi/RepositoryManagerTest.java Thu Sep 10 04:23:44 2015
@@ -24,6 +24,7 @@ import java.util.concurrent.Executor;
 import java.util.concurrent.TimeUnit;
 import java.util.concurrent.atomic.AtomicBoolean;
 
+import org.apache.jackrabbit.oak.api.jmx.RepositoryManagementMBean;
 import org.apache.jackrabbit.oak.plugins.memory.MemoryNodeStore;
 import org.apache.jackrabbit.oak.spi.security.OpenSecurityProvider;
 import org.apache.jackrabbit.oak.spi.security.SecurityProvider;
@@ -33,6 +34,7 @@ import org.junit.Rule;
 import org.junit.Test;
 
 import static org.junit.Assert.assertNotNull;
+import static org.junit.Assert.assertNull;
 import static org.junit.Assert.assertTrue;
 
 public class RepositoryManagerTest {
@@ -44,8 +46,6 @@ public class RepositoryManagerTest {
         context.registerService(SecurityProvider.class, new OpenSecurityProvider());
         context.registerService(NodeStore.class, new MemoryNodeStore());
 
-        //Due to SLING-4472
-        RepositoryManager.ignoreFrameworkProperties = true;
         context.registerInjectActivateService(new RepositoryManager());
 
         Executor executor = context.getService(Executor.class);
@@ -65,6 +65,21 @@ public class RepositoryManagerTest {
         assertTrue(invoked.get());
     }
 
+    @Test
+    public void repositoryShutdown() throws Exception{
+        context.registerService(SecurityProvider.class, new OpenSecurityProvider());
+        context.registerService(NodeStore.class, new MemoryNodeStore());
+
+        RepositoryManager mgr = context.registerInjectActivateService(new RepositoryManager());
+        assertNotNull("MBean should be registered", context.getService(RepositoryManagementMBean.class));
+
+        mgr.deactivate();
+
+        assertNull("MBean should have been removed upon repository shutdown",
+                context.getService(RepositoryManagementMBean.class));
+
+    }
+
 }