branch develop updated (d5db9ba -> 620eb01)
This is an automated email from the git hooks/post-receive script. New change to branch develop in repository observe. See http://git.codelutin.com/observe.git from d5db9ba Merge branch 'feature/7600' into develop new ec568b5 Migration de l'écran des estimations sur l'object (refs #7601) new e543f39 mise en place de la validation (refs #7601) new 620eb01 Merge branch 'feature/7601' into develop The 3 revisions listed above as "new" are entirely new to this repository and will be described in separate emails. The revisions listed as "adds" were already present in the repository and have only been added to this reference. Detailed log of new commits: commit 620eb0197314c985956c01de0a10061738269651 Merge: d5db9ba e543f39 Author: Sylvain Bavencoff <bavencoff@codelutin.com> Date: Thu Oct 15 18:00:54 2015 +0200 Merge branch 'feature/7601' into develop commit e543f390cb504960b60a6340439060f75bb16659 Author: Sylvain Bavencoff <bavencoff@codelutin.com> Date: Thu Oct 15 17:59:14 2015 +0200 mise en place de la validation (refs #7601) commit ec568b5369ea7287010ae9323e179a8ed56cfde1 Author: Sylvain Bavencoff <bavencoff@codelutin.com> Date: Thu Oct 15 17:44:50 2015 +0200 Migration de l'écran des estimations sur l'object (refs #7601) Summary of changes: .../fr/ird/observe/ObserveOpenDataManager.java | 5 ++ .../ui/content/table/ContentTableUIHandler.java | 2 +- .../table/impl/seine/ObjectSchoolEstimateUI.jaxx | 14 ++-- .../impl/seine/ObjectSchoolEstimateUIHandler.java | 38 ++++------ .../impl/seine/ObjectSchoolEstimateUIModel.java | 40 +++++++--- ...choolEstimateDto-n1-update-error-validation.xml | 0 ...choolEstimateDto-n1-update-error-validation.xml | 0 ...oolEstimateDto-n1-update-warning-validation.xml | 0 .../ObjectSchoolEstimateServiceController.java | 4 +- .../ird/observe/entities/referentiel/Species2.java | 18 +++++ .../observe/entities/referentiel/SpeciesLists.java | 11 +++ .../service/seine/ObjectSchoolEstimateService.java | 2 +- .../ird/observe/services/ObserveServiceTopia.java | 22 ++++-- .../ird/observe/services/entity/EntitiesSet.java | 36 +++++++++ .../services/entity/ObserveEntitiesFilters.java | 87 ++++++++++++++-------- .../services/entity/ObserveEntityFilter.java | 11 ++- .../services/entity/SpeciesListEntitiesSet.java | 27 +++++++ .../services/entity/UniverseEntitiesSet.java | 30 ++++++++ .../seine/ObjectSchoolEstimateServiceTopia.java | 4 +- 19 files changed, 259 insertions(+), 92 deletions(-) copy observe-entities-validation/src/main/resources/fr/ird/observe/entities/seine/FloatingObject-n1-update-objectSchoolEstimate-error-validation.xml => observe-application-swing/src/main/resources/fr/ird/observe/services/dto/seine/FloatingObjectSchoolEstimateDto-n1-update-error-validation.xml (100%) copy observe-entities-validation/src/main/resources/fr/ird/observe/entities/seine/ObjectSchoolEstimate-n1-update-error-validation.xml => observe-application-swing/src/main/resources/fr/ird/observe/services/dto/seine/ObjectSchoolEstimateDto-n1-update-error-validation.xml (100%) copy observe-entities-validation/src/main/resources/fr/ird/observe/entities/seine/ObjectSchoolEstimate-n1-update-warning-validation.xml => observe-application-swing/src/main/resources/fr/ird/observe/services/dto/seine/ObjectSchoolEstimateDto-n1-update-warning-validation.xml (100%) create mode 100644 observe-entities/src/main/java/fr/ird/observe/entities/referentiel/SpeciesLists.java create mode 100644 observe-services-topia/src/main/java/fr/ird/observe/services/entity/EntitiesSet.java create mode 100644 observe-services-topia/src/main/java/fr/ird/observe/services/entity/SpeciesListEntitiesSet.java create mode 100644 observe-services-topia/src/main/java/fr/ird/observe/services/entity/UniverseEntitiesSet.java -- To stop receiving notification emails like this one, please contact codelutin.com SCM administrator <admin+scm@list.forge.codelutin.com>.
This is an automated email from the git hooks/post-receive script. New commit to branch develop in repository observe. See http://git.codelutin.com/observe.git commit ec568b5369ea7287010ae9323e179a8ed56cfde1 Author: Sylvain Bavencoff <bavencoff@codelutin.com> Date: Thu Oct 15 17:44:50 2015 +0200 Migration de l'écran des estimations sur l'object (refs #7601) --- .../fr/ird/observe/ObserveOpenDataManager.java | 5 ++ .../ui/content/table/ContentTableUIHandler.java | 2 +- .../table/impl/seine/ObjectSchoolEstimateUI.jaxx | 12 ++- .../impl/seine/ObjectSchoolEstimateUIHandler.java | 38 ++++------ .../impl/seine/ObjectSchoolEstimateUIModel.java | 40 +++++++--- .../ObjectSchoolEstimateServiceController.java | 4 +- .../ird/observe/entities/referentiel/Species2.java | 18 +++++ .../observe/entities/referentiel/SpeciesLists.java | 11 +++ .../service/seine/ObjectSchoolEstimateService.java | 2 +- .../ird/observe/services/ObserveServiceTopia.java | 22 ++++-- .../ird/observe/services/entity/EntitiesSet.java | 36 +++++++++ .../services/entity/ObserveEntitiesFilters.java | 87 ++++++++++++++-------- .../services/entity/ObserveEntityFilter.java | 11 ++- .../services/entity/SpeciesListEntitiesSet.java | 27 +++++++ .../services/entity/UniverseEntitiesSet.java | 30 ++++++++ .../seine/ObjectSchoolEstimateServiceTopia.java | 4 +- 16 files changed, 258 insertions(+), 91 deletions(-) diff --git a/observe-application-swing/src/main/java/fr/ird/observe/ObserveOpenDataManager.java b/observe-application-swing/src/main/java/fr/ird/observe/ObserveOpenDataManager.java index eb113de..d146008 100644 --- a/observe-application-swing/src/main/java/fr/ird/observe/ObserveOpenDataManager.java +++ b/observe-application-swing/src/main/java/fr/ird/observe/ObserveOpenDataManager.java @@ -148,6 +148,11 @@ public class ObserveOpenDataManager implements Closeable { || isOpenActivityLongline(openableId); } + public boolean isOpenActivity(String activityId) { + return isOpenActivitySeine(activityId) + || isOpenActivityLongline(activityId); + } + @Override public void close() { openTripSeineId = null; diff --git a/observe-application-swing/src/main/java/fr/ird/observe/ui/content/table/ContentTableUIHandler.java b/observe-application-swing/src/main/java/fr/ird/observe/ui/content/table/ContentTableUIHandler.java index dc0cb19..081c03b 100644 --- a/observe-application-swing/src/main/java/fr/ird/observe/ui/content/table/ContentTableUIHandler.java +++ b/observe-application-swing/src/main/java/fr/ird/observe/ui/content/table/ContentTableUIHandler.java @@ -97,7 +97,7 @@ public abstract class ContentTableUIHandler<E extends IdDto, D extends IdDto> ex String activityId = dataContext.getSelectedActivityId(); - if (activityId.equals(dataContext.getOpenActivityId())) { + if (getOpenDataManager().isOpenActivity(activityId)) { // mode mise a jour return ContentMode.UPDATE; diff --git a/observe-application-swing/src/main/java/fr/ird/observe/ui/content/table/impl/seine/ObjectSchoolEstimateUI.jaxx b/observe-application-swing/src/main/java/fr/ird/observe/ui/content/table/impl/seine/ObjectSchoolEstimateUI.jaxx index 8dec537..4c5d393 100644 --- a/observe-application-swing/src/main/java/fr/ird/observe/ui/content/table/impl/seine/ObjectSchoolEstimateUI.jaxx +++ b/observe-application-swing/src/main/java/fr/ird/observe/ui/content/table/impl/seine/ObjectSchoolEstimateUI.jaxx @@ -21,19 +21,17 @@ --> <fr.ird.observe.ui.content.table.ContentTableUI - superGenericType='FloatingObjectDto, ObjectSchoolEstimateDto' + superGenericType='FloatingObjectSchoolEstimateDto, ObjectSchoolEstimateDto' contentTitle='{n("observe.common.schoolEstimate")}' saveNewEntryText='{n("observe.action.create.schoolEstimate")}' - saveNewEntryTip='{n("observe.action.create.schoolEstimate.tip")}' - - > + saveNewEntryTip='{n("observe.action.create.schoolEstimate.tip")}'> <style source="../../CommonTable.css"/> <import> fr.ird.observe.services.dto.ReferenceDto fr.ird.observe.services.dto.CommentableDto - fr.ird.observe.services.dto.seine.FloatingObjectDto + fr.ird.observe.services.dto.seine.FloatingObjectSchoolEstimateDto fr.ird.observe.services.dto.seine.ObjectSchoolEstimateDto fr.ird.observe.services.dto.referential.SpeciesDto fr.ird.observe.ui.content.table.* @@ -54,7 +52,7 @@ <ObjectSchoolEstimateUIModel id='model' constructorParams='this'/> <!-- edit bean --> - <FloatingObjectDto id='bean'/> + <FloatingObjectSchoolEstimateDto id='bean'/> <!-- table edit bean --> <ObjectSchoolEstimateDto id='tableEditBean'/> @@ -65,7 +63,7 @@ <!-- le validateur de l'écran --> <BeanValidator id='validator' autoField='true' - beanClass='fr.ird.observe.services.dto.seine.FloatingObjectDto' + beanClass='fr.ird.observe.services.dto.seine.FloatingObjectSchoolEstimateDto' errorTableModel='{getErrorTableModel()}' context='n1-update-schoolEstimate'/> diff --git a/observe-application-swing/src/main/java/fr/ird/observe/ui/content/table/impl/seine/ObjectSchoolEstimateUIHandler.java b/observe-application-swing/src/main/java/fr/ird/observe/ui/content/table/impl/seine/ObjectSchoolEstimateUIHandler.java index 4b8ff2c..495b6c9 100644 --- a/observe-application-swing/src/main/java/fr/ird/observe/ui/content/table/impl/seine/ObjectSchoolEstimateUIHandler.java +++ b/observe-application-swing/src/main/java/fr/ird/observe/ui/content/table/impl/seine/ObjectSchoolEstimateUIHandler.java @@ -22,20 +22,20 @@ package fr.ird.observe.ui.content.table.impl.seine; import fr.ird.observe.ObserveSwingApplicationContext; -import fr.ird.observe.configuration.ObserveSwingApplicationConfig; import fr.ird.observe.business.db.constants.DataContextType; import fr.ird.observe.services.dto.FormDto; +import fr.ird.observe.services.dto.ReferenceDto; import fr.ird.observe.services.dto.referential.SpeciesDto; -import fr.ird.observe.services.dto.seine.FloatingObjectDto; +import fr.ird.observe.services.dto.seine.FloatingObjectSchoolEstimateDto; +import fr.ird.observe.services.dto.seine.FloatingObjectSchoolEstimateDtos; import fr.ird.observe.services.dto.seine.ObjectSchoolEstimateDto; -import fr.ird.observe.services.dto.seine.TargetSampleDtos; -import fr.ird.observe.services.service.seine.FloatingObjectService; +import fr.ird.observe.services.service.seine.ObjectSchoolEstimateService; import fr.ird.observe.ui.UIHelper; import fr.ird.observe.ui.content.table.ContentTableUIHandler; import org.apache.commons.logging.Log; import org.apache.commons.logging.LogFactory; -import javax.swing.*; +import javax.swing.JTable; import javax.swing.table.DefaultTableCellRenderer; import static org.nuiton.i18n.I18n.n; @@ -44,7 +44,7 @@ import static org.nuiton.i18n.I18n.n; * @author Tony Chemit - chemit@codelutin.com * @since 1.0 */ -public class ObjectSchoolEstimateUIHandler extends ContentTableUIHandler<FloatingObjectDto, ObjectSchoolEstimateDto> { +public class ObjectSchoolEstimateUIHandler extends ContentTableUIHandler<FloatingObjectSchoolEstimateDto, ObjectSchoolEstimateDto> { /** Logger */ @@ -84,35 +84,23 @@ public class ObjectSchoolEstimateUIHandler extends ContentTableUIHandler<Floatin n("observe.schoolEstimate.table.weight"), n("observe.schoolEstimate.table.weight.tip")); - UIHelper.setTableColumnRenderer(table, 0, UIHelper.newDecorateTableCellRenderer(renderer, SpeciesDto.class)); + UIHelper.setTableColumnRenderer(table, 0, UIHelper.newDecorateTableCellRenderer(renderer, ReferenceDto.class, SpeciesDto.class.getSimpleName())); UIHelper.setTableColumnRenderer(table, 1, UIHelper.newEmptyNumberTableCellRenderer(renderer)); } @Override - public void initUI() throws Exception { - - // add a listPredicate to get only species from the correct configured speciesList - ObserveSwingApplicationConfig config = getUi().getContextValue(ObserveSwingApplicationConfig.class); - String speciesListId = config.getSpeciesListSeineObjectSchoolEstimateId(); - prepareSpeciesList(speciesListId, getUi().getSpecies(), n("observe.error.speciesList.seine.objectSchoolEstimate.notFound")); - - super.initUI(); - - } - - @Override - protected void doPersist(FloatingObjectDto bean) { - getFloatingObjectService().save(getSelectedParentId(), bean); + protected void doPersist(FloatingObjectSchoolEstimateDto bean) { + getObjectSchoolEstimateService().save(bean); } @Override protected void loadEditBean(String beanId) { - FormDto<FloatingObjectDto> formDto = getFloatingObjectService().loadToEdit(beanId); + FormDto<FloatingObjectSchoolEstimateDto> formDto = getObjectSchoolEstimateService().loadToEdit(beanId); getModel().setFormDto(formDto); - TargetSampleDtos.copyCommentableDto(formDto.getForm(), getBean()); + FloatingObjectSchoolEstimateDtos.copyFloatingObjectSchoolEstimateDto(formDto.getForm(), getBean()); } - protected FloatingObjectService getFloatingObjectService() { - return ObserveSwingApplicationContext.get().newService(FloatingObjectService.class); + protected ObjectSchoolEstimateService getObjectSchoolEstimateService() { + return ObserveSwingApplicationContext.get().newService(ObjectSchoolEstimateService.class); } } diff --git a/observe-application-swing/src/main/java/fr/ird/observe/ui/content/table/impl/seine/ObjectSchoolEstimateUIModel.java b/observe-application-swing/src/main/java/fr/ird/observe/ui/content/table/impl/seine/ObjectSchoolEstimateUIModel.java index 31c2519..dd6d814 100644 --- a/observe-application-swing/src/main/java/fr/ird/observe/ui/content/table/impl/seine/ObjectSchoolEstimateUIModel.java +++ b/observe-application-swing/src/main/java/fr/ird/observe/ui/content/table/impl/seine/ObjectSchoolEstimateUIModel.java @@ -23,13 +23,15 @@ package fr.ird.observe.ui.content.table.impl.seine; */ import com.google.common.collect.Lists; -import fr.ird.observe.services.dto.seine.FloatingObjectDto; +import fr.ird.observe.services.dto.seine.FloatingObjectSchoolEstimateDto; import fr.ird.observe.services.dto.seine.ObjectSchoolEstimateDto; +import fr.ird.observe.services.dto.seine.ObjectSchoolEstimateDtos; import fr.ird.observe.ui.content.table.ContentTableMeta; import fr.ird.observe.ui.content.table.ContentTableModel; import fr.ird.observe.ui.content.table.ContentTableUIModel; import fr.ird.observe.ui.content.table.ObserveContentTableUI; +import java.util.Collection; import java.util.List; /** @@ -38,19 +40,20 @@ import java.util.List; * @author Tony Chemit - chemit@codelutin.com * @since XXX */ -public class ObjectSchoolEstimateUIModel extends ContentTableUIModel<FloatingObjectDto, ObjectSchoolEstimateDto> { +public class ObjectSchoolEstimateUIModel extends ContentTableUIModel<FloatingObjectSchoolEstimateDto, ObjectSchoolEstimateDto> { private static final long serialVersionUID = 1L; public ObjectSchoolEstimateUIModel(ObjectSchoolEstimateUI ui) { - super(FloatingObjectDto.class, + super(FloatingObjectSchoolEstimateDto.class, ObjectSchoolEstimateDto.class, new String[]{ - //FIXME -// FloatingObjectDto.PROPERTY_OBJECT_SCHOOL_ESTIMATE, - FloatingObjectDto.PROPERTY_COMMENT}, - new String[]{ObjectSchoolEstimateDto.PROPERTY_SPECIES, ObjectSchoolEstimateDto.PROPERTY_TOTAL_WEIGHT} + FloatingObjectSchoolEstimateDto.PROPERTY_OBJECT_SCHOOL_ESTIMATE, + FloatingObjectSchoolEstimateDto.PROPERTY_COMMENT}, + new String[]{ + ObjectSchoolEstimateDto.PROPERTY_SPECIES, + ObjectSchoolEstimateDto.PROPERTY_TOTAL_WEIGHT} ); List<ContentTableMeta<ObjectSchoolEstimateDto>> metas = Lists.newArrayList( @@ -62,8 +65,25 @@ public class ObjectSchoolEstimateUIModel extends ContentTableUIModel<FloatingObj } @Override - protected ContentTableModel<FloatingObjectDto, ObjectSchoolEstimateDto> createTableModel(ObserveContentTableUI<FloatingObjectDto, ObjectSchoolEstimateDto> ui, List<ContentTableMeta<ObjectSchoolEstimateDto>> contentTableMetas) { - // FIXME - return null; + protected ContentTableModel<FloatingObjectSchoolEstimateDto, ObjectSchoolEstimateDto> createTableModel( + ObserveContentTableUI<FloatingObjectSchoolEstimateDto, ObjectSchoolEstimateDto> ui, + List<ContentTableMeta<ObjectSchoolEstimateDto>> contentTableMetas) { + + return new ContentTableModel<FloatingObjectSchoolEstimateDto, ObjectSchoolEstimateDto>(ui, contentTableMetas) { + @Override + protected Collection<ObjectSchoolEstimateDto> getChilds(FloatingObjectSchoolEstimateDto bean) { + return bean.getObjectSchoolEstimate(); + } + + @Override + protected void load(ObjectSchoolEstimateDto source, ObjectSchoolEstimateDto target) { + ObjectSchoolEstimateDtos.copyObjectSchoolEstimateDto(source, target); + } + + @Override + protected void setChilds(FloatingObjectSchoolEstimateDto parent, List<ObjectSchoolEstimateDto> childs) { + parent.setObjectSchoolEstimate(childs); + } + }; } } diff --git a/observe-application-web/src/main/java/fr/ird/observe/application/web/controller/v1/seine/ObjectSchoolEstimateServiceController.java b/observe-application-web/src/main/java/fr/ird/observe/application/web/controller/v1/seine/ObjectSchoolEstimateServiceController.java index d74691a..66e6737 100644 --- a/observe-application-web/src/main/java/fr/ird/observe/application/web/controller/v1/seine/ObjectSchoolEstimateServiceController.java +++ b/observe-application-web/src/main/java/fr/ird/observe/application/web/controller/v1/seine/ObjectSchoolEstimateServiceController.java @@ -47,7 +47,7 @@ public class ObjectSchoolEstimateServiceController extends ObserveAuthenticatedS } @Override - public String save(FormDto<FloatingObjectSchoolEstimateDto> form) { - return service.save(form); + public String save(FloatingObjectSchoolEstimateDto dto) { + return service.save(dto); } } diff --git a/observe-entities/src/main/java/fr/ird/observe/entities/referentiel/Species2.java b/observe-entities/src/main/java/fr/ird/observe/entities/referentiel/Species2.java index 0e5ec3e..d80a2d6 100644 --- a/observe-entities/src/main/java/fr/ird/observe/entities/referentiel/Species2.java +++ b/observe-entities/src/main/java/fr/ird/observe/entities/referentiel/Species2.java @@ -51,6 +51,10 @@ public class Species2 { return new SpeciesByIdPredicate(ids); } + public static Predicate<Species> newSpeciesListPredicate(SpeciesList speciesList) { + return new SpeciesBySpeciesListPredicate(speciesList); + } + public static <E extends Species> List<E> filterByOcean(Collection<E> speciess, final Ocean ocean) { @@ -129,4 +133,18 @@ public class Species2 { return ids.contains(input.getTopiaId()); } } + + private static class SpeciesBySpeciesListPredicate implements Predicate<Species> { + + private final SpeciesList speciesList; + + public SpeciesBySpeciesListPredicate(SpeciesList speciesList) { + this.speciesList = speciesList; + } + + @Override + public boolean apply(Species input) { + return speciesList.containsSpecies(input); + } + } } diff --git a/observe-entities/src/main/java/fr/ird/observe/entities/referentiel/SpeciesLists.java b/observe-entities/src/main/java/fr/ird/observe/entities/referentiel/SpeciesLists.java new file mode 100644 index 0000000..e10d867 --- /dev/null +++ b/observe-entities/src/main/java/fr/ird/observe/entities/referentiel/SpeciesLists.java @@ -0,0 +1,11 @@ +package fr.ird.observe.entities.referentiel; + +/** + * @author Sylvain Bavencoff - bavencoff@codelutin.com + */ +public class SpeciesLists { + + // FIXME cette valeur n'est pas au bon endroit ici + public static String SPECIES_LIST_SEINE_OBJECT_SCHOOL_ESTIMATE_ID = "fr.ird.observe.entities.referentiel.SpeciesList#1239832675370#0.1"; + +} diff --git a/observe-services-api/src/main/java/fr/ird/observe/services/service/seine/ObjectSchoolEstimateService.java b/observe-services-api/src/main/java/fr/ird/observe/services/service/seine/ObjectSchoolEstimateService.java index 8f9599e..73b9117 100644 --- a/observe-services-api/src/main/java/fr/ird/observe/services/service/seine/ObjectSchoolEstimateService.java +++ b/observe-services-api/src/main/java/fr/ird/observe/services/service/seine/ObjectSchoolEstimateService.java @@ -44,5 +44,5 @@ public interface ObjectSchoolEstimateService extends ObserveService { @Write @WriteDataPermission @PostRequest - String save(FormDto<FloatingObjectSchoolEstimateDto> form); + String save(FloatingObjectSchoolEstimateDto dto); } diff --git a/observe-services-topia/src/main/java/fr/ird/observe/services/ObserveServiceTopia.java b/observe-services-topia/src/main/java/fr/ird/observe/services/ObserveServiceTopia.java index 3584780..741cddc 100644 --- a/observe-services-topia/src/main/java/fr/ird/observe/services/ObserveServiceTopia.java +++ b/observe-services-topia/src/main/java/fr/ird/observe/services/ObserveServiceTopia.java @@ -24,11 +24,8 @@ package fr.ird.observe.services; import com.google.common.base.Optional; import com.google.common.base.Preconditions; -import com.google.common.base.Predicate; -import com.google.common.base.Predicates; import com.google.common.collect.ImmutableMap; import com.google.common.collect.ImmutableSet; -import com.google.common.collect.Iterables; import com.google.common.collect.Multimap; import com.google.common.collect.Sets; import fr.ird.observe.ObserveTopiaApplicationContext; @@ -60,6 +57,7 @@ import fr.ird.observe.services.dto.ReferenceSetDtos; import fr.ird.observe.services.dto.ReferenceTypeName; import fr.ird.observe.services.dto.constants.ReferentialLocale; import fr.ird.observe.services.dto.referential.ReferentialDto; +import fr.ird.observe.services.entity.EntitiesSet; import fr.ird.observe.services.entity.ObserveEntitiesFilters; import fr.ird.observe.services.entity.ObserveEntityFilter; import fr.ird.observe.services.service.ConcurrentModificationException; @@ -362,7 +360,7 @@ public class ObserveServiceTopia implements ObserveService { filter.getDtoType(), filter.getPropertyName(), filter.getEntityType(), - filter.getFilter()); + filter.getEntitiesSet()); labels.add(referenceSet); } FormDto<D> form = FormDtos.newFormDto(dtoType, dto, labels.build()); @@ -430,7 +428,7 @@ public class ObserveServiceTopia implements ObserveService { protected <D extends IdDto> ReferenceSetDto<D> getReferenceSet(Class<D> dtoType) { Class<TopiaEntity> entityType = getEntityType(dtoType); - return getReferenceSet(dtoType, null, entityType, Predicates.alwaysTrue()); + return getReferenceSet(dtoType, null, entityType, null); } @@ -438,8 +436,18 @@ public class ObserveServiceTopia implements ObserveService { Class<D> dtoType, String propertyName, Class<E> entityType, - Predicate<? super E> filter) { - Iterable<E> entities = Iterables.filter(loadEntities(entityType), filter); + EntitiesSet<E> entitiesSet) { + + Iterable<E> entities; + + if (entitiesSet == null) { + + entities = loadEntities(entityType); + + } else { + entities = entitiesSet.getEntities(serviceContext.getTopiaPersistenceContext()); + } + LinkedHashSet<ReferenceDto<D>> labels = new LinkedHashSet<>(); for (TopiaEntity entity : entities) { diff --git a/observe-services-topia/src/main/java/fr/ird/observe/services/entity/EntitiesSet.java b/observe-services-topia/src/main/java/fr/ird/observe/services/entity/EntitiesSet.java new file mode 100644 index 0000000..6b57f17 --- /dev/null +++ b/observe-services-topia/src/main/java/fr/ird/observe/services/entity/EntitiesSet.java @@ -0,0 +1,36 @@ +package fr.ird.observe.services.entity; + +import com.google.common.base.Predicate; +import com.google.common.collect.Iterables; +import fr.ird.observe.ObserveTopiaPersistenceContext; +import org.nuiton.topia.persistence.TopiaEntity; + +/** + * @author Sylvain Bavencoff - bavencoff@codelutin.com + */ +public abstract class EntitiesSet<E extends TopiaEntity> { + + protected final Predicate<E> filter; + + public EntitiesSet(Predicate<E> filter) { + this.filter = filter; + } + + public EntitiesSet() { + this.filter = null; + } + + protected abstract Iterable<E> getEntitiesSetBase(ObserveTopiaPersistenceContext persistenceContext); + + public Predicate<E> getFilter() { + return filter; + } + + public Iterable<E> getEntities(ObserveTopiaPersistenceContext persistenceContext) { + Iterable<E> result = getEntitiesSetBase(persistenceContext); + if (filter != null) { + result = Iterables.filter(result, filter); + } + return result; + } +} diff --git a/observe-services-topia/src/main/java/fr/ird/observe/services/entity/ObserveEntitiesFilters.java b/observe-services-topia/src/main/java/fr/ird/observe/services/entity/ObserveEntitiesFilters.java index 355b0c4..05f9ecc 100644 --- a/observe-services-topia/src/main/java/fr/ird/observe/services/entity/ObserveEntitiesFilters.java +++ b/observe-services-topia/src/main/java/fr/ird/observe/services/entity/ObserveEntitiesFilters.java @@ -5,10 +5,15 @@ import com.google.common.base.Predicate; import com.google.common.base.Predicates; import com.google.common.collect.Maps; import fr.ird.observe.entities.longline.TripLongline; +import fr.ird.observe.entities.referentiel.Person; import fr.ird.observe.entities.referentiel.Persons; import fr.ird.observe.entities.referentiel.ReferenceEntities; import fr.ird.observe.entities.referentiel.ReferenceEntity; +import fr.ird.observe.entities.referentiel.Species; +import fr.ird.observe.entities.referentiel.SpeciesLists; +import fr.ird.observe.entities.referentiel.Vessel; import fr.ird.observe.entities.referentiel.Vessels; +import fr.ird.observe.entities.seine.ObjectSchoolEstimate; import fr.ird.observe.entities.seine.TripSeine; import fr.ird.observe.services.dto.IdDto; import org.nuiton.topia.persistence.TopiaEntity; @@ -20,18 +25,39 @@ import java.util.Map; */ public class ObserveEntitiesFilters { - protected static Map<Class<? extends TopiaEntity>, Map<String, Predicate<? extends TopiaEntity>>> FILTERS = null; + protected static Map<Class<? extends TopiaEntity>, Map<String, EntitiesSet>> ENTITIES_SETS = null; - protected static <P extends TopiaEntity> void addFilter(Class<P> parentType, String propertyName, Predicate<? extends TopiaEntity> filter) { + protected static <P extends TopiaEntity, C extends TopiaEntity> void addFilter( + Class<P> parentType, + Class<C> propertyType, + String propertyName, + Predicate<C> filter) { + + if (ReferenceEntity.class.isAssignableFrom(propertyType)) { - Map<String, Predicate<? extends TopiaEntity>> filterByProperty = FILTERS.get(parentType); + filter = Predicates.and(filter, (Predicate<C>) ReferenceEntities.newEnablePredicate()); - if (filterByProperty == null) { - filterByProperty = Maps.newHashMap(); - FILTERS.put(parentType, filterByProperty); } - filterByProperty.put(propertyName, filter); + EntitiesSet<C> entitiesSet = new UniverseEntitiesSet<C>(propertyType, filter); + + addFilter(parentType, propertyName, entitiesSet); + + } + + protected static <P extends TopiaEntity, C extends TopiaEntity> void addFilter( + Class<P> parentType, + String propertyName, + EntitiesSet<C> entitiesSet) { + + Map<String, EntitiesSet> entitiesSetByProperty = ENTITIES_SETS.get(parentType); + + if (entitiesSetByProperty == null) { + entitiesSetByProperty = Maps.newHashMap(); + ENTITIES_SETS.put(parentType, entitiesSetByProperty); + } + + entitiesSetByProperty.put(propertyName, entitiesSet); } @@ -46,41 +72,37 @@ public class ObserveEntitiesFilters { Preconditions.checkNotNull(dtoType, "DTO type is required"); Preconditions.checkNotNull(propertyName, "Property name is required"); - if (FILTERS == null) { + if (ENTITIES_SETS == null) { init(); } - Predicate<C> predicate = null; + EntitiesSet<C> entitiesSet = null; - Map<String, Predicate<? extends TopiaEntity>> filterByProperty = FILTERS.get(parentType); + Map<String, EntitiesSet> filterByProperty = ENTITIES_SETS.get(parentType); if (filterByProperty != null) { - predicate = (Predicate<C>) filterByProperty.get(propertyName); + entitiesSet = (EntitiesSet<C>) filterByProperty.get(propertyName); } ObserveEntityFilter<P, C, D> observeEntityFilter; - if (predicate == null) { + if (entitiesSet == null) { if (ReferenceEntity.class.isAssignableFrom(propertyType)) { - predicate = (Predicate<C>) ReferenceEntities.newEnablePredicate(); + entitiesSet = new UniverseEntitiesSet<C>(propertyType, (Predicate<C>) ReferenceEntities.newEnablePredicate()); } else { - predicate = Predicates.alwaysTrue(); + entitiesSet = new UniverseEntitiesSet<C>(propertyType); + } - observeEntityFilter = new ObserveEntityFilter<P, C, D>(parentType, propertyType, dtoType, null, predicate); + observeEntityFilter = new ObserveEntityFilter<P, C, D>(parentType, propertyType, dtoType, null, entitiesSet); } else { - if (ReferenceEntity.class.isAssignableFrom(propertyType)) { - - predicate = Predicates.and(predicate, (Predicate<C>) ReferenceEntities.newEnablePredicate()); - - } - observeEntityFilter = new ObserveEntityFilter<P, C, D>(parentType, propertyType, dtoType, propertyName, predicate); + observeEntityFilter = new ObserveEntityFilter<P, C, D>(parentType, propertyType, dtoType, propertyName, entitiesSet); } return observeEntityFilter; @@ -88,18 +110,23 @@ public class ObserveEntitiesFilters { } public static void init() { - FILTERS = Maps.newHashMap(); + ENTITIES_SETS = Maps.newHashMap(); // TripSeine - addFilter(TripSeine.class, TripSeine.PROPERTY_CAPTAIN, Persons.newCaptainPredicate()); - addFilter(TripSeine.class, TripSeine.PROPERTY_OBSERVER, Persons.newObserverPredicate()); - addFilter(TripSeine.class, TripSeine.PROPERTY_DATA_ENTRY_OPERATOR, Persons.newDataEntryOperatorPredicate()); - addFilter(TripSeine.class, TripSeine.PROPERTY_VESSEL, Vessels.newVesselSeinePredicate()); + addFilter(TripSeine.class, Person.class, TripSeine.PROPERTY_CAPTAIN, Persons.newCaptainPredicate()); + addFilter(TripSeine.class, Person.class, TripSeine.PROPERTY_OBSERVER, Persons.newObserverPredicate()); + addFilter(TripSeine.class, Person.class, TripSeine.PROPERTY_DATA_ENTRY_OPERATOR, Persons.newDataEntryOperatorPredicate()); + addFilter(TripSeine.class, Vessel.class, TripSeine.PROPERTY_VESSEL, Vessels.newVesselSeinePredicate()); // TripLongLine - addFilter(TripLongline.class, TripLongline.PROPERTY_CAPTAIN, Persons.newCaptainPredicate()); - addFilter(TripLongline.class, TripLongline.PROPERTY_OBSERVER, Persons.newObserverPredicate()); - addFilter(TripLongline.class, TripLongline.PROPERTY_DATA_ENTRY_OPERATOR, Persons.newDataEntryOperatorPredicate()); - addFilter(TripLongline.class, TripLongline.PROPERTY_VESSEL, Vessels.newVesselLonglinePredicate()); + addFilter(TripLongline.class, Person.class, TripLongline.PROPERTY_CAPTAIN, Persons.newCaptainPredicate()); + addFilter(TripLongline.class, Person.class, TripLongline.PROPERTY_OBSERVER, Persons.newObserverPredicate()); + addFilter(TripLongline.class, Person.class, TripLongline.PROPERTY_DATA_ENTRY_OPERATOR, Persons.newDataEntryOperatorPredicate()); + addFilter(TripLongline.class, Vessel.class, TripLongline.PROPERTY_VESSEL, Vessels.newVesselLonglinePredicate()); + + // ObjectSchoolEstimate + addFilter(ObjectSchoolEstimate.class, + ObjectSchoolEstimate.PROPERTY_SPECIES, + new SpeciesListEntitiesSet(ReferenceEntities.<Species>newEnablePredicate(), SpeciesLists.SPECIES_LIST_SEINE_OBJECT_SCHOOL_ESTIMATE_ID)); } diff --git a/observe-services-topia/src/main/java/fr/ird/observe/services/entity/ObserveEntityFilter.java b/observe-services-topia/src/main/java/fr/ird/observe/services/entity/ObserveEntityFilter.java index 74d8d64..216d867 100644 --- a/observe-services-topia/src/main/java/fr/ird/observe/services/entity/ObserveEntityFilter.java +++ b/observe-services-topia/src/main/java/fr/ird/observe/services/entity/ObserveEntityFilter.java @@ -1,6 +1,5 @@ package fr.ird.observe.services.entity; -import com.google.common.base.Predicate; import fr.ird.observe.services.dto.IdDto; import org.nuiton.topia.persistence.TopiaEntity; @@ -17,14 +16,14 @@ public class ObserveEntityFilter<P extends TopiaEntity, C extends TopiaEntity, D protected final String propertyName; - protected final Predicate<C> filter; + protected final EntitiesSet<C> entitiesSet; - public ObserveEntityFilter(Class<P> parentType, Class<C> entityType, Class<D> dtoType, String propertyName, Predicate<C> filter) { + public ObserveEntityFilter(Class<P> parentType, Class<C> entityType, Class<D> dtoType, String propertyName, EntitiesSet<C> entitiesSet) { this.parentType = parentType; this.entityType = entityType; this.dtoType = dtoType; this.propertyName = propertyName; - this.filter = filter; + this.entitiesSet = entitiesSet; } public Class<P> getParentType() { @@ -43,8 +42,8 @@ public class ObserveEntityFilter<P extends TopiaEntity, C extends TopiaEntity, D return propertyName; } - public Predicate<C> getFilter() { - return filter; + public EntitiesSet<C> getEntitiesSet() { + return entitiesSet; } @Override diff --git a/observe-services-topia/src/main/java/fr/ird/observe/services/entity/SpeciesListEntitiesSet.java b/observe-services-topia/src/main/java/fr/ird/observe/services/entity/SpeciesListEntitiesSet.java new file mode 100644 index 0000000..3b6a54b --- /dev/null +++ b/observe-services-topia/src/main/java/fr/ird/observe/services/entity/SpeciesListEntitiesSet.java @@ -0,0 +1,27 @@ +package fr.ird.observe.services.entity; + +import com.google.common.base.Predicate; +import fr.ird.observe.ObserveTopiaPersistenceContext; +import fr.ird.observe.entities.referentiel.Species; +import fr.ird.observe.entities.referentiel.SpeciesList; +import fr.ird.observe.entities.referentiel.SpeciesListTopiaDao; + +/** + * @author Sylvain Bavencoff - bavencoff@codelutin.com + */ +public class SpeciesListEntitiesSet extends EntitiesSet<Species> { + + protected final String speciesListId; + + public SpeciesListEntitiesSet(Predicate<Species> filter, String speciesListId) { + super(filter); + this.speciesListId = speciesListId; + } + + @Override + protected Iterable<Species> getEntitiesSetBase(ObserveTopiaPersistenceContext persistenceContext) { + SpeciesListTopiaDao speciesListDao = persistenceContext.getSpeciesListDao(); + SpeciesList speciesList = speciesListDao.forTopiaIdEquals(speciesListId).findUnique(); + return speciesList.getSpecies(); + } +} diff --git a/observe-services-topia/src/main/java/fr/ird/observe/services/entity/UniverseEntitiesSet.java b/observe-services-topia/src/main/java/fr/ird/observe/services/entity/UniverseEntitiesSet.java new file mode 100644 index 0000000..239d0d5 --- /dev/null +++ b/observe-services-topia/src/main/java/fr/ird/observe/services/entity/UniverseEntitiesSet.java @@ -0,0 +1,30 @@ +package fr.ird.observe.services.entity; + +import com.google.common.base.Predicate; +import fr.ird.observe.ObserveTopiaPersistenceContext; +import org.nuiton.topia.persistence.TopiaDao; +import org.nuiton.topia.persistence.TopiaEntity; + +/** + * @author Sylvain Bavencoff - bavencoff@codelutin.com + */ +public class UniverseEntitiesSet<E extends TopiaEntity> extends EntitiesSet<E> { + + protected final Class<E> entityClass; + + public UniverseEntitiesSet(Class<E> entityClass, Predicate<E> filter) { + super(filter); + this.entityClass = entityClass; + } + + public UniverseEntitiesSet(Class<E> entityClass) { + super(); + this.entityClass = entityClass; + } + + protected Iterable<E> getEntitiesSetBase(ObserveTopiaPersistenceContext persistenceContext) { + TopiaDao<E> dao = persistenceContext.getDao(entityClass); + return dao.findAll(); + } + +} diff --git a/observe-services-topia/src/main/java/fr/ird/observe/services/service/seine/ObjectSchoolEstimateServiceTopia.java b/observe-services-topia/src/main/java/fr/ird/observe/services/service/seine/ObjectSchoolEstimateServiceTopia.java index 440a9e9..51a1c05 100644 --- a/observe-services-topia/src/main/java/fr/ird/observe/services/service/seine/ObjectSchoolEstimateServiceTopia.java +++ b/observe-services-topia/src/main/java/fr/ird/observe/services/service/seine/ObjectSchoolEstimateServiceTopia.java @@ -65,10 +65,10 @@ public class ObjectSchoolEstimateServiceTopia extends ObserveServiceTopia implem } @Override - public String save(FormDto<FloatingObjectSchoolEstimateDto> form) { + public String save(FloatingObjectSchoolEstimateDto dto) { FloatingObject floatingObject = - dtoToEntity(FloatingObjectSchoolEstimateDto.class, FloatingObject.class, form.getForm()); + dtoToEntity(FloatingObjectSchoolEstimateDto.class, FloatingObject.class, dto); floatingObject = saveEntity(FloatingObject.class, floatingObject); -- To stop receiving notification emails like this one, please contact codelutin.com SCM administrator <admin+scm@list.forge.codelutin.com>.
This is an automated email from the git hooks/post-receive script. New commit to branch develop in repository observe. See http://git.codelutin.com/observe.git commit e543f390cb504960b60a6340439060f75bb16659 Author: Sylvain Bavencoff <bavencoff@codelutin.com> Date: Thu Oct 15 17:59:14 2015 +0200 mise en place de la validation (refs #7601) --- .../table/impl/seine/ObjectSchoolEstimateUI.jaxx | 2 +- ...choolEstimateDto-n1-update-error-validation.xml | 51 ++++++++++++++++++++ ...choolEstimateDto-n1-update-error-validation.xml | 55 ++++++++++++++++++++++ ...oolEstimateDto-n1-update-warning-validation.xml | 40 ++++++++++++++++ 4 files changed, 147 insertions(+), 1 deletion(-) diff --git a/observe-application-swing/src/main/java/fr/ird/observe/ui/content/table/impl/seine/ObjectSchoolEstimateUI.jaxx b/observe-application-swing/src/main/java/fr/ird/observe/ui/content/table/impl/seine/ObjectSchoolEstimateUI.jaxx index 4c5d393..df2d78e 100644 --- a/observe-application-swing/src/main/java/fr/ird/observe/ui/content/table/impl/seine/ObjectSchoolEstimateUI.jaxx +++ b/observe-application-swing/src/main/java/fr/ird/observe/ui/content/table/impl/seine/ObjectSchoolEstimateUI.jaxx @@ -65,7 +65,7 @@ autoField='true' beanClass='fr.ird.observe.services.dto.seine.FloatingObjectSchoolEstimateDto' errorTableModel='{getErrorTableModel()}' - context='n1-update-schoolEstimate'/> + context='n1-update'/> <!-- le validateur d'une entrée de tableau --> <BeanValidator id='validatorTable' diff --git a/observe-application-swing/src/main/resources/fr/ird/observe/services/dto/seine/FloatingObjectSchoolEstimateDto-n1-update-error-validation.xml b/observe-application-swing/src/main/resources/fr/ird/observe/services/dto/seine/FloatingObjectSchoolEstimateDto-n1-update-error-validation.xml new file mode 100644 index 0000000..4e638fe --- /dev/null +++ b/observe-application-swing/src/main/resources/fr/ird/observe/services/dto/seine/FloatingObjectSchoolEstimateDto-n1-update-error-validation.xml @@ -0,0 +1,51 @@ +<?xml version="1.0" encoding="UTF-8"?> +<!-- + #%L + ObServe :: Validation + %% + Copyright (C) 2008 - 2010 IRD, Codelutin, Tony Chemit + %% + This program is free software: you can redistribute it and/or modify + it under the terms of the GNU General Public License as + published by the Free Software Foundation, either version 3 of the + License, or (at your option) any later version. + + This program is distributed in the hope that it will be useful, + but WITHOUT ANY WARRANTY; without even the implied warranty of + MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the + GNU General Public License for more details. + + You should have received a copy of the GNU General Public + License along with this program. If not, see + <http://www.gnu.org/licenses/gpl-3.0.html>. + #L% + --> + +<!DOCTYPE validators PUBLIC + "-//Apache Struts//XWork Validator 1.0.3//EN" + "http://struts.apache.org/dtds/xwork-validator-1.0.3.dtd"> +<validators> + + <field name="comment"> + + <!-- comentaire de moins de 1024 caractères --> + <field-validator type="stringlength"> + <param name="maxLength">1024</param> + <message>validator.schoolEstimate.comment.tobig</message> + </field-validator> + + <!-- comment requis si l'species en a besoin --> + <field-validator type="collectionFieldExpression"> + <!--FIXME il faut ajouter une propriete dans le validateur --> + <param name="collectionFieldName">schoolEstimate</param> + <param name="mode">ALL</param> + <param name="useSensitiveContext">true</param> + <param name="expression"> + <![CDATA[ current.species == null || !current.species.needComment || ( comment != null && comment != "" ) ]]> + </param> + <message>validator.schoolEstimate.required.comment.for.species##${index}</message> + </field-validator> + + </field> + +</validators> diff --git a/observe-application-swing/src/main/resources/fr/ird/observe/services/dto/seine/ObjectSchoolEstimateDto-n1-update-error-validation.xml b/observe-application-swing/src/main/resources/fr/ird/observe/services/dto/seine/ObjectSchoolEstimateDto-n1-update-error-validation.xml new file mode 100644 index 0000000..b1b4f29 --- /dev/null +++ b/observe-application-swing/src/main/resources/fr/ird/observe/services/dto/seine/ObjectSchoolEstimateDto-n1-update-error-validation.xml @@ -0,0 +1,55 @@ +<?xml version="1.0" encoding="UTF-8"?> +<!-- + #%L + ObServe :: Validation + %% + Copyright (C) 2008 - 2010 IRD, Codelutin, Tony Chemit + %% + This program is free software: you can redistribute it and/or modify + it under the terms of the GNU General Public License as + published by the Free Software Foundation, either version 3 of the + License, or (at your option) any later version. + + This program is distributed in the hope that it will be useful, + but WITHOUT ANY WARRANTY; without even the implied warranty of + MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the + GNU General Public License for more details. + + You should have received a copy of the GNU General Public + License along with this program. If not, see + <http://www.gnu.org/licenses/gpl-3.0.html>. + #L% + --> + +<!DOCTYPE validators PUBLIC + "-//Apache Struts//XWork Validator 1.0.3//EN" + "http://struts.apache.org/dtds/xwork-validator-1.0.3.dtd"> +<validators> + + <field name="species"> + + <!-- pas de species selectionnee --> + <field-validator type="required" short-circuit="true"> + <message>validator.schoolEstimate.required.species</message> + </field-validator> + + <!-- species desactive --> + <field-validator type="fieldexpression" short-circuit="true"> + <param name="expression"> + <![CDATA[ species.enabled ]]> + </param> + <message>validator.schoolEstimate.desactivated.species</message> + </field-validator> + + </field> + + <field name="totalWeight"> + + <!-- pas de tonnage renseigné --> + <field-validator type="required" short-circuit="true"> + <message>validator.schoolEstimate.required.weight</message> + </field-validator> + + </field> + +</validators> diff --git a/observe-application-swing/src/main/resources/fr/ird/observe/services/dto/seine/ObjectSchoolEstimateDto-n1-update-warning-validation.xml b/observe-application-swing/src/main/resources/fr/ird/observe/services/dto/seine/ObjectSchoolEstimateDto-n1-update-warning-validation.xml new file mode 100644 index 0000000..0b16a55 --- /dev/null +++ b/observe-application-swing/src/main/resources/fr/ird/observe/services/dto/seine/ObjectSchoolEstimateDto-n1-update-warning-validation.xml @@ -0,0 +1,40 @@ +<?xml version="1.0" encoding="UTF-8"?> +<!-- + #%L + ObServe :: Validation + %% + Copyright (C) 2008 - 2010 IRD, Codelutin, Tony Chemit + %% + This program is free software: you can redistribute it and/or modify + it under the terms of the GNU General Public License as + published by the Free Software Foundation, either version 3 of the + License, or (at your option) any later version. + + This program is distributed in the hope that it will be useful, + but WITHOUT ANY WARRANTY; without even the implied warranty of + MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the + GNU General Public License for more details. + + You should have received a copy of the GNU General Public + License along with this program. If not, see + <http://www.gnu.org/licenses/gpl-3.0.html>. + #L% + --> + +<!DOCTYPE validators PUBLIC + "-//Apache Struts//XWork Validator 1.0.3//EN" + "http://struts.apache.org/dtds/xwork-validator-1.0.3.dtd"> +<validators> + + <field name="totalWeight"> + + <!-- le tonnage est compris entre 1 et 500 --> + <field-validator type="int" short-circuit="true"> + <param name="min">1</param> + <param name="max">500</param> + <message>validator.schoolEstimate.bound.weight##${min}##${max}</message> + </field-validator> + + </field> + +</validators> -- To stop receiving notification emails like this one, please contact codelutin.com SCM administrator <admin+scm@list.forge.codelutin.com>.
This is an automated email from the git hooks/post-receive script. New commit to branch develop in repository observe. See http://git.codelutin.com/observe.git commit 620eb0197314c985956c01de0a10061738269651 Merge: d5db9ba e543f39 Author: Sylvain Bavencoff <bavencoff@codelutin.com> Date: Thu Oct 15 18:00:54 2015 +0200 Merge branch 'feature/7601' into develop .../fr/ird/observe/ObserveOpenDataManager.java | 5 ++ .../ui/content/table/ContentTableUIHandler.java | 2 +- .../table/impl/seine/ObjectSchoolEstimateUI.jaxx | 14 ++-- .../impl/seine/ObjectSchoolEstimateUIHandler.java | 38 ++++------ .../impl/seine/ObjectSchoolEstimateUIModel.java | 40 +++++++--- ...choolEstimateDto-n1-update-error-validation.xml | 51 +++++++++++++ ...choolEstimateDto-n1-update-error-validation.xml | 55 ++++++++++++++ ...oolEstimateDto-n1-update-warning-validation.xml | 40 ++++++++++ .../ObjectSchoolEstimateServiceController.java | 4 +- .../ird/observe/entities/referentiel/Species2.java | 18 +++++ .../observe/entities/referentiel/SpeciesLists.java | 11 +++ .../service/seine/ObjectSchoolEstimateService.java | 2 +- .../ird/observe/services/ObserveServiceTopia.java | 22 ++++-- .../ird/observe/services/entity/EntitiesSet.java | 36 +++++++++ .../services/entity/ObserveEntitiesFilters.java | 87 ++++++++++++++-------- .../services/entity/ObserveEntityFilter.java | 11 ++- .../services/entity/SpeciesListEntitiesSet.java | 27 +++++++ .../services/entity/UniverseEntitiesSet.java | 30 ++++++++ .../seine/ObjectSchoolEstimateServiceTopia.java | 4 +- 19 files changed, 405 insertions(+), 92 deletions(-) -- To stop receiving notification emails like this one, please contact codelutin.com SCM administrator <admin+scm@list.forge.codelutin.com>.
participants (1)
-
codelutin.com scm