This is an automated email from the git hooks/post-receive script. New commit to branch develop in repository tutti. See http://git.codelutin.com/tutti.git commit 60888432e5ad0fe0b06e68f93be66c63f46d9a23 Author: Tony CHEMIT <chemit@codelutin.com> Date: Mon Mar 7 15:34:48 2016 +0100 Ajout du filtre des navires sur les écrans des marées --- .../open/impl/longline/TripLonglineUIHandler.java | 11 ++++++++ .../open/impl/seine/TripSeineUIHandler.java | 11 ++++++++ .../services/dto/referential/VesselDtos.java | 30 ++++++++++++++++++++++ 3 files changed, 52 insertions(+) diff --git a/observe-application-swing/src/main/java/fr/ird/observe/ui/content/open/impl/longline/TripLonglineUIHandler.java b/observe-application-swing/src/main/java/fr/ird/observe/ui/content/open/impl/longline/TripLonglineUIHandler.java index 4b6da52..8268941 100644 --- a/observe-application-swing/src/main/java/fr/ird/observe/ui/content/open/impl/longline/TripLonglineUIHandler.java +++ b/observe-application-swing/src/main/java/fr/ird/observe/ui/content/open/impl/longline/TripLonglineUIHandler.java @@ -35,6 +35,7 @@ import fr.ird.observe.services.dto.longline.TripLonglineDtos; import fr.ird.observe.services.dto.referential.PersonDtos; import fr.ird.observe.services.dto.referential.ReferentialDto; import fr.ird.observe.services.dto.referential.ReferentialReference; +import fr.ird.observe.services.dto.referential.VesselDtos; import fr.ird.observe.services.dto.result.SaveResultDto; import fr.ird.observe.services.service.longline.TripLonglineService; import fr.ird.observe.ui.content.ContentMode; @@ -365,6 +366,16 @@ public class TripLonglineUIHandler extends ContentOpenableUIHandler<TripLongline } break; + case TripLonglineDto.PROPERTY_VESSEL: { + ObserveSwingApplicationConfig config = ObserveSwingApplicationContext.get().getConfig(); + Predicate referentialReferencePredicate = VesselDtos.newVesselByVesselTypeIdPredicate(config.getLonglineVesselTypeIds()); + result = Iterables.filter(result, referentialReferencePredicate); + if (log.isDebugEnabled()) { + log.debug(String.format("Filter referential references (type %s - property %s), final size: %d", dtoType.getSimpleName(), propertyName, incomingReferences.size())); + } + } + break; + } return result; diff --git a/observe-application-swing/src/main/java/fr/ird/observe/ui/content/open/impl/seine/TripSeineUIHandler.java b/observe-application-swing/src/main/java/fr/ird/observe/ui/content/open/impl/seine/TripSeineUIHandler.java index cf1edf8..47e0bd3 100644 --- a/observe-application-swing/src/main/java/fr/ird/observe/ui/content/open/impl/seine/TripSeineUIHandler.java +++ b/observe-application-swing/src/main/java/fr/ird/observe/ui/content/open/impl/seine/TripSeineUIHandler.java @@ -32,6 +32,7 @@ import fr.ird.observe.services.dto.TripMapDto; import fr.ird.observe.services.dto.referential.PersonDtos; import fr.ird.observe.services.dto.referential.ReferentialDto; import fr.ird.observe.services.dto.referential.ReferentialReference; +import fr.ird.observe.services.dto.referential.VesselDtos; import fr.ird.observe.services.dto.result.SaveResultDto; import fr.ird.observe.services.dto.seine.TripSeineDto; import fr.ird.observe.services.dto.seine.TripSeineDtos; @@ -361,6 +362,16 @@ public class TripSeineUIHandler extends ContentOpenableUIHandler<TripSeineDto> { } break; + case TripSeineDto.PROPERTY_VESSEL: { + ObserveSwingApplicationConfig config = ObserveSwingApplicationContext.get().getConfig(); + Predicate referentialReferencePredicate = VesselDtos.newVesselByVesselTypeIdPredicate(config.getSeineVesselTypeIds()); + result = Iterables.filter(result, referentialReferencePredicate); + if (log.isDebugEnabled()) { + log.debug(String.format("Filter referential references (type %s - property %s), final size: %d", dtoType.getSimpleName(), propertyName, incomingReferences.size())); + } + } + break; + } return result; diff --git a/observe-services-model/src/main/java/fr/ird/observe/services/dto/referential/VesselDtos.java b/observe-services-model/src/main/java/fr/ird/observe/services/dto/referential/VesselDtos.java new file mode 100644 index 0000000..a34556d --- /dev/null +++ b/observe-services-model/src/main/java/fr/ird/observe/services/dto/referential/VesselDtos.java @@ -0,0 +1,30 @@ +package fr.ird.observe.services.dto.referential; + +import com.google.common.base.Predicate; + +import java.util.Set; + +public class VesselDtos extends AbstractVesselDtos { + + + public static Predicate<VesselDto> newVesselByVesselTypeIdPredicate(Set<String> vesselTypeIds) { + + return new VesselByVesselTypeIdPredicate(vesselTypeIds); + + } + + private static class VesselByVesselTypeIdPredicate implements Predicate<VesselDto> { + + final Set<String> vesselTypeIds; + + private VesselByVesselTypeIdPredicate(Set<String> vesselTypeIds) { + this.vesselTypeIds = vesselTypeIds; + } + + @Override + public boolean apply(VesselDto input) { + return vesselTypeIds.contains(input.getVesselType().getId()); + } + } + +} -- To stop receiving notification emails like this one, please contact codelutin.com SCM administrator <admin+scm@codelutin.com>.