Author: chatellier
Date: 2011-01-07 09:01:34 +0000 (Fri, 07 Jan 2011)
New Revision: 483
Log:
Recuperation d'un iterator avec la methode qui skip le header.
Modified:
trunk/coser-business/src/main/java/fr/ifremer/coser/command/MergeSpeciesCommand.java
trunk/coser-business/src/main/java/fr/ifremer/coser/services/ControlService.java
trunk/coser-business/src/main/java/fr/ifremer/coser/services/ProjectService.java
trunk/coser-business/src/main/java/fr/ifremer/coser/services/PublicationService.java
trunk/coser-business/src/main/java/fr/ifremer/coser/services/WebService.java
Modified: trunk/coser-business/src/main/java/fr/ifremer/coser/command/MergeSpeciesCommand.java
===================================================================
--- trunk/coser-business/src/main/java/fr/ifremer/coser/command/MergeSpeciesCommand.java 2011-01-07 08:47:43 UTC (rev 482)
+++ trunk/coser-business/src/main/java/fr/ifremer/coser/command/MergeSpeciesCommand.java 2011-01-07 09:01:34 UTC (rev 483)
@@ -110,19 +110,18 @@
*/
protected Project mergeLength(Project project, AbstractDataContainer container,
String newSpecyName, String... speciesNames) {
-
+
// Campagne;Annee;Trait;Espece;Sexe;Maturite;Longueur;Nombre;Poids;Age
-
+
// regroupement par Campagne;Annee;Trait;Espece;Sexe;Maturite;Longueur;Age
String[] commonTuple = null;
String[] mergeTuple = null;
int mergeTupleIndex = -1;
-
+
// parcours des elements
- Iterator<String[]> itTuple = container.getLength().iterator();
- itTuple.next(); // skip header
- int index = 1; // skip header
-
+ Iterator<String[]> itTuple = container.getLength().iterator(true);
+ int index = 1; // header skipped
+
while (itTuple.hasNext()) {
String[] tuple = itTuple.next();
@@ -178,7 +177,7 @@
container.getLength().set(mergeTupleIndex, mergeTuple);
}
-
+
index++;
}
return project;
@@ -263,9 +262,8 @@
int mergeTupleIndex = -1;
// parcours des elements
- Iterator<String[]> itTuple = container.getCatch().iterator();
- itTuple.next(); // skip header
- int index = 1; // skip header
+ Iterator<String[]> itTuple = container.getCatch().iterator(true);
+ int index = 1; // header skiped
while (itTuple.hasNext()) {
String[] tuple = itTuple.next();
Modified: trunk/coser-business/src/main/java/fr/ifremer/coser/services/ControlService.java
===================================================================
--- trunk/coser-business/src/main/java/fr/ifremer/coser/services/ControlService.java 2011-01-07 08:47:43 UTC (rev 482)
+++ trunk/coser-business/src/main/java/fr/ifremer/coser/services/ControlService.java 2011-01-07 09:01:34 UTC (rev 483)
@@ -315,11 +315,10 @@
Map<String, String> uniqueDataKeys = new HashMap<String, String>();
List<ControlError> validationErrors = new ArrayList<ControlError>();
- Iterator<String[]> itDataToCheck = dataToCheck.iterator();
+ Iterator<String[]> itDataToCheck = dataToCheck.iterator(true);
int lineIndex = 1; // 1 = skip header
- itDataToCheck.next(); // skip header
while (itDataToCheck.hasNext()) {
-
+
// update progress
if (progress != null) {
int progressPercent = (int)((double)lineIndex / (double)total * 100.0);
@@ -485,8 +484,7 @@
Map<String, String> firstLineForKey = new HashMap<String, String>();
// parcours des elements
- Iterator<String[]> itTuple = control.getCatch().iterator();
- itTuple.next(); // skip header
+ Iterator<String[]> itTuple = control.getCatch().iterator(true);
int lineIndex = 1; // skip header
while (itTuple.hasNext()) {
String[] tuple = itTuple.next();
@@ -583,8 +581,7 @@
// look for data (data summed over catch)
Map<String, Map<String, Double>> catchForSpeciesYears = new HashMap<String, Map<String, Double>>();
- Iterator<String[]> itCatchData = control.getCatch().iterator();
- itCatchData.next(); // header
+ Iterator<String[]> itCatchData = control.getCatch().iterator(true);
int lineIndex = 1; // skip header
while (itCatchData.hasNext()) {
@@ -629,8 +626,7 @@
// look for data (data summed over length)
Map<String, Map<String, Double>> lengthForSpeciesYears = new HashMap<String, Map<String, Double>>();
- Iterator<String[]> itLengthData = control.getLength().iterator();
- itLengthData.next(); // header
+ Iterator<String[]> itLengthData = control.getLength().iterator(true);
while (itLengthData.hasNext()) {
// update progress
@@ -757,12 +753,11 @@
Map<String, String> firstLineForKey = new HashMap<String, String>();
// parcours des elements
- Iterator<String[]> itTuple = control.getLength().iterator();
- itTuple.next(); // skip header
+ Iterator<String[]> itTuple = control.getLength().iterator(true);
int lineIndex = 1; // skip header
while (itTuple.hasNext()) {
String[] tuple = itTuple.next();
-
+
// update progress
if (progress != null) {
int progressPercent = (int)((double)lineIndex / (double)total * 100.0);
@@ -870,16 +865,11 @@
List<ControlError> crossFilesErrors = new ArrayList<ControlError>();
// get all iterators
- Iterator<String[]> itReftax = project.getRefTaxSpecies().iterator();
- itReftax.next(); // skip header
- Iterator<String[]> itCatch = control.getCatch().iterator();
- itCatch.next(); // skip header
- Iterator<String[]> itLength = control.getLength().iterator();
- itLength.next(); // skip header
- Iterator<String[]> itStrata = control.getStrata().iterator();
- itStrata.next(); // skip header
- Iterator<String[]> itHaul = control.getHaul().iterator();
- itHaul.next(); // skip header
+ Iterator<String[]> itReftax = project.getRefTaxSpecies().iterator(true);
+ Iterator<String[]> itCatch = control.getCatch().iterator(true);
+ Iterator<String[]> itLength = control.getLength().iterator(true);
+ Iterator<String[]> itStrata = control.getStrata().iterator(true);
+ Iterator<String[]> itHaul = control.getHaul().iterator(true);
// declare all necessary data
Map<String, Integer> refTaxSpecies = new HashMap<String, Integer>();
@@ -904,8 +894,7 @@
}
// parcourt du fichier des types de données
- Iterator<String[]> itTypeSpecies = project.getTypeEspeces().iterator();
- itTypeSpecies.next(); // skip header
+ Iterator<String[]> itTypeSpecies = project.getTypeEspeces().iterator(true);
while (itTypeSpecies.hasNext()) {
// "Types";"Commentaire";"NumSys min";"NumSys max","Code"
String[] tuple = itTypeSpecies.next();
Modified: trunk/coser-business/src/main/java/fr/ifremer/coser/services/ProjectService.java
===================================================================
--- trunk/coser-business/src/main/java/fr/ifremer/coser/services/ProjectService.java 2011-01-07 08:47:43 UTC (rev 482)
+++ trunk/coser-business/src/main/java/fr/ifremer/coser/services/ProjectService.java 2011-01-07 09:01:34 UTC (rev 483)
@@ -1553,8 +1553,7 @@
List<String> result = new ArrayList<String>();
// manage haul
- Iterator<String[]> itHaul = selection.getHaul().iterator();
- itHaul.next(); // skip header
+ Iterator<String[]> itHaul = selection.getHaul().iterator(true);
while (itHaul.hasNext()) {
String[] tupleHaul = itHaul.next();
String annee = tupleHaul[Haul.INDEX_YEAR];
@@ -1575,8 +1574,7 @@
}
// manage catch
- Iterator<String[]> itCatch = selection.getCatch().iterator();
- itCatch.next(); // skip header
+ Iterator<String[]> itCatch = selection.getCatch().iterator(true);
while (itCatch.hasNext()) {
String[] tupleCatch = itCatch.next();
String annee = tupleCatch[Catch.INDEX_YEAR];
@@ -1591,8 +1589,7 @@
}
// manage length
- Iterator<String[]> itLength = selection.getLength().iterator();
- itLength.next(); // skip header
+ Iterator<String[]> itLength = selection.getLength().iterator(true);
while (itLength.hasNext()) {
String[] tupleLength = itLength.next();
String annee = tupleLength[Length.INDEX_YEAR];
@@ -1624,9 +1621,7 @@
// "Types","Commentaire","NumSys min","NumSys max","Code"
- Iterator<String[]> itTuples = project.getTypeEspeces().iterator();
- itTuples.next(); // skip headers
-
+ Iterator<String[]> itTuples = project.getTypeEspeces().iterator(true);
while (itTuples.hasNext()) {
String[] tuple = itTuples.next();
@@ -1659,8 +1654,7 @@
SortedSet<String> years = new TreeSet<String>();
- Iterator<String[]> itTuple = selection.getHaul().iterator();
- itTuple.next(); // header
+ Iterator<String[]> itTuple = selection.getHaul().iterator(true);
while (itTuple.hasNext()) {
String[] tuple = itTuple.next();
String year = tuple[Haul.INDEX_YEAR];
@@ -1681,8 +1675,7 @@
// get all years as set
SortedSet<String> years = new TreeSet<String>();
- Iterator<String[]> itTuple = selection.getHaul().iterator();
- itTuple.next(); // header
+ Iterator<String[]> itTuple = selection.getHaul().iterator(true);
while (itTuple.hasNext()) {
String[] tuple = itTuple.next();
String year = tuple[Haul.INDEX_YEAR];
@@ -1691,8 +1684,7 @@
// get all species with years
Map<String, Set<String>> yearsForSpecies = new HashMap<String, Set<String>>();
- Iterator<String[]> itLength = selection.getLength().iterator();
- itLength.next(); // skip header
+ Iterator<String[]> itLength = selection.getLength().iterator(true);
while (itLength.hasNext()) {
String[] tupleLength = itLength.next();
String species = tupleLength[Length.INDEX_SPECIES];
@@ -1730,8 +1722,7 @@
Set<String> speciesWithMaturity = new HashSet<String>();
// get all species with years
- Iterator<String[]> itLength = selection.getLength().iterator();
- itLength.next(); // skip header
+ Iterator<String[]> itLength = selection.getLength().iterator(true);
while (itLength.hasNext()) {
String[] tupleLength = itLength.next();
String species = tupleLength[Length.INDEX_SPECIES];
@@ -1756,8 +1747,7 @@
public List<String> getProjectSpecies(AbstractDataContainer container) {
List<String> result = new ArrayList<String>();
- Iterator<String[]> itTuple = container.getCatch().iterator();
- itTuple.next(); // skip header
+ Iterator<String[]> itTuple = container.getCatch().iterator(true);
while (itTuple.hasNext()) {
String[] tuple = itTuple.next();
String species = tuple[Catch.INDEX_SPECIES];
@@ -1791,8 +1781,7 @@
// first get traits list
Set<String> traits = new HashSet<String>();
- Iterator<String[]> itTuple = container.getHaul().iterator();
- itTuple.next(); // skip header
+ Iterator<String[]> itTuple = container.getHaul().iterator(true);
while (itTuple.hasNext()) {
String[] tuple = itTuple.next();
@@ -1806,8 +1795,7 @@
// second get species with trait list
List<String> result = new ArrayList<String>();
- itTuple = container.getCatch().iterator();
- itTuple.next(); // skip header
+ itTuple = container.getCatch().iterator(true);
while (itTuple.hasNext()) {
String[] tuple = itTuple.next();
@@ -1825,8 +1813,7 @@
if (CollectionUtils.isNotEmpty(filterSpecyType)) {
// load map SpecyName > numSys
Map<String, Integer> map = new HashMap<String, Integer>();
- Iterator<String[]> refTaxIterator = project.getRefTaxSpecies().iterator();
- refTaxIterator.next(); // skip header
+ Iterator<String[]> refTaxIterator = project.getRefTaxSpecies().iterator(true);
while (refTaxIterator.hasNext()) {
// "C_Perm";"NumSys";"NivSys";"C_VALIDE";"L_VALIDE";"AA_VALIDE";"C_TxPère";"Taxa"
String[] tuple = refTaxIterator.next();
@@ -1838,8 +1825,7 @@
// load specy type map SpecyTypeName > [min, max]
// iteration sur les type d'especes
Map<String, Integer[]> mapType = new HashMap<String, Integer[]>();
- Iterator<String[]> itTypeSpecies = project.getTypeEspeces().iterator();
- itTypeSpecies.next(); // skip header
+ Iterator<String[]> itTypeSpecies = project.getTypeEspeces().iterator(true);
while (itTypeSpecies.hasNext()) {
// "Types";"Commentaire";"NumSys min";"NumSys max","Code"
String[] tuple = itTypeSpecies.next();
@@ -1902,8 +1888,7 @@
boolean result = false;
- Iterator<String[]> itTuple = project.getRefTaxSpecies().iterator();
- itTuple.next(); // skip header
+ Iterator<String[]> itTuple = project.getRefTaxSpecies().iterator(true);
while (itTuple.hasNext() && !result) {
String[] tuple = itTuple.next();
// "C_Perm","NumSys","NivSys","C_VALIDE","L_VALIDE","AA_VALIDE","C_TxP\u00E8re","Taxa"
@@ -1965,18 +1950,16 @@
Map<String, Map<String, Double>> dynMatrix = new HashMap<String, Map<String,Double>>();
Set<String> lineNames = new HashSet<String>();
Set<String> columns = new HashSet<String>();
-
- Iterator<String[]> itData = selection.getHaul().iterator();
- itData.next(); // skip header
-
+
+ Iterator<String[]> itData = selection.getHaul().iterator(true);
while (itData.hasNext()) {
String[] tuple = itData.next();
-
+
String year = tuple[Haul.INDEX_YEAR];
String strata = tuple[Haul.INDEX_STRATUM];
lineNames.add(strata);
columns.add(year);
-
+
Map<String, Double> haulCountForStrata = dynMatrix.get(strata);
if (haulCountForStrata == null) {
haulCountForStrata = new HashMap<String, Double>();
@@ -2047,9 +2030,7 @@
Set<String> columns = new HashSet<String>();
Map<String, Set<String>> traitsCountPerYear = new HashMap<String, Set<String>>();
- Iterator<String[]> itData = selection.getCatch().iterator();
- itData.next(); // skip header
-
+ Iterator<String[]> itData = selection.getCatch().iterator(true);
while (itData.hasNext()) {
String[] tuple = itData.next();
@@ -2160,8 +2141,7 @@
// load map strataname > stratasurface
Map<String, Double> startaAndSurface = new HashMap<String, Double>();
double totalSourface = 0;
- Iterator<String[]> itStrata = selection.getStrata().iterator();
- itStrata.next(); // skip header
+ Iterator<String[]> itStrata = selection.getStrata().iterator(true);
while (itStrata.hasNext()) {
String[] tuple = itStrata.next();
String stataName = tuple[Strata.INDEX_STRATUM];
@@ -2181,8 +2161,7 @@
// load map traitname > stratename
Map<String, String> haulAndStratas = new HashMap<String, String>();
Map<String, Double> haulAndSweptSurface = new HashMap<String, Double>();
- Iterator<String[]> itHaul = selection.getHaul().iterator();
- itHaul.next(); // skip header
+ Iterator<String[]> itHaul = selection.getHaul().iterator(true);
while (itHaul.hasNext()) {
String[] tuple = itHaul.next();
String haul = tuple[Haul.INDEX_HAUL];
@@ -2207,9 +2186,7 @@
Map<String, Double> surfacesParStrates = new HashMap<String, Double>();
// calcul de la densité
- Iterator<String[]> itData = selection.getCatch().iterator();
- itData.next(); // skip header
-
+ Iterator<String[]> itData = selection.getCatch().iterator(true);
while (itData.hasNext()) {
String[] tuple = itData.next();
@@ -2350,8 +2327,7 @@
// load map traitname > stratename
Map<String, String> haulAndStratas = new HashMap<String, String>();
- Iterator<String[]> itHaul = dataContainer.getHaul().iterator();
- itHaul.next(); // skip header
+ Iterator<String[]> itHaul = dataContainer.getHaul().iterator(true);
while (itHaul.hasNext()) {
String[] tuple = itHaul.next();
String haul = tuple[Haul.INDEX_HAUL];
@@ -2367,8 +2343,7 @@
Set<String> strataSet = new HashSet<String>();
Set<String> yearsSet = new HashSet<String>();
- Iterator<String[]> itData = dataContainer.getLength().iterator();
- itData.next(); // skip header
+ Iterator<String[]> itData = dataContainer.getLength().iterator(true);
while (itData.hasNext()) {
String[] tuple = itData.next();
@@ -2539,8 +2514,7 @@
// load map traitname > stratename
Map<String, String> haulAndStratas = new HashMap<String, String>();
- Iterator<String[]> itHaul = dataContainer.getHaul().iterator();
- itHaul.next(); // skip header
+ Iterator<String[]> itHaul = dataContainer.getHaul().iterator(true);
while (itHaul.hasNext()) {
String[] tuple = itHaul.next();
String haul = tuple[Haul.INDEX_HAUL];
@@ -2554,8 +2528,7 @@
Set<String> strataSet = new HashSet<String>();
Set<String> yearsSet = new HashSet<String>();
- Iterator<String[]> itData = dataContainer.getLength().iterator();
- itData.next(); // skip header
+ Iterator<String[]> itData = dataContainer.getLength().iterator(true);
while (itData.hasNext()) {
String[] tuple = itData.next();
@@ -2664,8 +2637,7 @@
// load map traitname > stratename
Map<String, String> haulAndStratas = new HashMap<String, String>();
- Iterator<String[]> itHaul = dataContainer.getHaul().iterator();
- itHaul.next(); // skip header
+ Iterator<String[]> itHaul = dataContainer.getHaul().iterator(true);
while (itHaul.hasNext()) {
String[] tuple = itHaul.next();
String haul = tuple[Haul.INDEX_HAUL];
@@ -2674,8 +2646,7 @@
}
DimensionHelper dimHelper = new DimensionHelper();
- Iterator<String[]> itData = dataContainer.getLength().iterator();
- itData.next(); // skip header
+ Iterator<String[]> itData = dataContainer.getLength().iterator(true);
while (itData.hasNext()) {
String[] tuple = itData.next();
Modified: trunk/coser-business/src/main/java/fr/ifremer/coser/services/PublicationService.java
===================================================================
--- trunk/coser-business/src/main/java/fr/ifremer/coser/services/PublicationService.java 2011-01-07 08:47:43 UTC (rev 482)
+++ trunk/coser-business/src/main/java/fr/ifremer/coser/services/PublicationService.java 2011-01-07 09:01:34 UTC (rev 483)
@@ -117,8 +117,7 @@
// look for data (data summed over catch)
Map<String, Map<String, Double>> catchForSpeciesYears = new HashMap<String, Map<String, Double>>();
- Iterator<String[]> itCatchData = container.getCatch().iterator();
- itCatchData.next(); // header
+ Iterator<String[]> itCatchData = container.getCatch().iterator(true);
while (itCatchData.hasNext()) {
String[] tuple = itCatchData.next();
String species = tuple[Catch.INDEX_SPECIES];
@@ -162,8 +161,7 @@
// look for data (data summed over length)
Map<String, Map<String, Double>> lengthForSpeciesYears = new HashMap<String, Map<String, Double>>();
- Iterator<String[]> itLengthData = container.getLength().iterator();
- itLengthData.next(); // header
+ Iterator<String[]> itLengthData = container.getLength().iterator(true);
while (itLengthData.hasNext()) {
String[] tuple = itLengthData.next();
String species = tuple[Length.INDEX_SPECIES];
Modified: trunk/coser-business/src/main/java/fr/ifremer/coser/services/WebService.java
===================================================================
--- trunk/coser-business/src/main/java/fr/ifremer/coser/services/WebService.java 2011-01-07 08:47:43 UTC (rev 482)
+++ trunk/coser-business/src/main/java/fr/ifremer/coser/services/WebService.java 2011-01-07 09:01:34 UTC (rev 483)
@@ -357,8 +357,7 @@
// load reftax in memory
Map<String, String> speciesNames = new HashMap<String, String>();
- Iterator<String[]> reftax = project.getRefTaxSpecies().iterator();
- reftax.next(); // skip header
+ Iterator<String[]> reftax = project.getRefTaxSpecies().iterator(true);
while (reftax.hasNext()) {
String[] tuple = reftax.next();
@@ -384,8 +383,7 @@
// Campagne Indicateur Liste Espece Strate Annee Estimation EcartType CV
DataStorage dataStorage = importService.loadCSVFile(estPopIndFile, CoserConstants.CSV_RESULT_SEPARATOR_CHAR);
- Iterator<String[]> estPopIndIterator = dataStorage.iterator();
- estPopIndIterator.next(); // skip header
+ Iterator<String[]> estPopIndIterator = dataStorage.iterator(true);
while (estPopIndIterator.hasNext()) {
String[] tuple = estPopIndIterator.next();
@@ -480,8 +478,7 @@
// Campagne Indicateur Liste Espece Strate Annee Estimation EcartType CV
DataStorage dataStorage = importService.loadCSVFile(estPopIndFile, CoserConstants.CSV_RESULT_SEPARATOR_CHAR);
- Iterator<String[]> estPopIndIterator = dataStorage.iterator();
- estPopIndIterator.next(); // skip header
+ Iterator<String[]> estPopIndIterator = dataStorage.iterator(true);
while (estPopIndIterator.hasNext()) {
String[] tuple = estPopIndIterator.next();