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


Reply via email to