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 ecd99450526525904ac46db9fd5b786ffb9dc5b2 Author: Tony CHEMIT <chemit@codelutin.com> Date: Thu Nov 20 12:52:22 2014 +0100 separation en deux du service d'import et d'export pupitri --- .../service/pupitri/PupitriExportService.java | 58 ++++++++++++++++++++++ .../tutti/service/pupitri/PupitriImportResult.java | 12 +++++ ...xportService.java => PupitriImportService.java} | 36 +------------- .../pupitri/PupitriImportServiceAno3898Test.java | 4 +- .../pupitri/PupitriImportServiceAno5032Test.java | 4 +- .../pupitri/PupitriImportServiceAno5079Test.java | 4 +- .../pupitri/PupitriImportServiceEvo5060Test.java | 4 +- .../pupitri/PupitriImportServiceEvo5062Test.java | 4 +- ...viceTest.java => PupitriImportServiceTest.java} | 6 +-- .../fr/ifremer/tutti/ui/swing/TuttiUIContext.java | 11 ++-- .../tutti/ui/swing/action/ExportPupitriAction.java | 9 ++-- .../tutti/ui/swing/action/ImportPupitriAction.java | 15 +++--- 12 files changed, 104 insertions(+), 63 deletions(-) diff --git a/tutti-service/src/main/java/fr/ifremer/tutti/service/pupitri/PupitriExportService.java b/tutti-service/src/main/java/fr/ifremer/tutti/service/pupitri/PupitriExportService.java new file mode 100644 index 0000000..35fcdf1 --- /dev/null +++ b/tutti-service/src/main/java/fr/ifremer/tutti/service/pupitri/PupitriExportService.java @@ -0,0 +1,58 @@ +package fr.ifremer.tutti.service.pupitri; + +import com.google.common.base.Charsets; +import com.google.common.base.Function; +import com.google.common.collect.Lists; +import fr.ifremer.tutti.persistence.entities.referential.Species; +import fr.ifremer.tutti.service.AbstractTuttiService; +import org.apache.commons.collections4.CollectionUtils; +import org.nuiton.csv.Export; +import org.nuiton.jaxx.application.ApplicationTechnicalException; + +import java.io.File; +import java.util.List; + +import static org.nuiton.i18n.I18n.t; + +/** + * Created on 11/20/14. + * + * @author Tony Chemit - chemit@codelutin.com + * @since 3.10 + */ +public class PupitriExportService extends AbstractTuttiService { + + + public void exportSpecies(List<Species> species, File target) { + + SpeciesRowModel speciesCsvModel = new SpeciesRowModel(';'); + + List<SpeciesRow> rows = Lists.newArrayList(); + + if (CollectionUtils.isNotEmpty(species)) { + rows = Lists.transform(species, new Function<Species, SpeciesRow>() { + + @Override + public SpeciesRow apply(Species input) { + SpeciesRow row = new SpeciesRow(input); + return row; + } + }); + } + + try { + Export.exportToFile(speciesCsvModel, + rows, + target, + Charsets.UTF_8, + false); + + } catch (Exception e) { + throw new ApplicationTechnicalException( + t("tutti.service.pupitri.export.species.error", target), e); + } + + } +} + + diff --git a/tutti-service/src/main/java/fr/ifremer/tutti/service/pupitri/PupitriImportResult.java b/tutti-service/src/main/java/fr/ifremer/tutti/service/pupitri/PupitriImportResult.java index 39087ee..13415ae 100644 --- a/tutti-service/src/main/java/fr/ifremer/tutti/service/pupitri/PupitriImportResult.java +++ b/tutti-service/src/main/java/fr/ifremer/tutti/service/pupitri/PupitriImportResult.java @@ -32,6 +32,7 @@ import java.io.File; import java.util.ArrayList; import java.util.HashSet; import java.util.Iterator; +import java.util.LinkedHashSet; import java.util.List; import java.util.Set; @@ -89,11 +90,14 @@ public class PupitriImportResult { */ private final Set<Species> melagSpecies; + private final Set<String> notImportedSpeciesIds; + public PupitriImportResult(File trunkFile, File carrousselFile) { this.trunkFile = trunkFile; this.carrousselFile = carrousselFile; catches = new ArrayList<>(); melagSpecies = new HashSet<>(); + notImportedSpeciesIds = new LinkedHashSet<>(); } public boolean isFishingOperationFound() { @@ -152,6 +156,10 @@ public class PupitriImportResult { return melagSpecies; } + public Set<String> getNotImportedSpeciesIds() { + return notImportedSpeciesIds; + } + /** * @return {@code true} if there is a total melga weight defined (at least one species MELA-GNE found). * @since 3.4.2 @@ -206,6 +214,10 @@ public class PupitriImportResult { } } + void addNotImportedSpeciesId(String notImportedSpeciesId) { + notImportedSpeciesIds.add(notImportedSpeciesId); + } + void addCatch(PupitriCatch aCatch) { catches.add(aCatch); diff --git a/tutti-service/src/main/java/fr/ifremer/tutti/service/pupitri/PupitriImportExportService.java b/tutti-service/src/main/java/fr/ifremer/tutti/service/pupitri/PupitriImportService.java similarity index 94% rename from tutti-service/src/main/java/fr/ifremer/tutti/service/pupitri/PupitriImportExportService.java rename to tutti-service/src/main/java/fr/ifremer/tutti/service/pupitri/PupitriImportService.java index fede336..74ccc11 100644 --- a/tutti-service/src/main/java/fr/ifremer/tutti/service/pupitri/PupitriImportExportService.java +++ b/tutti-service/src/main/java/fr/ifremer/tutti/service/pupitri/PupitriImportService.java @@ -22,8 +22,6 @@ package fr.ifremer.tutti.service.pupitri; * #L% */ -import com.google.common.base.Charsets; -import com.google.common.base.Function; import com.google.common.collect.ArrayListMultimap; import com.google.common.collect.ListMultimap; import com.google.common.collect.Lists; @@ -58,7 +56,6 @@ import org.apache.commons.lang3.StringUtils; import org.apache.commons.lang3.mutable.MutableFloat; import org.apache.commons.logging.Log; import org.apache.commons.logging.LogFactory; -import org.nuiton.csv.Export; import org.nuiton.csv.Import; import org.nuiton.decorator.Decorator; import org.nuiton.jaxx.application.ApplicationIOUtil; @@ -81,10 +78,10 @@ import static org.nuiton.i18n.I18n.t; * @author kmorin <kmorin@codelutin.com> * @since 1.2 */ -public class PupitriImportExportService extends AbstractTuttiService { +public class PupitriImportService extends AbstractTuttiService { private static final Log log = - LogFactory.getLog(PupitriImportExportService.class); + LogFactory.getLog(PupitriImportService.class); protected DecoratorService decoratorService; @@ -162,35 +159,6 @@ public class PupitriImportExportService extends AbstractTuttiService { return result; } - public void exportSpecies(List<Species> species, File target) { - SpeciesRowModel speciesCsvModel = new SpeciesRowModel(';'); - - List<SpeciesRow> rows = Lists.newArrayList(); - - if (CollectionUtils.isNotEmpty(species)) { - rows = Lists.transform(species, new Function<Species, SpeciesRow>() { - - @Override - public SpeciesRow apply(Species input) { - SpeciesRow row = new SpeciesRow(input); - return row; - } - }); - } - - try { - Export.exportToFile(speciesCsvModel, - rows, - target, - Charsets.UTF_8, - false); - - } catch (Exception e) { - throw new ApplicationTechnicalException( - t("tutti.service.pupitri.export.species.error", target), e); - } - } - protected void addFileAsAttachment(File f, CatchBatch catchBatch) { Attachment attachment = Attachments.newAttachment(); attachment.setObjectType(ObjectTypeCode.CATCH_BATCH); diff --git a/tutti-service/src/test/java/fr/ifremer/tutti/service/pupitri/PupitriImportServiceAno3898Test.java b/tutti-service/src/test/java/fr/ifremer/tutti/service/pupitri/PupitriImportServiceAno3898Test.java index 951f5ee..830271b 100644 --- a/tutti-service/src/test/java/fr/ifremer/tutti/service/pupitri/PupitriImportServiceAno3898Test.java +++ b/tutti-service/src/test/java/fr/ifremer/tutti/service/pupitri/PupitriImportServiceAno3898Test.java @@ -62,7 +62,7 @@ public class PupitriImportServiceAno3898Test { public static final String OPERATION_3_ID = "100115"; - protected PupitriImportExportService service; + protected PupitriImportService service; protected PersistenceService persistenceService; @@ -81,7 +81,7 @@ public class PupitriImportServiceAno3898Test { dbResource.openDataContext(); - service = serviceContext.getService(PupitriImportExportService.class); + service = serviceContext.getService(PupitriImportService.class); dataContext = dbResource.loadContext(PROGRAM_ID, CRUISE_ID, 3, OPERATION_2_ID, diff --git a/tutti-service/src/test/java/fr/ifremer/tutti/service/pupitri/PupitriImportServiceAno5032Test.java b/tutti-service/src/test/java/fr/ifremer/tutti/service/pupitri/PupitriImportServiceAno5032Test.java index 561c61f..f088049 100644 --- a/tutti-service/src/test/java/fr/ifremer/tutti/service/pupitri/PupitriImportServiceAno5032Test.java +++ b/tutti-service/src/test/java/fr/ifremer/tutti/service/pupitri/PupitriImportServiceAno5032Test.java @@ -69,7 +69,7 @@ public class PupitriImportServiceAno5032Test { public static final String OPERATION_3_ID = "100115"; - protected PupitriImportExportService service; + protected PupitriImportService service; protected PersistenceService persistenceService; @@ -88,7 +88,7 @@ public class PupitriImportServiceAno5032Test { dbResource.openDataContext(); - service = serviceContext.getService(PupitriImportExportService.class); + service = serviceContext.getService(PupitriImportService.class); dataContext = dbResource.loadContext(PROGRAM_ID, CRUISE_ID, 3, OPERATION_2_ID, diff --git a/tutti-service/src/test/java/fr/ifremer/tutti/service/pupitri/PupitriImportServiceAno5079Test.java b/tutti-service/src/test/java/fr/ifremer/tutti/service/pupitri/PupitriImportServiceAno5079Test.java index b51c1d8..ac14ef1 100644 --- a/tutti-service/src/test/java/fr/ifremer/tutti/service/pupitri/PupitriImportServiceAno5079Test.java +++ b/tutti-service/src/test/java/fr/ifremer/tutti/service/pupitri/PupitriImportServiceAno5079Test.java @@ -73,7 +73,7 @@ public class PupitriImportServiceAno5079Test { public static final String OPERATION_3_ID = "100115"; - protected PupitriImportExportService service; + protected PupitriImportService service; protected PersistenceService persistenceService; @@ -92,7 +92,7 @@ public class PupitriImportServiceAno5079Test { dbResource.openDataContext(); - service = serviceContext.getService(PupitriImportExportService.class); + service = serviceContext.getService(PupitriImportService.class); dataContext = dbResource.loadContext(PROGRAM_ID, CRUISE_ID, 3, OPERATION_2_ID, diff --git a/tutti-service/src/test/java/fr/ifremer/tutti/service/pupitri/PupitriImportServiceEvo5060Test.java b/tutti-service/src/test/java/fr/ifremer/tutti/service/pupitri/PupitriImportServiceEvo5060Test.java index 0c9cd7c..e361ac0 100644 --- a/tutti-service/src/test/java/fr/ifremer/tutti/service/pupitri/PupitriImportServiceEvo5060Test.java +++ b/tutti-service/src/test/java/fr/ifremer/tutti/service/pupitri/PupitriImportServiceEvo5060Test.java @@ -71,7 +71,7 @@ public class PupitriImportServiceEvo5060Test { public static final String OPERATION_3_ID = "100115"; - protected PupitriImportExportService service; + protected PupitriImportService service; protected PersistenceService persistenceService; @@ -90,7 +90,7 @@ public class PupitriImportServiceEvo5060Test { dbResource.openDataContext(); - service = serviceContext.getService(PupitriImportExportService.class); + service = serviceContext.getService(PupitriImportService.class); dataContext = dbResource.loadContext(PROGRAM_ID, CRUISE_ID, 3, OPERATION_2_ID, diff --git a/tutti-service/src/test/java/fr/ifremer/tutti/service/pupitri/PupitriImportServiceEvo5062Test.java b/tutti-service/src/test/java/fr/ifremer/tutti/service/pupitri/PupitriImportServiceEvo5062Test.java index 8b9c36e..4f54a76 100644 --- a/tutti-service/src/test/java/fr/ifremer/tutti/service/pupitri/PupitriImportServiceEvo5062Test.java +++ b/tutti-service/src/test/java/fr/ifremer/tutti/service/pupitri/PupitriImportServiceEvo5062Test.java @@ -72,7 +72,7 @@ public class PupitriImportServiceEvo5062Test { public static final String OPERATION_3_ID = "100115"; - protected PupitriImportExportService service; + protected PupitriImportService service; protected PersistenceService persistenceService; @@ -91,7 +91,7 @@ public class PupitriImportServiceEvo5062Test { dbResource.openDataContext(); - service = serviceContext.getService(PupitriImportExportService.class); + service = serviceContext.getService(PupitriImportService.class); dataContext = dbResource.loadContext(PROGRAM_ID, CRUISE_ID, 3, OPERATION_2_ID, diff --git a/tutti-service/src/test/java/fr/ifremer/tutti/service/pupitri/PupitriImportExportServiceTest.java b/tutti-service/src/test/java/fr/ifremer/tutti/service/pupitri/PupitriImportServiceTest.java similarity index 96% rename from tutti-service/src/test/java/fr/ifremer/tutti/service/pupitri/PupitriImportExportServiceTest.java rename to tutti-service/src/test/java/fr/ifremer/tutti/service/pupitri/PupitriImportServiceTest.java index 1070a5b..98eb187 100644 --- a/tutti-service/src/test/java/fr/ifremer/tutti/service/pupitri/PupitriImportExportServiceTest.java +++ b/tutti-service/src/test/java/fr/ifremer/tutti/service/pupitri/PupitriImportServiceTest.java @@ -44,7 +44,7 @@ import java.io.IOException; * @author tchemit <chemit@codelutin.com> * @since 2.4 */ -public class PupitriImportExportServiceTest { +public class PupitriImportServiceTest { @ClassRule public static final ServiceDbResource dbResource = @@ -60,7 +60,7 @@ public class PupitriImportExportServiceTest { public static final String OPERATION_3_ID = "100115"; - protected PupitriImportExportService service; + protected PupitriImportService service; protected PersistenceService persistenceService; @@ -79,7 +79,7 @@ public class PupitriImportExportServiceTest { dbResource.openDataContext(); - service = serviceContext.getService(PupitriImportExportService.class); + service = serviceContext.getService(PupitriImportService.class); dataContext = dbResource.loadContext(PROGRAM_ID, CRUISE_ID, 3, OPERATION_2_ID, diff --git a/tutti-ui-swing/src/main/java/fr/ifremer/tutti/ui/swing/TuttiUIContext.java b/tutti-ui-swing/src/main/java/fr/ifremer/tutti/ui/swing/TuttiUIContext.java index 3a0e46b..01b117f 100644 --- a/tutti-ui-swing/src/main/java/fr/ifremer/tutti/ui/swing/TuttiUIContext.java +++ b/tutti-ui-swing/src/main/java/fr/ifremer/tutti/ui/swing/TuttiUIContext.java @@ -44,7 +44,8 @@ import fr.ifremer.tutti.service.export.pdf.CatchesPdfExportService; import fr.ifremer.tutti.service.export.sumatra.CatchesSumatraExportService; import fr.ifremer.tutti.service.protocol.ProtocolImportExportService; import fr.ifremer.tutti.service.psionimport.PsionImportService; -import fr.ifremer.tutti.service.pupitri.PupitriImportExportService; +import fr.ifremer.tutti.service.pupitri.PupitriExportService; +import fr.ifremer.tutti.service.pupitri.PupitriImportService; import fr.ifremer.tutti.service.referential.ReferentialTemporaryGearService; import fr.ifremer.tutti.service.referential.ReferentialTemporaryPersonService; import fr.ifremer.tutti.service.referential.ReferentialTemporarySpeciesService; @@ -667,8 +668,12 @@ public class TuttiUIContext extends AbstractBean implements Closeable, UIMessage return serviceContext.getService(ProtocolImportExportService.class); } - public PupitriImportExportService getTuttiPupitriImportExportService() { - return serviceContext.getService(PupitriImportExportService.class); + public PupitriImportService getPupitriImportService() { + return serviceContext.getService(PupitriImportService.class); + } + + public PupitriExportService getPupitriExportService() { + return serviceContext.getService(PupitriExportService.class); } public PsionImportService getTuttiPsionImportService() { diff --git a/tutti-ui-swing/src/main/java/fr/ifremer/tutti/ui/swing/action/ExportPupitriAction.java b/tutti-ui-swing/src/main/java/fr/ifremer/tutti/ui/swing/action/ExportPupitriAction.java index fc563a1..4910e9b 100644 --- a/tutti-ui-swing/src/main/java/fr/ifremer/tutti/ui/swing/action/ExportPupitriAction.java +++ b/tutti-ui-swing/src/main/java/fr/ifremer/tutti/ui/swing/action/ExportPupitriAction.java @@ -25,7 +25,7 @@ package fr.ifremer.tutti.ui.swing.action; import com.google.common.base.Preconditions; import com.google.common.collect.Lists; import fr.ifremer.tutti.persistence.entities.referential.Species; -import fr.ifremer.tutti.service.pupitri.PupitriImportExportService; +import fr.ifremer.tutti.service.pupitri.PupitriExportService; import fr.ifremer.tutti.ui.swing.content.protocol.EditProtocolSpeciesRowModel; import fr.ifremer.tutti.ui.swing.content.protocol.EditProtocolUI; import fr.ifremer.tutti.ui.swing.content.protocol.EditProtocolUIHandler; @@ -101,11 +101,10 @@ public class ExportPupitriAction extends AbstractTuttiAction<EditProtocolUIModel } } - // import - PupitriImportExportService service = - getContext().getTuttiPupitriImportExportService(); - + // do Export + PupitriExportService service = getContext().getPupitriExportService(); service.exportSpecies(speciesList, file); + } @Override diff --git a/tutti-ui-swing/src/main/java/fr/ifremer/tutti/ui/swing/action/ImportPupitriAction.java b/tutti-ui-swing/src/main/java/fr/ifremer/tutti/ui/swing/action/ImportPupitriAction.java index 3f91d48..e2329d3 100644 --- a/tutti-ui-swing/src/main/java/fr/ifremer/tutti/ui/swing/action/ImportPupitriAction.java +++ b/tutti-ui-swing/src/main/java/fr/ifremer/tutti/ui/swing/action/ImportPupitriAction.java @@ -29,8 +29,8 @@ import fr.ifremer.tutti.persistence.entities.data.CatchBatch; import fr.ifremer.tutti.persistence.entities.data.FishingOperation; import fr.ifremer.tutti.persistence.entities.data.SampleCategoryModel; import fr.ifremer.tutti.service.PersistenceService; -import fr.ifremer.tutti.service.pupitri.PupitriImportExportService; import fr.ifremer.tutti.service.pupitri.PupitriImportResult; +import fr.ifremer.tutti.service.pupitri.PupitriImportService; import fr.ifremer.tutti.ui.swing.content.operation.FishingOperationsUI; import fr.ifremer.tutti.ui.swing.content.operation.catches.EditCatchesUI; import fr.ifremer.tutti.ui.swing.content.operation.catches.EditCatchesUIModel; @@ -137,9 +137,7 @@ public class ImportPupitriAction extends AbstractTuttiAction<SpeciesBatchUIModel @Override public void doAction() throws Exception { - PupitriImportExportService importExportService = - getContext().getTuttiPupitriImportExportService(); - + EditCatchesUI parentContainer = handler.getParentContainer(EditCatchesUI.class); EditCatchesUIModel model = parentContainer.getModel(); @@ -147,10 +145,11 @@ public class ImportPupitriAction extends AbstractTuttiAction<SpeciesBatchUIModel CatchBatch catchBatch = model.toEntity(); // import - importResult = importExportService.importPupitri(importedTrunkFile, - importedCarrouselFile, - operation, - catchBatch); + PupitriImportService service = getContext().getPupitriImportService(); + importResult = service.importPupitri(importedTrunkFile, + importedCarrouselFile, + operation, + catchBatch); if (importResult.isFishingOperationFound()) { -- To stop receiving notification emails like this one, please contact codelutin.com SCM administrator <admin+scm@codelutin.com>.