This is an automated email from the git hooks/post-receive script. New commit to branch develop in repository observe. See https://gitlab.nuiton.org/codelutin/observe.git commit 1259b0ad14f18afd2f06403ea0e0af0d070ecfdd Author: Tony CHEMIT <chemit@codelutin.com> Date: Sat Oct 1 20:32:31 2016 +0200 Normalize configurations and use new configuration description file --- .../src/main/config/ObserveSwingApplication.yml | 531 +++++++++++++++++++++ .../ObserveSwingApplicationConfig.java | 46 +- application-web-configuration/pom.xml | 3 +- .../src/main/config/ObserveWebApplication.yml | 100 ++++ ...ation.java => ObserveWebApplicationConfig.java} | 44 +- ... ObserveWebApplicationConfigInitException.java} | 6 +- .../ObserveWebApplicationConfigurationOption.java | 131 ----- .../application-web-configuration_en_GB.properties | 2 +- .../application-web-configuration_es_ES.properties | 2 +- .../application-web-configuration_fr_FR.properties | 2 +- .../web/ObserveWebApplicationContext.java | 8 +- .../web/controller/ObserveWebMotionController.java | 4 +- .../web/controller/v1/PingServiceController.java | 4 +- .../ObserveWebSecurityApplicationContext.java | 4 +- .../db/ObserveWebDatabasesHelperTest.java | 8 +- .../user/ObserveWebUsersHelperTest.java | 6 +- pom.xml | 3 + 17 files changed, 722 insertions(+), 182 deletions(-) diff --git a/application-swing-configuration/src/main/config/ObserveSwingApplication.yml b/application-swing-configuration/src/main/config/ObserveSwingApplication.yml new file mode 100644 index 0000000..2eac64d --- /dev/null +++ b/application-swing-configuration/src/main/config/ObserveSwingApplication.yml @@ -0,0 +1,531 @@ +actions: +- !action + name: help + action: fr.ird.observe.application.swing.ObserveCLAction#help + aliases: + - -h + - --help + description: observe.action.commandline.help +- !action + name: helpUi + action: fr.ird.observe.application.swing.ObserveCLAction#helpUI + aliases: + - --help-ui + description: observe.action.commandline.help.ui +- !action + name: noMainUi + action: fr.ird.observe.application.swing.ObserveCLAction#disableMainUI + aliases: + - -n + - --no-main + description: observe.action.commandline.disable.main.ui +- !action + name: configureUi + action: fr.ird.observe.application.swing.ObserveCLAction#configure + aliases: + - --configure + description: observe.action.commandline.configure.ui +- !action + name: adminUi + action: fr.ird.observe.application.swing.ObserveCLAction#launchAdminUI + aliases: + - -a + - --admin + description: observe.action.commandline.launch.admin.ui +- !action + name: obstunaAdminUi + action: fr.ird.observe.application.swing.ObserveCLAction#launchObstunaAdminUI + aliases: + - --obstuna-admin + description: observe.action.commandline.launch.obstuna.admin.ui +- !action + name: h2ServerMode + action: fr.ird.observe.application.swing.ObserveCLAction#launchH2ServerMode + aliases: + - --h2-server + description: observe.action.commandline.launch.h2.server.mode +- !action + name: useJmx + action: fr.ird.observe.application.swing.ObserveCLAction#useJMX + aliases: + - --jmx + description: observe.action.commandline.use.jmx +- !action + name: createId + action: fr.ird.observe.application.swing.ObserveCLAction#createId + aliases: + - --create-id + description: observe.action.commandline.create.id +description: ObserveSwingApplicationConfig.description +options: +- !option + name: configFile + defaultValue: observeSwing.conf + description: observe.config.configFileName.description + final: true + key: config.file + transient: true + type: string +- !option + name: devMode + defaultValue: true + description: observe.config.devMode + final: true + key: observe.devMode + transient: true + type: Boolean +- !option + name: modelVersion + description: observe.model.version + final: true + key: observe.model.version + transient: true + type: version +- !option + name: dataDirectory + defaultValue: ${user.home}/.observe + description: observe.config.defaultDataDirectory.description + final: true + key: data.directory + transient: true + type: file +- !option + name: dbDirectory + defaultValue: ${data.directory}/db + description: observe.config.defaultLocalDbDirectory.description + final: true + key: db.directory + transient: true + type: file +- !option + name: initialDbDump + defaultValue: ${data.directory}/initial-database.sql.gz + description: observe.config.defaultInitialDbDump.description + key: initial.db.dump + type: file +- !option + name: backupDirectory + defaultValue: ${data.directory}/backup + description: observe.config.defaultBackupDirectory.description + final: true + key: backup.directory + transient: true + type: file +- !option + name: resourcesDirectory + defaultValue: ${data.directory}/resources-${version} + description: observe.config.defaultResourcesDirectory.description + final: true + key: resources.directory + transient: true + type: file +- !option + name: i18nDirectory + defaultValue: ${resources.directory}/i18n + description: observe.config.defaultI18nDirectory.description + final: true + key: i18n.directory + transient: true + type: file +- !option + name: reportDirectory + defaultValue: ${resources.directory}/report + description: observe.config.defaultReportDirectory.description + final: true + key: report.directory + transient: true + type: file +- !option + name: mapDirectory + defaultValue: ${resources.directory}/map + description: observe.config.defaultMapDirectory.description + final: true + key: map.directory + transient: true + type: file +- !option + name: validationReportDirectory + defaultValue: ${data.directory}/validation-report + description: observe.config.defaultValidationReportDirectory.description + final: true + key: validation.report.directory + transient: true + type: file +- !option + name: tmpDirectory + defaultValue: ${data.directory}/tmp + description: observe.config.defaultTmpDirectory.description + final: true + key: tmp.directory + transient: true + type: file +- !option + name: logConfigurationFile + defaultValue: ${resources.directory}/observe-log4j.properties + description: observe.config.logConfigurationFile.description + key: logConfigurationFile + transient: true + type: file +- !option + name: h2Login + defaultValue: sa + description: observe.config.h2.login.description + final: true + key: h2.username + transient: true + type: string +- !option + name: h2Password + defaultValue: sa + description: observe.config.h2.password.description + final: true + key: h2.password + transient: true + type: string +- !option + name: h2CanMigrate + defaultValue: true + description: observe.config.h2.can.migrate.description + key: h2.canMigrate + type: Boolean +- !option + name: h2ServerPort + defaultValue: 9093 + description: observe.config.h2.serverPort.description + key: h2.serverPort + type: Integer +- !option + name: obstunaUrl + defaultValue: jdbc:postgresql:///obstuna + description: observe.config.obstuna.url.description + key: obstuna.url + type: string +- !option + name: obstunaLogin + defaultValue: utilisateur + description: observe.config.obstuna.login.description + key: obstuna.username + type: string +- !option + name: obstunaPassword + defaultValue: + description: observe.config.obstuna.password.description + key: obstuna.password + transient: true + type: string +- !option + name: obstunaUseSslCert + defaultValue: false + description: observe.config.obstuna.useSsl.description + key: obstuna.useSsl + type: Boolean +- !option + name: obstunaCanMigrate + defaultValue: false + description: observe.config.pg.can.migrate.description + key: pg.canMigrate + type: Boolean +- !option + name: serverUrl + description: observe.config.server.url.description + key: server.url + type: url +- !option + name: serverLogin + defaultValue: + description: observe.config.server.login.description + key: server.login + type: string +- !option + name: serverPassword + defaultValue: + description: observe.config.server.password.description + key: server.password + type: string +- !option + name: serverDatabaseName + description: observe.config.server.dataBaseName.description + key: server.dataBaseName + type: string +- !option + name: defaultDbMode + defaultValue: USE_LOCAL + description: observe.config.defaultDbMode + key: defaultDbMode + type: fr.ird.observe.application.swing.configuration.constants.DbMode +- !option + name: defaultCreationMode + defaultValue: IMPORT_EXTERNAL_DUMP + description: observe.config.defaultCreationMode + key: defaultCreationMode + type: fr.ird.observe.application.swing.configuration.constants.CreationMode +- !option + name: storeRemoteStorage + defaultValue: true + description: observe.config.ui.storeRemoteStorage + key: ui.storeRemoteStorage + type: Boolean +- !option + name: loadLocalStorage + defaultValue: true + description: observe.config.ui.loadLocalStorage + key: ui.loadLocalStorage + type: Boolean +- !option + name: showMigrationProgression + defaultValue: true + description: observe.config.showMigrationProgression + key: showMigrationProgression + type: Boolean +- !option + name: showMigrationSql + defaultValue: true + description: observe.config.showMigrationSql + key: showMigrationSql + type: Boolean +- !option + name: showSql + defaultValue: false + description: observe.config.showSql + key: showSql + type: Boolean +- !option + name: changeSynchroSrc + defaultValue: false + description: observe.config.ui.changeSynchroSrc + key: ui.changeSynchroSrc + type: Boolean +- !option + name: showNumberEditorButton + defaultValue: true + description: observe.config.ui.showNumberEditorButton + key: ui.showNumberEditorButton + type: Boolean +- !option + name: autoPopupNumberEditor + defaultValue: false + description: observe.config.ui.autoPopupNumberEditor + key: ui.autoPopupNumberEditor + type: Boolean +- !option + name: showDateTimeEditorSlider + defaultValue: true + description: observe.config.ui.showTimeEditorSlider + key: ui.showTimeEditorSlider + type: Boolean +- !option + name: fullScreen + defaultValue: false + description: observe.config.ui.fullscreen + key: ui.fullscreen + type: Boolean +- !option + name: locale + defaultValue: fr_FR + description: observe.config.ui.locale + key: ui.locale + type: java.util.Locale +- !option + name: dbLocale + defaultValue: fr_FR + description: observe.config.db.locale + key: db.locale + type: java.util.Locale +- !option + name: nonTargetObservation + defaultValue: 1 + description: observe.config.observation.fauneAssociee + key: observation.fauneAssociee + type: Integer +- !option + name: targetDiscardsObservation + defaultValue: 1 + description: observe.config.observation.rejetsThons + key: observation.rejetsThons + type: Integer +- !option + name: samplesObservation + defaultValue: 1 + description: observe.config.observation.mensurations + key: observation.mensurations + type: Integer +- !option + name: objectsObservation + defaultValue: 1 + description: observe.config.observation.floatingObject + key: observation.floatingObject + type: Integer +- !option + name: detailledActivitiesObservation + defaultValue: 1 + description: observe.config.observation.activitysDetaillees + key: observation.activitysDetaillees + type: Integer +- !option + name: mammalsObservation + defaultValue: 1 + description: observe.config.observation.mammiferes + key: observation.mammiferes + type: Integer +- !option + name: birdsObservation + defaultValue: 1 + description: observe.config.observation.oiseaux + key: observation.oiseaux + type: Integer +- !option + name: baitObservation + defaultValue: 1 + description: observe.config.observation.gleure + key: observation.gleure + type: Integer +- !option + name: speciesListSeineTargetCatchId + defaultValue: fr.ird.observe.entities.referentiel.SpeciesList#1239832675370#0.1 + description: observe.config.speciesList.seine.targetCatch + key: speciesList.seine.targetCatch + type: string +- !option + name: speciesListSeineSchoolEstimateId + defaultValue: fr.ird.observe.entities.referentiel.SpeciesList#1239832675370#0.1 + description: observe.config.speciesList.seine.schoolEstimate + key: speciesList.seine.schoolEstimate + type: string +- !option + name: speciesListSeineObjectSchoolEstimateId + defaultValue: fr.ird.observe.entities.referentiel.SpeciesList#1239832675370#0.1 + description: observe.config.speciesList.seine.objectSchoolEstimate + key: speciesList.seine.objectSchoolEstimate + type: string +- !option + name: speciesListSeineNonTargetCatchId + defaultValue: fr.ird.observe.entities.referentiel.SpeciesList#1239832675370#0.2 + description: observe.config.speciesList.seine.nonTargetCatch + key: speciesList.seine.nonTargetCatch + type: string +- !option + name: speciesListSeineObjectObservedSpeciesId + defaultValue: fr.ird.observe.entities.referentiel.SpeciesList#1239832675370#0.2 + description: observe.config.speciesList.seine.objectObservedSpecies + key: speciesList.seine.objectObservedSpecies + type: string +- !option + name: speciesListLonglineCatchId + defaultValue: fr.ird.observe.entities.referentiel.SpeciesList#1239832675370#0.3 + description: observe.config.speciesList.longline.catch + key: speciesList.longline.catch + type: string +- !option + name: speciesListLonglineEncounterId + defaultValue: fr.ird.observe.entities.referentiel.SpeciesList#1239832675370#0.4 + description: observe.config.speciesList.longline.encounter + key: speciesList.longline.encounter + type: string +- !option + name: speciesListLonglineDepredatorId + defaultValue: fr.ird.observe.entities.referentiel.SpeciesList#1239832675370#0.5 + description: observe.config.speciesList.longline.encounter + key: speciesList.longline.depredator + type: string +- !option + name: mapBackgroundColor + defaultValue: java.awt.Color[r=87,g=200,b=255] + description: observe.config.map.background.description + key: map.background.color + type: color +- !option + name: mapLayer1 + defaultValue: ${resources.directory}/map/shapeFiles/continents/GSHHS_l_L1.shp + description: observe.config.map.layer1.description + key: map.layer1.path + type: file +- !option + name: mapLayer2 + defaultValue: ${resources.directory}/map/shapeFiles/continents/GSHHS_l_L6.shp + description: observe.config.map.layer2.description + key: map.layer2.path + type: file +- !option + name: mapLayer3 + defaultValue: ${resources.directory}/map/shapeFiles/lakesAndSeas/GSHHS_l_L2.shp + description: observe.config.map.layer3.description + key: map.layer3.path + type: file +- !option + name: mapLayer4 + defaultValue: ${resources.directory}/map/shapeFiles/borders/WDBII_border_l_L1.shp + description: observe.config.map.layer4.description + key: map.layer4.path + type: file +- !option + name: mapLayer5 + defaultValue: ${resources.directory}/map/shapeFiles/zee/World_EEZ_v8_2014.shp + description: observe.config.map.layer5.description + key: map.layer5.path + type: file +- !option + name: mapLayer6 + description: observe.config.map.layer6.description + key: map.layer6.path + type: file +- !option + name: mapLayer7 + description: observe.config.map.layer7.description + key: map.layer7.path + type: file +- !option + name: mapLayer8 + description: observe.config.map.layer8.description + key: map.layer8.path + type: file +- !option + name: mapLayer9 + description: observe.config.map.layer9.description + key: map.layer9.path + type: file +- !option + name: mapLayer10 + description: observe.config.map.layer10.description + key: map.layer10.path + type: file +- !option + name: mapStyleFile + defaultValue: ${resources.directory}/map/style.xml + description: observe.config.map.style.description + key: map.style.path + type: file +- !option + name: treeOpenNodes + description: observe.config.ui.treeOpenNodes + key: ui.treeOpenNodes + type: string +- !option + name: validationSpeedEnable + defaultValue: true + description: observe.config.validation.speedEnable + key: validation.speedEnable + type: Boolean +- !option + name: validationSpeedMaxValue + defaultValue: 30.0 + description: observe.config.validation.speedMaxValue + key: validation.speedMaxValue + type: Float +- !option + name: backupUse + defaultValue: true + description: observe.config.backup.use + key: backup.use + type: Boolean +- !option + name: backupAtClose + defaultValue: true + description: observe.config.backup.atClose + key: backup.atClose + type: Boolean +- !option + name: backupDelay + defaultValue: 30 + description: observe.config.backup.delay + key: backup.delay + type: Integer diff --git a/application-swing-configuration/src/main/java/fr/ird/observe/application/swing/configuration/ObserveSwingApplicationConfig.java b/application-swing-configuration/src/main/java/fr/ird/observe/application/swing/configuration/ObserveSwingApplicationConfig.java index db421f1..9d2adab 100644 --- a/application-swing-configuration/src/main/java/fr/ird/observe/application/swing/configuration/ObserveSwingApplicationConfig.java +++ b/application-swing-configuration/src/main/java/fr/ird/observe/application/swing/configuration/ObserveSwingApplicationConfig.java @@ -21,6 +21,7 @@ */ package fr.ird.observe.application.swing.configuration; +import com.google.common.collect.ImmutableList; import com.google.common.collect.ImmutableSet; import com.google.common.collect.Sets; import fr.ird.observe.application.swing.configuration.constants.CreationMode; @@ -38,7 +39,9 @@ import java.beans.PropertyChangeSupport; import java.io.File; import java.io.IOException; import java.nio.charset.StandardCharsets; +import java.util.Arrays; import java.util.Calendar; +import java.util.Collections; import java.util.Date; import java.util.LinkedList; import java.util.List; @@ -131,15 +134,15 @@ public class ObserveSwingApplicationConfig extends GeneratedObserveSwingApplicat //FIXME 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", - "fr.ird.observe.entities.referentiel.VesselType#1239832686137#0.1")); + "fr.ird.observe.entities.referentiel.VesselType#1239832675736#0.8708229847859869", + "fr.ird.observe.entities.referentiel.VesselType#1239832686137#0.1")); private final ImmutableSet<String> seineVesselTypeIds = ImmutableSet.copyOf( Sets.newHashSet("fr.ird.observe.entities.referentiel.VesselType#1239832675735#0.044156847891821505", - "fr.ird.observe.entities.referentiel.VesselType#1239832675735#0.307197212385357", - "fr.ird.observe.entities.referentiel.VesselType#1239832675735#0.7380146830307519", - "fr.ird.observe.entities.referentiel.VesselType#1239832675735#0.9086075071905084", - "fr.ird.observe.entities.referentiel.VesselType#1239832675737#0.43324169605639407")); + "fr.ird.observe.entities.referentiel.VesselType#1239832675735#0.307197212385357", + "fr.ird.observe.entities.referentiel.VesselType#1239832675735#0.7380146830307519", + "fr.ird.observe.entities.referentiel.VesselType#1239832675735#0.9086075071905084", + "fr.ird.observe.entities.referentiel.VesselType#1239832675737#0.43324169605639407")); public ObserveSwingApplicationConfig() { this(DEFAULT_OBSERVE_SWING_CONFIGURATION_FILENAME); @@ -195,12 +198,12 @@ public class ObserveSwingApplicationConfig extends GeneratedObserveSwingApplicat @Override public DbMode getDefaultDbMode() { - return DbMode.valueOf(get().getOption(ObserveSwingApplicationConfigOption.DEFAULT_DB_MODE.key)); + return DbMode.valueOf(get().getOption(ObserveSwingApplicationConfigOption.DEFAULT_DB_MODE.getKey())); } @Override public CreationMode getDefaultCreationMode() { - return CreationMode.valueOf(get().getOption(ObserveSwingApplicationConfigOption.DEFAULT_CREATION_MODE.key)); + return CreationMode.valueOf(get().getOption(ObserveSwingApplicationConfigOption.DEFAULT_CREATION_MODE.getKey())); } public String getCopyrightText() { @@ -290,11 +293,23 @@ public class ObserveSwingApplicationConfig extends GeneratedObserveSwingApplicat } } + private static final List<ObserveSwingApplicationConfigOption> MAP_LAYERS = ImmutableList.of( + ObserveSwingApplicationConfigOption.MAP_LAYER1, + ObserveSwingApplicationConfigOption.MAP_LAYER2, + ObserveSwingApplicationConfigOption.MAP_LAYER3, + ObserveSwingApplicationConfigOption.MAP_LAYER4, + ObserveSwingApplicationConfigOption.MAP_LAYER5, + ObserveSwingApplicationConfigOption.MAP_LAYER6, + ObserveSwingApplicationConfigOption.MAP_LAYER7, + ObserveSwingApplicationConfigOption.MAP_LAYER8, + ObserveSwingApplicationConfigOption.MAP_LAYER9, + ObserveSwingApplicationConfigOption.MAP_LAYER10); + public List<File> getMapLayerFiles() { List<File> layers = new LinkedList<>(); - for (ObserveSwingApplicationConfigOption layerOption : ObserveSwingApplicationConfigOption.MAP_LAYERS) { - File layerFile = get().getOptionAsFile(layerOption.key); + for (ObserveSwingApplicationConfigOption layerOption : MAP_LAYERS) { + File layerFile = get().getOptionAsFile(layerOption.getKey()); if (layerFile != null && layerFile.exists()) { layers.add(layerFile); } @@ -381,7 +396,7 @@ public class ObserveSwingApplicationConfig extends GeneratedObserveSwingApplicat builder.append("\n====================================================================================================================="); builder.append("\n=== Observe Swing configuration ====================================================================================="); builder.append(String.format("\n=== %1$-40s = %2$s", "Filename", get().getConfigFileName())); - for (ObserveSwingApplicationConfigOption option : ObserveSwingApplicationConfigOption.orderedByKey()) { + for (ObserveSwingApplicationConfigOption option : orderedByKey()) { builder.append(String.format("\n=== %1$-40s = %2$s", option.getKey(), get().getOption(option))); } builder.append("\n====================================================================================================================="); @@ -416,4 +431,13 @@ public class ObserveSwingApplicationConfig extends GeneratedObserveSwingApplicat private void firePropertyChange(String propertyName, Object newValue) { pcs.firePropertyChange(propertyName, null, newValue); } + + + private ImmutableList<ObserveSwingApplicationConfigOption> orderedByKey() { + + List<ObserveSwingApplicationConfigOption> values = Arrays.asList(ObserveSwingApplicationConfigOption.values()); + Collections.sort(values, (o1, o2) -> o1.getKey().compareTo(o2.getKey())); + return ImmutableList.copyOf(values); + + } } diff --git a/application-web-configuration/pom.xml b/application-web-configuration/pom.xml index 9f59de7..950968b 100644 --- a/application-web-configuration/pom.xml +++ b/application-web-configuration/pom.xml @@ -20,7 +20,8 @@ <http://www.gnu.org/licenses/lgpl-3.0.html>. #L% --> -<project xmlns="http://maven.apache.org/POM/4.0.0" xmlns:xsi="http://www.w3.org/2001/XMLSchema-instance" xsi:schemaLocation="http://maven.apache.org/POM/4.0.0 http://maven.apache.org/xsd/maven-4.0.0.xsd"> +<project xmlns="http://maven.apache.org/POM/4.0.0" xmlns:xsi="http://www.w3.org/2001/XMLSchema-instance" + xsi:schemaLocation="http://maven.apache.org/POM/4.0.0 http://maven.apache.org/xsd/maven-4.0.0.xsd"> <modelVersion>4.0.0</modelVersion> <parent> diff --git a/application-web-configuration/src/main/config/ObserveWebApplication.yml b/application-web-configuration/src/main/config/ObserveWebApplication.yml new file mode 100644 index 0000000..a9a5d30 --- /dev/null +++ b/application-web-configuration/src/main/config/ObserveWebApplication.yml @@ -0,0 +1,100 @@ +actions: !java.util.LinkedList [] +description: ObserveWebApplicationConfig.description +options: !java.util.LinkedList +- !option + name: buildVersion + defaultValue: + description: observeweb.build.version.description + final: true + key: observeweb.build.version + type: version +- !option + name: buildDate + defaultValue: + description: observeweb.build.date.description + final: true + key: observeweb.build.date + type: string +- !option + name: buildNumber + defaultValue: + description: observeweb.build.number.description + final: true + key: observeweb.build.number + type: string +- !option + name: adminApiKey + defaultValue: changeme + description: observeweb.adminApiKey.description + final: true + key: observeweb.adminApiKey + type: string +- !option + name: apiUrl + defaultValue: http://localhost:8080/observeweb/api/v1 + description: observeweb.apiUrl.description + final: true + key: observeweb.apiUrl + type: url +- !option + name: modelVersion + description: observe.model.version + final: true + key: observeweb.model.version + type: version +- !option + name: devMode + defaultValue: true + description: observeweb.devMode.description + final: true + key: observeweb.devMode + type: boolean +- !option + name: baseDirectory + defaultValue: /var/local/observeweb + description: observeweb.baseDirectory.description + final: true + key: observeweb.baseDirectory + type: file +- !option + name: temporaryDirectory + defaultValue: ${observeweb.baseDirectory}/temp + description: observeweb.temporaryDirectory.description + final: true + key: observeweb.temporaryDirectory + type: file +- !option + name: log4jConfigurationFile + defaultValue: ${observeweb.baseDirectory}/observeweb-log4j.conf + description: observeweb.log4jConfigurationFile.description + final: true + key: observeweb.log4jConfigurationFile + type: file +- !option + name: databasesConfigurationFile + defaultValue: ${observeweb.baseDirectory}/databases.yml + description: observeweb.databasesConfigurationFile.description + final: true + key: observeweb.databasesConfigurationFile + type: file +- !option + name: usersConfigurationFile + defaultValue: ${observeweb.baseDirectory}/users.yml + description: observeweb.usersConfigurationFile.description + final: true + key: observeweb.usersConfigurationFile + type: file +- !option + name: sessionExpirationDelay + defaultValue: 60 + description: observeweb.sessionExpirationDelay.description + final: true + key: observeweb.sessionExpirationDelay + type: int +- !option + name: sessionMaximumSize + defaultValue: 10000 + description: observeweb.sessionMaximumSize.description + final: true + key: observeweb.sessionMaximumSize + type: int diff --git a/application-web-configuration/src/main/java/fr/ird/observe/application/web/configuration/ObserveWebApplicationConfiguration.java b/application-web-configuration/src/main/java/fr/ird/observe/application/web/configuration/ObserveWebApplicationConfig.java similarity index 77% rename from application-web-configuration/src/main/java/fr/ird/observe/application/web/configuration/ObserveWebApplicationConfiguration.java rename to application-web-configuration/src/main/java/fr/ird/observe/application/web/configuration/ObserveWebApplicationConfig.java index 26176ef..8c22786 100644 --- a/application-web-configuration/src/main/java/fr/ird/observe/application/web/configuration/ObserveWebApplicationConfiguration.java +++ b/application-web-configuration/src/main/java/fr/ird/observe/application/web/configuration/ObserveWebApplicationConfig.java @@ -23,6 +23,7 @@ package fr.ird.observe.application.web.configuration; */ import com.google.common.base.Charsets; +import com.google.common.collect.ImmutableList; import com.google.common.io.CharSource; import com.google.common.io.Resources; import fr.ird.observe.util.ObserveUtil; @@ -40,6 +41,9 @@ import java.nio.charset.StandardCharsets; import java.nio.file.Files; import java.nio.file.Path; import java.nio.file.Paths; +import java.util.Arrays; +import java.util.Collections; +import java.util.List; import java.util.Properties; /** @@ -49,18 +53,18 @@ import java.util.Properties; * * @author Tony Chemit - chemit@codelutin.com */ -public class ObserveWebApplicationConfiguration extends GeneratedObserveWebApplicationConfiguration { +public class ObserveWebApplicationConfig extends GeneratedObserveWebApplicationConfig { /** Logger. */ - private static Log log = LogFactory.getLog(ObserveWebApplicationConfiguration.class); + private static Log log = LogFactory.getLog(ObserveWebApplicationConfig.class); protected static final String DEFAULT_OBSERVE_WEB_CONFIGURATION_FILENAME = "observeweb.conf"; - public ObserveWebApplicationConfiguration() { + public ObserveWebApplicationConfig() { this(DEFAULT_OBSERVE_WEB_CONFIGURATION_FILENAME); } - public ObserveWebApplicationConfiguration(String confFileName) { + public ObserveWebApplicationConfig(String confFileName) { ApplicationConfig delegate = get(); delegate.setEncoding(StandardCharsets.UTF_8.name()); delegate.setConfigFileName(confFileName); @@ -75,7 +79,7 @@ public class ObserveWebApplicationConfiguration extends GeneratedObserveWebAppli try { get().parse(args); } catch (ArgumentsParserException e) { - throw new ObserveWebApplicationConfigurationInitException("could not parse configuration", e); + throw new ObserveWebApplicationConfigInitException("could not parse configuration", e); } File baseDirectory = getBaseDirectory(); @@ -95,12 +99,12 @@ public class ObserveWebApplicationConfiguration extends GeneratedObserveWebAppli baseDirectory = Files.createTempDirectory("observeweb").toFile(); } catch (IOException e) { - throw new ObserveWebApplicationConfigurationInitException("could not create temporary basedir", e); + throw new ObserveWebApplicationConfigInitException("could not create temporary basedir", e); } if (log.isInfoEnabled()) { log.info("Dev mode detected, use temporary basedir: " + baseDirectory); } - get().setOption(ObserveWebApplicationConfigurationOption.BASE_DIRECTORY.getKey(), baseDirectory.getAbsolutePath()); + get().setOption(ObserveWebApplicationConfigOption.BASE_DIRECTORY.getKey(), baseDirectory.getAbsolutePath()); } if (log.isInfoEnabled()) { @@ -110,13 +114,13 @@ public class ObserveWebApplicationConfiguration extends GeneratedObserveWebAppli try { createDirectory(baseDirectory); } catch (IOException e) { - throw new ObserveWebApplicationConfigurationInitException("Impossible de créer le répertoire principal de l'application (" + baseDirectory + ")", e); + throw new ObserveWebApplicationConfigInitException("Impossible de créer le répertoire principal de l'application (" + baseDirectory + ")", e); } File temporaryDirectory = getTemporaryDirectory(); try { createDirectory(temporaryDirectory); } catch (IOException e) { - throw new ObserveWebApplicationConfigurationInitException("Impossible de créer le répertoire temporaire de l'application (" + temporaryDirectory + ")", e); + throw new ObserveWebApplicationConfigInitException("Impossible de créer le répertoire temporaire de l'application (" + temporaryDirectory + ")", e); } File databasesConfigurationFile = getDatabasesConfigurationFile(); @@ -130,7 +134,7 @@ public class ObserveWebApplicationConfiguration extends GeneratedObserveWebAppli CharSource charSource = Resources.asCharSource(getClass().getResource("/defaultDatabases.yml"), StandardCharsets.UTF_8); Files.write(databasesConfigurationFile.toPath(), charSource.readLines()); } catch (IOException e) { - throw new ObserveWebApplicationConfigurationInitException("Impossible de créer un fichier de configuration des bases", e); + throw new ObserveWebApplicationConfigInitException("Impossible de créer un fichier de configuration des bases", e); } } @@ -144,7 +148,7 @@ public class ObserveWebApplicationConfiguration extends GeneratedObserveWebAppli CharSource charSource = Resources.asCharSource(getClass().getResource("/defaultUsers.yml"), StandardCharsets.UTF_8); Files.write(usersConfigurationFile.toPath(), charSource.readLines()); } catch (IOException e) { - throw new ObserveWebApplicationConfigurationInitException("Impossible de créer un fichier de configuration des utilisateurs", e); + throw new ObserveWebApplicationConfigInitException("Impossible de créer un fichier de configuration des utilisateurs", e); } } @@ -159,7 +163,7 @@ public class ObserveWebApplicationConfiguration extends GeneratedObserveWebAppli CharSource charSource = Resources.asCharSource(getClass().getResource("/observeweb-log4j.conf"), Charsets.UTF_8); Files.write(log4jConfigurationFile.toPath(), charSource.readLines()); } catch (IOException e) { - throw new ObserveWebApplicationConfigurationInitException("Impossible de créer un fichier de log4j", e); + throw new ObserveWebApplicationConfigInitException("Impossible de créer un fichier de log4j", e); } } @@ -177,7 +181,7 @@ public class ObserveWebApplicationConfiguration extends GeneratedObserveWebAppli builder.append("\n=== Observe Web configuration ======================================================================================="); ApplicationConfig delegate = get(); builder.append(String.format("\n=== %1$-40s = %2$s", "Filename", delegate.getConfigFileName())); - for (ObserveWebApplicationConfigurationOption option : ObserveWebApplicationConfigurationOption.orderedByKeys()) { + for (ObserveWebApplicationConfigOption option : orderedByKey()) { builder.append(String.format("\n=== %1$-40s = %2$s", option.getKey(), delegate.getOption(option))); } builder.append("\n====================================================================================================================="); @@ -193,7 +197,7 @@ public class ObserveWebApplicationConfiguration extends GeneratedObserveWebAppli File logFile = getLog4jConfigurationFile(); if (!logFile.exists()) { - throw new ObserveWebApplicationConfigurationInitException("Le fichier de configuration des logs (" + logFile + ") n'existe pas"); + throw new ObserveWebApplicationConfigInitException("Le fichier de configuration des logs (" + logFile + ") n'existe pas"); } if (log.isInfoEnabled()) { @@ -209,17 +213,25 @@ public class ObserveWebApplicationConfiguration extends GeneratedObserveWebAppli finalLogConfigurationProperties = ObserveUtil.loadProperties(logConfigurationProperties, get()); } catch (Exception e) { - throw new ObserveWebApplicationConfigurationInitException("Impossible de charger le fichier de configuration des logs", e); + throw new ObserveWebApplicationConfigInitException("Impossible de charger le fichier de configuration des logs", e); } LogManager.resetConfiguration(); PropertyConfigurator.configure(finalLogConfigurationProperties); - log = LogFactory.getLog(ObserveWebApplicationConfiguration.class); + log = LogFactory.getLog(ObserveWebApplicationConfig.class); if (log.isInfoEnabled()) { log.info("Configuration des logs chargée depuis le fichier " + logFile); } } + + private ImmutableList<ObserveWebApplicationConfigOption> orderedByKey() { + + List<ObserveWebApplicationConfigOption> values = Arrays.asList(ObserveWebApplicationConfigOption.values()); + Collections.sort(values, (o1, o2) -> o1.getKey().compareTo(o2.getKey())); + return ImmutableList.copyOf(values); + + } } diff --git a/application-web-configuration/src/main/java/fr/ird/observe/application/web/configuration/ObserveWebApplicationConfigurationInitException.java b/application-web-configuration/src/main/java/fr/ird/observe/application/web/configuration/ObserveWebApplicationConfigInitException.java similarity index 80% rename from application-web-configuration/src/main/java/fr/ird/observe/application/web/configuration/ObserveWebApplicationConfigurationInitException.java rename to application-web-configuration/src/main/java/fr/ird/observe/application/web/configuration/ObserveWebApplicationConfigInitException.java index f877dc4..1c3ded7 100644 --- a/application-web-configuration/src/main/java/fr/ird/observe/application/web/configuration/ObserveWebApplicationConfigurationInitException.java +++ b/application-web-configuration/src/main/java/fr/ird/observe/application/web/configuration/ObserveWebApplicationConfigInitException.java @@ -27,15 +27,15 @@ package fr.ird.observe.application.web.configuration; * * @author Tony Chemit - chemit@codelutin.com */ -public class ObserveWebApplicationConfigurationInitException extends RuntimeException { +public class ObserveWebApplicationConfigInitException extends RuntimeException { private static final long serialVersionUID = 1L; - public ObserveWebApplicationConfigurationInitException(String message) { + public ObserveWebApplicationConfigInitException(String message) { super(message); } - public ObserveWebApplicationConfigurationInitException(String message, Throwable cause) { + public ObserveWebApplicationConfigInitException(String message, Throwable cause) { super(message, cause); } } diff --git a/application-web-configuration/src/main/java/fr/ird/observe/application/web/configuration/ObserveWebApplicationConfigurationOption.java b/application-web-configuration/src/main/java/fr/ird/observe/application/web/configuration/ObserveWebApplicationConfigurationOption.java deleted file mode 100644 index 696600e..0000000 --- a/application-web-configuration/src/main/java/fr/ird/observe/application/web/configuration/ObserveWebApplicationConfigurationOption.java +++ /dev/null @@ -1,131 +0,0 @@ -package fr.ird.observe.application.web.configuration; - -/* - * #%L - * ObServe :: Application Web - * %% - * Copyright (C) 2008 - 2016 IRD, Codelutin, Tony Chemit - * %% - * This program is free software: you can redistribute it and/or modify - * it under the terms of the GNU General Public License as - * published by the Free Software Foundation, either version 3 of the - * License, or (at your option) any later version. - * - * This program is distributed in the hope that it will be useful, - * but WITHOUT ANY WARRANTY; without even the implied warranty of - * MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the - * GNU General Public License for more details. - * - * You should have received a copy of the GNU General Public - * License along with this program. If not, see - * <http://www.gnu.org/licenses/gpl-3.0.html>. - * #L% - */ - -import com.google.common.collect.ImmutableList; -import com.google.common.collect.Lists; -import org.apache.commons.lang3.NotImplementedException; -import org.nuiton.config.ConfigOptionDef; -import org.nuiton.version.Version; - -import java.io.File; -import java.net.URL; -import java.util.Collections; -import java.util.List; - -import static org.nuiton.i18n.I18n.n; - -/** - * La configuration de l'application web. - * - * Created on 29/08/15. - * - * @author Tony Chemit - chemit@codelutin.com - */ -public enum ObserveWebApplicationConfigurationOption implements ConfigOptionDef { - - BUILD_VERSION(Version.class, "observeweb.build.version", n("observeweb.build.version.description"), ""), - BUILD_DATE(String.class, "observeweb.build.date", n("observeweb.build.date.description"), ""), - BUILD_NUMBER(String.class, "observeweb.build.number", n("observeweb.build.number.description"), ""), - ADMIN_API_KEY(String.class, "observeweb.adminApiKey", n("observeweb.adminApiKey.description"), "changeme"), - API_URL(URL.class, "observeweb.apiUrl", n("observeweb.apiUrl.description"), "http://localhost:8080/observeweb/api/v1"), - - MODEL_VERSION(Version.class, "observeweb.model.version", n("observe.model.version"), null), - - DEV_MODE(boolean.class, "observeweb.devMode", n("observeweb.devMode.description"), "true"), - BASE_DIRECTORY(File.class, "observeweb.baseDirectory", n("observeweb.baseDirectory.description"), "/var/local/observeweb"), - TEMPORARY_DIRECTORY(File.class, "observeweb.temporaryDirectory", n("observeweb.temporaryDirectory.description"), "${observeweb.baseDirectory}/temp"), - LOG4J_CONFIGURATION_FILE(File.class, "observeweb.log4jConfigurationFile", n("observeweb.log4jConfigurationFile.description"), "${observeweb.baseDirectory}/observeweb-log4j.conf"), - DATABASES_CONFIGURATION_FILE(File.class, "observeweb.databasesConfigurationFile", n("observeweb.databasesConfigurationFile.description"), "${observeweb.baseDirectory}/databases.yml"), - USERS_CONFIGURATION_FILE(File.class, "observeweb.usersConfigurationFile", n("observeweb.usersConfigurationFile.description"), "${observeweb.baseDirectory}/users.yml"), - SESSION_EXPIRATION_DELAY(int.class, "observeweb.sessionExpirationDelay", n("observeweb.sessionExpirationDelay.description"), "60" /* en minutes */), - SESSION_MAXIMUM_SIZE(int.class, "observeweb.sessionMaximumSize", n("observeweb.sessionMaximumSize.description"), "10000"); - - ObserveWebApplicationConfigurationOption(Class<?> type, String key, String description, String defaultValue) { - this.key = key; - this.description = description; - this.defaultValue = defaultValue; - this.type = type; - } - - private final String key; - - private final String description; - - private final String defaultValue; - - private final Class<?> type; - - @Override - public String getKey() { - return key; - } - - @Override - public Class<?> getType() { - return type; - } - - @Override - public String getDescription() { - return description; - } - - @Override - public String getDefaultValue() { - return defaultValue; - } - - @Override - public boolean isTransient() { - return false; - } - - @Override - public boolean isFinal() { - return true; - } - - @Override - public void setDefaultValue(String defaultValue) { - throw new NotImplementedException("Can't invoke setDefaultValue method"); - } - - @Override - public void setTransient(boolean isTransient) { - throw new NotImplementedException("Can't invoke setTransient method"); - } - - @Override - public void setFinal(boolean isFinal) { - throw new NotImplementedException("Can't invoke setFinal method"); - } - - public static ImmutableList<ObserveWebApplicationConfigurationOption> orderedByKeys() { - - List<ObserveWebApplicationConfigurationOption> values = Lists.newArrayList(values()); - Collections.sort(values, (o1, o2) -> o1.getKey().compareTo(o2.getKey())); - return ImmutableList.copyOf(values); - - } -} diff --git a/application-web-configuration/src/main/resources/i18n/application-web-configuration_en_GB.properties b/application-web-configuration/src/main/resources/i18n/application-web-configuration_en_GB.properties index 0ec7644..951f481 100644 --- a/application-web-configuration/src/main/resources/i18n/application-web-configuration_en_GB.properties +++ b/application-web-configuration/src/main/resources/i18n/application-web-configuration_en_GB.properties @@ -1,4 +1,4 @@ -ObserveWebApplicationConfiguration.description=ObServe Web configuration +ObserveWebApplicationConfig.description=ObServe Web configuration observe.model.version=Model version observeweb.adminApiKey.description=API Key to use the admin mode (You should change it). observeweb.apiUrl.description=REST API end point diff --git a/application-web-configuration/src/main/resources/i18n/application-web-configuration_es_ES.properties b/application-web-configuration/src/main/resources/i18n/application-web-configuration_es_ES.properties index 4a30f89..0566366 100644 --- a/application-web-configuration/src/main/resources/i18n/application-web-configuration_es_ES.properties +++ b/application-web-configuration/src/main/resources/i18n/application-web-configuration_es_ES.properties @@ -1,4 +1,4 @@ -ObserveWebApplicationConfiguration.description=Configuración de Observe web +ObserveWebApplicationConfig.description=Configuración de Observe web observe.model.version=Versión del modelo observeweb.adminApiKey.description=Admin API Key (A cambiar). observeweb.apiUrl.description=Url de la api rest diff --git a/application-web-configuration/src/main/resources/i18n/application-web-configuration_fr_FR.properties b/application-web-configuration/src/main/resources/i18n/application-web-configuration_fr_FR.properties index e1e100c..855a467 100644 --- a/application-web-configuration/src/main/resources/i18n/application-web-configuration_fr_FR.properties +++ b/application-web-configuration/src/main/resources/i18n/application-web-configuration_fr_FR.properties @@ -1,4 +1,4 @@ -ObserveWebApplicationConfiguration.description=Observe web Configuration +ObserveWebApplicationConfig.description=Observe web Configuration observe.model.version=Version du modèle observeweb.adminApiKey.description=Admin API Key (À changer). observeweb.apiUrl.description=Url de l'api rest diff --git a/application-web/src/main/java/fr/ird/observe/application/web/ObserveWebApplicationContext.java b/application-web/src/main/java/fr/ird/observe/application/web/ObserveWebApplicationContext.java index eda7dd8..c534433 100644 --- a/application-web/src/main/java/fr/ird/observe/application/web/ObserveWebApplicationContext.java +++ b/application-web/src/main/java/fr/ird/observe/application/web/ObserveWebApplicationContext.java @@ -23,7 +23,7 @@ package fr.ird.observe.application.web; */ import com.google.common.base.Preconditions; -import fr.ird.observe.application.web.configuration.ObserveWebApplicationConfiguration; +import fr.ird.observe.application.web.configuration.ObserveWebApplicationConfig; import fr.ird.observe.application.web.configuration.db.InvalidObserveWebDatabaseException; import fr.ird.observe.application.web.configuration.db.InvalidObserveWebDatabaseRoleException; import fr.ird.observe.application.web.configuration.db.InvalidObserveWebDatabasesException; @@ -60,7 +60,7 @@ public class ObserveWebApplicationContext implements Closeable { protected ObserveDtoGsonSupplier gsonSupplier; - protected ObserveWebApplicationConfiguration applicationConfiguration; + protected ObserveWebApplicationConfig applicationConfiguration; protected ObserveServiceFactory mainServiceFactory; @@ -86,7 +86,7 @@ public class ObserveWebApplicationContext implements Closeable { public void init() throws InvalidObserveWebDatabaseException, InvalidObserveWebDatabasesException, InvalidObserveWebDatabaseRoleException, InvalidObserveWebUserPermissionException, InvalidObserveWebUsersException, InvalidObserveWebUserException { // init configuration - applicationConfiguration = new ObserveWebApplicationConfiguration(); + applicationConfiguration = new ObserveWebApplicationConfig(); applicationConfiguration.init(); // init databases @@ -144,7 +144,7 @@ public class ObserveWebApplicationContext implements Closeable { return gsonSupplier; } - public ObserveWebApplicationConfiguration getApplicationConfiguration() { + public ObserveWebApplicationConfig getApplicationConfiguration() { return applicationConfiguration; } diff --git a/application-web/src/main/java/fr/ird/observe/application/web/controller/ObserveWebMotionController.java b/application-web/src/main/java/fr/ird/observe/application/web/controller/ObserveWebMotionController.java index 0758c87..24eac3a 100644 --- a/application-web/src/main/java/fr/ird/observe/application/web/controller/ObserveWebMotionController.java +++ b/application-web/src/main/java/fr/ird/observe/application/web/controller/ObserveWebMotionController.java @@ -23,7 +23,7 @@ package fr.ird.observe.application.web.controller; */ import fr.ird.observe.application.web.ObserveWebApplicationContext; -import fr.ird.observe.application.web.configuration.ObserveWebApplicationConfiguration; +import fr.ird.observe.application.web.configuration.ObserveWebApplicationConfig; import fr.ird.observe.application.web.request.ObserveWebRequestContext; import fr.ird.observe.application.web.security.ObserveWebSecurityApplicationContext; import org.debux.webmotion.server.WebMotionController; @@ -41,7 +41,7 @@ public abstract class ObserveWebMotionController extends WebMotionController { return getApplicationContext().getSecurityApplicationContext(); } - protected ObserveWebApplicationConfiguration getApplicationConfiguration() { + protected ObserveWebApplicationConfig getApplicationConfiguration() { return getApplicationContext().getApplicationConfiguration(); } diff --git a/application-web/src/main/java/fr/ird/observe/application/web/controller/v1/PingServiceController.java b/application-web/src/main/java/fr/ird/observe/application/web/controller/v1/PingServiceController.java index a57d733..26a980f 100644 --- a/application-web/src/main/java/fr/ird/observe/application/web/controller/v1/PingServiceController.java +++ b/application-web/src/main/java/fr/ird/observe/application/web/controller/v1/PingServiceController.java @@ -22,7 +22,7 @@ package fr.ird.observe.application.web.controller.v1; * #L% */ -import fr.ird.observe.application.web.configuration.ObserveWebApplicationConfiguration; +import fr.ird.observe.application.web.configuration.ObserveWebApplicationConfig; import fr.ird.observe.application.web.controller.ObserveWebMotionController; import fr.ird.observe.services.service.PingService; import org.nuiton.version.Version; @@ -36,7 +36,7 @@ public class PingServiceController extends ObserveWebMotionController implements public Version ping() { - ObserveWebApplicationConfiguration configuration = getApplicationConfiguration(); + ObserveWebApplicationConfig configuration = getApplicationConfiguration(); return configuration.getModelVersion(); } diff --git a/application-web/src/main/java/fr/ird/observe/application/web/security/ObserveWebSecurityApplicationContext.java b/application-web/src/main/java/fr/ird/observe/application/web/security/ObserveWebSecurityApplicationContext.java index 8223792..f20d592 100644 --- a/application-web/src/main/java/fr/ird/observe/application/web/security/ObserveWebSecurityApplicationContext.java +++ b/application-web/src/main/java/fr/ird/observe/application/web/security/ObserveWebSecurityApplicationContext.java @@ -25,7 +25,7 @@ package fr.ird.observe.application.web.security; import com.google.common.base.Preconditions; import com.google.common.base.Strings; import com.google.common.collect.ImmutableMap; -import fr.ird.observe.application.web.configuration.ObserveWebApplicationConfiguration; +import fr.ird.observe.application.web.configuration.ObserveWebApplicationConfig; import fr.ird.observe.application.web.configuration.db.ObserveWebDatabase; import fr.ird.observe.application.web.configuration.db.ObserveWebDatabaseRole; import fr.ird.observe.application.web.configuration.db.ObserveWebDatabases; @@ -89,7 +89,7 @@ public class ObserveWebSecurityApplicationContext implements Closeable { protected ObserveWebUsers<?> users; - public ObserveWebSecurityApplicationContext(ObserveWebApplicationConfiguration configuration) { + public ObserveWebSecurityApplicationContext(ObserveWebApplicationConfig configuration) { this.authenticateCache = new ObserveWebSecurityAuthenticationTokenCache( configuration.getSessionMaximumSize(), configuration.getSessionExpirationDelay() diff --git a/application-web/src/test/java/fr/ird/observe/application/web/configuration/db/ObserveWebDatabasesHelperTest.java b/application-web/src/test/java/fr/ird/observe/application/web/configuration/db/ObserveWebDatabasesHelperTest.java index 3b0859f..e30a7f8 100644 --- a/application-web/src/test/java/fr/ird/observe/application/web/configuration/db/ObserveWebDatabasesHelperTest.java +++ b/application-web/src/test/java/fr/ird/observe/application/web/configuration/db/ObserveWebDatabasesHelperTest.java @@ -25,7 +25,7 @@ package fr.ird.observe.application.web.configuration.db; import com.google.common.base.Charsets; import com.google.common.collect.Iterables; import com.google.common.io.Files; -import fr.ird.observe.application.web.configuration.ObserveWebApplicationConfiguration; +import fr.ird.observe.application.web.configuration.ObserveWebApplicationConfig; import fr.ird.observe.application.web.configuration.db.impl.ObserveWebDatabaseBean; import fr.ird.observe.application.web.configuration.db.impl.ObserveWebDatabaseImmutable; import fr.ird.observe.application.web.configuration.db.impl.ObserveWebDatabaseRoleBean; @@ -75,13 +75,13 @@ public class ObserveWebDatabasesHelperTest { " password: passwordReferentiel\n" + " url: jdbc:postgresql://localhost:5432/test\n"; - protected ObserveWebApplicationConfiguration configuration; + protected ObserveWebApplicationConfig configuration; protected ObserveWebDatabasesHelper observeWebDatabasesHelper; protected File databasesConfigurationFile; - public static File loadDatabasesConfigurationFileMock(ObserveWebApplicationConfiguration configuration) throws IOException { + public static File loadDatabasesConfigurationFileMock(ObserveWebApplicationConfig configuration) throws IOException { File databasesConfigurationFile = configuration.getDatabasesConfigurationFile(); Files.write(FILE_CONTENT, databasesConfigurationFile, Charsets.UTF_8); return databasesConfigurationFile; @@ -89,7 +89,7 @@ public class ObserveWebDatabasesHelperTest { @Before public void setUp() { - configuration = new ObserveWebApplicationConfiguration("observeweb-test.conf"); + configuration = new ObserveWebApplicationConfig("observeweb-test.conf"); configuration.init(); observeWebDatabasesHelper = new ObserveWebDatabasesHelper(); databasesConfigurationFile = configuration.getDatabasesConfigurationFile(); diff --git a/application-web/src/test/java/fr/ird/observe/application/web/configuration/user/ObserveWebUsersHelperTest.java b/application-web/src/test/java/fr/ird/observe/application/web/configuration/user/ObserveWebUsersHelperTest.java index d270e3b..f9476e8 100644 --- a/application-web/src/test/java/fr/ird/observe/application/web/configuration/user/ObserveWebUsersHelperTest.java +++ b/application-web/src/test/java/fr/ird/observe/application/web/configuration/user/ObserveWebUsersHelperTest.java @@ -25,7 +25,7 @@ package fr.ird.observe.application.web.configuration.user; import com.google.common.base.Charsets; import com.google.common.collect.Iterables; import com.google.common.io.Files; -import fr.ird.observe.application.web.configuration.ObserveWebApplicationConfiguration; +import fr.ird.observe.application.web.configuration.ObserveWebApplicationConfig; import fr.ird.observe.application.web.configuration.db.ObserveWebDatabasesHelper; import fr.ird.observe.application.web.configuration.db.ObserveWebDatabasesHelperTest; import fr.ird.observe.application.web.configuration.db.impl.ObserveWebDatabasesImmutable; @@ -66,7 +66,7 @@ public class ObserveWebUsersHelperTest { " - database: test\n" + " role: referentiel\n"; - protected ObserveWebApplicationConfiguration configuration; + protected ObserveWebApplicationConfig configuration; protected ObserveWebUsersHelper observeWebUsersHelper; @@ -74,7 +74,7 @@ public class ObserveWebUsersHelperTest { @Before public void setUp() throws Exception { - configuration = new ObserveWebApplicationConfiguration("observeweb-test.conf"); + configuration = new ObserveWebApplicationConfig("observeweb-test.conf"); configuration.init(); observeWebUsersHelper = new ObserveWebUsersHelper(); usersConfigurationFile = configuration.getUsersConfigurationFile(); diff --git a/pom.xml b/pom.xml index b7a389e..24440bd 100644 --- a/pom.xml +++ b/pom.xml @@ -190,6 +190,9 @@ <i18n.checkBundle>true</i18n.checkBundle> <i18n.showEmpty>true</i18n.showEmpty> + <!--config configuration--> + <config.useNuitonI18n>true</config.useNuitonI18n> + <!-- Site configuration --> <locales>fr</locales> <siteSourcesType>rst</siteSourcesType> -- To stop receiving notification emails like this one, please contact codelutin.com SCM administrator <admin+scm@codelutin.com>.