You are viewing a plain text version of this content. The canonical link for it is here.
Posted to dev@aries.apache.org by "Guillaume Nodet (JIRA)" <ji...@apache.org> on 2016/10/13 08:39:20 UTC
[jira] [Comment Edited] (ARIES-1407) Service (un)registration
listener not called anymore
[ https://issues.apache.org/jira/browse/ARIES-1407?page=com.atlassian.jira.plugin.system.issuetabpanels:comment-tabpanel&focusedCommentId=15571286#comment-15571286 ]
Guillaume Nodet edited comment on ARIES-1407 at 10/13/16 8:38 AM:
------------------------------------------------------------------
I think so. I reread the spec this morning and section 121.3.8 looks quite clear actually:
{code}
A service manager must first activate all its explicit dependencies but it must not activate. It must then ensure that a Service Factory object is registered as a service when that service is enabled. En- abled means that all of the mandatory service references in its dependencies are satisfied.
Once the Service Factory is registered, any bundle can get the corresponding service object. Such a request must activate the service manager, if it is not already activated. Activation of a service man- ager must obtain a component instance from the Blueprint Container for the service object and any registration listeners. The registration listeners are then actuated and notified of the initial state.
{code}
The clearly indicates that the registration listeners must not have been created before the service is actually retrieved by a bundle.
was (Author: gnt):
I think so. I reread the spec this morning and section 121.3.8 looks quite clear actually:
{{A service manager must first activate all its explicit dependencies but it must not activate. It must then ensure that a Service Factory object is registered as a service when that service is enabled. En- abled means that all of the mandatory service references in its dependencies are satisfied.
Once the Service Factory is registered, any bundle can get the corresponding service object. Such a request must activate the service manager, if it is not already activated. Activation of a service man- ager must obtain a component instance from the Blueprint Container for the service object and any registration listeners. The registration listeners are then actuated and notified of the initial state.}}
The clearly indicates that the registration listeners must not have been created before the service is actually retrieved by a bundle.
> Service (un)registration listener not called anymore
> ----------------------------------------------------
>
> Key: ARIES-1407
> URL: https://issues.apache.org/jira/browse/ARIES-1407
> Project: Aries
> Issue Type: Bug
> Components: Blueprint
> Environment: Servicemix 5.4.1
> Reporter: metatech
> Attachments: blueprint_registration_listener_fix_v2.patch
>
>
> Service (un)registration listeners are not called anymore since Blueprint 1.4.0.
> There are 2 booleans in the "ServiceRecipe" class which are tested against the wrong values.
> Please find a patch which makes them work again with Blueprint 1.4.3.
--
This message was sent by Atlassian JIRA
(v6.3.4#6332)