branch develop updated (83dbe28 -> a956d0f)
This is an automated email from the git hooks/post-receive script. New change to branch develop in repository observe. See https://gitlab.nuiton.org/codelutin/observe.git from 83dbe28 Utilisation dernière api jaxx pour le reset du quadrant (See #8326) new e662650 Ajout de la configuration (See #8541) new 4e0cb15 Mise à jour des validateurs (See #8541) new a956d0f [VALIDATION] Remettre en route le contrôle des position avec possibilité de le désactiver (Fixes #8541 ) Merge branch 'feature/8541' 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 a956d0f0c4b4835691ff65ee945940416173b293 Merge: 83dbe28 4e0cb15 Author: Tony CHEMIT <chemit@codelutin.com> Date: Wed Sep 14 21:36:59 2016 +0200 [VALIDATION] Remettre en route le contrôle des position avec possibilité de le désactiver (Fixes #8541 ) Merge branch 'feature/8541' into develop commit 4e0cb1572c664f0d3f957c1cc18a787728a3827a Author: Tony CHEMIT <chemit@codelutin.com> Date: Wed Sep 14 21:36:05 2016 +0200 Mise à jour des validateurs (See #8541) commit e66265052f83b293a74fc935b1bd506c8294f439 Author: Tony CHEMIT <chemit@codelutin.com> Date: Wed Sep 14 21:36:01 2016 +0200 Ajout de la configuration (See #8541) Summary of changes: .../ObserveSwingApplicationConfig.java | 19 ++++++++++++ .../ObserveSwingApplicationConfigOption.java | 20 ++++++++++++ ...pplication-swing-configuration_en_GB.properties | 2 ++ ...pplication-swing-configuration_es_ES.properties | 2 ++ ...pplication-swing-configuration_fr_FR.properties | 2 ++ ...ActivitySeineDto-ui-create-error-validation.xml | 6 +++- ...tivitySeineDto-ui-create-warning-validation.xml | 6 ++-- ...ActivitySeineDto-ui-update-error-validation.xml | 5 +++ ...tivitySeineDto-ui-update-warning-validation.xml | 2 +- .../seine/RouteDto-ui-update-error-validation.xml | 6 ++++ .../RouteDto-ui-update-warning-validation.xml | 2 +- .../ActivitySimpleSpeedDtoValidator.java | 36 ++++++++++++++++++---- .../validators/ActivitySpeedDtoValidator.java | 30 ++++++++++++++++++ .../swing/ObserveSwingApplicationContext.java | 2 +- .../swing/ui/actions/ShowConfigAction.java | 13 ++++++++ .../swing/validation/ValidationContext.java | 13 +++++++- .../i18n/application-swing_en_GB.properties | 2 ++ .../i18n/application-swing_es_ES.properties | 2 ++ .../i18n/application-swing_fr_FR.properties | 2 ++ 19 files changed, 158 insertions(+), 14 deletions(-) -- To stop receiving notification emails like this one, please contact codelutin.com SCM administrator <admin+scm@codelutin.com>.
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 e66265052f83b293a74fc935b1bd506c8294f439 Author: Tony CHEMIT <chemit@codelutin.com> Date: Wed Sep 14 21:36:01 2016 +0200 Ajout de la configuration (See #8541) --- .../configuration/ObserveSwingApplicationConfig.java | 19 +++++++++++++++++++ .../ObserveSwingApplicationConfigOption.java | 20 ++++++++++++++++++++ .../application-swing-configuration_en_GB.properties | 2 ++ .../application-swing-configuration_es_ES.properties | 2 ++ .../application-swing-configuration_fr_FR.properties | 2 ++ .../swing/ui/actions/ShowConfigAction.java | 13 +++++++++++++ .../i18n/application-swing_en_GB.properties | 2 ++ .../i18n/application-swing_es_ES.properties | 2 ++ .../i18n/application-swing_fr_FR.properties | 2 ++ 9 files changed, 64 insertions(+) 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 7a74adc..e97b6b3 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 @@ -158,6 +158,9 @@ public class ObserveSwingApplicationConfig extends ApplicationConfig { static final String PROPERTY_TREE_OPEN_NODES = "treeOpenNodes"; + static final String PROPERTY_VALIDATION_SPEED_ENABLE = "validationSpeedEnable"; + static final String PROPERTY_VALIDATION_SPEED_MAX_VALUE = "validationSpeedMaxValue"; + /** Logger */ private static final Log log = LogFactory.getLog(ObserveSwingApplicationConfig.class); @@ -827,6 +830,22 @@ public class ObserveSwingApplicationConfig extends ApplicationConfig { setOption(ObserveSwingApplicationConfigOption.TREE_OPEN_NODES, joinIds); } + public boolean isValidationSpeedEnable() { + return getOptionAsBoolean(ObserveSwingApplicationConfigOption.VALIDATION_SPEED_ENABLE.key); + } + + public void setValidationSpeedEnable(boolean validationSpeedEnable) { + setOption(ObserveSwingApplicationConfigOption.VALIDATION_SPEED_ENABLE.key, String.valueOf(validationSpeedEnable)); + } + + public float getValidationSpeedMaxValue() { + return getOptionAsFloat(ObserveSwingApplicationConfigOption.VALIDATION_SPEED_MAX_VALUE.key); + } + + public void setValidationSpeedMaxValue(float validationSpeedMaxValue) { + setOption(ObserveSwingApplicationConfigOption.VALIDATION_SPEED_MAX_VALUE.key, String.valueOf(validationSpeedMaxValue)); + } + private String[] getUnsavables() { if (unsavables == null) { List<String> tmp = new ArrayList<>(); diff --git a/application-swing-configuration/src/main/java/fr/ird/observe/application/swing/configuration/ObserveSwingApplicationConfigOption.java b/application-swing-configuration/src/main/java/fr/ird/observe/application/swing/configuration/ObserveSwingApplicationConfigOption.java index 756fc02..84ad830 100644 --- a/application-swing-configuration/src/main/java/fr/ird/observe/application/swing/configuration/ObserveSwingApplicationConfigOption.java +++ b/application-swing-configuration/src/main/java/fr/ird/observe/application/swing/configuration/ObserveSwingApplicationConfigOption.java @@ -812,6 +812,26 @@ public enum ObserveSwingApplicationConfigOption implements ConfigOptionDef { String.class, false, false + ), + /** Pour activer la validation des vitesses d'activités) */ + VALIDATION_SPEED_ENABLE( + "validation." + ObserveSwingApplicationConfig.PROPERTY_VALIDATION_SPEED_ENABLE, + ObserveSwingApplicationConfig.PROPERTY_VALIDATION_SPEED_ENABLE, + n("observe.config.validation.speedEnable"), + "true", + Boolean.class, + false, + false + ), + /** La vitesse maximale à consider dans la validation des vitesses d'activités) */ + VALIDATION_SPEED_MAX_VALUE( + "validation." + ObserveSwingApplicationConfig.PROPERTY_VALIDATION_SPEED_MAX_VALUE, + ObserveSwingApplicationConfig.PROPERTY_VALIDATION_SPEED_MAX_VALUE, + n("observe.config.validation.speedMaxValue"), + "30.0", + Float.class, + false, + false ); public static final List<ObserveSwingApplicationConfigOption> MAP_LAYERS = ImmutableList.of(MAP_LAYER_1, MAP_LAYER_2, MAP_LAYER_3, diff --git a/application-swing-configuration/src/main/resources/i18n/application-swing-configuration_en_GB.properties b/application-swing-configuration/src/main/resources/i18n/application-swing-configuration_en_GB.properties index ad1605c..ae486f4 100644 --- a/application-swing-configuration/src/main/resources/i18n/application-swing-configuration_en_GB.properties +++ b/application-swing-configuration/src/main/resources/i18n/application-swing-configuration_en_GB.properties @@ -78,6 +78,8 @@ observe.config.ui.showNumberEditorButton=Flag sets to true to show button to inv observe.config.ui.showTimeEditorSlider=Show timer slider observe.config.ui.storeRemoteStorage=Flag sets to true to store in config a remote connexion (except passwords) observe.config.ui.treeOpenNodes=Opened data from last session +observe.config.validation.speedEnable=Force validation of activities speed +observe.config.validation.speedMaxValue=Max speed value used in activities speed validation observe.message.save.configuration=Save configuration in file %1$s observe.model.version=Model version observe.runner.config.migrate.file=Le fichier de configuration %1$s a été déplacée de \n%2$s\nvers\n%3$s diff --git a/application-swing-configuration/src/main/resources/i18n/application-swing-configuration_es_ES.properties b/application-swing-configuration/src/main/resources/i18n/application-swing-configuration_es_ES.properties index 881c3bb..4b13684 100644 --- a/application-swing-configuration/src/main/resources/i18n/application-swing-configuration_es_ES.properties +++ b/application-swing-configuration/src/main/resources/i18n/application-swing-configuration_es_ES.properties @@ -78,6 +78,8 @@ observe.config.ui.showNumberEditorButton=Para mostrar el botón que permite usar observe.config.ui.showTimeEditorSlider=Para mostrar la regla de edición de las horas observe.config.ui.storeRemoteStorage=Para activar la copia de seguridad de la configuración de la fuente de datos remota observe.config.ui.treeOpenNodes=Nudos abiertos del arbol abiertos cuando se cerró la base por última vez +observe.config.validation.speedEnable=Force validation of activities speedTODO +observe.config.validation.speedMaxValue=Max speed value used in activities speed validationTODO observe.message.save.configuration=Guardar la configuración en el archivo %1$s observe.model.version=Versión del modelo de datos observe.runner.config.migrate.file=El fichero de configuración %1$s ha sido reemplazado por \n%2$s\nhacia\n%3$s diff --git a/application-swing-configuration/src/main/resources/i18n/application-swing-configuration_fr_FR.properties b/application-swing-configuration/src/main/resources/i18n/application-swing-configuration_fr_FR.properties index fed7bdb..029e34f 100644 --- a/application-swing-configuration/src/main/resources/i18n/application-swing-configuration_fr_FR.properties +++ b/application-swing-configuration/src/main/resources/i18n/application-swing-configuration_fr_FR.properties @@ -78,6 +78,8 @@ observe.config.ui.showNumberEditorButton=Pour afficher le bouton qui permet d'ut observe.config.ui.showTimeEditorSlider=Pour afficher la réglette d'édition des heures observe.config.ui.storeRemoteStorage=Pour activer la sauvegarde de la configuration de la source distante observe.config.ui.treeOpenNodes=Noeuds de l'arbre ouverts lors de la dernière fermeture de la base +observe.config.validation.speedEnable=Forcer la validation des vitesses d'activités +observe.config.validation.speedMaxValue=Vitesse maximale autorisée dans le contrôle des vitesses d'activités observe.message.save.configuration=Sauvegarde de la configuration dans le fichier %1$s observe.model.version=Version du modèle de données observe.runner.config.migrate.file=Le fichier de configuration %1$s a été déplacée de \n%2$s\nvers\n%3$s diff --git a/application-swing/src/main/java/fr/ird/observe/application/swing/ui/actions/ShowConfigAction.java b/application-swing/src/main/java/fr/ird/observe/application/swing/ui/actions/ShowConfigAction.java index bdb4d65..b9b28af 100644 --- a/application-swing/src/main/java/fr/ird/observe/application/swing/ui/actions/ShowConfigAction.java +++ b/application-swing/src/main/java/fr/ird/observe/application/swing/ui/actions/ShowConfigAction.java @@ -178,6 +178,9 @@ public class ShowConfigAction extends AbstractAction { // others addOthersOptions(helper); + // validation + addValidationOptions(helper); + return helper; } @@ -334,6 +337,16 @@ public class ShowConfigAction extends AbstractAction { helper.addOption(ObserveSwingApplicationConfigOption.DB_LOCALE, ObserveUICallback.ui); } + protected void addValidationOptions(ObserveConfigUIBuilder helper) { + + helper.addCategory(n("observe.config.category.validation"), + n("observe.config.category.validation.description"), + ObserveUICallback.ui.name()); + + helper.addOption(ObserveSwingApplicationConfigOption.VALIDATION_SPEED_ENABLE); + helper.addOption(ObserveSwingApplicationConfigOption.VALIDATION_SPEED_MAX_VALUE); + + } protected class ObserveConfigUIBuilder extends ConfigUIHelper { diff --git a/application-swing/src/main/resources/i18n/application-swing_en_GB.properties b/application-swing/src/main/resources/i18n/application-swing_en_GB.properties index 43d5e82..788d8c1 100644 --- a/application-swing/src/main/resources/i18n/application-swing_en_GB.properties +++ b/application-swing/src/main/resources/i18n/application-swing_en_GB.properties @@ -539,6 +539,8 @@ observe.config.category.speciesList.seine=Species lists for seine observe.config.category.speciesList.seine.description=Species lists for seine observe.config.category.synchro=Admin Tasks observe.config.category.synchro.description=Administrations tasks to perform on data sources +observe.config.category.validation=Validation +observe.config.category.validation.description=Validation options observe.content.action.activity=Create a new activity observe.content.action.activity.tip=Create a new activity observe.content.action.closeAndCreate=Close and create diff --git a/application-swing/src/main/resources/i18n/application-swing_es_ES.properties b/application-swing/src/main/resources/i18n/application-swing_es_ES.properties index 1ed7dd7..a5c3a18 100644 --- a/application-swing/src/main/resources/i18n/application-swing_es_ES.properties +++ b/application-swing/src/main/resources/i18n/application-swing_es_ES.properties @@ -539,6 +539,8 @@ observe.config.category.speciesList.seine=Configuración de las listas de especi observe.config.category.speciesList.seine.description=Elegir las listas de especies a utilizar en los formularios de una marea de tipo pesca al cerco observe.config.category.synchro=Acciones sobre la base observe.config.category.synchro.description=Configuración de acciones sobre la base +observe.config.category.validation=Validation +observe.config.category.validation.description=Validation optionsTODO observe.content.action.activity=Crear una nueva actividad observe.content.action.activity.tip=Crear una nueva actividad para la ruta actual observe.content.action.closeAndCreate=Cerrar y crear diff --git a/application-swing/src/main/resources/i18n/application-swing_fr_FR.properties b/application-swing/src/main/resources/i18n/application-swing_fr_FR.properties index eed966c..9eeb70a 100644 --- a/application-swing/src/main/resources/i18n/application-swing_fr_FR.properties +++ b/application-swing/src/main/resources/i18n/application-swing_fr_FR.properties @@ -539,6 +539,8 @@ observe.config.category.speciesList.seine=Configuration des listes d'espèces (S observe.config.category.speciesList.seine.description=Choisir les listes d'espèces à utiliser dans les formulaire d'une marée de type senne observe.config.category.synchro=Actions sur base observe.config.category.synchro.description=Configuration actions sur base +observe.config.category.validation=Validation +observe.config.category.validation.description=Paramétrage de la validation observe.content.action.activity=Créer une nouvelle activité observe.content.action.activity.tip=Créer une nouvelle activité pour la route courante observe.content.action.closeAndCreate=Clôturer et créer -- To stop receiving notification emails like this one, please contact codelutin.com SCM administrator <admin+scm@codelutin.com>.
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 4e0cb1572c664f0d3f957c1cc18a787728a3827a Author: Tony CHEMIT <chemit@codelutin.com> Date: Wed Sep 14 21:36:05 2016 +0200 Mise à jour des validateurs (See #8541) --- ...ActivitySeineDto-ui-create-error-validation.xml | 6 +++- ...tivitySeineDto-ui-create-warning-validation.xml | 6 ++-- ...ActivitySeineDto-ui-update-error-validation.xml | 5 +++ ...tivitySeineDto-ui-update-warning-validation.xml | 2 +- .../seine/RouteDto-ui-update-error-validation.xml | 6 ++++ .../RouteDto-ui-update-warning-validation.xml | 2 +- .../ActivitySimpleSpeedDtoValidator.java | 36 ++++++++++++++++++---- .../validators/ActivitySpeedDtoValidator.java | 30 ++++++++++++++++++ .../swing/ObserveSwingApplicationContext.java | 2 +- .../swing/validation/ValidationContext.java | 13 +++++++- 10 files changed, 94 insertions(+), 14 deletions(-) diff --git a/application-swing-validation/src/main/resources/fr/ird/observe/services/dto/seine/ActivitySeineDto-ui-create-error-validation.xml b/application-swing-validation/src/main/resources/fr/ird/observe/services/dto/seine/ActivitySeineDto-ui-create-error-validation.xml index 574f959..38be3ad 100644 --- a/application-swing-validation/src/main/resources/fr/ird/observe/services/dto/seine/ActivitySeineDto-ui-create-error-validation.xml +++ b/application-swing-validation/src/main/resources/fr/ird/observe/services/dto/seine/ActivitySeineDto-ui-create-error-validation.xml @@ -161,8 +161,12 @@ <message>validator.ui.activity.duplicated.time</message> </field-validator> - </field> + <field-validator type="activitySimpleSpeedDto" short-circuit="true"> + <param name="enable">true</param> + <message>validator.ui.activity.invalid.speed##${foundSpeed}##${speed}</message> + </field-validator> + </field> <field name="quadrant"> diff --git a/application-swing-validation/src/main/resources/fr/ird/observe/services/dto/seine/ActivitySeineDto-ui-create-warning-validation.xml b/application-swing-validation/src/main/resources/fr/ird/observe/services/dto/seine/ActivitySeineDto-ui-create-warning-validation.xml index 0f7ba80..86f1867 100644 --- a/application-swing-validation/src/main/resources/fr/ird/observe/services/dto/seine/ActivitySeineDto-ui-create-warning-validation.xml +++ b/application-swing-validation/src/main/resources/fr/ird/observe/services/dto/seine/ActivitySeineDto-ui-create-warning-validation.xml @@ -29,7 +29,7 @@ <field name="time"> <field-validator type="activitySimpleSpeedDto" short-circuit="true"> - <param name="speed">30.0</param> + <param name="enable">false</param> <message>validator.ui.activity.invalid.speed##${foundSpeed}##${speed}</message> </field-validator> @@ -65,7 +65,7 @@ <field name="latitude"> <field-validator type="activitySimpleSpeedDto" short-circuit="true"> - <param name="speed">30.0</param> + <param name="enable">false</param> <message>validator.ui.activity.invalid.speed##${foundSpeed}##${speed}</message> </field-validator> @@ -74,7 +74,7 @@ <field name="longitude"> <field-validator type="activitySimpleSpeedDto" short-circuit="true"> - <param name="speed">30.0</param> + <param name="enable">false</param> <message>validator.ui.activity.invalid.speed##${foundSpeed}##${speed}</message> </field-validator> diff --git a/application-swing-validation/src/main/resources/fr/ird/observe/services/dto/seine/ActivitySeineDto-ui-update-error-validation.xml b/application-swing-validation/src/main/resources/fr/ird/observe/services/dto/seine/ActivitySeineDto-ui-update-error-validation.xml index 4cccc67..5c52b27 100644 --- a/application-swing-validation/src/main/resources/fr/ird/observe/services/dto/seine/ActivitySeineDto-ui-update-error-validation.xml +++ b/application-swing-validation/src/main/resources/fr/ird/observe/services/dto/seine/ActivitySeineDto-ui-update-error-validation.xml @@ -94,6 +94,11 @@ <message>validator.ui.activity.duplicated.time</message> </field-validator> + <field-validator type="activitySimpleSpeedDto" short-circuit="true"> + <param name="enable">true</param> + <message>validator.ui.activity.invalid.speed##${foundSpeed}##${speed}</message> + </field-validator> + </field> <field name="surroundingActivity"> diff --git a/application-swing-validation/src/main/resources/fr/ird/observe/services/dto/seine/ActivitySeineDto-ui-update-warning-validation.xml b/application-swing-validation/src/main/resources/fr/ird/observe/services/dto/seine/ActivitySeineDto-ui-update-warning-validation.xml index 3ebc9b4..f26bf1d 100644 --- a/application-swing-validation/src/main/resources/fr/ird/observe/services/dto/seine/ActivitySeineDto-ui-update-warning-validation.xml +++ b/application-swing-validation/src/main/resources/fr/ird/observe/services/dto/seine/ActivitySeineDto-ui-update-warning-validation.xml @@ -86,7 +86,7 @@ <field name="time"> <field-validator type="activitySimpleSpeedDto" short-circuit="true"> - <param name="speed">30.0</param> + <param name="enable">false</param> <message>validator.ui.activity.invalid.speed##${foundSpeed}##${speed}</message> </field-validator> diff --git a/application-swing-validation/src/main/resources/fr/ird/observe/services/dto/seine/RouteDto-ui-update-error-validation.xml b/application-swing-validation/src/main/resources/fr/ird/observe/services/dto/seine/RouteDto-ui-update-error-validation.xml index 2542822..09425bf 100644 --- a/application-swing-validation/src/main/resources/fr/ird/observe/services/dto/seine/RouteDto-ui-update-error-validation.xml +++ b/application-swing-validation/src/main/resources/fr/ird/observe/services/dto/seine/RouteDto-ui-update-error-validation.xml @@ -95,6 +95,12 @@ <message>validator.ui.route.invalid.quadrant##${index}##${currentTripSeine.ocean.getPropertyValue("code")}</message> </field-validator> + <!-- coherence vitesse des activites --> + <field-validator type="activitySpeedDto"> + <param name="enable">true</param> + <message>validator.ui.route.invalid.speed##${speed}##${invalidActivity}##${foundSpeed}</message> + </field-validator> + </field> <field name="comment"> diff --git a/application-swing-validation/src/main/resources/fr/ird/observe/services/dto/seine/RouteDto-ui-update-warning-validation.xml b/application-swing-validation/src/main/resources/fr/ird/observe/services/dto/seine/RouteDto-ui-update-warning-validation.xml index 879c4cc..b2e0093 100644 --- a/application-swing-validation/src/main/resources/fr/ird/observe/services/dto/seine/RouteDto-ui-update-warning-validation.xml +++ b/application-swing-validation/src/main/resources/fr/ird/observe/services/dto/seine/RouteDto-ui-update-warning-validation.xml @@ -107,7 +107,7 @@ <!-- coherence vitesse des activites --> <field-validator type="activitySpeedDto"> - <param name="speed">30.0</param> + <param name="enable">false</param> <message>validator.ui.route.invalid.speed##${speed}##${invalidActivity}##${foundSpeed}</message> </field-validator> diff --git a/application-swing-validators/src/main/java/fr/ird/observe/application/swing/validators/ActivitySimpleSpeedDtoValidator.java b/application-swing-validators/src/main/java/fr/ird/observe/application/swing/validators/ActivitySimpleSpeedDtoValidator.java index 9876753..52cf08c 100644 --- a/application-swing-validators/src/main/java/fr/ird/observe/application/swing/validators/ActivitySimpleSpeedDtoValidator.java +++ b/application-swing-validators/src/main/java/fr/ird/observe/application/swing/validators/ActivitySimpleSpeedDtoValidator.java @@ -71,6 +71,8 @@ public class ActivitySimpleSpeedDtoValidator extends FieldValidatorSupport { /** Logger. */ private static final Log log = LogFactory.getLog(ActivitySimpleSpeedDtoValidator.class); + private boolean enable; + private Float speed; public Float getSpeed() { @@ -81,19 +83,41 @@ public class ActivitySimpleSpeedDtoValidator extends FieldValidatorSupport { this.speed = speed; } + public boolean isEnable() { + return enable; + } + + public void setEnable(boolean enable) { + this.enable = enable; + } + @Override public void validate(Object object) throws ValidationException { - if (speed == null) { - throw new ValidationException("le parametre speed est obligatoire"); - } - if (object == null) { // pas d'objet, donc rien a faire return; } + Boolean enable = (Boolean) getFieldValue("validationSpeedEnable", object); + if (enable != null) { + + if (this.enable != enable) { + + log.info("Skip speed validation"); + return; + } + + } + + // on recherche dans la stack une valeur par default + speed = (Float) getFieldValue("validationSpeedMaxValue", object); + + if (speed == null) { + throw new ValidationException("le parametre speed est obligatoire"); + } + ActivitySeineDto activity = (ActivitySeineDto) object; if (activity.getTime() == null) { @@ -107,7 +131,7 @@ public class ActivitySimpleSpeedDtoValidator extends FieldValidatorSupport { if (activity.getLatitude() == null || - activity.getLongitude() == null) { + activity.getLongitude() == null) { // pas de position, on ne peut pas valider if (log.isDebugEnabled()) { @@ -130,7 +154,7 @@ public class ActivitySimpleSpeedDtoValidator extends FieldValidatorSupport { } if (previousActivity.getLatitude() == null || - previousActivity.getLongitude() == null) { + previousActivity.getLongitude() == null) { // pas de position, on ne peut pas valider if (log.isDebugEnabled()) { diff --git a/application-swing-validators/src/main/java/fr/ird/observe/application/swing/validators/ActivitySpeedDtoValidator.java b/application-swing-validators/src/main/java/fr/ird/observe/application/swing/validators/ActivitySpeedDtoValidator.java index 6fdcade..c7a8c62 100644 --- a/application-swing-validators/src/main/java/fr/ird/observe/application/swing/validators/ActivitySpeedDtoValidator.java +++ b/application-swing-validators/src/main/java/fr/ird/observe/application/swing/validators/ActivitySpeedDtoValidator.java @@ -73,6 +73,8 @@ public class ActivitySpeedDtoValidator extends FieldValidatorSupport { private CollectionFieldExpressionValidator delegate; + private boolean enable; + private Float speed; public Float getSpeed() { @@ -83,6 +85,14 @@ public class ActivitySpeedDtoValidator extends FieldValidatorSupport { this.speed = speed; } + public boolean isEnable() { + return enable; + } + + public void setEnable(boolean enable) { + this.enable = enable; + } + protected String invalidActivity; public String getInvalidActivity() { @@ -198,6 +208,26 @@ public class ActivitySpeedDtoValidator extends FieldValidatorSupport { @Override public void validate(Object object) throws ValidationException { + if (object == null) { + + // pas d'objet, donc rien a faire + return; + } + + Boolean enable = (Boolean) getFieldValue("validationSpeedEnable", object); + if (enable != null) { + + if (this.enable != enable) { + + log.info("Skip speed validation"); + return; + } + + } + + // on recherche dans la stack une valeur par default + speed = (Float) getFieldValue("validationSpeedMaxValue", object); + if (speed == null) { throw new ValidationException("le parametre speed est obligatoire"); } diff --git a/application-swing/src/main/java/fr/ird/observe/application/swing/ObserveSwingApplicationContext.java b/application-swing/src/main/java/fr/ird/observe/application/swing/ObserveSwingApplicationContext.java index 6c05f34..66ad919 100644 --- a/application-swing/src/main/java/fr/ird/observe/application/swing/ObserveSwingApplicationContext.java +++ b/application-swing/src/main/java/fr/ird/observe/application/swing/ObserveSwingApplicationContext.java @@ -209,7 +209,7 @@ public class ObserveSwingApplicationContext extends DefaultApplicationContext im TEXT_GENERATOR.set(new ObserveTextGenerator(config)); DATA_CONTEXT.set(new DataContext()); OPEN_DATA_MANAGER.set(new ObserveOpenDataManager(getDataContext())); - VALIDATION_CONTEXT.set(new ValidationContext(getDataContext())); + VALIDATION_CONTEXT.set(new ValidationContext(config, getDataContext())); VALIDATORS.set(Lists.newArrayList(ValidateServiceUtils.getValidators())); SERVICE_MAIN_FACTORY.set(ObserveServiceMainFactory.get()); referenceBinderEngine = new ReferenceBinderEngineSupplier().get(); diff --git a/application-swing/src/main/java/fr/ird/observe/application/swing/validation/ValidationContext.java b/application-swing/src/main/java/fr/ird/observe/application/swing/validation/ValidationContext.java index 0d4af1c..3d2f41a 100644 --- a/application-swing/src/main/java/fr/ird/observe/application/swing/validation/ValidationContext.java +++ b/application-swing/src/main/java/fr/ird/observe/application/swing/validation/ValidationContext.java @@ -23,6 +23,7 @@ package fr.ird.observe.application.swing.validation; import fr.ird.observe.application.swing.ObserveOpenDataManager; import fr.ird.observe.application.swing.ObserveSwingApplicationContext; +import fr.ird.observe.application.swing.configuration.ObserveSwingApplicationConfig; import fr.ird.observe.application.swing.decoration.DecoratorService; import fr.ird.observe.application.swing.db.DataContext; import fr.ird.observe.application.swing.db.ObserveSwingDataSource; @@ -146,6 +147,7 @@ public class ValidationContext { } }; + private final ObserveSwingApplicationConfig config; protected final DataContext dataContext; protected Map<String, Object> cache; @@ -164,7 +166,8 @@ public class ValidationContext { referentielList = null; } - public ValidationContext(DataContext dataContext) { + public ValidationContext(ObserveSwingApplicationConfig config, DataContext dataContext) { + this.config = config; this.dataContext = dataContext; } @@ -271,6 +274,14 @@ public class ValidationContext { this.referentielList = referentielList; } + public boolean isValidationSpeedEnable() { + return config.isValidationSpeedEnable(); + } + + public float getValidationSpeedMaxValue() { + return config.getValidationSpeedMaxValue(); + } + protected <D extends IdDto> D getDto(DtoSupplier<D> dtoSupplier, String id) { Object o = getCache().get(id); if (o != null) { -- To stop receiving notification emails like this one, please contact codelutin.com SCM administrator <admin+scm@codelutin.com>.
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 a956d0f0c4b4835691ff65ee945940416173b293 Merge: 83dbe28 4e0cb15 Author: Tony CHEMIT <chemit@codelutin.com> Date: Wed Sep 14 21:36:59 2016 +0200 [VALIDATION] Remettre en route le contrôle des position avec possibilité de le désactiver (Fixes #8541 ) Merge branch 'feature/8541' into develop .../ObserveSwingApplicationConfig.java | 19 ++++++++++++ .../ObserveSwingApplicationConfigOption.java | 20 ++++++++++++ ...pplication-swing-configuration_en_GB.properties | 2 ++ ...pplication-swing-configuration_es_ES.properties | 2 ++ ...pplication-swing-configuration_fr_FR.properties | 2 ++ ...ActivitySeineDto-ui-create-error-validation.xml | 6 +++- ...tivitySeineDto-ui-create-warning-validation.xml | 6 ++-- ...ActivitySeineDto-ui-update-error-validation.xml | 5 +++ ...tivitySeineDto-ui-update-warning-validation.xml | 2 +- .../seine/RouteDto-ui-update-error-validation.xml | 6 ++++ .../RouteDto-ui-update-warning-validation.xml | 2 +- .../ActivitySimpleSpeedDtoValidator.java | 36 ++++++++++++++++++---- .../validators/ActivitySpeedDtoValidator.java | 30 ++++++++++++++++++ .../swing/ObserveSwingApplicationContext.java | 2 +- .../swing/ui/actions/ShowConfigAction.java | 13 ++++++++ .../swing/validation/ValidationContext.java | 13 +++++++- .../i18n/application-swing_en_GB.properties | 2 ++ .../i18n/application-swing_es_ES.properties | 2 ++ .../i18n/application-swing_fr_FR.properties | 2 ++ 19 files changed, 158 insertions(+), 14 deletions(-) -- To stop receiving notification emails like this one, please contact codelutin.com SCM administrator <admin+scm@codelutin.com>.
participants (1)
-
codelutin.com scm