[Date Prev][Date Next][Thread Prev][Thread Next][Date Index][Thread Index] [List Home]
RE: [equinox-dev] Starting the system bundle

This is exactly the problem - the system bundle is put in state ACTIVE before starting the bundles, which should be initially started, and the event is fired after starting the bundles. So when the state is ACTIVE we cannot be sure if this is before, or after the event is fired.

Regards,
Lazar

-----Original Message-----
From: equinox-dev-bounces@xxxxxxxxxxx [mailto:equinox-dev-bounces@xxxxxxxxxxx] On Behalf Of Richard S. Hall
Sent: Wednesday, April 14, 2010 5:16 PM
To: Equinox development mailing list
Subject: Re: [equinox-dev] Starting the system bundle

On 4/14/10 10:09, Kirchev, Lazar wrote:
>
> Yes, we could use FrameworkEvent.STARTED, but only if we are sure that 
> we listen for this event when it is fired. If the code, which listens 
> for it, is executed after the framework is started, then it will never 
> get the event. This happens in an Activator of a bundle â it may be 
> executed during the initial start of the framework, or after the 
> framework is started (for example on the first start of the bundle 
> after installing it). Therefore we need to be able to check the 
> framework state in one and the same way in both cases.
>

If you check the system bundle state in your activator, you can see if 
it is active and if not, then register a framework listener to catch the 
event, since the framework state can't change while you are in your 
activator.

-> richard

> Regards,
>
> Lazar Kirchev
>
> *From:* equinox-dev-bounces@xxxxxxxxxxx 
> [mailto:equinox-dev-bounces@xxxxxxxxxxx] *On Behalf Of *Thomas Watson
> *Sent:* Wednesday, April 14, 2010 4:30 PM
> *To:* Equinox development mailing list
> *Subject:* Re: [equinox-dev] Starting the system bundle
>
> Yes, you should use the FrameworkEvent.STARTED event for this. You 
> should probably open a bug so we can investigate the current behavior 
> anyway to see if the comment is valid.
>
> Tom
>
>
>
> Inactive hide details for BJ Hargrave---04/14/2010 08:14:37 AM---We 
> don't you just wait for the FrameworkEvent.STARTED event?BJ 
> Hargrave---04/14/2010 08:14:37 AM---We don't you just wait for the 
> FrameworkEvent.STARTED event?
>
>
> From:
>
> 	
>
>
> BJ Hargrave/Austin/IBM@IBMUS
>
>
> To:
>
> 	
>
>
> Equinox development mailing list <equinox-dev@xxxxxxxxxxx>
>
>
> Date:
>
> 	
>
>
> 04/14/2010 08:14 AM
>
>
> Subject:
>
> 	
>
>
> Re: [equinox-dev] Starting the system bundle
>
> ------------------------------------------------------------------------
>
>
>
>
> We don't you just wait for the FrameworkEvent.STARTED event?
>
>         * This event is fired when the Framework has started after all 
> installed
>         * bundles that are marked to be started have been started and 
> the Framework
>         * has reached the initial start level. The source of this 
> event is the
>         * System Bundle.
> -- 
>
> *BJ Hargrave*
> Senior Technical Staff Member, IBM
> OSGi Fellow and CTO of the OSGi Alliance <http://www.osgi.org/>_
> _hargrave@xxxxxxxxxx <mailto:hargrave@xxxxxxxxxx>
>
> 	
>
>
> office: +1 386 848 1781
> mobile: +1 386 848 3788
>
> From:
>
> 	
>
> "Kirchev, Lazar" <l.kirchev@xxxxxxx>
>
> To:
>
> 	
>
> "equinox-dev@xxxxxxxxxxx" <equinox-dev@xxxxxxxxxxx>
>
> Date:
>
> 	
>
> 2010/04/14 08:21
>
> Subject:
>
> 	
>
> [equinox-dev] Starting the system bundle
>
> Sent by:
>
> 	
>
> equinox-dev-bounces@xxxxxxxxxxx
>
> ------------------------------------------------------------------------
>
>
>
>
> Hello,
>
> We are implementing logic which depends on the system bundle being put 
> in ACTIVE state after all bundles, which should be running, are 
> started. However, it turned out that actually the system bundle is put 
> in ACTIVE state just before the bundles are started. This is evident 
> from the method StartLevelManager.doSetStartLevel(â), which is called 
> from the EquinoxLauncher. There is a comment in the code, that putting 
> the bundle in ACTIVE state âshould be done just before firing the 
> STARTED event for the system bundleâ but is done earlier, because 
> âsome depend on the system bundle being in the ACTIVE state when they 
> are startingâ. Do you think it is possible to change the current 
> behavior and put the system bundle in ACTIVE state after the other 
> bundles are started, as it is in the OSGi spec?
>
> Kind regards,
> Lazar Kirchev_______________________________________________
> equinox-dev mailing list
> equinox-dev@xxxxxxxxxxxx
> _https://dev.eclipse.org/mailman/listinfo/equinox-dev
> _______________________________________________
> equinox-dev mailing list
> equinox-dev@xxxxxxxxxxx
> https://dev.eclipse.org/mailman/listinfo/equinox-dev
>
>
> _______________________________________________
> equinox-dev mailing list
> equinox-dev@xxxxxxxxxxx
> https://dev.eclipse.org/mailman/listinfo/equinox-dev
>    
_______________________________________________
equinox-dev mailing list
equinox-dev@xxxxxxxxxxx
https://dev.eclipse.org/mailman/listinfo/equinox-dev