This is an automated email from the git hooks/post-receive script. New commit to branch feature/7617-LL-VerifEnregistreursDeProfondeur in repository tutti. See http://git.codelutin.com/tutti.git commit 4076f1c2211b60be06120a0be4e872724f341bf2 Author: Sylvain Bavencoff <bavencoff@codelutin.com> Date: Mon Mar 14 09:19:02 2016 +0100 Ajout de trace dans les appels des services, revoie dans le dto des données de position sur la ligne (see #7617). --- .../impl/longline/CatchLonglineUIHandler.java | 4 +- .../impl/longline/LonglinePositionHelper.java | 11 +- .../content/table/impl/longline/TdrUIHandler.java | 11 +- .../dto/longline/LonglinePositionSetDto.java | 77 ++++++++++++ .../xmi/observe-services-dto-longline.properties | 4 + .../main/xmi/observe-services-dto-longline.zargo | Bin 64556 -> 66083 bytes .../longline/LonglinePositionSetDtoHelper.java | 132 +++++++++++++++++++++ .../longline/SetLonglineCatchServiceTopia.java | 98 +-------------- .../services/service/longline/TdrServiceTopia.java | 62 +++------- 9 files changed, 240 insertions(+), 159 deletions(-) diff --git a/observe-application-swing/src/main/java/fr/ird/observe/ui/content/table/impl/longline/CatchLonglineUIHandler.java b/observe-application-swing/src/main/java/fr/ird/observe/ui/content/table/impl/longline/CatchLonglineUIHandler.java index 82efc1b..bbaa57b 100644 --- a/observe-application-swing/src/main/java/fr/ird/observe/ui/content/table/impl/longline/CatchLonglineUIHandler.java +++ b/observe-application-swing/src/main/java/fr/ird/observe/ui/content/table/impl/longline/CatchLonglineUIHandler.java @@ -616,9 +616,7 @@ public class CatchLonglineUIHandler extends ContentTableUIHandler<SetLonglineCat LonglinePositionHelper<CatchLonglineDto> positionHelper = POSITION_HELPER_ENTRY.getContextValue(getUi()); positionHelper.initSections( - form.getObject().getSections(), - form.getObject().getBaskets(), - form.getObject().getBranchlines(), + form.getObject(), form.getObject().getCatchLongline()); SetLonglineCatchDtos.copySetLonglineCatchDto(form.getObject(), getBean()); diff --git a/observe-application-swing/src/main/java/fr/ird/observe/ui/content/table/impl/longline/LonglinePositionHelper.java b/observe-application-swing/src/main/java/fr/ird/observe/ui/content/table/impl/longline/LonglinePositionHelper.java index 8ccb724..d16a103 100644 --- a/observe-application-swing/src/main/java/fr/ird/observe/ui/content/table/impl/longline/LonglinePositionHelper.java +++ b/observe-application-swing/src/main/java/fr/ird/observe/ui/content/table/impl/longline/LonglinePositionHelper.java @@ -28,6 +28,7 @@ import fr.ird.observe.services.dto.longline.BasketDto; import fr.ird.observe.services.dto.longline.BranchlineDto; import fr.ird.observe.services.dto.longline.CatchLonglineDto; import fr.ird.observe.services.dto.longline.LonglinePositionAwareDto; +import fr.ird.observe.services.dto.longline.LonglinePositionSetDto; import fr.ird.observe.services.dto.longline.SectionDto; import jaxx.runtime.swing.editor.bean.BeanComboBox; @@ -90,14 +91,12 @@ public class LonglinePositionHelper<D extends LonglinePositionAwareDto> { } - public void initSections(Collection<DataReference<SectionDto>> sectionUniverse, - Collection<DataReference<BasketDto>> basketUniverse, - Collection<DataReference<BranchlineDto>> branchlineUniverse, + public void initSections(LonglinePositionSetDto positionSetDto, Collection<D> dtos) { - this.sectionUniverse = sectionUniverse; - this.basketUniverse = basketUniverse; - this.branchlineUniverse = branchlineUniverse; + this.sectionUniverse = positionSetDto.getSections(); + this.basketUniverse = positionSetDto.getBaskets(); + this.branchlineUniverse = positionSetDto.getBranchlines(); for (D dto : dtos) { diff --git a/observe-application-swing/src/main/java/fr/ird/observe/ui/content/table/impl/longline/TdrUIHandler.java b/observe-application-swing/src/main/java/fr/ird/observe/ui/content/table/impl/longline/TdrUIHandler.java index 9ffccf9..e6f031c 100644 --- a/observe-application-swing/src/main/java/fr/ird/observe/ui/content/table/impl/longline/TdrUIHandler.java +++ b/observe-application-swing/src/main/java/fr/ird/observe/ui/content/table/impl/longline/TdrUIHandler.java @@ -473,17 +473,10 @@ public class TdrUIHandler extends ContentTableUIHandler<SetLonglineTdrDto, TdrDt ContentTableUIModel<SetLonglineTdrDto, TdrDto> model = getModel(); loadReferentialReferenceSetsInModel(form); model.setForm(form); -//TODO sbavencoff a traité dans le ticket sur l'ecran TDR -// DataReferenceSet<SectionDto> sections = model.getDataReferenceSet(CatchLonglineDto.PROPERTY_SECTION); -// DataReferenceSet<BasketDto> baskets = model.getDataReferenceSet(CatchLonglineDto.PROPERTY_BASKET); -// DataReferenceSet<BranchlineDto> branchlines = model.getDataReferenceSet(CatchLonglineDto.PROPERTY_BRANCHLINE); LonglinePositionHelper<TdrDto> positionHelper = POSITION_HELPER_ENTRY.getContextValue(getUi()); -//TODO sbavencoff a traité dans le ticket sur l'ecran TDR -// positionHelper.initSections(sections, -// baskets, -// branchlines, -// form.getObject().getTdr()); + positionHelper.initSections(form.getObject(), + form.getObject().getTdr()); SetLonglineTdrDtos.copySetLonglineTdrDto(form.getObject(), getBean()); diff --git a/observe-services-model/src/main/java/fr/ird/observe/services/dto/longline/LonglinePositionSetDto.java b/observe-services-model/src/main/java/fr/ird/observe/services/dto/longline/LonglinePositionSetDto.java new file mode 100644 index 0000000..72757da --- /dev/null +++ b/observe-services-model/src/main/java/fr/ird/observe/services/dto/longline/LonglinePositionSetDto.java @@ -0,0 +1,77 @@ +package fr.ird.observe.services.dto.longline; + +import fr.ird.observe.services.dto.DataReference; + +import java.util.Collection; + +/** + * @author Sylvain Bavencoff - bavencoff@codelutin.com + */ +public interface LonglinePositionSetDto { + + DataReference<SectionDto> getSections(int index); + + boolean isSectionsEmpty(); + + int sizeSections(); + + void addSections(DataReference<SectionDto> sections); + + void addAllSections(Collection<DataReference<SectionDto>> sections); + + boolean removeSections(DataReference<SectionDto> sections); + + boolean removeAllSections(Collection<DataReference<SectionDto>> sections); + + boolean containsSections(DataReference<SectionDto> sections); + + boolean containsAllSections(Collection<DataReference<SectionDto>> sections); + + Collection<DataReference<SectionDto>> getSections(); + + void setSections(Collection<DataReference<SectionDto>> sections); + + DataReference<BasketDto> getBaskets(int index); + + boolean isBasketsEmpty(); + + int sizeBaskets(); + + void addBaskets(DataReference<BasketDto> baskets); + + void addAllBaskets(Collection<DataReference<BasketDto>> baskets); + + boolean removeBaskets(DataReference<BasketDto> baskets); + + boolean removeAllBaskets(Collection<DataReference<BasketDto>> baskets); + + boolean containsBaskets(DataReference<BasketDto> baskets); + + boolean containsAllBaskets(Collection<DataReference<BasketDto>> baskets); + + Collection<DataReference<BasketDto>> getBaskets(); + + void setBaskets(Collection<DataReference<BasketDto>> baskets); + + DataReference<BranchlineDto> getBranchlines(int index); + + boolean isBranchlinesEmpty(); + + int sizeBranchlines(); + + void addBranchlines(DataReference<BranchlineDto> branchlines); + + void addAllBranchlines(Collection<DataReference<BranchlineDto>> branchlines); + + boolean removeBranchlines(DataReference<BranchlineDto> branchlines); + + boolean removeAllBranchlines(Collection<DataReference<BranchlineDto>> branchlines); + + boolean containsBranchlines(DataReference<BranchlineDto> branchlines); + + boolean containsAllBranchlines(Collection<DataReference<BranchlineDto>> branchlines); + + Collection<DataReference<BranchlineDto>> getBranchlines(); + + void setBranchlines(Collection<DataReference<BranchlineDto>> branchlines); +} diff --git a/observe-services-model/src/main/xmi/observe-services-dto-longline.properties b/observe-services-model/src/main/xmi/observe-services-dto-longline.properties index 63d8b19..9f150eb 100644 --- a/observe-services-model/src/main/xmi/observe-services-dto-longline.properties +++ b/observe-services-model/src/main/xmi/observe-services-dto-longline.properties @@ -43,6 +43,10 @@ fr.ird.observe.services.dto.longline.SensorUsed.attribute.sensorBrand.tagValue.a fr.ird.observe.services.dto.longline.SizeMeasure.attribute.sizeMeasureType.tagValue.attributeGeneric=fr.ird.observe.services.dto.referential.longline.SizeMeasureTypeDto +fr.ird.observe.services.dto.longline.SetLonglineTdr.attribute.baskets.tagValue.attributeGeneric=fr.ird.observe.services.dto.longline.BasketDto +fr.ird.observe.services.dto.longline.SetLonglineTdr.attribute.branchlines.tagValue.attributeGeneric=fr.ird.observe.services.dto.longline.BranchlineDto +fr.ird.observe.services.dto.longline.SetLonglineTdr.attribute.sections.tagValue.attributeGeneric=fr.ird.observe.services.dto.longline.SectionDto + fr.ird.observe.services.dto.longline.Tdr.attribute.branchline.tagValue.attributeGeneric=fr.ird.observe.services.dto.longline.BranchlineDto fr.ird.observe.services.dto.longline.Tdr.attribute.sensorBrand.tagValue.attributeGeneric=fr.ird.observe.services.dto.referential.longline.SensorBrandDto fr.ird.observe.services.dto.longline.Tdr.attribute.species.tagValue.attributeGeneric=fr.ird.observe.services.dto.referential.SpeciesDto diff --git a/observe-services-model/src/main/xmi/observe-services-dto-longline.zargo b/observe-services-model/src/main/xmi/observe-services-dto-longline.zargo index e13bb9e..c84ce77 100644 Binary files a/observe-services-model/src/main/xmi/observe-services-dto-longline.zargo and b/observe-services-model/src/main/xmi/observe-services-dto-longline.zargo differ diff --git a/observe-services-topia/src/main/java/fr/ird/observe/services/service/longline/LonglinePositionSetDtoHelper.java b/observe-services-topia/src/main/java/fr/ird/observe/services/service/longline/LonglinePositionSetDtoHelper.java new file mode 100644 index 0000000..b54c876 --- /dev/null +++ b/observe-services-topia/src/main/java/fr/ird/observe/services/service/longline/LonglinePositionSetDtoHelper.java @@ -0,0 +1,132 @@ +package fr.ird.observe.services.service.longline; + +import fr.ird.observe.entities.longline.Basket; +import fr.ird.observe.entities.longline.Branchline; +import fr.ird.observe.entities.longline.Section; +import fr.ird.observe.entities.longline.SetLongline; +import fr.ird.observe.services.dto.DataReference; +import fr.ird.observe.services.dto.longline.BasketDto; +import fr.ird.observe.services.dto.longline.BranchlineDto; +import fr.ird.observe.services.dto.longline.LonglinePositionAwareDto; +import fr.ird.observe.services.dto.longline.LonglinePositionSetDto; +import fr.ird.observe.services.dto.longline.SectionDto; +import fr.ird.observe.services.dto.reference.DataReferenceSetDefinitions; +import fr.ird.observe.services.dto.reference.ReferenceSetDefinition; + +/** + * @author Sylvain Bavencoff - bavencoff@codelutin.com + */ +public class LonglinePositionSetDtoHelper { + + // constitution des références des position sur la ligne + public static void loadPositionSet(SetLongline setLongline, LonglinePositionSetDto target) { + + for(Section section : setLongline.getSection()) { + + DataReference<SectionDto> sectionRef = toSectionReference(section); + + target.addSections(sectionRef); + + for (Basket basket : section.getBasket()) { + + DataReference<BasketDto> basketRef = toBasketReference(basket, section); + + target.addBaskets(basketRef); + + for (Branchline branchline : basket.getBranchline()) { + + DataReference<BranchlineDto> branchlineRef = toBranchlineReference(branchline, basket); + + target.addBranchlines(branchlineRef); + + } + + } + + } + + } + + // remplacement des références de position avec ces référence complété avec l'id du parent + public static void updatePosition(LonglinePositionSetDto positionSetDto, LonglinePositionAwareDto positionDto) { + DataReference<BasketDto> basketRef = positionDto.getBasket(); + + if (basketRef != null) { + + DataReference<BasketDto> basketRefWithSection = positionSetDto.getBaskets().stream() + .filter(b -> basketRef.getId().equals(b.getId())) + .findFirst() + .get(); + + positionDto.setBasket(basketRefWithSection); + + } + + DataReference<BranchlineDto> branchlineRef = positionDto.getBranchline(); + + if (branchlineRef != null) { + + DataReference<BranchlineDto> branchlineRefWithSection = positionSetDto.getBranchlines().stream() + .filter(b -> branchlineRef.getId().equals(b.getId())) + .findFirst() + .get(); + + positionDto.setBranchline(branchlineRefWithSection); + + } + } + + static protected DataReference<SectionDto> toSectionReference(Section section) { + + DataReference<SectionDto> reference = new DataReference<>(); + + reference.setId(section.getTopiaId()); + reference.setCreateDate(section.getTopiaCreateDate()); + reference.setVersion(section.getTopiaVersion()); + + ReferenceSetDefinition<SectionDto> definition = DataReferenceSetDefinitions.SECTION.getDefinition(); + reference.init(definition.getType(), + definition.getPropertyNames(), + section.getSettingIdentifier(), + section.getHaulingIdentifier()); + + return reference; + } + + static protected DataReference<BasketDto> toBasketReference(Basket basket, Section section) { + + DataReference<BasketDto> reference = new DataReference<>(); + + reference.setId(basket.getTopiaId()); + reference.setCreateDate(basket.getTopiaCreateDate()); + reference.setVersion(basket.getTopiaVersion()); + + ReferenceSetDefinition<BasketDto> definition = DataReferenceSetDefinitions.BASKET_WITH_SECTION.getDefinition(); + reference.init(definition.getType(), + definition.getPropertyNames(), + basket.getSettingIdentifier(), + basket.getHaulingIdentifier(), + section.getTopiaId()); + + return reference; + } + + static protected DataReference<BranchlineDto> toBranchlineReference(Branchline branchline, Basket basket) { + + DataReference<BranchlineDto> reference = new DataReference<>(); + + reference.setId(branchline.getTopiaId()); + reference.setCreateDate(branchline.getTopiaCreateDate()); + reference.setVersion(branchline.getTopiaVersion()); + + ReferenceSetDefinition<BranchlineDto> definition = DataReferenceSetDefinitions.BRANCHLINE_WITH_BASKET.getDefinition(); + reference.init(definition.getType(), + definition.getPropertyNames(), + branchline.getSettingIdentifier(), + branchline.getHaulingIdentifier(), + basket.getTopiaId()); + + return reference; + } + +} diff --git a/observe-services-topia/src/main/java/fr/ird/observe/services/service/longline/SetLonglineCatchServiceTopia.java b/observe-services-topia/src/main/java/fr/ird/observe/services/service/longline/SetLonglineCatchServiceTopia.java index 29bfab7..afbcd14 100644 --- a/observe-services-topia/src/main/java/fr/ird/observe/services/service/longline/SetLonglineCatchServiceTopia.java +++ b/observe-services-topia/src/main/java/fr/ird/observe/services/service/longline/SetLonglineCatchServiceTopia.java @@ -22,20 +22,11 @@ package fr.ird.observe.services.service.longline; * #L% */ -import fr.ird.observe.entities.longline.Basket; -import fr.ird.observe.entities.longline.Branchline; -import fr.ird.observe.entities.longline.Section; import fr.ird.observe.entities.longline.SetLongline; import fr.ird.observe.services.ObserveServiceTopia; -import fr.ird.observe.services.dto.DataReference; import fr.ird.observe.services.dto.Form; -import fr.ird.observe.services.dto.longline.BasketDto; -import fr.ird.observe.services.dto.longline.BranchlineDto; import fr.ird.observe.services.dto.longline.CatchLonglineDto; -import fr.ird.observe.services.dto.longline.SectionDto; import fr.ird.observe.services.dto.longline.SetLonglineCatchDto; -import fr.ird.observe.services.dto.reference.DataReferenceSetDefinitions; -import fr.ird.observe.services.dto.reference.ReferenceSetDefinition; import fr.ird.observe.services.dto.reference.request.ReferenceSetRequestDefinitions; import fr.ird.observe.services.dto.result.SaveResultDto; import org.apache.commons.logging.Log; @@ -62,102 +53,17 @@ public class SetLonglineCatchServiceTopia extends ObserveServiceTopia implements ReferenceSetRequestDefinitions.SET_LONGLINE_CATCH_FORM ); - // constitution des références des position sur la ligne - for(Section section : setLongline.getSection()) { + LonglinePositionSetDtoHelper.loadPositionSet(setLongline, form.getObject()); - DataReference<SectionDto> sectionRef = toReference(section); - - form.getObject().addSections(sectionRef); - - for (Basket basket : section.getBasket()) { - - DataReference<BasketDto> basketRef = toBasketReference(basket, section); - - form.getObject().addBaskets(basketRef); - - for (Branchline branchline : basket.getBranchline()) { - - DataReference<BranchlineDto> branchlineRef = toBranchlineReference(branchline, basket); - - form.getObject().addBranchlines(branchlineRef); - - } - - } - - } - - // remplacement des références de position avec ces référence complété avec l'id du parent for (CatchLonglineDto catchLonglineDto : form.getObject().getCatchLongline()) { - DataReference<BasketDto> basketRef = catchLonglineDto.getBasket(); - - if (basketRef != null) { - - DataReference<BasketDto> basketRefWithSection = form.getObject().getBaskets().stream() - .filter(b -> basketRef.getId().equals(b.getId())) - .findFirst() - .get(); - - catchLonglineDto.setBasket(basketRefWithSection); - - } - - DataReference<BranchlineDto> branchlineRef = catchLonglineDto.getBranchline(); - - if (branchlineRef != null) { - - DataReference<BranchlineDto> branchlineRefWithSection = form.getObject().getBranchlines().stream() - .filter(b -> branchlineRef.getId().equals(b.getId())) - .findFirst() - .get(); - - catchLonglineDto.setBranchline(branchlineRefWithSection); - - } + LonglinePositionSetDtoHelper.updatePosition(form.getObject(), catchLonglineDto); } return form; } - protected DataReference<BasketDto> toBasketReference(Basket basket, Section section) { - - DataReference<BasketDto> reference = new DataReference<>(); - - reference.setId(basket.getTopiaId()); - reference.setCreateDate(basket.getTopiaCreateDate()); - reference.setVersion(basket.getTopiaVersion()); - - ReferenceSetDefinition<BasketDto> definition = DataReferenceSetDefinitions.BASKET_WITH_SECTION.getDefinition(); - reference.init(definition.getType(), - definition.getPropertyNames(), - basket.getSettingIdentifier(), - basket.getHaulingIdentifier(), - section.getTopiaId()); - - return reference; - } - - protected DataReference<BranchlineDto> toBranchlineReference(Branchline branchline, Basket basket) { - - DataReference<BranchlineDto> reference = new DataReference<>(); - - reference.setId(branchline.getTopiaId()); - reference.setCreateDate(branchline.getTopiaCreateDate()); - reference.setVersion(branchline.getTopiaVersion()); - - ReferenceSetDefinition<BranchlineDto> definition = DataReferenceSetDefinitions.BRANCHLINE_WITH_BASKET.getDefinition(); - reference.init(definition.getType(), - definition.getPropertyNames(), - branchline.getSettingIdentifier(), - branchline.getHaulingIdentifier(), - basket.getTopiaId()); - - return reference; - } - - @Override public SaveResultDto save(SetLonglineCatchDto dto) { if (log.isTraceEnabled()) { diff --git a/observe-services-topia/src/main/java/fr/ird/observe/services/service/longline/TdrServiceTopia.java b/observe-services-topia/src/main/java/fr/ird/observe/services/service/longline/TdrServiceTopia.java index c0ecda1..c57d9c2 100644 --- a/observe-services-topia/src/main/java/fr/ird/observe/services/service/longline/TdrServiceTopia.java +++ b/observe-services-topia/src/main/java/fr/ird/observe/services/service/longline/TdrServiceTopia.java @@ -26,16 +26,24 @@ import fr.ird.observe.entities.longline.SetLongline; import fr.ird.observe.services.ObserveServiceTopia; import fr.ird.observe.services.dto.Form; import fr.ird.observe.services.dto.longline.SetLonglineTdrDto; +import fr.ird.observe.services.dto.longline.TdrDto; import fr.ird.observe.services.dto.reference.request.ReferenceSetRequestDefinitions; import fr.ird.observe.services.dto.result.SaveResultDto; +import org.apache.commons.logging.Log; +import org.apache.commons.logging.LogFactory; /** * @author Sylvain Bavencoff - bavencoff@codelutin.com */ public class TdrServiceTopia extends ObserveServiceTopia implements TdrService { + private static final Log log = LogFactory.getLog(TdrServiceTopia.class); + @Override public Form<SetLonglineTdrDto> loadForm(String setLonglineId) { + if (log.isTraceEnabled()) { + log.trace("loadForm(" + setLonglineId + ")"); + } SetLongline setLongline = loadEntity(SetLonglineTdrDto.class, setLonglineId); @@ -43,60 +51,24 @@ public class TdrServiceTopia extends ObserveServiceTopia implements TdrService { SetLonglineTdrDto.class, setLongline, ReferenceSetRequestDefinitions.SET_LONGLINE_TDR_FORM - //ImmutableMap.<String, Object>of(Section.PROPERTY_SET_LONGLINE, setLongline), //FIXME context ); - //FIXME Faire ça dans l'ui -// for(Section section : setLongline.getSection()) { -// -// for (Basket basket : section.getBasket()) { -// -// ReferenceDto<BasketDto> basketRef = form.getReferenceById(BasketDto.class, basket.getTopiaId()); -// -// basketRef.addPropertyValue(BasketDto.PROPERTY_SECTION, section.getTopiaId()); -// -// for (Branchline branchline : basket.getBranchline()) { -// -// ReferenceDto<BranchlineDto> branchlineRef = form.getReferenceById(BranchlineDto.class, branchline.getTopiaId()); -// -// branchlineRef.addPropertyValue(BranchlineDto.PROPERTY_BASKET, basket.getTopiaId()); -// -// } -// -// } -// -// } -// -// for (TdrDto tdrDto : form.getForm().getTdr()) { -// -// ReferenceDto<BasketDto> basketRef = tdrDto.getBasket(); -// -// if (basketRef != null) { -// -// ReferenceDto<BasketDto> basketRefLabel = form.getReferenceById(BasketDto.class, basketRef.getId()); -// -// basketRef.addPropertyValue(BasketDto.PROPERTY_SECTION, basketRefLabel.getPropertyValue(BasketDto.PROPERTY_SECTION)); -// -// } -// -// ReferenceDto<BranchlineDto> branchlineRef = tdrDto.getBranchline(); -// -// if (branchlineRef != null) { -// -// ReferenceDto<BranchlineDto> branchlineRefLabel = form.getReferenceById(BranchlineDto.class, branchlineRef.getId()); -// -// branchlineRef.addPropertyValue(BranchlineDto.PROPERTY_BASKET, branchlineRefLabel.getPropertyValue(BranchlineDto.PROPERTY_BASKET)); -// -// } -// -// } + LonglinePositionSetDtoHelper.loadPositionSet(setLongline, form.getObject()); + + for (TdrDto tdrDto : form.getObject().getTdr()) { + + LonglinePositionSetDtoHelper.updatePosition(form.getObject(), tdrDto); + } return form; } @Override public SaveResultDto save(SetLonglineTdrDto dto) { + if (log.isTraceEnabled()) { + log.trace("save(" + dto.getId() + ")"); + } SetLongline entity = loadOrCreateEntityAndCheckLastUpdate(dto); copyDataDtoToEntity(dto, entity); -- To stop receiving notification emails like this one, please contact codelutin.com SCM administrator <admin+scm@codelutin.com>.