Author: chetanm
Date: Thu Jan 28 11:54:31 2016
New Revision: 1727314
URL: http://svn.apache.org/viewvc?rev=1727314&view=rev
Log:
OAK-3944 - OsgiWhiteboard should handle multiple unregister call
Modified the logic a bit to still log a warning message if its unregistered
multiple times. This would avoid unnecessary long stack traces in the logs but
would still allow us to determine if close is being called multiple times
Modified:
jackrabbit/oak/trunk/oak-core/src/main/java/org/apache/jackrabbit/oak/osgi/OsgiWhiteboard.java
jackrabbit/oak/trunk/oak-core/src/test/java/org/apache/jackrabbit/oak/osgi/OsgiWhiteboardTest.java
Modified:
jackrabbit/oak/trunk/oak-core/src/main/java/org/apache/jackrabbit/oak/osgi/OsgiWhiteboard.java
URL:
http://svn.apache.org/viewvc/jackrabbit/oak/trunk/oak-core/src/main/java/org/apache/jackrabbit/oak/osgi/OsgiWhiteboard.java?rev=1727314&r1=1727313&r2=1727314&view=diff
==============================================================================
---
jackrabbit/oak/trunk/oak-core/src/main/java/org/apache/jackrabbit/oak/osgi/OsgiWhiteboard.java
(original)
+++
jackrabbit/oak/trunk/oak-core/src/main/java/org/apache/jackrabbit/oak/osgi/OsgiWhiteboard.java
Thu Jan 28 11:54:31 2016
@@ -82,6 +82,8 @@ public class OsgiWhiteboard implements W
if (!unregistered) {
registration.unregister();
unregistered = true;
+ } else {
+ log.warn("Service {} of type {} unregistered multiple
times", service, type);
}
} catch (IllegalStateException ex) {
log.warn("Error unregistering service: {} of type {}",
Modified:
jackrabbit/oak/trunk/oak-core/src/test/java/org/apache/jackrabbit/oak/osgi/OsgiWhiteboardTest.java
URL:
http://svn.apache.org/viewvc/jackrabbit/oak/trunk/oak-core/src/test/java/org/apache/jackrabbit/oak/osgi/OsgiWhiteboardTest.java?rev=1727314&r1=1727313&r2=1727314&view=diff
==============================================================================
---
jackrabbit/oak/trunk/oak-core/src/test/java/org/apache/jackrabbit/oak/osgi/OsgiWhiteboardTest.java
(original)
+++
jackrabbit/oak/trunk/oak-core/src/test/java/org/apache/jackrabbit/oak/osgi/OsgiWhiteboardTest.java
Thu Jan 28 11:54:31 2016
@@ -41,8 +41,6 @@ public class OsgiWhiteboardTest {
*/
@Test
public void testDoubleUnregister() {
- LogCustomizer logs =
LogCustomizer.forLogger(OsgiWhiteboard.class.getName())
- .filter(Level.WARN).create();
BundleContext bundleContext = mock(BundleContext.class);
OsgiWhiteboard w = new OsgiWhiteboard(bundleContext);
@@ -83,11 +81,7 @@ public class OsgiWhiteboardTest {
reg.unregister();
assertTrue(unregistered.get());
- logs.starting();
reg.unregister();
- logs.finished();
-
- assertTrue(logs.getLogs().isEmpty());
}
}