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/30 02:54:07 UTC

[jira] [Created] (FELIX-3692) [DS] api for finding out if async work is done

David Jencks created FELIX-3692:
-----------------------------------

             Summary: [DS] api for finding out if async work is done
                 Key: FELIX-3692
                 URL: https://issues.apache.org/jira/browse/FELIX-3692
             Project: Felix
          Issue Type: Improvement
          Components: Declarative Services (SCR)
    Affects Versions: scr-1.8.0
            Reporter: David Jencks
            Assignee: David Jencks
             Fix For: scr-1.8.0


It might be useful to provide a couple methods on ScrService so you can find out if all the async work is done.

I'm thinking

boolean tasksCompleted()

void waitForTasksCompleted()

This might be especially useful if we decide to adopt my "try again later" proposal for resolving more circular dependencies (FELIX-3557) since that can result in extra possibly unexpected async tasks.

--
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-3692) [DS] api for finding out if async work is done

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

Felix Meschberger commented on FELIX-3692:
------------------------------------------

Thanks for providing the patch.

As discussed on the dev list [1] I am against such API.

In addition to what I said on the dev list, I also think such API is prone to concurrency issues. If at all, I'd rather change the Component.enable and .disable methods to operate synchronous instead of asynchronous. (or better yet, have the DS Admin API to be specified by the OSGi Alliance define these methods to be synchronous in the Admin API).

[1] http://markmail.org/message/fdben4ggpr4fyikc
                
> [DS] api for finding out if async work is done
> ----------------------------------------------
>
>                 Key: FELIX-3692
>                 URL: https://issues.apache.org/jira/browse/FELIX-3692
>             Project: Felix
>          Issue Type: Improvement
>          Components: Declarative Services (SCR)
>    Affects Versions: scr-1.8.0
>            Reporter: David Jencks
>            Assignee: David Jencks
>             Fix For: scr-1.8.0
>
>         Attachments: FELIX-3692-1.diff
>
>
> It might be useful to provide a couple methods on ScrService so you can find out if all the async work is done.
> I'm thinking
> boolean tasksCompleted()
> void waitForTasksCompleted()
> This might be especially useful if we decide to adopt my "try again later" proposal for resolving more circular dependencies (FELIX-3557) since that can result in extra possibly unexpected async tasks.

--
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-3692) [DS] api for finding out if async work is done

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

David Jencks updated FELIX-3692:
--------------------------------

    Attachment: FELIX-3692-1.diff

Simple api to determine if async work is completed.  This is slightly entangled with the 2nd "later" patch to FELIX-3557, that will be needed to apply this one cleanly.
                
> [DS] api for finding out if async work is done
> ----------------------------------------------
>
>                 Key: FELIX-3692
>                 URL: https://issues.apache.org/jira/browse/FELIX-3692
>             Project: Felix
>          Issue Type: Improvement
>          Components: Declarative Services (SCR)
>    Affects Versions: scr-1.8.0
>            Reporter: David Jencks
>            Assignee: David Jencks
>             Fix For: scr-1.8.0
>
>         Attachments: FELIX-3692-1.diff
>
>
> It might be useful to provide a couple methods on ScrService so you can find out if all the async work is done.
> I'm thinking
> boolean tasksCompleted()
> void waitForTasksCompleted()
> This might be especially useful if we decide to adopt my "try again later" proposal for resolving more circular dependencies (FELIX-3557) since that can result in extra possibly unexpected async tasks.

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