branch develop updated (f0322d4 -> ea7f951)
This is an automated email from the git hooks/post-receive script. New change to branch develop in repository observe. See http://git.codelutin.com/observe.git from f0322d4 Use topia 2-11 new 535eb2e Chargement de la configuration de log de l'utilisateur suppresion otion isAdmin (refs #7455) new e625afa Suppresion référence sur une action qui n'existe plus new ea7f951 Permettre de configurer les logs chez le client (termine #7455) Merge branch 'feature/7455' into develop The 3 revisions listed above as "new" are entirely new to this repository and will be described in separate emails. The revisions listed as "adds" were already present in the repository and have only been added to this reference. Detailed log of new commits: commit ea7f9514de5a84d6f547489ea0550dba74f5abd5 Merge: f0322d4 e625afa Author: Tony CHEMIT <chemit@codelutin.com> Date: Thu Aug 13 20:22:05 2015 +0200 Permettre de configurer les logs chez le client (termine #7455) Merge branch 'feature/7455' into develop commit e625afae36a3891b0d468a12f2e711fb6246224b Author: Tony CHEMIT <chemit@codelutin.com> Date: Thu Aug 13 20:21:25 2015 +0200 Suppresion référence sur une action qui n'existe plus commit 535eb2ecf6ef761e858e4c4f67f1ee75be4cdb25 Author: Tony CHEMIT <chemit@codelutin.com> Date: Thu Aug 13 20:20:09 2015 +0200 Chargement de la configuration de log de l'utilisateur suppresion otion isAdmin (refs #7455) Summary of changes: .../main/java/fr/ird/observe/IObserveConfig.java | 2 + observe-swing/pom.xml | 1 - .../main/{resources => filters}/log4j.properties | 5 +- .../observe-log4j.properties} | 4 +- .../src/main/filters/observe-ui.properties | 1 - .../main/java/fr/ird/observe/ObserveCLAction.java | 43 ++++------- .../main/java/fr/ird/observe/ObserveConfig.java | 83 ++++++++++++++++------ .../java/fr/ird/observe/ObserveConfigOption.java | 33 +++++---- .../fr/ird/observe/ObserveResourceManager.java | 18 ++--- .../main/java/fr/ird/observe/ObserveRunner.java | 82 ++++++++++++++------- .../resources/i18n/observe-swing_en_GB.properties | 2 + .../resources/i18n/observe-swing_es_ES.properties | 2 + .../resources/i18n/observe-swing_fr_FR.properties | 4 +- 13 files changed, 176 insertions(+), 104 deletions(-) copy observe-swing/src/main/{resources => filters}/log4j.properties (86%) rename observe-swing/src/main/{resources/log4j.properties => filters/observe-log4j.properties} (89%) -- To stop receiving notification emails like this one, please contact codelutin.com SCM administrator <admin+scm@list.forge.codelutin.com>.
This is an automated email from the git hooks/post-receive script. New commit to branch develop in repository observe. See http://git.codelutin.com/observe.git commit 535eb2ecf6ef761e858e4c4f67f1ee75be4cdb25 Author: Tony CHEMIT <chemit@codelutin.com> Date: Thu Aug 13 20:20:09 2015 +0200 Chargement de la configuration de log de l'utilisateur suppresion otion isAdmin (refs #7455) --- .../main/java/fr/ird/observe/IObserveConfig.java | 2 + observe-swing/pom.xml | 1 - .../main/{resources => filters}/log4j.properties | 5 +- .../observe-log4j.properties} | 4 +- .../main/java/fr/ird/observe/ObserveCLAction.java | 43 ++++------- .../main/java/fr/ird/observe/ObserveConfig.java | 83 ++++++++++++++++------ .../java/fr/ird/observe/ObserveConfigOption.java | 33 +++++---- .../fr/ird/observe/ObserveResourceManager.java | 18 ++--- .../main/java/fr/ird/observe/ObserveRunner.java | 82 ++++++++++++++------- .../resources/i18n/observe-swing_en_GB.properties | 2 + .../resources/i18n/observe-swing_es_ES.properties | 2 + .../resources/i18n/observe-swing_fr_FR.properties | 4 +- 12 files changed, 176 insertions(+), 103 deletions(-) diff --git a/observe-business/src/main/java/fr/ird/observe/IObserveConfig.java b/observe-business/src/main/java/fr/ird/observe/IObserveConfig.java index 5d9dc7a..6cc673b 100644 --- a/observe-business/src/main/java/fr/ird/observe/IObserveConfig.java +++ b/observe-business/src/main/java/fr/ird/observe/IObserveConfig.java @@ -261,6 +261,8 @@ public interface IObserveConfig { File getTmpDirectory(); + File getLogConfigurationFile(); + boolean isDisplayMainUI(); boolean isCanUseUI(); diff --git a/observe-swing/pom.xml b/observe-swing/pom.xml index 94b23ed..fe76717 100644 --- a/observe-swing/pom.xml +++ b/observe-swing/pom.xml @@ -283,7 +283,6 @@ <dependency> <groupId>log4j</groupId> <artifactId>log4j</artifactId> - <scope>runtime</scope> </dependency> <!-- test dependencies --> diff --git a/observe-swing/src/main/resources/log4j.properties b/observe-swing/src/main/filters/log4j.properties similarity index 86% copy from observe-swing/src/main/resources/log4j.properties copy to observe-swing/src/main/filters/log4j.properties index 5542ef3..480b2f6 100644 --- a/observe-swing/src/main/resources/log4j.properties +++ b/observe-swing/src/main/filters/log4j.properties @@ -30,7 +30,7 @@ log4j.appender.stdout.layout.ConversionPattern=%5p [%t] (%c:%L) %M - %m%n # file output... log4j.appender.file=org.apache.log4j.RollingFileAppender -log4j.appender.file.File=\${user.home}/.observe/log/observe.log +log4j.appender.file.File=\${user.home}/.observe/log/observe-boot-${project.version}.log log4j.appender.file.MaxFileSize=10MB log4j.appender.file.MaxBackupIndex=4 log4j.appender.file.layout=org.apache.log4j.PatternLayout @@ -41,6 +41,9 @@ log4j.appender.file.layout.ConversionPattern=%d{dd MMM yyyy HH:mm:ss} %5p [%t] ( log4j.logger.fr.ird.observe=INFO log4j.logger.fr.ird.observe.db.impl.DataContext=WARN log4j.logger.fr.ird.observe.db.impl.DataService=WARN +log4j.logger.fr.ird.observe.entities.longline.ActivityLonglineImpl=DEBUG +log4j.logger.fr.ird.observe.entities.longline.SetLonglineImpl=DEBUG +log4j.logger.fr.ird.observe.entities.seine.ActivitySeineImpl=DEBUG log4j.logger.fr.ird.observe.validation.field=WARN log4j.logger.fr.ird.observe.ui.tree=INFO diff --git a/observe-swing/src/main/resources/log4j.properties b/observe-swing/src/main/filters/observe-log4j.properties similarity index 89% rename from observe-swing/src/main/resources/log4j.properties rename to observe-swing/src/main/filters/observe-log4j.properties index 5542ef3..2bea956 100644 --- a/observe-swing/src/main/resources/log4j.properties +++ b/observe-swing/src/main/filters/observe-log4j.properties @@ -30,7 +30,7 @@ log4j.appender.stdout.layout.ConversionPattern=%5p [%t] (%c:%L) %M - %m%n # file output... log4j.appender.file=org.apache.log4j.RollingFileAppender -log4j.appender.file.File=\${user.home}/.observe/log/observe.log +log4j.appender.file.File=\${user.home}/.observe/log/observe-${project.version}.log log4j.appender.file.MaxFileSize=10MB log4j.appender.file.MaxBackupIndex=4 log4j.appender.file.layout=org.apache.log4j.PatternLayout @@ -41,6 +41,8 @@ log4j.appender.file.layout.ConversionPattern=%d{dd MMM yyyy HH:mm:ss} %5p [%t] ( log4j.logger.fr.ird.observe=INFO log4j.logger.fr.ird.observe.db.impl.DataContext=WARN log4j.logger.fr.ird.observe.db.impl.DataService=WARN +log4j.logger.fr.ird.observe.entities.longline.ActivityLonglineImpl=DEBUG +log4j.logger.fr.ird.observe.entities.seine.ActivitySeineImpl=DEBUG log4j.logger.fr.ird.observe.validation.field=WARN log4j.logger.fr.ird.observe.ui.tree=INFO diff --git a/observe-swing/src/main/java/fr/ird/observe/ObserveCLAction.java b/observe-swing/src/main/java/fr/ird/observe/ObserveCLAction.java index 2e4a8e3..321c1b8 100644 --- a/observe-swing/src/main/java/fr/ird/observe/ObserveCLAction.java +++ b/observe-swing/src/main/java/fr/ird/observe/ObserveCLAction.java @@ -180,10 +180,6 @@ public class ObserveCLAction { public ObserveCLAction() { } - public ObserveCLAction(ObserveConfig config) { - this.config = config; - } - public void useJMX() throws Exception { // just set the useJMX flag @@ -198,23 +194,18 @@ public class ObserveCLAction { getConfig().setDisplayMainUI(false); } + @SuppressWarnings("unused") public void help() { disableMainUI(); StringBuilder out = new StringBuilder(); - boolean isAdmin = ObserveRunner.isAdmin(); - out.append(t("observe.message.help.usage", getConfig().getVersion())); out.append('\n'); out.append("Options (set with --option <key> <value>:"); out.append('\n'); for (ObserveConfigOption o : ObserveConfigOption.values()) { -// if (o.isAdmin() && !isAdmin) { -// -// // ne pas afficher les options d'admin -// continue; -// } + out.append("\t"); out.append(o.key); out.append("("); @@ -227,11 +218,6 @@ public class ObserveCLAction { out.append("Actions:"); out.append('\n'); for (ActionDefinition a : ActionDefinition.values()) { -// if (a.isAdmin() && !isAdmin) { -// -// // ne pas afficher les actions d'admin -// continue; -// } out.append("\t"); out.append(Arrays.toString(a.aliases)); out.append("("); @@ -259,10 +245,9 @@ public class ObserveCLAction { launchAction(t("observe.action.showConfig.title"), runnable); } + @SuppressWarnings("unused") public void launchAdminUI(String operationName) throws InterruptedException { - checkIsAdmin(); - disableMainUI(); EnumSet<AdminStep> operations = AdminStep.getOperations(); @@ -293,10 +278,9 @@ public class ObserveCLAction { launchAction(t(operation.getTitle()), runnable); } + @SuppressWarnings("unused") public void launchObstunaAdminUI(String operationName) throws InterruptedException { - checkIsAdmin(); - disableMainUI(); EnumSet<ObstunaAdminAction> operations = EnumSet.allOf(ObstunaAdminAction.class); @@ -325,10 +309,10 @@ public class ObserveCLAction { launchAction(t(launcher.getTitle()), runnable); } - + @SuppressWarnings("unused") public void launchH2ServerMode() throws InterruptedException { - checkIsAdmin(); +// checkIsAdmin(); if (!config.isLocalStorageExist()) { if (log.isErrorEnabled()) { @@ -342,6 +326,7 @@ public class ObserveCLAction { } } + @SuppressWarnings("unused") public void createId(String className, int nbId) throws IOException { disableMainUI(); @@ -412,13 +397,13 @@ public class ObserveCLAction { context.lock(); } - protected void checkIsAdmin() { - if (!ObserveRunner.isAdmin()) { - throw new IllegalStateException( - "Your are not allowed to execute admin operation with " + - ObserveRunner.getRunner().getRunnerName()); - } - } +// protected void checkIsAdmin() { +// if (!ObserveRunner.isAdmin()) { +// throw new IllegalStateException( +// "Your are not allowed to execute admin operation with " + +// ObserveRunner.getRunner().getRunnerName()); +// } +// } /** * Un worker pour les opération longues d'administration. diff --git a/observe-swing/src/main/java/fr/ird/observe/ObserveConfig.java b/observe-swing/src/main/java/fr/ird/observe/ObserveConfig.java index ec8ab64..643a488 100644 --- a/observe-swing/src/main/java/fr/ird/observe/ObserveConfig.java +++ b/observe-swing/src/main/java/fr/ird/observe/ObserveConfig.java @@ -52,7 +52,59 @@ import java.util.Locale; import java.util.Properties; import java.util.Set; -import static fr.ird.observe.ObserveConfigOption.*; +import static fr.ird.observe.ObserveConfigOption.AUTO_POPUP_NUMBER_EDITOR; +import static fr.ird.observe.ObserveConfigOption.BACKUP_DIRECTORY; +import static fr.ird.observe.ObserveConfigOption.BAIT_OBSERVATION; +import static fr.ird.observe.ObserveConfigOption.BIRDS_OBSERVATION; +import static fr.ird.observe.ObserveConfigOption.CHANGE_SYNCHRO_SRC; +import static fr.ird.observe.ObserveConfigOption.CONFIG_FILE; +import static fr.ird.observe.ObserveConfigOption.DB_DIRECTORY; +import static fr.ird.observe.ObserveConfigOption.DB_LOCALE; +import static fr.ird.observe.ObserveConfigOption.DEFAULT_CREATION_MODE; +import static fr.ird.observe.ObserveConfigOption.DEFAULT_DB_MODE; +import static fr.ird.observe.ObserveConfigOption.DEFAULT_GPS_MAX_DELAY; +import static fr.ird.observe.ObserveConfigOption.DEFAULT_GPS_MAX_SPEED; +import static fr.ird.observe.ObserveConfigOption.DETAILLED_ACTIVITIES_OBSERVATION; +import static fr.ird.observe.ObserveConfigOption.DEV_MODE; +import static fr.ird.observe.ObserveConfigOption.FULL_SCREEN; +import static fr.ird.observe.ObserveConfigOption.H2_CAN_MIGRATE; +import static fr.ird.observe.ObserveConfigOption.H2_LOGIN; +import static fr.ird.observe.ObserveConfigOption.H2_PASSWORD; +import static fr.ird.observe.ObserveConfigOption.H2_SERVER_PORT; +import static fr.ird.observe.ObserveConfigOption.I18N_DIRECTORY; +import static fr.ird.observe.ObserveConfigOption.INITIAL_DB_DUMP; +import static fr.ird.observe.ObserveConfigOption.LOAD_LOCAL_STORAGE; +import static fr.ird.observe.ObserveConfigOption.LOCALE; +import static fr.ird.observe.ObserveConfigOption.LOG_CONFIGURATION_FILE; +import static fr.ird.observe.ObserveConfigOption.MAMMALS_OBSERVATION; +import static fr.ird.observe.ObserveConfigOption.MAP_BACKGROUND_COLOR; +import static fr.ird.observe.ObserveConfigOption.NON_TARGET_OBSERVATION; +import static fr.ird.observe.ObserveConfigOption.OBJECTS_OBSERVATION; +import static fr.ird.observe.ObserveConfigOption.OBSTUNA_CAN_MIGRATE; +import static fr.ird.observe.ObserveConfigOption.OBSTUNA_LOGIN; +import static fr.ird.observe.ObserveConfigOption.OBSTUNA_PASSWORD; +import static fr.ird.observe.ObserveConfigOption.OBSTUNA_URL; +import static fr.ird.observe.ObserveConfigOption.OBSTUNA_USE_SSL_CERT; +import static fr.ird.observe.ObserveConfigOption.REPORT_DIRECTORY; +import static fr.ird.observe.ObserveConfigOption.RESOURCES_DIRECTORY; +import static fr.ird.observe.ObserveConfigOption.SAMPLES_OBSERVATION; +import static fr.ird.observe.ObserveConfigOption.SHOW_DATE_TIME_EDITOR_SLIDER; +import static fr.ird.observe.ObserveConfigOption.SHOW_MIGRATION_PROGRESSION; +import static fr.ird.observe.ObserveConfigOption.SHOW_MIGRATION_SQL; +import static fr.ird.observe.ObserveConfigOption.SHOW_NUMBER_EDITOR_BUTTON; +import static fr.ird.observe.ObserveConfigOption.SHOW_SQL; +import static fr.ird.observe.ObserveConfigOption.SPECIES_LIST_LONGLINE_CATCH_ID; +import static fr.ird.observe.ObserveConfigOption.SPECIES_LIST_LONGLINE_DEPREDATOR_ID; +import static fr.ird.observe.ObserveConfigOption.SPECIES_LIST_LONGLINE_ENCOUNTER_ID; +import static fr.ird.observe.ObserveConfigOption.SPECIES_LIST_SEINE_NON_TARGET_CATCH_ID; +import static fr.ird.observe.ObserveConfigOption.SPECIES_LIST_SEINE_OBJECT_OBSERVED_SPECIES_ID; +import static fr.ird.observe.ObserveConfigOption.SPECIES_LIST_SEINE_OBJECT_SCHOOL_ESTIMATE_ID; +import static fr.ird.observe.ObserveConfigOption.SPECIES_LIST_SEINE_SCHOOL_ESTIMATE_ID; +import static fr.ird.observe.ObserveConfigOption.SPECIES_LIST_SEINE_TARGET_CATCH_ID; +import static fr.ird.observe.ObserveConfigOption.STORE_REMOTE_STORAGE; +import static fr.ird.observe.ObserveConfigOption.TARGET_DISCARDS_OBSERVATION; +import static fr.ird.observe.ObserveConfigOption.TMP_DIRECTORY; +import static fr.ird.observe.ObserveConfigOption.values; import static fr.ird.observe.ObserveResourceManager.Resource; import static org.nuiton.i18n.I18n.t; @@ -114,8 +166,6 @@ public class ObserveConfig extends ApplicationConfig implements IObserveConfig { */ protected String[] unsavables; - public static final char[] EMPTY_CHAR_ARRAY = new char[0]; - private final ImmutableSet<String> longlinVesselTypeIds = ImmutableSet.copyOf( Sets.newHashSet("fr.ird.observe.entities.referentiel.VesselType#1239832675735#0.044156847891821505", "fr.ird.observe.entities.referentiel.VesselType#1239832675736#0.8708229847859869", @@ -166,15 +216,10 @@ public class ObserveConfig extends ApplicationConfig implements IObserveConfig { throw new IllegalStateException("No application.version found in application configuration."); } -// for (ObserveConfigOption o : values()) { -// setDefaultOption(o.key, o.defaultValue); -// } - setVersion(version); setDefaultOption(VERSION, version.getVersion()); setDefaultOption(APPLICATION_VERSION, version.getVersion()); - //TC-200100204 La version de la base n'est pas liéé à la version // de l'application Version dbVersion; @@ -183,16 +228,9 @@ public class ObserveConfig extends ApplicationConfig implements IObserveConfig { setDefaultOption(DB_VERSION, dbVersion.getVersion()); - boolean isAdmin = ObserveRunner.isAdmin(); - // creation des actions disponibles - for (ObserveCLAction.ActionDefinition a : - ObserveCLAction.ActionDefinition.values()) { - if (a.isAdmin() && !isAdmin) { + for (ObserveCLAction.ActionDefinition a : ObserveCLAction.ActionDefinition.values()) { - // ne pas ajouter les actions d'admin pour le simple utilisateur - continue; - } for (String alias : a.aliases) { addActionAlias(alias, a.action); } @@ -220,14 +258,7 @@ public class ObserveConfig extends ApplicationConfig implements IObserveConfig { List<String> result = new ArrayList<String>(); -// boolean isAdmin = ObserveRunner.isAdmin(); - for (ObserveConfigOption option : values()) { -// if (option.isAdmin() && !isAdmin) { -// -// // ne pas ajouter les options d'admin pour le simple utilisateur -// continue; -// } String key = option.getPropertyKey(); if (key != null) { // add a listener @@ -354,6 +385,12 @@ public class ObserveConfig extends ApplicationConfig implements IObserveConfig { } @Override + public File getLogConfigurationFile() { + File result = getOptionAsFile(LOG_CONFIGURATION_FILE.key); + return result; + } + + @Override public String getH2Login() { String result = getOption(H2_LOGIN.key); return result; diff --git a/observe-swing/src/main/java/fr/ird/observe/ObserveConfigOption.java b/observe-swing/src/main/java/fr/ird/observe/ObserveConfigOption.java index 6770ed8..1ded80c 100644 --- a/observe-swing/src/main/java/fr/ird/observe/ObserveConfigOption.java +++ b/observe-swing/src/main/java/fr/ird/observe/ObserveConfigOption.java @@ -48,7 +48,7 @@ public enum ObserveConfigOption implements ConfigOptionDef { CONFIG_FILE( ApplicationConfig.CONFIG_FILE_NAME, n("observe.config.configFileName.description"), - ObserveRunner.isAdmin() ? "observe-admin-config" : "observe-config", + "observe-admin-config", String.class, true, true @@ -174,6 +174,15 @@ public enum ObserveConfigOption implements ConfigOptionDef { false ), + /** Le chemin du fichier de configuration des logs. */ + LOG_CONFIGURATION_FILE( + "logConfigurationFile", + n("observe.config.logConfigurationFile.description"), + "${resources.directory}/observe-log4j.properties", + String.class, + true, + false), + // local db config /** login sur toutes les bases h2 (non sauvegarde) */ @@ -637,7 +646,7 @@ public enum ObserveConfigOption implements ConfigOptionDef { false, false ), - /** shape file 1 */ + /** shape file 1 */ MAP_LAYER_1( "map.layer1.path", n("observe.config.map.layer1.description"), @@ -646,7 +655,7 @@ public enum ObserveConfigOption implements ConfigOptionDef { false, false ), - /** shape file 2 */ + /** shape file 2 */ MAP_LAYER_2( "map.layer2.path", n("observe.config.map.layer2.description"), @@ -655,7 +664,7 @@ public enum ObserveConfigOption implements ConfigOptionDef { false, false ), - /** shape file 3 */ + /** shape file 3 */ MAP_LAYER_3( "map.layer3.path", n("observe.config.map.layer3.description"), @@ -664,7 +673,7 @@ public enum ObserveConfigOption implements ConfigOptionDef { false, false ), - /** shape file 4 */ + /** shape file 4 */ MAP_LAYER_4( "map.layer4.path", n("observe.config.map.layer4.description"), @@ -673,7 +682,7 @@ public enum ObserveConfigOption implements ConfigOptionDef { false, false ), - /** shape file 5 */ + /** shape file 5 */ MAP_LAYER_5( "map.layer5.path", n("observe.config.map.layer5.description"), @@ -682,7 +691,7 @@ public enum ObserveConfigOption implements ConfigOptionDef { false, false ), - /** shape file 6 */ + /** shape file 6 */ MAP_LAYER_6( "map.layer6.path", n("observe.config.map.layer6.description"), @@ -691,7 +700,7 @@ public enum ObserveConfigOption implements ConfigOptionDef { false, false ), - /** shape file 7 */ + /** shape file 7 */ MAP_LAYER_7( "map.layer7.path", n("observe.config.map.layer7.description"), @@ -700,7 +709,7 @@ public enum ObserveConfigOption implements ConfigOptionDef { false, false ), - /** shape file 8 */ + /** shape file 8 */ MAP_LAYER_8( "map.layer8.path", n("observe.config.map.layer8.description"), @@ -709,7 +718,7 @@ public enum ObserveConfigOption implements ConfigOptionDef { false, false ), - /** shape file 9 */ + /** shape file 9 */ MAP_LAYER_9( "map.layer9.path", n("observe.config.map.layer9.description"), @@ -718,7 +727,7 @@ public enum ObserveConfigOption implements ConfigOptionDef { false, false ), - /** shape file 10 */ + /** shape file 10 */ MAP_LAYER_10( "map.layer10.path", n("observe.config.map.layer10.description"), @@ -737,7 +746,7 @@ public enum ObserveConfigOption implements ConfigOptionDef { false); public static List<ObserveConfigOption> MAP_LAYERS = ImmutableList.of(MAP_LAYER_1, MAP_LAYER_2, MAP_LAYER_3, - MAP_LAYER_4, MAP_LAYER_5, MAP_LAYER_6, MAP_LAYER_7, MAP_LAYER_8, MAP_LAYER_9, MAP_LAYER_10); + MAP_LAYER_4, MAP_LAYER_5, MAP_LAYER_6, MAP_LAYER_7, MAP_LAYER_8, MAP_LAYER_9, MAP_LAYER_10); /** * Clef qui represente l'option (c'est celle enregistrée dans le fichier de diff --git a/observe-swing/src/main/java/fr/ird/observe/ObserveResourceManager.java b/observe-swing/src/main/java/fr/ird/observe/ObserveResourceManager.java index 95c955f..3cd0908 100644 --- a/observe-swing/src/main/java/fr/ird/observe/ObserveResourceManager.java +++ b/observe-swing/src/main/java/fr/ird/observe/ObserveResourceManager.java @@ -50,20 +50,15 @@ import static org.nuiton.i18n.I18n.t; */ public class ObserveResourceManager { - public static final String OBSERVE_UI_PROPERTIES = - "/observe-ui.properties"; + public static final String OBSERVE_UI_PROPERTIES = "/observe-ui.properties"; - public static final String OBSERVE_APPLICATION_PROPERTIES = - "/observe-application.properties"; + public static final String OBSERVE_APPLICATION_PROPERTIES = "/observe-application.properties"; - public static final String OBSERVE_REPORTS_PROPERTIES = - "/observe-reports.properties"; + public static final String OBSERVE_REPORTS_PROPERTIES = "/observe-reports.properties"; - public static final String OBSERVE_MAP_BACKGROUND = - "/shapefiles/backgroundes/background.shp"; + public static final String OBSERVE_MAP_ARCHIVE = "/map.zip"; - public static final String OBSERVE_MAP_ARCHIVE = - "/map.zip"; + public static final String OBSERVE_LOG_CONFIGURATION_FILE_PROPERTIES = "/observe-log4j.properties"; /** Logger */ static private Log log = LogFactory.getLog(ObserveResourceManager.class); @@ -73,6 +68,7 @@ public class ObserveResourceManager { ui(OBSERVE_UI_PROPERTIES), application(OBSERVE_APPLICATION_PROPERTIES), report(OBSERVE_REPORTS_PROPERTIES), + LOG_CONFIGURATION_FILE(OBSERVE_LOG_CONFIGURATION_FILE_PROPERTIES), mapLayers(OBSERVE_MAP_ARCHIVE); private final String location; @@ -320,7 +316,7 @@ public class ObserveResourceManager { return dir; } finally { inputStream.close(); - + } } diff --git a/observe-swing/src/main/java/fr/ird/observe/ObserveRunner.java b/observe-swing/src/main/java/fr/ird/observe/ObserveRunner.java index 68a2118..3e11eea 100644 --- a/observe-swing/src/main/java/fr/ird/observe/ObserveRunner.java +++ b/observe-swing/src/main/java/fr/ird/observe/ObserveRunner.java @@ -21,6 +21,7 @@ */ package fr.ird.observe; +import com.google.common.base.Preconditions; import fr.ird.converter.FloatConverter; import fr.ird.observe.ui.ObserveMainUI; import fr.ird.observe.ui.ObserveMainUIHandler; @@ -35,6 +36,8 @@ import org.apache.commons.beanutils.converters.DateConverter; import org.apache.commons.io.FileUtils; import org.apache.commons.logging.Log; import org.apache.commons.logging.LogFactory; +import org.apache.log4j.LogManager; +import org.apache.log4j.PropertyConfigurator; import org.jdesktop.swingx.plaf.basic.CalendarHeaderHandler; import org.jdesktop.swingx.plaf.basic.SpinningCalendarHeaderHandler; import org.nuiton.converter.ConverterUtil; @@ -49,6 +52,7 @@ import javax.script.ScriptException; import javax.swing.UIManager; import java.io.File; import java.io.IOException; +import java.net.MalformedURLException; import java.net.URL; import java.util.Arrays; import java.util.Date; @@ -59,8 +63,8 @@ import static fr.ird.observe.ObserveConfigOption.BACKUP_DIRECTORY; import static fr.ird.observe.ObserveConfigOption.DATA_DIRECTORY; import static fr.ird.observe.ObserveConfigOption.DB_DIRECTORY; import static fr.ird.observe.ObserveConfigOption.INITIAL_DB_DUMP; -import static fr.ird.observe.ObserveConfigOption.REPORT_DIRECTORY; import static fr.ird.observe.ObserveConfigOption.MAP_DIRECTORY; +import static fr.ird.observe.ObserveConfigOption.REPORT_DIRECTORY; import static fr.ird.observe.ObserveConfigOption.RESOURCES_DIRECTORY; import static fr.ird.observe.ObserveConfigOption.TMP_DIRECTORY; import static fr.ird.observe.ObserveConfigOption.VALIDATION_REPORT_DIRECTORY; @@ -86,12 +90,12 @@ public abstract class ObserveRunner extends ApplicationRunner { return (ObserveRunner) ApplicationRunner.getRunner(); } - public static ObserveResourceManager getResourceManager() { - if (resourceManager == null) { - throw new IllegalStateException("No resourceManager initialized"); - } - return resourceManager; - } +// public static ObserveResourceManager getResourceManager() { +// if (resourceManager == null) { +// throw new IllegalStateException("No resourceManager initialized"); +// } +// return resourceManager; +// } public static ObserveActionExecutor getActionExecutor() { if (actionExecutor == null) { @@ -102,9 +106,9 @@ public abstract class ObserveRunner extends ApplicationRunner { public abstract String getRunnerName(); - public static boolean isAdmin() { - return true; - } +// public static boolean isAdmin() { +// return true; +// } public final boolean init; @@ -149,7 +153,7 @@ public abstract class ObserveRunner extends ApplicationRunner { // on charge dans un premier temps les traductions fournies // par l'application I18n.init(new DefaultI18nInitializer("observe-i18n"), null); - + // to enable javassist on webstart, must remove any securityManager, // see if this can be dangerous (should not be since jnlp is signed ?) // moreover it speeds up the loading :) @@ -203,6 +207,11 @@ public abstract class ObserveRunner extends ApplicationRunner { initUserDirectories(config); + // 3 - Chargement de la configuration des logs utilisateur + if (!config.isDevMode()) { + initLog(config); + } + if (log.isInfoEnabled()) { log.info(t("observe.runner.user.directories.loaded", config.getDataDirectory())); @@ -214,7 +223,7 @@ public abstract class ObserveRunner extends ApplicationRunner { if (log.isInfoEnabled()) { log.info(t("observe.runner.i18n.loaded", - config.getLocale().getDisplayLanguage())); + config.getLocale().getDisplayLanguage())); } // 4 - preparation de la configuration des ui @@ -236,6 +245,31 @@ public abstract class ObserveRunner extends ApplicationRunner { } } + protected void initLog(ObserveConfig config) { + + File logFile = config.getLogConfigurationFile(); + Preconditions.checkState(logFile.exists(), "Le fichier de configuration des logs %s n'existe pas.", logFile); + + URL resource; + try { + resource = logFile.toURI().toURL(); + } catch (MalformedURLException mue) { + throw new ObserveTechnicalException("Unable to load log configuration", mue); + } + + if (log.isInfoEnabled()) { + log.info("Chargement du fichier de de log4j depuis " + logFile); + } + LogManager.resetConfiguration(); + PropertyConfigurator.configure(resource); + + log = LogFactory.getLog(ObserveRunner.class); + if (log.isInfoEnabled()) { + log.info("Initialisation des logs depuis " + logFile); + } + + } + @Override protected void onStart() throws Exception { @@ -376,17 +410,6 @@ public abstract class ObserveRunner extends ApplicationRunner { // init config arguments config.parse(args); -// if (!isAdmin()) { -// -// // push back default values for admin options to make sure user -// // does not used modified values for thoses options -// for (ObserveConfigOption option : values()) { -// if (option.isAdmin()) { -// -// config.setOption(option.getKey(), option.getDefaultValue()); -// } -// } -// } // install save action on option modification config.installSaveAction(); @@ -439,7 +462,17 @@ public abstract class ObserveRunner extends ApplicationRunner { resourceManager.copyResource(Resource.ui, file, message); } - // 6 - resources i18n directory ? (done in I18nInitializer...) + // 6 - resources log configuration file + + file = Resource.LOG_CONFIGURATION_FILE.getFile(resourcesDirectory); + + if (!file.exists()) { + + String message = t("observe.runner.copy.default.logConfigurationFile.file", file); + + resourceManager.copyResource(Resource.LOG_CONFIGURATION_FILE, file, message); + + } // 7 - resources report @@ -499,6 +532,7 @@ public abstract class ObserveRunner extends ApplicationRunner { i18nDirectory, new DefaultI18nInitializer("observe-i18n") ) { + @Override protected void createUserI18nLayout(File directory) throws Exception { super.createUserI18nLayout(directory); diff --git a/observe-swing/src/main/resources/i18n/observe-swing_en_GB.properties b/observe-swing/src/main/resources/i18n/observe-swing_en_GB.properties index ed1817a..c086d7d 100644 --- a/observe-swing/src/main/resources/i18n/observe-swing_en_GB.properties +++ b/observe-swing/src/main/resources/i18n/observe-swing_en_GB.properties @@ -962,6 +962,7 @@ observe.config.h2.can.migrate.description=Flag to know if you can migrate h2 dat observe.config.h2.login.description=H2 Login observe.config.h2.password.description=H2 Password observe.config.h2.serverPort.description= +observe.config.logConfigurationFile.description= observe.config.map.background.description= observe.config.map.layer1.description= observe.config.map.layer10.description= @@ -1459,6 +1460,7 @@ observe.routes.title=Routes observe.runner.config.loaded= observe.runner.config.migrate.file= observe.runner.context.loaded= +observe.runner.copy.default.logConfigurationFile.file= observe.runner.copy.default.map.file= observe.runner.copy.default.report.file= observe.runner.copy.default.ui.file= diff --git a/observe-swing/src/main/resources/i18n/observe-swing_es_ES.properties b/observe-swing/src/main/resources/i18n/observe-swing_es_ES.properties index 09e6ee1..9722464 100644 --- a/observe-swing/src/main/resources/i18n/observe-swing_es_ES.properties +++ b/observe-swing/src/main/resources/i18n/observe-swing_es_ES.properties @@ -962,6 +962,7 @@ observe.config.h2.can.migrate.description=Autorizar la actualización de las bas observe.config.h2.login.description=Login h2 observe.config.h2.password.description=Contraseña h2 observe.config.h2.serverPort.description=Puerto del servidor h2 +observe.config.logConfigurationFile.description= observe.config.map.background.description= observe.config.map.layer1.description= observe.config.map.layer10.description= @@ -1461,6 +1462,7 @@ observe.routes.title= observe.runner.config.loaded=Configuración de Observe v. %1$s cargada. observe.runner.config.migrate.file=El fichero de configuración %1$s ha sido reemplazado por \n%2$s\nvers\n%3$s observe.runner.context.loaded=Finlazada la inicialización del contexto en %1$s. +observe.runner.copy.default.logConfigurationFile.file= observe.runner.copy.default.map.file= observe.runner.copy.default.report.file=Creación del archivo de informes %1$s. observe.runner.copy.default.ui.file=Creación del archivo de - Création du fichier de cosmétique %1$s. diff --git a/observe-swing/src/main/resources/i18n/observe-swing_fr_FR.properties b/observe-swing/src/main/resources/i18n/observe-swing_fr_FR.properties index db614ac..6c7d853 100644 --- a/observe-swing/src/main/resources/i18n/observe-swing_fr_FR.properties +++ b/observe-swing/src/main/resources/i18n/observe-swing_fr_FR.properties @@ -957,11 +957,12 @@ observe.config.defaultReportDirectory.description=Répertoire par défaut des ra observe.config.defaultResourcesDirectory.description=Le répertoire où sont stockées les resources de l'utilisateur comme les traductions ou les requètes de rapports. observe.config.defaultTmpDirectory.description=Le répertoire temporaire par défaut observe.config.defaultValidationReportDirectory.description=Le répertoire par défaut où sont stockés les rapports de validation -observe.config.devMode= +observe.config.devMode=Mode développeur observe.config.h2.can.migrate.description=Autoriser la mise à jour des bases locales (h2) observe.config.h2.login.description=Le login h2 observe.config.h2.password.description=Le mot de passe h2 observe.config.h2.serverPort.description=Port du serveur h2 +observe.config.logConfigurationFile.description=Fichier de configuration des logs observe.config.map.background.description=Couleur du fond de carte observe.config.map.layer1.description=Fichier (shapeFiles) du premier calque de la carte observe.config.map.layer10.description=Fichier (shapeFiles) du dixième calque de la carte @@ -1454,6 +1455,7 @@ observe.routes.title=Routes observe.runner.config.loaded=Configuration d'ObServe v. %1$s chargée. observe.runner.config.migrate.file=Le fichier de configuration %1$s a été déplacée de \n%2$s\nvers\n%3$s observe.runner.context.loaded=Initialisation du contexte terminée en %1$s. +observe.runner.copy.default.logConfigurationFile.file=Création du fichier de configuration des logs $1. observe.runner.copy.default.map.file= observe.runner.copy.default.report.file=Création du fichier de reports %1$s. observe.runner.copy.default.ui.file=Création du fichier de cosmétique %1$s. -- To stop receiving notification emails like this one, please contact codelutin.com SCM administrator <admin+scm@list.forge.codelutin.com>.
This is an automated email from the git hooks/post-receive script. New commit to branch develop in repository observe. See http://git.codelutin.com/observe.git commit e625afae36a3891b0d468a12f2e711fb6246224b Author: Tony CHEMIT <chemit@codelutin.com> Date: Thu Aug 13 20:21:25 2015 +0200 Suppresion référence sur une action qui n'existe plus --- observe-swing/src/main/filters/observe-ui.properties | 1 - 1 file changed, 1 deletion(-) diff --git a/observe-swing/src/main/filters/observe-ui.properties b/observe-swing/src/main/filters/observe-ui.properties index 8657e04..80e57c2 100644 --- a/observe-swing/src/main/filters/observe-ui.properties +++ b/observe-swing/src/main/filters/observe-ui.properties @@ -110,7 +110,6 @@ icon.action.db-stop-server=action-db-stop-server.png icon.action.delete=action-delete.png icon.action.exit=action-exit.png icon.action.error=error.png -icon.action.fullscreen=action-fullscreen.png icon.action.fileChooser=action-fileChooser.png icon.action.go-back=action-go-back.png icon.action.go-detail=action-go-detail.png -- To stop receiving notification emails like this one, please contact codelutin.com SCM administrator <admin+scm@list.forge.codelutin.com>.
This is an automated email from the git hooks/post-receive script. New commit to branch develop in repository observe. See http://git.codelutin.com/observe.git commit ea7f9514de5a84d6f547489ea0550dba74f5abd5 Merge: f0322d4 e625afa Author: Tony CHEMIT <chemit@codelutin.com> Date: Thu Aug 13 20:22:05 2015 +0200 Permettre de configurer les logs chez le client (termine #7455) Merge branch 'feature/7455' into develop .../main/java/fr/ird/observe/IObserveConfig.java | 2 + observe-swing/pom.xml | 1 - .../main/{resources => filters}/log4j.properties | 5 +- .../observe-log4j.properties} | 4 +- .../src/main/filters/observe-ui.properties | 1 - .../main/java/fr/ird/observe/ObserveCLAction.java | 43 ++++------- .../main/java/fr/ird/observe/ObserveConfig.java | 83 ++++++++++++++++------ .../java/fr/ird/observe/ObserveConfigOption.java | 33 +++++---- .../fr/ird/observe/ObserveResourceManager.java | 18 ++--- .../main/java/fr/ird/observe/ObserveRunner.java | 82 ++++++++++++++------- .../resources/i18n/observe-swing_en_GB.properties | 2 + .../resources/i18n/observe-swing_es_ES.properties | 2 + .../resources/i18n/observe-swing_fr_FR.properties | 4 +- 13 files changed, 176 insertions(+), 104 deletions(-) -- To stop receiving notification emails like this one, please contact codelutin.com SCM administrator <admin+scm@list.forge.codelutin.com>.
participants (1)
-
codelutin.com scm