Yes a refresh is needed.  The OSGi framework must keep the content of "A"
around on uninstall if another bundle is using (wired) to one of "A"s
exported packages.  So in your case "B" is still allowed to remain resolved
and in fact will still be able to load any classes from packages it imports
from "A".  When you do a refresh you are telling the framework to flush the
removal pending bundles which forces any bundles depending on the removal
pending bundle to be re-resolved.

This behavior seems odd at first but the goal is to allow staged updates
and uninstalls that do not disturb other bundles in the system until all
the updates and uninstalls are done and the management agent wants to do a
controlled refresh of the system.

Tom




                                                                       
  From:       Andrea Zoppello <[email protected]>                    
                                                                       
  To:         OSGi - Dev <[email protected]>                      
                                                                       
  Date:       07/29/2010 05:42 AM                                      
                                                                       
  Subject:    [osgi-dev] A question about UNINSTALL Operation...       
                                                                       





Hi All,

I've a question about uninstalling bundles.

Suppose i've a simple situation where i've two bunldes "A" and "B" and
B is importing some packages from bundle "A".

My doubt is about "what should" happens to the state of  "B" when i'm going
to uninstall bundle "A".

I was ( wrongly ) thinking that the container had automatically  put B in
"INSTALLED" state, because A was uninstalled.

But i discovered that this would not happen ( at least with equinox) until
i
do a refresh???

So the question is, which is the right behaviour of the OSGi container
in that case??
Should i need a refresh anyway??

Thx
Andrea


_______________________________________________
OSGi Developer Mail List
[email protected]
https://mail.osgi.org/mailman/listinfo/osgi-dev

<<inline: graycol.gif>>

<<inline: ecblank.gif>>

_______________________________________________
OSGi Developer Mail List
[email protected]
https://mail.osgi.org/mailman/listinfo/osgi-dev

Reply via email to