If you just plan on using OSGi, then you certainly don't need to worry
too much about this stuff, but if you are planning on hacking on the
Felix framework, then yes you need to understand it...
In reality, there is a general (but hidden) OSGi concept here that
relates to updating bundles.
When you update a bundle, it is not really completely updated. The old
version is kept around for other bundles still depending on the old
version. The old version doesn't go away until you refresh the
framework. If you update a bundle several times in a row without
refreshing, then there will possibly be several old versions of the
bundle around for each update until you refresh. Thus, one bundle is
actually multiple versions at the same time.
So, in the Felix framework implementation, a Bundle is the abstract
representation of an installed bundle, while an IModule is associated
with a specific revision of the bundle's JAR file. Normally, there is a
one-to-one relationship, but when you update without refreshing you
create a one-to-many relationship. Once you refresh, you are back to
one-to-one.
-> richard
On 10/26/09 4:29, Chiron wrote:
hi, when i learn the implementation of Felix, i find that BundleImpl has a
array field m_modules, and a method called getCurrentModule(), which returns
the newest module.
i thought module was the lower level implementation of bundle. so here i am
a little confused.
what is the real relationship between bundle and module?
and where could i get more infomation about felix, like a reference, i
really need them.
---------------------------------------------------------------------
To unsubscribe, e-mail: [email protected]
For additional commands, e-mail: [email protected]