Hi Ulli, In the meantime, I dug a bit more, and actually I seem to understand that even if you keep a reference to ExtensionList in your plugin, ExtensionLists would be refreshed if new extensions are detected [1]. I'd like to get it confirmed though, either here or by also reading more core code and testing it from a plugin behaviour perspective.
If so, I suppose plugins should/could always keep the ExtensionList refs they need since there's no risk of not being up-to-date this way. I'll update the dev docs with that information once sure. Cheers -- Baptiste [1] http://javadoc.jenkins-ci.org/hudson/ExtensionList.html#refresh(jenkins.ExtensionComponentSet) 2015-02-02 13:48 GMT+01:00 Ulli Hafner <[email protected]>: > > Am 01.02.2015 um 18:32 schrieb Baptiste Mathus <[email protected]>: > > Hi all, > Currently adding an extension point to my plugin, I was wondering if I > should try and cache the results of getExtensionList() at some point (I > read one good place may be in postInitialize()). > > In that case though, if some plugin gets installed without restarting the > server, I guess I won't have the potential new registered extensions. That > bothers me a bit. > > Is there some recommended pattern/way to be a good citizen in this area > (I.e. handling extensions from the plugins in general)? > > One solution here would be to never cache the results and always call > getExtensionList(). Is this something reasonable? > > Yes, I think this is reasonable to always call getExtensionList(). Isn’t > that list already cached by Jenkins? So it would not hurt to call that > method multiple times... > > (In my case, for *every* build of the Jenkins instance...). Seems a bit > wasteful at first sight. > > Or is there some maybe an extension point to implement to be notified of > new extension registrations? :) > > Thanks for your advice. > > Cheers > > -- Baptiste > > -- > You received this message because you are subscribed to the Google Groups > "Jenkins Developers" group. > To unsubscribe from this group and stop receiving emails from it, send an > email to [email protected]. > To view this discussion on the web visit > https://groups.google.com/d/msgid/jenkinsci-dev/CANWgJS4%3D5a%3Dwr%3DU-Ube1f9FDGcN1NjFuki-Jp6QSiKLax58S2A%40mail.gmail.com > <https://groups.google.com/d/msgid/jenkinsci-dev/CANWgJS4%3D5a%3Dwr%3DU-Ube1f9FDGcN1NjFuki-Jp6QSiKLax58S2A%40mail.gmail.com?utm_medium=email&utm_source=footer> > . > For more options, visit https://groups.google.com/d/optout. > > > -- > You received this message because you are subscribed to the Google Groups > "Jenkins Developers" group. > To unsubscribe from this group and stop receiving emails from it, send an > email to [email protected]. > To view this discussion on the web visit > https://groups.google.com/d/msgid/jenkinsci-dev/86A6D8D7-6666-4F1F-A6B4-0FCCAA51F7F1%40gmail.com > <https://groups.google.com/d/msgid/jenkinsci-dev/86A6D8D7-6666-4F1F-A6B4-0FCCAA51F7F1%40gmail.com?utm_medium=email&utm_source=footer> > . > For more options, visit https://groups.google.com/d/optout. > -- Baptiste <Batmat> MATHUS - http://batmat.net Sauvez un arbre, Mangez un castor ! -- You received this message because you are subscribed to the Google Groups "Jenkins Developers" group. To unsubscribe from this group and stop receiving emails from it, send an email to [email protected]. To view this discussion on the web visit https://groups.google.com/d/msgid/jenkinsci-dev/CANWgJS5_b0qxG73PCyA3Qi28-YGpm97PTN%3DYB1Q41k4dA9Y1Ag%40mail.gmail.com. For more options, visit https://groups.google.com/d/optout.
