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 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>.
participants (1)
-
codelutin.com scm