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));
+
+ }
+
}