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/09/07 02:29:07 UTC

[jira] [Created] (FELIX-3657) [DS] ServiceFactory problems

David Jencks created FELIX-3657:
-----------------------------------

             Summary: [DS] ServiceFactory problems
                 Key: FELIX-3657
                 URL: https://issues.apache.org/jira/browse/FELIX-3657
             Project: Felix
          Issue Type: Bug
          Components: Declarative Services (SCR)
    Affects Versions: scr-1.8.0
            Reporter: David Jencks
            Assignee: David Jencks
             Fix For: scr-1.8.0


Three problems:
1. service factory getService doesn't fetch the dependencies first
2. dependencyManager serviceRemoved should remove the reference from the dependency map, not unget service which is called from many other places
3. dependencyManagers are shared among all instances created by a ServiceFactoryComponentManager, so they shouldn't ever have a reference to the implementation object, it should be passed in.

--
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-3657) [DS] ServiceFactory problems

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

David Jencks commented on FELIX-3657:
-------------------------------------

rev r1381825 fixes the first two problems.  
                
> [DS] ServiceFactory problems
> ----------------------------
>
>                 Key: FELIX-3657
>                 URL: https://issues.apache.org/jira/browse/FELIX-3657
>             Project: Felix
>          Issue Type: Bug
>          Components: Declarative Services (SCR)
>    Affects Versions: scr-1.8.0
>            Reporter: David Jencks
>            Assignee: David Jencks
>             Fix For: scr-1.8.0
>
>
> Three problems:
> 1. service factory getService doesn't fetch the dependencies first
> 2. dependencyManager serviceRemoved should remove the reference from the dependency map, not unget service which is called from many other places
> 3. dependencyManagers are shared among all instances created by a ServiceFactoryComponentManager, so they shouldn't ever have a reference to the implementation object, it should be passed in.

--
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-3657) [DS] ServiceFactory problems

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

David Jencks resolved FELIX-3657.
---------------------------------

    Resolution: Fixed

would be nice to have some tests, but writing them for factory components requires creating a bunch of bundles in the tests.
                
> [DS] ServiceFactory problems
> ----------------------------
>
>                 Key: FELIX-3657
>                 URL: https://issues.apache.org/jira/browse/FELIX-3657
>             Project: Felix
>          Issue Type: Bug
>          Components: Declarative Services (SCR)
>    Affects Versions: scr-1.8.0
>            Reporter: David Jencks
>            Assignee: David Jencks
>             Fix For: scr-1.8.0
>
>
> Three problems:
> 1. service factory getService doesn't fetch the dependencies first
> 2. dependencyManager serviceRemoved should remove the reference from the dependency map, not unget service which is called from many other places
> 3. dependencyManagers are shared among all instances created by a ServiceFactoryComponentManager, so they shouldn't ever have a reference to the implementation object, it should be passed in.

--
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] [Updated] (FELIX-3657) [DS] ServiceFactory problems

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

Felix Meschberger updated FELIX-3657:
-------------------------------------

    Fix Version/s:     (was: scr-1.8.0)
                   scr-1.6.2
    
> [DS] ServiceFactory problems
> ----------------------------
>
>                 Key: FELIX-3657
>                 URL: https://issues.apache.org/jira/browse/FELIX-3657
>             Project: Felix
>          Issue Type: Bug
>          Components: Declarative Services (SCR)
>    Affects Versions: scr-1.8.0
>            Reporter: David Jencks
>            Assignee: David Jencks
>             Fix For: scr-1.6.2
>
>
> Three problems:
> 1. service factory getService doesn't fetch the dependencies first
> 2. dependencyManager serviceRemoved should remove the reference from the dependency map, not unget service which is called from many other places
> 3. dependencyManagers are shared among all instances created by a ServiceFactoryComponentManager, so they shouldn't ever have a reference to the implementation object, it should be passed in.

--
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-3657) [DS] ServiceFactory problems

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

Felix Meschberger closed FELIX-3657.
------------------------------------


Close after release
                
> [DS] ServiceFactory problems
> ----------------------------
>
>                 Key: FELIX-3657
>                 URL: https://issues.apache.org/jira/browse/FELIX-3657
>             Project: Felix
>          Issue Type: Bug
>          Components: Declarative Services (SCR)
>    Affects Versions: scr-1.8.0
>            Reporter: David Jencks
>            Assignee: David Jencks
>             Fix For: scr-1.6.2
>
>
> Three problems:
> 1. service factory getService doesn't fetch the dependencies first
> 2. dependencyManager serviceRemoved should remove the reference from the dependency map, not unget service which is called from many other places
> 3. dependencyManagers are shared among all instances created by a ServiceFactoryComponentManager, so they shouldn't ever have a reference to the implementation object, it should be passed in.

--
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-3657) [DS] ServiceFactory problems

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

David Jencks commented on FELIX-3657:
-------------------------------------

third problem fixed in r1381866.

I made the various calls to bind/unbind/update from the service changed methods go through the component manager so that the component manager could apply them to all the instances it manages.
                
> [DS] ServiceFactory problems
> ----------------------------
>
>                 Key: FELIX-3657
>                 URL: https://issues.apache.org/jira/browse/FELIX-3657
>             Project: Felix
>          Issue Type: Bug
>          Components: Declarative Services (SCR)
>    Affects Versions: scr-1.8.0
>            Reporter: David Jencks
>            Assignee: David Jencks
>             Fix For: scr-1.8.0
>
>
> Three problems:
> 1. service factory getService doesn't fetch the dependencies first
> 2. dependencyManager serviceRemoved should remove the reference from the dependency map, not unget service which is called from many other places
> 3. dependencyManagers are shared among all instances created by a ServiceFactoryComponentManager, so they shouldn't ever have a reference to the implementation object, it should be passed in.

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