For really low-level things consider using system.bundle fragments. In OSGi R6 system.bundle fragments are now allowed to have activators by specifying a ExtensionBundle-Activator header. See the R6 specification for the details, but in short the system.bundle fragments are activated at framework init() time before start-level 1 is even reached. This is really useful for system level code that hooks directly into the framework and must be present from the init of the framework to provide consistent behavior for the lifetime of the framework. Things like bundle/service/resolver/weaving hooks. It sounds like that would be needed for things like aspects if they are being applied at runtime with a weaving hook.
For Karaf decanter, I think I am missing the issue. If you are using service-oriented design patterns wouldn't the necessary services become available before the rest of the system can come on-line? Tom [email protected] wrote on 10/28/2016 08:25:36 AM: > From: Christian Schneider <[email protected]> > To: OSGi Developer Mail List <[email protected]> > Date: 10/28/2016 08:25 AM > Subject: [osgi-dev] Making sure some bundles are started first > Sent by: [email protected] > > There are some rare cases were I would like to make sure that certain > bundles are started very early (or before other bundles). > > Two examples: > > - Karaf decanter logs messages, bundle and services events. The problem > is that it will only start to do so when the decanter bundles are > started. So it misses some messages on startup. Decanter currently uses > EventAdmin to communicate between modules. This introduces another point > where messages can get lost during startup. > > - Simon Chemuil introduces an interesting Aspect framework Aspecio that > can apply aspects to services. The problem is that it must be started > before the services are present. > > Are there best practices for these use cases? > > Christian > > -- > Christian Schneider > http://www.liquid-reality.de > > Open Source Architect > http://www.talend.com > > _______________________________________________ > OSGi Developer Mail List > [email protected] > https://mail.osgi.org/mailman/listinfo/osgi-dev >
_______________________________________________ OSGi Developer Mail List [email protected] https://mail.osgi.org/mailman/listinfo/osgi-dev
