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 9ff4adc0d7b40ea7cc538ccffd2287a130849a2a Author: Tony CHEMIT <chemit@codelutin.com> Date: Thu Feb 5 12:29:32 2015 +0100 suppression d'un service obsolete --- .../referential/ReferentialImportService.java | 752 --------------------- 1 file changed, 752 deletions(-) diff --git a/tutti-service/src/main/java/fr/ifremer/tutti/service/referential/ReferentialImportService.java b/tutti-service/src/main/java/fr/ifremer/tutti/service/referential/ReferentialImportService.java deleted file mode 100644 index eca768f..0000000 --- a/tutti-service/src/main/java/fr/ifremer/tutti/service/referential/ReferentialImportService.java +++ /dev/null @@ -1,752 +0,0 @@ -package fr.ifremer.tutti.service.referential; - -/* - * #%L - * Tutti :: Service - * %% - * Copyright (C) 2012 - 2014 Ifremer - * %% - * This program is free software: you can redistribute it and/or modify - * it under the terms of the GNU General Public License as - * published by the Free Software Foundation, either version 3 of the - * License, or (at your option) any later version. - * - * This program is distributed in the hope that it will be useful, - * but WITHOUT ANY WARRANTY; without even the implied warranty of - * MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the - * GNU General Public License for more details. - * - * You should have received a copy of the GNU General Public - * License along with this program. If not, see - * <http://www.gnu.org/licenses/gpl-3.0.html>. - * #L% - */ - -import com.google.common.base.Charsets; -import com.google.common.base.Function; -import com.google.common.collect.Lists; -import com.google.common.io.Files; -import fr.ifremer.tutti.persistence.entities.referential.Gear; -import fr.ifremer.tutti.persistence.entities.referential.Gears; -import fr.ifremer.tutti.persistence.entities.referential.Person; -import fr.ifremer.tutti.persistence.entities.referential.Persons; -import fr.ifremer.tutti.persistence.entities.referential.Species; -import fr.ifremer.tutti.persistence.entities.referential.Speciess; -import fr.ifremer.tutti.persistence.entities.referential.Vessel; -import fr.ifremer.tutti.persistence.entities.referential.Vessels; -import fr.ifremer.tutti.service.AbstractTuttiService; -import fr.ifremer.tutti.service.PersistenceService; -import fr.ifremer.tutti.service.TuttiServiceContext; -import org.apache.commons.io.IOUtils; -import org.apache.commons.logging.Log; -import org.apache.commons.logging.LogFactory; -import org.nuiton.csv.Export; -import org.nuiton.jaxx.application.ApplicationTechnicalException; - -import java.io.BufferedWriter; -import java.io.File; -import java.io.IOException; -import java.util.List; - -import static org.nuiton.i18n.I18n.t; - -/** - * Service to import temporary referential. - * - * @author tchemit <chemit@codelutin.com> - * @since 1.0 - */ -public class ReferentialImportService extends AbstractTuttiService { - - /** Logger. */ - private static final Log log = - LogFactory.getLog(ReferentialImportService.class); - - protected PersistenceService persistenceService; - - @Override - public void setServiceContext(TuttiServiceContext context) { - super.setServiceContext(context); - persistenceService = getService(PersistenceService.class); - } - -// public ReferentialImportResult<Species> importTemporarySpecies(File file) throws IOException { -// -// ReferentialImportResult<Species> result = new ReferentialImportResult<>(); -// -// if (log.isInfoEnabled()) { -// log.info("Will import species from file: " + file); -// } -// -// List<Species> allSpecies = persistenceService.getAllSpecies(); -// -// // get all species names -// Set<String> existingSpeciesNames = Sets.newHashSet(Iterables.transform(allSpecies, new Function<Species, String>() { -// @Override -// public String apply(Species input) { -// return input.getName(); -// } -// })); -// Map<Integer, Species> existingSpeciesById = TuttiEntities.splitByIdAsInt(allSpecies); -// Set<Integer> existingSpeciesIds = new HashSet<>(existingSpeciesById.keySet()); -// -// List<Species> toAdd = Lists.newArrayList(); -// List<Species> toUpdate = Lists.newArrayList(); -// List<Integer> toDelete = Lists.newArrayList(); -// -// Reader reader = Files.newReader(file, Charsets.UTF_8); -// SpeciesModel csvModel = new SpeciesModel(getCsvSeparator()); -// try { -// Import<SpeciesRow> importer = Import.newImport(csvModel, reader); -// -// try { -// -// for (SpeciesRow bean : importer) { -// -// Integer id = bean.getIdAsInt(); -// String name = bean.getName(); -// Species species = existingSpeciesById.get(id); -// boolean delete = BooleanUtils.isTrue(bean.getToDelete()); -// -// if (id != null && existingSpeciesIds.add(id)) { -// throw new IllegalArgumentException(t("tutti.service.referential.import.species.notExistingId.error", id)); -// } -// if (StringUtils.isBlank(name)) { -// throw new IllegalArgumentException(t("tutti.service.referential.import.species.noName.error", id)); -// } -// if (!delete && !existingSpeciesNames.add(name) && -// (id == null || species != null && !species.getName().equals(name))) { -// throw new IllegalArgumentException(t("tutti.service.referential.import.species.existingName.error", name)); -// } -// -// if (delete) { -// if (id == null) { -// throw new IllegalArgumentException(t("tutti.service.referential.import.species.cannotDeleteWithoutId.error")); -// } -// if (persistenceService.isTemporarySpeciesUsed(id)) { -// throw new IllegalArgumentException(t("tutti.service.referential.import.species.used.error", id)); -// } -// toDelete.add(species.getReferenceTaxonId()); -// existingSpeciesNames.remove(name); -// -// } else { -// if (bean.getId() == null) { -// toAdd.add(bean); -// -// } else { -// bean.setReferenceTaxonId(species.getReferenceTaxonId()); -// toUpdate.add(bean); -// } -// } -// } -// importer.close(); -// -// } finally { -// IOUtils.closeQuietly(importer); -// } -// reader.close(); -// -// } catch (IOException e) { -// throw new IOException(t("tutti.service.referential.import.species.error", file), e); -// -// } catch (ImportRuntimeException e) { -// String message; -// if (e.getCause() != null) { -// message = e.getCause().getMessage(); -// } else { -// message = e.getMessage(); -// } -// throw new ApplicationTechnicalException(message, e); -// -// } finally { -// -// IOUtils.closeQuietly(reader); -// } -// -// persistenceService.deleteTemporarySpecies(toDelete, true); -// result.setNbRefDeleted(toDelete.size()); -// -// result.addAllRefsAdded(persistenceService.importTemporarySpecies(toAdd)); -// result.addAllRefsUpdated(persistenceService.importTemporarySpecies(toUpdate)); -// -// return result; -// } -// -// public ReferentialImportResult<Vessel> importTemporaryVessel(File file) throws IOException { -// -// ReferentialImportResult<Vessel> result = new ReferentialImportResult<>(); -// -// if (log.isInfoEnabled()) { -// log.info("Will import vessels from file: " + file); -// } -// -// // get all vessels -// List<Vessel> existingVessels = Lists.newArrayList(persistenceService.getAllFishingVessel()); -// existingVessels.addAll(persistenceService.getAllScientificVessel()); -// -// Set<String> existingVesselInternationalRegistrationCodes = -// Sets.newHashSet(Iterables.transform(existingVessels, new Function<Vessel, String>() { -// @Override -// public String apply(Vessel input) { -// return input.getInternationalRegistrationCode(); -// } -// })); -// Map<String, Vessel> existingVesselsById = TuttiEntities.splitById(existingVessels); -// Set<String> existingVesselIds = new HashSet<>(existingVesselsById.keySet()); -// -// List<Vessel> toAdd = Lists.newArrayList(); -// List<Vessel> toUpdate = Lists.newArrayList(); -// List<String> toDelete = Lists.newArrayList(); -// -// Reader reader = Files.newReader(file, Charsets.UTF_8); -// VesselModel csvModel = new VesselModel(getCsvSeparator()); -// try { -// Import<VesselRow> importer = Import.newImport(csvModel, reader); -// -// try { -// -// for (final VesselRow bean : importer) { -// -// String id = StringUtils.trimToNull(bean.getId()); -// String internationalRegistrationCode = bean.getInternationalRegistrationCode(); -// Vessel vessel = existingVesselsById.get(id); -// boolean delete = BooleanUtils.isTrue(bean.getToDelete()); -// -// if (id != null && existingVesselIds.add(id)) { -// throw new IllegalArgumentException(t("tutti.service.referential.import.vessel.notExistingId.error", id)); -// } -// if (StringUtils.isBlank(internationalRegistrationCode)) { -// throw new IllegalArgumentException(t("tutti.service.referential.import.vessel.noInternationalRegistrationCode.error", id)); -// } -// if (!delete && !existingVesselInternationalRegistrationCodes.add(internationalRegistrationCode) && -// (id == null || vessel != null && !vessel.getRegistrationCode().equals(internationalRegistrationCode))) { -// throw new IllegalArgumentException(t("tutti.service.referential.import.vessel.existingInternationalRegistrationCode.error", -// internationalRegistrationCode)); -// } -// -// if (delete) { -// if (id == null) { -// throw new IllegalArgumentException(t("tutti.service.referential.import.vessel.cannotDeleteWithoutId.error")); -// } -// if (persistenceService.isTemporaryVesselUsed(id)) { -// throw new IllegalArgumentException(t("tutti.service.referential.import.vessel.used.error", id)); -// } -// toDelete.add(id); -// existingVesselInternationalRegistrationCodes.remove(internationalRegistrationCode); -// -// } else { -// if (id == null) { -// toAdd.add(bean); -// -// } else { -// toUpdate.add(bean); -// } -// } -// } -// importer.close(); -// -// } finally { -// IOUtils.closeQuietly(importer); -// } -// reader.close(); -// -// } catch (IOException e) { -// throw new IOException(t("tutti.service.referential.import.vessels.error", file), e); -// -// } catch (ImportRuntimeException e) { -// String message; -// if (e.getCause() != null) { -// message = e.getCause().getMessage(); -// } else { -// message = e.getMessage(); -// } -// throw new ApplicationTechnicalException(message, e); -// -// } finally { -// -// IOUtils.closeQuietly(reader); -// } -// -// persistenceService.deleteTemporaryVessels(toDelete, true); -// result.setNbRefDeleted(toDelete.size()); -// -// result.addAllRefsAdded(persistenceService.importTemporaryVessel(toAdd)); -// result.addAllRefsUpdated(persistenceService.importTemporaryVessel(toUpdate)); -// -// return result; -// } -// -// public ReferentialImportResult<Person> importTemporaryPerson(File file) throws IOException { -// -// ReferentialImportResult<Person> result = new ReferentialImportResult<>(); -// -// if (log.isInfoEnabled()) { -// log.info("Will import persons from file: " + file); -// } -// -// List<Person> allPersons = persistenceService.getAllPerson(); -// -// // get all species names -// Set<String> existingPersonFullNames = Sets.newHashSet(Iterables.transform(allPersons, new Function<Person, String>() { -// @Override -// public String apply(Person input) { -// return getPersonFullName(input); -// } -// })); -// Map<Integer, Person> existingPersonsById = TuttiEntities.splitByIdAsInt(allPersons); -// -// Set<Integer> existingPersonIds = new HashSet<>(existingPersonsById.keySet()); -// -// List<Person> toAdd = Lists.newArrayList(); -// List<Person> toUpdate = Lists.newArrayList(); -// List<Integer> toDelete = Lists.newArrayList(); -// -// Reader reader = Files.newReader(file, Charsets.UTF_8); -// PersonModel csvModel = new PersonModel(getCsvSeparator()); -// try { -// Import<PersonRow> importer = Import.newImport(csvModel, reader); -// -// try { -// -// for (PersonRow bean : importer) { -// -// Integer id = bean.getIdAsInt(); -// Person person = existingPersonsById.get(id); -// String name = getPersonFullName(bean); -// boolean delete = BooleanUtils.isTrue(bean.getToDelete()); -// -// if (id != null && existingPersonIds.add(id)) { -// throw new IllegalArgumentException(t("tutti.service.referential.import.person.notExistingId.error", id)); -// } -// if (StringUtils.isBlank(name)) { -// throw new IllegalArgumentException(t("tutti.service.referential.import.person.noName.error", id)); -// } -// if (!delete && !existingPersonFullNames.add(name) && -// (id == null || person != null && !person.getName().equals(name))) { -// throw new IllegalArgumentException(t("tutti.service.referential.import.person.existingName.error", name)); -// } -// -// if (delete) { -// if (id == null) { -// throw new IllegalArgumentException(t("tutti.service.referential.import.person.cannotDeleteWithoutId.error")); -// } -// if (persistenceService.isTemporaryPersonUsed(id)) { -// throw new IllegalArgumentException(t("tutti.service.referential.import.person.used.error", id)); -// } -// toDelete.add(id); -// existingPersonFullNames.remove(name); -// -// } else { -// if (bean.getId() == null) { -// toAdd.add(bean); -// -// } else { -// toUpdate.add(bean); -// } -// } -// } -// importer.close(); -// -// } finally { -// IOUtils.closeQuietly(importer); -// } -// reader.close(); -// -// } catch (IOException e) { -// throw new IOException(t("tutti.service.referential.import.persons.error", file), e); -// -// } catch (ImportRuntimeException e) { -// String message; -// if (e.getCause() != null) { -// message = e.getCause().getMessage(); -// } else { -// message = e.getMessage(); -// } -// throw new ApplicationTechnicalException(message, e); -// -// } finally { -// -// IOUtils.closeQuietly(reader); -// } -// -// persistenceService.deleteTemporaryPersons(toDelete, true); -// result.setNbRefDeleted(toDelete.size()); -// -// result.addAllRefsAdded(persistenceService.importTemporaryPerson(toAdd)); -// result.addAllRefsUpdated(persistenceService.importTemporaryPerson(toUpdate)); -// -// return result; -// } -// -// protected String getPersonFullName(Person person) { -// return StringUtils.lowerCase( -// StringUtils.trimToEmpty(person.getFirstName()) + -// StringUtils.trimToEmpty(person.getLastName())); -// } -// -// public ReferentialImportResult<Gear> importTemporaryGear(File file) throws IOException { -// -// ReferentialImportResult<Gear> result = new ReferentialImportResult<>(); -// -// if (log.isInfoEnabled()) { -// log.info("Will import gears from file: " + file); -// } -// -// // get all vessel names -// List<Gear> allGears = new ArrayList<>(persistenceService.getAllFishingGear()); -// allGears.addAll(persistenceService.getAllScientificGear()); -// -// Set<String> existingGearNames = Sets.newHashSet(Iterables.transform(allGears, new Function<Gear, String>() { -// @Override -// public String apply(Gear input) { -// return input.getName(); -// } -// })); -// -// Map<Integer, Gear> existingGearsById = TuttiEntities.splitByIdAsInt(allGears); -// Set<Integer> existingGearIds = new HashSet<>(existingGearsById.keySet()); -// -// List<Gear> toAdd = Lists.newArrayList(); -// List<Gear> toUpdate = Lists.newArrayList(); -// List<Integer> toDelete = Lists.newArrayList(); -// -// Reader reader = Files.newReader(file, Charsets.UTF_8); -// GearModel csvModel = new GearModel(getCsvSeparator()); -// try { -// Import<GearRow> importer = Import.newImport(csvModel, reader); -// -// try { -// -// for (GearRow bean : importer) { -// -// Integer id = bean.getIdAsInt(); -// Gear gear = existingGearsById.get(id); -// String name = bean.getName(); -// boolean delete = BooleanUtils.isTrue(bean.getToDelete()); -// -// if (id != null && existingGearIds.add(id)) { -// throw new IllegalArgumentException(t("tutti.service.referential.import.gear.notExistingId.error", id)); -// } -// if (StringUtils.isBlank(name)) { -// throw new IllegalArgumentException(t("tutti.service.referential.import.gear.noName.error", id)); -// } -// if (!delete && !existingGearNames.add(name) && -// (id == null || gear != null && !gear.getName().equals(name))) { -// throw new IllegalArgumentException(t("tutti.service.referential.import.gear.existingName.error", name)); -// } -// -// if (delete) { -// if (id == null) { -// throw new IllegalArgumentException(t("tutti.service.referential.import.gear.cannotDeleteWithoutId.error")); -// } -// if (persistenceService.isTemporaryGearUsed(id)) { -// throw new IllegalArgumentException(t("tutti.service.referential.import.gear.used.error", id)); -// } -// toDelete.add(id); -// existingGearNames.remove(name); -// -// } else { -// if (bean.getId() == null) { -// toAdd.add(bean); -// -// } else { -// toUpdate.add(bean); -// } -// } -// } -// importer.close(); -// -// } finally { -// IOUtils.closeQuietly(importer); -// } -// reader.close(); -// -// } catch (IOException e) { -// throw new IOException(t("tutti.service.referential.import.gears.error", file), e); -// -// } catch (ImportRuntimeException e) { -// String message; -// if (e.getCause() != null) { -// message = e.getCause().getMessage(); -// } else { -// message = e.getMessage(); -// } -// throw new ApplicationTechnicalException(message, e); -// -// } finally { -// -// IOUtils.closeQuietly(reader); -// } -// -// persistenceService.deleteTemporaryGears(toDelete, true); -// result.setNbRefDeleted(toDelete.size()); -// -// result.addAllRefsAdded(persistenceService.importTemporaryGear(toAdd)); -// result.addAllRefsUpdated(persistenceService.importTemporaryGear(toUpdate)); -// -// return result; -// } - - public void exportExistingTemporarySpecies(File file) throws IOException { - - List<Species> targetList = Lists.newArrayList(persistenceService.getAllReferentSpecies()); - - List<Species> toExport = persistenceService.retainTemporarySpeciesList(targetList); - - exportTemporarySpecies(file, toExport); - - } - - public void exportTemporarySpeciesExample(File file) throws IOException { - - List<Species> toExport = Lists.newArrayList(); - - Species s; - - s = Speciess.newSpecies(); - s.setName("Temporary Species name 1"); - toExport.add(s); - - s = Speciess.newSpecies(); - s.setName("Temporary Species name 2"); - toExport.add(s); - - s = Speciess.newSpecies(); - s.setName("Temporary Species name 3"); - toExport.add(s); - - exportTemporarySpecies(file, toExport); - - } - - protected void exportTemporarySpecies(File file, List<Species> toExport) throws IOException { - - SpeciesModel csvModel = new SpeciesModel(getCsvSeparator()); - - BufferedWriter writer = Files.newWriter(file, Charsets.UTF_8); - - List<SpeciesRow> toExportRows = Lists.transform(toExport, new Function<Species, SpeciesRow>() { - @Override - public SpeciesRow apply(Species species) { - return new SpeciesRow(species); - } - }); - - try { - Export export = Export.newExport(csvModel, toExportRows); - export.write(writer); - writer.close(); - } catch (IOException e) { - throw e; - } catch (Exception e) { - throw new ApplicationTechnicalException(t("tutti.service.referential.export.species.error", file), e); - } finally { - IOUtils.closeQuietly(writer); - } - - } - - public void exportExistingTemporaryVessel(File file) throws IOException { - - List<Vessel> targetList = Lists.newArrayList(persistenceService.getAllFishingVessel()); - targetList.addAll(persistenceService.getAllScientificVessel()); - - List<Vessel> toExport = persistenceService.retainTemporaryVesselList(targetList); - - exportTemporaryVessel(file, toExport); - - } - - public void exportTemporaryVesselExample(File file) throws IOException { - - List<Vessel> toExport = Lists.newArrayList(); - - Vessel v; - - v = Vessels.newVessel(); - v.setName("Temporary fishing vessel name 1"); - v.setInternationalRegistrationCode("International registration code F1"); - v.setScientificVessel(false); - toExport.add(v); - - v = Vessels.newVessel(); - v.setName("Temporary fishing vessel name 2"); - v.setInternationalRegistrationCode("International registration code F2"); - v.setScientificVessel(false); - toExport.add(v); - - v = Vessels.newVessel(); - v.setName("Temporary scientific vessel name 3"); - v.setInternationalRegistrationCode("International registration code S3"); - v.setScientificVessel(true); - toExport.add(v); - - v = Vessels.newVessel(); - v.setName("Temporary scientific vessel name 4"); - v.setInternationalRegistrationCode("International registration code S4"); - v.setScientificVessel(true); - toExport.add(v); - - exportTemporaryVessel(file, toExport); - - } - - protected void exportTemporaryVessel(File file, List<Vessel> toExport) throws IOException { - - VesselModel csvModel = new VesselModel(getCsvSeparator()); - - BufferedWriter writer = Files.newWriter(file, Charsets.UTF_8); - - List<VesselRow> toExportRows = Lists.transform(toExport, new Function<Vessel, VesselRow>() { - @Override - public VesselRow apply(Vessel vessel) { - return new VesselRow(vessel); - } - }); - - try { - Export export = Export.newExport(csvModel, toExportRows); - export.write(writer); - writer.close(); - } catch (IOException e) { - throw e; - } catch (Exception e) { - throw new ApplicationTechnicalException(t("tutti.service.referential.export.vessel.error", file), e); - } finally { - IOUtils.closeQuietly(writer); - } - } - - public void exportExistingTemporaryPerson(File file) throws IOException { - - List<Person> targetList = Lists.newArrayList(persistenceService.getAllPerson()); - - List<Person> toExport = persistenceService.retainTemporaryPersonList(targetList); - - exportTemporaryPerson(file, toExport); - - } - - public void exportTemporaryPersonExample(File file) throws IOException { - - List<Person> toExport = Lists.newArrayList(); - - Person p; - - p = Persons.newPerson(); - p.setFirstName("First name 1"); - p.setLastName("Last name 1"); - toExport.add(p); - - p = Persons.newPerson(); - p.setFirstName("First name 2"); - p.setLastName("Last name 2"); - toExport.add(p); - - p = Persons.newPerson(); - p.setFirstName("First name 3"); - p.setLastName("Last name 3"); - toExport.add(p); - - exportTemporaryPerson(file, toExport); - - } - - protected void exportTemporaryPerson(File file, List<Person> toExport) throws IOException { - - PersonModel csvModel = new PersonModel(getCsvSeparator()); - - BufferedWriter writer = Files.newWriter(file, Charsets.UTF_8); - - List<PersonRow> toExportRows = Lists.transform(toExport, new Function<Person, PersonRow>() { - @Override - public PersonRow apply(Person person) { - return new PersonRow(person); - } - }); - - try { - Export export = Export.newExport(csvModel, toExportRows); - export.write(writer); - writer.close(); - } catch (IOException e) { - throw e; - } catch (Exception e) { - throw new ApplicationTechnicalException(t("tutti.service.referential.export.person.error", file), e); - } finally { - IOUtils.closeQuietly(writer); - } - } - - public void exportExistingTemporaryGear(File file) throws IOException { - - List<Gear> targetList = Lists.newArrayList(persistenceService.getAllFishingGear()); - targetList.addAll(persistenceService.getAllScientificGear()); - - List<Gear> toExport = persistenceService.retainTemporaryGearList(targetList); - - exportTemporaryGear(file, toExport); - - } - - public void exportTemporaryGearExample(File file) throws IOException { - List<Gear> toExport = Lists.newArrayList(); - - Gear g; - - g = Gears.newGear(); - g.setName("Gear fishing name 1"); - g.setLabel("Gear fishing label 1"); - toExport.add(g); - - g = Gears.newGear(); - g.setName("Gear fishing name 2"); - g.setLabel("Gear fishing label 2"); - toExport.add(g); - - g = Gears.newGear(); - g.setName("Gear scientific name 3"); - g.setLabel("Gear scientific label 3"); - g.setScientificGear(true); - toExport.add(g); - - g = Gears.newGear(); - g.setName("Gear scientific name 4"); - g.setLabel("Gear scientific label 4"); - g.setScientificGear(true); - toExport.add(g); - - exportTemporaryGear(file, toExport); - - } - - protected void exportTemporaryGear(File file, List<Gear> toExport) throws IOException { - - GearModel csvModel = new GearModel(getCsvSeparator()); - - BufferedWriter writer = Files.newWriter(file, Charsets.UTF_8); - - List<GearRow> toExportRows = Lists.transform(toExport, new Function<Gear, GearRow>() { - @Override - public GearRow apply(Gear gear) { - return new GearRow(gear); - } - }); - - try { - Export export = Export.newExport(csvModel, toExportRows); - export.write(writer); - writer.close(); - } catch (IOException e) { - throw e; - } catch (Exception e) { - throw new ApplicationTechnicalException(t("tutti.service.referential.export.gear.error", file), e); - } finally { - IOUtils.closeQuietly(writer); - } - } - - protected char getCsvSeparator() { - return context.getConfig().getCsvSeparator(); - } -} -- To stop receiving notification emails like this one, please contact codelutin.com SCM administrator <admin+scm@codelutin.com>.