[FELIX-4903] EventListenerHooks are not called
git-svn-id: https://svn.apache.org/repos/asf/felix/trunk@1681015 13f79535-47bb-0310-9956-ffa450edef68
diff --git a/connect/src/main/java/org/apache/felix/connect/PojoSR.java b/connect/src/main/java/org/apache/felix/connect/PojoSR.java
index 960261e..aea9b92 100644
--- a/connect/src/main/java/org/apache/felix/connect/PojoSR.java
+++ b/connect/src/main/java/org/apache/felix/connect/PojoSR.java
@@ -75,7 +75,7 @@
{
public void serviceChanged(ServiceEvent event, Dictionary<String, ?> oldProps)
{
- m_dispatcher.fireServiceEvent(event, oldProps, null);
+ m_dispatcher.fireServiceEvent(event, oldProps, m_bundles.get(0l));
}
});
diff --git a/connect/src/main/java/org/apache/felix/connect/felix/framework/util/EventDispatcher.java b/connect/src/main/java/org/apache/felix/connect/felix/framework/util/EventDispatcher.java
index e2002ac..1e72b70 100644
--- a/connect/src/main/java/org/apache/felix/connect/felix/framework/util/EventDispatcher.java
+++ b/connect/src/main/java/org/apache/felix/connect/felix/framework/util/EventDispatcher.java
@@ -578,7 +578,7 @@
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 @@
}
// 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 @@
{
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 @@
}
finally
{
- m_registry.ungetService(felix, sr);
+ m_registry.ungetService(framework, sr);
}
}
}
@@ -666,7 +666,7 @@
{
try
{
- EventListenerHook elh = m_registry.getService(felix, sr);
+ EventListenerHook elh = m_registry.getService(framework, sr);
if (elh != null)
{
try
@@ -680,7 +680,7 @@
}
finally
{
- m_registry.ungetService(felix, sr);
+ m_registry.ungetService(framework, sr);
}
}
}