branch develop updated (89fd473 -> f9ae5e9)
This is an automated email from the git hooks/post-receive script. New change to branch develop in repository tutti. See http://git.codelutin.com/tutti.git from 89fd473 fixes #7124: [CAPTURE] Boutons non fonctionnels dans les onglets de saisie de capture Merge branch 'feature/7124' into develop new 0ac0b45 Prise en compte des caractères d'échappement sur les colonnes d'import (refs #7199) new f9ae5e9 fixes #7199: [IMPORT paramètres] La lecture de l'entête du fichier ne tient pas compte des " Merge branch 'feature/7199' into develop The 2 revisions listed above as "new" are entirely new to this repository and will be described in separate emails. The revisions listed as "adds" were already present in the repository and have only been added to this reference. Detailed log of new commits: commit f9ae5e9d7a4be113ddd877cbf1b66eb9ba1e238b Merge: 89fd473 0ac0b45 Author: Tony CHEMIT <chemit@codelutin.com> Date: Tue Jun 9 12:01:15 2015 +0200 fixes #7199: [IMPORT paramètres] La lecture de l'entête du fichier ne tient pas compte des " Merge branch 'feature/7199' into develop commit 0ac0b45759e26938926516e6205048bad6b30e16 Author: Tony CHEMIT <chemit@codelutin.com> Date: Tue Jun 9 12:01:12 2015 +0200 Prise en compte des caractères d'échappement sur les colonnes d'import (refs #7199) Summary of changes: .../protocol/ProtocolImportExportService.java | 33 +++++++++++++++++----- .../actions/LoadProtocolImportColumnsAction.java | 19 +++++++------ 2 files changed, 37 insertions(+), 15 deletions(-) -- To stop receiving notification emails like this one, please contact codelutin.com SCM administrator <admin+scm@codelutin.com>.
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 0ac0b45759e26938926516e6205048bad6b30e16 Author: Tony CHEMIT <chemit@codelutin.com> Date: Tue Jun 9 12:01:12 2015 +0200 Prise en compte des caractères d'échappement sur les colonnes d'import (refs #7199) --- .../protocol/ProtocolImportExportService.java | 33 +++++++++++++++++----- .../actions/LoadProtocolImportColumnsAction.java | 19 +++++++------ 2 files changed, 37 insertions(+), 15 deletions(-) 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 4734919..ee1ea45 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 @@ -47,6 +47,7 @@ import org.apache.commons.logging.LogFactory; import org.nuiton.csv.Export; import org.nuiton.csv.Import; import org.nuiton.csv.ImportRuntimeException; +import org.nuiton.csv.ext.CsvReaders; import org.nuiton.jaxx.application.ApplicationTechnicalException; import org.nuiton.util.beans.Binder; import org.nuiton.util.beans.BinderFactory; @@ -57,6 +58,7 @@ import java.io.IOException; import java.io.Reader; import java.util.ArrayList; import java.util.Collection; +import java.util.Collections; import java.util.HashMap; import java.util.List; import java.util.Map; @@ -142,12 +144,13 @@ public class ProtocolImportExportService extends AbstractTuttiService { } Map<String, CaracteristicMappingRow> rowsByCaracteristicId = new HashMap<>(Maps.uniqueIndex(caracteristicMapping, - new Function<CaracteristicMappingRow, String>() { - @Override - public String apply(CaracteristicMappingRow caracteristicMappingRow) { - return caracteristicMappingRow.getPmfmId(); - } - })); + new Function<CaracteristicMappingRow, String>() { + + @Override + public String apply(CaracteristicMappingRow caracteristicMappingRow) { + return caracteristicMappingRow.getPmfmId(); + } + })); mergeCaracteristicMappingRows(ids, rowsByCaracteristicId, CaracteristicType.GEAR_USE_FEATURE); mergeCaracteristicMappingRows(ids, rowsByCaracteristicId, CaracteristicType.VESSEL_USE_FEATURE); @@ -427,6 +430,22 @@ public class ProtocolImportExportService extends AbstractTuttiService { return result; } + public List<String> loadProtocolCaracteristicsImportColumns(File columnsFile) throws IOException { + + String[] headers = CsvReaders.getHeader(columnsFile, ';'); + List<String> result = new ArrayList<>(headers.length); + for (String header : headers) { + if ((header.startsWith("\"") && header.endsWith("\"")) || + (header.startsWith("'") && header.endsWith("'"))) { + header = header.substring(1, header.length() - 1); + } + result.add(header); + } + Collections.sort(result); + return result; + + } + public void exportProtocolSpecies(File file, List<SpeciesProtocol> protocol, Map<String, Caracteristic> caracteristicMap, @@ -499,6 +518,7 @@ public class ProtocolImportExportService extends AbstractTuttiService { return context.getConfig().getCsvSeparator(); } + protected List<String> mergeIds(Collection<String> fromProtocol, Collection<String> fromImport) { List<String> result = Lists.newArrayList(); @@ -519,7 +539,6 @@ public class ProtocolImportExportService extends AbstractTuttiService { return result; } - protected void mergeCaracteristicMappingRows(Multimap<CaracteristicType, String> ids, Map<String, CaracteristicMappingRow> rowsByCaracteristicId, CaracteristicType type) { diff --git a/tutti-ui-swing/src/main/java/fr/ifremer/tutti/ui/swing/content/protocol/actions/LoadProtocolImportColumnsAction.java b/tutti-ui-swing/src/main/java/fr/ifremer/tutti/ui/swing/content/protocol/actions/LoadProtocolImportColumnsAction.java index 5299fa0..e4c9b5e 100644 --- a/tutti-ui-swing/src/main/java/fr/ifremer/tutti/ui/swing/content/protocol/actions/LoadProtocolImportColumnsAction.java +++ b/tutti-ui-swing/src/main/java/fr/ifremer/tutti/ui/swing/content/protocol/actions/LoadProtocolImportColumnsAction.java @@ -24,17 +24,15 @@ package fr.ifremer.tutti.ui.swing.content.protocol.actions; * #L% */ -import fr.ifremer.tutti.ui.swing.util.actions.LongActionSupport; +import fr.ifremer.tutti.service.protocol.ProtocolImportExportService; import fr.ifremer.tutti.ui.swing.content.protocol.EditProtocolUI; import fr.ifremer.tutti.ui.swing.content.protocol.EditProtocolUIHandler; import fr.ifremer.tutti.ui.swing.content.protocol.EditProtocolUIModel; +import fr.ifremer.tutti.ui.swing.util.actions.LongActionSupport; import org.apache.commons.logging.Log; import org.apache.commons.logging.LogFactory; -import org.nuiton.csv.ext.CsvReaders; import java.io.File; -import java.util.Arrays; -import java.util.Collections; import java.util.List; import static org.nuiton.i18n.I18n.t; @@ -45,6 +43,7 @@ import static org.nuiton.i18n.I18n.t; */ public class LoadProtocolImportColumnsAction extends LongActionSupport<EditProtocolUIModel, EditProtocolUI, EditProtocolUIHandler> { + /** Logger. */ private static final Log log = LogFactory.getLog(LoadProtocolImportColumnsAction.class); protected File columnsFile; @@ -70,10 +69,14 @@ public class LoadProtocolImportColumnsAction extends LongActionSupport<EditProto @Override public void doAction() throws Exception { - String[] headers = CsvReaders.getHeader(columnsFile, ';'); - List<String> importColumns = Arrays.asList(headers); - Collections.sort(importColumns); - getModel().setImportColumns(importColumns); + + ProtocolImportExportService service = getContext().getTuttiProtocolImportExportService(); + List<String> columns = service.loadProtocolCaracteristicsImportColumns(columnsFile); + if (log.isInfoEnabled()) { + log.info("Detected columns: "+columns); + } + getModel().setImportColumns(columns); + } @Override -- To stop receiving notification emails like this one, please contact codelutin.com SCM administrator <admin+scm@codelutin.com>.
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 f9ae5e9d7a4be113ddd877cbf1b66eb9ba1e238b Merge: 89fd473 0ac0b45 Author: Tony CHEMIT <chemit@codelutin.com> Date: Tue Jun 9 12:01:15 2015 +0200 fixes #7199: [IMPORT paramètres] La lecture de l'entête du fichier ne tient pas compte des " Merge branch 'feature/7199' into develop .../protocol/ProtocolImportExportService.java | 33 +++++++++++++++++----- .../actions/LoadProtocolImportColumnsAction.java | 19 +++++++------ 2 files changed, 37 insertions(+), 15 deletions(-) -- To stop receiving notification emails like this one, please contact codelutin.com SCM administrator <admin+scm@codelutin.com>.
participants (1)
-
codelutin.com scm