Author: fdesbois Date: 2009-12-16 13:47:02 +0000 (Wed, 16 Dec 2009) New Revision: 124 Modified: trunk/suiviobsmer-business/src/main/java/fr/ifremer/suiviobsmer/SuiviObsmerContext.java trunk/suiviobsmer-business/src/main/java/fr/ifremer/suiviobsmer/SuiviObsmerRunner.java trunk/suiviobsmer-business/src/main/java/fr/ifremer/suiviobsmer/SuiviObsmerRunnerImpl.java trunk/suiviobsmer-business/src/main/resources/SuiviObsmer.properties trunk/suiviobsmer-business/src/test/java/fr/ifremer/suiviobsmer/business/SuiviObsmerRunnerTest.java trunk/suiviobsmer-ui/src/main/java/fr/ifremer/suiviobsmer/ui/services/SuiviObsmerManager.java trunk/suiviobsmer-ui/src/main/resources/log4j.properties Log: Change configuration managment to use ApplicationConfig from nuiton-utils Modified: trunk/suiviobsmer-business/src/main/java/fr/ifremer/suiviobsmer/SuiviObsmerContext.java =================================================================== --- trunk/suiviobsmer-business/src/main/java/fr/ifremer/suiviobsmer/SuiviObsmerContext.java 2009-12-15 19:28:04 UTC (rev 123) +++ trunk/suiviobsmer-business/src/main/java/fr/ifremer/suiviobsmer/SuiviObsmerContext.java 2009-12-16 13:47:02 UTC (rev 124) @@ -23,9 +23,6 @@ package fr.ifremer.suiviobsmer; -import java.io.IOException; -import java.net.URISyntaxException; -import java.net.URL; import java.util.Date; import java.util.Properties; import java.util.Random; @@ -37,7 +34,6 @@ import org.nuiton.topia.TopiaNotFoundException; import org.nuiton.topia.persistence.TopiaEntity; import org.nuiton.topia.persistence.TopiaId; -import org.nuiton.util.Resource; import org.slf4j.Logger; import org.slf4j.LoggerFactory; @@ -63,6 +59,9 @@ private static boolean activityCalendarImport; public static void setRunner(SuiviObsmerRunner run) { + if (log.isDebugEnabled()) { + log.debug("set runner in context"); + } runner = run; } @@ -71,7 +70,7 @@ } public static String getProperty(String key) { - return runner.configuration().getProperty(key); + return runner.configuration().getOption(key); } public static TopiaContext getTopiaRootContext() throws SuiviObsmerException { @@ -79,7 +78,8 @@ throw new SuiviObsmerException("Configuration must be set before initializing context"); } try { - return TopiaContextFactory.getContext(runner.configuration()); + Properties props = runner.configuration().getOptions(); + return TopiaContextFactory.getContext(props); } catch (TopiaNotFoundException eee) { serviceException(null, eee.getMessage(), eee); } @@ -94,33 +94,10 @@ return activityCalendarImport; } - /** - * Property file loading - * @param filename - * @return - * @throws java.net.URISyntaxException - * @throws java.io.IOException - */ - public static Properties loadConfiguration(String filename) - throws URISyntaxException, IOException { - Properties props = new Properties(); - URL url = Resource.getURL(filename); + public static void serviceException(TopiaContext transaction, String message, Exception eee) throws SuiviObsmerException { if (log.isDebugEnabled()) { - log.debug(url.toString()); + log.debug("An error occured",eee); } - props.load(url.openStream()); - return props; - //return PropertiesLoader.loadPropertiesFile(filename); - } - - /*public static String convertId(String id) { - return Convert.toWebId(id); - }*/ - - public static void serviceException(TopiaContext transaction, String message, Exception eee) throws SuiviObsmerException { - if (log.isErrorEnabled()) { - log.error("An error occured",eee); - } if (!(eee instanceof SuiviObsmerException)) { if (!(eee instanceof TopiaException)) { try { Modified: trunk/suiviobsmer-business/src/main/java/fr/ifremer/suiviobsmer/SuiviObsmerRunner.java =================================================================== --- trunk/suiviobsmer-business/src/main/java/fr/ifremer/suiviobsmer/SuiviObsmerRunner.java 2009-12-15 19:28:04 UTC (rev 123) +++ trunk/suiviobsmer-business/src/main/java/fr/ifremer/suiviobsmer/SuiviObsmerRunner.java 2009-12-16 13:47:02 UTC (rev 124) @@ -23,6 +23,7 @@ import java.util.Date; import java.util.Properties; +import org.nuiton.util.ApplicationConfig; /** * SuiviObsmerRun @@ -43,6 +44,6 @@ public Date currentDate(); - public Properties configuration(); + public ApplicationConfig configuration(); } Modified: trunk/suiviobsmer-business/src/main/java/fr/ifremer/suiviobsmer/SuiviObsmerRunnerImpl.java =================================================================== --- trunk/suiviobsmer-business/src/main/java/fr/ifremer/suiviobsmer/SuiviObsmerRunnerImpl.java 2009-12-15 19:28:04 UTC (rev 123) +++ trunk/suiviobsmer-business/src/main/java/fr/ifremer/suiviobsmer/SuiviObsmerRunnerImpl.java 2009-12-16 13:47:02 UTC (rev 124) @@ -22,9 +22,8 @@ package fr.ifremer.suiviobsmer; import java.util.Date; -import java.util.Properties; import org.nuiton.topia.TopiaException; -import org.nuiton.util.Resource; +import org.nuiton.util.ApplicationConfig; import org.slf4j.Logger; import org.slf4j.LoggerFactory; @@ -43,7 +42,7 @@ private static final Logger log = LoggerFactory.getLogger(SuiviObsmerRunnerImpl.class); - private Properties _configuration; + private ApplicationConfig _configuration; public SuiviObsmerRunnerImpl() { } @@ -51,15 +50,18 @@ @Override public void start() throws SuiviObsmerException { try { - _configuration = Resource.getConfigProperties("SuiviObsmer.properties"); - _configuration.setProperty("topia.persistence.classes", + _configuration = new ApplicationConfig(); + _configuration.setConfigFileName("SuiviObsmer.properties"); + _configuration.parse(new String[]{}); + _configuration.setOption("topia.persistence.classes", SuiviObsmerModelDAOHelper.getImplementationClassesAsString()); - + + _configuration.printConfig(); SuiviObsmerContext.setRunner(this); SuiviObsmerGlobal.createDefaultAdmin(); } catch (Exception eee) { SuiviObsmerContext.serviceException(null, "Error during loadConfiguration from " + - "'TopiaContextSuiviObsmer.properties' file", eee); + "'SuiviObsmer.properties' file", eee); } } @@ -78,8 +80,7 @@ } @Override - public Properties configuration() { + public ApplicationConfig configuration() { return _configuration; } - } Modified: trunk/suiviobsmer-business/src/main/resources/SuiviObsmer.properties =================================================================== --- trunk/suiviobsmer-business/src/main/resources/SuiviObsmer.properties 2009-12-15 19:28:04 UTC (rev 123) +++ trunk/suiviobsmer-business/src/main/resources/SuiviObsmer.properties 2009-12-16 13:47:02 UTC (rev 124) @@ -6,7 +6,7 @@ hibernate.connection.username=sa hibernate.connection.password= hibernate.connection.driver_class=org.h2.Driver -hibernate.connection.url=jdbc:h2:file:~/.suiviobsmer/h2data +hibernate.connection.url=jdbc:h2:file:~/.local/suiviobsmer/h2data suiviobsmer.log.activityCalendar=log/activity.log Modified: trunk/suiviobsmer-business/src/test/java/fr/ifremer/suiviobsmer/business/SuiviObsmerRunnerTest.java =================================================================== --- trunk/suiviobsmer-business/src/test/java/fr/ifremer/suiviobsmer/business/SuiviObsmerRunnerTest.java 2009-12-15 19:28:04 UTC (rev 123) +++ trunk/suiviobsmer-business/src/test/java/fr/ifremer/suiviobsmer/business/SuiviObsmerRunnerTest.java 2009-12-16 13:47:02 UTC (rev 124) @@ -34,6 +34,7 @@ import java.util.Properties; import org.junit.Ignore; import org.nuiton.topia.TopiaException; +import org.nuiton.util.ApplicationConfig; import org.nuiton.util.Resource; import org.slf4j.Logger; import org.slf4j.LoggerFactory; @@ -54,7 +55,7 @@ private static final Logger log = LoggerFactory.getLogger(SuiviObsmerRunnerTest.class); - private Properties _configuration; + private ApplicationConfig _configuration; @Override public void start() throws SuiviObsmerException { @@ -62,9 +63,13 @@ log.debug("TEST START : loadConfiguration"); } try { - _configuration = loadFileProperties("TopiaContextSuiviObsmer.properties"); - _configuration.setProperty("topia.persistence.classes", + Properties options = loadFileProperties("TopiaContextSuiviObsmer.properties"); + options.setProperty("topia.persistence.classes", SuiviObsmerModelDAOHelper.getImplementationClassesAsString()); + + _configuration = new ApplicationConfig(); + _configuration.setOptions(options); + SuiviObsmerContext.setRunner(this); } catch (Exception eee) { SuiviObsmerContext.serviceException(null, "Error during loadConfiguration from " + @@ -102,7 +107,7 @@ } @Override - public Properties configuration() { + public ApplicationConfig configuration() { return _configuration; } Modified: trunk/suiviobsmer-ui/src/main/java/fr/ifremer/suiviobsmer/ui/services/SuiviObsmerManager.java =================================================================== --- trunk/suiviobsmer-ui/src/main/java/fr/ifremer/suiviobsmer/ui/services/SuiviObsmerManager.java 2009-12-15 19:28:04 UTC (rev 123) +++ trunk/suiviobsmer-ui/src/main/java/fr/ifremer/suiviobsmer/ui/services/SuiviObsmerManager.java 2009-12-16 13:47:02 UTC (rev 124) @@ -24,11 +24,9 @@ import fr.ifremer.suiviobsmer.SuiviObsmerException; import fr.ifremer.suiviobsmer.SuiviObsmerRunner; import fr.ifremer.suiviobsmer.SuiviObsmerRunnerImpl; -import java.io.IOException; -import java.net.URISyntaxException; -import java.util.logging.Level; -import java.util.logging.Logger; import org.apache.tapestry5.ioc.services.RegistryShutdownListener; +import org.slf4j.Logger; +import org.slf4j.LoggerFactory; /** * SuiviObsmerManager @@ -43,15 +41,22 @@ */ public class SuiviObsmerManager implements Runnable, RegistryShutdownListener { + private static final Logger log = LoggerFactory.getLogger(SuiviObsmerManager.class); + private SuiviObsmerRunner runner; @Override public void run() { runner = new SuiviObsmerRunnerImpl(); try { + if (log.isInfoEnabled()) { + log.info("Start SuiviObsmer"); + } runner.start(); } catch (SuiviObsmerException eee) { - Logger.getLogger(SuiviObsmerManager.class.getName()).log(Level.SEVERE, null, eee); + if (log.isErrorEnabled()) { + log.error("Error on start", eee); + } } } @@ -60,9 +65,14 @@ // No problem with reinstanciate the runner, all context is in SuiviObsmerContext which is static runner = new SuiviObsmerRunnerImpl(); try { + if (log.isInfoEnabled()) { + log.info("Stop SuiviObsmer"); + } runner.stop(); } catch (SuiviObsmerException eee) { - Logger.getLogger(SuiviObsmerManager.class.getName()).log(Level.SEVERE, null, eee); + if (log.isErrorEnabled()) { + log.error("Error on stop", eee); + } } } Modified: trunk/suiviobsmer-ui/src/main/resources/log4j.properties =================================================================== --- trunk/suiviobsmer-ui/src/main/resources/log4j.properties 2009-12-15 19:28:04 UTC (rev 123) +++ trunk/suiviobsmer-ui/src/main/resources/log4j.properties 2009-12-16 13:47:02 UTC (rev 124) @@ -8,7 +8,7 @@ log4j.appender.console.Threshold=INFO log4j.appender.globalfile=org.apache.log4j.RollingFileAppender -log4j.appender.globalfile.File=${user.home}/.suiviobsmer/log/suiviobsmer.log +log4j.appender.globalfile.File=${user.home}/.local/suiviobsmer/log/suiviobsmer.log log4j.appender.globalfile.MaxFileSize=500KB log4j.appender.globalfile.Append=true log4j.appender.globalfile.MaxBackupIndex=10 @@ -21,4 +21,4 @@ log4j.logger.org.apache.tapestry5.TapestryFilter=INFO log4j.logger.fr.ifremer.suiviobsmer=DEBUG -log4j.logger.org.nuiton.util=INFO +log4j.logger.org.nuiton.util=DEBUG