Author: tchemit Date: 2012-05-01 15:08:33 +0200 (Tue, 01 May 2012) New Revision: 2331 Url: http://nuiton.org/repositories/revision/nuiton-utils/2331 Log: update docs refs #2073: Improve ApplicationConfig code Modified: trunk/nuiton-utils/src/site/apt/ApplicationConfig.apt Modified: trunk/nuiton-utils/src/site/apt/ApplicationConfig.apt =================================================================== --- trunk/nuiton-utils/src/site/apt/ApplicationConfig.apt 2012-05-01 12:56:51 UTC (rev 2330) +++ trunk/nuiton-utils/src/site/apt/ApplicationConfig.apt 2012-05-01 13:08:33 UTC (rev 2331) @@ -331,3 +331,47 @@ config.doAction(MyConfig.AFTER_LOGIN); } +------------------------------------------- + +* Utilisation du ApplicationConfigProvider + + Ce contrat ajouté en version <2.4.8> permet de spécifier qu'une librairie + ou une application offre des options. + + Il suffit d'implanter ce contrat et de le rendre disponible via le mécanisme + de ServiceLoader. + + Exemple ++------------------------------------------- +public class PollenApplicationConfigProvider implements ApplicationConfigProvider { + + @Override + public String getName() { + return "pollen"; + } + + @Override + public String getDescription(Locale locale) { + return l_(locale, "pollen.application.config"); + } + + @Override + public ApplicationConfig.OptionDef[] getOptions() { + return PollenConfigurationOption.values(); + } + + @Override + public ApplicationConfig.ActionDef[] getActions() { + return new ApplicationConfig.ActionDef[0]; + } +} ++------------------------------------------- + + Puis ajouter le fichier <META-INF/services/org.nuiton.util.ApplicationConfigProvider> + dans les resources du projet : + ++------------------------------------------- +org.chorem.pollen.PollenApplicationConfigProvider ++------------------------------------------- + + Cela permet ensuite par exemple de générer un rapport contenant toutes les + options disnible dans l'application.
participants (1)
-
tchemit@users.nuiton.org