Tuomas Kiviaho created FELIX-3909:
-------------------------------------

             Summary: Reusing of a service dependency leads to missing callback 
invocations
                 Key: FELIX-3909
                 URL: https://issues.apache.org/jira/browse/FELIX-3909
             Project: Felix
          Issue Type: Bug
          Components: Dependency Manager
            Reporter: Tuomas Kiviaho


If I create a service dependency (bound and required) and assign it to two or 
more components, then I can't be sure that callback gets called for each 
respective component. I can only be sure that callback is called for one of the 
components. Common to the unlucky component that are missing the callback 
invocations is the fact that the service dependency is added to the component 
after it has already started tracking service and it's state has already turned 
to 'available'. 

ServiceDependencyImpl.start(DependencyService) should perform additional logic 
from when service tracker is already open and contains service references. 
These references should be passed to method similar to 
ServiceDependencyImpl.addedService(ServiceReference ref, Object service) which 
only acts upon the dependency service at hand.

In the meantime a simple workaround is not to reuse the service dependency.

--
This message is automatically generated by JIRA.
If you think it was sent incorrectly, please contact your JIRA administrators
For more information on JIRA, see: http://www.atlassian.com/software/jira

Reply via email to