This is an automated email from the git hooks/post-receive script. New commit to branch feature/5954 in repository tutti. See http://git.codelutin.com/tutti.git commit da2b256ba3825cb582592e9f1d5e2bd15346ed3b Author: Kevin Morin <morin@codelutin.com> Date: Thu Nov 20 11:12:18 2014 +0100 refs #6129 [IMPORT SUMATRA] Import des valeurs des PSFMs et des champs du trait --- .../entities}/protocol/CaracteristicType.java | 2 +- .../entities/protocol/TuttiProtocols.java | 43 ++++++++ .../service/ProtocolPersistenceServiceImpl.java | 3 +- .../src/main/xmi/tutti-persistence.properties | 3 +- .../src/main/xmi/tutti-persistence.zargo | Bin 56767 -> 57378 bytes ...-persistence.zargo => tutti-persistence.zargo~} | Bin 56767 -> 57382 bytes .../entities/protocol/TuttiProtocolsTest.java | 18 +++- .../ProtocolPersistenceServiceReadTest.java | 11 +- .../tutti/service/protocol/CaracteristicRow.java | 1 + .../service/protocol/CaracteristicRowModel.java | 2 +- .../protocol/ProtocolImportExportService.java | 36 ++++--- .../protocol/ProtocolImportExportServiceTest.java | 35 +++++-- .../fishing/GearUseFeatureTabUIHandler.java | 10 +- .../fishing/VesselUseFeatureTabUIHandler.java | 10 +- .../ui/swing/content/protocol/EditProtocolUI.css | 10 -- .../ui/swing/content/protocol/EditProtocolUI.jaxx | 8 -- .../content/protocol/EditProtocolUIHandler.java | 26 +---- .../content/protocol/EditProtocolUIModel.java | 116 +++++---------------- 18 files changed, 166 insertions(+), 168 deletions(-) diff --git a/tutti-service/src/main/java/fr/ifremer/tutti/service/protocol/CaracteristicType.java b/tutti-persistence/src/main/java/fr/ifremer/tutti/persistence/entities/protocol/CaracteristicType.java similarity index 94% rename from tutti-service/src/main/java/fr/ifremer/tutti/service/protocol/CaracteristicType.java rename to tutti-persistence/src/main/java/fr/ifremer/tutti/persistence/entities/protocol/CaracteristicType.java index 4f92c68..358a184 100644 --- a/tutti-service/src/main/java/fr/ifremer/tutti/service/protocol/CaracteristicType.java +++ b/tutti-persistence/src/main/java/fr/ifremer/tutti/persistence/entities/protocol/CaracteristicType.java @@ -1,4 +1,4 @@ -package fr.ifremer.tutti.service.protocol; +package fr.ifremer.tutti.persistence.entities.protocol; /* * #%L diff --git a/tutti-persistence/src/main/java/fr/ifremer/tutti/persistence/entities/protocol/TuttiProtocols.java b/tutti-persistence/src/main/java/fr/ifremer/tutti/persistence/entities/protocol/TuttiProtocols.java index 2503372..32d4279 100644 --- a/tutti-persistence/src/main/java/fr/ifremer/tutti/persistence/entities/protocol/TuttiProtocols.java +++ b/tutti-persistence/src/main/java/fr/ifremer/tutti/persistence/entities/protocol/TuttiProtocols.java @@ -26,7 +26,11 @@ import com.esotericsoftware.yamlbeans.YamlConfig; import com.esotericsoftware.yamlbeans.YamlReader; import com.esotericsoftware.yamlbeans.YamlWriter; import com.google.common.base.Charsets; +import com.google.common.base.Function; import com.google.common.base.Joiner; +import com.google.common.base.Preconditions; +import com.google.common.base.Predicate; +import com.google.common.collect.Collections2; import com.google.common.collect.Lists; import com.google.common.io.Files; import fr.ifremer.adagio.core.dao.referential.pmfm.PmfmId; @@ -50,6 +54,8 @@ import org.nuiton.util.beans.BinderFactory; import java.io.BufferedWriter; import java.io.File; import java.io.Reader; +import java.util.ArrayList; +import java.util.Collection; import java.util.Iterator; import java.util.List; import java.util.Map; @@ -378,4 +384,41 @@ public class TuttiProtocols extends AbstractTuttiProtocols { } return null; } + + public static CaracteristicMappingRow caracteristicMappingRow(String pmfmId, CaracteristicType tab) { + CaracteristicMappingRow caracteristicMappingRow = new CaracteristicMappingRowBean(); + caracteristicMappingRow.setPmfmId(pmfmId); + caracteristicMappingRow.setTab(tab.name()); + return caracteristicMappingRow; + } + + public static List<String> gearUseFeaturePmfmIds(TuttiProtocol protocol) { + return pmfmIdsForCaracteristicType(protocol, CaracteristicType.GEAR_USE_FEATURE); + } + + public static List<String> vesselUseFeaturePmfmIds(TuttiProtocol protocol) { + return pmfmIdsForCaracteristicType(protocol, CaracteristicType.VESSEL_USE_FEATURE); + } + + public static List<String> pmfmIdsForCaracteristicType(TuttiProtocol protocol, final CaracteristicType type) { + Preconditions.checkNotNull(protocol); + Preconditions.checkNotNull(type); + + List<CaracteristicMappingRow> caracteristicMapping = protocol.getCaracteristicMapping(); + Collection<CaracteristicMappingRow> gearUseFeatureCaracteristics = + Collections2.filter(caracteristicMapping, new Predicate<CaracteristicMappingRow>() { + @Override + public boolean apply(CaracteristicMappingRow caracteristicMappingRow) { + return type.equals(caracteristicMappingRow.getTab()); + } + }); + + Collection<String> pmfmIds = Collections2.transform(gearUseFeatureCaracteristics, new Function<CaracteristicMappingRow, String>() { + @Override + public String apply(CaracteristicMappingRow caracteristicMappingRow) { + return caracteristicMappingRow.getPmfmId(); + } + }); + return new ArrayList<>(pmfmIds); + } } diff --git a/tutti-persistence/src/main/java/fr/ifremer/tutti/persistence/service/ProtocolPersistenceServiceImpl.java b/tutti-persistence/src/main/java/fr/ifremer/tutti/persistence/service/ProtocolPersistenceServiceImpl.java index b3b6279..b5952ae 100644 --- a/tutti-persistence/src/main/java/fr/ifremer/tutti/persistence/service/ProtocolPersistenceServiceImpl.java +++ b/tutti-persistence/src/main/java/fr/ifremer/tutti/persistence/service/ProtocolPersistenceServiceImpl.java @@ -152,8 +152,7 @@ public class ProtocolPersistenceServiceImpl extends AbstractPersistenceService i // result.setVesselUseFeaturePmfmId(TuttiEntities.getList(bean.getVesselUseFeaturePmfmId())); // result.setGearUseFeaturePmfmId(TuttiEntities.getList(bean.getGearUseFeaturePmfmId())); result.setLengthClassesPmfmId(bean.getLengthClassesPmfmId()); - result.setVesselUseFeaturePmfmId(bean.getVesselUseFeaturePmfmId()); - result.setGearUseFeaturePmfmId(bean.getGearUseFeaturePmfmId()); + result.setCaracteristicMapping(bean.getCaracteristicMapping()); Binder<SpeciesProtocol, SpeciesProtocol> speciesProtocolBinder = BinderFactory.newBinder(SpeciesProtocol.class); List<SpeciesProtocol> species = Lists.newArrayList(); diff --git a/tutti-persistence/src/main/xmi/tutti-persistence.properties b/tutti-persistence/src/main/xmi/tutti-persistence.properties index a69a326..0431cee 100644 --- a/tutti-persistence/src/main/xmi/tutti-persistence.properties +++ b/tutti-persistence/src/main/xmi/tutti-persistence.properties @@ -39,8 +39,7 @@ fr.ifremer.tutti.persistence.entities.data.FishingOperation.attribute.secondaryV fr.ifremer.tutti.persistence.entities.data.SpeciesBatch.attribute.childBatchs.stereotype=ordered fr.ifremer.tutti.persistence.entities.data.BenthosBatch.attribute.childBatchs.stereotype=ordered -fr.ifremer.tutti.persistence.entities.protocol.TuttiProtocol.attribute.gearUseFeaturePmfmId.stereotype=ordered -fr.ifremer.tutti.persistence.entities.protocol.TuttiProtocol.attribute.vesselUseFeaturePmfmId.stereotype=ordered +fr.ifremer.tutti.persistence.entities.protocol.TuttiProtocol.attribute.caracteristicMapping.stereotype=ordered fr.ifremer.tutti.persistence.entities.protocol.TuttiProtocol.attribute.individualObservationPmfmId.stereotype=ordered fr.ifremer.tutti.persistence.entities.protocol.TuttiProtocol.attribute.lengthClassesPmfmId.stereotype=ordered fr.ifremer.tutti.persistence.entities.protocol.TuttiProtocol.attribute.species.stereotype=ordered diff --git a/tutti-persistence/src/main/xmi/tutti-persistence.zargo b/tutti-persistence/src/main/xmi/tutti-persistence.zargo index 6a566b8..982bb6a 100644 Binary files a/tutti-persistence/src/main/xmi/tutti-persistence.zargo and b/tutti-persistence/src/main/xmi/tutti-persistence.zargo differ diff --git a/tutti-persistence/src/main/xmi/tutti-persistence.zargo b/tutti-persistence/src/main/xmi/tutti-persistence.zargo~ similarity index 51% copy from tutti-persistence/src/main/xmi/tutti-persistence.zargo copy to tutti-persistence/src/main/xmi/tutti-persistence.zargo~ index 6a566b8..2d2cc86 100644 Binary files a/tutti-persistence/src/main/xmi/tutti-persistence.zargo and b/tutti-persistence/src/main/xmi/tutti-persistence.zargo~ differ diff --git a/tutti-persistence/src/test/java/fr/ifremer/tutti/persistence/entities/protocol/TuttiProtocolsTest.java b/tutti-persistence/src/test/java/fr/ifremer/tutti/persistence/entities/protocol/TuttiProtocolsTest.java index 9993a55..622ee61 100644 --- a/tutti-persistence/src/test/java/fr/ifremer/tutti/persistence/entities/protocol/TuttiProtocolsTest.java +++ b/tutti-persistence/src/test/java/fr/ifremer/tutti/persistence/entities/protocol/TuttiProtocolsTest.java @@ -180,8 +180,13 @@ public class TuttiProtocolsTest { Assert.assertEquals("protocolName", protocol.getName()); Assert.assertEquals("Commentaire", protocol.getComment()); Assert.assertEquals(Lists.newArrayList("14", "18"), protocol.getLengthClassesPmfmId()); - Assert.assertEquals(Lists.newArrayList("114", "228", "821"), protocol.getVesselUseFeaturePmfmId()); - Assert.assertEquals(Lists.newArrayList("21", "22"), protocol.getGearUseFeaturePmfmId()); + Assert.assertEquals(Lists.newArrayList( + TuttiProtocols.caracteristicMappingRow("114", CaracteristicType.VESSEL_USE_FEATURE), + TuttiProtocols.caracteristicMappingRow("228", CaracteristicType.VESSEL_USE_FEATURE), + TuttiProtocols.caracteristicMappingRow("821", CaracteristicType.VESSEL_USE_FEATURE), + TuttiProtocols.caracteristicMappingRow("21", CaracteristicType.GEAR_USE_FEATURE), + TuttiProtocols.caracteristicMappingRow("22", CaracteristicType.GEAR_USE_FEATURE)), + protocol.getCaracteristicMapping()); Assert.assertNotNull(protocol.getSpecies()); Assert.assertEquals(2, protocol.getSpecies().size()); @@ -251,8 +256,13 @@ public class TuttiProtocolsTest { protocol.setName("protocolName"); protocol.setComment("Commentaire"); protocol.setLengthClassesPmfmId(Lists.newArrayList("14", "18")); - protocol.setVesselUseFeaturePmfmId(Lists.newArrayList("114", "228", "821")); - protocol.setGearUseFeaturePmfmId(Lists.newArrayList("21", "22")); + + protocol.setCaracteristicMapping(Lists.newArrayList( + TuttiProtocols.caracteristicMappingRow("114", CaracteristicType.VESSEL_USE_FEATURE), + TuttiProtocols.caracteristicMappingRow("228", CaracteristicType.VESSEL_USE_FEATURE), + TuttiProtocols.caracteristicMappingRow("821", CaracteristicType.VESSEL_USE_FEATURE), + TuttiProtocols.caracteristicMappingRow("21", CaracteristicType.GEAR_USE_FEATURE), + TuttiProtocols.caracteristicMappingRow("22", CaracteristicType.GEAR_USE_FEATURE))); protocol.setSpecies(Lists.<SpeciesProtocol>newArrayList()); SpeciesProtocol sp1 = SpeciesProtocols.newSpeciesProtocol(); diff --git a/tutti-persistence/src/test/java/fr/ifremer/tutti/persistence/service/ProtocolPersistenceServiceReadTest.java b/tutti-persistence/src/test/java/fr/ifremer/tutti/persistence/service/ProtocolPersistenceServiceReadTest.java index b303c78..1cb0ed8 100644 --- a/tutti-persistence/src/test/java/fr/ifremer/tutti/persistence/service/ProtocolPersistenceServiceReadTest.java +++ b/tutti-persistence/src/test/java/fr/ifremer/tutti/persistence/service/ProtocolPersistenceServiceReadTest.java @@ -28,6 +28,7 @@ import fr.ifremer.tutti.persistence.entities.protocol.SpeciesProtocols; import fr.ifremer.tutti.persistence.entities.protocol.TuttiProtocol; import fr.ifremer.tutti.persistence.entities.protocol.TuttiProtocols; import fr.ifremer.tutti.persistence.test.DatabaseResource; +import fr.ifremer.tutti.persistence.entities.protocol.CaracteristicType; import org.junit.Assert; import org.junit.Before; import org.junit.ClassRule; @@ -93,8 +94,13 @@ public class ProtocolPersistenceServiceReadTest { protocol.setName("protocolName"); protocol.setComment("Commentaire"); protocol.setLengthClassesPmfmId(Lists.newArrayList("14", "18")); - protocol.setVesselUseFeaturePmfmId(Lists.newArrayList("114", "228", "821")); - protocol.setGearUseFeaturePmfmId(Lists.newArrayList("21", "22")); + + protocol.setCaracteristicMapping(Lists.newArrayList( + TuttiProtocols.caracteristicMappingRow("114", CaracteristicType.VESSEL_USE_FEATURE), + TuttiProtocols.caracteristicMappingRow("228", CaracteristicType.VESSEL_USE_FEATURE), + TuttiProtocols.caracteristicMappingRow("821", CaracteristicType.VESSEL_USE_FEATURE), + TuttiProtocols.caracteristicMappingRow("21", CaracteristicType.GEAR_USE_FEATURE), + TuttiProtocols.caracteristicMappingRow("22", CaracteristicType.GEAR_USE_FEATURE))); protocol.setSpecies(Lists.<SpeciesProtocol>newArrayList()); SpeciesProtocol sp1 = SpeciesProtocols.newSpeciesProtocol(); @@ -154,4 +160,5 @@ public class ProtocolPersistenceServiceReadTest { return protocol; } + } diff --git a/tutti-service/src/main/java/fr/ifremer/tutti/service/protocol/CaracteristicRow.java b/tutti-service/src/main/java/fr/ifremer/tutti/service/protocol/CaracteristicRow.java index 242a07f..a4ac8de 100644 --- a/tutti-service/src/main/java/fr/ifremer/tutti/service/protocol/CaracteristicRow.java +++ b/tutti-service/src/main/java/fr/ifremer/tutti/service/protocol/CaracteristicRow.java @@ -22,6 +22,7 @@ package fr.ifremer.tutti.service.protocol; import fr.ifremer.tutti.persistence.entities.referential.Caracteristic; +import fr.ifremer.tutti.persistence.entities.protocol.CaracteristicType; import java.io.Serializable; diff --git a/tutti-service/src/main/java/fr/ifremer/tutti/service/protocol/CaracteristicRowModel.java b/tutti-service/src/main/java/fr/ifremer/tutti/service/protocol/CaracteristicRowModel.java index b622d39..5a6b244 100644 --- a/tutti-service/src/main/java/fr/ifremer/tutti/service/protocol/CaracteristicRowModel.java +++ b/tutti-service/src/main/java/fr/ifremer/tutti/service/protocol/CaracteristicRowModel.java @@ -24,7 +24,7 @@ package fr.ifremer.tutti.service.protocol; import fr.ifremer.tutti.persistence.entities.referential.Caracteristic; import fr.ifremer.tutti.service.TuttiCsvUtil; -import org.nuiton.csv.Common; +import fr.ifremer.tutti.persistence.entities.protocol.CaracteristicType; import java.util.Map; diff --git a/tutti-service/src/main/java/fr/ifremer/tutti/service/protocol/ProtocolImportExportService.java b/tutti-service/src/main/java/fr/ifremer/tutti/service/protocol/ProtocolImportExportService.java index 5f7a4c9..442f8e9 100644 --- a/tutti-service/src/main/java/fr/ifremer/tutti/service/protocol/ProtocolImportExportService.java +++ b/tutti-service/src/main/java/fr/ifremer/tutti/service/protocol/ProtocolImportExportService.java @@ -30,6 +30,7 @@ import com.google.common.collect.Maps; import com.google.common.collect.Multimap; import com.google.common.collect.TreeMultimap; import com.google.common.io.Files; +import fr.ifremer.tutti.persistence.entities.protocol.CaracteristicMappingRow; import fr.ifremer.tutti.persistence.entities.protocol.SpeciesProtocol; import fr.ifremer.tutti.persistence.entities.protocol.SpeciesProtocols; import fr.ifremer.tutti.persistence.entities.protocol.TuttiProtocol; @@ -37,8 +38,7 @@ import fr.ifremer.tutti.persistence.entities.protocol.TuttiProtocols; import fr.ifremer.tutti.persistence.entities.referential.Caracteristic; import fr.ifremer.tutti.persistence.entities.referential.Species; import fr.ifremer.tutti.service.AbstractTuttiService; -import fr.ifremer.tutti.service.PersistenceService; -import fr.ifremer.tutti.service.TuttiServiceContext; +import fr.ifremer.tutti.persistence.entities.protocol.CaracteristicType; import org.apache.commons.collections4.CollectionUtils; import org.apache.commons.io.IOUtils; import org.apache.commons.logging.Log; @@ -129,15 +129,16 @@ public class ProtocolImportExportService extends AbstractTuttiService { ids.get(CaracteristicType.LENGTH_STEP)) ); - protocol.setVesselUseFeaturePmfmId( - mergeIds(protocol.getVesselUseFeaturePmfmId(), - ids.get(CaracteristicType.VESSEL_USE_FEATURE)) - ); - - protocol.setGearUseFeaturePmfmId( - mergeIds(protocol.getGearUseFeaturePmfmId(), - ids.get(CaracteristicType.GEAR_USE_FEATURE)) - ); + //FIXME +// protocol.setVesselUseFeaturePmfmId( +// mergeIds(protocol.getVesselUseFeaturePmfmId(), +// ids.get(CaracteristicType.VESSEL_USE_FEATURE)) +// ); +// +// protocol.setGearUseFeaturePmfmId( +// mergeIds(protocol.getGearUseFeaturePmfmId(), +// ids.get(CaracteristicType.GEAR_USE_FEATURE)) +// ); protocol.setIndividualObservationPmfmId( mergeIds(protocol.getIndividualObservationPmfmId(), @@ -194,15 +195,16 @@ public class ProtocolImportExportService extends AbstractTuttiService { rows.addAll(Lists.transform(protocol.getLengthClassesPmfmId(), function)); } - if (!protocol.isVesselUseFeaturePmfmIdEmpty()) { + + //FIXME + if (!protocol.isCaracteristicMappingEmpty()) { function.setType(CaracteristicType.VESSEL_USE_FEATURE); - rows.addAll(Lists.transform(protocol.getVesselUseFeaturePmfmId(), function)); + for (CaracteristicMappingRow mappingRow : protocol.getCaracteristicMapping()) { + function.setType(CaracteristicType.valueOf(mappingRow.getTab())); + rows.add(function.apply(mappingRow.getPmfmId())); + } } - if (!protocol.isGearUseFeaturePmfmIdEmpty()) { - function.setType(CaracteristicType.GEAR_USE_FEATURE); - rows.addAll(Lists.transform(protocol.getGearUseFeaturePmfmId(), function)); - } if (!protocol.isIndividualObservationPmfmIdEmpty()) { function.setType(CaracteristicType.INDIVIDUAL_OBSERVATION); diff --git a/tutti-service/src/test/java/fr/ifremer/tutti/service/protocol/ProtocolImportExportServiceTest.java b/tutti-service/src/test/java/fr/ifremer/tutti/service/protocol/ProtocolImportExportServiceTest.java index 270807c..b137692 100644 --- a/tutti-service/src/test/java/fr/ifremer/tutti/service/protocol/ProtocolImportExportServiceTest.java +++ b/tutti-service/src/test/java/fr/ifremer/tutti/service/protocol/ProtocolImportExportServiceTest.java @@ -26,6 +26,7 @@ import com.google.common.base.Charsets; import com.google.common.collect.Lists; import com.google.common.collect.Maps; import com.google.common.io.Files; +import fr.ifremer.tutti.persistence.entities.protocol.CaracteristicType; import fr.ifremer.tutti.persistence.entities.protocol.SpeciesProtocol; import fr.ifremer.tutti.persistence.entities.protocol.SpeciesProtocols; import fr.ifremer.tutti.persistence.entities.protocol.TuttiProtocol; @@ -189,8 +190,13 @@ public class ProtocolImportExportServiceTest { protocol.setName("protocolName"); protocol.setComment("Commentaire"); protocol.setLengthClassesPmfmId(Lists.newArrayList("14", "18")); - protocol.setVesselUseFeaturePmfmId(Lists.newArrayList("114", "228", "821")); - protocol.setGearUseFeaturePmfmId(Lists.newArrayList("21", "22")); + protocol.setCaracteristicMapping(Lists.newArrayList( + TuttiProtocols.caracteristicMappingRow("114", CaracteristicType.VESSEL_USE_FEATURE), + TuttiProtocols.caracteristicMappingRow("228", CaracteristicType.VESSEL_USE_FEATURE), + TuttiProtocols.caracteristicMappingRow("821", CaracteristicType.VESSEL_USE_FEATURE), + TuttiProtocols.caracteristicMappingRow("21", CaracteristicType.GEAR_USE_FEATURE), + TuttiProtocols.caracteristicMappingRow("262", CaracteristicType.GEAR_USE_FEATURE) + )); protocol.setIndividualObservationPmfmId(Lists.newArrayList("25", "26")); protocol.setSpecies(Lists.<SpeciesProtocol>newArrayList()); @@ -271,8 +277,14 @@ public class ProtocolImportExportServiceTest { Assert.assertEquals("protocolName", protocol.getName()); Assert.assertEquals("Commentaire", protocol.getComment()); Assert.assertEquals(Lists.newArrayList("14", "18"), protocol.getLengthClassesPmfmId()); - Assert.assertEquals(Lists.newArrayList("114", "228", "821"), protocol.getVesselUseFeaturePmfmId()); - Assert.assertEquals(Lists.newArrayList("21", "22"), protocol.getGearUseFeaturePmfmId()); + Assert.assertEquals(Lists.newArrayList( + TuttiProtocols.caracteristicMappingRow("114", CaracteristicType.VESSEL_USE_FEATURE), + TuttiProtocols.caracteristicMappingRow("228", CaracteristicType.VESSEL_USE_FEATURE), + TuttiProtocols.caracteristicMappingRow("821", CaracteristicType.VESSEL_USE_FEATURE), + TuttiProtocols.caracteristicMappingRow("21", CaracteristicType.GEAR_USE_FEATURE), + TuttiProtocols.caracteristicMappingRow("262", CaracteristicType.GEAR_USE_FEATURE) + ), + protocol.getCaracteristicMapping()); Assert.assertEquals(Lists.newArrayList("25", "26"), protocol.getIndividualObservationPmfmId()); Assert.assertNotNull(protocol.getSpecies()); @@ -352,10 +364,11 @@ public class ProtocolImportExportServiceTest { Assert.assertEquals(Lists.newArrayList("1"), protocol.getLengthClassesPmfmId()); - Assert.assertEquals(Lists.newArrayList("2"), - protocol.getVesselUseFeaturePmfmId()); - Assert.assertEquals(Lists.newArrayList("3"), - protocol.getGearUseFeaturePmfmId()); + Assert.assertEquals(Lists.newArrayList( + TuttiProtocols.caracteristicMappingRow("2", CaracteristicType.VESSEL_USE_FEATURE), + TuttiProtocols.caracteristicMappingRow("3", CaracteristicType.GEAR_USE_FEATURE) + ), + protocol.getCaracteristicMapping()); Assert.assertEquals(Lists.newArrayList("4"), protocol.getIndividualObservationPmfmId()); } @@ -387,8 +400,10 @@ public class ProtocolImportExportServiceTest { TuttiProtocol protocol = TuttiProtocols.newTuttiProtocol(); protocol.setLengthClassesPmfmId(Lists.newArrayList("1")); - protocol.setVesselUseFeaturePmfmId(Lists.newArrayList("2")); - protocol.setGearUseFeaturePmfmId(Lists.newArrayList("3")); + protocol.setCaracteristicMapping(Lists.newArrayList( + TuttiProtocols.caracteristicMappingRow("2", CaracteristicType.VESSEL_USE_FEATURE), + TuttiProtocols.caracteristicMappingRow("3", CaracteristicType.GEAR_USE_FEATURE) + )); protocol.setIndividualObservationPmfmId(Lists.newArrayList("4")); Assert.assertFalse(file.exists()); diff --git a/tutti-ui-swing/src/main/java/fr/ifremer/tutti/ui/swing/content/operation/fishing/GearUseFeatureTabUIHandler.java b/tutti-ui-swing/src/main/java/fr/ifremer/tutti/ui/swing/content/operation/fishing/GearUseFeatureTabUIHandler.java index 4b7fabb..bf859b2 100644 --- a/tutti-ui-swing/src/main/java/fr/ifremer/tutti/ui/swing/content/operation/fishing/GearUseFeatureTabUIHandler.java +++ b/tutti-ui-swing/src/main/java/fr/ifremer/tutti/ui/swing/content/operation/fishing/GearUseFeatureTabUIHandler.java @@ -22,8 +22,14 @@ package fr.ifremer.tutti.ui.swing.content.operation.fishing; * #L% */ +import com.google.common.base.Function; +import com.google.common.base.Predicate; +import com.google.common.collect.Collections2; import fr.ifremer.tutti.persistence.entities.CaracteristicMap; import fr.ifremer.tutti.persistence.entities.data.FishingOperation; +import fr.ifremer.tutti.persistence.entities.protocol.CaracteristicMappingRow; +import fr.ifremer.tutti.persistence.entities.protocol.CaracteristicType; +import fr.ifremer.tutti.persistence.entities.protocol.TuttiProtocols; import fr.ifremer.tutti.persistence.entities.referential.Caracteristic; import fr.ifremer.tutti.service.DecoratorService; import fr.ifremer.tutti.ui.swing.util.caracteristics.CaracteristicValueEditor; @@ -32,6 +38,8 @@ import jaxx.runtime.swing.editor.bean.BeanFilterableComboBox; import org.jdesktop.swingx.JXTable; import org.jdesktop.swingx.table.DefaultTableColumnModelExt; +import java.util.ArrayList; +import java.util.Collection; import java.util.List; /** @@ -65,7 +73,7 @@ public class GearUseFeatureTabUIHandler extends AbstractCaracteristicTabUIHandle @Override protected List<String> getProtocolPmfmIds() { - return getDataContext().getProtocol().getGearUseFeaturePmfmId(); + return TuttiProtocols.gearUseFeaturePmfmIds(getDataContext().getProtocol()); } //------------------------------------------------------------------------// diff --git a/tutti-ui-swing/src/main/java/fr/ifremer/tutti/ui/swing/content/operation/fishing/VesselUseFeatureTabUIHandler.java b/tutti-ui-swing/src/main/java/fr/ifremer/tutti/ui/swing/content/operation/fishing/VesselUseFeatureTabUIHandler.java index b21f980..6f77d9c 100644 --- a/tutti-ui-swing/src/main/java/fr/ifremer/tutti/ui/swing/content/operation/fishing/VesselUseFeatureTabUIHandler.java +++ b/tutti-ui-swing/src/main/java/fr/ifremer/tutti/ui/swing/content/operation/fishing/VesselUseFeatureTabUIHandler.java @@ -22,8 +22,14 @@ package fr.ifremer.tutti.ui.swing.content.operation.fishing; * #L% */ +import com.google.common.base.Function; +import com.google.common.base.Predicate; +import com.google.common.collect.Collections2; import fr.ifremer.tutti.persistence.entities.CaracteristicMap; import fr.ifremer.tutti.persistence.entities.data.FishingOperation; +import fr.ifremer.tutti.persistence.entities.protocol.CaracteristicMappingRow; +import fr.ifremer.tutti.persistence.entities.protocol.CaracteristicType; +import fr.ifremer.tutti.persistence.entities.protocol.TuttiProtocols; import fr.ifremer.tutti.persistence.entities.referential.Caracteristic; import fr.ifremer.tutti.service.DecoratorService; import fr.ifremer.tutti.ui.swing.util.caracteristics.CaracteristicValueEditor; @@ -32,6 +38,8 @@ import jaxx.runtime.swing.editor.bean.BeanFilterableComboBox; import org.jdesktop.swingx.JXTable; import org.jdesktop.swingx.table.DefaultTableColumnModelExt; +import java.util.ArrayList; +import java.util.Collection; import java.util.List; /** @@ -65,7 +73,7 @@ public class VesselUseFeatureTabUIHandler extends AbstractCaracteristicTabUIHand @Override protected List<String> getProtocolPmfmIds() { - return getDataContext().getProtocol().getVesselUseFeaturePmfmId(); + return TuttiProtocols.vesselUseFeaturePmfmIds(getDataContext().getProtocol()); } //------------------------------------------------------------------------// diff --git a/tutti-ui-swing/src/main/java/fr/ifremer/tutti/ui/swing/content/protocol/EditProtocolUI.css b/tutti-ui-swing/src/main/java/fr/ifremer/tutti/ui/swing/content/protocol/EditProtocolUI.css index 9011a91..9b882b7 100644 --- a/tutti-ui-swing/src/main/java/fr/ifremer/tutti/ui/swing/content/protocol/EditProtocolUI.css +++ b/tutti-ui-swing/src/main/java/fr/ifremer/tutti/ui/swing/content/protocol/EditProtocolUI.css @@ -113,16 +113,6 @@ JTextField { _help: {"tutti.editProtocol.pane.caracteristic.help"}; } -#gearUseFeatureList { - property: gearUseFeaturePmfm; - _help: {"tutti.editProtocol.field.gearUseFeature.help"}; -} - -#vesselUseFeatureList { - property: vesselUseFeaturePmfm; - _help: {"tutti.editProtocol.field.vesselUseFeature.help"}; -} - #individualObservationList { property: individualObservationPmfm; _help: {"tutti.editProtocol.field.individualObservation.help"}; diff --git a/tutti-ui-swing/src/main/java/fr/ifremer/tutti/ui/swing/content/protocol/EditProtocolUI.jaxx b/tutti-ui-swing/src/main/java/fr/ifremer/tutti/ui/swing/content/protocol/EditProtocolUI.jaxx index 22e70ec..0ca8922 100644 --- a/tutti-ui-swing/src/main/java/fr/ifremer/tutti/ui/swing/content/protocol/EditProtocolUI.jaxx +++ b/tutti-ui-swing/src/main/java/fr/ifremer/tutti/ui/swing/content/protocol/EditProtocolUI.jaxx @@ -113,18 +113,10 @@ <tab title='tutti.editProtocol.tab.caracteristic.lengthClasses'> <BeanDoubleList id='lengthClassesList' genericType='Caracteristic'/> </tab> - <tab title='tutti.editProtocol.tab.caracteristic.gearUseFeature'> - <BeanDoubleList id='gearUseFeatureList' - genericType='Caracteristic'/> - </tab> <tab title='tutti.editProtocol.tab.caracteristic.individualObservation'> <BeanDoubleList id='individualObservationList' genericType='Caracteristic'/> </tab> - <tab title='tutti.editProtocol.tab.caracteristic.vesselUseFeature'> - <BeanDoubleList id='vesselUseFeatureList' - genericType='Caracteristic'/> - </tab> </JTabbedPane> </JPanel> </tab> diff --git a/tutti-ui-swing/src/main/java/fr/ifremer/tutti/ui/swing/content/protocol/EditProtocolUIHandler.java b/tutti-ui-swing/src/main/java/fr/ifremer/tutti/ui/swing/content/protocol/EditProtocolUIHandler.java index 00a6950..6471cda 100644 --- a/tutti-ui-swing/src/main/java/fr/ifremer/tutti/ui/swing/content/protocol/EditProtocolUIHandler.java +++ b/tutti-ui-swing/src/main/java/fr/ifremer/tutti/ui/swing/content/protocol/EditProtocolUIHandler.java @@ -409,9 +409,7 @@ public class EditProtocolUIHandler extends AbstractTuttiUIHandler<EditProtocolUI allDoubleLists = Lists.newArrayList( this.ui.getLengthClassesList(), - this.ui.getGearUseFeatureList(), - this.ui.getIndividualObservationList(), - this.ui.getVesselUseFeatureList() + this.ui.getIndividualObservationList() ); initDoubleList(EditProtocolUIModel.PROPERTY_LENGTH_CLASSES_PMFM_ID, @@ -419,16 +417,6 @@ public class EditProtocolUIHandler extends AbstractTuttiUIHandler<EditProtocolUI Lists.newArrayList(model.getCaracteristics()), model.getLengthClassesPmfmId()); - initDoubleList(EditProtocolUIModel.PROPERTY_GEAR_USE_FEATURE_PMFM_ID, - this.ui.getGearUseFeatureList(), - Lists.newArrayList(model.getCaracteristics()), - model.getGearUseFeaturePmfmId()); - - initDoubleList(EditProtocolUIModel.PROPERTY_VESSEL_USE_FEATURE_PMFM_ID, - this.ui.getVesselUseFeatureList(), - Lists.newArrayList(model.getCaracteristics()), - model.getVesselUseFeaturePmfmId()); - initDoubleList(EditProtocolUIModel.PROPERTY_INDIVIDUAL_OBSERVATION_PMFM_ID, this.ui.getIndividualObservationList(), Lists.newArrayList(model.getCaracteristics()), @@ -450,17 +438,13 @@ public class EditProtocolUIHandler extends AbstractTuttiUIHandler<EditProtocolUI break; case 1: - selectedDoubleList = EditProtocolUIHandler.this.ui.getGearUseFeatureList(); - break; - - case 2: +// selectedDoubleList = EditProtocolUIHandler.this.ui.getGearUseFeatureList(); +// break; +// +// case 2: selectedDoubleList = EditProtocolUIHandler.this.ui.getIndividualObservationList(); break; - case 3: - selectedDoubleList = EditProtocolUIHandler.this.ui.getVesselUseFeatureList(); - break; - default: selectedDoubleList = null; } diff --git a/tutti-ui-swing/src/main/java/fr/ifremer/tutti/ui/swing/content/protocol/EditProtocolUIModel.java b/tutti-ui-swing/src/main/java/fr/ifremer/tutti/ui/swing/content/protocol/EditProtocolUIModel.java index 268317f..eed2950 100644 --- a/tutti-ui-swing/src/main/java/fr/ifremer/tutti/ui/swing/content/protocol/EditProtocolUIModel.java +++ b/tutti-ui-swing/src/main/java/fr/ifremer/tutti/ui/swing/content/protocol/EditProtocolUIModel.java @@ -25,6 +25,7 @@ package fr.ifremer.tutti.ui.swing.content.protocol; import com.google.common.collect.Lists; import com.google.common.collect.Multimap; import fr.ifremer.tutti.persistence.entities.TuttiEntities; +import fr.ifremer.tutti.persistence.entities.protocol.CaracteristicMappingRow; import fr.ifremer.tutti.persistence.entities.protocol.SpeciesProtocol; import fr.ifremer.tutti.persistence.entities.protocol.TuttiProtocol; import fr.ifremer.tutti.persistence.entities.protocol.TuttiProtocols; @@ -139,15 +140,10 @@ public class EditProtocolUIModel extends AbstractTuttiBeanUIModel<TuttiProtocol, setLengthClassesPmfmId(ids); } - public void setGearUseFeaturePmfm(List<Caracteristic> gearUseFeaturePmfm) { - List<String> ids = TuttiEntities.collecIds(gearUseFeaturePmfm); - setGearUseFeaturePmfmId(ids); - } - - public void setVesselUseFeaturePmfm(List<Caracteristic> vesselUseFeaturePmfm) { - List<String> ids = TuttiEntities.collecIds(vesselUseFeaturePmfm); - setVesselUseFeaturePmfmId(ids); - } +// public void setGearUseFeaturePmfm(List<Caracteristic> gearUseFeaturePmfm) { +// List<String> ids = TuttiEntities.collecIds(gearUseFeaturePmfm); +// setGearUseFeaturePmfmId(ids); +// } public void setIndividualObservationPmfm(List<Caracteristic> individualObservationPmfm) { List<String> ids = TuttiEntities.collecIds(individualObservationPmfm); @@ -322,28 +318,6 @@ public class EditProtocolUIModel extends AbstractTuttiBeanUIModel<TuttiProtocol, } @Override - public List<String> getGearUseFeaturePmfmId() { - return editObject.getGearUseFeaturePmfmId(); - } - - @Override - public void setGearUseFeaturePmfmId(List<String> gearUseFeaturePmfmId) { - editObject.setGearUseFeaturePmfmId(gearUseFeaturePmfmId); - firePropertyChange(PROPERTY_GEAR_USE_FEATURE_PMFM_ID, null, gearUseFeaturePmfmId); - } - - @Override - public List<String> getVesselUseFeaturePmfmId() { - return editObject.getVesselUseFeaturePmfmId(); - } - - @Override - public void setVesselUseFeaturePmfmId(List<String> vesselUseFeaturePmfmId) { - editObject.setVesselUseFeaturePmfmId(vesselUseFeaturePmfmId); - firePropertyChange(PROPERTY_VESSEL_USE_FEATURE_PMFM_ID, null, vesselUseFeaturePmfmId); - } - - @Override public List<String> getIndividualObservationPmfmId() { return editObject.getIndividualObservationPmfmId(); } @@ -355,93 +329,59 @@ public class EditProtocolUIModel extends AbstractTuttiBeanUIModel<TuttiProtocol, } @Override - public String getGearUseFeaturePmfmId(int index) { - return editObject.getGearUseFeaturePmfmId(index); - } - - @Override - public boolean isGearUseFeaturePmfmIdEmpty() { - return editObject.isGearUseFeaturePmfmIdEmpty(); - } - - @Override - public int sizeGearUseFeaturePmfmId() { - return editObject.sizeGearUseFeaturePmfmId(); - } - - @Override - public void addGearUseFeaturePmfmId(String gearUseFeaturePmfmId) { - editObject.addGearUseFeaturePmfmId(gearUseFeaturePmfmId); - } - - @Override - public void addAllGearUseFeaturePmfmId(Collection<String> gearUseFeaturePmfmId) { - editObject.addAllGearUseFeaturePmfmId(gearUseFeaturePmfmId); - } - - @Override - public boolean removeGearUseFeaturePmfmId(String gearUseFeaturePmfmId) { - return editObject.removeGearUseFeaturePmfmId(gearUseFeaturePmfmId); - } - - @Override - public boolean removeAllGearUseFeaturePmfmId(Collection<String> gearUseFeaturePmfmId) { - return editObject.removeAllGearUseFeaturePmfmId(gearUseFeaturePmfmId); - } - - @Override - public boolean containsGearUseFeaturePmfmId(String gearUseFeaturePmfmId) { - return editObject.containsGearUseFeaturePmfmId(gearUseFeaturePmfmId); + public List<CaracteristicMappingRow> getCaracteristicMapping() { + return editObject.getCaracteristicMapping(); } @Override - public boolean containsAllGearUseFeaturePmfmId(Collection<String> gearUseFeaturePmfmId) { - return editObject.containsAllGearUseFeaturePmfmId(gearUseFeaturePmfmId); + public void setCaracteristicMapping(List<CaracteristicMappingRow> caracteristicMapping) { + editObject.setCaracteristicMapping(caracteristicMapping); + firePropertyChange(PROPERTY_CARACTERISTIC_MAPPING, null, caracteristicMapping); } @Override - public String getVesselUseFeaturePmfmId(int index) { - return editObject.getVesselUseFeaturePmfmId(index); + public CaracteristicMappingRow getCaracteristicMapping(int index) { + return editObject.getCaracteristicMapping(index); } @Override - public boolean isVesselUseFeaturePmfmIdEmpty() { - return editObject.isVesselUseFeaturePmfmIdEmpty(); + public boolean isCaracteristicMappingEmpty() { + return editObject.isCaracteristicMappingEmpty(); } @Override - public int sizeVesselUseFeaturePmfmId() { - return editObject.sizeVesselUseFeaturePmfmId(); + public int sizeCaracteristicMapping() { + return editObject.sizeCaracteristicMapping(); } @Override - public void addVesselUseFeaturePmfmId(String vesselUseFeaturePmfmId) { - editObject.addVesselUseFeaturePmfmId(vesselUseFeaturePmfmId); + public void addCaracteristicMapping(CaracteristicMappingRow caracteristicMapping) { + editObject.addCaracteristicMapping(caracteristicMapping); } @Override - public void addAllVesselUseFeaturePmfmId(Collection<String> vesselUseFeaturePmfmId) { - editObject.addAllVesselUseFeaturePmfmId(vesselUseFeaturePmfmId); + public void addAllCaracteristicMapping(Collection<CaracteristicMappingRow> caracteristicMapping) { + editObject.addAllCaracteristicMapping(caracteristicMapping); } @Override - public boolean removeVesselUseFeaturePmfmId(String vesselUseFeaturePmfmId) { - return editObject.removeVesselUseFeaturePmfmId(vesselUseFeaturePmfmId); + public boolean removeCaracteristicMapping(CaracteristicMappingRow caracteristicMapping) { + return editObject.removeCaracteristicMapping(caracteristicMapping); } @Override - public boolean removeAllVesselUseFeaturePmfmId(Collection<String> vesselUseFeaturePmfmId) { - return editObject.removeAllVesselUseFeaturePmfmId(vesselUseFeaturePmfmId); + public boolean removeAllCaracteristicMapping(Collection<CaracteristicMappingRow> caracteristicMapping) { + return editObject.removeAllCaracteristicMapping(caracteristicMapping); } @Override - public boolean containsVesselUseFeaturePmfmId(String vesselUseFeaturePmfmId) { - return editObject.containsVesselUseFeaturePmfmId(vesselUseFeaturePmfmId); + public boolean containsCaracteristicMapping(CaracteristicMappingRow caracteristicMapping) { + return editObject.containsCaracteristicMapping(caracteristicMapping); } @Override - public boolean containsAllVesselUseFeaturePmfmId(Collection<String> vesselUseFeaturePmfmId) { - return editObject.containsAllVesselUseFeaturePmfmId(vesselUseFeaturePmfmId); + public boolean containsAllCaracteristicMapping(Collection<CaracteristicMappingRow> caracteristicMapping) { + return editObject.containsAllCaracteristicMapping(caracteristicMapping); } @Override -- To stop receiving notification emails like this one, please contact codelutin.com SCM administrator <admin+scm@codelutin.com>.