You are viewing a plain text version of this content. The canonical link for it is here.
Posted to dev@felix.apache.org by "David Jencks (JIRA)" <ji...@apache.org> on 2012/11/04 01:47:11 UTC

[jira] [Created] (FELIX-3744) [DS] Component should set implementation object before propagating changed service properties

David Jencks created FELIX-3744:
-----------------------------------

             Summary: [DS] Component should set implementation object before propagating changed service properties
                 Key: FELIX-3744
                 URL: https://issues.apache.org/jira/browse/FELIX-3744
             Project: Felix
          Issue Type: Bug
          Components: Declarative Services (SCR)
    Affects Versions: scr-1.6.2
            Reporter: David Jencks
            Assignee: David Jencks
             Fix For: scr-1.6.2


A component needs to set its implementation object before propagating the service property changes from the activate method.  Otherwise the new service properties could satisfy a target filter and result in a getService() request before the implementation object is set but after it has been created.

--
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

[jira] [Resolved] (FELIX-3744) [DS] Component should set implementation object before propagating changed service properties

Posted by "David Jencks (JIRA)" <ji...@apache.org>.
     [ https://issues.apache.org/jira/browse/FELIX-3744?page=com.atlassian.jira.plugin.system.issuetabpanels:all-tabpanel ]

David Jencks resolved FELIX-3744.
---------------------------------

    Resolution: Fixed

r1406395  This is easy to fix and IMO a release blocker.
                
> [DS] Component should set implementation object before propagating changed service properties
> ---------------------------------------------------------------------------------------------
>
>                 Key: FELIX-3744
>                 URL: https://issues.apache.org/jira/browse/FELIX-3744
>             Project: Felix
>          Issue Type: Bug
>          Components: Declarative Services (SCR)
>    Affects Versions: scr-1.6.2
>            Reporter: David Jencks
>            Assignee: David Jencks
>             Fix For: scr-1.6.2
>
>
> A component needs to set its implementation object before propagating the service property changes from the activate method.  Otherwise the new service properties could satisfy a target filter and result in a getService() request before the implementation object is set but after it has been created.

--
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

[jira] [Commented] (FELIX-3744) [DS] Component should set implementation object before propagating changed service properties

Posted by "Felix Meschberger (JIRA)" <ji...@apache.org>.
    [ https://issues.apache.org/jira/browse/FELIX-3744?page=com.atlassian.jira.plugin.system.issuetabpanels:comment-tabpanel&focusedCommentId=13490480#comment-13490480 ] 

Felix Meschberger commented on FELIX-3744:
------------------------------------------

Is this a release blocker ?

On the implementation: This looks tricky because the properties are updated in the createImplementationObject and disposeImplementationObject methods, resp., while the fields are set in the callers -- and not all callers to the same handling.

Now, the disposeImplementationObject method could just return the service properties to be set. But the createImplementationObject returns the service object and so cannot easily return the properties.

One option would be to enhance the MethodResult object with the component reference and the methods return MethodResult. This would convey all we need but isn't this breaching some encapsulation barrier ? (Though it remains in the same classe)
                
> [DS] Component should set implementation object before propagating changed service properties
> ---------------------------------------------------------------------------------------------
>
>                 Key: FELIX-3744
>                 URL: https://issues.apache.org/jira/browse/FELIX-3744
>             Project: Felix
>          Issue Type: Bug
>          Components: Declarative Services (SCR)
>    Affects Versions: scr-1.6.2
>            Reporter: David Jencks
>            Assignee: David Jencks
>             Fix For: scr-1.6.2
>
>
> A component needs to set its implementation object before propagating the service property changes from the activate method.  Otherwise the new service properties could satisfy a target filter and result in a getService() request before the implementation object is set but after it has been created.

--
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

[jira] [Closed] (FELIX-3744) [DS] Component should set implementation object before propagating changed service properties

Posted by "Felix Meschberger (JIRA)" <ji...@apache.org>.
     [ https://issues.apache.org/jira/browse/FELIX-3744?page=com.atlassian.jira.plugin.system.issuetabpanels:all-tabpanel ]

Felix Meschberger closed FELIX-3744.
------------------------------------


Close after release
                
> [DS] Component should set implementation object before propagating changed service properties
> ---------------------------------------------------------------------------------------------
>
>                 Key: FELIX-3744
>                 URL: https://issues.apache.org/jira/browse/FELIX-3744
>             Project: Felix
>          Issue Type: Bug
>          Components: Declarative Services (SCR)
>    Affects Versions: scr-1.6.2
>            Reporter: David Jencks
>            Assignee: David Jencks
>             Fix For: scr-1.6.2
>
>
> A component needs to set its implementation object before propagating the service property changes from the activate method.  Otherwise the new service properties could satisfy a target filter and result in a getService() request before the implementation object is set but after it has been created.

--
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