/** * Creation du client, le wikittyService est instancier grace au information * trouve dans la configuration. * * @param config */ public WikittyClient(ApplicationConfig config) { this(config, WikittyServiceFactory.buildWikittyService(config)); }
/** * Construit l'enchainement des differents WikittyService comme decrit * dans le fichier de configuration via la cle: * wikitty.transaction.WikittyService.components * <p> * Chaque composant de l'enchainement peut avoir lui aussi ses propres * composants dans une cle: * wikitty.transaction.[nom simple de la classe].components * * * @param config * @return */ static public WikittyService buildWikittyServiceTransaction(ApplicationConfig config) { String prefix = "wikitty.transaction."; WikittyService result = buildWikittyService(config, prefix); return result; }
/** * Construit l'enchainement des differents WikittyService comme decrit * dans le fichier de configuration via la cle: * wikitty.WikittyService.components * <p> * Chaque composant de l'enchainement peut avoir lui aussi ses propres * composants dans une cle: * wikitty.[nom simple de la classe].components * * * @param config * @return */ static public WikittyService buildWikittyService(ApplicationConfig config) { String prefix = "wikitty."; WikittyService result = buildWikittyService(config, prefix); return result; }
static public void main(String ... args) { ApplicationConfig config = WikittyConfig.getConfig(args); WikittyService ws = WikittyServiceFactory.buildWikittyService(config); }
protected WikittyService startServer() throws Exception { Properties props = new Properties(); props.setProperty(WikittyConfigOption.WIKITTY_SERVER_URL.getKey(), url); props.setProperty(WikittyConfigOption.WIKITTY_WIKITTYSERVICE_COMPONENTS.getKey(), WikittyServiceInMemory.class.getName() + "," + WikittyServiceCajoServer.class.getName()); ApplicationConfig config = WikittyConfig.getConfig(props); WikittyService result = WikittyServiceFactory.buildWikittyService(config); return result; }
protected WikittyService getClient() throws Exception { Properties props = new Properties(); props.setProperty(WikittyConfigOption.WIKITTY_SERVER_URL.getKey(), url); props.setProperty(WikittyConfigOption.WIKITTY_WIKITTYSERVICE_COMPONENTS.getKey(), WikittyServiceCajoClient.class.getName()); ApplicationConfig config = WikittyConfig.getConfig(props); WikittyService result = WikittyServiceFactory.buildWikittyService(config); return result; }
@Test public void testBuild() throws Exception { ApplicationConfig config = WikittyConfig.getConfig(); config.setOption(WikittyConfigOption.WIKITTY_WIKITTYSERVICE_COMPONENTS.getKey(), WikittyServiceInMemory.class.getName() + "," + WikittyServiceNotifier.class.getName() + "," + WikittyServiceCached.class.getName()); WikittyService ws = WikittyServiceFactory.buildWikittyService(config); Assert.assertEquals(WikittyServiceCached.class, ws.getClass()); ws = ((WikittyServiceCached)ws).getDelegate(); Assert.assertEquals(WikittyServiceNotifier.class, ws.getClass()); ws = ((WikittyServiceNotifier)ws).getDelegate(); Assert.assertEquals(WikittyServiceInMemory.class, ws.getClass()); }
@Test public void testSampleConfig() throws Exception { { ApplicationConfig config = WikittyConfig.getConfig( "wikitty-config-sample-inmemory.properties"); // surcharge certain option qui ont besoin d'autre module que api config.setOption(WikittyConfigOption.WIKITTY_WIKITTYSERVICESTORAGE_COMPONENTS.getKey(), WikittyStorageInMemory.class.getName() + "," + WikittyExtensionStorageInMemory.class.getName() + "," + WikittySearchEngineInMemory.class.getName()); WikittyService ws = WikittyServiceFactory.buildWikittyService(config); Assert.assertEquals(WikittyServiceAuthorisation.class, ws.getClass()); ws = ((WikittyServiceAuthorisation) ws).getDelegate(); Assert.assertEquals(WikittyServiceAuthentication.class, ws.getClass()); ws = ((WikittyServiceAuthentication) ws).getDelegate(); Assert.assertEquals(WikittyServiceCached.class, ws.getClass()); ws = ((WikittyServiceCached) ws).getDelegate(); Assert.assertEquals(WikittyServiceNotifier.class, ws.getClass()); ws = ((WikittyServiceNotifier) ws).getDelegate(); Assert.assertEquals(WikittyServiceStorage.class, ws.getClass()); } }