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 f1864602216b86467b25091fa596f2bd2acd349a Author: Tony CHEMIT <chemit@codelutin.com> Date: Wed Feb 11 18:01:07 2015 +0100 use GenericFormatArchive object --- .../genericformat/GenericFormatExportService.java | 39 +++++++------------- .../service/genericformat/GlobalExportContext.java | 41 +++++++++++----------- 2 files changed, 32 insertions(+), 48 deletions(-) diff --git a/tutti-service/src/main/java/fr/ifremer/tutti/service/genericformat/GenericFormatExportService.java b/tutti-service/src/main/java/fr/ifremer/tutti/service/genericformat/GenericFormatExportService.java index 59212d1..0dbdb3d 100644 --- a/tutti-service/src/main/java/fr/ifremer/tutti/service/genericformat/GenericFormatExportService.java +++ b/tutti-service/src/main/java/fr/ifremer/tutti/service/genericformat/GenericFormatExportService.java @@ -87,7 +87,6 @@ import org.apache.commons.logging.Log; import org.apache.commons.logging.LogFactory; import org.nuiton.decorator.Decorator; import org.nuiton.jaxx.application.ApplicationBusinessException; -import org.nuiton.jaxx.application.ApplicationIOUtil; import org.nuiton.jaxx.application.ApplicationTechnicalException; import java.io.File; @@ -178,10 +177,9 @@ public class GenericFormatExportService extends AbstractTuttiService { checkError = e; } - File basedir = new File(context.getConfig().newTempFile("exportProgram"), "exportProgram-" + programId); - ApplicationIOUtil.forceMkdir(basedir, t("tutti.io.mkDir.error", basedir)); + GenericFormatArchive genericFormatArchive = GenericFormatArchive.forExport(exportFile, context.getConfig().getTmpDirectory()); - try (GlobalExportContext exportContext = createExportContext(basedir)) { + try (GlobalExportContext exportContext = createExportContext(genericFormatArchive)) { for (Cruise cruise : allCruise) { @@ -197,7 +195,7 @@ public class GenericFormatExportService extends AbstractTuttiService { throw new ApplicationTechnicalException("Could not create program export", e); } - buildExportZip(basedir, exportFile, progressionModel); + genericFormatArchive.createZip(progressionModel); if (checkError != null) { throw checkError; @@ -238,11 +236,8 @@ public class GenericFormatExportService extends AbstractTuttiService { checkError = e; } - File basedir = new File(context.getConfig().newTempFile("exportCruise"), "exportCruise-" + cruiseId); - - ApplicationIOUtil.forceMkdir(basedir, t("tutti.io.mkDir.error", basedir)); - - try (GlobalExportContext exportContext = createExportContext(basedir)) { + GenericFormatArchive genericFormatArchive = GenericFormatArchive.forExport(exportFile, context.getConfig().getTmpDirectory()); + try (GlobalExportContext exportContext = createExportContext(genericFormatArchive)) { exportCruise(cruise, exportContext, progressionModel); @@ -252,7 +247,7 @@ public class GenericFormatExportService extends AbstractTuttiService { throw new ApplicationTechnicalException("Could not create cruise export", e); } - buildExportZip(basedir, exportFile, progressionModel); + genericFormatArchive.createZip(progressionModel); if (checkError != null) { throw checkError; @@ -291,11 +286,9 @@ public class GenericFormatExportService extends AbstractTuttiService { checkError = e; } - File basedir = new File(context.getConfig().newTempFile("exportCruise"), "exportCruise-" + cruiseId); - - ApplicationIOUtil.forceMkdir(basedir, t("tutti.io.mkDir.error", basedir)); + GenericFormatArchive genericFormatArchive = GenericFormatArchive.forExport(null, context.getConfig().getTmpDirectory()); - try (GlobalExportContext exportContext = createExportContext(basedir)) { + try (GlobalExportContext exportContext = createExportContext(genericFormatArchive)) { FishingOperation fishingOperation = persistenceService.getFishingOperation(fishingOperationId); @@ -312,13 +305,13 @@ public class GenericFormatExportService extends AbstractTuttiService { throw checkError; } - return basedir; + return genericFormatArchive.getWorkingDirectoryPath().toFile(); } - protected GlobalExportContext createExportContext(File basedir) { + protected GlobalExportContext createExportContext(GenericFormatArchive genericFormatArchive) { - return new GlobalExportContext(basedir, + return new GlobalExportContext(genericFormatArchive, ';', persistenceService, weightComputingService, @@ -439,14 +432,6 @@ public class GenericFormatExportService extends AbstractTuttiService { } - protected void buildExportZip(File basedir, File exportFile, ProgressionModel progressionModel) { - - increments(progressionModel, t("tutti.service.genericExport.buildZip", exportFile)); - - ApplicationIOUtil.zip(basedir, exportFile, t("tutti.service.genericExport.zip.error", exportFile)); - - } - protected void exportTemporaryGears(GlobalExportContext exportContext, List<Gear> temporaryGears) { try { @@ -540,8 +525,8 @@ public class GenericFormatExportService extends AbstractTuttiService { protected void exportCruise(Cruise cruise, GlobalExportContext exportContext, ProgressionModel progressionModel) { List<FishingOperation> operations = persistenceService.getAllFishingOperation(cruise.getId()); - exportCruise(cruise, operations, exportContext, progressionModel); + } protected void exportCruise(Cruise cruise, List<FishingOperation> operations, GlobalExportContext exportContext, ProgressionModel progressionModel) { diff --git a/tutti-service/src/main/java/fr/ifremer/tutti/service/genericformat/GlobalExportContext.java b/tutti-service/src/main/java/fr/ifremer/tutti/service/genericformat/GlobalExportContext.java index 68adad7..dc59950 100644 --- a/tutti-service/src/main/java/fr/ifremer/tutti/service/genericformat/GlobalExportContext.java +++ b/tutti-service/src/main/java/fr/ifremer/tutti/service/genericformat/GlobalExportContext.java @@ -49,12 +49,12 @@ import java.util.Map; */ public class GlobalExportContext implements Closeable { - private final File protocolFile; - private final SampleCategoryModel sampleCategoryModel; protected Map<String, OperationExportContext> operationContexts = Maps.newTreeMap(); + private final GenericFormatArchive archive; + protected final PersistenceService persistenceService; protected final WeightComputingService weightComputingService; @@ -97,13 +97,15 @@ public class GlobalExportContext implements Closeable { protected String checkError; - GlobalExportContext(File basedir, + GlobalExportContext(GenericFormatArchive archive, char csvSeparator, PersistenceService persistenceService, WeightComputingService weightComputingService, DecoratorService decoratorService, SampleCategoryModel sampleCategoryModel) { + this.archive = archive; + this.persistenceService = persistenceService; this.weightComputingService = weightComputingService; @@ -117,24 +119,21 @@ public class GlobalExportContext implements Closeable { List<Species> allReferentSpecies = persistenceService.getAllReferentSpecies(); Map<String, Species> speciesByReferenceTaxonId = Speciess.splitReferenceSpeciesByReferenceTaxonId(allReferentSpecies); - this.producerForSurvey = new CsvProducerForSurvey(basedir, SurveyModel.forExport(csvSeparator)); - this.producerForGearCaracteristics = new CsvProducerForGearCaracteristics(basedir, GearCaracteristicModel.forExport(csvSeparator, decoratorService)); - this.producerForOperation = new CsvProducerForOperation(basedir, OperationModel.forExport(csvSeparator)); - this.producerForIndividualObservation = new CsvProducerForIndividualObservation(basedir, IndividualObservationModel.forExport(csvSeparator)); - this.producerForSpecies = new CsvProducerForSpecies(basedir, SpeciesExportModel.forExport(csvSeparator), speciesByReferenceTaxonId); - this.producerForCatch = new CsvProducerForCatch(basedir, CatchModel.forExport(csvSeparator, sampleCategoryModel, decoratorService)); - this.producerForAccidentalCatch = new CsvProducerForAccidentalCatch(basedir, AccidentalCatchModel.forExport(csvSeparator)); - this.producerForParameter = new CsvProducerForParameter(basedir, ParameterModel.forExport(csvSeparator, decoratorService)); - this.producerForMarineLitter = new CsvProducerForMarineLitter(basedir, MarineLitterModel.forExport(csvSeparator)); - this.producerForSampleCategory = new CsvProducerForSampleCategory(basedir, fr.ifremer.tutti.service.genericformat.csv.SampleCategoryModel.forExport(csvSeparator)); - - this.producerForTemporaryGear = new CsvProducerForTemporaryGear(new File(basedir, "temporaryGears.csv"), csvSeparator); - this.producerForTemporaryPerson = new CsvProducerForTemporaryPerson(new File(basedir, "temporaryPersons.csv"), csvSeparator); - this.producerForTemporarySpecies = new CsvProducerForTemporarySpecies(new File(basedir, "temporarySpecies.csv"), csvSeparator); - this.producerForTemporaryVessel = new CsvProducerForTemporaryVessel(new File(basedir, "temporaryVessels.csv"), csvSeparator); - + this.producerForSurvey = new CsvProducerForSurvey(archive.getSurveyPath(), SurveyModel.forExport(csvSeparator)); + this.producerForGearCaracteristics = new CsvProducerForGearCaracteristics(archive.getGearCaracteristicsPath(), GearCaracteristicModel.forExport(csvSeparator, decoratorService)); + this.producerForOperation = new CsvProducerForOperation(archive.getOperationPath(), OperationModel.forExport(csvSeparator)); + this.producerForIndividualObservation = new CsvProducerForIndividualObservation(archive.getIndividualObservationPath(), IndividualObservationModel.forExport(csvSeparator)); + this.producerForSpecies = new CsvProducerForSpecies(archive.getSpeciesPath(), SpeciesExportModel.forExport(csvSeparator), speciesByReferenceTaxonId); + this.producerForCatch = new CsvProducerForCatch(archive.getCatchPath(), CatchModel.forExport(csvSeparator, sampleCategoryModel, decoratorService)); + this.producerForAccidentalCatch = new CsvProducerForAccidentalCatch(archive.getAccidentalCatchPath(), AccidentalCatchModel.forExport(csvSeparator)); + this.producerForParameter = new CsvProducerForParameter(archive.getParameterPath(), ParameterModel.forExport(csvSeparator, decoratorService)); + this.producerForMarineLitter = new CsvProducerForMarineLitter(archive.getMarineLitterPath(), MarineLitterModel.forExport(csvSeparator)); + this.producerForSampleCategory = new CsvProducerForSampleCategory(archive.getSampleCategoryModelPath(), fr.ifremer.tutti.service.genericformat.csv.SampleCategoryModel.forExport(csvSeparator)); - this.protocolFile = new File(basedir, "protocol.tuttiProtocol"); + this.producerForTemporaryGear = new CsvProducerForTemporaryGear(archive.getTemporaryReferentialGearsPath(), csvSeparator); + this.producerForTemporaryPerson = new CsvProducerForTemporaryPerson(archive.getTemporaryReferentialPersonsPath(), csvSeparator); + this.producerForTemporarySpecies = new CsvProducerForTemporarySpecies(archive.getTemporaryReferentialSpeciesPath(), csvSeparator); + this.producerForTemporaryVessel = new CsvProducerForTemporaryVessel(archive.getTemporaryReferentialVesselsPath(), csvSeparator); } @@ -246,7 +245,7 @@ public class GlobalExportContext implements Closeable { } public File getProtocolFile() { - return protocolFile; + return archive.getProtocolPath().toFile(); } public SampleCategoryModel getSampleCategoryModel() { -- To stop receiving notification emails like this one, please contact codelutin.com SCM administrator <admin+scm@codelutin.com>.