This is an automated email from the git hooks/post-receive script. New commit to branch develop-5.x in repository observe. See https://gitlab.nuiton.org/codelutin/observe.git commit cc6a18a7397f7c97784521f7933c7604f89f52e6 Author: Tony CHEMIT <chemit@codelutin.com> Date: Sun Dec 4 14:54:01 2016 +0100 Correction des validateurs manquants (fixes #8671) --- .../services/dto/reference/DataReferenceSetDefinitions.java | 5 +++++ .../ird/observe/services/topia/binder/data/DataBinderSupport.java | 8 +++++--- .../observe/services/topia/binder/data/NonTargetLengthBinder.java | 8 +++++++- 3 files changed, 17 insertions(+), 4 deletions(-) diff --git a/services-dto/src/main/java/fr/ird/observe/services/dto/reference/DataReferenceSetDefinitions.java b/services-dto/src/main/java/fr/ird/observe/services/dto/reference/DataReferenceSetDefinitions.java index 6bd788d..3cb3571 100644 --- a/services-dto/src/main/java/fr/ird/observe/services/dto/reference/DataReferenceSetDefinitions.java +++ b/services-dto/src/main/java/fr/ird/observe/services/dto/reference/DataReferenceSetDefinitions.java @@ -41,6 +41,7 @@ import fr.ird.observe.services.dto.referential.ReferentialReference; import fr.ird.observe.services.dto.seine.ActivitySeineDto; import fr.ird.observe.services.dto.seine.FloatingObjectDto; import fr.ird.observe.services.dto.seine.NonTargetCatchDto; +import fr.ird.observe.services.dto.seine.NonTargetLengthDto; import fr.ird.observe.services.dto.seine.RouteDto; import fr.ird.observe.services.dto.seine.SchoolEstimateDto; import fr.ird.observe.services.dto.seine.SetSeineDto; @@ -81,6 +82,10 @@ public enum DataReferenceSetDefinitions { FLOATING_OBJECT(newDefinitionBuilder(FloatingObjectDto.class) .addProperty(String.class, FloatingObjectDto.PROPERTY_OBJECT_TYPE)), + NON_TARGET_LENGTH(newDefinitionBuilder(NonTargetLengthDto.class) + .addProperty(String.class, NonTargetLengthDto.PROPERTY_SPECIES) + .addProperty(Float.class, NonTargetLengthDto.PROPERTY_LENGTH)), + NON_TARGET_CATCH(newDefinitionBuilder(NonTargetCatchDto.class) .addProperty(String.class, NonTargetCatchDto.PROPERTY_SPECIES) .addProperty(String.class, NonTargetCatchDto.PROPERTY_SPECIES_FATE)), diff --git a/services-topia/src/main/java/fr/ird/observe/services/topia/binder/data/DataBinderSupport.java b/services-topia/src/main/java/fr/ird/observe/services/topia/binder/data/DataBinderSupport.java index b38df55..256694c 100644 --- a/services-topia/src/main/java/fr/ird/observe/services/topia/binder/data/DataBinderSupport.java +++ b/services-topia/src/main/java/fr/ird/observe/services/topia/binder/data/DataBinderSupport.java @@ -28,14 +28,14 @@ import com.google.common.collect.Maps; import com.google.common.collect.Sets; import fr.ird.observe.entities.CommentableEntity; import fr.ird.observe.entities.ObserveDataEntity; -import fr.ird.observe.services.topia.binder.BinderEngine; -import fr.ird.observe.services.topia.binder.BinderSupport; import fr.ird.observe.services.dto.CommentableDto; import fr.ird.observe.services.dto.DataDto; import fr.ird.observe.services.dto.DataReference; import fr.ird.observe.services.dto.constants.ReferentialLocale; import fr.ird.observe.services.dto.reference.DataReferenceSetDefinitions; import fr.ird.observe.services.dto.reference.ReferenceSetDefinition; +import fr.ird.observe.services.topia.binder.BinderEngine; +import fr.ird.observe.services.topia.binder.BinderSupport; import org.apache.commons.collections4.CollectionUtils; import org.apache.commons.logging.Log; import org.apache.commons.logging.LogFactory; @@ -48,6 +48,7 @@ import java.sql.SQLException; import java.util.Collection; import java.util.Date; import java.util.LinkedHashSet; +import java.util.Objects; import java.util.Set; /** @@ -110,7 +111,7 @@ public abstract class DataBinderSupport<E extends ObserveDataEntity, D extends D // -------------------------------------------------------------------------------------------------------------- // public DataReference<D> toDataReference(ReferentialLocale referentialLocale, E entity) { - throw new IllegalStateException("Not implemented"); + return toDataReference(entity); } protected DataReference<D> toDataReference(E entity, Serializable... values) { @@ -121,6 +122,7 @@ public abstract class DataBinderSupport<E extends ObserveDataEntity, D extends D reference.setCreateDate(entity.getTopiaCreateDate()); reference.setVersion(entity.getTopiaVersion()); + Objects.requireNonNull(definition, "Pas de définition trouvée pour " + this); reference.init(definition.getType(), definition.getPropertyNames(), values); return reference; diff --git a/services-topia/src/main/java/fr/ird/observe/services/topia/binder/data/NonTargetLengthBinder.java b/services-topia/src/main/java/fr/ird/observe/services/topia/binder/data/NonTargetLengthBinder.java index 44ea733..29768b1 100644 --- a/services-topia/src/main/java/fr/ird/observe/services/topia/binder/data/NonTargetLengthBinder.java +++ b/services-topia/src/main/java/fr/ird/observe/services/topia/binder/data/NonTargetLengthBinder.java @@ -25,6 +25,7 @@ package fr.ird.observe.services.topia.binder.data; import fr.ird.observe.entities.referentiel.Sex; import fr.ird.observe.entities.referentiel.Species; import fr.ird.observe.entities.seine.NonTargetLength; +import fr.ird.observe.services.dto.DataReference; import fr.ird.observe.services.dto.constants.ReferentialLocale; import fr.ird.observe.services.dto.referential.SexDto; import fr.ird.observe.services.dto.referential.SpeciesDto; @@ -38,7 +39,7 @@ import fr.ird.observe.services.dto.seine.NonTargetLengthDto; public class NonTargetLengthBinder extends DataBinderSupport<NonTargetLength, NonTargetLengthDto> { public NonTargetLengthBinder() { - super(NonTargetLength.class, NonTargetLengthDto.class, false); + super(NonTargetLength.class, NonTargetLengthDto.class, true); } @Override @@ -76,4 +77,9 @@ public class NonTargetLengthBinder extends DataBinderSupport<NonTargetLength, No dto.setSex(toReferentialReference(referentialLocale, entity.getSex(), SexDto.class)); } + + @Override + public DataReference<NonTargetLengthDto> toDataReference(ReferentialLocale referentialLocale, NonTargetLength entity) { + return toDataReference(entity, getLabel(referentialLocale, entity.getSpecies()), entity.getLength()); + } } -- To stop receiving notification emails like this one, please contact codelutin.com SCM administrator <admin+scm@codelutin.com>.