Bug 331693 - Migrate Virgo kernel to DS
Summary: Migrate Virgo kernel to DS
Status: NEW
Alias: None
Product: Virgo
Classification: RT
Component: unknown (show other bugs)
Version: unspecified   Edit
Hardware: PC All
: P3 enhancement (vote)
Target Milestone: ---   Edit
Assignee: Project Inbox CLA
QA Contact:
URL:
Whiteboard:
Keywords:
Depends on: 389712 396771 333643
Blocks:
  Show dependency tree
 
Reported: 2010-12-02 11:44 EST by Borislav Kapukaranov CLA
Modified: 2012-12-17 11:10 EST (History)
1 user (show)

See Also:


Attachments

Note You need to log in before you can comment on or make changes to this bug.
Description Borislav Kapukaranov CLA 2010-12-02 11:44:24 EST
Build Identifier: 

The proposal is to use declarative services in Virgo's kernel.

Reproducible: Always
Comment 1 Nobody - feel free to take it CLA 2010-12-02 11:49:50 EST
We discussed this change at the Virgo F2F and it seems like a good direction to go in. However, we need to reproduce some of the support that Virgo has for Spring DM.

Firstly, we need the ability to wait for a bundle to be fully started, meaning it has been activated and its component has been built successfully. We also need to be able to obtain the reason for failure in the failure case.

Secondly, we need to track bundles which are waiting for their service dependencies to be satisfied and issue warnings to the console when this wait exceeds a certain period.
Comment 2 Nobody - feel free to take it CLA 2010-12-03 04:59:22 EST
Another consideration is thread safety. DS does not use constructor injection so it will be necessary to use synchronization (via an internal "monitor" object as usual for Virgo) to ensure thread safety.
Comment 3 Borislav Kapukaranov CLA 2011-01-17 09:54:11 EST
As part of this enhancement a bug that removes kernel's startup order was raised:
https://bugs.eclipse.org/bugs/show_bug.cgi?id=333474
Comment 4 Borislav Kapukaranov CLA 2012-01-12 09:32:15 EST
Commit 5ef9751 migrates Nano to DS and stops packaging SpringDM and its Spring framework dependencies in Nano, resulting in a reduced size.

This can't be applied to higher distributions yet as they still rely on SpringDM usage in their kernel regions.
Still it is OK as a first step.