mailman.cloud.codelutin.com
Sign In Sign Up
Manage this list Sign In Sign Up

Keyboard Shortcuts

Thread View

  • j: Next unread message
  • k: Previous unread message
  • j a: Jump to all threads
  • j l: Jump to MailingList overview

Observe-commits

Thread Start a new thread
Download
Threads by month
  • ----- 2026 -----
  • June
  • May
  • April
  • March
  • February
  • January
  • ----- 2025 -----
  • December
  • November
  • October
  • September
  • August
  • July
  • June
  • May
  • April
  • March
  • February
  • January
  • ----- 2024 -----
  • December
  • November
  • October
  • September
  • August
  • July
  • June
  • May
  • April
  • March
  • February
  • January
  • ----- 2023 -----
  • December
  • November
  • October
  • September
  • August
  • July
  • June
  • May
  • April
  • March
  • February
  • January
  • ----- 2022 -----
  • December
  • November
  • October
  • September
  • August
  • July
  • June
  • May
  • April
  • March
  • February
  • January
  • ----- 2021 -----
  • December
  • November
  • October
  • September
  • August
  • July
  • June
  • May
  • April
  • March
  • February
  • January
  • ----- 2020 -----
  • December
  • November
  • October
  • September
  • August
  • July
  • June
  • May
  • April
  • March
  • February
  • January
  • ----- 2019 -----
  • December
  • November
  • October
  • September
  • August
  • July
  • June
  • May
  • April
  • March
  • February
  • January
  • ----- 2018 -----
  • December
  • November
  • October
  • September
  • August
  • July
  • June
  • May
  • April
  • March
  • February
  • January
  • ----- 2017 -----
  • December
  • November
  • October
  • September
  • August
  • July
  • June
  • May
  • April
  • March
  • February
  • January
  • ----- 2016 -----
  • December
  • November
  • October
  • September
  • August
  • July
  • June
  • May
  • April
  • March
  • February
  • January
  • ----- 2015 -----
  • December
  • November
  • October
  • September
  • August
  • July
  • June
  • May
  • April
  • March
  • February
  • January
  • ----- 2014 -----
  • December
  • November
  • October
  • September
  • August
  • July
  • June
  • May
  • April
  • March
  • February
  • January
  • ----- 2013 -----
  • December
  • November
  • October
  • September
observe-commits@list.forge.codelutin.com

July 2020

  • 1 participants
  • 91 discussions
[Git][ultreiaio/ird-observe][develop] Integrates back toolkit since we won't use it anywhere else
by Tony CHEMIT 06 Jul '20

06 Jul '20
Tony CHEMIT pushed to branch develop at ultreiaio / ird-observe Commits: a563da03 by Tony Chemit at 2020-07-06T09:24:00+02:00 Integrates back toolkit since we won't use it anywhere else - - - - - 30 changed files: - client-configuration/pom.xml - client-core/pom.xml - client-datasource-actions/pom.xml - client-datasource-editor-api/pom.xml - client-datasource-editor-common/pom.xml - client-datasource-editor-ll/pom.xml - client-datasource-editor-ps/pom.xml - client-runner/pom.xml - + common-dto/.mvn/i18n/parse-java - + common-dto/.mvn/i18n/parse-java-enumerations - + common-dto/.mvn/pom.gitflow.develop - + common-dto/.mvn/pom.gitflow.master - + common-dto/.mvn/pom.organizationId - + common-dto/.mvn/pom.projectId - + common-dto/.mvn/pom.stageId - + common-dto/LICENSE.txt - + common-dto/README.md - + common-dto/pom.xml - + common-dto/src/license/THIRD-PARTY.properties - + common-dto/src/main/i18n/getters/java-enumeration.getter - + common-dto/src/main/i18n/getters/java.getter - + common-dto/src/main/java/fr/ird/observe/dto/AbstractObserveDto.java - + common-dto/src/main/java/fr/ird/observe/dto/CoordinateHelper.java - + common-dto/src/main/java/fr/ird/observe/dto/DtoAndReferenceAware.java - + common-dto/src/main/java/fr/ird/observe/dto/DtoToReference.java - + common-dto/src/main/java/fr/ird/observe/dto/GPSPoint.java - + common-dto/src/main/java/fr/ird/observe/dto/IdDto.java - + common-dto/src/main/java/fr/ird/observe/dto/ObserveDbRole.java - + common-dto/src/main/java/fr/ird/observe/dto/ObserveDto.java - + common-dto/src/main/java/fr/ird/observe/dto/ObserveUtil.java The diff was not included because it is too large. View it on GitLab: https://gitlab.com/ultreiaio/ird-observe/-/commit/a563da03e06c343b044c60729… -- View it on GitLab: https://gitlab.com/ultreiaio/ird-observe/-/commit/a563da03e06c343b044c60729… You're receiving this email because of your account on gitlab.com.
1 0
0 0
[Git][ultreiaio/ird-observe][develop-7.x] 2 commits: Integrates back toolkit since we won't use it anywhere else
by Tony CHEMIT 06 Jul '20

06 Jul '20
Tony CHEMIT pushed to branch develop-7.x at ultreiaio / ird-observe Commits: 302f5dd2 by Tony Chemit at 2020-07-06T08:50:22+02:00 Integrates back toolkit since we won't use it anywhere else - - - - - f2837cc6 by Tony Chemit at 2020-07-06T08:56:56+02:00 Clean license headers - - - - - 30 changed files: - client-configuration/pom.xml - client-configuration/src/main/resources/log4j2.xml - client-configuration/src/main/resources/observe-log4j2.xml - client-core/pom.xml - client-core/src/main/assembly/map.xml - client-core/src/main/java/fr/ird/observe/client/package.html - client-core/src/main/java/fr/ird/observe/client/ui/ObserveMainUI.jaxx - client-core/src/main/java/fr/ird/observe/client/ui/actions/content/ShowUniqueKeysAction.java - client-core/src/main/java/fr/ird/observe/client/ui/admin/AdminTabUI.jaxx - client-core/src/main/java/fr/ird/observe/client/ui/admin/AdminUI.jaxx - client-core/src/main/java/fr/ird/observe/client/ui/admin/config/ConfigUI.jaxx - client-core/src/main/java/fr/ird/observe/client/ui/admin/config/SelectDataUI.jaxx - client-core/src/main/java/fr/ird/observe/client/ui/admin/consolidate/ConsolidateUI.jaxx - client-core/src/main/java/fr/ird/observe/client/ui/admin/export/ExportUI.jaxx - client-core/src/main/java/fr/ird/observe/client/ui/admin/report/ReportConfigUI.jaxx - client-core/src/main/java/fr/ird/observe/client/ui/admin/report/ReportUI.jaxx - client-core/src/main/java/fr/ird/observe/client/ui/admin/save/SaveLocalUI.jaxx - client-core/src/main/java/fr/ird/observe/client/ui/admin/synchronize/referential/legacy/SynchronizeUI.jaxx - client-core/src/main/java/fr/ird/observe/client/ui/admin/synchronize/referential/ng/ReferentialReplaceUI.jaxx - client-core/src/main/java/fr/ird/observe/client/ui/admin/synchronize/referential/ng/ReferentialSynchroConfigUI.jaxx - client-core/src/main/java/fr/ird/observe/client/ui/admin/synchronize/referential/ng/tree/ReferentialSelectionTree.java - client-core/src/main/java/fr/ird/observe/client/ui/admin/synchronize/referential/ng/tree/ReferentialSelectionTreePane.jaxx - client-core/src/main/java/fr/ird/observe/client/ui/admin/synchronize/referential/ng/tree/ReferentialSelectionTreePane.jcss - client-core/src/main/java/fr/ird/observe/client/ui/admin/synchronize/referential/ng/tree/ReferentialSelectionTreePaneHandler.java - client-core/src/main/java/fr/ird/observe/client/ui/admin/synchronize/referential/ng/tree/actions/CollapseAll.java - client-core/src/main/java/fr/ird/observe/client/ui/admin/synchronize/referential/ng/tree/actions/ExpandAll.java - client-core/src/main/java/fr/ird/observe/client/ui/admin/synchronize/referential/ng/tree/actions/ReferentialSelectionTreePaneActionSupport.java - client-core/src/main/java/fr/ird/observe/client/ui/admin/synchronize/referential/ng/tree/actions/SelectAll.java - client-core/src/main/java/fr/ird/observe/client/ui/admin/synchronize/referential/ng/tree/actions/SelectUnselect.java - client-core/src/main/java/fr/ird/observe/client/ui/admin/synchronize/referential/ng/tree/actions/UnselectAll.java The diff was not included because it is too large. View it on GitLab: https://gitlab.com/ultreiaio/ird-observe/-/compare/0212a530e1f6c9a86713a9d2… -- View it on GitLab: https://gitlab.com/ultreiaio/ird-observe/-/compare/0212a530e1f6c9a86713a9d2… You're receiving this email because of your account on gitlab.com.
1 0
0 0
[Git][ultreiaio/ird-observe][develop] Revoir la gestion des validateurs taille-poids d'espèces - Closes #1573 (report v8)
by Tony CHEMIT 06 Jul '20

06 Jul '20
Tony CHEMIT pushed to branch develop at ultreiaio / ird-observe Commits: 757dd93a by Tony Chemit at 2020-07-06T08:53:15+02:00 Revoir la gestion des validateurs taille-poids d&#39;espèces - Closes #1573 (report v8) - - - - - 4 changed files: - services-validation/pom.xml - services-validation/src/main/java/fr/ird/observe/validation/validators/AbstractSpeciesFieldDtoValidator.java - services-validation/src/main/java/fr/ird/observe/validation/validators/SpeciesLengthFieldDtoValidator.java - services-validation/src/main/java/fr/ird/observe/validation/validators/SpeciesWeightFieldDtoValidator.java Changes: ===================================== services-validation/pom.xml ===================================== @@ -101,10 +101,6 @@ <groupId>org.apache.logging.log4j</groupId> <artifactId>log4j-api</artifactId> </dependency> - <dependency> - <groupId>org.apache.commons</groupId> - <artifactId>commons-lang3</artifactId> - </dependency> <dependency> <groupId>com.google.guava</groupId> ===================================== services-validation/src/main/java/fr/ird/observe/validation/validators/AbstractSpeciesFieldDtoValidator.java ===================================== @@ -27,9 +27,6 @@ import com.opensymphony.xwork2.validator.validators.FieldValidatorSupport; import fr.ird.observe.dto.referential.common.SpeciesDto; import fr.ird.observe.dto.referential.common.SpeciesReference; import io.ultreia.java4all.lang.Numbers; -import org.apache.commons.lang3.StringUtils; -import org.apache.logging.log4j.LogManager; -import org.apache.logging.log4j.Logger; import java.util.Objects; @@ -61,88 +58,56 @@ import java.util.Objects; */ @SuppressWarnings("unused") public abstract class AbstractSpeciesFieldDtoValidator extends FieldValidatorSupport { - - /** Logger. */ - private static final Logger log = LogManager.getLogger(AbstractSpeciesFieldDtoValidator.class); /** - * Une expression qui si elle est remplie doit être vérifié avant de faire - * la validation par borne, si l'expression n'est pas vérifiée, alors - * le test sur les borne n'est pas effectué. + * Optional expression to enable of not this validator. + * <p> + * If set to not {@code null}, then will be enable only if evaluation of thi expression is true. + * Otherwise will always try to validate. * + * @see #shouldValidateFromExpression(Object) * @since 2.3 */ protected String expression; + /** + * If set to not {@code null}, then will be enable only if {@link #validationLengthWeightEnable} is set the exact same value. + * Otherwise will always try to validate. + * + * @see #validationLengthWeightEnable + * @see #shouldValidateFromEnable(Object) + */ private Boolean enable; - /** le ratio a appliquer sur les bornes définies dans le référentiel */ + + /** + * Loaded from validation context. + * Permits to enable or not this validator. + * + * @see #enable + * @see #shouldValidateFromEnable(Object) + */ + private transient Boolean validationLengthWeightEnable; + + /** + * Ration to apply to range of species value. + */ private Float ratio; + /** + * Field name where to find species value. + */ private String speciesField = "species"; + /** + * Bound found from species + * + * @see SpeciesDto + */ private Bound bound; - private Bound boundWithRatio; - - private String getSpeciesField() { - return speciesField; - } - - public void setSpeciesField(String speciesField) { - this.speciesField = speciesField; - } - - public void setRatio(String ratio) { - this.ratio = Float.parseFloat(Objects.requireNonNull(ratio)); - } - - public void setExpression(String expression) { - this.expression = expression; - } - - public boolean isEnable() { - return enable; - } - - public void setEnable(String enable) { - this.enable = Boolean.parseBoolean(Objects.requireNonNull(enable)); - } - - protected abstract Float getBoundMin(SpeciesDto referentiel); - - protected abstract Float getBoundMax(SpeciesDto referentiel); - - public Bound getBound() { - return bound; - } - - private boolean shouldValidate(Object object) throws ValidationException { - - Boolean enable = (Boolean) getFieldValue("validationLengthWeightEnable", object); - if (enable != null && this.enable != null) { - - if (!Objects.equals(this.enable, enable)) { - - if (log.isDebugEnabled()) { - log.debug("Skip speed validation"); - } - return false; - } - - } + /** + * Computed bound with {@link #ratio} applied to {@link #bound}. + */ + private Bound computedBound; - Boolean answer = true; - if (StringUtils.isNotEmpty(expression)) { - try { - answer = (Boolean) getFieldValue(expression, object); - } catch (ValidationException e) { - throw e; - } catch (Exception e) { - // let this pass, but it will be logged right below - if (log.isErrorEnabled()) { - log.error("Could not get expression: " + expression); - } - answer = true; - } - } + protected abstract Float getBoundMin(SpeciesDto species); - return answer; - } + protected abstract Float getBoundMax(SpeciesDto species); @Override public void validate(Object object) throws ValidationException { @@ -156,9 +121,8 @@ public abstract class AbstractSpeciesFieldDtoValidator extends FieldValidatorSup throw new ValidationException("No parameter 'fieldName' filled"); } - String speciesFieldName = getSpeciesField(); - if (speciesFieldName == null) { - throw new ValidationException("No parameter 'speciesFieldName' filled"); + if (speciesField == null) { + throw new ValidationException("No parameter 'speciesField' filled"); } boolean shouldValidate = shouldValidate(object); @@ -167,54 +131,46 @@ public abstract class AbstractSpeciesFieldDtoValidator extends FieldValidatorSup return; } - // la donnee a valider + // data to validate Object value = getFieldValue(fieldName, object); Float data = value == null ? null : Float.valueOf(String.valueOf(value)); if (data == null) { - // la donnee a valider n'est pas définie + // no data found, can not validate + log.debug("No data found, skip validate."); return; } - if (log.isDebugEnabled()) { - log.debug("data to validate : " + data); - } + log.debug(String.format("data to validate : %s", data)); - SpeciesReference speciesRef = (SpeciesReference) getFieldValue(speciesFieldName, object); + SpeciesReference speciesRef = (SpeciesReference) getFieldValue(speciesField, object); if (speciesRef == null) { - // pas de species trouvée, on ne peut pas valider + // no species found, can not validate + log.debug("No species found, skip validate."); return; } - if (log.isDebugEnabled()) { - log.debug("Species to validate : " + speciesRef); - } + log.debug(String.format("Species to validate : %s", speciesRef)); SpeciesDto speciesDto = (SpeciesDto) stack.findValue("getSpecies(\"" + speciesRef.getId() + "\")"); bound = getBound(speciesDto); - if (log.isDebugEnabled()) { - log.debug("Species Bound to validate : " + bound); - } + log.debug(String.format("Species Bound to validate : %s", bound)); if (bound == null) { - // pas de donnée dans le référentiel acceptable + // no bound found, can not validate + log.debug("No species bound found, skip validate."); return; } - boundWithRatio = bound.applyRatio(ratio); - - if (log.isDebugEnabled()) { - log.debug("Bound : " + bound); - log.debug("Ratio to validate : " + ratio); - log.debug("Bound with ratio : " + boundWithRatio); - } + computedBound = bound.applyRatio(ratio); + log.debug(String.format("Bound with ratio : %s", computedBound)); - boolean valid = validateBound(data, boundWithRatio); + boolean valid = computedBound.validate(data); if (!valid) { @@ -222,61 +178,117 @@ public abstract class AbstractSpeciesFieldDtoValidator extends FieldValidatorSup } } + public void setSpeciesField(String speciesField) { + this.speciesField = speciesField; + } + + public void setRatio(String ratio) { + this.ratio = Float.parseFloat(Objects.requireNonNull(ratio)); + } + + public void setExpression(String expression) { + this.expression = expression; + } + + public void setEnable(String enable) { + this.enable = Boolean.parseBoolean(Objects.requireNonNull(enable)); + } + public Float getMin() { - return Numbers.roundThreeDigits(boundWithRatio.getMin()); + return computedBound == null ? null : Numbers.roundThreeDigits(computedBound.getMin()); } public Float getMax() { - return Numbers.roundThreeDigits(boundWithRatio.getMax()); + return computedBound == null ? null : Numbers.roundThreeDigits(computedBound.getMax()); } - private Bound getBound(SpeciesDto species) { + private Boolean getValidationLengthWeightEnable(Object object) throws ValidationException { + if (validationLengthWeightEnable == null) { + validationLengthWeightEnable = (Boolean) getFieldValue("validationLengthWeightEnable", object); + } + return validationLengthWeightEnable; + } - Float min = getBoundMin(species); - Float max = getBoundMax(species); + private boolean shouldValidate(Object object) throws ValidationException { + boolean shouldValidate = shouldValidateFromEnable(object); + if (!shouldValidate) { + log.debug("Skip speed validation from 'validationLengthWeightEnable'"); + } else { + shouldValidate = shouldValidateFromExpression(object); - if (min == null || min == 0 || max == null || max == 0) { - // l'une des deux borne n'est pas définie, on ne peut pas utiliser - // la données - return null; + if (!shouldValidate) { + log.debug("Skip speed validation from 'expression'"); + } } - return new Bound(min, max); + return shouldValidate; } - private boolean validateBound(Float value, Bound bound) { - if (value == null) { + private boolean shouldValidateFromEnable(Object object) throws ValidationException { + boolean answer = true; + if (this.enable != null) { + Boolean enable; + try { + enable = getValidationLengthWeightEnable(object); + } catch (ValidationException e) { + // let this pass, but it will be logged right below + log.error("Could not get expression: validationLengthWeightEnable", e); + throw e; + } + answer = Objects.equals(this.enable, enable); + } + return answer; + } - // valeur non définie - return true; + private boolean shouldValidateFromExpression(Object object) throws ValidationException { + boolean answer = true; + if (this.expression != null && !this.expression.isEmpty()) { + try { + Boolean answerObject = (Boolean) getFieldValue(expression, object); + answer = answerObject != null && answerObject; + } catch (ValidationException e) { + // let this pass, but it will be logged right below + log.error(String.format("Could not get expression: %s", expression), e); + throw e; + } } - boolean valid; + return answer; + } - float min = bound.getMin(); - float max = bound.getMax(); + private Bound getBound(SpeciesDto species) { + + Float min = getBoundMin(species); + Float max = getBoundMax(species); - valid = min <= value && value <= max; - return valid; + if (min == null || min == 0 || max == null || max == 0) { + // one of range is missing, can not use this bound + return null; + } + return new Bound(min, max); } public static class Bound { - private final Float min; + private final float min; - private final Float max; + private final float max; - Bound(Float min, Float max) { + Bound(float min, float max) { this.min = min; this.max = max; } - public Float getMin() { + public float getMin() { return min; } - public Float getMax() { + public float getMax() { return max; } + boolean validate(float value) { + return min <= value && value <= max; + } + Bound applyRatio(float ratio) { float delta = min / 100 * ratio; float min = this.min - delta; ===================================== services-validation/src/main/java/fr/ird/observe/validation/validators/SpeciesLengthFieldDtoValidator.java ===================================== @@ -33,13 +33,13 @@ import fr.ird.observe.dto.referential.common.SpeciesDto; public class SpeciesLengthFieldDtoValidator extends AbstractSpeciesFieldDtoValidator { @Override - protected Float getBoundMin(SpeciesDto referentiel) { - return referentiel.getMinLength(); + protected Float getBoundMin(SpeciesDto species) { + return species.getMinLength(); } @Override - protected Float getBoundMax(SpeciesDto referentiel) { - return referentiel.getMaxLength(); + protected Float getBoundMax(SpeciesDto species) { + return species.getMaxLength(); } @Override ===================================== services-validation/src/main/java/fr/ird/observe/validation/validators/SpeciesWeightFieldDtoValidator.java ===================================== @@ -33,13 +33,13 @@ import fr.ird.observe.dto.referential.common.SpeciesDto; public class SpeciesWeightFieldDtoValidator extends AbstractSpeciesFieldDtoValidator { @Override - protected Float getBoundMin(SpeciesDto referentiel) { - return referentiel.getMinWeight(); + protected Float getBoundMin(SpeciesDto species) { + return species.getMinWeight(); } @Override - protected Float getBoundMax(SpeciesDto referentiel) { - return referentiel.getMaxWeight(); + protected Float getBoundMax(SpeciesDto species) { + return species.getMaxWeight(); } @Override View it on GitLab: https://gitlab.com/ultreiaio/ird-observe/-/commit/757dd93a10d19e99f7984ad2a… -- View it on GitLab: https://gitlab.com/ultreiaio/ird-observe/-/commit/757dd93a10d19e99f7984ad2a… You're receiving this email because of your account on gitlab.com.
1 0
0 0
[Git][ultreiaio/ird-observe][develop-7.x] Revoir la gestion des validateurs taille-poids d'espèces - Closes #1573
by Tony CHEMIT 06 Jul '20

06 Jul '20
Tony CHEMIT pushed to branch develop-7.x at ultreiaio / ird-observe Commits: 0212a530 by Tony Chemit at 2020-07-06T08:11:04+02:00 Revoir la gestion des validateurs taille-poids d&#39;espèces - Closes #1573 - - - - - 3 changed files: - dto/src/main/java/fr/ird/observe/validation/validators/AbstractSpeciesFieldDtoValidator.java - dto/src/main/java/fr/ird/observe/validation/validators/SpeciesLengthFieldDtoValidator.java - dto/src/main/java/fr/ird/observe/validation/validators/SpeciesWeightFieldDtoValidator.java Changes: ===================================== dto/src/main/java/fr/ird/observe/validation/validators/AbstractSpeciesFieldDtoValidator.java ===================================== @@ -27,7 +27,6 @@ import com.opensymphony.xwork2.validator.validators.FieldValidatorSupport; import fr.ird.observe.dto.referential.SpeciesDto; import fr.ird.observe.dto.referential.SpeciesReference; import io.ultreia.java4all.lang.Numbers; -import org.apache.commons.lang3.StringUtils; import org.apache.logging.log4j.LogManager; import org.apache.logging.log4j.Logger; @@ -61,87 +60,57 @@ import java.util.Objects; */ public abstract class AbstractSpeciesFieldDtoValidator extends FieldValidatorSupport { - /** Logger. */ private static final Logger log = LogManager.getLogger(AbstractSpeciesFieldDtoValidator.class); /** - * Une expression qui si elle est remplie doit être vérifié avant de faire - * la validation par borne, si l'expression n'est pas vérifiée, alors - * le test sur les borne n'est pas effectué. + * Optional expression to enable of not this validator. + * <p> + * If set to not {@code null}, then will be enable only if evaluation of thi expression is true. + * Otherwise will always try to validate. * + * @see #shouldValidateFromExpression(Object) * @since 2.3 */ protected String expression; + /** + * If set to not {@code null}, then will be enable only if {@link #validationLengthWeightEnable} is set the exact same value. + * Otherwise will always try to validate. + * + * @see #validationLengthWeightEnable + * @see #shouldValidateFromEnable(Object) + */ private Boolean enable; - /** le ratio a appliquer sur les bornes définies dans le référentiel */ + + /** + * Loaded from validation context. + * Permits to enable or not this validator. + * + * @see #enable + * @see #shouldValidateFromEnable(Object) + */ + private transient Boolean validationLengthWeightEnable; + + /** + * Ration to apply to range of species value. + */ private Float ratio; + /** + * Field name where to find species value. + */ private String speciesField = "species"; + /** + * Bound found from species + * + * @see SpeciesDto + */ private Bound bound; - private Bound boundWithRatio; - - private String getSpeciesField() { - return speciesField; - } - - public void setSpeciesField(String speciesField) { - this.speciesField = speciesField; - } - - public void setRatio(String ratio) { - this.ratio = Float.parseFloat(Objects.requireNonNull(ratio)); - } - - public void setExpression(String expression) { - this.expression = expression; - } - - public boolean isEnable() { - return enable; - } - - public void setEnable(String enable) { - this.enable = Boolean.parseBoolean(Objects.requireNonNull(enable)); - } - - protected abstract Float getBoundMin(SpeciesDto referentiel); - - protected abstract Float getBoundMax(SpeciesDto referentiel); - - public Bound getBound() { - return bound; - } - - private boolean shouldValidate(Object object) throws ValidationException { - - Boolean enable = (Boolean) getFieldValue("validationLengthWeightEnable", object); - if (enable != null && this.enable != null) { - - if (!Objects.equals(this.enable, enable)) { - - if (log.isDebugEnabled()) { - log.debug("Skip speed validation"); - } - return false; - } + /** + * Computed bound with {@link #ratio} applied to {@link #bound}. + */ + private Bound computedBound; - } + protected abstract Float getBoundMin(SpeciesDto species); - Boolean answer = true; - if (StringUtils.isNotEmpty(expression)) { - try { - answer = (Boolean) getFieldValue(expression, object); - } catch (ValidationException e) { - throw e; - } catch (Exception e) { - // let this pass, but it will be logged right below - if (log.isErrorEnabled()) { - log.error("Could not get expression: " + expression); - } - answer = true; - } - } - - return answer; - } + protected abstract Float getBoundMax(SpeciesDto species); @Override public void validate(Object object) throws ValidationException { @@ -155,9 +124,8 @@ public abstract class AbstractSpeciesFieldDtoValidator extends FieldValidatorSup throw new ValidationException("No parameter 'fieldName' filled"); } - String speciesFieldName = getSpeciesField(); - if (speciesFieldName == null) { - throw new ValidationException("No parameter 'speciesFieldName' filled"); + if (speciesField == null) { + throw new ValidationException("No parameter 'speciesField' filled"); } boolean shouldValidate = shouldValidate(object); @@ -166,54 +134,46 @@ public abstract class AbstractSpeciesFieldDtoValidator extends FieldValidatorSup return; } - // la donnee a valider + // data to validate Object value = getFieldValue(fieldName, object); Float data = value == null ? null : Float.valueOf(String.valueOf(value)); if (data == null) { - // la donnee a valider n'est pas définie + // no data found, can not validate + log.debug("No data found, skip validate."); return; } - if (log.isDebugEnabled()) { - log.debug("data to validate : " + data); - } + log.debug(String.format("data to validate : %s", data)); - SpeciesReference speciesRef = (SpeciesReference) getFieldValue(speciesFieldName, object); + SpeciesReference speciesRef = (SpeciesReference) getFieldValue(speciesField, object); if (speciesRef == null) { - // pas de species trouvée, on ne peut pas valider + // no species found, can not validate + log.debug("No species found, skip validate."); return; } - if (log.isDebugEnabled()) { - log.debug("Species to validate : " + speciesRef); - } + log.debug(String.format("Species to validate : %s", speciesRef)); SpeciesDto speciesDto = (SpeciesDto) stack.findValue("getSpecies(\"" + speciesRef.getId() + "\")"); bound = getBound(speciesDto); - if (log.isDebugEnabled()) { - log.debug("Species Bound to validate : " + bound); - } + log.debug(String.format("Species Bound to validate : %s", bound)); if (bound == null) { - // pas de donnée dans le référentiel acceptable + // no bound found, can not validate + log.debug("No species bound found, skip validate."); return; } - boundWithRatio = bound.applyRatio(ratio); + computedBound = bound.applyRatio(ratio); + log.debug(String.format("Bound with ratio : %s", computedBound)); - if (log.isDebugEnabled()) { - log.debug("Bound : " + bound); - log.debug("Ratio to validate : " + ratio); - log.debug("Bound with ratio : " + boundWithRatio); - } - - boolean valid = validateBound(data, boundWithRatio); + boolean valid = computedBound.validate(data); if (!valid) { @@ -221,61 +181,117 @@ public abstract class AbstractSpeciesFieldDtoValidator extends FieldValidatorSup } } - private Bound getBound(SpeciesDto species) { + public void setSpeciesField(String speciesField) { + this.speciesField = speciesField; + } - Float min = getBoundMin(species); - Float max = getBoundMax(species); + public void setRatio(String ratio) { + this.ratio = Float.parseFloat(Objects.requireNonNull(ratio)); + } - if (min == null || min == 0 || max == null || max == 0) { - // l'une des deux borne n'est pas définie, on ne peut pas utiliser - // la données - return null; - } - return new Bound(min, max); + public void setExpression(String expression) { + this.expression = expression; + } + + public void setEnable(String enable) { + this.enable = Boolean.parseBoolean(Objects.requireNonNull(enable)); } - private boolean validateBound(Float value, Bound bound) { - if (value == null) { + public Float getMin() { + return computedBound == null ? null : Numbers.roundThreeDigits(computedBound.getMin()); + } - // valeur non définie - return true; + public Float getMax() { + return computedBound == null ? null : Numbers.roundThreeDigits(computedBound.getMax()); + } + + private Boolean getValidationLengthWeightEnable(Object object) throws ValidationException { + if (validationLengthWeightEnable == null) { + validationLengthWeightEnable = (Boolean) getFieldValue("validationLengthWeightEnable", object); } - boolean valid; + return validationLengthWeightEnable; + } + + private boolean shouldValidate(Object object) throws ValidationException { + boolean shouldValidate = shouldValidateFromEnable(object); + if (!shouldValidate) { + log.debug("Skip speed validation from 'validationLengthWeightEnable'"); + } else { + shouldValidate = shouldValidateFromExpression(object); - float min = bound.getMin(); - float max = bound.getMax(); + if (!shouldValidate) { + log.debug("Skip speed validation from 'expression'"); + } + } + return shouldValidate; + } - valid = min <= value && value <= max; - return valid; + private boolean shouldValidateFromEnable(Object object) throws ValidationException { + boolean answer = true; + if (this.enable != null) { + Boolean enable; + try { + enable = getValidationLengthWeightEnable(object); + } catch (ValidationException e) { + // let this pass, but it will be logged right below + log.error("Could not get expression: validationLengthWeightEnable", e); + throw e; + } + answer = Objects.equals(this.enable, enable); + } + return answer; } - public Float getMin() { - return boundWithRatio == null ? null : Numbers.roundThreeDigits(boundWithRatio.getMin()); + private boolean shouldValidateFromExpression(Object object) throws ValidationException { + boolean answer = true; + if (this.expression != null && !this.expression.isEmpty()) { + try { + Boolean answerObject = (Boolean) getFieldValue(expression, object); + answer = answerObject != null && answerObject; + } catch (ValidationException e) { + // let this pass, but it will be logged right below + log.error(String.format("Could not get expression: %s", expression), e); + throw e; + } + } + return answer; } - public Float getMax() { - return boundWithRatio == null ? null : Numbers.roundThreeDigits(boundWithRatio.getMax()); + private Bound getBound(SpeciesDto species) { + + Float min = getBoundMin(species); + Float max = getBoundMax(species); + + if (min == null || min == 0 || max == null || max == 0) { + // one of range is missing, can not use this bound + return null; + } + return new Bound(min, max); } public static class Bound { - private final Float min; + private final float min; - private final Float max; + private final float max; - Bound(Float min, Float max) { + Bound(float min, float max) { this.min = min; this.max = max; } - public Float getMin() { + public float getMin() { return min; } - public Float getMax() { + public float getMax() { return max; } + boolean validate(float value) { + return min <= value && value <= max; + } + Bound applyRatio(float ratio) { float delta = min / 100 * ratio; float min = this.min - delta; ===================================== dto/src/main/java/fr/ird/observe/validation/validators/SpeciesLengthFieldDtoValidator.java ===================================== @@ -33,13 +33,13 @@ import fr.ird.observe.dto.referential.SpeciesDto; public class SpeciesLengthFieldDtoValidator extends AbstractSpeciesFieldDtoValidator { @Override - protected Float getBoundMin(SpeciesDto referentiel) { - return referentiel.getMinLength(); + protected Float getBoundMin(SpeciesDto species) { + return species.getMinLength(); } @Override - protected Float getBoundMax(SpeciesDto referentiel) { - return referentiel.getMaxLength(); + protected Float getBoundMax(SpeciesDto species) { + return species.getMaxLength(); } @Override ===================================== dto/src/main/java/fr/ird/observe/validation/validators/SpeciesWeightFieldDtoValidator.java ===================================== @@ -33,13 +33,13 @@ import fr.ird.observe.dto.referential.SpeciesDto; public class SpeciesWeightFieldDtoValidator extends AbstractSpeciesFieldDtoValidator { @Override - protected Float getBoundMin(SpeciesDto referentiel) { - return referentiel.getMinWeight(); + protected Float getBoundMin(SpeciesDto species) { + return species.getMinWeight(); } @Override - protected Float getBoundMax(SpeciesDto referentiel) { - return referentiel.getMaxWeight(); + protected Float getBoundMax(SpeciesDto species) { + return species.getMaxWeight(); } @Override View it on GitLab: https://gitlab.com/ultreiaio/ird-observe/-/commit/0212a530e1f6c9a86713a9d28… -- View it on GitLab: https://gitlab.com/ultreiaio/ird-observe/-/commit/0212a530e1f6c9a86713a9d28… You're receiving this email because of your account on gitlab.com.
1 0
0 0
[Git][ultreiaio/ird-observe][develop] les programmes ne sont pas triés dans le même ordre dans l'arbre de navigation...
by Tony CHEMIT 06 Jul '20

06 Jul '20
Tony CHEMIT pushed to branch develop at ultreiaio / ird-observe Commits: da0a4872 by Tony Chemit at 2020-07-06T07:01:22+02:00 les programmes ne sont pas triés dans le même ordre dans l&#39;arbre de navigation et dans la formulaire liste des marées - Closes #1567 - - - - - 6 changed files: - dto/src/main/java/fr/ird/observe/dto/data/ll/common/TripReference.java - dto/src/main/java/fr/ird/observe/dto/data/ps/common/TripReference.java - dto/src/main/java/fr/ird/observe/dto/decoration/decorators/TripLonglineDecorator.java - dto/src/main/java/fr/ird/observe/dto/decoration/decorators/TripSeineDecorator.java - dto/src/main/java/fr/ird/observe/dto/decoration/init/DataLlCommonModelDecoratorInitializer.java - dto/src/main/java/fr/ird/observe/dto/decoration/init/DataPsCommonModelDecoratorInitializer.java Changes: ===================================== dto/src/main/java/fr/ird/observe/dto/data/ll/common/TripReference.java ===================================== @@ -37,5 +37,10 @@ public class TripReference extends GeneratedTripReference { return I18nDecoratorHelper.getStartEndDateLabel(getStartDate(), getEndDate()); } + @Override + public String getVesselLabel() { + return getVessel().getLabel(); + } + } \ No newline at end of file ===================================== dto/src/main/java/fr/ird/observe/dto/data/ps/common/TripReference.java ===================================== @@ -36,4 +36,9 @@ public class TripReference extends GeneratedTripReference { public String getStartEndDateLabel() { return I18nDecoratorHelper.getStartEndDateLabel(getStartDate(), getEndDate()); } + + @Override + public String getVesselLabel() { + return getVessel().getLabel(); + } } ===================================== dto/src/main/java/fr/ird/observe/dto/decoration/decorators/TripLonglineDecorator.java ===================================== @@ -35,7 +35,7 @@ public class TripLonglineDecorator extends ObserveDecorator<TripDto> { public TripLonglineDecorator() throws IllegalArgumentException, NullPointerException { super(TripDto.class, - "${startEndDateLabel}$s##${vessel/label}$s##${observerLabel}$s" + "${startDate}$td/%1$tm/%1$tY##${endDate}$td/%2$tm/%2$tY##${vessel/label}$s##${observerLabel}$s" ); } ===================================== dto/src/main/java/fr/ird/observe/dto/decoration/decorators/TripSeineDecorator.java ===================================== @@ -36,7 +36,7 @@ public class TripSeineDecorator extends ObserveDecorator<TripDto> { public TripSeineDecorator() throws IllegalArgumentException, NullPointerException { super(TripDto.class, - "${startEndDateLabel}$s##${vessel/label}$s##${observerLabel}$s" + "${startDate}$td/%1$tm/%1$tY##${endDate}$td/%2$tm/%2$tY##${vessel/label}$s##${observerLabel}$s" ); } ===================================== dto/src/main/java/fr/ird/observe/dto/decoration/init/DataLlCommonModelDecoratorInitializer.java ===================================== @@ -48,7 +48,7 @@ public class DataLlCommonModelDecoratorInitializer extends ModelDecoratorInitial public void initLlCommonTripDto() { registerDecorator(new TripLonglineDecorator()); registerDataReferenceDecorator(fr.ird.observe.dto.data.ll.common.TripReference.class, - "${startEndDateLabel}$s##${vessel/label}$s##${observerLabel}$s"); + "${startDate}$td/%1$tm/%1$tY##${endDate}$td/%2$tm/%2$tY##${vesselLabel}$s##${observerLabel}$s"); } @Override ===================================== dto/src/main/java/fr/ird/observe/dto/decoration/init/DataPsCommonModelDecoratorInitializer.java ===================================== @@ -54,11 +54,11 @@ public class DataPsCommonModelDecoratorInitializer extends ModelDecoratorInitial public void initPsCommonTripDto() { registerDecorator(new TripSeineDecorator()); registerDataReferenceDecorator(fr.ird.observe.dto.data.ps.common.TripReference.class, - "${startEndDateLabel}$s##${vessel/label}$s##${observerLabel}$s"); + "${startDate}$td/%1$tm/%1$tY##${endDate}$td/%2$tm/%2$tY##${vesselLabel}$s##${observerLabel}$s"); // Trip commun decorator registerDataReferenceDecorator(TRIP_CONTEXT, fr.ird.observe.dto.data.ps.common.TripReference.class, - "${startEndDateLabel}$s##${vessel/label}$s##${observerLabel}$s"); + "${startDate}$td/%1$tm/%1$tY##${endDate}$td/%2$tm/%2$tY##${vesselLabel}$s##${observerLabel}$s"); } View it on GitLab: https://gitlab.com/ultreiaio/ird-observe/-/commit/da0a4872ea0f2e30f842af537… -- View it on GitLab: https://gitlab.com/ultreiaio/ird-observe/-/commit/da0a4872ea0f2e30f842af537… You're receiving this email because of your account on gitlab.com.
1 0
0 0
[Git][ultreiaio/ird-observe][develop-7.x] les programmes ne sont pas triés dans le même ordre dans l'arbre de navigation...
by Tony CHEMIT 06 Jul '20

06 Jul '20
Tony CHEMIT pushed to branch develop-7.x at ultreiaio / ird-observe Commits: 99551863 by Tony Chemit at 2020-07-06T06:21:23+02:00 les programmes ne sont pas triés dans le même ordre dans l&#39;arbre de navigation et dans la formulaire liste des marées - Closes #1567 - - - - - 3 changed files: - dto/src/main/java/fr/ird/observe/dto/decoration/DecoratorService.java - dto/src/main/java/fr/ird/observe/dto/decoration/decorators/TripLonglineDecorator.java - dto/src/main/java/fr/ird/observe/dto/decoration/decorators/TripSeineDecorator.java Changes: ===================================== dto/src/main/java/fr/ird/observe/dto/decoration/DecoratorService.java ===================================== @@ -339,7 +339,7 @@ public class DecoratorService extends DecoratorProvider { // Trip commun decorator registerDataReferenceDecorator(TRIP_CONTEXT, TripSeineReference.class, - "${startEndDateLabel}$s##${vesselLabel}$s##${observerLabel}$s"); + "${startDate}$td/%1$tm/%1$tY##${endDate}$td/%2$tm/%2$tY##${vesselLabel}$s##${observerLabel}$s"); // gps decorators registerObserveDecorator("activity-gps", @@ -510,7 +510,7 @@ public class DecoratorService extends DecoratorProvider { public void initTripLonglineDto() { registerDecorator(new TripLonglineDecorator()); registerDataReferenceDecorator(TripLonglineReference.class, - "${startEndDateLabel}$s##${vesselLabel}$s##${observerLabel}$s"); + "${startDate}$td/%1$tm/%1$tY##${endDate}$td/%2$tm/%2$tY##${vesselLabel}$s##${observerLabel}$s"); } @Override @@ -1017,7 +1017,7 @@ public class DecoratorService extends DecoratorProvider { public void initTripSeineDto() { registerDecorator(new TripSeineDecorator()); registerDataReferenceDecorator(TripSeineReference.class, - "${startEndDateLabel}$s##${vesselLabel}$s##${observerLabel}$s"); + "${startDate}$td/%1$tm/%1$tY##${endDate}$td/%2$tm/%2$tY##${vesselLabel}$s##${observerLabel}$s"); } @Override ===================================== dto/src/main/java/fr/ird/observe/dto/decoration/decorators/TripLonglineDecorator.java ===================================== @@ -35,7 +35,7 @@ public class TripLonglineDecorator extends ObserveDecorator<TripLonglineDto> { public TripLonglineDecorator() throws IllegalArgumentException, NullPointerException { super(TripLonglineDto.class, - "${startEndDateLabel}$s##${vessel/label}$s##${observerLabel}$s" + "${startDate}$td/%1$tm/%1$tY##${endDate}$td/%2$tm/%2$tY##${vessel/label}$s##${observerLabel}$s" ); } ===================================== dto/src/main/java/fr/ird/observe/dto/decoration/decorators/TripSeineDecorator.java ===================================== @@ -36,7 +36,7 @@ public class TripSeineDecorator extends ObserveDecorator<TripSeineDto> { public TripSeineDecorator() throws IllegalArgumentException, NullPointerException { super(TripSeineDto.class, - "${startEndDateLabel}$s##${vessel/label}$s##${observerLabel}$s" + "${startDate}$td/%1$tm/%1$tY##${endDate}$td/%2$tm/%2$tY##${vessel/label}$s##${observerLabel}$s" ); } View it on GitLab: https://gitlab.com/ultreiaio/ird-observe/-/commit/99551863966c8a3cf54a868d6… -- View it on GitLab: https://gitlab.com/ultreiaio/ird-observe/-/commit/99551863966c8a3cf54a868d6… You're receiving this email because of your account on gitlab.com.
1 0
0 0
[Git][ultreiaio/ird-observe][develop] Pouvoir changer l'espèce d'un enregistrement - Closes #1565 (report v8)
by Tony CHEMIT 05 Jul '20

05 Jul '20
Tony CHEMIT pushed to branch develop at ultreiaio / ird-observe Commits: 4473430a by Tony Chemit at 2020-07-05T16:34:46+02:00 Pouvoir changer l&#39;espèce d&#39;un enregistrement - Closes #1565 (report v8) - - - - - 30 changed files: - client-datasource-editor-api/src/main/java/fr/ird/observe/client/datasource/editor/content/data/table/ContentTableMeta.java - client-datasource-editor-api/src/main/java/fr/ird/observe/client/datasource/editor/content/data/table/ContentTableModel.java - client-datasource-editor-api/src/main/java/fr/ird/observe/client/datasource/editor/content/data/table/ContentTableUIInitializer.java - client-datasource-editor-api/src/main/java/fr/ird/observe/client/datasource/editor/content/data/table/ContentTableUIModel.java - client-datasource-editor-common/src/main/java/fr/ird/observe/client/datasource/editor/content/data/sample/SampleUIModel.java - client-datasource-editor-ll/src/main/java/fr/ird/observe/client/datasource/editor/content/data/ll/common/GearUseFeaturesTableModel.java - client-datasource-editor-ll/src/main/java/fr/ird/observe/client/datasource/editor/content/data/ll/common/GearUseFeaturesUIModel.java - client-datasource-editor-ll/src/main/java/fr/ird/observe/client/datasource/editor/content/data/ll/landing/LandingPartContentTableModel.java - client-datasource-editor-ll/src/main/java/fr/ird/observe/client/datasource/editor/content/data/ll/landing/LandingPartUIModel.java - client-datasource-editor-ll/src/main/java/fr/ird/observe/client/datasource/editor/content/data/ll/logbook/BaitsCompositionUIModel.java - client-datasource-editor-ll/src/main/java/fr/ird/observe/client/datasource/editor/content/data/ll/logbook/BranchlinesCompositionUIModel.java - client-datasource-editor-ll/src/main/java/fr/ird/observe/client/datasource/editor/content/data/ll/logbook/CatchTableModel.java - client-datasource-editor-ll/src/main/java/fr/ird/observe/client/datasource/editor/content/data/ll/logbook/CatchUIModel.java - client-datasource-editor-ll/src/main/java/fr/ird/observe/client/datasource/editor/content/data/ll/logbook/FloatlinesCompositionUIModel.java - client-datasource-editor-ll/src/main/java/fr/ird/observe/client/datasource/editor/content/data/ll/logbook/HooksCompositionUIModel.java - client-datasource-editor-ll/src/main/java/fr/ird/observe/client/datasource/editor/content/data/ll/logbook/SamplePartContentTableModel.java - client-datasource-editor-ll/src/main/java/fr/ird/observe/client/datasource/editor/content/data/ll/logbook/SamplePartUIModel.java - client-datasource-editor-ll/src/main/java/fr/ird/observe/client/datasource/editor/content/data/ll/observation/BaitsCompositionUIModel.java - client-datasource-editor-ll/src/main/java/fr/ird/observe/client/datasource/editor/content/data/ll/observation/BranchlinesCompositionUIModel.java - client-datasource-editor-ll/src/main/java/fr/ird/observe/client/datasource/editor/content/data/ll/observation/CatchTableModel.java - client-datasource-editor-ll/src/main/java/fr/ird/observe/client/datasource/editor/content/data/ll/observation/CatchUIModel.java - client-datasource-editor-ll/src/main/java/fr/ird/observe/client/datasource/editor/content/data/ll/observation/EncounterUIModel.java - client-datasource-editor-ll/src/main/java/fr/ird/observe/client/datasource/editor/content/data/ll/observation/FloatlinesCompositionUIModel.java - client-datasource-editor-ll/src/main/java/fr/ird/observe/client/datasource/editor/content/data/ll/observation/HooksCompositionUIModel.java - client-datasource-editor-ll/src/main/java/fr/ird/observe/client/datasource/editor/content/data/ll/observation/SensorUsedUIModel.java - client-datasource-editor-ll/src/main/java/fr/ird/observe/client/datasource/editor/content/data/ll/observation/TdrUIModel.java - client-datasource-editor-ps/src/main/java/fr/ird/observe/client/datasource/editor/content/data/ps/common/GearUseFeaturesTableModel.java - client-datasource-editor-ps/src/main/java/fr/ird/observe/client/datasource/editor/content/data/ps/common/GearUseFeaturesUIModel.java - client-datasource-editor-ps/src/main/java/fr/ird/observe/client/datasource/editor/content/data/ps/observation/NonTargetCatchReleaseTableModel.java - client-datasource-editor-ps/src/main/java/fr/ird/observe/client/datasource/editor/content/data/ps/observation/NonTargetCatchReleaseUIHandler.java The diff was not included because it is too large. View it on GitLab: https://gitlab.com/ultreiaio/ird-observe/-/commit/4473430a474b47b6211adc87b… -- View it on GitLab: https://gitlab.com/ultreiaio/ird-observe/-/commit/4473430a474b47b6211adc87b… You're receiving this email because of your account on gitlab.com.
1 0
0 0
[Git][ultreiaio/ird-observe][develop] 2 commits: Problème de traduction sur les validations taille/poids des espèces - Closes #1571 (report v8)
by Tony CHEMIT 05 Jul '20

05 Jul '20
Tony CHEMIT pushed to branch develop at ultreiaio / ird-observe Commits: 0c423270 by Tony Chemit at 2020-07-05T14:35:26+02:00 Problème de traduction sur les validations taille/poids des espèces - Closes #1571 (report v8) - - - - - f0a19cb8 by Tony Chemit at 2020-07-05T14:35:27+02:00 Amélioration des logs - Closes #1574 (report v8) - - - - - 8 changed files: - client-configuration/src/main/resources/log4j2.xml - client-configuration/src/main/resources/observe-log4j2.xml - server-configuration/src/main/resources/log4j2.xml - server-configuration/src/main/resources/observeweb-log4j2.xml - services-validation/pom.xml - services-validation/src/main/java/fr/ird/observe/validation/validators/AbstractSpeciesFieldDtoValidator.java - test/src/main/resources/fixtures/validate-service-seine-trips.properties - test/src/main/resources/log4j2.xml Changes: ===================================== client-configuration/src/main/resources/log4j2.xml ===================================== @@ -18,8 +18,7 @@ <http://www.gnu.org/licenses/gpl-3.0.html>. #L% --> - -<Configuration status="error"> +<Configuration strict="true" status="error"> <Appenders> <Console name="console" target="SYSTEM_OUT"> <PatternLayout pattern="%-5p %d{ISO8601} [%t] %40C{1} :%4L - %m%n"/> @@ -35,53 +34,49 @@ </RollingFile> </Appenders> <Loggers> - <Root level="warn"> - <AppenderRef ref="console"/> - <AppenderRef ref="File"/> - </Root> - <Logger name="fr.ird.observe" level="info" additivity="false"> + <Logger name="org.hibernate.orm.deprecation" level="error" additivity="false"> <AppenderRef ref="console"/> <AppenderRef ref="File"/> </Logger> - <Logger name="org.nuiton" level="warn" additivity="false"> + <Logger name="com.zaxxer.hikari.HikariDataSource" level="error" additivity="false"> <AppenderRef ref="console"/> <AppenderRef ref="File"/> </Logger> - <Logger name="org.nuiton.topia" level="info" additivity="false"> + <Logger name="org.nuiton.validator.xwork2.XWork2ScopeValidator" level="warn" additivity="false"> <AppenderRef ref="console"/> <AppenderRef ref="File"/> </Logger> - <Logger name="fr.ird.observe.client.validators" level="warn" additivity="false"> + <Logger name="com.opensymphony.xwork2.validator.validators" level="warn" additivity="false"> <AppenderRef ref="console"/> <AppenderRef ref="File"/> </Logger> - <Logger name="io.ultreia" level="info" additivity="false"> + <Logger name="org.nuiton.validator.xwork2.field" level="warn" additivity="false"> <AppenderRef ref="console"/> <AppenderRef ref="File"/> </Logger> - <Logger name="org.hibernate" level="warn" additivity="false"> + <Logger name="fr.ird.observe.spi.DtoModelHelper" level="warn" additivity="false"> <AppenderRef ref="console"/> <AppenderRef ref="File"/> </Logger> - <Logger name="org.nuiton.jaxx.validator.swing.SwingValidator" level="error" additivity="false"> + <Logger name="org.nuiton.topia" level="warn" additivity="false"> <AppenderRef ref="console"/> <AppenderRef ref="File"/> </Logger> - <Logger name="org.hibernate.orm.deprecation" level="error" additivity="false"> + <Logger name="org.hibernate" level="warn" additivity="false"> <AppenderRef ref="console"/> <AppenderRef ref="File"/> </Logger> - <Logger name="com.zaxxer.hikari.HikariDataSource" level="error" additivity="false"> + <Logger name="fr.ird.observe.services.service.referential.differential.DifferentialModel" level="warn" additivity="false"> <AppenderRef ref="console"/> <AppenderRef ref="File"/> </Logger> - <Logger name="com.opensymphony.xwork2.validator.validators" level="error" additivity="false"> + <Logger name="fr.ird.observe" level="info" additivity="false"> <AppenderRef ref="console"/> <AppenderRef ref="File"/> </Logger> - <Logger name="org.nuiton.validator.xwork2.field" level="error" additivity="false"> + <Root level="error"> <AppenderRef ref="console"/> <AppenderRef ref="File"/> - </Logger> + </Root> </Loggers> -</Configuration> +</Configuration> \ No newline at end of file ===================================== client-configuration/src/main/resources/observe-log4j2.xml ===================================== @@ -19,13 +19,13 @@ #L% --> -<Configuration status="error"> +<Configuration strict="true" status="error"> <Appenders> <Console name="console" target="SYSTEM_OUT"> <PatternLayout pattern="%-5p %d{ISO8601} [%t] %40C{1} :%4L - %m%n"/> </Console> - <RollingFile name="File" fileName="${log.directory}/observe-${application.version}.log" - filePattern="${log.directory}/observe-${application.version}-%d{MM-dd-yyyy}-%i.log.gz"> + <RollingFile name="File" fileName="${data.directory}/log/observe-${application.version}.log" + filePattern="${data.directory}/log/observe-${application.version}-%d{MM-dd-yyyy}-%i.log.gz"> <PatternLayout pattern="%-5p %d{ISO8601} [%t] %40C{1} :%4L - %m%n"/> <Policies> <TimeBasedTriggeringPolicy/> @@ -35,31 +35,31 @@ </RollingFile> </Appenders> <Loggers> - <Logger name="fr.ird.observe" level="info" additivity="false"> + <Logger name="org.hibernate.orm.deprecation" level="error" additivity="false"> <AppenderRef ref="console"/> <AppenderRef ref="File"/> </Logger> - <Logger name="org.nuiton" level="warn" additivity="false"> + <Logger name="com.zaxxer.hikari.HikariDataSource" level="error" additivity="false"> <AppenderRef ref="console"/> <AppenderRef ref="File"/> </Logger> - <Logger name="org.nuiton.i18n.editor" level="info" additivity="false"> + <Logger name="org.nuiton.validator.xwork2.XWork2ScopeValidator" level="warn" additivity="false"> <AppenderRef ref="console"/> <AppenderRef ref="File"/> </Logger> - <Logger name="org.nuiton.topia" level="info" additivity="false"> + <Logger name="com.opensymphony.xwork2.validator.validators" level="warn" additivity="false"> <AppenderRef ref="console"/> <AppenderRef ref="File"/> </Logger> - <Logger name="org.nuiton.jaxx.validator.swing.SwingValidator" level="error" additivity="false"> + <Logger name="org.nuiton.validator.xwork2.field" level="warn" additivity="false"> <AppenderRef ref="console"/> <AppenderRef ref="File"/> </Logger> - <Logger name="fr.ird.observe.client.validators" level="warn" additivity="false"> + <Logger name="fr.ird.observe.spi.DtoModelHelper" level="warn" additivity="false"> <AppenderRef ref="console"/> <AppenderRef ref="File"/> </Logger> - <Logger name="io.ultreia" level="info" additivity="false"> + <Logger name="org.nuiton.topia" level="warn" additivity="false"> <AppenderRef ref="console"/> <AppenderRef ref="File"/> </Logger> @@ -67,29 +67,17 @@ <AppenderRef ref="console"/> <AppenderRef ref="File"/> </Logger> - <Logger name="org.hibernate.orm.deprecation" level="error" additivity="false"> - <AppenderRef ref="console"/> - <AppenderRef ref="File"/> - </Logger> - <Logger name="com.zaxxer.hikari.HikariDataSource" level="error" additivity="false"> - <AppenderRef ref="console"/> - <AppenderRef ref="File"/> - </Logger> - <Logger name="com.opensymphony.xwork2.validator.validators" level="error" additivity="false"> - <AppenderRef ref="console"/> - <AppenderRef ref="File"/> - </Logger> - <Logger name="org.nuiton.validator.xwork2.field" level="error" additivity="false"> + <Logger name="fr.ird.observe.services.service.referential.differential.DifferentialModel" level="warn" additivity="false"> <AppenderRef ref="console"/> <AppenderRef ref="File"/> </Logger> - <Logger name="org.nuiton.jaxx.validator.swing.SwingValidator" level="error" additivity="false"> + <Logger name="fr.ird.observe" level="info" additivity="false"> <AppenderRef ref="console"/> <AppenderRef ref="File"/> </Logger> - <Logger name="io.ultreia.java4all.jaxx.widgets.combobox" level="info" additivity="false"> + <Root level="error"> <AppenderRef ref="console"/> <AppenderRef ref="File"/> - </Logger> + </Root> </Loggers> </Configuration> ===================================== server-configuration/src/main/resources/log4j2.xml ===================================== @@ -18,49 +18,45 @@ <http://www.gnu.org/licenses/gpl-3.0.html>. #L% --> - -<Configuration status="error"> +<Configuration strict="true" status="error"> <Appenders> <Console name="console" target="SYSTEM_OUT"> <PatternLayout pattern="%-5p %d{ISO8601} [%t] %40C{1} :%4L - %m%n"/> </Console> </Appenders> <Loggers> - <Logger name="fr.ird.observe" level="info" additivity="false"> + <Logger name="org.hibernate.orm.deprecation" level="error" additivity="false"> <AppenderRef ref="console"/> </Logger> - <Logger name="org.nuiton" level="warn" additivity="false"> + <Logger name="com.zaxxer.hikari.HikariDataSource" level="error" additivity="false"> <AppenderRef ref="console"/> </Logger> - <Logger name="org.nuiton.topia" level="info" additivity="false"> + <Logger name="org.nuiton.validator.xwork2.XWork2ScopeValidator" level="warn" additivity="false"> <AppenderRef ref="console"/> </Logger> - <Logger name="org.nuiton.jaxx.validator.swing.SwingValidator" level="error" additivity="false"> + <Logger name="com.opensymphony.xwork2.validator.validators" level="warn" additivity="false"> <AppenderRef ref="console"/> </Logger> - <Logger name="fr.ird.observe.client.validators" level="warn" additivity="false"> + <Logger name="org.nuiton.validator.xwork2.field" level="warn" additivity="false"> <AppenderRef ref="console"/> </Logger> - <Logger name="org.debux" level="info" additivity="false"> + <Logger name="fr.ird.observe.spi.DtoModelHelper" level="warn" additivity="false"> <AppenderRef ref="console"/> </Logger> - <Logger name="io.ultreia" level="info" additivity="false"> + <Logger name="org.nuiton.topia" level="warn" additivity="false"> <AppenderRef ref="console"/> </Logger> - <Logger name="org.hibernate" level="info" additivity="false"> + <Logger name="org.hibernate" level="warn" additivity="false"> <AppenderRef ref="console"/> </Logger> - <Logger name="org.hibernate.orm.deprecation" level="error" additivity="false"> + <Logger name="fr.ird.observe.services.service.referential.differential.DifferentialModel" level="warn" additivity="false"> <AppenderRef ref="console"/> </Logger> - <Logger name="com.zaxxer.hikari.HikariDataSource" level="error" additivity="false"> - <AppenderRef ref="console"/> - </Logger> - <Logger name="com.opensymphony.xwork2.validator.validators" level="error" additivity="false"> + <Logger name="fr.ird.observe" level="info" additivity="false"> <AppenderRef ref="console"/> </Logger> - <Logger name="org.nuiton.validator.xwork2.field" level="error" additivity="false"> + <Root level="error"> <AppenderRef ref="console"/> - </Logger> + </Root> </Loggers> -</Configuration> +</Configuration> \ No newline at end of file ===================================== server-configuration/src/main/resources/observeweb-log4j2.xml ===================================== @@ -19,8 +19,7 @@ #L% --> - -<Configuration status="error"> +<Configuration strict="true" status="error"> <Appenders> <Console name="console" target="SYSTEM_OUT"> <PatternLayout pattern="%-5p %d{ISO8601} [%t] %40C{1} :%4L - %m%n"/> @@ -36,31 +35,31 @@ </RollingFile> </Appenders> <Loggers> - <Logger name="fr.ird.observe" level="info" additivity="false"> + <Logger name="org.hibernate.orm.deprecation" level="error" additivity="false"> <AppenderRef ref="console"/> <AppenderRef ref="File"/> </Logger> - <Logger name="org.nuiton" level="warn" additivity="false"> + <Logger name="com.zaxxer.hikari.HikariDataSource" level="error" additivity="false"> <AppenderRef ref="console"/> <AppenderRef ref="File"/> </Logger> - <Logger name="org.nuiton.topia" level="info" additivity="false"> + <Logger name="org.nuiton.validator.xwork2.XWork2ScopeValidator" level="warn" additivity="false"> <AppenderRef ref="console"/> <AppenderRef ref="File"/> </Logger> - <Logger name="org.nuiton.jaxx.validator.swing.SwingValidator" level="error" additivity="false"> + <Logger name="com.opensymphony.xwork2.validator.validators" level="warn" additivity="false"> <AppenderRef ref="console"/> <AppenderRef ref="File"/> </Logger> - <Logger name="fr.ird.observe.client.validators" level="warn" additivity="false"> + <Logger name="org.nuiton.validator.xwork2.field" level="warn" additivity="false"> <AppenderRef ref="console"/> <AppenderRef ref="File"/> </Logger> - <Logger name="org.debux" level="info" additivity="false"> + <Logger name="fr.ird.observe.spi.DtoModelHelper" level="warn" additivity="false"> <AppenderRef ref="console"/> <AppenderRef ref="File"/> </Logger> - <Logger name="io.ultreia" level="info" additivity="false"> + <Logger name="org.nuiton.topia" level="warn" additivity="false"> <AppenderRef ref="console"/> <AppenderRef ref="File"/> </Logger> @@ -68,21 +67,17 @@ <AppenderRef ref="console"/> <AppenderRef ref="File"/> </Logger> - <Logger name="org.hibernate.orm.deprecation" level="error" additivity="false"> + <Logger name="fr.ird.observe.services.service.referential.differential.DifferentialModel" level="warn" additivity="false"> <AppenderRef ref="console"/> <AppenderRef ref="File"/> </Logger> - <Logger name="com.zaxxer.hikari.HikariDataSource" level="error" additivity="false"> - <AppenderRef ref="console"/> - <AppenderRef ref="File"/> - </Logger> - <Logger name="com.opensymphony.xwork2.validator.validators" level="error" additivity="false"> + <Logger name="fr.ird.observe" level="info" additivity="false"> <AppenderRef ref="console"/> <AppenderRef ref="File"/> </Logger> - <Logger name="org.nuiton.validator.xwork2.field" level="error" additivity="false"> + <Root level="error"> <AppenderRef ref="console"/> <AppenderRef ref="File"/> - </Logger> + </Root> </Loggers> </Configuration> ===================================== services-validation/pom.xml ===================================== @@ -88,6 +88,10 @@ <groupId>io.ultreia.java4all</groupId> <artifactId>java-util</artifactId> </dependency> + <dependency> + <groupId>io.ultreia.java4all</groupId> + <artifactId>java-lang</artifactId> + </dependency> <dependency> <groupId>com.google.auto.service</groupId> <artifactId>auto-service-annotations</artifactId> ===================================== services-validation/src/main/java/fr/ird/observe/validation/validators/AbstractSpeciesFieldDtoValidator.java ===================================== @@ -26,10 +26,13 @@ import com.opensymphony.xwork2.validator.ValidationException; import com.opensymphony.xwork2.validator.validators.FieldValidatorSupport; import fr.ird.observe.dto.referential.common.SpeciesDto; import fr.ird.observe.dto.referential.common.SpeciesReference; +import io.ultreia.java4all.lang.Numbers; import org.apache.commons.lang3.StringUtils; import org.apache.logging.log4j.LogManager; import org.apache.logging.log4j.Logger; +import java.util.Objects; + /** * <!-- START SNIPPET: javadoc --> * Ce validateur verifie qu'une espece respece bien les tailles ou @@ -69,7 +72,7 @@ public abstract class AbstractSpeciesFieldDtoValidator extends FieldValidatorSup * @since 2.3 */ protected String expression; - private boolean enable; + private Boolean enable; /** le ratio a appliquer sur les bornes définies dans le référentiel */ private Float ratio; private String speciesField = "species"; @@ -84,8 +87,8 @@ public abstract class AbstractSpeciesFieldDtoValidator extends FieldValidatorSup this.speciesField = speciesField; } - public void setRatio(float ratio) { - this.ratio = ratio; + public void setRatio(String ratio) { + this.ratio = Float.parseFloat(Objects.requireNonNull(ratio)); } public void setExpression(String expression) { @@ -96,8 +99,8 @@ public abstract class AbstractSpeciesFieldDtoValidator extends FieldValidatorSup return enable; } - public void setEnable(boolean enable) { - this.enable = enable; + public void setEnable(String enable) { + this.enable = Boolean.parseBoolean(Objects.requireNonNull(enable)); } protected abstract Float getBoundMin(SpeciesDto referentiel); @@ -111,9 +114,9 @@ public abstract class AbstractSpeciesFieldDtoValidator extends FieldValidatorSup private boolean shouldValidate(Object object) throws ValidationException { Boolean enable = (Boolean) getFieldValue("validationLengthWeightEnable", object); - if (enable != null) { + if (enable != null && this.enable != null) { - if (this.enable != enable) { + if (!Objects.equals(this.enable, enable)) { if (log.isDebugEnabled()) { log.debug("Skip speed validation"); @@ -220,11 +223,11 @@ public abstract class AbstractSpeciesFieldDtoValidator extends FieldValidatorSup } public Float getMin() { - return boundWithRatio.getMin(); + return Numbers.roundThreeDigits(boundWithRatio.getMin()); } public Float getMax() { - return boundWithRatio.getMax(); + return Numbers.roundThreeDigits(boundWithRatio.getMax()); } private Bound getBound(SpeciesDto species) { ===================================== test/src/main/resources/fixtures/validate-service-seine-trips.properties ===================================== @@ -24,7 +24,7 @@ RouteDto=3 ActivityDto=11 TransmittingBuoyDto=2 SetDto=3 -NonTargetCatchDto=3 +NonTargetCatchDto=4 NonTargetLengthDto=3 TargetLengthDto=1 FloatingObjectDto=1 ===================================== test/src/main/resources/log4j2.xml ===================================== @@ -19,39 +19,45 @@ #L% --> -<Configuration status="error"> +<Configuration strict="true" status="warn"> <Appenders> <Console name="console" target="SYSTEM_OUT"> <PatternLayout pattern="%-5p %d{ISO8601} [%t] %40C{1} :%4L - %m%n"/> </Console> </Appenders> <Loggers> - <Logger name="io.ultreia.java4all.application.context" level="warning" additivity="false"> + <Logger name="org.hibernate.orm.deprecation" level="error" additivity="false"> <AppenderRef ref="console"/> </Logger> - <Logger name="io.ultreia.java4all.application" level="info" additivity="false"> + <Logger name="com.zaxxer.hikari.HikariDataSource" level="error" additivity="false"> <AppenderRef ref="console"/> </Logger> - <Logger name="fr.ird.observe" level="info" additivity="false"> + <Logger name="org.nuiton.validator.xwork2.XWork2ScopeValidator" level="warn" additivity="false"> <AppenderRef ref="console"/> </Logger> - <Logger name="org.nuiton.topia" level="info" additivity="false"> + <Logger name="com.opensymphony.xwork2.validator.validators" level="warn" additivity="false"> <AppenderRef ref="console"/> </Logger> - <Logger name="org.hibernate" level="info" additivity="false"> + <Logger name="org.nuiton.validator.xwork2.field" level="warn" additivity="false"> <AppenderRef ref="console"/> </Logger> - <Logger name="org.hibernate.orm.deprecation" level="error" additivity="false"> + <Logger name="fr.ird.observe.spi.DtoModelHelper" level="warn" additivity="false"> <AppenderRef ref="console"/> </Logger> - <Logger name="com.zaxxer.hikari.HikariDataSource" level="error" additivity="false"> + <Logger name="org.nuiton.topia" level="warn" additivity="false"> <AppenderRef ref="console"/> </Logger> - <Logger name="com.opensymphony.xwork2.validator.validators" level="error" additivity="false"> + <Logger name="org.hibernate" level="warn" additivity="false"> <AppenderRef ref="console"/> </Logger> - <Logger name="org.nuiton.validator.xwork2.field" level="error" additivity="false"> + <Logger name="fr.ird.observe.services.service.referential.differential.DifferentialModel" level="warn" additivity="false"> <AppenderRef ref="console"/> </Logger> + <Logger name="fr.ird.observe" level="info" additivity="false"> + <AppenderRef ref="console"/> + </Logger> + <Root level="error"> + <AppenderRef ref="console"/> + </Root> </Loggers> </Configuration> View it on GitLab: https://gitlab.com/ultreiaio/ird-observe/-/compare/ed6ffb071de3a1fb4ee8f870… -- View it on GitLab: https://gitlab.com/ultreiaio/ird-observe/-/compare/ed6ffb071de3a1fb4ee8f870… You're receiving this email because of your account on gitlab.com.
1 0
0 0
[Git][ultreiaio/ird-observe][develop-7.x] 5 commits: Problème de traduction sur les validations taille/poids des espèces - Closes #1571
by Tony CHEMIT 05 Jul '20

05 Jul '20
Tony CHEMIT pushed to branch develop-7.x at ultreiaio / ird-observe Commits: cb657363 by Tony Chemit at 2020-07-05T14:36:05+02:00 Problème de traduction sur les validations taille/poids des espèces - Closes #1571 - - - - - 4813a403 by Tony Chemit at 2020-07-05T14:36:06+02:00 Pouvoir changer l&#39;espèce d&#39;un enregistrement - See #1565 Rendre toutes les colonnes modifiables dans les modèles de tableau - - - - - 49b5e36d by Tony Chemit at 2020-07-05T14:36:06+02:00 Pouvoir changer l&#39;espèce d&#39;un enregistrement - See #1565 Rendre toutes les propriétés modifiables dans les formulaires - - - - - 1a6e009b by Tony Chemit at 2020-07-05T14:36:06+02:00 Pouvoir changer l&#39;espèce d&#39;un enregistrement - Close #1565 Bien restituer les listes de données pour modification (et non plus juste la valeur sélectionnée) Revue du focus suite à une modification de ligne dans le tableau - - - - - ea10d698 by Tony Chemit at 2020-07-05T14:36:06+02:00 Amélioration des logs - Closes #1574 - - - - - 30 changed files: - client-configuration/src/main/resources/log4j2.xml - client-configuration/src/main/resources/observe-log4j2.xml - client-core/src/main/java/fr/ird/observe/client/ui/content/data/longline/BaitsCompositionUIModel.java - client-core/src/main/java/fr/ird/observe/client/ui/content/data/longline/BranchlinesCompositionUIModel.java - client-core/src/main/java/fr/ird/observe/client/ui/content/data/longline/CatchLonglineTableModel.java - client-core/src/main/java/fr/ird/observe/client/ui/content/data/longline/CatchLonglineUIModel.java - client-core/src/main/java/fr/ird/observe/client/ui/content/data/longline/EncounterUIModel.java - client-core/src/main/java/fr/ird/observe/client/ui/content/data/longline/FloatlinesCompositionUIModel.java - client-core/src/main/java/fr/ird/observe/client/ui/content/data/longline/GearUseFeaturesLonglineTableModel.java - client-core/src/main/java/fr/ird/observe/client/ui/content/data/longline/GearUseFeaturesLonglineUIModel.java - client-core/src/main/java/fr/ird/observe/client/ui/content/data/longline/HooksCompositionUIModel.java - client-core/src/main/java/fr/ird/observe/client/ui/content/data/longline/SensorUsedUIModel.java - client-core/src/main/java/fr/ird/observe/client/ui/content/data/longline/TdrUIModel.java - client-core/src/main/java/fr/ird/observe/client/ui/content/data/seine/GearUseFeaturesSeineTableModel.java - client-core/src/main/java/fr/ird/observe/client/ui/content/data/seine/GearUseFeaturesSeineUIModel.java - client-core/src/main/java/fr/ird/observe/client/ui/content/data/seine/NonTargetCatchReleaseTableModel.java - client-core/src/main/java/fr/ird/observe/client/ui/content/data/seine/NonTargetCatchReleaseUIHandler.java - client-core/src/main/java/fr/ird/observe/client/ui/content/data/seine/NonTargetCatchReleaseUIModel.java - client-core/src/main/java/fr/ird/observe/client/ui/content/data/seine/NonTargetCatchUIHandler.java - client-core/src/main/java/fr/ird/observe/client/ui/content/data/seine/NonTargetCatchUIModel.java - client-core/src/main/java/fr/ird/observe/client/ui/content/data/seine/NonTargetSampleUIHandler.java - client-core/src/main/java/fr/ird/observe/client/ui/content/data/seine/NonTargetSampleUIModel.java - client-core/src/main/java/fr/ird/observe/client/ui/content/data/seine/ObjectObservedSpeciesUIModel.java - client-core/src/main/java/fr/ird/observe/client/ui/content/data/seine/ObjectSchoolEstimateUIHandler.java - client-core/src/main/java/fr/ird/observe/client/ui/content/data/seine/ObjectSchoolEstimateUIModel.java - client-core/src/main/java/fr/ird/observe/client/ui/content/data/seine/SchoolEstimateUI.jcss - client-core/src/main/java/fr/ird/observe/client/ui/content/data/seine/SchoolEstimateUIHandler.java - client-core/src/main/java/fr/ird/observe/client/ui/content/data/seine/SchoolEstimateUIModel.java - client-core/src/main/java/fr/ird/observe/client/ui/content/data/seine/TargetCatchUI.jcss - client-core/src/main/java/fr/ird/observe/client/ui/content/data/seine/TargetCatchUIHandler.java The diff was not included because it is too large. View it on GitLab: https://gitlab.com/ultreiaio/ird-observe/-/compare/f6db1c0fd5647e1966149b4a… -- View it on GitLab: https://gitlab.com/ultreiaio/ird-observe/-/compare/f6db1c0fd5647e1966149b4a… You're receiving this email because of your account on gitlab.com.
1 0
0 0
[Git][ultreiaio/ird-observe][develop] 3 commits: Deux coquilles dans les validations - Closes #1572 (report v8)
by Tony CHEMIT 05 Jul '20

05 Jul '20
Tony CHEMIT pushed to branch develop at ultreiaio / ird-observe Commits: 98215722 by Tony Chemit at 2020-07-05T14:00:13+02:00 Deux coquilles dans les validations - Closes #1572 (report v8) - - - - - b187a13b by Tony Chemit at 2020-07-05T14:04:35+02:00 Problème de traduction sur les validations taille/poids des espèces - Closes #1571 (report v8) - - - - - ed6ffb07 by Tony Chemit at 2020-07-05T14:07:23+02:00 Amélioration des logs - Closes #1574 (report v8) - - - - - 9 changed files: - client-configuration/src/main/resources/log4j2.xml - client-configuration/src/main/resources/observe-log4j2.xml - server-configuration/src/main/resources/log4j2.xml - server-configuration/src/main/resources/observeweb-log4j2.xml - services-validation/src/main/java/fr/ird/observe/validation/validators/AbstractSpeciesFieldDtoValidator.java - test/src/main/resources/fixtures/validate-service-seine-trips.properties - test/src/main/resources/log4j2.xml - validation/src/main/resources/fr/ird/observe/dto/data/ps/observation/NonTargetCatchDto-update-error-validation.xml - validation/src/main/resources/fr/ird/observe/dto/data/ps/observation/TargetLengthDto-update-warning-validation.xml Changes: ===================================== client-configuration/src/main/resources/log4j2.xml ===================================== @@ -18,8 +18,7 @@ <http://www.gnu.org/licenses/gpl-3.0.html>. #L% --> - -<Configuration status="error"> +<Configuration strict="true" status="error"> <Appenders> <Console name="console" target="SYSTEM_OUT"> <PatternLayout pattern="%-5p %d{ISO8601} [%t] %40C{1} :%4L - %m%n"/> @@ -35,53 +34,49 @@ </RollingFile> </Appenders> <Loggers> - <Root level="warn"> - <AppenderRef ref="console"/> - <AppenderRef ref="File"/> - </Root> - <Logger name="fr.ird.observe" level="info" additivity="false"> + <Logger name="org.hibernate.orm.deprecation" level="error" additivity="false"> <AppenderRef ref="console"/> <AppenderRef ref="File"/> </Logger> - <Logger name="org.nuiton" level="warn" additivity="false"> + <Logger name="com.zaxxer.hikari.HikariDataSource" level="error" additivity="false"> <AppenderRef ref="console"/> <AppenderRef ref="File"/> </Logger> - <Logger name="org.nuiton.topia" level="info" additivity="false"> + <Logger name="org.nuiton.validator.xwork2.XWork2ScopeValidator" level="warn" additivity="false"> <AppenderRef ref="console"/> <AppenderRef ref="File"/> </Logger> - <Logger name="fr.ird.observe.client.validators" level="warn" additivity="false"> + <Logger name="com.opensymphony.xwork2.validator.validators" level="warn" additivity="false"> <AppenderRef ref="console"/> <AppenderRef ref="File"/> </Logger> - <Logger name="io.ultreia" level="info" additivity="false"> + <Logger name="org.nuiton.validator.xwork2.field" level="warn" additivity="false"> <AppenderRef ref="console"/> <AppenderRef ref="File"/> </Logger> - <Logger name="org.hibernate" level="warn" additivity="false"> + <Logger name="fr.ird.observe.spi.DtoModelHelper" level="warn" additivity="false"> <AppenderRef ref="console"/> <AppenderRef ref="File"/> </Logger> - <Logger name="org.nuiton.jaxx.validator.swing.SwingValidator" level="error" additivity="false"> + <Logger name="org.nuiton.topia" level="warn" additivity="false"> <AppenderRef ref="console"/> <AppenderRef ref="File"/> </Logger> - <Logger name="org.hibernate.orm.deprecation" level="error" additivity="false"> + <Logger name="org.hibernate" level="warn" additivity="false"> <AppenderRef ref="console"/> <AppenderRef ref="File"/> </Logger> - <Logger name="com.zaxxer.hikari.HikariDataSource" level="error" additivity="false"> + <Logger name="fr.ird.observe.services.service.referential.differential.DifferentialModel" level="warn" additivity="false"> <AppenderRef ref="console"/> <AppenderRef ref="File"/> </Logger> - <Logger name="com.opensymphony.xwork2.validator.validators" level="error" additivity="false"> + <Logger name="fr.ird.observe" level="info" additivity="false"> <AppenderRef ref="console"/> <AppenderRef ref="File"/> </Logger> - <Logger name="org.nuiton.validator.xwork2.field" level="error" additivity="false"> + <Root level="error"> <AppenderRef ref="console"/> <AppenderRef ref="File"/> - </Logger> + </Root> </Loggers> -</Configuration> +</Configuration> \ No newline at end of file ===================================== client-configuration/src/main/resources/observe-log4j2.xml ===================================== @@ -19,13 +19,13 @@ #L% --> -<Configuration status="error"> +<Configuration strict="true" status="error"> <Appenders> <Console name="console" target="SYSTEM_OUT"> <PatternLayout pattern="%-5p %d{ISO8601} [%t] %40C{1} :%4L - %m%n"/> </Console> - <RollingFile name="File" fileName="${log.directory}/observe-${application.version}.log" - filePattern="${log.directory}/observe-${application.version}-%d{MM-dd-yyyy}-%i.log.gz"> + <RollingFile name="File" fileName="${data.directory}/log/observe-${application.version}.log" + filePattern="${data.directory}/log/observe-${application.version}-%d{MM-dd-yyyy}-%i.log.gz"> <PatternLayout pattern="%-5p %d{ISO8601} [%t] %40C{1} :%4L - %m%n"/> <Policies> <TimeBasedTriggeringPolicy/> @@ -35,31 +35,31 @@ </RollingFile> </Appenders> <Loggers> - <Logger name="fr.ird.observe" level="info" additivity="false"> + <Logger name="org.hibernate.orm.deprecation" level="error" additivity="false"> <AppenderRef ref="console"/> <AppenderRef ref="File"/> </Logger> - <Logger name="org.nuiton" level="warn" additivity="false"> + <Logger name="com.zaxxer.hikari.HikariDataSource" level="error" additivity="false"> <AppenderRef ref="console"/> <AppenderRef ref="File"/> </Logger> - <Logger name="org.nuiton.i18n.editor" level="info" additivity="false"> + <Logger name="org.nuiton.validator.xwork2.XWork2ScopeValidator" level="warn" additivity="false"> <AppenderRef ref="console"/> <AppenderRef ref="File"/> </Logger> - <Logger name="org.nuiton.topia" level="info" additivity="false"> + <Logger name="com.opensymphony.xwork2.validator.validators" level="warn" additivity="false"> <AppenderRef ref="console"/> <AppenderRef ref="File"/> </Logger> - <Logger name="org.nuiton.jaxx.validator.swing.SwingValidator" level="error" additivity="false"> + <Logger name="org.nuiton.validator.xwork2.field" level="warn" additivity="false"> <AppenderRef ref="console"/> <AppenderRef ref="File"/> </Logger> - <Logger name="fr.ird.observe.client.validators" level="warn" additivity="false"> + <Logger name="fr.ird.observe.spi.DtoModelHelper" level="warn" additivity="false"> <AppenderRef ref="console"/> <AppenderRef ref="File"/> </Logger> - <Logger name="io.ultreia" level="info" additivity="false"> + <Logger name="org.nuiton.topia" level="warn" additivity="false"> <AppenderRef ref="console"/> <AppenderRef ref="File"/> </Logger> @@ -67,29 +67,17 @@ <AppenderRef ref="console"/> <AppenderRef ref="File"/> </Logger> - <Logger name="org.hibernate.orm.deprecation" level="error" additivity="false"> - <AppenderRef ref="console"/> - <AppenderRef ref="File"/> - </Logger> - <Logger name="com.zaxxer.hikari.HikariDataSource" level="error" additivity="false"> - <AppenderRef ref="console"/> - <AppenderRef ref="File"/> - </Logger> - <Logger name="com.opensymphony.xwork2.validator.validators" level="error" additivity="false"> - <AppenderRef ref="console"/> - <AppenderRef ref="File"/> - </Logger> - <Logger name="org.nuiton.validator.xwork2.field" level="error" additivity="false"> + <Logger name="fr.ird.observe.services.service.referential.differential.DifferentialModel" level="warn" additivity="false"> <AppenderRef ref="console"/> <AppenderRef ref="File"/> </Logger> - <Logger name="org.nuiton.jaxx.validator.swing.SwingValidator" level="error" additivity="false"> + <Logger name="fr.ird.observe" level="info" additivity="false"> <AppenderRef ref="console"/> <AppenderRef ref="File"/> </Logger> - <Logger name="io.ultreia.java4all.jaxx.widgets.combobox" level="info" additivity="false"> + <Root level="error"> <AppenderRef ref="console"/> <AppenderRef ref="File"/> - </Logger> + </Root> </Loggers> </Configuration> ===================================== server-configuration/src/main/resources/log4j2.xml ===================================== @@ -18,49 +18,45 @@ <http://www.gnu.org/licenses/gpl-3.0.html>. #L% --> - -<Configuration status="error"> +<Configuration strict="true" status="error"> <Appenders> <Console name="console" target="SYSTEM_OUT"> <PatternLayout pattern="%-5p %d{ISO8601} [%t] %40C{1} :%4L - %m%n"/> </Console> </Appenders> <Loggers> - <Logger name="fr.ird.observe" level="info" additivity="false"> + <Logger name="org.hibernate.orm.deprecation" level="error" additivity="false"> <AppenderRef ref="console"/> </Logger> - <Logger name="org.nuiton" level="warn" additivity="false"> + <Logger name="com.zaxxer.hikari.HikariDataSource" level="error" additivity="false"> <AppenderRef ref="console"/> </Logger> - <Logger name="org.nuiton.topia" level="info" additivity="false"> + <Logger name="org.nuiton.validator.xwork2.XWork2ScopeValidator" level="warn" additivity="false"> <AppenderRef ref="console"/> </Logger> - <Logger name="org.nuiton.jaxx.validator.swing.SwingValidator" level="error" additivity="false"> + <Logger name="com.opensymphony.xwork2.validator.validators" level="warn" additivity="false"> <AppenderRef ref="console"/> </Logger> - <Logger name="fr.ird.observe.client.validators" level="warn" additivity="false"> + <Logger name="org.nuiton.validator.xwork2.field" level="warn" additivity="false"> <AppenderRef ref="console"/> </Logger> - <Logger name="org.debux" level="info" additivity="false"> + <Logger name="fr.ird.observe.spi.DtoModelHelper" level="warn" additivity="false"> <AppenderRef ref="console"/> </Logger> - <Logger name="io.ultreia" level="info" additivity="false"> + <Logger name="org.nuiton.topia" level="warn" additivity="false"> <AppenderRef ref="console"/> </Logger> - <Logger name="org.hibernate" level="info" additivity="false"> + <Logger name="org.hibernate" level="warn" additivity="false"> <AppenderRef ref="console"/> </Logger> - <Logger name="org.hibernate.orm.deprecation" level="error" additivity="false"> + <Logger name="fr.ird.observe.services.service.referential.differential.DifferentialModel" level="warn" additivity="false"> <AppenderRef ref="console"/> </Logger> - <Logger name="com.zaxxer.hikari.HikariDataSource" level="error" additivity="false"> - <AppenderRef ref="console"/> - </Logger> - <Logger name="com.opensymphony.xwork2.validator.validators" level="error" additivity="false"> + <Logger name="fr.ird.observe" level="info" additivity="false"> <AppenderRef ref="console"/> </Logger> - <Logger name="org.nuiton.validator.xwork2.field" level="error" additivity="false"> + <Root level="error"> <AppenderRef ref="console"/> - </Logger> + </Root> </Loggers> -</Configuration> +</Configuration> \ No newline at end of file ===================================== server-configuration/src/main/resources/observeweb-log4j2.xml ===================================== @@ -19,8 +19,7 @@ #L% --> - -<Configuration status="error"> +<Configuration strict="true" status="error"> <Appenders> <Console name="console" target="SYSTEM_OUT"> <PatternLayout pattern="%-5p %d{ISO8601} [%t] %40C{1} :%4L - %m%n"/> @@ -36,31 +35,31 @@ </RollingFile> </Appenders> <Loggers> - <Logger name="fr.ird.observe" level="info" additivity="false"> + <Logger name="org.hibernate.orm.deprecation" level="error" additivity="false"> <AppenderRef ref="console"/> <AppenderRef ref="File"/> </Logger> - <Logger name="org.nuiton" level="warn" additivity="false"> + <Logger name="com.zaxxer.hikari.HikariDataSource" level="error" additivity="false"> <AppenderRef ref="console"/> <AppenderRef ref="File"/> </Logger> - <Logger name="org.nuiton.topia" level="info" additivity="false"> + <Logger name="org.nuiton.validator.xwork2.XWork2ScopeValidator" level="warn" additivity="false"> <AppenderRef ref="console"/> <AppenderRef ref="File"/> </Logger> - <Logger name="org.nuiton.jaxx.validator.swing.SwingValidator" level="error" additivity="false"> + <Logger name="com.opensymphony.xwork2.validator.validators" level="warn" additivity="false"> <AppenderRef ref="console"/> <AppenderRef ref="File"/> </Logger> - <Logger name="fr.ird.observe.client.validators" level="warn" additivity="false"> + <Logger name="org.nuiton.validator.xwork2.field" level="warn" additivity="false"> <AppenderRef ref="console"/> <AppenderRef ref="File"/> </Logger> - <Logger name="org.debux" level="info" additivity="false"> + <Logger name="fr.ird.observe.spi.DtoModelHelper" level="warn" additivity="false"> <AppenderRef ref="console"/> <AppenderRef ref="File"/> </Logger> - <Logger name="io.ultreia" level="info" additivity="false"> + <Logger name="org.nuiton.topia" level="warn" additivity="false"> <AppenderRef ref="console"/> <AppenderRef ref="File"/> </Logger> @@ -68,21 +67,17 @@ <AppenderRef ref="console"/> <AppenderRef ref="File"/> </Logger> - <Logger name="org.hibernate.orm.deprecation" level="error" additivity="false"> + <Logger name="fr.ird.observe.services.service.referential.differential.DifferentialModel" level="warn" additivity="false"> <AppenderRef ref="console"/> <AppenderRef ref="File"/> </Logger> - <Logger name="com.zaxxer.hikari.HikariDataSource" level="error" additivity="false"> - <AppenderRef ref="console"/> - <AppenderRef ref="File"/> - </Logger> - <Logger name="com.opensymphony.xwork2.validator.validators" level="error" additivity="false"> + <Logger name="fr.ird.observe" level="info" additivity="false"> <AppenderRef ref="console"/> <AppenderRef ref="File"/> </Logger> - <Logger name="org.nuiton.validator.xwork2.field" level="error" additivity="false"> + <Root level="error"> <AppenderRef ref="console"/> <AppenderRef ref="File"/> - </Logger> + </Root> </Loggers> </Configuration> ===================================== services-validation/src/main/java/fr/ird/observe/validation/validators/AbstractSpeciesFieldDtoValidator.java ===================================== @@ -26,10 +26,13 @@ import com.opensymphony.xwork2.validator.ValidationException; import com.opensymphony.xwork2.validator.validators.FieldValidatorSupport; import fr.ird.observe.dto.referential.common.SpeciesDto; import fr.ird.observe.dto.referential.common.SpeciesReference; +import io.ultreia.java4all.lang.Numbers; import org.apache.commons.lang3.StringUtils; import org.apache.logging.log4j.LogManager; import org.apache.logging.log4j.Logger; +import java.util.Objects; + /** * <!-- START SNIPPET: javadoc --> * Ce validateur verifie qu'une espece respece bien les tailles ou @@ -69,7 +72,7 @@ public abstract class AbstractSpeciesFieldDtoValidator extends FieldValidatorSup * @since 2.3 */ protected String expression; - private boolean enable; + private Boolean enable; /** le ratio a appliquer sur les bornes définies dans le référentiel */ private Float ratio; private String speciesField = "species"; @@ -84,8 +87,8 @@ public abstract class AbstractSpeciesFieldDtoValidator extends FieldValidatorSup this.speciesField = speciesField; } - public void setRatio(float ratio) { - this.ratio = ratio; + public void setRatio(String ratio) { + this.ratio = Float.parseFloat(Objects.requireNonNull(ratio)); } public void setExpression(String expression) { @@ -96,8 +99,8 @@ public abstract class AbstractSpeciesFieldDtoValidator extends FieldValidatorSup return enable; } - public void setEnable(boolean enable) { - this.enable = enable; + public void setEnable(String enable) { + this.enable = Boolean.parseBoolean(Objects.requireNonNull(enable)); } protected abstract Float getBoundMin(SpeciesDto referentiel); @@ -111,9 +114,9 @@ public abstract class AbstractSpeciesFieldDtoValidator extends FieldValidatorSup private boolean shouldValidate(Object object) throws ValidationException { Boolean enable = (Boolean) getFieldValue("validationLengthWeightEnable", object); - if (enable != null) { + if (enable != null && this.enable != null) { - if (this.enable != enable) { + if (!Objects.equals(this.enable, enable)) { if (log.isDebugEnabled()) { log.debug("Skip speed validation"); @@ -220,11 +223,11 @@ public abstract class AbstractSpeciesFieldDtoValidator extends FieldValidatorSup } public Float getMin() { - return boundWithRatio.getMin(); + return Numbers.roundThreeDigits(boundWithRatio.getMin()); } public Float getMax() { - return boundWithRatio.getMax(); + return Numbers.roundThreeDigits(boundWithRatio.getMax()); } private Bound getBound(SpeciesDto species) { ===================================== test/src/main/resources/fixtures/validate-service-seine-trips.properties ===================================== @@ -24,7 +24,7 @@ RouteDto=3 ActivityDto=11 TransmittingBuoyDto=2 SetDto=3 -NonTargetCatchDto=3 +NonTargetCatchDto=4 NonTargetLengthDto=3 TargetLengthDto=1 FloatingObjectDto=1 ===================================== test/src/main/resources/log4j2.xml ===================================== @@ -19,39 +19,45 @@ #L% --> -<Configuration status="error"> +<Configuration strict="true" status="warn"> <Appenders> <Console name="console" target="SYSTEM_OUT"> <PatternLayout pattern="%-5p %d{ISO8601} [%t] %40C{1} :%4L - %m%n"/> </Console> </Appenders> <Loggers> - <Logger name="io.ultreia.java4all.application.context" level="warning" additivity="false"> + <Logger name="org.hibernate.orm.deprecation" level="error" additivity="false"> <AppenderRef ref="console"/> </Logger> - <Logger name="io.ultreia.java4all.application" level="info" additivity="false"> + <Logger name="com.zaxxer.hikari.HikariDataSource" level="error" additivity="false"> <AppenderRef ref="console"/> </Logger> - <Logger name="fr.ird.observe" level="info" additivity="false"> + <Logger name="org.nuiton.validator.xwork2.XWork2ScopeValidator" level="warn" additivity="false"> <AppenderRef ref="console"/> </Logger> - <Logger name="org.nuiton.topia" level="info" additivity="false"> + <Logger name="com.opensymphony.xwork2.validator.validators" level="warn" additivity="false"> <AppenderRef ref="console"/> </Logger> - <Logger name="org.hibernate" level="info" additivity="false"> + <Logger name="org.nuiton.validator.xwork2.field" level="warn" additivity="false"> <AppenderRef ref="console"/> </Logger> - <Logger name="org.hibernate.orm.deprecation" level="error" additivity="false"> + <Logger name="fr.ird.observe.spi.DtoModelHelper" level="warn" additivity="false"> <AppenderRef ref="console"/> </Logger> - <Logger name="com.zaxxer.hikari.HikariDataSource" level="error" additivity="false"> + <Logger name="org.nuiton.topia" level="warn" additivity="false"> <AppenderRef ref="console"/> </Logger> - <Logger name="com.opensymphony.xwork2.validator.validators" level="error" additivity="false"> + <Logger name="org.hibernate" level="warn" additivity="false"> <AppenderRef ref="console"/> </Logger> - <Logger name="org.nuiton.validator.xwork2.field" level="error" additivity="false"> + <Logger name="fr.ird.observe.services.service.referential.differential.DifferentialModel" level="warn" additivity="false"> <AppenderRef ref="console"/> </Logger> + <Logger name="fr.ird.observe" level="info" additivity="false"> + <AppenderRef ref="console"/> + </Logger> + <Root level="error"> + <AppenderRef ref="console"/> + </Root> </Loggers> </Configuration> ===================================== validation/src/main/resources/fr/ird/observe/dto/data/ps/observation/NonTargetCatchDto-update-error-validation.xml ===================================== @@ -49,7 +49,7 @@ <field name="meanWeight"> <field-validator type="species_weightDto"> <param name="ratio">1.0</param> - <param name="expression">meanWeoight != null</param> + <param name="expression">meanWeight != null</param> <message>observe.validation.species.weight.bound##${min}##${max}</message> </field-validator> </field> ===================================== validation/src/main/resources/fr/ird/observe/dto/data/ps/observation/TargetLengthDto-update-warning-validation.xml ===================================== @@ -27,7 +27,7 @@ <field-validator type="species_lengthDto"> <param name="ratio">1.0</param> <param name="expression"> - <![CDATA[ acquisitionMode == 0 || modeSaisie == 1 ]]> + <![CDATA[ acquisitionMode == 0 || acquisitionMode == 1 ]]> </param> <message>observe.validation.species.length.bound##${min}##${max}</message> </field-validator> View it on GitLab: https://gitlab.com/ultreiaio/ird-observe/-/compare/feeb5bf51f33af0f4a3479bf… -- View it on GitLab: https://gitlab.com/ultreiaio/ird-observe/-/compare/feeb5bf51f33af0f4a3479bf… You're receiving this email because of your account on gitlab.com.
1 0
0 0
  • ← Newer
  • 1
  • 2
  • 3
  • 4
  • 5
  • 6
  • 7
  • 8
  • 9
  • 10
  • Older →

HyperKitty Powered by HyperKitty version 1.3.12.