You are viewing a plain text version of this content. The canonical link for it is here.
Posted to commits@felix.apache.org by gn...@apache.org on 2015/05/22 09:23:11 UTC

svn commit: r1681015 - in /felix/trunk/connect/src/main/java/org/apache/felix/connect: PojoSR.java felix/framework/util/EventDispatcher.java

Author: gnodet
Date: Fri May 22 07:23:11 2015
New Revision: 1681015

URL: http://svn.apache.org/r1681015
Log:
[FELIX-4903] EventListenerHooks are not called

Modified:
    felix/trunk/connect/src/main/java/org/apache/felix/connect/PojoSR.java
    felix/trunk/connect/src/main/java/org/apache/felix/connect/felix/framework/util/EventDispatcher.java

Modified: felix/trunk/connect/src/main/java/org/apache/felix/connect/PojoSR.java
URL: http://svn.apache.org/viewvc/felix/trunk/connect/src/main/java/org/apache/felix/connect/PojoSR.java?rev=1681015&r1=1681014&r2=1681015&view=diff
==============================================================================
--- felix/trunk/connect/src/main/java/org/apache/felix/connect/PojoSR.java (original)
+++ felix/trunk/connect/src/main/java/org/apache/felix/connect/PojoSR.java Fri May 22 07:23:11 2015
@@ -75,7 +75,7 @@ public class PojoSR implements PojoServi
             {
                 public void serviceChanged(ServiceEvent event, Dictionary<String, ?> oldProps)
                 {
-                    m_dispatcher.fireServiceEvent(event, oldProps, null);
+                    m_dispatcher.fireServiceEvent(event, oldProps, m_bundles.get(0l));
                 }
             });
 

Modified: felix/trunk/connect/src/main/java/org/apache/felix/connect/felix/framework/util/EventDispatcher.java
URL: http://svn.apache.org/viewvc/felix/trunk/connect/src/main/java/org/apache/felix/connect/felix/framework/util/EventDispatcher.java?rev=1681015&r1=1681014&r2=1681015&view=diff
==============================================================================
--- felix/trunk/connect/src/main/java/org/apache/felix/connect/felix/framework/util/EventDispatcher.java (original)
+++ felix/trunk/connect/src/main/java/org/apache/felix/connect/felix/framework/util/EventDispatcher.java Fri May 22 07:23:11 2015
@@ -578,7 +578,7 @@ public class EventDispatcher
         return whitelist;
     }
 
-    public void fireServiceEvent(final ServiceEvent event, final Dictionary<String, ?> oldProps, final Framework felix)
+    public void fireServiceEvent(final ServiceEvent event, final Dictionary<String, ?> oldProps, final Bundle framework)
     {
         // Take a snapshot of the listener array.
         Map<BundleContext, List<ListenerInfo>> listeners;
@@ -588,16 +588,16 @@ public class EventDispatcher
         }
 
         // Use service registry hooks to filter target listeners.
-        listeners = filterListenersUsingHooks(event, felix, listeners);
+        listeners = filterListenersUsingHooks(event, framework, listeners);
 
         // Fire all service events immediately on the calling thread.
         fireEventImmediately(this, Request.SERVICE_EVENT, listeners, event, oldProps);
     }
 
     private Map<BundleContext, List<ListenerInfo>> filterListenersUsingHooks(
-            ServiceEvent event, Framework felix, Map<BundleContext, List<ListenerInfo>> listeners)
+            ServiceEvent event, Bundle framework, Map<BundleContext, List<ListenerInfo>> listeners)
     {
-        if (felix == null)
+        if (framework == null)
         {
             return listeners;
         }
@@ -631,7 +631,7 @@ public class EventDispatcher
             {
                 try
                 {
-                    org.osgi.framework.hooks.service.EventHook eh = m_registry.getService(felix, sr);
+                    org.osgi.framework.hooks.service.EventHook eh = m_registry.getService(framework, sr);
                     if (eh != null)
                     {
                         try
@@ -645,7 +645,7 @@ public class EventDispatcher
                         }
                         finally
                         {
-                            m_registry.ungetService(felix, sr);
+                            m_registry.ungetService(framework, sr);
                         }
                     }
                 }
@@ -666,7 +666,7 @@ public class EventDispatcher
             {
                 try
                 {
-                    EventListenerHook elh = m_registry.getService(felix, sr);
+                    EventListenerHook elh = m_registry.getService(framework, sr);
                     if (elh != null)
                     {
                         try
@@ -680,7 +680,7 @@ public class EventDispatcher
                         }
                         finally
                         {
-                            m_registry.ungetService(felix, sr);
+                            m_registry.ungetService(framework, sr);
                         }
                     }
                 }